100 1000 528433894 255789530 559301042 472576348 431530130 525829208 850952936 235202258 452825175 760313750 25554034 733053147 968217476 992576604 788014425 200747796 476152437 733327818 104152277 255387104 380390183 707900973 669679276 294110995 733450911 679895449 270754556 276673181 515530019 428903686 113903901 877565113 105575581 172755600 336465782 395191313 410228798 335354350 333582342 813080168 635723058 939964453 771151432 968338082 396473730 857756983 748806368 543755642 596516649 197352309 309198990 787689130 37487774 438792350 746349254 970925436 242588958 785550565 552910256 402586718 619054081 33505260 760281946 42999170 286448570 442767071 656478052 346811315 950955949 114723508 245798902 622597498 434248626 847228026 892430653 113502228 241909613 388803088 221558440 979015734 473144513 617876996 606199763 717226070 404515811 577721124 983631237 962033006 376710107 982945096 663080942 192707569 884661247 30313577 264095070 937370163 521035025 624549800 704365094 272469796 917679292 782436850 476153285 232056870 623380609 302539404 292218006 772970076 394633078 894519232 463480570 950390870 25125863 398295509 6138746 65311715 669908541 875641906 745790431 364228444 165344818 237379117 647149328 640170351 474612409 780695798 566288831 642548909 21784826 309383316 350490037 625032172 543324190 464415789 143565435 916250788 747844836 941727102 147469861 282648532 585990374 932026307 492067917 82173113 217871141 982275866 61101364 516266774 100661323 242608885 804289393 74552809 887077891 891252729 10794607 101323879 421186607 947346629 180785151 738110308 108399148 597322414 714636925 484238049 350573803 654887343 586235383 530498341 210359245 712633421 995706887 603570492 470332245 699460012 665947478 993967641 661761155 136495346 25202372 404158660 828388030 936060924 176911350 882160381 777720507 846621273 502278611 700108582 89018476 242561055 931489118 19485058 114738117 481928581 441767872 160051528 335939821 681692787 430253417 745897504 369133079 389040746 676902033 987231021 155722618 584522075 655035339 726371157 638422090 555996658 159126515 737518956 373226350 567304793 873524569 959372264 238962600 789376358 345367822 967513936 820097491 815209947 491705403 569229330 777210501 696947389 956297549 120306714 25187210 410134051 112255783 330573327 697517721 296864819 960709869 610009111 711645630 581539862 982936786 750003046 38664390 186452561 967681105 253207682 343606052 540383436 118422015 983228472 843993378 500474776 937477094 406011021 984210022 876855552 511702305 646478193 364686251 409544922 369321811 447267615 483689689 239036039 908518821 934392749 504569927 273911909 57418428 862875654 242990429 126401951 168002245 67854548 730418671 841585808 159259470 524305157 632651480 909002914 190668377 545032473 352118606 144278063 338888228 51245834 725138391 356684282 927496006 985433497 8936987 605539876 40651454 60975290 158381508 665204929 411154271 337453829 609416945 859484421 826620497 909850557 31126101 267889632 372261810 889804324 86206745 351797379 989241892 630387691 124666332 983690381 360613087 378469915 635905395 262692689 181271236 411549686 131359225 269455306 6939507 30449315 139901484 886087003 76593097 775473801 298625210 590335825 749241873 859031550 188213258 280321661 369602739 70788358 738647287 552473416 338299918 433102842 364090046 329132146 411328218 307565994 317097467 776532036 799561011 931513984 271059430 735079310 488663954 324763920 189641431 207621707 605894438 498777856 238498990 114937754 159473063 628175011 212251749 291554112 433925867 265122587 932862810 786039025 716334475 478034949 88590944 739000694 386418640 719885386 889947188 856669189 870305004 145174087 415505376 76065818 501253006 959343782 38626938 660651150 413360103 304811797 708302660 756898537 664423442 486222854 864101843 27907689 260596977 31308905 846811127 6811992 231602422 691449136 505193525 943003507 780172274 87755422 395235138 639806736 707056565 619290071 69755946 17679579 858504306 812282147 496060031 204462965 260152959 362575059 105816553 328104352 152645743 262178228 791698927 680466996 96689782 620145550 629593618 745425661 7277231 501772893 424238335 36140805 89653728 304089172 400000572 927612902 95966202 1229924 280311145 873199185 44897783 572276975 14989687 951426819 811742702 973387991 149798315 914544929 513937461 358532293 748349627 131176239 801979812 555319311 655858702 452456686 869470134 12895154 417076390 349517445 972058113 930772771 134591285 209359419 106914677 384095834 858721872 376035231 39723642 78898520 238433462 309112301 503885251 990892921 46370361 424268990 275373753 745598386 677870463 620089372 372569 59961403 81174245 395279211 412776091 168057526 432114623 409959718 670752510 861543924 857962516 953443386 813274574 469834491 445080312 312630457 327254586 10901067 472713783 709393584 414829160 480298490 287726665 662981788 468703135 751378144 469348104 593209441 452867623 213975407 104627335 992028071 582152054 110613204 579068991 37127838 529195756 776808943 420687487 337745695 372160273 46741232 217927339 414647635 726956439 389867279 353436887 719346228 101513939 126107209 496987743 605908245 446340714 703550257 570073850 388391535 846942591 137949921 201690615 649760502 559412924 4187540 687776801 122336517 965421258 407487131 548348154 58657219 410409120 257675109 450956055 980356732 184214690 714880230 233665123 280631505 235649160 380171705 554290600 573363378 63299712 12836624 626276131 632621739 151297292 510080981 332266751 544617515 392035568 61730703 204102751 356426808 437116466 939819582 243439227 653448039 111537764 884167647 910300939 343945057 6072645 337739299 294702567 476564289 653468858 250372675 201305624 135497281 277849971 407392305 520223217 795519138 945117276 738393744 103318796 900553554 450573632 329202913 449228412 12502964 69110723 12260292 199411902 826047644 251300620 816504797 260401255 395406003 588219756 4504257 896306650 59344258 419829 305197318 269400360 1100565 146533153 282828204 207026276 672139936 412277699 370973827 11671342 849552542 675518171 799878216 662739678 204275583 135771573 116087764 561717991 269441500 537322536 298501966 892066611 671294905 11614771 822262756 766146095 610120719 318561889 435889748 467963995 610506586 894429689 117142628 831768829 415522329 265204359 633938715 601385644 402961695 566369647 694887996 844400671 84353895 120048839 635550284 47372245 820697700 597141737 867107736 157272383 215829007 695748724 846930886 425245978 645933695 452888588 137390381 219407984 29777564 387036172 344593513 524688210 174515338 661955085 959997301 866000094 396377021 93189439 350322227 370917959 255179507 957747803 371653520 470503475 653377383 617909215 503967871 369356633 460082209 447395542 572660336 541027298 390543451 16764547 297893542 131884864 820388474 649709030 10528959 295166352 164826625 911165203 213801963 476453209 365180550 303455746 9726335 862292136 426819093 287860013 682085285 35005211 156541325 384370892 315209201 861021530 485560280 195740084 711845894 781999767 66077389 705178736 77486735 32895001 887658403 194953875 628966954 655495370 78012500 500618999 278722862 672032923 937558959 874799064 524133593 703964693 767066252 756915677 395132015 250801066 952062953 308044888 548233377 226723386 270744729 690367774 266235201 319041819 427355119 502781500 629580956 830539050 707746153 610515434 474613999 387451659 150122846 175526322 918502661 487053973 933110197 553160362 272020131 1089452 631704567 142757054 631518159 2495448 279121312 524872353 137806862 292423947 125898177 973594334 928140532 64945510 22089173 336092636 823089422 941804293 648031328 34514513 494613820 37770502 722308542 803590185 455590977 981208338 396918198 971899228 603591185 151519938 144522548 184803526 51858982 977648532 604765418 659639010 112805732 562402346 915256191 941690373 824272813 358984861 387346491 40610541 855636226 460686767 988714918 500037529 774044599 626250276 910858284 875335938 738909379 40332891 243268139 520982044 359512193 739273306 312994998 332238287 943947739 135019617 765326721 246247257 2416952 70575331 713258280 722060062 534230311 186631639 780821396 580508864 646755203 823796906 446648426 439493451 856363831 231192389 672655343 550245200 783368690 470591104 124311588 404196445 34740869 290127969 351538853 352406219 289547098 608413784 385414653 845563295 137100261 150517570 35756855 219544270 630635007 32454178 473442072 586903203 660260756 600028634 857490004 23457766 272796171 285228814 861109489 633108127 111783908 521595368 998898824 615935724 378409503 630668852 392740063 974806416 77211412 13725242 140384186 736491312 376696780 551836840 63958041 752392754 25533473 841148365 289700723 314218606 448703742 434433532 772634229 454333382 112720103 476667372 102520069 787897539 982906996 130698585 204754130 471990787 782280535 814887574 216588715 106059492 627992397 341443195 779289686 964445886 789366153 675575237 402903180 155789224 143124054 53999952 628974584 669475790 244316447 821066356 73785428 528806459 7905791 382697713 943327694 989806380 469262019 907895035 899058039 435218203 240554617 584710887 889023311 740759355 927376886 26413187 402724286 235745795 34949309 3886073 773319851 749698596 96055809 70636432 760243565 827336337 687926662 281830870 833215354 143408292 315634032 364319532 763794441 107734717 129033346 43388791 822890675 983614044 65103358 954696546 590079454 57467597 216220857 706043324 532670688 94307402 905241095 141616134 734575208 129566423 7684930 797073950 22963872 498617660 671736004 975960388 223712354 583571056 564325581 431419389 186090441 344247699 695466131 761250587 326247657 84420945 155324914 431742601 860516130 114760239 784639539 33669110 527622968 371499348 805750846 328298288 911759966 802205061 434322211 130794415 885799634 991810567 477171097 986894032 45826631 374344053 595311780 1000 970782730 405097230 872285326 438537956 900205110 172669441 220071008 796425835 545343060 553574884 340606630 135693077 397208479 421449845 71185161 844967261 475745492 554567101 209419370 320401394 598564412 279527351 129768417 231366259 416023194 218201000 701062796 959171797 118941731 560711568 371935259 329370449 366420786 714330347 906889270 875242074 44082073 441971925 930334791 813592590 725362307 110980467 642112111 40776180 368293040 445834956 431315646 312712389 932874988 230891470 674426557 139536877 214790573 310936589 107230152 33252482 243110913 926440377 739068402 291079690 123016251 191614957 77837230 681928292 105210545 26416759 160475801 899633769 123987820 580744491 246088583 103822257 81063069 603123091 622838299 3497696 327529465 700313535 277970793 561006498 615952865 707134465 675644675 712786255 455252843 367858065 599184506 656527656 506959641 348325566 67936295 63765884 61755151 604303821 259480141 628846906 32321829 35839377 991742784 300819354 206674459 361478991 496612963 169442056 26061793 48017660 20084151 561783361 665680298 361261455 63018225 915736906 674062386 213735058 59789849 727843429 595747047 818984211 317875122 255237589 76982349 896074001 100598410 430310996 281276177 92771219 657262445 875470642 324323224 931525361 47140208 364234959 764324638 806517556 213153957 400660706 119389328 477223957 945229161 408671763 353511415 121241313 384696635 4537737 137990271 581544074 560307082 223207439 559473960 903633729 6420028 129043657 882802173 517244575 896172330 948377271 943410411 367480721 192713462 367743305 70298131 58964146 994159662 749217044 197477962 278608945 217985589 186391883 327305251 677654959 932062652 599300143 689034591 861798820 715577219 438638600 84384805 265632907 66493507 154349556 544899562 616992211 247412093 78175641 687506461 158671768 751002782 127340948 26366819 447053430 529695184 254390780 168021021 13146791 900874213 283467325 127167757 850377602 66075715 403997124 335558629 286713847 861853502 10604143 483732506 682367574 969069030 786910446 65533778 875638906 552812665 353056621 948432496 737654464 269365762 573177453 102713267 220282623 32363216 303785518 463079272 243253493 351777735 625938448 966488617 984048639 66120184 29009441 309398350 104221117 470593640 76810014 939882273 504760189 637172787 791321689 366913067 32566138 241315330 297510831 42028238 83189153 660064473 83955456 606765138 111060037 383174971 242907585 63449317 358854045 429857345 846164567 271826265 73646725 122249822 793895854 226351156 893051892 656184098 147775930 776544887 162824082 16747316 604969713 420599314 35317836 104451355 680634296 137288732 836997957 877062719 2564363 433573007 231067864 568534705 26253521 149677731 606193497 87479906 682900660 402505915 810411312 983827560 757950882 297046368 578037138 179486056 446703187 54873524 437046660 537794125 811507989 115206659 568637652 217010947 134040416 434492632 49561872 867874953 798418570 927454340 390868267 901540648 178835424 376875059 14701114 924200860 16499962 139722837 680503767 216803080 706740272 92503181 120741208 940599186 841365916 386615067 718930972 385952860 54181478 912078409 409907865 753999964 116391581 200977816 140830434 12707343 826782915 541279137 655154591 128349165 301053853 533803680 36215476 874412045 507611411 97611889 943679792 286983807 396028872 30121301 547449652 754963294 878786389 150203108 114962510 638462042 931336720 952617549 101457729 243804738 267733620 150084509 277278684 535297509 42186309 906183460 401943891 199311807 213877154 440106903 637760030 830992312 69114447 184812768 505631813 458757459 362243439 365547044 268126912 285859974 675161635 429841561 954784297 589130775 502774198 540232686 829197097 171142507 583274734 898152181 822304438 723705721 949784417 653265601 926231123 346030097 353592206 322633637 543678166 610645109 296082015 22988877 413575990 510770136 141413008 516935706 96198531 190503453 73881435 320062252 787660058 899334108 478326655 776624034 210997822 526446297 356341141 582187503 434895517 417988762 954296985 95802367 909197236 845299971 929452483 32684378 646824669 237053553 573120691 249152996 924264298 457615860 608112657 922802945 427778693 972605809 47610723 164585784 678800873 959112712 904279205 113766839 39199114 218248265 94258747 66990839 303238859 101709889 557686238 750547900 654435787 753554422 53476176 300595526 186015036 732360173 121608501 846667124 129707786 280931778 25042783 854155595 577418336 120630971 104028394 556939444 804046008 710058107 863967050 726764306 61537978 627200711 610564033 659067697 616757683 643762330 476967149 975886395 208744791 93232177 190833025 76261916 840700584 164465637 194559288 281845292 655027583 602297896 401473496 172895049 943116037 930353827 560268837 22800099 641450053 435482363 727918120 18014070 745693072 691635777 478633414 865033893 584892950 894964683 327727208 91854110 533424262 107484179 1648613 871328245 602569080 180082213 845997816 129709444 363159162 831220364 784051585 971529851 996879555 82735350 777134498 139842074 78359218 138704507 690471748 915989947 815320775 140859001 227586455 257009719 26201126 266795367 63641249 722633180 554938160 423524775 229939024 184794536 25753341 909443381 244930125 609446689 625288552 212528563 812426703 831661737 137387011 849580747 833469989 120838179 47830645 13966871 642949741 63473291 863043861 352964525 61535682 576724906 691643264 256031503 117726243 804765606 434457260 269026237 620529491 533499293 21424779 736214351 775496417 445968162 426608266 660343705 674209452 43695781 709163928 637438149 683213496 582513994 108537295 198911797 641321338 423401434 992209120 954771812 810821966 509940055 255035381 234686975 591776804 980690627 852803204 238241319 229548229 487191798 461780769 122125317 196153590 452703448 919121926 595154941 298125974 783175742 135787106 474960253 372004514 696253229 105342227 683673960 45299068 883555577 204742853 479834855 217704416 930104897 560413641 733628448 289511168 966071161 984313983 358279877 364196346 891363569 272327632 106211937 12692334 554430218 135177291 74061051 639854685 752327944 6071139 781459982 830496757 632565497 676314474 923775286 97951340 170253682 822514997 243018196 929765417 133626795 42080545 475853942 644834685 894600374 978610420 574690959 979575273 735551526 689710556 32652323 326551395 486235115 184726105 316554598 613703176 593443204 135813162 191471708 340321711 219015482 227833566 991901007 617869400 426869919 197182324 502386262 718500126 697496632 335531190 209597709 760481145 987059622 111387570 922883853 753779938 198805547 415431566 598171906 999416035 927203644 217196019 481907243 112043703 36256732 467704496 368046390 206267008 494220242 944216260 101072999 305425916 755594863 281957450 573715246 486006073 8293557 849876232 752064836 991241054 94836322 820432123 447680600 920703881 81572622 918258814 436359557 742949165 610670817 73831163 419413080 619480879 910053152 30678263 202029502 982908779 611111556 593114529 61204106 142699369 136561152 302935504 896870047 671067674 451163054 661084835 222343456 255251773 595930254 483989697 910450858 843886982 793891268 121948102 624486949 862140505 714481124 263707078 560318026 601698080 542537554 222827845 574788789 779664885 859563194 665636013 218272795 201162081 51528010 138328385 131953900 492586324 652996966 397489221 189258054 155785764 277392200 444788937 203030389 302116633 475295670 64317461 689155070 542106701 346804713 277511636 45552382 507857367 397977907 418468245 132205960 845394092 639138266 693550659 701807128 665728812 817482652 69774576 80869454 112028658 615419965 234644710 349029740 524581328 408564051 746283871 297785900 128419120 794452113 690127693 703835744 113690892 831083601 677157276 740033634 481762511 727671576 850382214 981393810 788513274 501659831 442357057 741160461 212534330 99358653 220510540 161922599 855459980 902411558 656498201 189409561 335757421 774404629 219976258 26488352 297820660 885420962 981512506 202019540 919655815 990217937 36001655 492469161 14871066 138259629 10720759 850598625 375487538 440934316 36869541 639286230 420376853 76334078 133286978 655224163 639624895 87770733 360933018 320399837 408347205 358104526 366405261 212220445 159999215 794123790 466747322 753744790 156565756 450395739 600243672 247849495 369520641 587833105 317992896 785252290 712268442 945972429 22337387 304352960 770361248 738394674 18186754 598048412 633295542 443155041 218942712 323199280 195945243 193088111 227734031 336728283 656951153 142919381 914500851 72190539 759726517 257164629 16570128 495749353 17461953 45069421 631418430 708403467 669161004 719506864 167793081 80502319 245491189 840735681 460552962 187797768 87638382 949378349 818150222 388450127 104001402 507946552 819599375 757001845 331557305 750160011 158535328 229999252 500257695 700217190 19063331 847915878 475122435 351450253 431787585 934657913 831545301 675910886 856374740 970034239 246101673 202376263 669411317 928494155 988180249 188510065 990178453 123716522 179478674 596727700 121248619 450967536 584251341 126794897 58591443 720936640 265939259 584008441 130543377 770833934 751062948 206758874 410553916 472562279 344541330 625728908 978128827 764756400 810882587 901211985 511658094 642661462 827946644 52861142 893244867 177312851 469543495 81029459 377108006 892335529 211270221 558349490 201345768 236616555 913454834 783387967 915664237 813823383 717295418 571865587 891528786 235238513 698374760 611336699 660420427 737582318 294124050 988992212 186125416 93506771 438296370 821319303 896236461 65339683 763187940 692842296 241258976 665676911 68728259 596769260 760682778 112087206 628573801 406736336 865144372 609946287 976668786 24516922 212052190 146735681 989833674 607382701 480708324 874545833 758781285 871002 967108346 371591005 71061649 136864841 777483326 4642751 186896511 1000 706701158 822654135 877057472 45276454 534512664 553113616 830921752 836040225 30817357 820445524 54625730 62218714 545589803 298662559 839719085 52818930 554252791 397641369 487351186 76198659 392574012 998126998 393129571 916928201 307510086 835905931 59770330 200996683 474630785 588256393 942739013 929783632 280707300 879609350 641440614 776878675 42122611 561669948 82587673 998171884 175523541 389548131 205523766 118486044 276234659 189852898 799656634 170722962 386847855 914020577 616250887 762680182 666152990 119570882 682434 833245492 479615166 868740800 737517734 508975978 406605990 578467465 1271371 593642167 144808014 985072489 466686899 294833429 737386310 416966159 276977478 766527889 489435529 221197744 98168850 206496585 144741944 33126403 527386450 892705979 870923556 485463649 756095053 680720613 667702945 845318908 17091749 770479289 198901007 198979245 323440088 653635875 488220745 461012595 978481701 601110799 468854075 318653157 761267672 662536258 226918255 263580967 805274956 537467289 104023860 506060711 852044375 210911562 701243295 197277486 650868721 928096382 322850077 187427407 461608417 593333510 358131399 951761164 540380270 337814112 245429 900258001 710231996 236126447 905068703 756730131 82901115 693807395 624443283 267939898 198948490 55201155 593490973 468759337 470949153 449549733 109171289 336428585 55002430 218743873 314358708 588965557 540326456 662229153 301397246 836353657 137215228 185037214 379910959 350024155 11882495 255961889 22267415 801013671 69687327 209425800 176256968 631481943 14523319 359978009 646252105 817922953 821985700 128745251 916350771 811545533 719005524 32113200 76910278 711100268 532530136 495089358 543066317 100418245 53404951 193353440 288772212 759316587 118520178 274000323 229150465 406967878 108320529 790287828 305589901 480733468 150238230 18410471 70721083 38199531 662935240 210930156 968116343 325366609 745863593 699219996 77643513 904572473 914560116 337904028 741572592 695302130 51384872 383918135 991034552 965381905 4077793 595866567 376990546 577718065 151984541 948761568 851876710 931101499 916459263 388103254 509983310 650837667 130242684 261227251 444995154 339624597 439847922 541082060 672289105 681678003 550396924 765516336 425380177 375189507 25109644 658933227 906536231 657129085 95969104 950038936 75276619 597353191 218640587 26774533 956021021 305636989 337554742 543915713 556462928 793588861 825060319 265426877 103540612 847196228 886873456 689672168 406385765 799233697 959558378 835127609 652743378 620866420 612071720 73333310 939457683 543260065 452362983 902076179 612490591 946482206 742499322 21912866 397401787 2054525 21432202 928657821 667416757 412164685 880074547 122155988 424415517 333267985 138398231 256825563 687217501 601509206 874459141 399540078 335635625 563074612 790913700 1887333 501052476 710174724 785286855 145999291 382402303 896595635 990341629 491009122 87796524 575938993 345234555 321268034 733264237 502178863 191021093 322044317 108639285 107332580 619772946 660316714 335486058 857174081 684755616 22557051 45875339 28676792 230261763 521802060 406185994 981223426 997315125 957709673 224617070 689567588 536129219 895359950 954222219 284122033 287910312 190497575 52820768 791788160 228691985 255866546 88058284 681079148 168535023 231606754 430123850 375869828 833264841 277344685 511743026 70199108 332682669 883401305 713194684 778219431 274396431 476131434 334600479 777374886 780419504 19494010 245382704 831588733 108451980 20940109 98760957 30874969 298200077 881760 726181851 612270357 233214789 330961689 464150264 814651135 519497261 968851588 893333911 258718820 923744735 734948418 266911192 143178729 212409679 571647241 965620727 607165450 684692784 63056055 252692819 802216246 824765831 842533475 799802070 775094909 712171067 597957690 751737849 103067788 403384843 380509321 699761363 126966713 502070392 75331855 519102393 388813762 542955262 83821535 270186441 723040196 574831235 993165407 258944095 684110661 600229318 709691205 108949129 511122992 846409948 685710872 984461366 703354089 654875296 34829832 147594215 88973891 244683200 666459402 821375984 702286943 657617331 193047511 697848505 962564682 160245820 579524481 429612506 593694079 501088887 844342340 502182395 449508351 289924554 571333576 30681039 474592488 332205754 271485091 496387195 888055339 816636480 467847177 759170116 147388326 345786671 256748306 561900975 705812991 992434591 305385911 769789358 488515262 34167725 541639838 720875355 824215546 664502803 379160568 329052918 255056759 123204724 678890048 954947679 840048586 310440579 197334731 178814282 495842817 957333401 148521740 414376632 973603951 461722182 309418564 791396297 100251836 389665141 446041991 132764462 865846430 911445441 929465989 731571083 74941517 192967883 140173553 132114240 56865461 299296849 886386226 232334617 201505188 748139269 30108614 134674906 7155895 248654437 465864481 845571192 273972414 535187619 278058814 110793790 515940408 307164213 775497900 986437285 632968966 200593591 83782874 334335746 858348139 811940868 806861729 439148636 777381227 423399815 459263914 32417203 788175916 103039626 937775136 100477606 823586390 792762394 474625013 84583215 23062192 43880695 688347869 50211156 466177217 703610278 233934464 489509189 65509193 478488777 991504732 369221249 482999531 951817548 543672879 103827878 58415562 409822870 985970818 914990526 716167336 748051106 931702944 420544861 43995604 458728071 44979982 264299458 315147418 818194021 978220440 522170169 710458331 928533186 599014534 403263009 768356649 254199986 179448512 174305058 663925732 601854197 211022298 323944298 651233497 825312109 379413104 870464961 719094417 428417150 816823885 201885518 914666118 290883098 186297783 407405279 33768131 680615232 974983157 388146290 454235976 589988549 438456385 386353924 581101112 217966049 402182477 374369755 103688075 277148721 123559459 751709362 439972686 719609538 864272776 55026209 86888857 593441089 495938160 590721820 808851245 174928321 765268780 605667348 607546728 58953662 265784928 866396003 927535811 884412410 690334824 295030 790413835 855810154 227142237 528746868 63980824 67744489 571876647 178069006 438573280 673321442 121495633 390342799 21412674 17900315 279176747 854894475 504049687 558189015 21363101 320232392 82177523 535321510 298191412 686714201 692064101 2701153 35244955 115000093 820830304 994120907 678073870 892403529 192376273 59472653 890117159 692534080 811098178 28616624 472548213 73485455 802438799 277769589 802572497 111853316 102588497 222549298 63816220 235601070 145406869 965234660 527050717 541909249 769500844 110750096 69470380 396554330 73492813 311721463 533193847 870845388 581367433 207222095 124236892 532072702 291169347 147511499 572807893 337870496 819216458 744846054 200346286 500758840 412040584 592483778 972122534 339740291 481265248 77706551 680949577 123044769 483469178 115519653 84147080 126260609 69444271 85694243 708443037 791559199 987655114 377534701 383866439 637336080 725961688 393557156 924227036 30777384 538532102 70200484 324591026 493173797 164107691 211919533 108199267 375518082 472493080 917073764 99495108 807869145 588673379 680753219 730081559 55988942 246331364 27209812 922824804 762000550 633238329 822101675 205142916 963816144 26262335 333016214 347838179 291319301 314595520 311524657 715725408 782091583 115220530 207697606 723445146 311859230 6046384 800289823 920706152 816792869 408691647 55064662 939509591 155036189 488243712 777322279 627153540 777828487 114198685 316443746 893920964 850500202 870376242 395738724 921562659 669817868 373947054 911622560 536503824 170023088 163892983 250822816 921248550 475555385 807319332 279204684 422146558 132587780 325659789 889096169 464355914 17137169 931875031 534186872 939671752 296793960 51760193 285942917 657150799 641511068 558138876 910661818 500786668 299547289 594643395 927818519 710887989 807103978 626138954 326206381 586586769 614344777 195986667 963799648 982302073 618411204 442684305 273986278 146266066 973472612 66832066 65353147 775428494 697144844 838925790 219848149 733898075 854047329 639761745 647190810 140210622 316321813 232787891 290957690 13726666 736034200 35757045 686863909 953548454 925357509 457003641 901482438 466715638 896757355 419708678 675439389 24875922 350162945 851329529 416732631 914711394 610695645 696549120 623707634 749527092 234313226 319308634 778818456 221796481 888520747 126610639 119434475 8457677 640711984 995062005 666662734 827873519 196556842 403327056 204376436 655768749 705605356 33541482 923933032 528215007 281644156 610548850 253655458 842566592 589147742 299561773 165339620 758479703 915163048 385090727 517735056 760582799 142447470 514346907 782630773 847295157 328342431 256524095 101354289 716385387 962845757 499893413 987253124 357669542 496619052 516443731 579166832 826750138 101913315 979577822 924774222 634628772 553596803 436796082 284263311 377882342 677413026 566626077 798936870 327552483 36599735 36772592 667475168 51854356 930545150 18186362 192499433 215487239 242255028 271265408 184868412 581339350 691017315 559395401 615080272 950561927 990087193 4880533 511117194 347001925 247291226 588677548 716727469 328875988 7438473 914635601 787643329 646346772 12354730 502676159 705651378 507629713 819626419 319572969 447528640 15196847 431109859 363333219 671157116 517358835 303414879 669635246 659861806 50310095 753753697 348809903 832162299 509643566 613947052 42613475 92244627 125544207 615073828 326127303 109987197 219700272 40229203 521780300 209658436 577437218 160715008 411463568 947921998 780894838 843180924 714117805 381831594 335612604 999114645 289404619 187161538 402907538 6555366 536359578 107955791 625017223 59566114 76293258 304719340 892723114 818868847 914453810 135962584 243770391 656486138 350534617 168420696 91359278 1000 467057119 251344023 685220853 740774790 832316153 737168135 113043928 365723576 678701822 106371392 392782695 47585943 424745705 139984233 799775099 180785772 818481120 274716505 737294829 507133600 754777762 885615213 571300225 555227131 426274789 822248134 852340568 672009206 422321871 274324069 823238877 58292912 718764842 762969593 790448456 585695319 761130997 50365426 940492760 910141143 14285516 80959598 3211037 378145681 343920565 731190935 93886295 577345706 712898607 100995799 883307760 778036939 850152336 525031804 560838781 175753134 925754981 750251201 967412414 568048533 748430901 552620552 750175903 350438505 193462881 346293817 160996819 101902267 713941471 24427030 764181564 25924484 384597515 166166276 371959868 270606442 907380 784127156 471894607 249524594 60507902 159275460 87815301 47048281 627395549 240826706 300004312 388165928 942232734 686736092 119935688 678730984 104278853 310076458 65934396 95989938 262892057 213078004 614371694 207590192 56912989 856406670 969397834 357037065 490448218 223917368 7378135 973622723 135050210 292287129 392438194 726857769 941154511 174425682 118627904 395595533 452946257 938343241 42063075 674792036 317397321 302256201 189577091 232036441 620111997 983541888 973130968 69334026 621582737 673961311 226818974 292594697 121980240 493609501 300506659 935417408 866714453 570904494 66988652 233287508 20778204 602536684 550287460 808697565 212368536 41901158 631948903 969501661 298868191 42653408 335855941 763343753 469778177 160402733 583957551 790685207 44833349 660641227 788415147 879372056 518015071 726334709 539766784 408563577 102325602 633621247 733781813 357801445 629668681 5555908 365173146 177378254 490288529 819625528 199733287 796664168 698495642 369772024 876050545 978701532 152332325 546625691 433540667 835181875 476220389 696109458 844031613 943137715 648839773 139329713 89037152 928467802 398549890 243302470 404726037 273014162 91413412 148917323 240165211 323642235 968051584 876374001 939597943 900915128 382407922 277944539 469338538 231974333 478375539 114827138 27838558 455071896 472566998 646806931 470683089 591798354 606224476 937010165 904422161 392850256 871316931 604569053 598649758 875969391 861138506 953926146 808217754 195620423 724949897 430024023 352974391 212821136 413511965 649070333 319257919 875217985 321711713 357376045 867266229 210158970 45081862 574719262 13514934 72027181 715198117 798801167 863855284 335423108 890934444 279326660 238625571 488059543 761213948 598162337 967650044 48848906 93663328 592603198 131591826 862109353 775842644 701956815 732048602 368255613 632760018 47319723 527472237 547147580 991011987 284112468 408409649 618749129 988110427 619071119 708956831 909904596 415046020 666200349 561397617 361761686 123465283 73917115 979110073 581045979 222930781 989032864 760034600 723681715 683859028 449189846 484521442 517261143 68668574 73399219 623872737 648208630 893910075 441734572 123967074 165977500 737071482 81937467 363840177 959337210 578556931 776524406 574027320 557878660 892100331 423318495 126180202 943710236 289530572 368368085 331666024 754574061 145292793 469231793 683952008 788186484 577988322 456211610 935718916 156272085 3000749 953673894 481651341 43376253 468969460 682737091 306026445 134396315 1121940 181401066 601971325 21674786 60614151 102135604 575288033 306459386 320835149 803563474 326326185 16584198 22362390 590236507 292198931 975005239 756297418 150568120 318792504 341088994 155816108 240066355 464368008 508622344 642916029 939828293 122131148 39304511 407172994 342850545 854371906 130701327 841076686 498889899 169916240 768123581 555414062 258380100 998318552 263163355 586438011 55423545 973825607 362444362 248817214 283751572 333114591 978617135 463807236 261360755 481395740 401538756 604947648 629436984 266510489 191669796 433159498 557995691 913747182 560917387 25020185 718899841 828995140 937775024 584503597 404729916 182414648 126737267 789595026 189750574 77162161 548623668 206034317 134442385 312197203 718053815 145254806 546725856 257520978 845462328 638095022 823399165 712828258 265744623 517363559 22502823 511650848 761553249 652467365 377436365 390538163 194548907 660655210 475690308 590713063 139254581 729484667 528743829 101331261 472933213 303351162 225557143 723387549 616131637 62204418 212849267 602712488 480198459 183874036 51185056 201145499 968654766 15398176 790104068 825440601 915666053 161477508 94622949 125152412 322814655 92210308 775799927 422824272 344323580 672397968 902328148 516863164 576146546 274238793 631794669 680527493 534536464 771604121 827910825 329953624 533552044 109972926 415592277 614646562 499692889 822472413 484763967 700735183 342103541 563108961 95255492 718171883 804393132 54776269 836228819 651952074 393885821 614579998 772020857 499298518 601655590 356052101 262104065 144109355 514748570 783002477 834032990 799189631 442271071 82429300 2809100 633998217 873707977 775708010 633872646 338462279 870721823 653794763 302606313 172861650 826340418 453808040 515632232 13180656 579028315 624178791 45491802 977084280 628561869 53485510 925213407 512380273 23431041 533865854 205351597 806636942 327570516 986796618 775036058 156533918 287256890 929242868 692216756 500467705 437479773 766004082 704976364 889164761 861248448 375283539 320235372 851055337 294458678 772630251 884084593 998590604 129851426 774029010 493717250 817632569 1923462 817013901 795690897 51183255 174705700 754125143 213223794 14041816 797344540 663087666 747537487 973161140 306954046 297512871 611249692 126475096 327413263 339838438 167435395 26900277 493166701 491944264 530342484 373802184 799009241 976243079 253869989 998597238 521869969 850793506 39442656 99898417 758323466 665692998 138545679 300964950 80948422 215183543 738633193 38328945 80429030 863846086 801826910 419796408 401967883 574907168 538545333 869421298 307952490 174208166 306096275 249400704 221672004 810024759 709429660 524183206 88207148 479666915 251965479 164965549 176802398 331727014 715292457 893916975 281474991 99039919 841452844 536864336 88294010 52205670 765434835 471402501 592784198 461255818 188624494 326611449 973663788 715850745 809489953 517409936 796786339 844206647 68822516 253356670 493687114 203554811 887138562 141891447 426647857 429377315 755471662 168624043 255059248 805287604 203706802 719205856 683538773 212923201 286420898 341737196 133480697 986960406 209122023 417816172 835125254 502750899 890606234 796529522 239238473 747746262 255251607 717698640 59887582 443778149 732840720 228473152 322354733 927925540 917820541 381477697 824804778 87184889 166392610 121569550 596686033 818032261 67639193 227068632 963380695 208229349 988265536 730685892 810986750 862938721 811401053 646297111 712059816 656766369 632390898 940430910 70058330 85404103 175454930 824726909 355970419 989753863 43768504 914681923 864610163 183451480 749017847 660938577 35456622 520357853 989422114 862922343 98809462 56505543 193047193 168095170 612766058 29194198 61383847 144072723 851422256 573132062 110269252 541781890 34956713 3518957 730722388 736651692 756459202 247655433 108335070 241604310 560980300 266956366 126741677 368186760 27984277 516260064 484850684 770385515 309381574 727720814 34256924 945697467 794913039 73592339 154731170 722838465 283154871 166574451 122101760 912484365 907136233 760207767 187556672 53113050 369429252 340394321 694185642 51681804 719594457 156819961 380501221 526083784 751078046 961268280 695815228 518749263 708613303 123681631 795918616 119914814 972039823 793725232 344625767 952062325 644444898 531577774 135054027 35563819 142577966 494218787 686973815 558188320 482871185 308255233 977992238 833550103 494961080 186737647 301795092 722480751 26594080 99518848 182825335 474868796 434614255 603444954 437765760 116314201 819919782 647381006 329416128 805279643 642966379 987496147 540194791 1439072 839483542 826785440 252025506 13564832 718560540 394230315 47924317 489319459 546280606 10785636 213111626 188830880 133164871 745202990 515345030 63585480 486759824 90501897 79329239 274835679 884149446 8581229 44445092 107752540 51371720 576320874 149306591 390639204 133301091 673561356 365468170 561736860 60789315 259987449 878577071 520250614 218925238 982075619 942615648 300694254 978900984 659933622 52893139 322166562 613298037 154580236 839677480 217916898 761701671 489467058 121624795 644577057 737161524 648533177 102882620 355024136 91431327 492182041 142068447 29560992 439200889 835512543 23297029 371780653 718514523 382839441 758029100 604917219 424870267 985778832 2237015 607873481 848764500 10431696 965670127 853651118 294060822 422839596 3472388 638401667 44574256 935504252 569790472 697250269 344449402 174894612 367122607 250105200 481564132 288367559 847917097 938571089 412406912 34104430 662294736 100984729 487684774 302427749 420982066 915991285 560425332 111698592 515132960 654493791 594248677 450874688 943550459 234578914 576223070 919214647 202444706 590971489 419237027 31118785 472469505 670325932 78486245 367410253 605257328 690989687 953198102 640687168 118409237 377819115 934603211 863510027 861726201 194484952 78546484 569822763 739166596 572518150 190133824 562200420 651097884 287029576 533691119 218808745 210750276 958822044 454306695 710214393 743894729 684704209 441180187 951329778 867406204 928295266 353650775 544521668 476176292 188203612 563714810 763617017 720826157 699340664 631562247 76111796 202304050 799906088 749856101 835093411 616953962 105598926 439636277 97050490 285716602 19329952 38531356 117091265 294987087 125184133 744941745 377021487 560923495 183714687 141895752 520371391 244835325 537864931 122769468 680879852 436643823 786488642 451405348 683955391 153390744 428491768 67771023 106179917 658921836 683306408 300607340 219678977 5944480 511354107 202435694 196003618 874213499 613129863 922105085 1000 24798207 915688423 106350838 466085751 465180605 495592432 720155645 398963526 604110509 570179842 818592293 47272890 235851184 590522804 999733432 16300973 550380381 389901997 526737461 174514007 254345147 219538051 61089197 79086492 202610405 537558026 973298733 854586062 8175593 880289777 840680144 475597584 135618813 473367736 30273668 555942216 900645830 20885059 192098740 733934705 646019279 737159491 714943173 322983580 444560308 214528512 85011717 672852007 826641404 197626017 438941038 16406905 890001208 92520273 785195135 128684933 553324029 944044103 716274436 694016015 259406346 517472008 751792348 729412436 99376912 238602894 406707851 310821006 853231368 484698509 9898123 463543457 28275862 230275518 88329551 98532896 625715492 15579804 975915210 959083033 822874467 793447536 400408992 675279240 798895678 640039921 41779135 1839953 108652316 638601253 792389737 425888613 603928855 189262597 870886107 335586905 514149845 409189292 52340784 304582667 893229341 44879531 964959010 134243779 628818958 453173334 738713817 889531796 689080900 972619604 13505919 346436402 730363578 439502486 39052939 834430276 239892381 796412176 532390854 930808939 649116853 87742389 877357320 349806062 523381665 1669175 126971039 882142840 469742679 2414596 735950092 763697250 269400739 182761994 340390981 166895682 433013554 98599424 906302071 959158559 752183747 806084544 637495927 755479188 217340452 716925568 102506688 339138727 969944107 294019434 747851015 34202237 115862567 77649002 88015805 597242009 6605845 296080256 42168758 482811274 953697149 300756257 966655800 668025872 638601160 824463956 514916422 520850357 192618773 134606996 546769570 698842311 867656135 32714929 540850639 583370134 521422903 166566605 363707759 5923240 308829360 890102503 650532951 292925802 484753644 234609012 714029227 273232339 458327421 972810046 800469186 626826472 719141259 136011352 192566588 9621383 739388340 297543003 123837656 317355232 116573202 355082467 62872674 566127193 373955984 386997342 632163449 301876132 122651809 851807235 197405352 887386925 428713946 827777922 772458893 878837571 814476784 682350742 946760805 938148608 141849811 285750766 641009443 282331786 130722617 92525984 948376674 951499477 68250663 169092353 631739408 510103043 155060646 452400445 488406424 284884955 668924234 878262435 774700228 14392750 528755565 89082561 51564194 509024788 201215267 356599922 651188173 917372630 851778021 273860556 398973034 468459484 355128537 683336682 254256273 812017644 37826824 45733260 140753224 900269509 527742805 85895819 269598471 486531750 420810677 522423751 309547538 877162665 21033917 601852809 285332073 551030197 864825644 58090963 209140887 457082392 713004064 42710822 67147798 592758129 452670814 748462858 491600952 850979729 268110186 969406546 363722896 94983415 99786539 372490073 18060520 537647281 129805261 153581747 760837344 188382440 529994562 614438041 371682835 876037878 969301170 813165205 704858618 105873352 506997840 893444038 734594768 778591764 444336266 547863825 259299710 332846770 102666523 504573888 675977884 97163769 180210226 494711874 939691433 411264372 233611268 55686594 239858910 982455412 945742601 476156229 737594385 404678871 716066685 778405224 580136909 953153008 109640562 47784155 38051345 26965217 90568977 776273879 698425799 15313243 419887200 945206785 584919774 563582024 449052642 512873805 885388312 948736775 25716008 204622654 914008304 314434322 707198486 614413727 41337239 842670722 34051031 805587942 353684101 148558187 877532461 30150521 923046588 978940912 233087722 581361467 360047930 242138655 30942097 165256481 862718885 74314285 333457524 857504599 976505656 518909631 30246853 691526038 629847040 287383565 84760517 65356503 14279104 271634894 539692038 46374840 859668011 733485193 254900008 269881602 58610770 590735317 57673639 359835621 703786773 546772127 633819963 181179925 230476856 239882894 888985674 51740463 221962000 483206777 787534195 173817046 814905617 421136978 316660299 96535140 380065978 82683224 49388607 449603577 116411288 126769168 560199100 856306890 160328199 285890699 344931197 908575778 973187081 686250831 800066066 962994123 906880175 67150655 750031641 493753886 345056701 790291164 110139787 275800322 374102687 430327087 364032104 73321788 762073640 83907748 732185147 511493802 1693423 30718954 717058230 150280538 40361691 338979878 95707036 236227442 173261064 387501176 974916076 841623306 47498484 395170271 351562994 335616106 383371983 857744181 597264016 397520308 721908163 525445263 68391078 485236489 636913905 756249622 665937677 25877038 430883670 36457243 820263435 850045054 130961365 773955063 88364629 532532045 947678519 119408157 795053774 146830257 335936517 413880953 54497871 101987966 253687311 297898754 555325699 743299776 529541215 968948008 236198755 867283439 687856426 816720769 674855872 181042135 201034833 437549017 142790998 759998878 649067237 315042859 175192222 164266663 75769373 975892510 617574884 545089967 14592617 648064061 830072497 500041781 284344036 343660115 156919227 121300735 372824818 688876737 195786340 554812974 473271921 294162054 769989616 435869399 784969909 980813733 672681880 328525199 778413946 705336841 620806760 471352606 684395176 359288790 797017883 860577732 564190440 142987753 31447375 994996830 693856845 973935400 285264400 204127382 212349739 378344904 518585747 183587602 623546416 6757968 559718579 313986768 819663261 696756627 73845540 356351076 892838858 71426440 16665407 302613134 857802690 588824912 115542746 497489657 372808286 200458221 801066818 55738111 220605497 287187970 44177763 100364934 917498418 731536188 17691726 70079343 549068829 10902826 114395788 796348688 99138992 145479805 113591849 501939121 38430931 464145259 658115945 736374369 457436345 553485749 872456630 698870259 277033822 727527776 511539391 810981977 458324974 448448721 491481737 760190654 752032945 947772085 695481663 818151009 937133 629779281 317666867 391829174 782734443 201464526 844020 75106250 218884638 249253112 650591970 645264935 888653043 121053512 169177278 825680241 354205022 319254286 156669218 111652504 541665866 298644535 761716588 279937276 262067183 689627515 555680021 301321568 523958439 612887395 826225934 817657734 213961257 979788784 737052624 133029462 244602536 774809502 630398710 172466479 10861076 24716930 838289244 766092499 531101334 844198920 715546870 891616536 322932096 397713730 28185491 275710692 455493858 750630258 217521310 871423160 183104816 513823763 455434207 710918623 242532236 857695563 460919268 468000879 976361648 9023591 19271197 63882115 229704139 247119458 640695193 204453372 608692782 875292281 193950179 504047778 413946303 578785743 961647662 64384721 411782342 738112820 805408939 612416222 221547463 84884408 368464780 10466168 269145210 638151125 433667398 439461930 978081827 687938000 975661639 163732132 576827271 119496667 163976665 134313871 15877516 682184666 77087999 898774066 72079853 495808794 56882680 602634995 531850786 227452353 316352696 931011030 119777678 227836779 244155637 413735563 602709532 729588013 659804214 679299155 46105484 184655619 991241440 32176361 471704620 368568594 685860282 497466486 224115166 112424869 411908503 83568306 597070769 512634867 772551049 303193787 549865320 601178669 44951701 932601414 35229792 778479142 870819755 443739218 458510107 433039962 102223448 424361825 983848025 127625791 422392071 46788810 756825108 450127516 963405074 188442962 572747272 147365041 131420259 89075087 355591846 25897654 108346127 228223823 41145496 621247465 541930494 460831982 780993733 325043464 386245403 517245798 3906043 543459835 263031236 410140081 318859564 125290034 807069884 95481285 787196651 475369040 48536893 796000067 928398896 79252932 264313267 221379716 268680401 683007201 432908505 913821275 914987079 672717280 134890117 296227855 31655743 2044760 207409619 831036139 9900595 406158447 119564504 251301000 654040403 494962587 116184276 689743887 199591143 450452587 91393723 479215237 288858259 913699877 66870299 65066637 815271489 735914097 147040901 354401082 113903653 529654087 286701212 898628370 937039842 434914869 56858081 124256481 737989754 911241981 901402364 985509176 106981094 720080609 774472068 672180411 480886217 540696490 125745030 348681807 226719942 852840872 111046828 556986222 136100516 12240198 246500156 891766646 254280218 678552058 773836434 782985103 859071012 669163498 135473071 104222244 272126601 609010124 883137094 383183258 768830377 49666489 328228682 979581661 712665046 59652971 715577975 700833398 937927184 571019489 472555300 677160935 656856690 751254948 948726955 108905512 831796730 940483088 393262534 850785344 388564523 17848339 59562443 442156814 465375323 732576510 825867183 985189597 859505776 719035395 451628986 618973860 895175792 70804690 435379588 58607027 81682198 213224192 717906634 579316709 706704327 442337378 96416227 95659836 58577582 496070938 802528137 3403935 554208004 614868148 960435424 303256492 145825588 910461143 525777197 486023962 903610082 702464432 748630390 677182059 267843200 958958102 952183678 210488117 139865345 336720847 742134824 738255989 217155558 404999346 172118142 658524266 621557461 604209677 371415542 568329167 706332894 217910499 574863490 511659964 80238773 701486324 721733685 280513519 256626045 266436770 231167310 108815404 453995568 542629948 82076775 820183424 911446562 363022106 870897497 93448884 150117744 290311077 999285839 817368059 532546525 494843958 838346689 781210814 791214193 41772906 353529256 474443716 917631488 761213048 320756134 39695820 267944441 400505639 526226978 425460750 254582478 23504849 439590878 699635890 189552297 588209829 59792303 269444313 193509581 20234772 906032291 77160108 328193956 737156419 324811809 270961485 341583677 349067622 1000 136011752 240156363 908609440 174429657 10589820 682522769 543655055 38455206 288001741 569670853 779578422 680313996 117896675 60761847 973331709 922294982 454911081 788335901 923698038 616589343 140093914 274121528 351773437 182663761 763460506 742225137 27320911 37776267 973041207 106597054 636107019 775218596 172192388 157247236 83580881 533064147 344648823 125787404 147978165 239321961 927209564 154650515 167965527 554430625 142324756 970339396 499747545 975255387 481830053 111659226 903910241 371752387 230125992 563910496 62740074 628045485 41530629 185359958 40713869 974924950 886857000 108103464 427773756 389518423 749060266 68552383 568334266 133749785 827081700 668439100 718263661 974526601 69724131 596558887 38944487 898975641 311942482 3023267 451978285 77894294 5053625 191351625 575880300 41506202 358414633 930920824 262192743 751429340 198692774 224057309 593783447 764545125 626267891 433684565 651417586 700859598 425525101 333883728 208009124 964406869 741734274 439070800 491023664 318171931 203059262 329239786 4058047 963382018 544459269 326316793 894171263 583965681 786573391 861226964 179596065 717044593 920613557 498618350 6794632 62526124 574430606 125181430 114764034 633446186 3193831 72441988 984682523 240502091 144788002 26820821 477270683 57079571 418327733 950317961 60381174 131211121 121932626 859560915 933611111 882029833 933190185 884211522 831172314 954882027 92526061 86876404 376764805 69020164 360140681 390314396 84027144 110518799 898955130 852094479 211687696 252507435 237257420 779288831 373487525 794532125 732045613 295932159 447032072 694539759 933085898 261817702 908636561 498236302 587052542 948093349 575075892 48074745 121373502 14054557 80799842 140539416 71473853 137363940 393241451 578884669 564682698 423993358 196986765 702711511 139603241 668771520 999112353 138010684 544819968 60817108 899363309 17971988 912266730 876771674 969930710 91984548 17572749 275682906 255625585 217165978 619051931 355436840 98957866 373244991 738012630 327472439 898468228 59604604 325674178 888141446 320277406 91037310 112789919 996029945 557589677 245690027 116296631 923277591 836676275 927525725 517338678 17100025 501906050 709764982 443555834 454514931 123914018 776976026 989306077 833205537 214654552 992417951 80537 482138426 782073115 176989210 378516034 14079127 494646439 687266007 404790667 535406685 803373310 33294639 382616041 862876143 118512515 829725401 338853650 572954080 136690970 255346833 95614726 261982926 646674159 217568560 796375281 636059397 667920292 832106136 913965719 219481041 879357137 950361528 559319170 276655531 803232233 14847321 177149196 817292180 998281502 812147126 334001463 342709957 659131052 838095902 406757877 508898460 476350263 53073637 583915883 11631477 75030767 500504983 95340156 850008936 8701153 271634156 717868315 493289168 860996509 594087104 615681001 776822520 449631212 837550405 403057227 506264040 768837792 228756840 145847752 305466006 695630515 118887503 632919580 795005729 163581091 744303893 139192967 546599029 461486795 769341817 696739074 941809179 107302801 837587266 165731461 280395158 569515341 778475298 219594304 718157578 78013696 524651859 89057537 868007573 795903039 390254196 606639072 92295434 724114469 159009640 984258299 972500962 524009630 911790669 841989055 628392641 710596504 984078625 48998193 931033792 122859511 98666797 549428545 533915994 564388146 307231957 328654507 941688664 398204192 799397527 191428875 328711091 160370631 200072752 972740494 336601295 99582987 141399830 195726793 903092284 431492000 809908788 243297020 99720761 65170199 668217974 600773452 388808398 158706715 111243008 657906738 955399030 153720943 468799855 43829334 988315753 759591346 376669328 228666330 560883397 474860560 213240871 544928992 159387497 716162987 405633624 604443642 312569531 583849320 580443620 190049293 770016241 412871143 594567456 51856166 921163580 511850123 302351212 976631160 298972484 369836470 750680282 24890098 825689197 463770805 834957785 853890811 409354356 518774700 453801216 763382455 426704584 85459817 96884268 779165538 544840578 446255759 766912550 752192616 511066060 846404360 114928240 367426154 436045508 53076266 954117535 670313065 359428573 121301091 789545196 825126706 298229366 168244847 281998512 870648409 205401915 311907665 94579838 499947951 399311269 747113011 362740183 217741906 653488793 269113382 883490261 764253740 502570716 316933622 140634083 624205828 163404113 817570372 387158032 662058488 803428818 163390046 426438713 493902921 900375799 90032006 485758442 128360490 850408044 163944670 701338521 529131207 114060465 62606657 865529342 799216980 584298949 857584502 250566739 121486742 983913491 146288228 278545649 376909812 208405468 745696867 974207680 498351921 110525301 166255837 78092809 117487002 510941343 116982283 337891886 922996350 754300601 844658300 115590824 902146703 355925976 506157047 462211245 90313998 84538078 48426784 71827590 75762862 107565560 65953068 417236054 140551934 890223196 887485009 212919918 495088458 407743438 141319964 42137811 20514632 25235886 65989980 443385111 38686056 948744812 298749567 953874163 315859337 173511148 586946253 829979005 164349074 840419028 417341246 886635448 962672028 781851006 311824348 246951713 204441655 543485252 597818783 373191109 197655696 171232712 131871245 340473120 674876954 618217266 679414905 915681534 850059967 814078115 960657149 715444533 29814905 766952800 651801184 604111414 179389415 291389110 42744452 552858102 164551740 677433476 344746666 710617966 967239707 934946119 656703026 120757962 205695493 897345811 355174782 308543632 778288892 954125985 887372916 691306443 926405469 472112827 691076136 122611015 56930804 792531331 785557520 985541657 868396273 829403459 467408009 802333331 812064540 53239121 843575180 391476936 823910785 300555010 966156008 560170335 721842343 954301388 185943276 597636436 820660738 487731731 898073081 819696779 879407489 515947211 246045427 817114752 873806241 578001248 414990976 98247533 103810529 579051302 568286971 1252321 616814328 804743121 124778849 111220970 72912762 103762810 382717978 230552263 761405893 67525102 116612852 759480165 825148567 67527557 16370705 105205974 133319865 859734843 543167178 788669589 403286690 591547063 713079969 667164527 972929449 952109886 815368636 696261472 311844725 458411649 756996811 725148776 184154894 258732035 823837561 138356964 2360944 736854340 143772484 617697739 439357782 543448845 930369542 667833001 962156409 603682801 136888200 124824708 559616435 18157510 518468234 9683172 848164493 231578685 354474844 930216747 177279627 966482120 216125063 319125777 532398408 180452323 567083815 434368127 744970811 37609825 735832388 102792426 832630796 275604786 730293157 246003342 229392430 438843479 822122255 213637810 13788435 103976427 724209380 201472065 734899761 335743983 694495560 768244785 735272130 629116054 572641134 57444185 983912677 747350025 383380867 597833707 545310487 184311111 794296362 310979793 745630634 274663372 972733771 61382197 525275535 294623730 240738546 527901407 920083763 54971745 317497246 649829392 926701002 336114293 56796124 251498924 497827052 659784111 379487859 804329688 143288241 394206715 425835214 273683406 762677667 821916745 856914524 94090410 408126618 375589473 220674986 147527691 95339934 761480196 61384900 589494291 518096547 695448863 926987599 832077992 983262492 879797450 487295851 747883035 469055193 106587032 472369843 841548638 278410536 742585312 94144492 16685708 350862578 17435167 719299364 126627328 807727526 54072438 627293234 867299828 8308460 15147643 314920173 129643192 360170068 150701995 841992111 431520093 938409402 164089649 564472375 903963422 211555444 48465583 290283401 725397017 551948164 120848927 690226112 222509912 383567315 525991195 116105233 651141612 184177384 142326245 676064328 220308347 169464560 246181735 396536310 124870881 781133765 665967239 708299586 271651874 169130127 915014447 640594350 904054146 24631501 568713991 489073703 444294843 980263445 441949761 583752424 623489230 441405624 778480031 119950868 818086594 617590084 502133387 517422365 473269654 166686591 410148840 977125169 129137705 776562615 145723194 676670826 570179509 72923031 475945130 872779708 660111404 555981586 720307470 733609978 447050513 674766898 339795433 90060409 164688047 732866475 756755859 374787754 819544531 835707317 865543725 266434176 709123801 731991515 865726359 922495402 20809454 607502757 161991219 113643995 684104356 804854242 284158390 696301300 494885187 191315335 896334798 120130008 840048420 612381988 458812909 858287807 175081362 233897574 12934053 990742202 487986780 807181366 717560567 275917939 357841402 501047589 720730988 85421920 14013054 245792625 751841730 23421478 646934047 5501251 683602486 936248739 633095885 582115778 899073889 331053300 156670318 597297666 552219173 75315344 493282177 334909058 628150873 159536990 329711194 132390826 13930175 282765322 277744509 603723970 774693594 901748472 195670437 134433243 13888783 393556694 74939556 706345997 127827172 215420508 549488801 7519858 801459307 509984237 751595614 665372606 46029582 847125624 435800473 465628956 49280161 236043561 653434210 743983657 545103005 399402278 196112314 286936954 94716240 192954686 527083158 665181709 398837003 976444724 343410117 135624886 854565147 30296122 365676867 601850490 874599175 596390864 679351322 455637863 86186447 813857415 847107085 250698536 261732807 297265272 223888967 762956856 997396268 989113372 514127928 787780139 373183226 291660506 792132284 138224665 379931510 712413309 855485176 844282970 568589877 697344653 575308128 513985332 116840594 1083700 333666805 693149223 278893621 674006177 367845693 852144110 798675342 340472286 963947679 962348897 930325522 922435192 905666080 936526811 801583962 710209663 54174425 1000 517866910 338238713 686870873 214259966 730159257 455046239 478507400 937697482 120781430 284381717 277688058 435654107 223030409 442030669 271026338 295754259 133711536 988394547 87206434 984441557 364999330 588039532 5643582 498189561 461699572 943392628 670731516 64534315 215429762 807091455 429736032 247147354 274971398 8484970 536931670 387425724 853334008 645830864 652191665 362372137 211981627 137297536 747433198 224223180 85504703 552725154 172323089 897690574 379069115 623810850 231177547 692619898 844149512 273311438 931511579 864071307 204096551 289541607 8433926 587374168 248937686 77152080 769116321 991333959 579194366 400559512 204337908 375230338 297396220 168162101 924259006 89935605 392272443 167684930 3790777 505933267 631384603 680389892 495302177 46258687 713276232 420144782 554291051 914603050 668801296 852402118 661639064 667038994 586286247 8266829 661948289 973952129 362645454 234134949 20636554 331232993 107366043 204824157 633075465 133253677 829998535 117969515 62763875 236872867 840425632 582864006 881328727 774303706 123813250 285350894 156968032 503467957 220414116 910146988 718980087 16820670 299918331 61977752 479684371 549959887 969516436 961877950 792770742 21516862 690000556 608963216 755539263 364718348 254448910 434678020 454841266 759272786 981142971 123309507 659810867 134317282 866085695 624068518 623111784 35728700 272312170 300023243 513789211 736824549 82483792 861752189 744373786 921881561 322981148 395987440 134635604 29419600 492362767 74653138 136052360 938871142 573648145 712466016 705937580 775935006 932686303 155492842 500711710 850577581 116327171 680438767 901706317 54283519 162952632 854519494 655440593 175127628 928833662 240956684 578938318 947591680 908853069 747726813 635542090 618910171 72738441 53106824 852163597 547315824 107889330 762696030 846975548 878459651 127679694 121320889 793172513 869926724 243357011 230711827 42982528 984621136 739974434 130637486 957883864 959136653 888845774 521436766 810999497 898269616 318297829 274468226 30898492 290735614 403227692 277923371 481259336 32839991 869226729 467363118 266729436 410522568 31672312 683031905 277195095 46864872 222171405 354553044 987490460 933181164 476010053 677366009 80928364 246250701 144863236 235179103 996638299 539307818 116778407 797745985 829692937 832913206 472843638 762265225 112887902 513219575 762976446 111272945 488771740 831593130 30047741 545212066 691882963 65645688 625008300 824987009 595383073 439401368 166546569 494923397 765312849 787701621 301700550 190575683 7550409 81042995 864658872 588064294 180330159 409930651 285337767 444343202 784116919 555015828 917498993 49213468 613266593 393787969 548313454 670195812 13815174 437714048 113051971 188454875 50446192 134363474 262275777 612442434 323514361 895861108 185183642 643204009 746484121 56707092 22185715 60467195 849061433 742264930 905612631 99098927 780997729 535790478 777581178 246041082 83468303 669842957 660694244 321885145 336108540 3567014 231016637 282935471 437613212 392188634 136153731 465011384 741175387 493510933 51303299 293977120 302151852 547990806 822786718 604888039 66972594 522175841 40906809 207887326 13881623 442822030 97415397 143768673 751602882 28532231 975001818 850002051 576858196 158516351 127254501 493966816 542048159 331913289 401970593 10969399 641263351 63078984 277887548 172117727 240371416 977063442 539946038 149730263 471002039 98462989 523804242 39788766 429907048 876902209 873753844 99102365 204363880 845139783 144833551 506983262 14672990 83504289 391465921 28995208 886422311 561611693 36486638 253531376 284585339 891784698 268081247 344681077 626306414 647085258 834435255 793196076 173098353 72006211 648634358 122385135 108223210 505785677 513317417 145368499 95240362 693074485 501223412 566943633 920176770 525551907 141631444 554445022 378141675 63673164 349554900 607641113 882711180 390811271 738842944 690257395 358627161 772642351 908061234 885064579 622109079 118549773 52117940 181995325 228271712 149759225 164364050 879718421 775580308 45725652 865367151 816306177 53860725 736786589 916699331 130651652 541755662 484467842 108154502 859514335 816676301 43051237 591991933 116019449 162115874 585064269 545320502 89839297 439048688 526876606 520633836 580674592 604454248 43536273 218715840 7039051 845711347 208570 292979623 302199325 537477840 285461684 907315079 477059098 426862107 462265130 994987969 599340769 681224640 448749277 622542609 415232499 23950745 941478027 746386063 146891751 29747432 97879307 310176748 62338992 878156696 262883868 155619603 218265692 99456397 133626124 263555440 944411969 283052099 104436786 494744963 954954454 911211172 261886171 637246618 733132853 797778586 122173800 556585470 749405684 68506469 456939111 83637737 616606289 842749804 994011533 398135901 455324323 747846757 102275043 548252529 698816286 977988623 415699467 702727245 422343343 502602040 512432837 702763364 133974900 354298770 831551014 592842518 912181088 786761684 265175648 168810435 355990612 669732108 87184312 866218307 478454240 4929973 625587497 77399482 991775228 807840210 85700426 970957105 273370409 579391549 281542101 339751108 552322835 283761866 352976447 323504134 880103632 656331313 177970191 746736301 548450025 670368563 357284726 977485255 332514813 917307446 746296992 597004010 726739053 40333901 871837735 583261617 22070199 129285970 140455697 167307292 91814883 886396227 119542735 499078319 208385771 25779385 648313531 846385247 378715578 16477152 570635738 711449729 710653529 814414262 482025963 181829368 816652431 287617475 621260869 166905445 605219957 792920862 606289787 958961907 913523413 546935545 824338468 247842265 571551390 10493682 386604405 135939745 451997902 529073970 749336623 8284448 676526408 4011573 4994845 710837245 105198123 268549901 762167175 146532249 959681864 374449440 691098897 998884891 475557069 615381718 483402010 565069843 477178565 925277876 921619788 759994015 750616190 448706809 747311863 749895684 806188769 10955926 563618952 705151959 304415847 707438156 391669035 970605816 132076441 758747534 534378425 883957763 450431526 37516865 6288951 221411281 370232662 295525964 856416114 317965199 435083516 894675438 661256291 127734330 78607298 120756559 53951746 912143920 89344223 391999223 832248384 587640714 90421337 198426388 223890046 92174039 71354724 37159493 57414893 516678672 854037212 13235097 883401714 271476156 99326798 928544008 20263070 191460531 668614316 557038784 827376985 795753713 750735865 558921880 988272867 780653071 256980264 484150834 914753812 88056348 367285438 211014185 617692195 713887682 805980199 42672745 298607004 9210477 966458762 50127734 338459956 595198389 373470810 113734354 446667916 566675090 610727044 806429251 824343848 448291439 46623873 814639239 264375648 644835948 407318887 64988829 697038509 817906640 555129747 346122486 790324533 652349355 93581631 335199231 281177517 342730640 177207576 488124465 26579846 215745491 294231757 139136618 751095587 101841898 758963447 678571346 299638066 856713801 926909631 108775703 625676142 246376886 995416586 27424198 269721430 583922585 858228087 472571476 115351702 933437617 332665749 286990375 737820042 800874093 796094793 990887060 26630686 817349344 744266222 173710070 865500374 731960675 533892573 230400607 707079919 230192409 477473369 158762673 453050609 623103707 486642261 353225925 204233869 441116462 766326164 240477776 519910296 121912853 808623722 280907842 211858864 701888924 882709551 56906506 624488804 545493356 717782242 926630137 115233054 809028386 475840033 273240253 359191678 628401861 625296744 348641869 169256958 784877937 372774882 55323838 311379663 109704512 124170653 442745650 258059915 109237505 138126187 639731657 467770482 56016761 114636871 67401010 858541762 853339055 983337226 58279078 481198761 145719574 39949193 29552547 351461852 117876540 813154612 975806105 832913215 136010098 982290699 228088056 304554272 788098577 377025349 259605847 417004332 175541146 582512908 222728089 946739681 161766155 618636580 387485480 289077670 325225372 299145562 144381972 77097128 855144511 77367536 274942972 781799252 141624415 559619909 689004618 249870428 193874741 563176077 291738779 402046783 938266264 991857010 801291749 597884488 635558992 963268782 938061448 591770085 68710 425406653 457275850 330459522 378104181 71907075 72539650 817852649 474285317 42685150 165622713 683175951 215737360 102105255 30257815 721372677 119554216 669129368 273375007 952376761 30150611 968606535 588092085 902621065 542539018 242720781 552159531 455184311 827705958 537084236 427012384 761872145 61263659 186046644 616108108 608852132 32051592 912286224 139407218 850763082 648790543 476989839 1906954 109679816 26565607 24830821 26199368 548437540 75178428 122714465 135202511 830187799 813648764 938635366 449830221 958160791 304443746 956835269 779003257 61943987 483827409 30716703 557987458 783908348 544653859 123125134 530319315 747017300 949624209 916168157 403573 95270065 644828692 636571317 568569667 866882817 320709184 379571492 831110990 144229139 846076976 125895695 150689088 615522633 502114066 162636428 617538470 282551783 49354581 545131922 329658705 111806238 660618874 785301313 214823869 493878949 830497621 48305209 469701068 261584355 755045174 444353028 283069504 615219041 938828108 544338289 993861577 541649253 27021555 987788380 655885310 889342113 960507492 987376823 490426166 321290877 98403329 68853740 622059681 265869839 662249977 813797748 325763864 888573204 762359499 454040366 512197494 630915193 688922876 659478954 237530143 432355862 330199506 813898044 203085215 138927488 943029675 118645637 387856098 277754605 749807880 414242465 865954352 625778875 893266610 405177482 490336693 24133015 738781170 640098555 566719523 631246691 100267957 257818149 696860495 904653883 1000 804875763 863916825 495725509 244390416 230179019 821751844 266774055 117528001 134454296 50859236 384795563 179429647 660376842 817404676 913038446 917505432 104198514 714109309 19479279 163202612 785960517 669881746 241171437 170761552 249006381 129409275 723163335 345825823 66961845 27569911 995206759 246142861 758259180 257891635 915114250 650368364 741244029 426977319 533344566 135020182 304433732 194893465 639712659 452519990 100015476 98667514 533556094 970372911 847778626 108198767 569649328 864036249 13760481 566360568 111410495 81062752 29927786 523186703 76267949 849859387 738594253 756646239 345152403 631637068 788250447 101052925 901609646 988072036 138154455 96863719 155814426 675150233 352660125 111049611 895463737 987597678 59944824 463914981 57359387 788975474 940315095 986686462 566337499 119575972 115093103 936597118 303523998 437063277 123826468 806884071 11476162 226077605 211134243 525745350 738153982 113303663 994542244 948240540 817260362 815992992 507139208 647104292 69765740 478234918 520764750 647586046 317422733 972418895 322505243 810550211 365626316 141598220 780679586 586751378 981907538 187867913 236946883 249628405 534525227 12102700 8491364 915799464 499328361 551541551 683912690 395316466 224923632 364292858 686634428 385591427 578278376 91774 968701573 302275132 213282470 718740869 182913013 178204392 335877164 93229686 980203579 563822763 235137633 193090656 647930047 126644481 672815350 379406161 659020277 880471651 382837111 781328137 949174217 211864394 595856222 942980255 544305455 350957637 622941037 116308963 715658438 715101361 352638503 33829238 86930683 988068816 172952407 660765407 741924085 232458973 951192655 533815438 995954209 767637056 589095249 689977688 683085859 236031336 883369334 332707551 264868729 518142904 377206267 251582372 648823081 566542336 982200920 417507016 162526517 590812249 404097301 736252777 304703408 493143470 371132822 623293675 579340434 79635678 80184928 61636749 155585261 341276065 56062109 294867530 326647808 971927771 811690887 501977988 551130890 641988089 248580835 349923339 648942264 598146544 22834127 430186918 655773539 402684044 706360781 79221844 572478044 130205270 679260678 183555600 719216810 498145649 910998174 104075168 214578813 332773062 117384216 32907848 980185203 285501769 662775869 77921304 97020678 725131510 137998303 384525185 809784099 46861017 109135676 818681945 661515854 181242857 777811831 344281229 135689657 175376507 601663427 134386671 325488214 533235097 108473482 135670540 897959824 386230251 737437088 44037627 298611827 387430722 103764403 668405740 317289401 705582356 67360774 620191505 832158212 168346463 231014778 630748686 101197934 714527263 571908498 224881117 440468735 880176058 50137486 226243948 922719978 948026137 962799751 446942876 683274605 290824351 755192282 565826874 579537654 781774274 744209230 543052028 809957675 49650131 900347853 299342874 886277144 642076740 318200398 470912176 368887388 149988995 479549142 718808264 59133547 891844577 46438046 959052766 917357941 950193298 699562499 754905185 236387805 29893008 23720693 750556581 381562175 580422201 206286823 246960580 485838676 54323106 526058602 421955291 349455733 253759670 70405271 281913381 907202651 59220573 531992567 856245203 499414758 723843012 133718108 612895068 576374650 642003881 474432346 649933792 734358635 962675309 390246648 132320552 780411042 606833387 600948468 387286333 645001679 823579584 340961834 656351639 790079876 414447385 140044452 337178698 344564618 867372723 259250835 215630318 999298455 306352768 363956376 788110667 211649489 103627441 419795184 154322437 728572325 97952610 432074137 559653555 122053576 992729692 881702525 789348164 345831987 68589613 565074177 399196351 509601703 780491038 616236496 111694332 104596965 97233365 997816073 371064332 41128192 124397555 507608544 398313574 3632521 337266418 553137416 47695108 403667887 93468225 736680534 746021536 579507506 225090142 938090601 505711603 737686230 126093994 31827770 643830325 68210642 8148687 19250819 834265575 947502951 348598643 697627840 501156310 957479073 387518326 1628183 486622327 558491893 799266623 162826977 525338694 582177440 129478886 901913800 137298798 298151643 459930085 32510286 942895914 221361032 162268160 988566862 892971754 841723344 312977179 981138322 792060540 173181545 213773229 6865526 362672872 837716951 530231231 104849780 321828887 223462508 473730657 456197849 894637632 975991726 31286427 826320095 63212834 306794579 49678643 786324113 515940091 142225133 301989904 204596858 274560649 757344979 364132251 993517225 364210010 325757756 978875262 368441415 732742865 984439733 202591547 721520427 555442119 397413025 239860546 947217017 939178419 177590286 99368423 940282953 141872331 742727739 817892618 62934641 58434111 945220904 670647752 16078428 270208322 257290478 922505535 401255685 36065278 110999691 168224273 65131035 203869467 924303612 186730678 476269463 337765505 198410931 82371084 582406703 258892595 555583313 496972036 825987748 309086849 685662176 698778159 729235922 828147782 285089869 125657479 154035155 965618100 45648312 110690474 543216598 373517160 962604898 710373150 6857659 987544448 879398913 788086924 28091979 143551684 111121381 725589143 522487407 360775862 485690768 163337681 17535802 691400495 528396643 472935076 433247213 487074895 410338418 672673527 922958758 601403894 574208088 965800704 977316471 144567069 182753671 87040717 376276606 877671608 784259163 516634702 133541238 925404321 603568835 680333695 862740649 231106570 500790726 19002270 221626701 945892273 149688103 941110152 741314284 804349420 254941319 190103905 922658717 677918501 935495811 64525301 627395207 123325986 20769397 649364338 33005396 998311963 129250057 694065840 583674899 703461248 807929713 10369393 18808254 453121331 767949995 522956870 379605572 464229950 631785282 671821094 73070401 229080365 594342294 605350046 481556036 521169446 285627121 992105696 162493979 55892489 996317385 418172759 312387158 97692193 705884933 937938548 158526847 275808664 768728767 229285272 664185596 163877961 655074338 190181935 39687635 232900041 475791589 758277428 185660718 814617361 590693119 908554605 713512718 256740028 927725040 448092101 186908141 769130396 438749757 356540816 61061992 119504142 755421376 520980166 121215827 528681730 991787687 114485554 455792830 21648916 124512784 859138185 724429374 703412605 97859748 873513754 190276481 513969807 132818208 269228976 894395031 136580718 596291139 98958926 52849204 55199651 13450049 786707835 203893670 842546212 299338729 139294899 234732742 475607672 326176000 71341388 63297974 760313739 464418471 89012630 90887688 449338211 445751130 731417249 762419669 420408510 123856265 113341456 884684616 345143378 908198234 205648159 790228130 723101752 331189738 185659714 52176186 506743793 503644413 424626400 173801187 256383973 926106510 944615486 778631025 799400814 436012045 767113526 78749242 515153409 222989243 620992538 284300026 718099141 131882854 677252845 979139887 286188065 333394795 140466646 620140813 251721539 871703945 89218160 903531790 474753072 408605339 28770118 819417901 319368090 148306538 608081099 835158065 569947620 442907108 257791367 719184748 666287929 132397559 770498611 458935581 205433368 892284150 261163317 480700505 282925089 899422635 435658122 111450048 624402978 264778046 908722770 437626046 813409488 216622083 574901464 46759684 718663036 298676924 504072913 691824164 637503486 126273282 56744687 47967670 35432365 137666740 428857572 377488783 829935425 115025413 207677535 685746757 129959604 205941848 146070217 525377389 437964786 949379421 945636393 335848644 401778721 509809332 455046002 996548871 105574464 612957979 907400985 302701130 787367355 549293005 357887560 205655784 654962020 971861570 362710397 277317197 104447905 349829761 734566780 868567342 615558642 756495245 247568303 570209575 299607518 994845897 900181521 37073035 8516606 930501273 83600283 690475407 709315341 773082229 726161200 962847208 732851938 6854799 195411693 30138223 729296516 226034517 80084077 561863542 873107626 184748289 567545403 302741854 446072845 690693477 880944983 286313500 2477607 93111712 859771910 939214448 53887246 922731307 235459103 611912105 596276353 75822429 821338107 166123692 523655630 822660465 731299954 304815107 43891161 943895210 943913826 217506627 350623387 893305750 517624074 844988160 888303843 565584441 43416419 386628026 538728476 642832156 914337835 518214624 985912790 2664172 359116930 901997507 214651015 668959293 736718029 842133547 704702793 416142767 863768436 120048719 570942085 908792560 154616301 191745298 116249002 301682529 430536898 78669919 875201568 95376585 806465272 581785840 15736993 176435053 614091876 240178755 692863114 130827729 376854288 602967254 114598461 796693039 422484655 434029841 657296380 703794521 914455112 430349691 12287561 799713890 380072449 125538826 822037653 295494541 33231986 26335542 176837649 150899023 671390087 997753262 407875059 485772437 174451608 953468442 7455851 640687065 915461713 222534642 87113115 836420942 531143766 593612180 723638221 108541628 30319756 438552097 472253587 881982873 664985721 55887170 965151361 893109298 809086331 648591573 653315692 941466972 567212624 238152244 882857592 35788625 168109173 222007029 234532161 949008737 358072024 62262463 66121350 511070692 788873054 131919975 733659026 47348789 6530091 530219416 183896881 511856864 523994265 295249931 475178861 856427895 522307274 134802147 38626099 274151790 993506286 54653981 519698145 855131271 981416910 371786903 696627265 516464594 825920768 240639481 511005898 326047615 885426494 656089822 479673384 306271090 102558903 927111751 870567999 999135473 343313101 54621042 925283576 87689262 182609901 846521031 250718835 839350753 173993927 910536083 479826676 1000 925728496 368148875 256850212 413854450 718523542 447707605 933769744 236945952 65212905 282779386 1638785 51324366 895834910 774973110 682399271 551168006 284355952 495560971 566211292 923951725 538537478 318513885 174688094 379760719 782602581 996160769 480423346 88655167 571043885 102698888 610090558 14773883 272704861 477774841 487853925 883186774 123310631 362780514 637594307 992492968 474529381 363047099 11134736 725441309 537763617 713717699 53097969 518475051 476805605 223308246 101133621 533366516 863465660 550660440 369511387 654313512 372628975 374953927 369351043 990185910 167059064 33126792 896846826 944795869 68812594 312580169 16427376 115117541 629261995 582599984 249814747 427240128 77314261 542347435 818435493 510314683 376814809 832659624 41191252 370713213 334282997 849416755 547462079 910528484 429993783 672406713 699348743 76645762 755649764 998539250 522008338 267743458 655441643 521795484 153661758 626728586 462246210 237158895 124321098 387752922 208507892 860868541 848022588 62469009 759123923 295387910 644252147 714578040 73577998 868200122 583580099 315536656 810787843 702239531 11895715 731282089 600059908 143825790 403743363 133518064 846748916 206515837 400871023 785548883 985008578 109793937 555595997 7851688 984915616 705137115 857554983 635515175 763949151 973586274 35744660 993184220 466798945 990086522 722307340 217343105 850890816 351897296 456173702 996561360 815021558 799652987 100846683 792063499 603009042 410993464 83716390 232144177 676662454 519810321 554904605 208622419 590968711 445567806 63371421 861646922 516889791 207993518 245847392 14063062 546136034 483494751 399031711 487436220 2708084 476557085 602188115 916988113 136279960 48081041 58741015 471794716 902504182 691576891 914652995 90087043 682671538 829660797 575003668 96334726 12432622 250413491 901761793 931629670 592565392 586126271 378769588 4077965 603100425 145580788 196733497 98500822 224111769 260745999 794319241 501520192 275237238 98520604 382549957 109678123 9194709 825532840 169730372 912332234 849857198 810418013 750361065 591389225 129736098 910630782 304480086 22055342 498008902 603284269 628680495 237906110 604784937 98873029 710472696 980755098 718824765 222609313 557600369 477211870 414256629 390153050 429620608 370906660 99109955 80083089 101592616 956188390 503426866 959421006 638359226 659900506 927874987 453222191 303615502 464395014 687848099 89803513 984604681 979977447 157734507 548688893 89495992 122407524 432958795 555943036 838452354 217497939 105390231 119547957 260047449 56720773 830053658 723942048 434569921 414444781 932021116 11196011 408030700 27976659 750737804 135872498 427574585 846959080 15399735 820923258 112624854 12863766 436829557 34924887 2841957 119480855 790102966 408151509 917170441 321245556 6826222 61723161 34971058 596684637 344177453 161088278 348846162 725149294 61475114 486083202 366495776 489665497 903269618 613263599 644693644 779978005 89640750 363505866 688120366 291166079 253757427 353314714 695206560 565545540 329811745 493584497 14387968 878999100 584469766 695627551 656957811 995700972 76209368 668455507 128504453 668210427 86983827 810892732 709518145 342591539 773607741 7772329 231320973 437502386 860285181 929015281 513784071 102119466 82489679 422703159 882931522 87130593 214403807 59170485 497855492 747768902 53532110 579270019 711896050 198024811 191983741 738519554 76556243 900484142 779037351 713726736 396097525 651232037 928130541 407545850 350009555 512127305 862092661 648484057 269227448 78364626 919285443 442705144 67002439 377678862 164820184 480637001 790189912 394622289 193030293 371371000 693441156 729107788 593387662 837251408 289592985 561115946 118659436 864658196 679230702 874847593 808350781 247467698 598466338 578874437 570667758 132033409 515230953 740382040 676382660 928046758 918398544 291049090 727679964 460547410 940717944 362043132 296602881 752589389 870988355 935455200 355171294 169377988 216028296 332598869 23194571 412652516 475132836 192669637 964093413 459704242 374301398 340521375 314189396 195147446 482070171 301712142 900455021 973870600 375020955 884296028 292242711 108358350 350285735 672979073 135524806 573399488 168992862 793957334 130687241 548863094 643283219 334181982 351554246 385680701 870225144 515146222 367851507 657258062 198035478 897527547 993429395 345392877 805960462 813800456 350573633 458744280 814226116 940451384 737131575 107830703 831909293 299024130 185157520 488649735 870826427 46768852 198766771 349247309 39437793 916988534 150864829 5171249 729266806 540672475 103633811 467378990 143491611 608794799 565744817 293661469 378115096 670269905 562895850 297007261 886616957 540779588 346174174 949809920 79952571 574908161 77691619 431305931 643382209 93593475 248419044 521406862 198713224 73099156 22848545 816649037 205134854 14519536 271361147 627154522 981022061 959881792 74518935 935280138 895143166 635628862 6263022 338591361 260559774 165825661 391848885 568078591 84108494 522446454 716510225 837592211 11457647 724585313 576245486 523398980 358574843 960539728 41555050 575243657 62903969 666164021 964262212 420219026 81813275 991213827 272840967 41780032 894254725 518938789 547274072 766991927 612870047 648447765 772796790 589714786 105152918 385847495 546711658 820262674 5742124 64209440 236317781 906669952 19451112 914891915 341655923 638456444 51211993 946510396 847549555 843855632 41320973 993799694 684262099 704601859 777966854 913347909 992960659 286148905 8298951 388748144 41429801 337232247 81735125 832466358 962348744 73043227 501533462 305286319 626385313 86451542 571023254 756461983 15532019 699063063 565385717 613890980 975410594 567617856 72778597 996689980 217745671 788623946 917944148 588279226 580570034 1625628 133246441 234451749 120475610 834009337 727967872 563133667 37130419 686215407 501151459 831143041 648973726 897347941 640002439 347188233 395213736 33857030 525938516 400264211 281727886 174060950 215388272 439515583 144654226 169433001 701319451 29489567 348421489 45252192 527153968 711658730 479250281 760430804 825234944 200852722 537430029 45156862 9603179 895840362 86169486 135304783 938558575 861183985 16980208 539519364 768670778 44206466 257543997 883843425 724997102 342845050 351715698 360357997 139991123 237583429 803274436 891667320 514096829 972487335 676098376 419392584 254355978 744850809 853715945 908604521 490981373 256640969 542200652 346977268 47144595 446739208 132573266 667006171 948435492 893005634 755337125 478046711 592518591 413510984 219423575 80537409 72058713 419774870 485381394 643617810 82383196 867493978 751598260 28602477 88709649 241428255 66056987 391307070 316216111 56961820 502996630 180947247 959185482 778451002 146948416 558198585 824569343 471309145 297569780 194359979 999751472 946203277 460855525 567259485 473049339 316914315 872080026 25858473 371616081 529214945 727895322 164136554 291164104 709018461 82204625 250786360 795223739 958106106 661783065 225359882 546774892 268598907 795272074 69801072 473577836 389569692 390993497 756711504 728313475 858538442 24673959 301275407 570714615 894414421 519572366 123828562 537416493 794305052 540452385 580468892 279130574 312349910 52751793 144797642 239125872 214552268 446142035 13475661 564101444 15473659 355053541 894638899 834612218 66107757 593005642 341470698 618253191 338993127 243464954 305263243 738338806 681185765 544317599 178167241 394891655 911257981 581611024 365903901 583176330 962514499 520622496 493680342 287218575 90826277 944813595 90681239 671501916 210233665 891431378 123472911 605751960 374902207 155148070 73829316 99994423 99728408 790325793 506887330 124458376 222068168 108878953 200005966 136142765 241691104 305433188 840798792 329791183 94520300 22438619 417403379 819192436 729679855 523244084 824995271 566379899 609388453 148477592 776086290 322668262 759198244 433930127 648969266 121222230 848239438 50575063 771143651 690987336 423541220 388876831 926749346 511719923 87460461 209328578 121849892 545839767 152247232 223479525 664090220 572125104 298933925 113131157 12869378 402779380 354683368 252732119 75313160 611105823 227978002 696458320 22472555 127640546 638478924 749156113 880795731 999008625 925687757 67753686 832664447 137793102 464793815 704783605 809738998 156144030 450624811 249390408 388540396 546274902 772935702 436758 970420190 129656486 634051386 597644459 607021794 985381477 700583188 488641902 341072986 88380608 852733662 536663266 888959006 297200995 428653327 42783995 854965170 541665283 19875936 972794557 363238202 660056567 971042974 862015452 439290486 777381739 604069470 112023532 401128549 758733727 592865534 49003119 258679406 65051354 775892222 465654805 62490233 455388397 620059950 760228820 304199850 131202677 421268321 696009193 758351644 190397991 871517272 522396136 608637292 613461296 820208842 700450376 375023740 140693576 10873707 816637781 788682187 210952088 338803133 676431375 821394837 747868192 693640294 465865012 792534383 681614281 823839562 961740906 21606356 516459801 450905599 837072447 339414922 389925029 437574703 397128781 418792093 862161679 921677096 589475806 447133449 239868735 92186644 920954725 764308144 96956522 853952286 948401616 426761527 25609953 473655487 750811517 240104004 180287907 932624109 217290186 499159597 934990669 766967663 412097367 645457518 563338053 778371206 8736598 684062236 207169018 428667105 166671026 596465197 714061202 608519618 320049567 186178435 898823148 448624708 347018142 257860808 137150487 809005548 674566977 643088486 593113587 101149652 819933784 143295997 779940133 534187945 944076215 91902064 397996340 797005272 288943980 580661809 196233432 148427357 756682411 385343174 651559911 272267 49137436 872397126 247995349 499280321 324210984 4832596 431211697 873928199 131784242 368013835 725888575 94509691 1000 110350001 295913604 129978659 596867779 529050475 955695759 944387174 405602464 930364178 862871506 480475407 458835625 733248626 672342601 858619719 174106757 126709758 585481006 271468251 512615571 58319568 151711377 271040906 591350730 310033598 984457612 21426265 802587907 225199674 126697435 208629189 346580385 906765010 660504151 744966145 676760525 131151306 654053343 475334658 904474451 486163854 131540003 961876943 673865700 349455432 562897461 81046975 29325817 618082833 625971852 444707322 87939742 21881763 173555167 530992857 281470173 918477086 12384014 584223054 130762062 517864943 214759374 723586410 60343336 598582853 603616233 735722110 361030963 714016762 573766832 949708771 75259658 327116372 127467502 329255327 111183582 340587404 138902506 54302452 13015781 897953946 947803477 314562935 730467916 251002031 348920686 196676258 131198878 13987039 346276164 871581569 870455995 398499125 761349180 500245687 755375308 963633012 540748645 236916778 707562074 543715422 414760350 108054840 206745109 254752774 891630309 567049335 483745092 200450325 838733356 684892360 467269264 408055976 877492440 556385343 404320333 374214853 678827034 421341804 269544164 742150540 769078577 128396978 547900922 850794262 544086049 308693647 960764685 28575841 576103868 352511236 155018553 380756700 158341186 989127488 529709599 356731161 410224469 12345191 678893662 13864890 296709207 451055433 210143116 9056588 229199535 659104731 779338143 442832888 288761029 442181799 568851213 128178586 582805476 266188257 293887288 673963254 737260910 671125202 154052794 977862551 853791837 358897735 539183474 172977770 720773037 181028153 91529928 72342416 238803243 740872059 264563986 181548381 759337090 211091801 3449174 552551918 502415631 18375903 125096775 518447689 640282793 386525165 506741688 253664731 655401778 105149690 942599753 221283915 762119006 698352295 388932197 108899816 765947765 817592176 185336655 66783713 551485707 203466637 818255561 290063960 832335148 883268062 966721150 895366664 457876726 160920447 156411054 314186098 612502416 4715277 953262500 937896616 653953336 283113258 241944130 624375865 290284105 581550981 83309365 314886517 316819480 67025875 684051021 278073734 447090504 755917152 52750617 498836286 684917462 371629165 309126114 140054985 93616019 338110984 675765134 948951095 240544056 104338462 140818983 49868866 229223996 671045013 691338133 839429417 844337061 898225704 122447182 84743898 568445189 240567536 674286458 550449572 467658894 5360124 145066660 847869808 59295795 691500025 953972538 139815862 647898192 29919493 38911372 472190446 272282061 346465857 158253253 280771729 716334829 692735495 521040817 635219985 270447244 528279474 210078466 847925056 1555642 10133002 145540506 670958583 674630450 564388335 543622093 440058372 432071132 350411134 473194085 910061105 512717165 785285359 195590961 121927689 379777142 738953670 319229166 686929927 550992728 555102074 965104816 169638162 771258414 599278081 946947834 742822857 967036061 850791130 58406723 301328207 950471280 188372855 215021936 599197764 636705900 459601456 836285826 667640869 181862900 647187303 474770941 665179445 610073219 323649549 478325463 801122523 576733032 477446505 165303171 419787157 274472164 102602418 964887626 480255163 758474794 302380542 722900148 555329606 816556930 320417463 610800068 573924595 160811217 354014765 934144010 656002647 136168139 528469501 330728664 701568993 969842982 348947849 365900346 34178972 707124171 760633275 552275715 325415256 60908752 408895406 773291009 433640098 699994688 115824931 208010351 957290590 772974447 140603556 415257297 691848988 510607131 937818050 715567716 848405989 226514155 259423781 701431919 742262490 22213367 441812177 651159154 327053467 33173117 50324887 428517125 362656204 14161749 834931988 692616684 570326286 8615118 479537913 217900686 607045199 184150543 34629620 626354372 472626155 577993741 274467399 939337160 609326225 734890292 838797624 133499030 323541738 980102877 784701433 293690285 437972852 11875693 739840190 598087362 656804807 451701271 119908287 110685446 896127379 130983965 962432394 85655939 792500697 650003632 829783337 194328634 686775839 564432910 298849408 28364645 241335871 478584795 285145383 50294137 493284453 779967608 348223772 99670195 238065991 645489932 865648103 719411519 303578561 84567557 923141294 123235785 494362968 779013422 94348820 808714727 204987952 612436336 803302065 962727808 432873761 469157099 86977812 206592113 910968457 295216507 119120867 606868609 753704765 976856954 159051300 898369597 163063819 550026111 497675915 801105266 87026921 112932198 664087341 593848511 56010054 154379021 336963037 549021082 439324599 108221460 117591268 364345032 731388348 575047303 378175874 596386816 523583958 712020389 68187476 578867823 751027322 598961085 987671133 929105946 172408004 976556344 37400021 152508284 392386468 216458368 529780260 68240820 47066750 808549303 515166214 863647445 390841652 769931554 977475073 613760497 471963582 199074637 128190455 312011141 34411452 108832699 37204315 737133120 562983143 260809777 541207637 152680493 147317050 302373573 438233882 28089283 16740850 389161363 151573685 78029626 98472653 744669390 789547107 698689414 595780807 889208056 326761959 817126919 445770625 456805802 810006062 778899778 414532261 102238235 384370291 21902738 24793098 61408878 604551384 773560867 72889873 919516060 38936594 931946861 590599681 870147059 289063823 438357897 150373098 334010994 216555932 796653824 917963385 836573098 502796308 355002628 572171661 658357605 828083353 361350624 74252776 34371463 553184445 644956143 5930853 573089494 589051331 953887989 303129426 779244402 59666109 591115397 838009952 774718991 520001145 154964341 643911224 325084568 8580314 442550244 785260512 401338986 131976448 510530134 651176297 342989835 33772664 592594453 615432196 600380827 996814494 230264367 776741546 995456279 297196878 827609118 655117100 339234938 254129579 319373055 418862965 54912762 13161733 118500208 979095787 151590996 359781128 947380614 819249866 606776101 134381823 765756137 751318263 756468257 331473252 311722398 501948969 681388748 237668278 380123505 719171778 567346381 890506650 79636850 171624341 840682574 282878251 17817280 883560536 874147480 58937638 47135014 967488679 207095173 912546537 53622212 79724357 50933958 463698870 44670862 24855932 397533390 204576294 246627712 677135101 34299619 761919644 591191689 875421827 852316065 91302213 173974276 470546537 199336884 209131989 572119663 936834711 19178216 779204843 87495976 672121978 353271435 969589216 235892850 729707191 331496355 59824080 754381473 895551521 206035790 124255953 939033232 933489710 979295286 223947892 612575201 345287275 207879419 828152521 493202986 210006071 426394424 475963226 22053994 388601964 841791534 13431927 220264067 941124485 617857666 815449434 946039180 853830086 82314283 791987688 549513670 427026172 431127218 99286530 766522010 144009698 139214725 120818262 668170916 15694472 7441626 25788266 561154147 371256307 186314563 923757433 128160493 988249090 320237866 85338742 654358687 374985657 680171763 498045661 593254770 83744175 821395413 392248163 535184345 4013173 17060660 573287368 949497183 720941328 129129471 197169021 114928830 171211732 802511362 480327906 22883906 842170135 371439076 789394668 662335678 438032901 438042050 560007945 548312255 339052247 201517698 388057873 304752628 59433949 640004156 129482253 539473955 759014881 808192528 734927598 471641186 799473142 328180227 376058628 344746654 248742574 497928539 423417004 899908414 15099493 758511685 803435019 625327088 450292689 929840307 553115603 363669234 144252111 393090770 370238637 9820896 562113186 357104761 31270293 56703522 505231125 778165375 127203681 23893003 953101559 405342812 106043397 59130887 749862545 356535968 974749310 421736287 43167537 455713687 921787294 98207163 145266077 112981821 11487561 516999092 582949171 699769395 65260937 398462312 879659338 757874954 434255177 258182998 106019020 724564992 61606734 74430192 846327795 134738564 108859327 12367029 292909148 703571844 727836424 503236939 663928152 68941747 621444944 794523005 99449730 704608274 921918132 303545332 235455073 186572996 341445267 279685562 336675863 630654860 807056787 509987762 293327040 221482983 63043343 365224873 816396650 184725462 45606630 297738057 530998229 837269400 441153086 406900489 529088384 933040702 948391343 190202167 191847527 605028842 721989392 370763700 258634301 115423862 75103227 35344528 598661680 828976731 517573160 512126731 127450326 588946089 843621639 744893594 771387294 843831500 582101493 834706683 427973267 880710623 661407459 241276349 184464065 725600382 439729136 51943281 811685999 149113404 135168884 37239943 523833924 187644996 39363668 586048137 752177689 311971624 379787892 208823161 939279625 313624851 320316107 385569391 365973733 298924026 425327794 44723966 866472030 10027140 929659760 65304978 437137117 227448097 627899425 600941209 966511259 971621719 986424591 384411289 441949362 243103610 124716598 516007415 849622939 255497617 292536660 71959379 96108327 412765681 621693251 932625289 872187603 750589995 2283805 840664487 337051966 466304809 274565864 949604925 261411499 427267830 876074546 213063286 156064093 71391710 606106386 800349950 955325776 92462362 253385122 353012557 925157988 566572876 212740023 888297304 267190477 897257161 103898494 325876746 330873336 62202526 756128356 776106583 520842661 755632302 217580463 884202613 34702558 273054726 58950444 729286241 7192174 648237593 780310757 974718032 806779166 131202855 96030863 189265082 491425880 144991797 101850100 694602166 731201568 618873699 211553367 479201378 810287017 853066585 893607614 634658495 553955469 744959376 143250224 303080809 108613532 562052137 848819669 952031184 1000 654543435 603730714 189813280 479958475 85680562 99735636 435305452 37898650 524318623 431572726 150799031 269249523 684283973 27132752 671162497 114623624 670903311 595766507 409621559 965850691 981953855 584336511 496250425 133118731 100602153 903798964 787364572 80810399 234062748 281571673 361599756 203161110 934788984 399797324 12304026 572597864 813175425 126635566 20999446 484807117 643235599 908314339 93136581 602216884 932969748 628033494 708925077 888217181 66629190 924449774 847745391 771000196 436985374 467332632 65351678 31226677 269436105 119263692 567067060 210571729 987093139 245052671 822830477 932773735 500914368 766552567 904728128 256038788 6145578 220851268 151073345 58133805 899083550 111463840 859265442 248020139 110433979 328018437 770787839 505665708 172787097 117361560 964216366 550615354 441604297 805523429 980607030 741842767 55217237 854808202 482630333 457049001 147987290 371872562 334533029 326774786 529746367 340456579 576630349 71711635 336236271 248922122 68954028 766070596 409367959 549581361 364954819 907169194 342455148 247739305 54675211 925370364 611578578 251960098 63379441 516597637 710198271 924644662 75556175 856171291 738800005 255439133 83227282 328270528 8974082 766163400 312242371 863501463 836620818 529602247 579665943 656522151 599600802 790602479 313093321 875646898 876456359 846508945 890505456 651912227 432200229 907797645 872083718 260140425 909730621 414372905 700814573 20040191 748367382 762226376 327707715 349582770 240317231 501930103 700784327 442195944 908131722 763600285 578894615 871567028 454085539 37969975 306614970 363698036 91275126 52311535 560078115 90397541 334171398 983598857 229177730 222382155 233156636 731868113 33251417 983283250 881851735 731386438 182311797 420610210 946416291 828438636 939129776 996963765 318367170 271523606 459647047 294630776 72848368 537625751 834146178 944085449 926589259 887723340 744974141 47548392 135455482 199061195 661780445 111365443 666250531 50340282 627657984 587889802 109847426 241486253 458696249 583285272 431930863 619938088 361230408 74278043 288582312 555420640 557943720 376458730 592207761 891280375 896728431 601102567 739519890 369526318 58201489 815195092 423806658 521926659 729687556 472157326 558490435 181814416 605626532 98659018 950686465 46557818 55313438 887528695 466420803 601034683 755427096 74353270 37449630 285848239 363991930 969162050 153244495 508006438 983445995 265156352 64637275 667266502 478666603 821453184 450718404 475184037 664214037 561862669 96403234 647189555 252547332 195156815 330489739 60893761 355051953 586715408 776657653 633712870 37103854 568235602 662826152 454990854 397226509 853854326 236582690 84886289 253637608 160158692 385716721 163724468 965137483 881768817 92604429 974826388 419737579 54445468 360026199 320918325 362975912 540387697 883046875 828131695 777710658 366451857 570342530 942374440 237539321 744940976 68092085 345343210 533375770 94220256 542156144 881997014 722061375 437660216 748284519 727351349 324108849 570614697 926194251 304308724 416873929 291065113 907729215 752203232 463892352 138285561 184012895 293587433 597813191 563807298 596330217 506088508 996894734 865022374 259914113 994168258 556670945 94454007 372005485 340279466 287071727 391850843 55653659 539110245 530140814 208682256 433948056 422280070 288013034 468712239 32860566 60272397 256035374 560605037 827761011 634398530 902036248 635994012 326118823 897438052 384554485 725648715 623840546 434595946 37112737 858781399 84984315 800204796 922098275 74545416 429600673 793445677 129392326 2100986 391817739 473194007 898138102 815784390 32027180 672626983 115181540 233881997 502594881 254768015 393265657 109939274 278453258 360134841 338067266 76443716 46316086 457234974 338410619 382129333 459180906 107786073 491164251 46162225 804248709 255564222 699646856 769405200 711990309 885002087 642763093 571734865 689827111 726553979 925675771 129317070 15224425 594472948 593448514 882500630 748114110 850403693 625785502 185816204 897812047 909697528 755799051 215866437 156328609 595066680 339959245 723250851 96263586 430378395 4338711 81773769 78924377 454224146 376676021 934866311 640320431 798553982 760200032 827601722 72861544 183321852 231860160 687026449 15121904 255671289 115767521 800099617 771879641 50648666 178104108 483332798 106764039 244721854 159097936 395820207 643824656 251618763 442960540 963572933 637115681 339320329 262863939 888059616 222533067 244692519 875073929 63300411 521009024 197179236 127587246 692529237 178423496 888325490 958693956 575375072 345275185 756741574 313904730 294363796 878762090 297879587 269189352 665229827 114736538 106717037 603135669 619388445 326763163 721092273 672785889 710081048 679872933 427546208 904210671 973433512 526856087 848965964 811966155 699780397 658443344 723530388 489128393 403305000 622640447 790410254 739024677 150755760 1817688 907672386 399822846 345011280 475795986 921689662 552823027 787083897 158430514 955405038 742972525 777766506 524517615 306291590 736960471 488006920 2665020 917627997 267295102 60759820 412380163 561346633 550391427 522710078 190301620 699959024 418492080 33116093 418601254 662834406 71001063 156886601 176211323 419806712 774282159 48279542 719955137 551135865 78661435 817443438 722104806 382366426 613350750 574706416 979120190 13719790 456915880 592792874 135591774 981852002 897835331 864802455 766413520 150392900 69331493 688558090 120860367 492249145 68980897 73668290 298969164 952604757 760571480 966373318 482056060 485400537 649085752 58034307 919900375 136415762 424676550 528594273 71288435 953148237 142481165 86368649 237476628 866099898 944882345 724755873 52222298 556670474 143808153 204634632 778276236 518654011 655861180 833524426 538503873 873303802 525253904 423546 808691277 94305849 895422531 685001344 753001204 919348940 666349412 142414561 308371910 540493532 236295801 545901842 776211721 854740174 579918304 534577864 79223490 712047389 88238960 130512251 729937704 199886598 733909396 238600413 419909767 499739998 452198423 24800172 939812550 210083769 730336909 908021482 951841525 680449252 331803222 648790878 555240130 150732757 575562609 126730235 810065787 440985293 809912880 581344943 743856893 111961678 631883465 242047075 925788345 653891493 503320173 472862428 219539072 147246577 873137361 896547920 780038061 773260131 729698969 611035521 152291974 217836497 249288429 739208291 296554341 293150505 104558641 214098368 366511146 748035695 312564716 773066448 651128629 155303118 737301890 527713598 239303305 31791904 221429815 461067336 417189586 171554256 143607579 707966430 647974129 181153430 814383390 369918805 227279966 805250498 480536235 320848625 342872001 208048808 869058491 218861939 768690002 263384265 328297726 335567699 595335112 78965487 574962256 305495622 535275155 375101971 398253841 433228264 571003266 408123875 52512659 599170532 117529735 546677450 298947400 741911402 810392499 522704183 638849118 929705523 685280878 654443493 139236507 729219546 83928738 250443861 978216992 57748991 18081810 632171966 500049539 344557997 795629138 89054954 662338343 229811548 808176410 59792780 43893797 419949923 315943238 45161157 16913310 75183085 544875354 574684975 755474920 21081532 798592589 411276220 905506050 107361337 246801839 795642856 33715377 9504141 35993129 658869570 133164393 551236680 992268820 806033544 947356969 117132986 152202174 308273739 26058137 737418904 717332526 485891035 846156258 391355329 668269231 541783937 89671925 617098395 886192000 770028778 549150930 285164861 527904379 430077920 977161251 333748332 708756556 17099737 738239686 350932662 969825980 264847032 614406269 595975152 857545835 963907102 717375397 30165438 945778488 992713446 444793367 482065204 55960751 830270635 639871337 693400169 373979645 521932596 936609441 559328084 742631838 488466338 97815503 816135215 557328034 473721648 527588501 696200156 764672463 57725899 167758709 4179359 568587510 154290193 90489912 354283144 524152194 266402493 322925840 767148818 590726538 134406340 891219773 197716599 661167614 624423505 187345770 33364820 181089040 535626465 479376172 869561492 454274505 629352345 972166358 12577330 47781912 456969845 981075116 775133077 850188120 44478530 684437277 389827106 204572669 236305593 458743145 545636722 694668997 947093010 791220395 29296505 982887214 66694666 314838533 866229225 625747357 27190014 452470697 214502314 403373769 41888173 429108526 84631207 216289984 939880268 971719192 113965843 275753502 640277826 363455072 648158063 904492559 792727021 759993208 821107192 909922346 42367420 281445605 260127701 543072944 600596781 883207532 350541607 782208391 181184920 300005216 161594040 897127290 135183972 623293423 323015931 254313450 139789298 692290669 483775942 805639602 786547873 615369449 651384425 709540639 851227066 134676342 787462801 973469316 747175757 178987201 982531747 352963358 320400097 220582852 425734864 728946793 506548637 380925536 902837838 608890196 424955562 373733361 812854457 72552851 225355210 282156524 934747903 503690783 880332448 279526826 745806244 702126811 195171901 5516073 468994090 289490249 733228905 286608657 569623677 764410267 889728184 577583969 96070162 484971736 569712194 903191599 331473537 40244897 298319920 749413084 308132867 88470569 478690426 368842802 951533269 931239782 440945239 863069568 428971080 573177823 400116128 967075497 262782575 105265232 857437833 997806494 105129925 537959006 211070901 795342465 625458341 462856425 178195467 435561084 464372518 504868909 758179249 17314038 981766875 645440396 8633041 536964795 733314641 76269476 17307226 149253211 939013705 732396811 641920008 625567665 473137382 776569074 508714070 705813570 346420255 397814862 504079268 748093339 264553936 562333274 153953000 138852212 806668649 854870003 174344730 161230612 856873556 1000 164745369 574950233 465422703 834541528 505434309 951042765 828518439 468165537 143208503 573731322 199658973 543673269 684456390 865463996 511968683 147178403 138945955 620950187 514700740 868355931 574042598 372101559 526244286 650156449 462320674 927205577 654393676 842138844 159980831 706599415 421489899 579642339 468729588 58888420 123805122 469493776 530664457 357277506 872643744 437098359 338107074 892638004 802793460 396499104 694711537 934794079 614820848 425894505 452102447 361375838 811799990 565905619 872248242 603572395 974572719 643626085 887790045 42424993 591528377 463848756 464751306 27200197 698176306 30791782 601619682 74636559 405618255 230599059 496271822 799102042 560982033 584464922 215253633 818498363 623555447 319250485 604666441 549390710 910005186 634742829 730937925 459249379 127403370 43197413 949635708 398786300 741948406 188287649 105030122 654516405 311234819 639207608 964411623 841210271 346557007 413398273 974690055 14996409 743346251 175682443 847022409 143102596 220934408 93712412 992645355 526169507 110683096 352003135 854765892 743955174 232852749 440651599 423366638 859156685 977996931 374653854 892240125 888401449 252600431 91673674 184723597 734857258 530133648 188344920 568455081 574475421 70732416 627250081 39164129 11856295 705468676 165583326 230679509 624035751 14375833 653426643 270999344 313402950 103109743 704813342 139767203 202314463 302830222 350877003 574086600 205597293 52976946 868916700 813029065 728347356 720746517 356657870 777657557 524327797 602882277 10437874 214403798 295681477 77598693 680522080 299009501 590100232 273721531 678055629 311302543 295563557 459613806 241036910 491451398 24404166 579153409 129607545 207442264 347870042 563321081 469996256 119402780 255132878 37336354 651621422 96234511 611725516 132950698 924425986 5111347 496280443 409648875 131105791 212787307 950126004 814379249 788386735 405589518 863438291 745157543 45353259 356900706 660504062 459768723 133768996 786552007 80279930 176937626 52603957 111905190 84721273 359864516 653338565 45765362 209265156 872690227 108133689 449535517 45183227 60658253 734042667 405645123 218211938 567452329 298590202 740457388 493114680 434419504 312496232 589933009 850533119 485101908 206171231 897725490 136520939 49680281 10712283 858012059 657547447 386080108 402169390 917821084 796183361 736067390 332003740 206021954 497503442 506249089 168979316 71487374 207106509 631930995 716437872 716067611 131206346 719101168 504073241 402215786 328120718 58843005 107440105 868948568 510597730 710308644 911765654 867986164 131259072 528050778 813346583 232624314 817471019 466953819 113521871 518597250 694152066 689329117 962531752 739693401 478934343 138464033 39277112 674410923 238631610 353162980 561221452 88584304 128085047 954056410 748838266 463939588 56273999 414716479 647032686 525078047 86608941 498099247 231132205 219959591 162537393 361683689 706505396 364417868 519870174 897543738 844252986 225878363 535292863 898870890 248121971 284341224 123213955 431651883 381249295 747795164 608405159 927316843 265870065 639614523 924092356 59365390 972341131 397104443 24308303 506718850 473903927 39584993 39091111 626852157 235201329 415486398 92503835 306542546 667118962 376632344 238904436 75778699 760088961 823907171 557836384 9273197 365959489 668783626 72769655 727398322 351194155 970947593 959208338 368888461 259084419 61559065 370175182 777267974 472637152 631160807 58702671 324553985 652964517 494770794 8942738 64732188 39717812 813277147 600861605 413934485 425853389 892906116 962751074 232867018 992896777 229907075 605998630 64356373 476257577 142333233 94413945 647631557 428093288 577801470 799371421 438730485 946097968 544320173 833639766 783337621 609432982 535887534 221857324 368166486 943981121 179989620 679401302 950930727 857156638 206144103 845179846 866218090 345034685 105596530 641141930 96461139 869291163 167496207 258998897 823293051 989853222 116995473 12146118 547014968 64213253 850340195 448668454 637265983 725935994 727738962 69892658 625554061 344695981 701868548 168622939 494429626 893512792 221918730 645860418 704432292 996666411 1219633 187048711 678731258 388807250 345500907 719344951 71893087 195887843 870103837 745498987 694434589 397148835 446469783 324150591 528834051 32116884 589407331 496357228 114398307 808250985 135529260 342430216 25151252 54749591 810589829 225775274 919025893 122981455 526429054 385859191 93399695 57842924 20205012 743686403 48662224 976967194 626685870 199609193 364259286 193394171 315499070 491851092 706491797 315023429 43799847 763984513 3188061 345086032 614849274 100945256 67544356 119579122 445662599 323558146 505152306 375177265 141039554 469190365 145993314 370033961 94544876 148244917 612442745 148053097 530856067 426554178 48766515 986917083 228198014 666098745 576581331 393054320 182036233 132360215 343443540 320567502 938501339 898070647 787049671 116629818 124309524 424071056 965893340 839004618 145851542 652377131 615791513 594706097 601172537 733482883 43625851 94035728 132762432 263504480 478332827 122563921 214828348 121298897 752215683 838635729 149784983 759852476 932821923 425394035 54866889 487273337 290654883 594573934 427500333 732029752 661313218 220238088 14235638 70596621 68581561 447157 639030650 383478608 54581401 314452653 465597046 322028828 195168749 374112708 162639847 797640964 793934171 925488428 938892256 478388452 721988241 248399600 832559286 128833779 121112300 177382795 630596857 915024441 393492840 79424722 359435047 268441459 414173544 901392563 518870645 136127880 667483345 446641150 969805397 874774529 590007130 353093473 334390701 218828028 274644875 850451961 275250737 946226346 756281489 871929183 72137471 347296996 233893405 559401231 793815182 665426322 462003001 262329085 594750156 445807659 384532624 324811935 605710452 739428464 108991515 993231117 181307238 432029717 672636449 851207185 68594327 906242631 60257971 183775172 656023219 953190525 931499607 78855541 145913264 242319490 64131458 71165681 370301970 486638550 581327566 187483588 179695800 266127674 136069950 63005757 575589475 721047522 537114002 470487028 292821977 974015828 44355449 216171698 402494374 619125092 494213796 5599742 565960633 727551666 586165634 287957903 389736042 817939406 705043500 452959244 947253930 895465663 336635755 968339347 838160995 134368303 926646069 281592725 279188024 821139333 220001555 169638268 928846210 743276611 482475721 989014383 214181418 684900509 97058816 592841560 263210763 517253121 107337951 30750265 973939584 83098127 822133481 135814193 117888986 316792011 101474512 105327005 853802785 289898675 581491838 340626883 295807332 799288932 485295672 905841422 321914516 989885443 135011598 158603510 328470209 453773470 276541038 771701366 201501559 814086804 679218372 492071046 666277078 19519411 237068873 132051194 692480192 27235877 627459322 67382539 744525948 377271993 774797326 629582830 868151929 593434282 136358261 401821367 681501661 681183514 574367756 199390208 485829656 798674356 410922017 62656587 465123015 942114952 731498498 13891850 49803109 920530030 304771643 2073105 441606635 678565056 153523960 482041760 422706965 809827563 690361137 828636137 727333359 583636198 962323853 8970677 542930918 537961943 955040350 689212019 244398841 38504170 392685119 117625115 762433820 303848381 552460782 660858430 980785029 275302998 146854027 414192442 537395956 479551494 9415273 625679706 420369721 964868668 907957773 653802381 898208995 803890351 932449486 790452270 481562306 904521688 851595785 916900483 819133665 855146086 465046333 955098315 841482769 359364258 509424780 691751731 972469339 705476720 447146827 166880906 849945798 956265351 281065656 211511781 23071183 53919320 130977444 43221819 366421543 388817141 460721647 870207406 915470391 861362166 414588638 675954704 649989316 369529131 844780133 850181593 425622332 222316580 491083942 853015097 580501215 74738711 940207394 144285523 143776876 176827290 149682452 437059292 81880231 71932977 868491109 214716301 134558271 374941640 453111156 411767570 370523175 142015717 650381439 847489295 905581114 163842705 194859433 171616538 470460650 511883754 749263276 132815392 857576661 126645249 207714624 51406239 571580650 270756647 970811860 946639292 448249575 503702822 664560851 926215198 961018496 92917940 634539888 171520976 505182590 990627758 867582468 407388286 611086522 908979847 617519244 326038277 359639800 947078563 567828695 373153849 70583115 731037390 427338995 593429967 178790870 904225608 842743481 128259002 761158419 265966592 224652946 90774622 980549335 556841856 11994282 43246152 850844212 979047740 128411414 662156192 12418383 69983472 493558916 98121634 721717326 553586536 193922255 38221010 865043175 739898322 375922131 38795863 24152546 499940390 571275384 158706920 827165920 66836805 729418305 457776274 983215578 744287208 813349376 502747167 25975555 687678434 270682057 27433092 178303799 486336091 796457596 568219919 827357955 698893933 132311813 932323619 305339020 384974907 708661004 34749590 127570837 495465593 140125090 581944468 33904896 660970575 446756394 15346120 430828786 258519387 48402659 700224417 53965424 468261792 354648018 127617307 97571672 75995433 905199715 208767805 855251440 859324291 469372604 438488274 734202759 736673338 632910903 638098104 419674237 680221493 446010941 420253648 491336473 299557624 768578172 916388243 181867682 949408832 988108317 855374245 93637725 401306597 673692715 259064622 378773703 629037204 302898681 724091399 10648678 596023715 967871412 709494049 899334570 61985493 818595167 255779270 844934019 622429780 51558611 587879186 960235564 629323184 147414161 560888651 71177798 888093975 813427950 781050693 386620859 330626826 692440891 23099192 788591876 740164243 165726527 131716336 936057695 185030721 593208058 227911256 1000 473618797 779445758 248702944 113000949 381663830 286562678 737736622 382679816 400668336 37357094 191263831 326938452 146633055 856850452 905478910 600615886 462467862 466472603 362715867 59046573 166819390 774151318 964529348 299693704 888948136 781114396 135909587 395926879 560622178 888474716 30677388 247695462 381989964 303287632 518127516 404529483 96624408 154283180 51470232 754840570 589095535 743390091 80083272 602862068 226658258 918932353 342725412 417306035 107936757 23981146 469127217 833447942 266222876 617002153 841713875 898012086 225923335 638913383 129691114 353601011 583110307 87920537 303823294 228135842 104160630 617580718 192703619 775700370 584613883 692428892 420927369 471232262 333560861 37160271 482895503 47373493 104203432 57509474 41271340 524640316 857292554 50927545 348442501 361749226 703682218 441882754 207431706 796260012 6128197 225870516 384329471 572184715 788032994 596724295 398581967 821269769 973231047 48332333 106957927 911773529 633899222 737717145 676314980 858390084 988825215 57679750 877536369 124252825 355389787 427253912 347326534 362119458 278626535 507585973 300614636 484342765 297284755 261319277 814562111 45035961 196646811 712343424 858468754 916226593 278030474 11337325 370066536 901221112 820639939 822815288 392643168 55343512 703203849 91953284 833764125 730305085 589382204 407979164 568736795 565165060 808722938 234944753 566031145 57243544 812305155 417425741 863283458 602390284 291457612 398394161 488445452 407952491 822870109 423422314 942330334 541839804 180545063 14788890 23513344 937733006 850818046 494166921 708859423 37693 805096351 339912202 475909363 300032380 318304246 953923376 445598349 926275373 246770085 322328247 376195391 385182645 740636722 295249703 101242672 190929957 558054991 852106907 129408307 757109611 97290249 712256076 911679542 121229000 124205542 321182523 958193760 529088641 482453814 944404438 792631698 162103038 742368370 439959437 892686363 200963059 656941165 258243788 901670988 576786893 636504823 991147327 466063815 255421630 453074156 707140600 696381001 391476405 339555946 544215000 789322309 586491175 194089896 742066869 531348321 381891353 91112738 494561230 683689621 9151625 697974200 211296720 113237031 102623285 390041824 116929584 437065029 105127887 78377322 697625550 403102818 68989882 745103048 542559598 141958240 634281152 540566957 531062320 272326933 315985379 57250388 982092316 235733769 103802747 440723727 779523088 591983161 948852485 29462372 262838345 463056733 989346786 382693782 473259286 718300046 990241532 655147275 253560795 141469227 426270100 266885922 311149901 174389530 983499597 105390061 973281854 235688162 288404988 556332773 916396543 960822419 462847282 83505909 748976426 216075116 351912118 904992240 102519439 474647047 20914412 419300213 671496435 543117765 455736305 735160550 663412250 811898290 33881472 499818077 658154707 652111686 468982841 643822726 654489477 934944290 544743691 597779326 11288719 868039191 535170174 924209875 5481230 551890431 136292399 731294203 271246800 602812069 399971531 459497904 765692896 791728067 544527506 947283631 59292771 756675296 88040204 905045620 272132572 371995781 172150686 344650106 197345801 751885818 961783780 862412648 589331285 649895540 536410216 296732162 149785172 155377273 423918856 77821271 336040955 832270275 730747127 491196020 408187356 16985600 439124331 393248559 404636211 364093759 843052175 810630432 99376521 490344768 805109469 51571533 77729328 35004828 759667757 273414175 472418695 891996957 609668219 538762211 86894310 947288176 541383599 167041051 497913052 673245475 701516807 133480332 913333376 189916636 961255958 932016958 134937567 722976438 160961430 836600656 437414592 834454794 121237249 888261372 41873309 814533611 145241069 886809031 7351641 695284180 157774623 110089165 516300049 243510840 977419746 643431144 513733144 5187929 877701103 250450224 821116982 107508213 701226628 106304391 640448255 608940262 97060417 106114816 124767142 854354081 366219813 119484109 853250328 929119678 130078903 32094343 251763187 361142037 923296057 567535167 932119993 427348687 455289456 134379823 138416243 371688195 240909128 592955257 782407529 555023712 457568623 618951213 801702178 434438811 193589000 632026392 465502588 114790303 155865555 553064616 160665291 598297053 309020913 118026422 126231972 868398482 875585670 415233245 139703716 133103114 934270558 290288649 955680332 890666116 519294910 674861571 907665341 83397722 341805831 286472762 783913495 840189359 50903258 336438819 570642141 143290939 247590029 448142506 65991566 982345044 759762176 190606534 320169574 426564263 298547010 561465546 907103354 101452128 60509813 605911396 959525335 833463159 54646283 139851176 204779019 734114128 753962519 757228244 265853296 987552911 992287273 331392639 221729767 255710426 459986173 427476479 871158630 139971714 595335468 949106832 583209939 93844596 341707960 5412160 14140089 502014776 805389335 318447600 995784981 158480917 26438633 396924053 875351821 120689832 753823112 685128486 232810956 722931489 2820872 168613948 807784563 91473267 701256499 230541386 486809172 240622271 614406091 16958548 963506203 368552910 43723963 868198245 315609774 291316065 249400699 304950488 117866732 708019730 607652803 93066286 915427328 204562366 11153297 245313177 618284251 693770912 701751975 306735231 418612561 412893778 464901857 531186600 986992719 992853889 502669386 525157732 917668194 805308236 599681759 377065144 541966160 410967854 206812419 611905228 938210912 633615038 152433412 318334060 389927831 661232866 460940943 528038727 713370565 791840306 386440378 924180202 561111148 854978822 318456378 47512632 709833603 466673807 337613411 493419944 737488001 268005057 600317333 243499021 43407043 777251594 948559172 568359362 72721968 186722022 427291601 785767287 894912414 67458468 242307739 372688663 211165028 123471492 507249269 533406413 429801912 563607704 830887842 701600180 83044139 822074332 313787124 505921284 995570650 713645085 254483873 992787409 931362224 333235381 845635263 188024121 895934035 878779243 446085346 339115830 893148699 26888870 564255885 954621956 197207671 608080694 86414010 78545313 78923902 983549295 407701705 615124561 700447074 418724539 183265499 665642770 293678175 773330087 648551680 51984383 631576132 953430866 968162048 98901254 12077119 765228747 791437734 33663857 541785587 513688202 521534004 709726237 698073172 682703189 671342328 515837770 443697792 256917072 564524627 374321143 171897653 394134354 920248215 959168846 343789018 364360180 439211639 892461165 105615701 505716185 511227320 272300854 896419255 573964917 586025680 124165684 323475955 367347586 403399567 50819420 811202994 170118931 598275 796871057 915977665 320601168 457199693 309877604 79212428 334787983 685079446 294800429 992066403 73547074 137182300 564212260 5529924 19900951 863007260 319256139 823889069 758015842 41429015 598449632 517785879 408767049 707248484 750938471 571000543 622599015 575428651 768413354 214506471 196880449 68471361 605743074 238544854 841796070 411728788 148450754 503828728 812819065 928340341 326725711 664234941 354680256 118624045 626101968 1640085 690344571 120509891 954797016 657997082 273817754 89015611 178084250 516119072 756297094 486370760 188797094 603287173 144390908 124932940 825749455 468245160 84968339 889050510 351308126 432289970 796821999 900967484 547673684 843114095 590021499 501165114 684934414 181102633 658766553 498685922 809325820 554711299 18640357 744386227 223768949 804978629 296890487 482058172 102155535 591545146 240723000 158373661 916099746 632461441 646387326 192941101 130518999 120628253 677250097 257650418 267548070 215316671 756846540 762074203 797451013 962517831 642708960 47461172 892820273 561352002 588224248 940243339 266393866 875472347 932497593 23666119 558863532 718306262 787760910 238460078 765112105 699939429 266157509 499421877 494079526 691119074 989138451 524573897 387258238 895830454 884130986 994585058 858625659 790046049 43853541 886921897 422021960 796738831 318711765 106553328 195228815 719945235 54961228 972751857 570690931 158716003 375774824 113879721 623142251 142559837 485164284 676414546 835108 601459319 138552016 538995564 339837127 538577233 573880347 563339292 525814957 35991845 636466019 249344859 630942402 597282147 269703592 412194815 84543518 970699623 935900453 374789496 199133003 566837822 337563008 702711068 539954614 178454634 403496945 565112749 645149747 650895877 226756576 581613143 193648911 119329353 472914904 804667910 616125932 199807690 427544766 17847617 562882788 710082956 343762651 557743810 336228803 293021579 112600448 297397941 277898109 134857897 472861051 424802569 90165226 671393222 118272212 144291471 666365393 785001601 182364531 826626900 482310592 290030723 635521327 302774361 251604980 284451126 602030245 575641246 637546320 517554652 948286058 785599873 179197090 102615812 543786232 68594200 282591707 692768332 745525613 445776137 322059516 337123008 526360509 944271471 37608523 208215763 530053005 123690095 145027877 81263307 458343216 556228163 884943324 228126975 779005758 374043731 741431029 928902641 201232874 748935146 199136129 16032617 383855482 965252473 412322421 260309436 493375180 718259717 507681767 989939307 769234040 697990350 886722694 338137869 926364568 595978288 580570646 663193578 339965144 982971216 59751143 373248822 130207575 974821880 454780159 21423517 198286693 312765689 617645838 878015688 17764819 406960307 964095305 846462424 404041112 467848992 157486173 690366560 903916576 409180126 601455719 865175292 737592022 744577077 126964190 338122094 313621862 90049716 100705620 36640329 539703620 307347813 901035131 701231239 102686822 483625641 159184329 139860029 695624454 101255941 384904570 903547006 19592278 93601221 291691662 601794158 505099414 987117842 1000 505977893 187821703 574502635 1102560 784510001 218961267 653272461 144372237 427953822 80134049 669511089 996152584 881767982 23023227 395779513 166321611 39413149 53317121 886297856 801894925 287567370 28469815 219837719 415758411 865196189 109937423 578758281 84157466 541000827 5386643 114003218 943156779 100899226 810189703 26942706 391371073 92277560 917136916 63999836 556437073 956190573 231424931 640811786 327380834 108392389 559661113 17938590 108945589 119410271 454129632 489781648 152080673 140488472 19087571 850559689 409678971 940095571 431513485 625446212 56595155 44977292 32402961 847020757 427916777 572549932 502999448 327977775 954465752 912033032 733158374 543531318 619573250 784837020 739788707 841091223 519598524 138647309 295658617 583008028 51028232 126130530 563528387 217125113 342983232 226788741 832692438 464913550 207212482 703550753 170365004 274205755 378225318 885401992 155976666 535034266 77502356 202403461 955698428 212615144 123301431 583342656 184587600 854922220 13622720 283308094 135878333 916253670 894688576 281870196 585713780 765750118 672743843 55692314 19951624 871063233 426719146 332205743 638667091 364263496 459815771 20372463 282182125 13603275 373346525 823825841 848282108 120037492 548003477 258134437 837421408 149467025 101233591 532315483 122544703 855059360 527802444 874521679 255020423 643258602 835294597 473429697 608997894 177352152 730471600 279199054 93110481 114655051 198892578 180548063 324718200 77538704 28245352 71177350 10817138 216961090 383225316 31965782 62226048 313960282 86134960 489233216 514537398 38740084 346214223 161559964 110783059 327257264 448060578 765269281 540231855 40161648 377559636 131347753 249814947 946201521 641344644 687610652 633962436 818342361 972173205 359595097 588295340 310752771 486772078 37778786 728503067 836036228 566478783 774188464 661951729 677529941 831394615 379722728 644320110 616992527 926385023 466424869 2754331 253730578 314303367 561390302 619529008 551133767 336338416 815764257 284193102 160528491 147075857 728831562 221266150 154837829 269087418 953380909 889763751 238722997 61289446 24954777 527863083 569712283 265853537 698837387 369926653 272662321 534668695 967680832 874464018 665832985 527549425 198409125 384432096 996487783 520097076 110172761 15998567 196228911 894628960 559294032 90179353 29051191 94094703 848639341 636688360 342879294 888642165 275704261 966731163 823818133 74361068 248037808 559789397 512376236 105841980 816591386 244389556 167272198 764636971 731706112 356475122 2223680 878592685 623268783 830563095 951635769 658164742 91259466 225154575 735435146 469253176 338311413 372520905 683968233 33030149 353424406 879485225 980470280 230487880 228470547 692510446 582762614 407963900 386071501 632690021 267774784 929586352 888843515 906307405 161073264 835459168 648237500 315489911 661593733 23804818 189569818 757267598 474478147 299951633 412378292 395249467 912944017 928235854 198168763 885865486 506268964 928333437 296043635 380224864 139843885 453663895 781680190 891506160 35147779 25295292 104694215 188334369 571126568 528914332 536267986 668190323 446232797 615038643 835620077 30357396 559116340 839702215 843397981 128971709 83584587 382689937 869882034 62193561 862169900 676058940 772913337 226668055 425003589 366631434 591192129 912153503 173877075 103569276 405927960 790697646 675786699 945946480 307881171 771731428 2729216 579664389 337912777 40735867 522234841 119795383 295569279 674254345 667929909 764712032 591765193 254609654 771747468 853346743 862446230 617489103 516417225 39856260 88510663 325754113 646013819 951420003 313775003 80904633 270732361 148878963 604186327 268182135 625550959 734008279 972745662 443703263 887099135 684576625 539679286 670332065 791020117 233602564 245492114 618364292 371374332 123481565 928330527 964930059 155075895 236922192 716482419 206151717 967520779 829328617 441698172 793561262 265864576 183995952 1327314 464711625 435163961 181007465 678309011 358711301 792347431 745210716 105578948 361442264 497676251 851698444 810853941 286022218 398587850 522614531 269177297 284833632 812474628 153354246 597934444 552074119 155560730 610785659 932897893 304322471 146699953 3259575 786184847 862251819 248632003 935052774 41852438 871022776 818454488 795560886 113359739 513858640 113708112 6197306 583914844 178458844 611184285 21868458 849139480 83535062 859374860 185782070 29173386 766234363 814885482 236525364 667520458 391782729 433462495 276036067 72494266 804836827 58711321 995559980 30241495 156832778 403214335 21547197 251650765 895225404 556458502 427814750 925526484 54874435 178107812 592551976 27161952 166806932 33464128 741287469 700285085 671050425 381412028 277724043 849030104 769586268 825734088 454687851 693530426 653458030 800188069 768761438 325410400 740754300 645580087 352242175 279577002 242331448 753386739 409166503 244520844 261563416 74235595 681701628 69486806 169306941 600141248 696888565 790062159 370843265 540962553 387450299 419727270 31800422 816093539 121271903 147040558 871867796 758281198 16903305 325056996 10568581 169168492 890952453 288259753 824067515 724128589 418555523 808158398 664850891 99095585 342173594 508957578 181682331 496304713 816678991 760682697 285234900 11819249 974373443 246915637 269244949 500518687 116497698 984811301 168621188 96796729 70217710 47666726 800964437 766084866 145024530 62995598 843964423 421107458 135605545 840734203 51377097 186620172 764926112 704701658 171211809 699039012 750117297 302933256 890616317 707611024 608109681 854740167 37601083 68829856 330637904 363052722 668703942 432031850 735383438 718412068 611350200 312320942 862231035 25681172 997055620 161641163 636818131 641783501 487213734 400929158 126343859 607776206 536956387 428654238 432411719 244693434 37656883 78568734 29050606 82746330 150204609 920613040 883956659 748373267 267802909 768351526 842561651 349780848 169134634 785663789 942707678 135712642 193575963 638217091 586732104 223626943 383744100 812693166 437021896 916299177 106487784 139080580 16236856 276756511 116341174 915968048 307530137 394755404 71416697 337393744 523258470 225659085 310480076 164322128 176118818 51236955 629801958 702615697 51904729 874552423 220782137 754006914 62040828 264770714 562101770 342431566 542442000 959551037 662498958 328484385 211187189 406440082 88597055 522308720 863408196 455695723 490570081 110192506 474587687 796955407 917698599 32762578 749512077 44869657 32055249 793763284 980804711 376034039 875842649 129483451 665314803 118853577 254510193 686870723 24589399 855043437 713267579 841893634 13361615 883288403 646072535 668811896 984241458 332184563 660527621 476181699 242176359 394376925 893799445 831688194 760786537 807311610 294641381 857146265 355978154 712888003 997992267 153832441 193560153 829478142 364300970 981622252 184592324 942592584 524787320 889891679 346892037 925184304 371920813 822996231 681744553 405097199 141217241 16895665 413879561 401192298 853617195 519042420 962364389 38697152 343581395 888319401 882554496 247117849 182862201 22847373 198827233 374956166 871451454 560268812 959664899 970943263 864182409 232820313 755668711 279205177 864204898 39681117 881540440 590646759 532602686 629652244 575723166 601070338 155408674 902222855 598536975 91570558 610884802 167759096 149844620 952210689 347157913 752591551 994438513 303509799 642962633 162340154 362981177 309228059 88462781 468117987 923466567 575681520 382637276 75339157 894239482 113339351 481737292 745622274 798925616 299180498 62456926 837872496 53498105 655140735 765830672 468981648 556407504 857488718 326661397 362324562 740058776 358524061 472849432 517852917 305050579 585110473 822118748 520634527 95257957 285486827 894173580 143487320 821635640 183422842 847115734 851269726 113229734 478295995 621413510 901123019 564572443 123827595 484208781 576568361 136544505 422610601 359264022 710771736 124976538 425177896 28059953 836239033 142973698 990703268 873221073 795975945 452442728 6312938 640146876 877127503 144680278 275512197 820928410 445231135 62455309 785608938 72510212 125598479 166864414 42390925 36194537 299046666 631885940 554532517 803640643 141109150 763099399 597519975 754559859 967156737 879245610 575074150 855327850 135664404 654130780 869886610 6008474 141181735 329181506 229189208 925471855 973500519 251634558 377758627 987318358 383919430 10236143 500512360 91943680 409953383 383739834 852147321 501965932 82375562 346315480 742248549 422599195 956993413 519754961 22696841 446264312 494163089 578621661 774858901 908876801 379555672 86042931 416147061 446404013 747612853 535684622 276996299 515408133 464524506 269315008 118666153 108430010 203515835 307652892 326424676 534068270 810809423 425531993 429400266 926259128 420941500 870970368 61434859 231935354 942339044 536084595 887956136 282107196 123798315 574321048 815740264 232777711 201637293 748154826 802322735 871157616 474717092 355783020 335146871 359934788 114284274 80396145 855992538 375680196 372828387 472829057 126305369 202937268 421795707 228857495 455512945 250624253 432980814 157385166 25720841 866423704 236051070 402210494 163516094 685590510 743531189 903934462 468002144 63935912 496626682 124305219 513919740 258463203 96088780 469876573 924589007 931615096 481748279 741256803 330715878 356908934 929252854 943781313 964334366 713657923 818870347 410022251 351914688 182021431 677531690 70504880 152635298 330704396 160124317 336119143 291533747 923672702 643291691 123023943 682484392 726491041 351759582 19530343 118777462 753506842 761158855 104978366 249802754 543740098 426739813 660532810 45853940 997516236 864495980 2310013 12709459 48182033 825888210 77462486 79894982 222758724 548704483 212757134 316794919 994283883 43935272 691924382 15891454 945669195 158555083 496115567 693143361 349936351 966925248 206537051 1000 13278347 82661048 64812233 444611484 577292059 989821222 578230109 781864170 286525493 740558058 822722283 515085933 554977539 656575074 979979858 153245520 949424971 380353888 518325460 592128524 921418779 709177088 733889053 296058365 670272122 808869635 503576848 873148028 33957466 436937959 895537867 699274916 194687851 871338011 992364472 84526531 114205362 946128909 623913750 852832702 328751269 573797102 487884959 832977171 926911074 329629180 51136320 484944901 934594193 359482119 541435746 234622572 594936571 110758776 226272692 694888641 304225414 111827138 703318515 852359892 834223190 141712384 969273673 490739907 623382214 267655279 444383116 791522480 682589949 550654619 876691515 303487625 896179309 422096882 943017120 859917587 231827216 116007044 533731570 327376372 610684035 537036721 294386631 614697203 283965902 273535110 423869934 446016304 946640120 467681772 218623463 508198011 887506995 491396556 679232679 18314970 327535410 853052352 316687700 298173944 861996527 793825491 831134092 886720582 152722975 702412427 467833481 64356654 840310835 164311651 909124944 177775530 774263381 859200584 103825322 678823369 560060088 505087063 593140791 781525041 293607161 685589660 828581621 621710679 67272377 771266525 209935566 407693086 569842694 119767484 948065150 464475533 497939941 871040564 107085970 139987005 31096547 949790803 516195283 250917717 960394869 448855357 141108161 562321289 224094779 932529956 926301267 405568324 410975560 768761981 160441475 13366707 342175305 48756843 398102403 936994404 445019652 84099808 582205608 187920978 591373825 169787464 630565718 90196854 19260650 404779580 148187814 125724562 191467949 18622525 164171136 453224558 397130543 666110797 105567787 903050717 6957470 20040347 382104132 698371350 224399609 136007855 182972914 87129373 147205398 776857667 370918229 816571880 490513121 888140203 673588644 946549818 737072002 797311234 876425241 88890027 385324297 861631439 779586014 925994452 126063150 24209254 345128716 357345169 746493014 138095467 661500405 229733697 136952729 439604784 542015403 37705657 733468825 119787574 459353623 370127266 134413356 657107207 983338283 776594736 411944688 71185417 331910651 352750869 135991702 243114783 309597954 629271476 215557558 665554426 124659811 965461997 376266529 735900502 338132482 229192465 81355447 380637131 962047512 872867352 243465278 62023440 925078425 114013114 911066650 508377530 500350516 124318602 134275962 543819188 736409284 150535973 502540885 99973484 372563775 557530271 61843649 875689247 849558578 96169655 6934901 504651390 58820113 17735246 865847647 284139835 51542732 597455313 515193010 5501400 505648499 412620623 436052267 569476802 902915710 305152669 622637396 24372871 440639898 748777109 107499928 614954056 59341186 910405177 70034376 849703288 227540712 37321640 302041017 132834707 285204746 132660574 736474631 147316109 442944868 923688053 407452915 569007123 206124939 177373452 429067788 432348772 612078154 560668691 784271428 835567188 836035265 84599223 656235321 473200786 586474783 563031671 750934623 110952853 115398057 627065342 353397038 89096200 317186010 377702630 331181931 293138127 67119675 789713170 108476278 110521882 165184933 139158535 750917675 448396108 476494128 788096133 124004090 713194447 912713250 27611883 74014594 16056141 278904107 422616394 447499538 877064854 3761064 743420587 788408899 264998499 792387420 3177559 43193061 301533980 562346874 626215335 199446268 159901381 595698867 276399626 656609031 591694773 953881145 129504597 959540653 141374409 298577354 452356821 121946856 89609497 711366608 755455507 707501101 267766260 917229659 692468181 870913557 296297312 277021793 427000887 34149993 3508384 9011062 946976667 973519232 390297744 792333044 856754263 486977334 534250561 894917729 482855595 826002428 715564329 24907188 485465777 699551846 51883607 181298403 242887185 778707862 987620688 757573489 286072712 146051735 616600945 644318184 913874194 4947029 10576473 742329228 54150164 288296702 34280367 439054268 859471702 959495615 145699914 931174703 912196824 866005744 638937803 565963907 413456443 115588000 279165006 378968559 848105932 568877682 587093210 353442130 195777416 583553391 661871866 831578614 894415005 31212061 333685626 106413919 813096527 78058847 630841961 566339001 485578815 941653430 847053991 178356476 188920710 44031419 265290493 144504419 297619209 879439642 751701932 375712368 588745676 340153927 437751381 806412340 690935669 868698625 311024621 973233354 855426783 478768905 477689615 175349404 335193443 457382823 631518134 979666859 193339865 76488244 877760431 631670193 307509028 90533534 356966038 247852722 485488273 105734971 327153642 826038387 734578650 46189095 47873770 548601657 650360360 680069542 114529419 114068011 322874494 347966790 899378740 640529573 325535505 798599248 919997170 179490318 603946713 803697003 474892799 255208257 375267732 151757573 210816432 692038622 812685759 893588753 164341929 365628101 949604833 906493025 271629959 66207226 517776075 887513418 977781150 455084199 890904146 1495908 227595505 657019722 19236808 299674556 176518786 905296817 528081771 111488527 445992200 5100709 790309569 218861329 251432003 397571102 339895742 95761626 841128555 602195488 417703569 346313392 134523658 637626441 565690498 22169280 52703555 818190244 298568906 331185130 899273178 310948971 231406255 204873888 189811395 211336009 98777503 981711485 401931238 501218881 332009504 437561919 62769662 827128753 946118158 885590235 380921430 515771791 892739443 345254203 245985608 21614037 9853615 61250919 982511906 890039338 937576823 606579543 235963966 276520812 28415569 747491063 348622952 813609108 937143885 469310406 7829688 967594291 735796717 866260061 563796742 56181840 403238187 756948827 803739068 447694840 359744795 469276787 41977975 104130191 56894613 427989961 510403827 310734745 903204068 413992425 384011179 905871162 720235599 812097694 645813729 607985679 114876889 31654445 926670618 93378359 441341817 328274307 465388821 101769286 737575896 476188517 715754518 889408238 838570697 323852028 260396348 761094240 119768726 378970872 370756811 958600521 620222302 431545459 577186349 120876729 791498143 395542473 558484305 264297994 60784964 128065148 109919401 724725205 27613292 849734213 858355104 27075992 940577209 463474036 892752880 911153362 314490589 18164351 122494373 158591114 914411756 150564265 532301433 912460413 504989169 533245259 81524258 169915375 846211272 882523176 482495562 450985072 841432225 584615104 427988573 29824974 246878467 250756485 646855368 445646274 966888387 742039093 977780240 934561478 185542758 784491785 371872942 585182824 902468647 922151768 989799284 913383015 570492863 138934945 697809906 308588330 676316622 831658761 125601814 672707764 529040642 814643103 261488826 791865464 593970946 526722088 15765875 800243146 610886451 273327031 741656278 31373488 900563365 74343060 420201418 582260610 306773786 888825779 964321229 61321988 240308717 232770641 949750120 679604907 312787461 459026911 435052926 11068335 454083817 844490218 389666873 666803300 36190869 955321105 708240340 998050866 985108905 280253896 798163199 754823149 410459835 746304844 508220687 885586178 931241566 119127489 282213234 884029377 744371871 346789316 77058190 400142803 533498256 437603483 365050330 59191859 543597331 423222555 444768305 19550136 610702348 651318566 373295415 163793721 442341938 493141278 464336024 897211965 63468241 511700697 811072614 720705467 28930329 285542581 433507633 622270367 720009614 972940167 329466924 599790177 532161792 254286559 427361210 114822037 630710167 234678903 193408900 745095550 353660542 871930602 579884723 766058883 604859880 345028838 415392868 48589062 5706138 394050939 973780260 101467696 509509953 330618271 631891568 700998347 54821257 838538898 368904024 908415796 768454727 322913495 800445705 117083909 848150519 983127005 139419974 717450194 701679027 874282787 66781700 518163985 726140596 236686068 989281826 237947189 81049850 543993833 56763140 885826367 854905976 144744683 48009984 280229049 72596677 469283052 239507271 705685959 149314226 118994208 301123861 416308500 368641082 707722140 750995460 815896784 8514820 761986009 607115296 472363529 604973120 414993400 377075817 910179949 579339453 473605546 943559523 977400724 563230760 246891633 117055618 25672771 95719831 644690277 266362508 199278709 350514510 288506456 788320325 479102269 993809804 511131245 696833729 125943917 73073876 956240698 667428389 850979693 796774283 18471700 430317787 513040070 82820039 544785686 472524824 504996552 973701157 767897459 614750620 988355079 12283941 368542909 803251401 229099624 537476632 510204412 707748817 552425290 282129973 839660244 939072639 924673060 61840350 810202179 102583570 838179655 272059065 578758290 587449283 305676539 947704192 577272143 848482106 832064276 488412109 262778889 124853668 404257653 422235008 403111064 168392805 38162098 144847426 901254940 199855924 1857797 650995911 952250393 288022634 402518189 64146447 745772335 177014560 812155816 82091900 946655934 103985470 241142420 460816620 49739502 609084769 136611344 555856837 895378200 985796126 724320904 239163753 143989675 644254211 145430708 213856509 444962373 307063805 643789530 291158111 458165030 588048307 448321647 143432204 770051250 788250960 478761370 901515097 595993166 747964471 952986551 974502133 365143691 865925746 334413952 441434360 682584448 475060760 32983798 427750641 257430038 681584231 789954121 748034693 7988065 393500643 423505709 991292167 141544825 237950749 738748822 308284166 183236597 644392213 26796832 251077833 904659522 727099328 411793214 46337436 389375760 86115893 646278687 45633434 686099778 402888846 469076713 583784418 884293588 76200943 474142376 937257239 685758941 271877322 441328468 870985922 1000 442546995 875635094 940924976 996998057 111561842 51756526 868172437 531364465 109549908 166174433 553590081 32354939 852062760 964391015 473888668 85041266 596693239 207974676 742105893 257597055 292318046 408202157 800117501 205062180 771642563 615662515 624966498 958191548 161057833 210050179 74683913 407539593 136458293 224986966 727709160 155719123 982188810 493130984 125433200 651584395 129209936 590874287 156791356 885085384 547038358 302457556 882048917 318452910 48293105 402240042 268927487 331708239 279733971 720882522 548175888 332952932 850040791 257758467 230320904 255064299 632995219 274290100 112424987 811628262 644965981 600720574 809372907 439816774 637675307 619091123 163146975 625884506 486292676 211301428 19464692 797732660 616896472 915989540 137664879 440046666 794650699 66725220 575406147 225924839 957236894 376768888 125225034 10002997 40329933 822330961 178910561 215957046 742212342 277380592 572209272 738253134 11578463 445958226 151239042 735303155 6865020 822733907 85510596 86745198 484813808 955380708 398035311 228501963 15037792 191675382 136462780 863013662 612788687 430401116 37565021 414989384 586283630 179796700 666724397 833426223 445731758 508408851 739189240 989703805 130811557 791613646 124401126 953679143 982050238 90273129 27794529 897373731 724260445 164841002 967970007 360895471 22399474 321186726 199688320 871889559 373149273 944967620 79038601 901821883 973343574 260119325 192042148 400773438 564200638 372446127 141832445 731509260 866832033 519505277 26490614 298406683 309031138 709593231 214563935 97141848 244309406 846828457 128045072 394843230 118649704 537291570 340383543 368599520 602360709 3869698 385211876 317137620 990218900 463279641 181016772 836672150 499815895 155281365 453525339 618591842 193761950 649459130 836865740 862665849 60512175 133005343 392859347 95882016 586109968 32786978 769283805 827420621 45960937 5603902 61257869 258975435 494215143 173030674 933658045 76498057 268096499 171520077 229138076 520360830 271901423 992592686 452967158 26938984 382219148 589760913 787559313 239805135 14879755 365880052 909493411 640324331 104753048 364208422 174370392 365549636 544780026 485426276 119090387 411950085 426542818 76836137 456921767 941158047 52711335 375304029 7908688 186325703 65034440 429815303 886272143 865976091 313092009 252994478 67155550 902044795 800542899 535453145 61333789 622404466 293585074 870975986 780058924 615043801 115979444 115789718 564984831 428727645 442975673 207238362 52917413 189849997 277691915 470927071 464132910 728001961 82911648 233484731 607914381 625395568 790610984 248741728 32825850 652979793 576985864 28442380 725270718 372234741 598860395 104425521 100880817 334837220 946047723 587597705 276749113 103013542 65890741 475694657 102620676 177322989 431845552 699443805 311777938 187356955 749245123 841654732 295592538 760356899 155252781 574545642 130578726 892001122 93453963 458940030 456453040 733876035 249817393 804238424 336467664 143019055 333464144 148865360 125452235 400619962 431384647 688562301 97647439 573053639 290765658 567441105 150855443 79860255 239215336 124917167 689091185 875239403 692380165 497113305 65505511 388858595 865626789 904817953 149569500 42638462 268612492 78724258 84180047 112356927 45167979 822478316 436656239 853324866 138692918 800218717 449789680 33316470 651459992 994258732 173922406 381401090 835671292 537993977 550445922 414658680 935657438 73085838 694908629 30921930 287781736 966176281 78137767 669275101 376041098 235896 584225168 115907248 1999392 424140008 969980708 139991114 80010300 605044306 358203938 726097810 59353751 446596294 754414249 488683506 85720167 775889855 115688223 94379313 999212417 11533603 707138600 158174033 740381072 375165401 832866128 384361037 950016433 784851938 405662747 281467489 452719204 710240153 166100988 589684268 637148145 334201729 311581165 610819113 510302457 642927826 592816646 384530427 547072871 760281411 45911105 322638772 184924484 460462324 886577241 512640260 776237145 864798827 895803300 142064693 719305286 965976318 672928184 841779960 779437117 416916253 961429872 313069591 616290142 267311734 85148428 86578948 915998260 537147205 258119933 36963291 751393291 39546768 779930339 203624321 60121595 346535771 447626712 416904423 181992432 161941918 15504398 180695105 356479675 410945689 106475135 940901228 314389414 615911687 820682002 589598927 221425555 737910544 765316021 236104673 640351306 168030207 544451094 964188582 704627515 234870978 507386550 101864366 951011538 967643174 155916703 898570248 802221782 512831495 675820366 804309318 769885308 254482985 490443844 18006265 496579851 75080939 3319605 395122347 43260545 672015564 519081317 208246804 632777072 990578218 135607149 38343577 615404695 661238124 499803622 19391558 198902392 909023275 233781836 306551021 304118141 854372069 527294337 46512921 994297390 794122906 620343442 367181358 733030161 919641484 809405081 935990987 575587443 255947933 976668896 407688850 294422845 981042965 149222206 452347385 983733631 775910371 225287656 350121793 942587502 347719271 701992042 658629397 928473961 498607766 970897969 931296142 878363320 703452314 522282106 265004087 234028627 853377146 366955619 143381484 538320686 906170353 182109583 847192717 958339267 553502034 876337641 129233599 63554979 591895384 819819845 238064165 665233649 602817045 194260014 77543721 32838528 729554511 539696305 873506929 240322630 870111829 900021855 231106831 107578510 947642132 747507382 482228648 277241651 653376311 21960672 575351882 165861317 913373007 937305247 221571892 712958831 170226857 898511220 643916522 608713511 392954939 578385786 895420237 113543403 356044884 258806230 766316188 985692854 584455078 442974066 204020460 823028935 718184356 838868018 659514241 631436699 786912634 841107667 256552298 547123023 895921911 103991955 397358319 40807891 505441811 511648247 995174911 631663650 139464712 335623551 91220725 76978693 452274092 558354190 60324998 557594195 713908058 314473701 710025242 700505980 2912498 893913195 445531965 754217992 857709507 335787082 299654467 565321405 297122760 454548131 147675950 933769542 750462620 70692326 611526440 461504020 329954549 349607455 266742133 276712177 952458188 135113920 230065040 99380094 807330510 767341903 45723712 318286970 475017626 704982398 680513717 247928013 674479162 27313952 596308689 655799495 676659931 832047217 50344928 389782354 106219833 832828032 984394277 832219936 232411256 726697430 223209310 598220243 146664756 652106383 138851203 98417178 331414485 735673278 519066843 661325618 39747578 369625266 639802524 515669448 244200539 508873450 993665608 638749365 112223217 331505736 112037069 52278247 973138059 945591870 326953686 181036762 976990121 873644104 626480583 386374100 120379268 453484774 16084940 822364599 414908835 20444962 823115216 25307506 662013270 136990400 239418991 517238171 223934244 31292190 156538747 916931271 766065597 605944130 708920965 851780706 347986137 931141095 103139610 108675169 288003163 382069552 673529376 388069513 378473165 102174176 572051243 732776635 146996662 558898300 571670861 613803350 982361673 93511382 7178649 765599133 172264889 632291768 316327563 136061987 605846742 895668054 825943186 887451697 825853814 107478154 77877541 18887561 287247570 96256034 607115934 672747851 682394706 279154947 33545423 522720505 993293313 501480838 596235386 47908850 98986632 425419569 685708442 601009041 24674995 611030746 329081679 102091984 196630913 586907576 864115184 659812482 206219809 872267969 296928431 39939860 5373758 492052606 171301824 90201930 193039577 859610305 550472499 836569289 460055615 134831532 275102964 461233915 515444808 412714761 54493825 697731212 738396572 998289394 13229991 484311987 883533381 395680905 329244996 495744936 628834892 652838479 935176923 744604389 15072967 786185851 141312358 539285934 652215392 803653242 517032059 803893144 816543262 775857621 949387395 116786896 328125640 954154967 581969722 257429064 87675821 124746153 882347298 40333832 459636836 666043481 576693500 581946369 927832436 383793626 407412524 435604532 692995407 157021721 253178634 257669060 570012772 887968143 287743180 604357708 693522563 910073527 603104782 261920353 401360908 277015485 283370486 364375248 271312885 20014860 146957266 831264390 426510192 139067542 447332955 387549109 570395499 625495386 387820341 643826163 944021989 384805333 192376403 770857966 449921815 526121829 19538893 825032262 106230515 844447111 792480257 107106984 387862640 875844033 324955590 462981163 980363395 124283033 564991284 494831864 329932907 48289414 575066181 538998728 904038755 453413611 996041387 6731762 701460932 108167371 19263119 908431120 370472466 365762275 71178678 513492934 670313393 826499306 457830503 250380343 25371956 54317490 530929128 873402519 167597991 556538763 437743781 720097710 870963882 918411586 985532451 143871608 373340073 496484616 31072922 194733721 107945394 119790407 452581583 898199529 502152014 458817925 745192685 939278905 540442925 100516656 419924820 976678083 17693027 960483042 784592558 633407928 414705860 34436368 95486954 200052673 39291661 254290703 749146357 150312803 11441283 56729243 443821370 961552018 988759237 240467361 448553188 625843267 398099836 418204888 448944230 964237780 316250451 592717251 99437893 181970093 687496964 326921158 618177 16480401 600878749 292817132 53372388 10618209 75817848 266286585 314549654 547202660 320885318 218746804 692138777 129070114 750593113 67224549 231634111 737771849 594730749 450745864 498700631 125551361 941396170 212168727 391386136 898086192 30075215 431210936 784849312 735888893 10025059 132477649 52505584 63343701 535547244 400979291 133534939 482096437 70811960 722027008 73216355 996878556 245608783 566083991 615126237 651654108 618016741 928358908 658687870 1000 277563836 258576609 823673178 914226391 683653892 954425182 132683515 743806392 286313660 476146365 318418624 936073321 552349305 170291408 885637653 287763737 469686479 414130810 972420541 820806612 173823071 373383024 139164279 7658945 724750614 752263412 988569567 47738207 363485183 263713746 2697449 554708174 265966139 182757527 431335713 983501434 115594937 413310052 132684713 42870038 280583056 222407165 693551762 566354322 816973827 3138424 740235325 80225614 201824905 417818583 131144671 57813753 391576246 426283180 659595262 328292192 11304362 94313023 787590816 989480517 436902566 861680147 844706220 361874210 585419507 278192510 16563142 229391672 624535153 787454759 799878643 762571015 71730272 897895401 527668268 494615896 728204997 125471127 851659841 201430989 189421957 849264007 550655981 201358059 233377400 941699787 964110843 674296413 953844568 527437946 195491280 554713939 590419701 124889377 358264654 287876166 834942430 605767830 446482239 572021523 746473758 468800066 104874301 386324833 42433026 54612713 389295978 496826158 628639925 718222264 960679820 245896348 838689316 909621723 61885301 941423669 27243426 634272777 696498335 813888412 747097004 79475550 331013879 695441054 340179002 105427189 3390741 21868204 114097615 199664330 16448371 795924150 151464839 320147669 387533761 177748471 548454802 41327459 677860584 592479042 793991774 604963334 159687072 488778929 60880428 261726870 800163431 157291939 968847343 788243681 399355016 596601593 239758124 811115801 629101952 333169845 329691857 923733381 739776064 123024797 156807751 716028992 133007954 336383188 473415505 593472554 626125012 739814451 800166403 904006001 559564476 805948077 508558325 371055839 953195372 852250942 55947265 815457973 30776009 141945727 241234049 299972745 854620465 644376268 203647282 108093152 862601658 668182172 413717982 214050375 812319496 590201365 509307097 857127133 362879526 209910530 442854004 23509690 600207883 185201739 493676892 165510009 381321260 727756085 475162353 783722541 162336856 354753445 691375928 715419965 434053823 612578654 553823893 45515169 46186742 745368232 109128357 16281117 710171048 5325249 747878426 123676685 942663692 71849292 299799941 482424491 497254807 278291764 880537554 462987143 162430533 380424315 6049138 672868923 99918870 308005493 957544754 452639776 133043883 894233123 176991275 23433911 329274293 231626747 337979932 982611517 901995534 882696260 78388016 428302992 856238063 832777714 49895505 104705922 507682279 898886739 592664500 559934077 669018385 612284126 41301606 318309192 139720613 875370752 557709127 580247081 893302164 829552873 636739125 876346191 882853783 178640985 409843791 114392076 39279247 350216595 283735886 373511769 931752821 909652522 769305343 38643400 460040430 193977143 468624457 541176816 777904625 438398586 110351132 31222050 286790864 258869020 906363472 797363394 898102651 376961693 597007574 538162478 682011113 130200223 306323113 384955724 783645023 439849790 926716490 581221247 948440239 75785186 211172784 800016148 208838588 119639622 823100723 587237542 415604470 16486297 825656885 848473098 686728863 53745235 570051213 955141879 461911529 932749846 914594632 585671332 750020302 649546655 723001975 19810170 964352041 316573456 591141738 966750924 104748192 535671742 105928293 608904699 918586789 207934108 176604405 254228283 428803366 398349700 279866974 251558666 680832440 815619070 132715058 465703339 40384863 138291830 622310397 407079794 479354357 887511896 864182048 747211892 326332291 890889694 419043108 203963481 286067534 498942621 143672260 830284064 714259377 409829578 93029114 549568681 564694932 320029030 117427531 242441535 899941980 688140075 764733027 592112654 363767627 2143226 775625291 921474590 162722164 679598503 268216189 69820727 486837103 804278779 84532207 350278202 581174682 780390164 434542002 83182013 211802288 547072795 547684222 114361832 368060835 586781532 802957921 47194654 746967342 136581747 629311564 91182567 625536422 488222196 116128822 239627595 508367260 204080839 78347835 639002619 544995074 236905627 889893596 709457772 855219262 507872734 33553334 899676111 242655220 868065524 594115946 252379426 979102963 223145942 596862343 778945464 660341676 655833163 234733958 313359674 10771977 53381891 609554789 241492421 15217653 55940927 205199319 297187526 533744522 67864185 523164379 454128111 953300893 129371052 189695183 338262218 675873406 72979900 927166666 484791350 900104788 684223180 885328237 858275433 551909428 542355883 125610320 506736829 463106356 895915786 764408734 55891355 390730151 15734845 919079550 108594331 687584423 352555940 401867087 6177622 838337981 814032684 647238376 438248633 7184374 98345920 957856763 190481334 358476026 162603722 675683908 69167875 552420236 875544161 632202039 117020932 237514253 581874321 186107268 373794638 433262939 193999294 50175259 796358424 521658433 809514028 584081247 943768076 765205777 696098708 452759771 850912813 933986452 572654363 690501712 765636611 674811406 221918189 585627275 12869257 39972113 638260625 884553626 471096821 906423369 509083431 502526245 737277824 604393535 309825884 924723835 832491659 971931071 827237885 80788338 745364006 412227332 20275747 914584645 188816057 618707102 316800663 100127645 298780371 148540316 84697294 907077756 651056147 664531780 620867920 984347134 203920796 466015092 672579549 691424358 33354435 737564850 269633673 84259002 201105633 583777820 12783063 86952274 522302297 695911325 97221843 795908497 110763036 175773484 854797208 94071659 506010434 836886739 590058289 433278911 355475154 916471247 222329803 546997031 936382838 202744526 676952205 653561540 896714427 46501800 636647676 94217170 358644878 915171533 606016857 262510389 347165346 394263049 88596583 726414113 737297185 625554165 368625803 328482000 376846310 489640589 637292950 331598796 508212142 133556313 71057544 495286933 198457229 308633701 871613136 45955974 360583528 212240189 694132196 193422789 916535171 103673647 22159390 164359439 559866284 5245817 924179322 21607432 878903515 868637594 97045330 929995990 371395331 946101158 687257000 840611158 980911901 993704429 433977271 696275834 830966195 230552527 51662988 555982743 288253054 418683441 389822853 6030181 41403762 302781487 13780128 505830515 251558984 253076616 156838247 58500721 369901328 110851796 536815120 440007359 917731717 74036610 357764339 109495256 188502927 475264467 202674720 592960066 385442444 191144682 37442183 755054156 619752226 180727659 588054538 116674038 146973560 487182746 904209939 233570727 106251926 316253860 327170468 702294002 796585292 195403976 80854239 302915462 286285604 372674224 943389994 737359921 935210440 998864139 936507994 680312163 451599843 176601576 702893526 681119134 179672673 976664440 435511044 163328391 383430092 7676379 88523198 184818606 685718085 882167451 246754696 262775846 961440660 42401025 65458506 597892248 51835197 571011358 907056601 538828536 174430860 599693991 93822609 543256371 843264523 829906066 564275968 375506700 78566148 720126722 53250146 544511085 963235802 740624271 52269834 788066542 512506049 658972375 772736259 225544812 690837523 739035927 676764334 103275095 799881159 983430646 121331760 618011424 19000534 236572495 991801266 664344158 72519482 585141237 992174310 318660730 3419834 803819617 828252605 895750553 441518553 521067890 193559753 276088184 300127564 32661615 292362795 700683773 351917477 493008659 93941282 750221099 915593853 764769865 82680116 408273399 623051276 334245479 938643868 410659375 411035914 162287898 202066310 7277525 903428986 824131205 96207355 664836565 94787242 261022408 997142141 646005554 112903066 74957095 382926807 338497230 868817231 693250674 87701835 845013713 449949812 40998878 899427433 565836519 12740615 682617116 853836990 479320126 269995047 848920894 992707069 758641966 508026783 89088598 545471661 723974027 313255476 376585916 268618844 257754318 562801719 780545210 105739688 969436939 681345681 302114930 166437582 399184267 149681173 875423825 993845876 730146222 157814683 101820896 988641953 994396210 517802960 318172474 987332902 519614995 737626116 233083727 101881382 143691645 105450914 228206574 805544357 861489080 597145720 36492856 488610236 635103547 752247791 77811297 621334082 117321076 312677275 570345370 144953740 356000842 797704713 533413761 958726174 87110864 115635202 759660082 853806458 735299023 816603642 222694483 910154971 575618503 828986801 941538824 137768340 167290799 452561384 624146921 870775566 831785317 582563004 130746811 243684138 517986609 609181021 262638905 72791902 34409413 662944365 126635579 411955584 842109280 32672420 108745508 445236442 662840763 795332917 379462895 431081341 338367695 733695748 694632512 23390666 62685465 168033142 980105872 82603871 336613261 363079514 89023386 134745660 582522515 677301929 542875911 710995032 24473491 623562012 915674586 838339350 294535629 882501637 156908997 282557854 746107963 681758887 989575205 481360361 12437112 91036079 112480487 360788677 791825453 33207039 588359054 36475493 646280545 893247242 361910115 75711019 35195248 117147356 312490984 560465553 127465303 163233482 102249878 17247521 336156486 463020247 729220547 445320881 903326336 62304942 706106830 987223699 542784737 759615755 113365754 109938290 638657278 87440887 898587479 650963978 928062729 285159706 890872100 17051588 32180580 871511572 298399236 907904233 481686356 206724116 997140690 402179301 879576789 821442777 166765194 463814308 20822541 826219352 270773845 828092691 16369847 834452495 196972706 749964763 544713278 952325591 737351846 744044105 235190224 957793562 97778799 122437167 316068316 843181747 491570647 389411589 954920189 582246990 284609210 605103484 208999232 693974609 866993353 919705481 74140397 690719286 953558398 790341737 1000 838449497 58422621 94452901 44935678 828587590 849251102 282912384 621765050 774151216 823274371 671564086 336103813 784889263 945591738 35806896 837093335 176925012 675860460 176279110 585933755 575948174 401136179 435499617 438672672 221699779 307033629 31894884 532619595 456448315 98410055 97369093 237994185 209985465 853406059 271226737 212724790 40214738 754662598 623974704 606562757 774541676 425478128 558713849 9159616 365573763 522027096 139211921 664988128 852854177 194554969 217145663 616253118 687474100 847617735 405421085 280474975 289592031 949579529 27517678 947601519 649698048 377854946 938466593 1746147 537209328 959401935 995550367 472469796 71454235 706695520 628648525 457898867 949696990 616269713 649385816 101285027 770699610 7584001 413371742 168721874 479993239 189220774 315797454 902805161 130371459 76671554 618261773 684966134 639071977 635265622 56889978 130256695 151089860 237744990 606252943 96088361 980009190 52387680 455902830 621427757 999547810 621795695 91121573 51607202 414478597 976607112 369345729 137791371 964056151 679334812 617342905 621562628 752188745 746758779 413555557 779422857 258990780 458488581 659390072 765191114 642786957 935845914 794492054 923001281 338825426 131364965 835629867 136628919 792510144 337765873 306634590 327610269 384641619 73114982 706195621 530298749 962999262 352218121 784510435 88928854 723878149 861710342 962767576 92325105 953903663 348876532 363059017 212461785 556491925 858874966 508434127 187834949 648930127 232206794 514812772 751284126 181047197 968681900 492895241 446095091 456717298 845081040 470135825 827712470 586007601 267933299 955109245 554883986 830607011 14512033 634879241 35275558 356255997 878806142 185036527 253077730 879421653 607550353 690600440 856053486 304081799 90299714 50759296 273568082 27720568 67969753 825289161 471588191 711639871 968949093 396766145 473088496 353993490 454722829 495022479 478333419 431216974 570717776 71460636 344528375 207599972 121934631 325272876 518565998 887915351 427294279 60732012 548299861 170137164 480819574 588528141 505043619 285725178 206331572 923534852 843232148 413908732 381452108 156689540 956258817 25355237 376227654 499906284 426902496 225473830 55823699 32499871 398386666 662075684 125424257 357812881 56218860 808356746 586173612 4972807 322965711 935316509 676564977 469116677 539905887 252300262 559787732 684002469 630955307 972164588 99005171 493724369 80809344 850297287 307659423 266406567 92385481 648079816 748913432 883830688 295965327 30009726 404742294 582463860 116094211 70402081 115999309 55177947 60401659 975930583 801481592 615230883 673827392 530664461 661042330 997494251 268836946 587521109 805032625 573839451 139423290 671085354 9430337 734085952 461206847 142139288 630777787 632078737 204053178 681533596 810003765 177139574 857781831 938023566 15550073 394707199 923924873 985087190 212526301 284982982 553178780 89108517 614834506 894973433 693216121 976521185 916194450 124033994 914024161 776236205 771249977 146816555 66412866 980871335 519303896 744122995 170410410 767487034 182880237 928587075 521261006 416457328 264140780 274358873 73266856 740444894 724027933 356536550 125936713 122571398 755957110 47135601 42447860 853698102 264641474 769653705 890939547 960480508 782358711 146690179 464526937 53491981 813732466 704887863 586400485 789962459 922142416 134310943 898673381 774948258 137498089 890965024 520822811 2970476 85610016 606364739 336279699 585823026 672745093 64518409 864342645 349653256 308930564 99167625 62740990 715940942 567456842 100503598 714348900 825004824 988563327 48142950 87569774 61051202 599734838 89205575 385075366 61187674 32197903 32525886 416525387 114766 87463311 610510030 282563923 814166340 147756808 46513478 251831374 874201704 596510706 308717761 812597627 616615522 1341712 666215296 615971961 946476753 714772611 560398569 22401548 52902763 492470727 944134207 788618966 561678216 222215802 584816585 420315556 538047608 234813372 953038579 762936397 503381849 688165865 477732582 798231488 958915195 50307117 586369525 972463962 814724924 36273266 321390231 59956285 694029399 676601751 18027358 461386290 6635705 805147390 841382829 102567300 52129156 688091331 865436783 249413408 382950991 622367504 581525676 383812075 550452459 768965199 38816227 186492736 847230434 646623846 772835017 77470851 772410422 773372678 798507666 381031580 752848463 800568077 389298153 385889733 310014610 209945962 125359184 37938866 884139761 909943262 326911807 88124711 2930488 632559085 343746230 393463610 325447735 181593833 787085408 591668689 773061815 75362427 176966384 466152654 859612770 66718234 545410151 303501053 927173379 109349706 761752685 57762625 985548534 529028428 712731792 590593476 563948122 113549137 522854006 440702693 685431235 695526566 616641269 964412665 950982419 150934093 376370775 35634636 352174612 413809359 429307755 247237272 264236175 937214734 961080346 106400381 295879255 528794165 982732066 345674120 9953109 143081565 502344344 190959593 969075458 367988179 396042872 946267620 3333575 27888758 351945267 152919898 242222919 862641159 600874432 852428371 814116966 738798962 328994727 382813024 144330026 312149953 736451443 615058397 9037747 188422070 471571982 759827103 179893905 30018803 769915750 55575787 70085795 731180608 48654576 616451311 596268116 852411768 407181173 27139212 996359231 994211347 80868215 89598084 563273039 64978473 175708939 138199681 693780421 608305900 872606906 354884493 585443085 115752658 341143790 38579315 547566044 385769911 319898070 528851474 920345415 551112144 396467585 132331352 277439416 637781327 135337723 229355964 433253040 547069176 5224458 379542133 233654661 165066782 927566807 27330546 145786941 450352094 8462769 636627095 736140636 131150000 546819460 575512623 897243913 106789401 409972597 435961746 337334159 255465378 213469567 819437196 368990449 781881664 572880220 861190605 558839445 206564254 575506856 696475745 837218405 931903562 394195700 880736603 128818980 116960543 532447454 586636939 589491501 117053461 166069281 78358977 189929735 869373876 997598655 967524143 8578605 108275828 169402856 735492734 613493125 503336670 699640396 811899127 852397261 550529231 192765232 903872624 31521944 263349418 514951367 260401716 540881360 485473966 69167965 932951845 681608013 967847699 326939438 538360766 174073830 111882016 539499968 553632089 776408243 921778478 227304616 482745654 700568570 311906111 116886290 264754876 57217659 648747128 353481367 561901514 580022931 881677662 878518908 954633581 819775071 167590174 532485248 25896969 695363598 406291378 468738599 801399060 372942225 198552568 982933269 409291746 340822947 91189630 460892295 203651653 85696400 836505193 203366619 49158684 979551390 991776717 444121714 279631657 960022817 499599290 438878564 888690045 422417460 347823462 42210747 546191048 221121375 951051944 386274798 902649979 782052561 159344724 733869604 111556727 201133578 683549882 553434416 436029412 139044419 311534703 544771603 788513933 365328054 186290289 871883204 183344135 630605045 477538391 608356723 237645787 563939655 87633979 829133796 223170489 31073220 97089295 305596989 53559898 733113130 106856610 560549647 407848757 202055953 907973662 300126292 936053739 214329635 723025070 622067780 632862953 96827563 502372743 250369966 326905007 309521648 695110046 759399290 76647359 710437017 533333537 168331525 819765264 598228906 76221402 798245415 677827771 965296351 759326258 869162112 129822641 466227395 432115946 675509347 440791291 476169543 76650576 974955476 353865195 3437003 282163474 4343929 510892517 70466406 801332768 849021614 12423901 290590926 793312497 993773476 964799223 993444694 820948894 584610817 118811209 618602128 131391739 586405177 628995871 481938259 674139766 395303729 234138441 10967507 100805165 447793550 996636700 928507656 51805744 618810455 70730519 766018579 9807065 191055548 258320220 54039061 144142083 970621689 801658749 322053902 133485991 78016901 543798922 221881643 71056122 243486756 246227131 840224241 928902010 425205835 807564986 128923373 907250344 973912249 113281174 779947603 141371873 740652598 185332942 838910712 758831957 659298681 354086771 526997157 64133496 525372886 972449039 961297508 97954517 425986438 765626028 206977968 918179686 450885344 72740503 296291649 376477688 732123060 693884558 865291559 208318273 714150000 406075831 307992291 663376180 105899282 84767866 783079172 856614198 275358853 916302627 53457722 8958943 658189490 293958974 265405142 543717461 252163986 669233632 66850036 797646235 632098157 391258538 32657692 696558317 912469635 121590809 452475011 115778361 1944306 99922956 149767952 370574722 15139497 60070672 855061463 562704589 303896399 21343165 103261948 644844468 398024472 110976603 122067812 166986810 512103859 493933491 306675679 155664503 818420094 227566888 434870392 588018577 423568506 961236056 634400670 298621862 131716961 223536215 636101505 50911406 627268101 335107207 933284862 181378680 788035179 275941135 502178372 366688771 613841668 320599179 252369223 676285146 263439468 141137721 669931478 454215238 522461873 410028948 683333663 227829257 780790393 767798572 464454892 656807507 567848111 560625912 955565057 224374131 633272923 738051904 955211116 104739237 442942839 672624788 71527828 345469234 917391712 144942836 487373626 46892205 422321475 388594423 183944824 348964418 70262434 344859980 809957327 490855301 208555434 834682219 462903660 371784606 644931581 476377169 10996461 408127377 40711718 527090011 884613302 397439136 548385648 589329238 696021704 578001416 629318560 658226204 109299368 353050810 627850357 457955645 530434156 238082743 210125757 856430957 561043446 362346792 398531910 606857420 558076156 95487171 235015141 381471316 277303155 637314498 318684165 992082597 1000 474660010 138987376 919166051 760607915 890420462 59959824 320623959 80959006 536522292 5593576 481556723 913981706 375589776 245771185 896490944 289621777 877205624 44047548 470678686 782555327 352865813 896657309 855254762 863744588 691328804 41084999 863013552 448865059 143416640 921617211 643298897 436388577 462610741 380120052 573392994 526949136 927614174 579912036 255897518 130843662 990013818 13458795 755070993 677335192 53884612 788526649 668616232 360980294 982736179 106364330 284484316 209708229 32934202 372251146 848977903 29859185 251863000 430292260 309929529 968611732 215812262 112265350 409384953 243479522 976800412 225769782 133254555 697922827 701295937 37117377 163652746 743473961 65795276 611511160 196877963 11326167 592755151 497293857 47963173 568474548 898836787 550672409 163382925 117187607 310755362 316330930 429216394 746303389 7900147 347008592 90419994 882043782 484474360 147304251 633359699 205933008 947559162 839813715 218242013 602060930 531964369 610341931 688531032 157838395 117975868 586718940 122926223 555788357 854168996 355419496 647938275 317925168 657029891 322682409 788837657 979320574 597246058 818519895 220252136 554471609 233833430 453171630 17755232 396642765 42665668 748824011 544353945 33940253 29568156 617100336 617581437 138935532 214759511 247297779 609929012 242212378 803420579 946582779 913248623 366837923 34287282 39204082 118057376 12688913 680545282 473234038 974697870 792155827 314203613 587131384 947340250 1314067 3578421 259981099 677309109 646016441 158565608 413870272 487361154 238493464 16227651 306217788 427512438 3129651 16533056 137526197 407993533 351865418 281404011 830010745 48516984 521751714 401323887 889328153 601370165 406255454 909044588 552478729 551408637 886565112 790137284 933582885 192422649 524611552 10637166 101742036 807112772 106059399 593918833 283421581 399203774 458749529 895594058 494981157 947569902 396865754 327064434 817458985 410946093 108603613 428323461 775083243 358532108 673574765 151788711 15631211 59128542 96340282 362328454 770413087 964388021 639855454 829161359 872617628 193000840 125186634 766829345 216802406 471744714 693474695 177469506 706000745 73783787 198354739 146843667 370802698 334589368 85707228 245727284 598703046 710850625 285024698 356414938 43617349 730795811 907254666 565023745 39121402 503138420 661614361 432082025 728271816 737822682 510105913 542697971 427861443 941501788 491891992 988277601 722486509 98832758 987348245 153289219 545546512 65117873 890804822 697821017 170790214 268751216 933013955 279244180 774210147 324185728 588018617 15590543 347883451 747773678 154544786 299102501 169072083 135955159 117334293 395038408 631876537 631281156 887052485 353969853 153688225 625871584 615374662 283281044 142948101 127713809 904583426 442491606 505897006 316308940 520748495 205643824 103854899 739756059 746634766 129649716 352880314 548782851 590042608 605369583 20335381 100753568 19462790 648716473 394477516 30672757 791855776 541076384 445825889 304643501 393126608 600192933 631653484 835530318 730585636 496077872 346099752 865064848 897576069 62265588 794563104 45115068 848011047 436557549 751190091 5951128 222157935 232754257 757817489 7934516 842933851 82297211 271750656 75418429 4147404 71199825 368374672 364137496 67703284 23913799 33095747 102705145 881382767 646553881 338117912 223231043 795366944 291807055 744792538 856174467 238908639 913449086 557071966 613935278 128304442 524404970 473045784 406529099 502262622 474088917 275133409 219933268 705689166 649080263 904611914 515308431 55314115 96372193 44734291 259656817 783692077 727516304 250983721 910535272 809814456 329720796 148484004 356193984 272526115 654324892 689571090 95716797 242937137 305440783 814584528 380671979 982568157 213315619 330900621 255407735 185392612 519627959 468257214 301457643 118069166 653764718 65531117 798019825 46897995 85307254 686390060 604469481 916946629 607205293 192880516 291252461 581652073 214983705 521053582 141946748 188883070 587245583 96598174 668189300 295875984 91379261 26808596 151050031 635856900 574285650 761824727 24125270 769745414 420509167 326168168 909078681 5960213 885155239 829646726 469698780 998149534 424018017 203165913 191519241 137237114 218374193 364984512 600018645 359418937 693611824 458421126 311185444 505827726 461205559 140562980 808902748 602395943 981813050 749100424 342958282 980789338 553101921 171080432 537550849 121330911 742052218 451136127 81575375 767806046 880275560 988703552 525639326 607829326 596342515 930007476 119654181 366062724 230723049 213917092 63338952 904591880 771297658 378335076 235790972 201143745 590058774 248799206 915851911 11906312 998251427 901833211 985875407 85544252 14606665 524411751 116320272 776959011 460226296 857358931 640609591 183499146 20518162 17285581 319122328 528865057 96067936 76714556 94984439 668517482 608452680 72452791 333579951 222401001 966786337 765297496 461017695 76376062 974170637 877415153 575427336 919364472 755855705 796987795 724814254 99913919 155189151 830432975 241869781 138523152 117331154 196977071 836111711 488481597 379926060 893714732 520505496 200043398 514848036 761760819 73548295 658936474 63605496 58215493 102888598 133797118 663001184 667276448 889616859 826411057 99334758 873815447 688118714 860626675 336991416 794416867 144991192 910192240 302912770 882278187 866970971 831387554 181722788 284822241 132323792 329293818 780644375 479497602 235641051 720191565 663604624 35195141 238816263 907550931 378406018 193618136 972208120 920729170 297634769 958031625 763505900 1870134 135397941 280674731 125192736 890110060 342118910 952361068 475343018 601629552 384839521 487852998 197020095 574540658 670397597 884556103 802641105 225133778 324183077 333005202 805759938 679705297 551272027 816015885 625726144 172384797 107194947 797447303 36496723 877992354 367242421 717608123 88251440 840507509 383720897 51398828 427893155 673314411 824386526 120802326 109072207 848259450 669919860 102516154 543353608 98063463 598635580 869037727 260081648 641495233 112830705 431006169 122268444 351033508 540351177 340339367 495995432 745279988 328691764 24157178 617383446 130728886 595502479 802021563 229532336 461336522 687792182 59875470 424582399 321385954 539285757 469328422 400215852 745075862 753280691 503123807 641836405 431615451 280279724 941409013 190657072 913406588 466307736 64570666 628973328 748902750 251989763 574424935 818573078 48881693 832501431 524432447 76470921 631027565 767470122 308769723 204723679 745366080 384231104 390136986 53697199 329984640 218685358 609973811 546625101 723772890 659308575 536754076 568382427 839938502 767748356 791538289 123218062 572523382 90000004 336830767 232845769 905963004 474493651 887528616 971835511 259451084 241472219 321833020 943620427 31181456 865751867 814809837 753949929 782384438 804745598 535263908 905392186 928741420 902732070 566300241 104503839 43949186 511047641 685430609 806373537 922353750 459873894 571249561 14447166 985741488 209742212 672132333 141270096 90006896 526227702 633803846 24792220 787809636 43559120 842471535 606292921 517950564 269310234 202378661 739169950 153054610 698614044 869328876 427372593 22990842 442141224 591250953 73405214 75692355 156745940 708942638 369766877 751400782 441434808 979102681 604477985 498103637 577959211 406003904 691941857 369457570 948946735 876974548 796758044 464226 47147479 603292598 566055509 911317112 85855818 372922589 916164516 539036632 311836174 462640738 857853259 347883083 84878708 75660867 219339726 117506300 357325060 994642489 374768825 826262442 772458248 925590530 845254420 921225952 365554723 608775475 838532299 555807593 816440881 332372330 247018634 777444843 180657655 184895944 581308437 748136952 548784330 685085231 334400976 960387047 969463170 65665492 976001081 331607347 721962603 25412014 692836619 181962378 461539542 512899786 258426182 295349104 156585795 956047897 127689738 732761983 668949560 480064546 498401484 696018861 385780490 348842900 953163476 399862315 468803871 500203450 302337370 996420549 147452149 236424186 313662468 162351096 561514522 630867844 181836799 44511772 988931221 271944708 420533338 655391626 991109464 21046105 633353763 434191818 203400214 520102404 742435571 735007802 58084565 823033344 15622653 496961011 360507844 260337982 35769310 360257970 736820842 899907370 956358305 249922297 912842280 811774021 485303570 828556318 43027461 681935300 925751836 94651515 864713322 489216612 996572884 87239472 376220050 422875568 26118116 137823466 840304737 472553937 503892312 850466066 934817735 400024652 615748182 172095643 965621052 329072890 270193559 118714640 515536442 991972168 99960085 344249495 357208103 519880767 611860262 594162979 204580061 116927857 135812722 245782492 400661880 877342593 280785294 586237031 528266168 287084733 402544047 917142099 133365038 257802974 81379612 676744749 872803266 350053226 535804983 805323394 48897142 937393139 645664168 343143876 32420677 541485946 122722860 945272587 902407726 495589073 414639403 733343537 507549409 571986973 476732632 701011302 540254896 296528932 267892987 355464145 914569743 878158628 596013349 515218592 941433396 183025810 168856790 999568385 537605564 254073191 788978238 986212360 927960751 786654057 418877126 992834728 460707722 196229693 754448971 129348239 826306965 314100120 799969096 77365294 384352654 572383053 608413994 642921539 823221929 591063682 107951315 161876348 462633508 904009664 874517540 31503457 56147760 468053592 63173889 397301556 78196577 567536687 702952061 570225015 933295212 880191340 618133684 375980163 1706832 989782908 782837932 118432001 633885702 240067489 573515126 92488807 498113655 171516462 857636422 93296614 925556541 115226869 756442113 329888964 747863732 733099815 983349535 685663996 173812478 721625734 631714199 189661694 1000 280457682 49243587 485364668 756447825 318288972 181073165 706054483 237897411 144330458 347688686 103401355 110887874 365572154 105054429 575444597 318512534 961279376 429544586 222111997 522423449 379215053 603417957 347885954 754988056 704479804 20267022 115150646 262583615 806091006 603893673 252098180 709361036 748538755 166558126 848628016 824831494 656169971 111516447 481019140 117871284 701694883 286311501 837968723 964717823 342511859 480420743 294623689 641810288 794303 598117400 615119458 843512994 921326567 238403515 719150301 622576605 933112384 176094554 803903990 862453108 356667612 838372071 337195869 334710392 896298545 48646843 921690394 927237803 862554524 546476628 386090138 135852064 838625920 372323083 521867775 367266112 598958821 561475294 255221099 149828341 968565023 685318803 43403413 799449791 430577121 803321770 509883935 881423689 397560448 934676729 21921111 737790978 840867368 177095732 466983425 597381854 277826018 645185322 750171829 10922409 933201644 477035380 84414101 794489623 573468119 49754238 974346162 750136597 893177153 502090460 38789998 288494672 540609827 197607264 541112758 897394797 176897862 893437801 144971306 115259515 429102000 35340816 892065172 957406040 683925566 923756036 214716647 205319693 576750069 948011633 220207793 285666809 666567129 841142280 94422593 171953214 813901880 892694277 72089149 207298260 288634048 549265833 33976948 419625635 209373055 300710451 920423592 111574601 100151417 7469996 701720264 533598865 909187089 893245732 480177811 130219713 769048277 721378815 268359006 896493808 297069824 17986535 558739092 829749115 484058250 347616314 677917812 518688716 393998893 333594408 452070602 562757713 987508672 879570792 105042071 735982434 175538244 479897392 279161747 39217743 776990938 386675952 432057453 716238910 187020657 592492803 891284578 824454154 935787339 652722754 956710051 304839207 124877996 181601974 979425 157901938 437748571 237909587 206316060 207016729 742098650 260041485 5363869 534946329 443325235 122951117 489546327 450222887 314259978 460016080 997511167 863687118 338780065 30156164 622769366 30341871 593647193 147534852 206307021 46201014 18702350 83999596 688320333 290641133 9997898 695693237 195141138 833326709 603996636 95426800 458142930 332495216 961489450 662084503 51752018 230893402 326127904 582125609 55825103 345784570 500903066 443149354 387692349 398619332 994259781 556524383 802634558 75105373 190131973 372577053 925970266 195391654 237609713 174732511 434827340 921881486 620284468 359064168 220230990 970190145 436565084 765398123 101152509 485698638 968499464 949046185 116108659 56276076 988705359 260916329 688472014 315582171 110460539 87695465 530573253 522381444 583910999 261994245 967474627 423552660 336649455 195570097 542669933 217205771 767301008 147230564 94663952 626997166 37098332 184877828 341849571 770743954 125246989 148440108 180626986 438302506 470548604 807646469 175911645 850227442 412225383 28358419 833967044 684240090 810157913 745593255 865302076 864179166 221701198 430545314 529331044 497867727 281362113 122459691 843860643 19215815 76143233 546303436 78476500 274957172 359033214 327967070 9629208 429177735 114032185 256929464 626660133 860212858 858513224 506040702 902337020 26832982 435282072 173383206 681778528 541868074 98286509 948400506 256210370 928391849 889367063 245866352 904623458 910380177 13040971 380775325 503930359 849406698 955748206 62051985 534393681 307536614 750909511 896973041 326132975 404095505 809144920 585500194 783401967 897946928 841781580 192766969 102251258 39838804 171061140 276398295 97606347 423017298 15240749 342895109 112158719 310793651 712363617 16310267 947352622 626220901 52209554 627584100 192180383 572710089 342087345 77744557 305112027 270309343 499327596 896373112 28808822 997467670 677552330 230568640 277164267 535700862 584921723 805970651 895085613 925760570 987170776 32235847 589214902 485973539 516959795 687154198 27572960 750182210 42548095 513388865 418818266 586213923 694126324 735784641 581635347 864566405 996531752 92203550 942270117 360405461 639918369 491341000 567049937 888601861 923035215 428515892 758089360 139071777 55090251 400704621 33711669 962074930 633412835 137951194 255331064 532638574 310947025 398642490 964608527 654814530 114292831 85589907 317448897 127073067 987623019 475957515 158593742 492398306 743161444 642693773 642515642 357823274 592607864 28504826 377579635 613444477 582100373 359044119 937077675 194776509 413872102 90116259 116497371 43581085 174497704 121941128 111371690 38839835 573999313 619645440 567010430 231020218 388771424 809790086 874450057 614267209 843669885 110760986 620278963 696033363 291340042 364182455 811541083 877994676 231811764 88070146 192470886 42037914 724957755 1374474 410680522 397635744 438111747 660144718 713629465 607517043 162914928 897764650 973134571 332454325 691932539 427537603 487552982 112165905 94725065 880753061 150038421 591386301 579684856 337127488 765349425 875559702 804530179 410590361 264749193 580563192 533527462 585210653 12139477 242636658 175749061 15510112 888278444 356411685 828024385 991411289 961119572 146178196 622308985 4475902 226218914 816054334 195103165 716589304 177441960 266377403 67578963 933882668 771666270 154844316 363440417 20111778 865672772 990302429 453760804 861405039 130886372 396285495 983652584 496357323 219267485 217069688 690810229 102281373 131830618 105614592 595596425 792485019 906299502 465798460 72771191 538171905 827574906 480888767 103001742 740617124 838893628 983446947 899944377 156940220 655610255 781989484 628944379 110865694 131321772 481777477 369505765 945987742 972797301 115358164 116077036 108861574 534276012 792693078 46072777 872174711 129716373 184887258 206479155 348485957 140200298 834272924 891336082 95590344 41898579 52907449 57731314 698195089 367858141 246382413 627330997 428444000 956785173 16311655 873865388 419550671 95671789 609698241 649289463 572183311 286672574 641015985 154858176 63454740 619537054 532433577 647911373 15941357 916946236 75653814 305740218 456676863 385867934 109739468 642382808 632993872 673979037 466518281 137177450 465795022 281200009 583280913 10994643 467854545 512112013 463797472 529371098 380039446 467123931 638488699 845531500 435599386 857305516 11413021 243443367 662544728 272044373 445611813 707421726 556313567 336262935 161434076 272049994 225203920 74716540 436010997 500871270 361093874 890149011 464295820 199000464 293359814 820914903 995210479 153378490 678542771 429710730 617737105 130720490 565965473 490239374 587589372 518488326 951400646 430346366 628716921 886749567 18216409 641346723 52626156 541853145 142165760 511596829 900755188 110958792 115781287 727905127 134567490 485526161 999560653 70335931 561452076 843034339 205026100 402282899 158707568 594311992 502641143 573508379 791044968 817073675 593149168 188660515 507841583 448184030 163754162 720933516 887600225 167938335 407729682 233959875 942587071 652917293 197421972 401002947 299890108 759635205 635234435 831058755 999826852 820629543 861350720 97897306 805070258 459241416 468414943 325792882 495042679 521333030 944577502 990907265 670824561 366598963 619701189 11943379 286415986 385097496 8460167 577254117 812182738 62158309 22883737 130686000 470083740 295756185 105028459 550075161 699817421 427010685 386235230 542798625 804837500 62051943 973749132 524818240 293841810 928074257 129748938 810632109 488201438 603294741 354683507 492276128 728108515 849073880 223598941 434992038 568881151 855823448 336496684 406449067 123756954 834321173 898566316 137781571 83363413 515011916 620866517 316020578 650790885 354402159 810260904 345862080 47384510 260661435 260742431 294481701 915123488 118641731 330229383 912858612 628397060 286081490 712521719 506171596 334963269 60197827 425261536 416422020 244290476 797821405 126146764 872132155 970656076 708899716 422261587 873780822 796392632 209806174 17514191 273435549 124715305 481377906 949589441 700783209 828922635 720658847 63325127 420735480 350900778 470402871 123730345 13181472 920649274 104737932 979710198 872280454 496575733 424027333 608162191 992710664 554534469 453486761 940389269 186630690 616722886 112837959 836386662 910021530 517550915 823326792 93534449 998746345 66065892 326588897 629341839 917290605 186417620 81279608 137625163 742711736 79749727 929728768 986687773 92266909 110210975 155961229 97733878 23670916 140008366 94453999 53623491 821344900 78266797 746672907 693915006 858938413 745503618 941076659 467625216 104081791 799410016 198685265 258488681 144008956 113386615 884103718 85996118 487384217 785444434 505533191 49541134 518448689 581864656 845931399 529290660 978628050 903615767 867939495 388248940 531727172 58528742 986897531 751549130 482857301 640396246 696256398 18952173 595311971 894769764 445147736 17777095 248757657 112323488 557711183 855118481 759264227 336775065 207779260 395469683 753969127 146316850 502445320 293799282 99712081 299995582 354635989 286778174 361645653 109519587 469581761 122098245 310147924 27274903 28429884 789547784 378544469 686652768 272105913 617115406 510921276 415056549 707643759 935077391 377662426 425257253 933174515 172012557 445789598 525971205 860844129 884484407 992329833 906119057 896370436 154947556 181486827 338028058 777722450 459060376 837400195 857595965 151718461 906941241 575512336 945790495 861290872 523637492 283768199 130981808 466553709 510558214 713629907 48963636 325781453 111259550 234212979 130444550 255718793 476095957 269737121 905806688 41651338 465065225 461513100 318612335 736386915 247753121 29211646 60792807 851910216 788637912 119486675 961585683 900660861 20234466 364512360 306318477 865720503 200716643 401126325 527816795 516426554 643639604 84234765 929724255 827778051 591979390 148599652 115493061 74773809 728288745 362538881 475979250 1000 586378241 775488220 133790171 266189430 397117017 562779999 278627957 656145980 36293184 836729562 90812843 493344414 497190184 448404987 984705999 376789178 475487614 134600013 966158464 492350152 977398718 573492405 514258244 605294518 58199513 382378512 94626641 12883356 516073540 593122879 554550784 353553170 902151084 854741178 784850523 88285607 679282719 649662419 581040981 821803767 124519942 826856032 528094059 150421933 891134754 314462174 455609539 586134044 381621497 7903159 348548917 890338624 850842790 347312504 422406342 848666298 584194084 90915887 288584159 781045709 819284171 235096570 27652468 852103501 865124589 383294915 947117282 281300098 964355385 627851190 557710389 629029039 911308562 390503386 649635674 405781277 700160742 44264179 917010392 315077425 714268918 25033051 706677109 818251935 750197211 276186381 240493119 151671983 67380219 929692813 343846473 335128816 435546785 643317114 482173169 201251010 754433407 145164735 322969337 555265554 116312748 102355862 504530328 383145185 285090399 402489833 3654279 175797307 552584317 902589665 1398103 524478081 621179860 878593580 294194590 161129963 14735806 799759523 760788764 796668877 637497872 406859041 279774392 79698718 176986783 92137194 874479200 563309485 131895183 801488615 273424418 283603060 856769590 98473610 966541825 637991222 568039397 877015271 423394847 726074854 28315835 573668564 647844398 74236038 521959024 656010259 471884059 219887484 737505124 427561826 411564601 62427914 876256385 85309564 193398554 658402803 178844800 142356884 566303847 432002859 693593220 258904260 160532138 172941171 449837084 418907023 22824953 918780581 191002669 297436130 173255266 586850512 309560095 776742036 749067814 289500626 112843236 657435842 225427978 103366883 916077288 119294205 44809505 690379545 123983712 351500819 811928755 63350364 579259583 922745148 255549907 993737757 914159573 896314293 366881663 100166786 332582004 286942796 818965093 865660250 722767707 235907393 559984114 874510744 127163780 677848977 640483042 292025518 241574987 291595257 12276722 3433919 209229508 639273147 260963112 364672274 956963476 569398046 360640755 479233249 233616796 95312997 617526990 591635382 894402516 471899390 529599559 271342862 328142036 697015372 142910320 957821505 700097493 3590943 722370064 881813145 130008314 965300875 307241160 954897211 345866407 598992396 872623676 12323961 486380257 132955610 785354935 987871965 728282739 578619974 895247615 507618719 717602902 797793480 603085159 982063898 443289915 289674732 980170109 75097803 26273051 993441639 520459012 415319149 919042457 549367874 731325619 870982883 846802692 383224289 949186345 670499475 879509888 782333160 508895170 223039109 18395795 335580564 741672575 657994252 530497045 117050815 972225756 914573077 657294288 425167511 576015580 561273113 209298187 38478078 28772473 822877217 295763 139439740 305055060 836756114 127045440 943042743 962693759 891435241 169729749 18320871 924795472 609501543 494183150 429595291 491647162 916081244 633732189 385364258 561599284 262464051 213437678 956088078 950540341 250648633 69642832 623924965 179042290 231906828 922308124 878528521 242834774 914726910 712490624 298659323 795473736 419443872 895805913 306539079 822108712 778828406 446554489 469607369 677314884 947823864 488643071 333974434 882607453 860944031 516687082 152720573 991400152 894803587 292743433 336393898 389856203 989397192 105676977 937785115 858953583 541928740 242565539 683428351 482290990 390517095 43144117 645736067 109449581 795987024 518418249 323640936 821010217 285319818 228284456 745288551 561552631 692127910 472115590 894159806 608440088 114251363 357461036 129110350 604428866 212444696 7576621 921054150 52785173 143387482 736640063 378213903 164721327 566852995 169890304 70863249 142136256 622507390 919497 809172285 682778950 251291360 809993559 476071272 165228600 913615807 793126213 552150802 549769807 112340316 285939043 10531008 141366101 282327777 757869846 863368755 225463022 791737126 703707986 151824235 736891189 829590933 398473710 490253240 457136560 800773152 803130242 887461461 328185223 966725210 723862269 265237321 761675728 8547116 489848087 825402990 685147393 840093685 145964451 659592465 625851887 180119205 718534558 454701860 32481633 77443373 81423059 59208793 166825676 914432107 483806600 490798002 285264688 888468182 827130741 169816471 733272552 293265672 267746597 101973275 657065766 29672211 287297603 776707856 384293006 882246467 900457660 156423149 557457359 926849434 839289099 69903227 331935084 851703597 92767924 44378311 697993921 841314395 621067859 322828076 594470656 451729314 427475196 94648913 184831634 758859746 48734416 963523731 10026069 30289284 546309832 987119520 140305298 113171945 77835121 420639047 147871367 920151690 674126083 740717364 122091010 458698246 234142345 29371779 254863244 992381262 76825847 100811977 104599687 286686098 854954988 317170681 60273571 484398371 8890662 442730935 50017663 133747373 104969149 78025410 881998262 733900387 438510320 414013484 34552648 837614863 452217857 919834194 567772489 265445527 802913376 336733043 49315421 365289898 901445688 696758073 800849526 199390026 611071070 376381969 448482390 240215327 904037567 782946753 211016638 739443151 439029351 120112453 577983221 118567628 644147131 932835997 173574446 285835627 478011674 647527935 238031540 399061815 611778077 386896418 865485994 262591075 236137521 354260884 134884220 792526966 340464914 14082242 757729813 284711071 476361506 934233929 40060292 635858556 486302392 247788912 548498535 34226770 87260313 939575636 991044438 17670121 949823594 574857769 499308557 84234704 100759680 154348882 753810290 89598353 396952408 246696438 844665701 783102536 816591845 301445068 61952609 139374592 446717166 966071967 947813857 660511960 929711506 866461421 105072916 945762094 519259147 384739336 243417528 912524548 49828467 420356057 207065888 479208526 100026336 320886641 95217776 177605605 329837361 439613353 894204687 641194961 967871086 965787423 868008803 400620539 836329024 378667677 361686798 765750346 142434215 53349560 475643399 901151700 16857662 208868682 800563852 71720773 838695804 64298789 156926867 108855907 435661422 488777714 416955600 49391289 786268799 518849624 249580406 637057423 107549259 496506607 56077611 787237720 974765088 559922344 11699816 868910110 798431891 316886761 134616968 538404320 140841543 743869601 949255939 640892210 853872016 763154561 353433061 641431714 133104716 991726541 941110068 14759939 25125748 26361949 714291504 854186535 559678081 351203486 682338051 343521719 271927430 662602415 828192833 564373734 137600845 728806376 950371518 125939276 537910472 401577914 933642679 525729983 192703713 346965514 849137079 299658694 408361791 816940780 132145109 953766183 495070819 797653439 651149020 18643407 689743499 76196152 681067314 978551931 347264507 855590406 920852814 892598996 774785151 936513813 625851420 788202038 67442796 98562881 485447143 48844843 642231311 627630281 644225379 535957835 476722514 13918276 826922622 655570573 577739574 900134126 24099917 720914422 677088893 544034790 669405355 366937174 243818944 248592260 511598327 480191203 649793704 638230455 868808420 677219217 476626432 30972073 526982306 526241653 67828244 671172136 71609650 878560452 688059655 785886563 304554830 757905803 463378235 168873733 748795255 28482562 450192537 162114823 926217497 386910743 622208436 944372744 661772443 38122965 826274531 53437347 133463358 173128259 625994349 426439574 960118000 883301924 537791837 105372730 455617341 540065430 346727845 247125491 50038877 338401810 488253963 287329379 315188726 39785858 363194941 737224209 304437230 763344387 109364895 664492820 673652955 188740948 750749462 779363967 597770678 992591092 541428241 428490969 410932921 261388493 186789334 758324036 939379532 659676527 513901486 237396009 788756212 707344665 452966611 396654985 798978784 127105249 67905487 400594775 105466240 991849750 508593860 293170490 188392657 850214973 31907486 497217005 383654390 733499399 16517736 305043644 222721749 417854095 2016960 405379196 986279289 194440712 376164477 810734727 703636551 323549116 519284022 12648991 357239985 465364517 170317001 999475432 983788787 250059653 633733602 259113624 395579179 74887914 497508107 170719874 479336684 968358839 396619062 540689061 37604507 738539855 50591297 539999078 79462034 374493790 291943787 558464894 873412090 769845887 885689626 111807492 268094634 490019057 133140040 149138889 898885737 886814533 780180461 567118882 157140348 381146577 860096533 142931423 53810754 213297932 139727021 471075739 149269555 708393999 102693646 611261044 228373489 104327915 364586354 478194801 680415785 385139244 718105332 474159617 362311974 837946678 19456001 361027586 776463934 755245425 998714154 795654197 993940045 266985686 890266168 59197908 13419761 870823331 127903138 280934882 553956269 648361972 303405921 826020402 396399008 934462317 738832141 899805934 74294839 430878866 890828004 112040020 859135338 110986157 921664903 802544716 538883141 116905904 850450968 127231817 867088549 515549570 453364060 362534335 723140060 192711267 608617181 464109485 672033801 128220018 9629659 919744445 815957459 992719135 672346844 163000162 84164996 849441584 280550126 291190115 225629680 61352381 354722163 690502758 577487582 846894139 695686443 446076273 642967310 455463708 615224932 163138631 61559427 958843407 709532279 746620661 769964790 7773883 987923441 409245444 586817058 185310408 447936590 826241682 398067878 928515674 521842909 183961628 748093454 932031427 836474332 852372091 610953896 93421893 272741982 117778762 14647920 582654977 312676393 103504422 211879172 709878401 349295686 404847620 889051239 898128645 72549580 80053915 302094370 467301308 117067668 568079636 895632851 421098428 1000 112878482 51349176 827123221 244753812 481293130 13122474 447441798 751610542 217553389 230830568 263939866 519606491 966064750 327680138 767450875 873377273 597954576 17931351 912846092 410390597 137845195 401901609 237010559 829747903 190283138 522995432 387959361 923054605 120237770 282818713 654549215 253710575 602893114 999238094 612374953 368754387 965917780 533039831 142839190 445717209 835851859 566028922 537211805 990425082 792349439 554900047 16590661 183312179 143698770 273631395 111150723 546459887 834470477 96310360 859376684 877148174 798277150 919085588 673147514 468114318 585422205 516449171 648990973 913428283 517500390 244061084 889992601 819845946 735063188 985884649 719984431 499412835 76060495 97757777 52368404 59651557 680947474 995636991 109215310 276579896 72191112 111492869 34062389 527533988 133960083 653877775 440699015 60271503 269292961 861894295 469884739 252478056 403645795 564937773 453788920 775633763 393172117 124630 857662728 361474305 359519555 242425564 70495942 785454883 455388124 450352493 675408353 797990336 467717173 312392459 91609935 578670892 293712375 866363763 712146720 943094833 534243435 222663418 754427148 86649142 441473070 144505871 70102630 408279286 208155791 120092264 838625264 957828751 129362022 696422172 184937075 366652372 27897790 5827385 738416644 654372594 664995186 981118590 141395148 478390113 707017832 720235873 78718484 626941618 26909031 416670243 508864079 647700959 589337908 13212224 869210782 278831116 832576768 374785038 520696610 13240493 86798333 146876331 840978658 991340516 22661140 334655213 882120189 644723162 439978742 979751852 334700090 938416446 20653704 470078619 19629147 4046734 450604540 146656296 452214658 528620353 880546537 567176217 113002962 960638450 317974712 416454942 691362175 22597125 190844766 738522939 694269641 252609927 60859246 709106170 323688525 429684880 20292709 650690828 445606541 719858418 448561179 938651651 207042107 545060007 662951204 333644866 138764550 116206559 899877840 407448852 943021149 824511225 551095449 455756875 685231249 822145886 256232332 310076049 580799289 223713792 975007124 906688203 139561267 659349037 53067718 832431262 796965722 593513350 491388907 46838822 896270191 109460182 310861228 854175379 408296687 47752562 732553705 874450237 583480978 264417869 555740615 760301412 403332469 435655194 504980399 990845422 709983844 295493281 497784068 494529321 406692800 738713436 917376629 534072911 4829678 376327934 347314792 377065912 513250902 85163553 395828065 804359420 246567469 813912972 899987211 336882508 31152159 307276048 258419 278028099 544182676 201432727 707220220 527580748 364904353 101522558 527629437 853089402 627828461 807712020 166811254 615146845 125518536 311060919 936036730 581601758 219023904 359540173 5475761 502733620 211320761 423782106 336883607 170563649 776987170 19364612 106051939 163751388 883981342 163170330 193046156 826356838 378810592 184215274 556231507 492089896 85741302 709790026 57970193 763917091 568253617 922630292 812309015 148556632 102017011 526013030 463451604 117751283 51243973 164448913 432671547 667904076 793708217 352139888 337266590 928997407 104912138 954033714 457969775 549235788 95640278 583031445 502189265 174128906 707443849 186686110 85354771 54250166 812876207 737306492 615911561 90185880 450969662 481273128 603410951 45140965 327010556 516049502 101472811 26704614 230095669 910516422 158042009 652573945 61859924 729466300 61472392 19630165 477485490 720632403 243319255 14935533 416759945 324275080 905898211 368839153 530945658 61558561 428586997 210961270 146855560 792187739 129317495 45056365 37231448 529787638 653658615 874686541 640853366 639655100 917883396 467570849 253795799 826287812 271397780 927026355 699863108 765812121 511810659 446725793 841047587 940550836 841946329 727343901 741339814 446972905 562485161 993496601 332348116 209399143 791231064 596064037 880364558 82758500 714146555 61091 209553993 85741289 378927855 107377164 202462015 101649940 884121750 702937097 218560329 694730978 913026430 859252235 676366585 708683056 814123294 701090234 918384877 741836055 892513904 190007459 374967766 464899388 723106317 354450493 55093686 405686509 696444160 206908582 307619641 31638486 905523919 812268870 75620869 350762487 70624906 201681925 55971346 806484411 960983795 681343640 564526308 982895160 4771460 366765763 645764335 371553776 671645081 147042805 968427356 324865016 84234190 579970942 975698107 95565300 813227339 715697470 60332736 563999270 613826894 140007816 270166235 267039092 235686766 563619273 351874684 480405177 764668296 638425983 854900383 34988479 131447303 197956699 416334804 112836624 907437620 890643884 66100586 512213288 232409194 510142499 598964750 898023158 154245024 355529664 854186908 528471771 27532006 739250876 395349141 846226520 842404896 98565500 95861135 185862910 849696501 441339844 88876390 666914806 79481775 193790186 530571713 649961870 310785533 552291576 978170616 175275795 145815510 613748622 553765278 890959449 668386216 357448824 478479218 818077853 418568579 894031502 602107808 485554991 625976388 76149505 337732007 402914723 214103241 816768535 940991437 484757718 160165580 798128393 55855438 653052524 208734062 72171303 5118389 85013071 375745804 436984632 842163838 895290157 808264641 328115963 982073875 825493592 574575802 759813220 711349308 429143385 13943570 734665678 963461261 343171118 530063785 50319683 443641665 157172779 386572689 112704401 62633746 113497361 423500020 339735346 274905374 607714336 995871192 165467030 236536729 310925960 517293693 839537254 900485177 791052981 138539364 322161599 547163207 241914217 514550665 297029047 448833811 594579024 228096259 557948530 963179957 975809371 645754217 27949957 195297908 385345047 19923239 851733798 542044819 54556256 930177672 756352832 560967047 952328567 66106485 594821609 282160584 112413225 283043160 695566633 511947646 782491771 554860554 860112405 416094638 406870508 39707135 478799835 445883769 924376488 247631853 322847954 457546674 621573988 718905651 442685931 116139762 452149613 861417927 308349813 732119644 131063746 278818988 34950690 922257471 51881362 770766842 922065128 368963779 986977518 416180817 797141505 670116241 601215192 533183098 259545064 873321778 688744276 655110740 668520685 322093814 445875365 671125762 800106482 859510655 27321848 819299006 643123522 113239739 16087716 560215573 821318514 674744379 193304843 307287189 632561473 382295804 743743031 267829094 962138196 329304566 198239381 309824430 58479656 83374412 502176707 924887813 294074967 427870097 652121512 847446694 639431049 579318203 962987145 340594131 525203364 98403175 615117531 767542183 486175397 20896136 824375095 997628901 677779455 743598340 37780203 543295863 78231662 205930038 167208788 39287851 868736197 432600101 526548198 28872180 824971450 519916598 753150947 557265846 490538489 950506813 630904058 136209113 113692251 724730333 913416231 422254023 711712031 593662511 908183056 873516907 126638970 743748813 648721830 7347487 447031679 198178292 872807687 344660396 128065233 4506754 213025627 618115604 857074978 159065439 884091979 162850338 789926794 123716261 622264838 58732093 714520381 187796792 167585852 702636359 367368407 224493599 126030304 991310731 608314232 586425562 783878596 558473504 871034488 596750355 121373672 310025243 790542903 428065991 636869217 587438613 941626510 68662515 532211336 564048513 544158742 516694294 576636750 119714975 394078701 75646152 993505559 886106435 682839852 599327764 92846364 407986914 869930258 664257416 28788486 527348157 598569963 531369114 295773883 323269379 972123469 257308378 872753953 270855841 958210876 219345802 168675951 182013848 963514596 276466495 309566012 491011605 273693076 873470442 523055278 477520001 78826025 767964924 736811444 908906539 374338458 114792687 628345214 752364244 20068759 84716263 137336413 753170957 67762968 740934460 308619625 463439073 430116184 34724530 494421786 72971309 828110695 708041786 859749114 204984654 402817746 30488325 872235665 706546953 478392867 778707252 53052844 218498380 827121590 255051378 826553506 681010615 806600106 536766347 861769669 890091269 708845092 390764144 318465486 525334246 965160145 311986328 357328660 665649211 51510039 622303029 831127814 61321862 908378470 785292008 116439160 740483578 958703677 298453007 444533576 772898570 228744634 288463793 712879181 992098460 883354564 32211235 930994721 91042446 406616173 454850432 404136910 846335486 5945888 491836476 5222565 807320697 467648386 911717057 470839950 764406777 203754814 78904614 614361653 517668601 670476358 287660994 593994237 605211336 103676388 570646505 36977382 207938692 950122084 953822644 915671175 178161464 39096450 615109614 258058628 172074598 26852474 162100412 37585925 643816597 80307944 912482967 779282712 207063076 963620734 463031295 457649350 781048272 982305074 101684234 969290172 628069419 897303452 144914693 140595606 647771348 199789758 829242495 308390842 169839912 464722030 874462360 21851426 746568691 601828716 477058622 210239447 515294909 709652282 231241300 149129217 783394315 137612073 320056788 335324158 902525431 790030519 997592332 77024144 86135910 460465729 768043375 279123793 540430220 91850607 887329860 112390008 869006657 898688981 260411934 463841590 56022095 91500227 652638899 207199424 653873000 171591108 926602463 839518142 910311857 145316103 376973260 341846646 969974580 106075433 635151476 387087150 457528739 28987044 704731522 237739373 904888645 345238542 288848600 90756332 402832407 85173035 653489354 463769343 671310183 480957409 13295601 933838267 375220212 607128063 402975812 141942126 143617744 9183273 291153671 629861902 135794389 274896310 415442358 825656612 194547754 405437126 739888243 14939606 747306278 649278536 920060232 872456290 1000 910900527 601315007 636236413 108094621 157222690 696381411 9367842 17246091 530105018 886404704 667374833 685477146 893651541 793558314 487026929 121563960 874440299 365602815 714234524 615279429 115203214 11445509 109657289 911243288 165084694 766199007 606854059 933922590 428298527 534384478 10205507 527627123 417915131 940051093 255005505 984589764 672537290 27628922 99500760 119197567 24186271 424498877 332547268 885089187 17041155 42802891 38862736 152017299 668225877 952331908 950111737 383842140 785287995 879987685 879998563 767502122 722286439 727341368 147805897 611995584 89215187 72962509 173991549 69291123 224760319 533597676 516342222 937612548 6780954 506234062 54486939 58928118 8940452 5804783 984423223 433222682 3943238 692489436 136880879 620797930 231495667 531467698 90430132 762643871 298129960 106781318 66943213 235417960 148246780 611128009 623050110 84211505 774134052 937690138 142034164 302389730 465687533 351789265 15556935 258671874 324487913 266720089 350389662 402289823 348448104 755471964 802050617 19400924 766539781 694838826 846510904 925995102 900651389 868877177 384962724 673964759 468965997 581130794 431712902 685791165 676051097 696167218 833440543 316169172 230172950 254292692 18892632 219022024 406962645 188743856 497727586 21037849 123973831 431757401 102769475 893047526 733835919 589555396 54572361 261977422 129195773 178169484 502772967 584854580 820447825 105371874 786080493 662662945 384759278 472075986 711469090 996817457 517087912 116225494 57692199 616120854 249034565 264917675 148995545 320642681 93733419 496631903 886626958 894983727 65303615 911304558 639429562 1162948 454348242 848637062 93057583 633811836 34027000 952815222 276779925 248773167 141620274 119240061 7874543 144117123 135944767 33590642 18488309 782509177 591405472 511479193 33958725 423309084 985843294 235676653 13556042 631674123 202992388 348152391 114093491 35869912 532332898 272174350 354199515 80822812 156513611 118076894 351543916 135722247 823487141 884851953 40050542 46098593 737037253 462950477 251451838 381187695 959260862 498328894 979006510 295011388 980472494 112908622 490820703 323540768 939591772 332802053 711174353 730844259 714520164 694635069 930747897 107631559 661937267 210038185 307574206 561394796 272569159 197165317 602985466 439871996 828651932 360096580 575686446 151721064 149417894 301438331 967737191 580230105 482883040 104356819 749618866 688131634 123561243 908908859 188871199 998469073 25149922 530607451 942528723 512129978 285397911 790667491 858551033 72809930 717277618 77515880 545176600 193036581 61792877 3732719 700448752 170855831 19681321 135788632 948258631 57104445 972682056 622059619 680838523 694415432 732007534 553439872 402358451 945526532 790382930 140678547 532817628 319215116 72385593 458093918 11652006 805991946 242296105 63781658 602177557 226474374 533939617 509917676 740513275 435133617 761387865 630129579 229236944 671185365 36208002 924181619 146530006 428613013 844164409 439854784 141632210 193784958 476689064 351486480 771713566 569005726 607898559 277643092 534665093 829065471 792683662 71435944 148919564 773100563 696045761 928617242 199571658 427793167 617307420 99338701 241088837 860590558 703128963 852037437 138921318 572236176 101929721 760751771 680773505 414620804 390529187 888753003 169438396 578757291 150179632 771095614 686993095 978949068 294601679 613831228 572780025 765643367 498419845 660905161 361134655 889701271 41298959 55110978 748045257 963053738 417663824 483949908 917734613 43760532 504319242 339210160 326427094 624661035 942425769 829934483 770521935 908523295 253443455 287321749 117799355 749008158 66468414 98056544 867406599 404394656 777376281 141615371 393044822 282280235 886518737 873459221 715892748 106082460 71769498 675255425 391128216 348936604 368702376 292092180 343015763 288295452 194176057 121889974 842130090 898288899 642523839 301929584 999703843 897541062 795985206 399237021 291703048 978140729 258122376 207763118 558252304 451013343 297529473 433621402 599525661 890760412 408583092 584913175 662519253 418202333 585796652 944428907 484682188 926392400 696114989 917466550 454019529 612058179 113560900 355700513 212980202 828625505 965898488 292580568 542715068 913986972 291644071 368373669 561404709 939563215 142009513 818474938 597083910 98965900 924303739 776888401 273700070 293217165 216706703 401048400 86658981 885805531 351020298 659187109 16409152 786452992 68294150 803109059 142776958 412792722 608347572 580300288 919941002 102928770 443935055 827927050 792843303 485596554 705180687 556083354 812204156 879466764 438443212 5602279 832807037 421944797 388326679 339261851 774327296 75083345 278631123 700592142 665259989 220760288 25094945 885284031 224888012 8943585 438401528 19279275 222052746 303169815 186968691 948678884 864270935 705394940 563283540 516229244 22258024 812423266 688504969 921958090 674016827 59331484 689442738 51702386 148604344 392183063 177710293 291351348 923814378 149111 755906988 885606258 790218182 696225324 152617089 934940643 92074516 820978514 6677122 774258438 371483799 799990282 475011469 119825681 501838985 803116157 47153342 34053020 968010527 594867697 286906922 141820552 678245305 495960462 441308835 125629343 172413212 669352667 533488076 186569907 498629111 754258053 333203480 539796962 296726613 23023325 802580413 442691690 740160448 935760238 467803714 535127367 157471483 422860322 126261178 792844862 6082167 898890504 845664689 658830788 320915678 396302870 330248322 857262573 916586224 268681873 932641912 656740301 502657397 783356963 652329472 78120682 828931107 555354594 193882524 701904551 247540807 705646104 574266415 383898032 695967707 366133089 782912650 501616099 351674807 82333013 958317963 329375144 97293807 171681440 432332707 423017178 727462665 425393496 48841254 805443055 799357720 115830868 399938109 582872816 700075111 600661234 713261595 222863284 81178596 576806571 873099951 381470109 432057588 509157084 952475664 889245713 94993445 262542738 546198787 295574529 538047075 978518751 286091738 94753897 795962054 162448085 348129006 438484149 319948252 806815988 910770042 857535144 369202344 18638902 369733345 290506269 869364153 200815449 680754555 705499638 185518335 751769795 52889461 229089206 298953951 624359481 718088759 555009098 775856561 360243605 305942128 10029893 700045848 511062268 958881568 469697808 799915466 871130073 366877534 105917383 163208498 968181808 849037836 865213124 505347685 610983952 55354133 41181061 713242897 557935808 642227520 311329071 74263944 253327416 171023547 331008966 296936814 156748970 91326929 746697273 874433862 239741813 69625597 223482831 656209358 321015604 88891982 576173857 743438602 913537068 987782485 181262989 696745074 814646674 103597912 60465851 539973376 147031951 490757582 69019318 100854078 906627122 343302450 812830345 903750482 827759467 366194067 642759673 172923788 16822667 71565679 26233968 56139431 424113038 813834508 429550200 189522344 15394882 691847223 902395943 470178044 72389151 237946770 511792056 512308538 362303885 627993490 9077229 809241065 831528968 778329565 814379406 253347089 450600081 14177280 315757444 173215737 140083478 194122110 796780157 934510019 781422033 110283260 179263962 812585807 135639522 11327123 491251342 876613439 444249939 11171283 53427920 520021064 79959888 572659210 835100475 230905547 183215225 101860202 558606043 838586160 281053843 892290074 295730621 472179038 37312695 682637462 275489191 89920812 770953790 671935953 299313292 662975514 706291796 338456808 954755730 255176271 718563421 357567 691827421 864604846 502691422 13336541 913853271 574230160 26931808 129516372 801435590 663271169 103935979 535714484 344583976 113946080 90488685 153994689 573506552 728784094 896172852 449800817 297190539 544512665 88709459 262467466 916172174 46862764 221227229 772010970 117719329 899436717 876943890 764407382 905019956 37492672 433767168 643041822 713145454 844099970 735855627 506674501 384226575 629909239 698329775 868778095 761975298 964045798 854798897 640952684 803705999 150838350 731928366 779829816 378567632 742496266 549735712 944232155 34867392 38212075 112061940 946166623 389378022 396545724 802864106 871509147 339716043 480677616 452124663 503218337 642029666 125155604 301173985 116709542 900987561 580901385 659343498 150388888 569405540 981645981 66114765 896591794 575102270 755852008 713912721 867791413 65404732 312561591 535176342 726995948 605748405 528986788 16045141 51298239 230140191 424486359 88399285 261071658 424442775 581066427 618949900 945676640 239396757 954066832 88782292 380365199 65898796 621622243 697305756 698712589 193681179 146345132 447093108 47517793 652549891 719141601 104534331 702600073 100516392 364282924 308190473 327778067 80688279 715763669 457958686 468134679 596501245 589022973 729516042 780231044 144139388 494552700 240683372 842923032 252746703 942235482 251975524 329394816 333105010 596032300 926630323 453617778 815302450 426014554 768271297 98247470 915354524 259990130 65958678 178360175 533475334 976237192 293054469 393501533 440136455 663507031 351056157 866381212 947050244 786904709 177963546 945637435 16577631 625283676 791587559 469751813 537261775 306601799 39343447 285648910 679914037 828857665 104156602 893176682 59739772 845283138 368266388 594033800 750325475 42787469 431489987 910771663 894569222 842539957 942870776 111424404 45616995 975851832 422530059 340570962 78242800 14569945 447476115 619441828 264843591 87869779 45500704 981724823 47714318 90408114 677677959 965689356 50735522 314103199 65424530 510656193 771438089 506177492 476728968 756772631 309924604 84797804 713524744 655274486 323432010 443210621 954432949 914263001 385104168 959333588 278850613 206977546 715887046 132049210 137551475 729728884 541365972 218270267 966968199 1000 228788056 997330837 198121057 925626965 741928701 203365390 185756779 6937537 218808177 702144454 254976798 593614212 639788251 933693283 486073220 129040613 390216098 259099391 943323820 87046613 312464609 492285300 552801854 226729206 193682208 789817466 457312305 984596926 125321384 191325048 16119716 87870079 428985725 126793036 949029740 796710087 568984360 121092285 441300737 931250433 905469702 15575953 56946310 509887153 234210831 624374030 449426625 509719912 613658133 499463393 816319810 176409012 105665899 4135630 460516292 601197475 569639934 467303179 803080627 353165559 888555984 529550608 638290205 118272801 927824985 139240728 686379215 618504217 62628877 586957222 834505320 249149550 817500046 951836589 642997009 341389566 109601565 769862233 820017619 402169637 158987337 192079425 412168437 286665547 897098349 78871521 624323565 454255181 735850043 281370198 673046266 318803989 705973719 957803221 161154139 77661759 872270543 597331608 81490022 497802281 561112240 713917708 530990937 79091831 426458757 38063840 137239934 185531046 566194121 163210293 21414410 284131295 926335706 184466587 219584253 227350855 19815161 145710453 690063933 342774455 691855279 596281503 799134763 193805466 276939601 497354706 667057950 704132359 269646016 353134415 867524071 46016947 416404131 659239947 41769569 109504501 698252964 734396794 572893519 868081786 969424330 998752601 722711975 168049777 507354195 380133042 627322410 760460414 59441424 63959233 540953973 672129147 401824414 679423236 55824615 130303618 900210446 298476167 723793338 563694443 832747904 289696603 37325323 194295837 184385136 534752215 325396659 178050992 956553619 848476702 384358248 854965571 439433544 85559322 280920273 140513128 977106343 676016683 345904879 385527274 416738583 950326057 323108086 98747024 142766641 424025219 539062685 997596074 430550301 624454160 471096619 234758772 473449619 333712334 996582355 838908389 71784306 93325977 510507191 262268258 650525654 628998969 951326761 254128268 752877356 783647966 471923481 932463793 643597501 291342106 120098132 735539061 723823482 616993964 414751730 889980484 688050779 155504423 685475835 23644735 680708718 216218692 728862957 779658282 905434360 367176975 774560074 457769299 790083790 979865052 735761680 869364191 489681278 960654242 611178397 412742257 692827316 779793799 247081837 85111009 665008031 614524933 470171885 290212100 98495464 779864552 441104741 302608658 40809945 873828088 69936403 385909832 310606763 251619683 499162449 60054093 874777644 117981604 888637525 69388767 49661710 163935899 992217625 130377703 650650674 2129566 303205281 487743485 20401705 643317731 304700725 858104195 751010933 164866771 224143383 92941623 557230283 56376425 817060512 773245966 985186986 151248371 856273574 52477386 656521299 32032949 238563790 141281912 37825523 928052024 872694361 5502 614180763 757285451 410126795 872994325 437115615 702156105 351890038 339432688 830631766 996122149 177767357 585066921 137678163 461323914 670983037 31543419 197520135 682983394 758905477 236403329 788591507 570499282 237662732 203767737 976290999 580722557 302979065 725205917 921949479 166503494 549022996 614036618 839136852 335613602 975344363 988501634 837959470 554178704 303129771 936224270 249256902 714518959 512669602 855963093 761692453 75834872 98668549 243984743 394303604 751823992 835173160 445166774 347833307 530640980 370094356 189597638 792022483 603221944 5191799 595955888 491910141 471006246 167943923 146149017 423804666 39433754 360664010 8217207 74914411 916916707 435308335 480480836 883044558 473807809 758616529 341495014 270517635 356195322 734737001 514673983 264024068 679676417 781138957 454731935 224989601 29261936 688076734 534891230 331660580 330523039 646906708 655399208 372314443 324513396 482214924 288102478 54269729 444291209 248402004 563554441 342060454 407978708 81102613 398754334 922917993 91824665 7439685 11279032 899313003 18894877 315829375 747187165 586923375 31308176 962077035 145106049 19278991 268292593 121733161 69106670 170243668 257397793 640203171 819376428 862932009 245314071 97020112 387523170 915713322 289768974 105546799 402524618 980194301 848464062 297796295 906301879 129602030 13467106 595071460 116823899 58125838 934771325 202512227 29908498 127063697 41086930 273020028 344088 450070136 902578141 952524263 225043731 236843473 353283173 809297150 803095393 930515311 565174767 911711535 97633946 874008222 429333246 943231953 201675198 909678021 196828984 984585504 444731665 505011428 264741594 191152884 811235536 165994529 519893090 364006155 905907307 665129295 28559062 27430798 455675119 969035974 401348855 687841710 474132481 396170743 246859645 147311504 755823133 65138859 702501986 236389297 547739608 649394491 908843131 807074525 893741422 234121525 186829900 654597939 53278360 671038389 680575863 646091048 105501139 973437315 711032610 90926602 702581804 118733617 606822976 707404073 658903982 498181050 318056289 344884203 550879590 283044828 672027145 998129733 261092150 461508069 579477531 919603813 188458031 95975065 896207414 911199005 780671391 195185791 990633329 188232514 301880698 802970800 171511873 701568230 613452215 843248729 930014557 461081674 608925453 574080523 676453595 118342247 14595281 757457641 845314746 903296019 793306447 342618320 647748452 161546377 45880557 149356810 407161351 930386729 943382318 270589567 781827338 581429066 145136682 867370523 861766491 842609989 804441407 650285772 44464222 857190593 655041789 136117489 332712891 868954301 854866374 306639914 321235193 182506231 369756806 101028998 944757837 691322002 644542296 889313560 191847841 193487747 560243559 847807142 459111450 145027562 60070622 1360783 750581394 272482913 618566096 114170997 864484108 576676900 126115999 18410140 758719354 95495708 761065985 419426238 283196918 466859938 947835567 141478951 968656965 751833038 866285145 361685924 157149858 410285834 751985204 987152506 528713785 548111143 996585123 337847615 143160218 25819646 377516375 18231096 811704851 140143299 564385882 862162884 202536330 161599738 913174154 913691994 771112026 747918786 686813279 32413280 104989560 70700579 166240738 10710338 187530965 76284866 677426532 173848407 392761325 340999425 498459257 949641540 243718671 612539177 692867310 636672947 972071835 742595765 199513142 980311350 527825763 516766660 735119583 215663506 193935269 598774625 935415623 265265615 842323692 647509826 694626201 635660021 124119488 972745670 565179619 915311481 111866937 109246201 118153768 324267055 67630751 219611949 181846024 664723609 86702524 258371070 12724637 272623646 969018055 742191748 995597365 895722189 108691760 997674138 461737700 236419964 688127574 581915353 854809395 530315263 870558844 472765136 183417945 14440875 102014933 106011155 959276720 208666364 113360303 196219939 451398740 496030620 160603513 390820871 441365615 263895580 309007376 316381894 112370233 233819064 41100763 176725405 103001210 62222792 486465249 554218544 538615321 726498463 509669573 497112985 343477666 144068367 342033036 260965413 359720799 407219715 319031071 582437157 322794323 71629242 584961016 240458219 535267680 758646249 527677467 960077442 559548043 122735252 37670417 459947543 896147614 269496922 328613756 714627692 367756683 698171530 823923903 32432874 433984827 842862886 759738365 196582323 800265425 881776733 811213445 50218599 579012321 212033928 699406604 115473791 769158444 755665200 441573613 984581551 196604425 944287060 966202819 693707303 782462944 753437474 913011977 753705346 265608702 309209336 900039599 352733449 788846114 292811987 801473525 26233322 895051431 822765392 435830642 100219395 404715353 828915037 780490294 138283225 385297688 909281422 568468294 176643357 89143636 273663235 201950071 647966524 590449100 410622901 282012398 964977696 902206413 386529079 40316060 304366814 9797682 488888724 34880940 252877982 124433857 503991341 720739133 379669314 207024664 71864178 893688722 124177220 943807399 136583373 575124911 427351344 13645936 912736744 131737731 269630838 254162531 581179378 659454443 572797001 851560734 689200044 9224993 470453400 928165475 75238382 569035570 805916928 673505002 400367332 822112181 964749989 267392353 785897574 745273056 315127191 649068948 486264643 728826349 897127470 753005513 116117912 329872043 680205283 472966880 554272986 968261197 840189350 69536534 29919333 52596221 547515084 218722216 537140665 57446304 70633331 470327280 811159224 834465675 763464513 702149584 614569586 313212397 809691671 638627571 961232665 757778111 50796019 799886478 52406224 135951481 63246900 902646383 246638732 569312124 16983705 991090908 1776930 553517718 421550288 454175327 183332478 325076750 178769723 743870622 77042349 576086845 822857835 411019345 670590582 144194422 187852496 966846030 282457153 238829288 598622009 154708849 874437892 309134488 206281713 529094231 337326058 715493089 105459992 403839804 868656935 799957766 746533956 454470189 124768265 122147234 903108505 589180664 869645047 993803246 318623720 270002068 760677005 241178076 574080395 636451376 833821463 353651462 619092728 666431587 3726036 899212727 949107863 742344525 726868642 10365021 575964149 243458617 9912512 970067372 980637458 578434961 579457794 86246293 403107231 662762940 622854456 79869250 308599525 433536744 905114317 205019191 441014172 94444603 219868763 822950224 289430349 588112101 914759101 337078075 265062651 843587344 738384076 162049220 70164130 672536428 755687273 646287407 15619822 945815526 261872627 757364633 684979540 31823976 315240630 383881499 247031164 653807903 420927757 765198521 670118732 424628632 558913995 210414860 814562952 914048561 602560549 400242601 742467640 264602769 21818209 790933943 370082335 391981685 596351449 651832259 291521646 657324386 518171980 402177539 115480457 448927992 1000 867601310 239158652 950146192 163246644 801052112 416759478 498471261 672240118 660810243 810708478 101391771 917342617 831270591 398927136 116700184 992627447 706439160 516416957 64034389 36894115 116289637 414778475 570533424 856110364 727895425 875479674 536624639 120091455 82333155 494753896 624603642 773744092 956786864 105719664 252711039 193016522 612262510 569345344 662501944 552420714 998184500 477850749 397723429 406832821 62161540 411069152 810425453 598735413 890040713 190396521 898431105 725559999 723542883 961417705 58606264 599917089 675746031 181736804 988907823 305525385 121512506 478208894 855435303 728053392 765442637 337287092 670011818 604094220 916292232 911075773 944698970 836617550 902319899 607411878 110034310 862246754 324112943 855097711 513823743 394159347 804837090 848271532 493935182 126234815 945052128 75042650 173770385 1613791 382202662 602806682 79824011 357744084 214516888 350198759 348533766 148407452 461760183 686656228 521762088 357867166 135623125 30249531 516899830 698955180 384931956 64315828 124578254 419264947 56818575 889520234 396089873 420137051 453569016 672511711 543008746 453841368 489319765 770304398 491303073 607914296 23126487 948741276 128179152 128183315 51608147 54239118 881802028 127820552 466600399 41344929 866404569 192008884 925729384 108854202 570102901 659337991 545127801 823264871 974824078 492410596 261939360 859596761 490459939 369529914 192474016 495722861 75208314 629938011 837703976 132525020 93397328 539006339 664702044 564110693 209040345 681749721 448180671 425840522 340609208 208170668 1787415 349638346 715570068 225638673 911942626 80203864 263876881 993499719 804664464 227128566 272928249 137020752 473159999 983258636 660615660 426716802 69447042 957174125 159400859 71766311 297216997 28868599 100426835 544724844 33071302 604010313 686049395 600384925 584053494 696716110 81415669 784425849 338680758 434067929 409140896 442127709 990245164 937328636 543614382 962344230 786762201 110998948 425705209 612261784 920843857 892150989 786498515 627016198 692208924 292353239 117862460 907556736 81067626 630741354 674439641 150518354 365753104 529991529 886795075 991954184 178956678 65697101 54954408 447559083 813629649 880221208 714107690 392941069 586768907 239071661 272901602 523050835 367499188 404474668 284512832 184448310 196906007 692940680 824056439 972566440 726240651 493333874 172590646 545209359 625583023 935980693 815628819 61986573 340761320 34316060 794966380 386977074 829474310 965761441 431050615 686085458 76150272 33443463 76378993 429093092 888407655 751274735 15108058 22902145 89536593 315450653 43985835 359532597 156480123 614865270 494505711 937320742 810231969 614869454 275404916 273065741 962950922 468386796 650319508 276623591 448887590 671263993 601049492 946172669 702374215 232088655 646733295 982260532 158801859 264207306 77201481 359711528 875091925 395951650 626753643 163352877 385303649 682723698 92798003 763020916 925968840 987523080 37928152 393256914 479715197 30789817 126040625 131048064 288062882 203168407 356820585 164029662 148452309 445020397 666448008 799430726 264590605 780771994 575666528 374602121 49670201 970948566 804154271 495286249 5594110 411727109 79455338 411852279 189636399 78656429 317501223 29904704 527243517 186426815 107724292 541413304 611605788 697155700 923985126 859908448 5838056 874874082 404721179 89224586 379622616 584555866 76262395 463496495 240323349 173184402 219772059 9749223 421924909 696718711 981386483 118392721 167527035 628446881 7775159 791668856 662229451 92697196 12146613 69797887 839391075 255189278 135771524 549562158 762764076 663469532 958735500 373726330 195882511 115903495 473673183 696350118 147775637 67590722 216615286 609592417 728369844 308628231 591426871 315227610 35958722 488602969 72424236 215490851 717231268 988058540 497402799 261503612 138431266 38958733 414189598 595861126 748978799 948794529 963976665 396886731 559590517 932080982 804073016 889112374 55617421 421785304 225429350 61249209 916392779 66911261 523617684 85705545 380818257 836487120 668385608 795584523 238745904 876531044 96003126 68969885 707494558 647673559 167684662 112540222 456903940 911839409 46261798 220937225 499223484 841203339 399226263 39509343 169655984 41511474 468752852 692015419 603517810 30016521 811729834 67255408 349764817 930729277 3729808 95710615 504043931 437354362 281707197 87225805 463663321 918233529 238949587 802260193 122463557 432005874 306390721 566964262 403173408 136011130 272417334 58884619 498117073 210934425 185778701 352302143 232882592 713747374 872388912 99573363 848826157 490787127 704979314 54275912 146509705 967142334 468687283 10081255 889833739 388173204 5484258 264306333 514034515 618225793 345284765 363445181 751581061 192533727 178231598 700495899 671234817 954664230 670129264 610011299 179372939 129509215 785972210 376797972 16481326 121418406 811212408 618023665 971974103 98047899 294373860 541905458 133776443 329549995 522550162 86410467 615243742 949392855 30459393 320238269 893633347 939337170 526732743 149014556 215420139 389875471 726252600 911324975 90183321 832521473 952143925 936806609 311076327 873311821 576292279 876402583 318979775 673197753 64955811 388658518 128915557 568635007 27935571 896157506 485915951 756266793 132423729 592818695 505172179 198892712 148055959 848298116 125722012 318562075 79616578 777781759 100587831 828993975 413057457 392332519 400094381 98251076 214583194 155826751 530975595 269819040 74734188 576578122 834572369 522634314 190834031 601293376 552337194 432587580 421666072 230315861 459717320 893178268 602400234 812544346 762909974 829750314 644896678 431031911 889479123 164767148 116597088 950082392 971520601 33395466 62416827 322161789 18806476 895831401 565676680 645548798 935000688 495060100 26886631 173498158 416773181 941520527 130322470 412392961 494311280 270875591 140764601 266589009 996381984 921260121 660109904 997627505 19396185 946956151 411109368 796802436 238961713 816238744 764387183 463651396 112438734 405804513 164502766 919075050 253450652 699888366 769246201 326737862 570686656 176051521 694352730 89113435 417990511 262546815 741421998 518719530 786204992 672354993 139237790 949793645 91860864 822745327 677100870 78932635 843354972 22432163 104450523 29700745 780111028 955990911 702522815 685563465 368766873 881142767 24655422 817065662 762050842 39972316 839768329 433678330 645643342 619486384 544594272 175938819 754499204 227762548 626244414 633141811 876808810 886333442 422442225 518336319 547202889 924893323 267650645 497610051 300084011 203184592 574212633 28868102 926363209 391918157 98083100 122226987 521250941 460472183 5335829 116802882 12804248 13618680 978436849 865247610 177710794 614773707 803440721 505470623 970053531 184967993 95205568 35481959 99748195 569665742 53387261 258801780 905184575 10019223 600531488 271551375 977758632 970687313 286352261 301523004 876541888 302442434 307770909 919176096 5758856 148772937 890318402 660302718 424330754 261738556 960452848 36171664 743293543 818971299 409587377 727166779 722561930 254515519 641278669 33200948 104049475 44221129 697691278 326108140 853731424 568551124 125590884 644388526 181928346 21884867 594401460 927557718 6416026 381595067 680428721 700801634 659489208 146786157 633959369 590303085 407346015 182717878 630526738 30504373 55635701 625724029 758009865 697479867 34243597 510456257 861531131 311615128 865401513 899239825 132391444 860459897 119401816 68832850 27254808 417436916 22224337 474452278 162485110 602610194 694362650 146512849 903807092 285811657 637791353 305097111 990499968 424760011 465547083 639037003 708008750 12278487 914066170 338579224 439884842 649909075 941900314 582602092 38686880 605366023 782819792 816511720 888352761 607106381 417083690 723250917 443705052 314262755 178372516 217821969 904486813 644328276 312991801 267819094 724488514 373950457 530137079 558885787 493598953 426821910 145307909 328742433 598460446 895476625 252373662 740155610 44708678 880846395 150981892 734679712 669082524 513762961 137863345 18376818 657434430 256243137 760301446 38663554 636484314 533848517 36918387 243957752 758091194 310945658 621679173 125631180 287627073 162528942 219852716 804726992 230240452 871191563 72844026 146560763 322224707 821145790 794571028 866550141 267624771 290133853 444721159 84779126 238551752 253308228 522127598 270159799 773930244 967201215 736653834 169760057 779892714 59938246 249309232 979835994 769526023 994939195 504723583 773852855 337551731 922619788 585177451 905346216 733692056 494427561 200495102 307379122 197536903 57910853 606046899 34344574 406653960 630152496 959676546 409731205 716690962 883187889 158452076 108310155 353721006 256898906 570558094 140957833 614230023 654977930 989975796 193924711 442646507 215866635 88764616 602007396 954036824 203253671 409476103 666037925 199649658 542277082 922250177 231248722 749425019 591647846 595943337 711233667 596723841 514616660 258491071 230432211 476850464 479672769 296656479 302864090 83001082 873474031 810839697 835389512 685622750 156684992 3313304 343785799 531652611 895801942 806055627 762664193 631421075 697503331 840502107 70415258 151905053 217141844 504835147 894966949 667786574 448802590 82180120 365193285 291192960 419185313 150369917 641472594 764567391 421337064 543623449 272498747 311889637 218561227 457366970 569175313 791730081 924007776 551033628 540202572 723904272 668104272 870231831 440503769 86622674 330833877 329160916 976336521 872484717 356769168 917831697 833747875 660821226 34974808 261729800 629258479 149720678 60727192 725516860 756777127 120513332 12329415 25835036 197456846 987690770 856872672 416062444 765664815 110825423 221499764 678844016 952871042 569240857 441891648 28168046 666997168 659713616 372288092 958709094 297856236 188000844 550484386 1000 201334582 869654889 315450029 518581321 167736028 26020653 815156274 894935144 934049963 117691655 938935433 529594895 959922273 142239420 66321572 333018068 745901054 112658818 188514228 68070831 636867240 539410629 920257285 758010098 800769262 494018609 123597122 930510808 621224061 530577597 21819480 311947330 271621312 760466846 556475596 123932227 280313078 530324379 865388159 975456342 303082810 10971314 774493647 462974903 521927105 70293839 648461720 940747428 383548910 736631278 433091256 814362661 337676705 886822489 527973722 232255540 631864377 685236586 712480681 947162971 506169603 424961466 29653874 171232072 16599722 278488909 674954106 813864709 866652273 80754455 232715050 884896737 754991479 855462185 114824086 92880558 517930173 905047841 479413022 548122878 107760065 395062765 859987451 68150657 214395521 396675124 61754577 828080411 596522640 963440439 105192843 619256488 97275397 242842993 344634006 234029973 118425981 107127451 882357667 135398385 506063500 876804548 84904235 405060593 33557774 541434986 198756342 928607811 521421198 523652850 449733483 415201358 68595189 590894038 444071524 122479073 587149296 915495287 442763727 986705730 223718737 581544178 838217252 52599926 276624061 449639303 830139334 165122101 882733103 53072389 412523399 910564854 26214435 346299879 897777020 680248778 750664779 389071279 846528437 109340548 811517677 100592924 844066455 579028992 644884371 522259084 850255392 543079222 95505212 455349299 636109989 847008534 213880587 325734531 722449600 484750673 982628803 312320388 413878986 714600677 74628461 598867712 779379406 88274967 286488236 144624484 316710011 850596518 702659178 610409232 906630597 719622746 76523973 391663828 542661644 46145612 206040295 414062724 545116170 463715531 26307733 452492569 492509394 603881576 315578303 74062514 410699378 582608986 582557310 28122133 297918160 756300826 426061874 887871351 72593623 240052835 936552984 202484328 245576102 297330795 401867999 264707838 955651044 187502774 288091268 620750858 292590913 244353938 761560538 883741225 212338635 105157016 76431995 189092189 392713204 155162934 27285001 788583379 763177131 622420396 688275754 744570137 64386155 857081382 35418424 459991719 105622649 792043592 105316603 137452074 113660362 127533754 622424333 976194714 668146621 376682750 61902305 916714872 468522610 281084189 548135808 918667019 911705044 222387929 663437539 366872933 978056465 398494671 311180429 69337365 730220965 158782199 389883947 493191470 461515530 247898879 872643398 383047035 196867589 114876027 9474860 786037811 408368414 729366851 860204160 304468916 721616298 844986956 125671749 164114914 652362644 972267358 452528091 196779345 39287310 582668593 505169852 242112612 631947140 952445582 64775501 406764157 890233877 542734400 86622141 464469380 548747985 330203168 846259896 50018844 247819962 708225671 522361638 904824752 806770679 420561038 881672416 645261722 233569355 602506542 126700767 143969425 609217985 139279778 945155726 891883579 627675767 348645051 429250572 477874139 466238503 458771847 807203194 197337615 923557934 556330501 361170377 97571215 162185855 763239580 929046293 125381624 600396393 422142725 753705642 891904606 20436960 365487661 28386620 496293962 87731896 626681688 216345724 111506019 311100574 47108283 119869211 515303390 543458240 77855584 690944166 518985460 94803575 538694405 636061725 156779920 586252907 664392403 546523765 694803384 766839261 772949432 166681797 790496304 13998042 539957715 423854107 134593964 331649624 657329637 629051737 772137216 47574475 633425526 673095155 478321754 282186533 729591360 101164966 64217787 883802957 850287161 506484783 191346102 167702896 860393107 499599253 876078490 848620622 827162155 321345860 383497459 428870549 40813057 458745999 561836816 993117516 308567783 878909506 686766429 390472554 349255609 125825646 66947540 706479018 483127144 537048908 700910581 876493749 62156816 2167802 914032360 468034157 231491264 643747288 84161856 927107864 213793857 137231415 934010235 281391352 949248506 146635460 392203034 217929959 310111121 917133125 454036118 487052148 193021127 845303470 627959131 36554066 252265612 538716999 62447668 602001668 93653259 637275670 491921915 57507533 133175768 92995223 865724479 653185910 417348630 159234259 309920451 580519696 86672508 363450204 860530183 116271816 728420530 640228734 565937411 403068114 121908590 638265822 418331986 267662544 431049639 938992424 767211022 85645748 767723442 729916137 126298424 592075685 354713393 161794017 143145443 368478858 734602312 821367593 859311394 888236092 245304409 154822898 74932494 210797257 588611861 805333636 214355869 51651606 273118448 540842427 887846842 404814521 439376032 441824873 945363018 61911931 434253435 849693851 852503834 543037193 764548244 87104591 958856105 987039046 199033956 132848415 684726498 218815970 961267304 872492049 99437637 556720137 571207207 120832174 229145036 219075216 822248080 758851425 640205606 446517756 239781525 188111434 37248303 40137208 98752051 213474879 13964551 44761374 668537944 531754378 139622364 53855538 423991924 458837837 536236370 930340128 44668644 333476081 626668593 124221422 320390797 265565257 998464310 297984503 322918597 726225771 21018427 262316160 462678833 585031264 25330105 36575030 671972935 131908483 374145729 853221047 832038223 436421192 367713200 450752641 59088815 4786109 91282344 599682549 930436642 430424232 29242984 958072764 935040148 20170217 795684048 729782235 858698522 116273901 261812178 704681623 288911188 443402494 342793388 629471325 604545463 695728811 662603611 538648021 272768736 748041093 724050876 150984196 30258229 580335612 139317300 202381177 689654315 611965538 145960479 285355218 424377506 643957537 93309509 723569352 715146980 588221933 658292367 1869562 945533040 911737571 876628235 5777071 129985065 657620359 503251344 269564959 512811391 742916231 137136091 114265823 410470680 15389831 73839754 639181314 369488496 250609500 437028482 333743313 824140777 305350354 981100519 916484517 948048811 387234413 264737892 359202440 5002865 830679055 79205292 21004430 753381921 720200573 903959798 985474820 934958272 32361313 898467299 502033808 377218947 455918501 80331785 199438430 95784254 36875116 33001718 525153068 71120683 22578063 26056346 667143886 162422909 171636441 47746357 808906336 934852479 46746550 454903406 379888922 528293050 702839203 872314318 633829814 969020774 618915018 242592943 438761329 708605427 408875146 50738754 113882376 56965594 260278289 342903778 524584666 172322889 149647305 864349542 820008458 77414998 686172951 762262545 567536435 588666832 277359643 413141932 215795490 952136084 678957915 757305088 115337555 666966326 61358601 838937022 942304857 953839688 729015828 737592751 431912890 678431180 138241856 449102568 609323479 486300319 803702074 213599747 111738487 350160341 324344038 732630338 297217295 140187378 779748190 132001843 546382758 99002877 631910667 407303267 510153508 361095866 960509873 115744389 394947305 570262386 117520831 262487406 279525867 631159879 220677408 890073811 112941634 887072726 31946698 862773505 143953282 277139329 38346482 248398052 356856188 492381223 773616053 222522240 861244517 769249396 35124084 673164056 195278308 295073637 770756867 24185072 976575229 688090978 805977364 46472591 461631517 352408867 754798472 207715053 716543376 382894501 310797203 347194025 471460420 191565500 51414603 395682546 674260507 882946747 252586753 897707005 8959187 768372212 701148034 161904695 6783016 589886850 244190067 73578282 66290618 88486183 209379154 766534397 39619113 745791316 43198359 787738825 109069053 516621221 13018748 339974317 253081164 293658791 958140441 11483079 15502165 391053724 237203216 471302900 869400191 67217850 515062449 43652740 187686755 76867413 605466919 440096977 930997828 851109134 726735684 870179049 453528201 182604272 104878794 600915764 554579848 687524683 213583864 676125418 818929705 485501900 483614020 830560539 173908169 119525787 806801497 422628028 386160140 948738253 358096111 15518952 173330537 253443256 948986518 238319707 778547808 631114559 547483851 58330039 346509160 805079370 627668585 59297079 922829282 735773441 806329380 534256771 554198451 728138178 832115465 443318221 876810950 510965162 50043893 658444548 445466451 935459467 553852688 68527493 501977017 340158798 208983554 161091699 44635741 648602727 581207611 974089379 58695702 2134355 145246795 566793402 661383409 775693671 887077899 425119585 547047007 962429769 863988471 238983849 907012605 582007031 997401585 664743768 439220173 702744776 975522721 626784907 96577899 479165001 369768809 82026037 335962337 41230347 186681324 147619356 34947499 619421814 573852896 492159283 134288045 790899182 665735441 522238791 819267181 325332643 61934731 817508108 131831178 819262010 730205670 964166303 494968366 700568237 907366817 101841722 844984751 240521550 876951181 279242044 338991362 19553038 974163545 127995031 142217556 878160642 328015613 882108804 888852128 131172611 245438431 518136348 924773349 277491480 611554623 893853431 730536809 282223497 86293693 140477678 831726649 357550498 566500984 102103968 110037980 162217095 799036788 321855203 95304186 803444223 313230304 532859873 194497644 2645040 329761526 527783242 626732554 913147986 257121270 218943686 647806147 765058280 79324315 612560510 946349512 354469144 95718794 962165586 29794495 821141600 162958467 75896800 274164608 852328719 923652965 571277882 868033365 690106721 831775084 493938193 866278348 438955173 336165207 777103356 597853324 759417678 505877190 442468324 27789691 474018520 601322692 504720352 657840347 49003753 160008996 815610833 674305394 971207361 481393280 580186501 228473716 110583496 362505250 827654449 904833749 853905082 587576305 854096159 133338210 481548862 1000 939567221 83612561 902176828 143410900 266086464 839967571 869856914 340354192 122298697 497113962 572274129 33849697 773604770 660218050 5233962 328901872 981352342 317462141 59690380 440867609 813605099 339751167 938952336 728458925 283623807 914953832 446151365 407722664 785164870 119587335 117610597 348388940 471687255 234134743 608301604 871486210 675040532 189842860 8650588 619384500 798711229 723657687 780044944 500794925 986526054 964298426 67484444 790830006 70458803 306014996 25936706 302878249 363063911 980127115 455960876 489878028 265646742 43341941 209782409 91351809 218861865 87548059 190350863 628878946 361082936 486109525 91302394 831774955 27555372 492472157 350990043 419328079 8906170 511710092 710928358 192385563 466940736 608450573 156140682 260349004 57650339 546757937 383923953 490400086 160148698 325207911 258370471 94074084 272063892 297275810 404941972 970214341 257463873 921606378 695307858 914751291 239743664 528070358 40877415 625408148 408780410 128673170 201109428 544181409 472506278 480797810 602941894 490954849 906663420 98599715 127598959 821004761 588145879 336971640 258347673 313931793 806769436 759247224 71975566 638113421 725781404 51086338 121430105 902428514 840902114 196941174 485225636 633773810 451925321 742873123 105166937 359969644 186416061 928491180 377640353 175688527 713949703 58118601 165607143 925071680 979880785 653819873 292591156 959220965 34298432 248911361 641582698 59455938 45759426 813629842 136377699 2782854 138016809 413959074 37137226 813547714 386995939 96484535 763822915 733541889 305530541 501357672 360973034 70761245 385570841 364659209 818079934 990010696 270469591 345513939 31653454 624580684 124471262 454879260 141102198 823341687 770041182 414072916 323973153 439903847 99088767 39346726 336407988 11393307 896865419 818213204 528648313 588352907 131485109 407245691 112627674 589880480 14148385 859468413 273135067 265190193 32867468 516433227 358931380 333632476 137361949 269871081 268858217 52617743 92030218 31928253 16165041 841651695 105254047 436812417 66163131 63304960 718188827 76710001 184857820 20871005 822427607 353422197 978535756 938560888 974618397 419173531 951897402 440334515 970823666 81781073 797658210 801556537 395427048 827474578 645180097 467471448 727588111 488895654 380402045 814066000 71218515 692267074 87550212 528617303 565341661 449027551 795382054 57025839 776683548 785064897 442077363 371869976 100116301 978568289 246352929 698545156 534305288 348568837 735914106 599094373 546913638 460974845 968231458 984581570 33079600 341587218 908070804 26589167 125146498 101612053 861349731 872658897 582019101 23052627 347179637 428476961 601966183 616765325 528863236 566925248 990317893 145271180 302419390 248484919 22924467 117986747 163675940 939273521 249403250 664030374 435861427 537658179 788383087 146446005 275515808 220044525 23472974 19759368 685444358 115457463 618006370 74163623 202244581 456068744 430488664 647023324 837950684 191279472 291056627 977888733 146287524 408479112 22036082 384215150 146417481 92461590 708326335 58592890 433925830 721279118 529975581 466359785 569137288 974499110 610175975 345489068 149109319 691138108 131921887 50515606 533219606 999349701 59596080 453936513 211355046 394078361 405185985 217520593 668116972 901475607 173138834 680896374 599031756 674038191 353751566 98706794 230061574 638324803 948849128 709085823 42180742 947412059 574253177 834910633 207772502 40512123 5897348 107725981 916962674 579591936 960883947 774816014 684641279 980539204 138986205 449219787 570738353 247810455 439624434 435311741 475344958 763088909 395037275 815568092 14572810 817294452 873491795 519257454 720361264 128395292 732882224 44842769 812867892 601257907 255871902 274140440 515354696 990874418 80492491 509541248 72576160 60251315 991933201 206877107 88731100 585124998 37969006 927221155 947625359 572249 29605338 60918955 867260483 334412238 498180516 33354097 49095958 654194328 112980347 551650157 345396750 62791626 480212181 900198232 390905716 467061341 174422785 225885313 493630092 894843931 254452854 994732985 386976311 630533404 368684591 197886193 77055924 95658308 269269395 72688831 518041478 444163470 670337542 692153232 95329756 640282396 194192041 782982032 393185114 361150325 111469822 339673124 22879610 612291704 671952217 475507559 978361900 52547579 712015325 782413563 36332332 969406041 41987745 663594566 366029151 943505904 143730060 341884915 591899488 16180872 103710361 597973853 978606166 672922789 878809904 56223264 85529970 76482870 43148514 385777832 443973730 645022555 66644488 566315194 555532936 387671346 472803195 361808720 875430485 317437909 93296774 591741720 512099863 263145770 874223626 367307616 670943743 502630453 76722994 519216079 51975633 206476265 265728214 95191806 105877245 984923196 954551628 375426137 79692826 391855853 69666210 23390277 22659706 234252875 265536891 147052299 76366069 313841169 398181676 64324085 444648942 342931513 587842049 813880399 78388248 833504092 562800551 510949378 413829571 519193863 97704686 546782769 925065932 496263914 111275273 791251832 214450061 685867391 309377545 470773439 177668803 927515631 69523330 647770386 685576431 382973705 497496668 284920139 420286557 421636271 87508400 521925399 74227939 163784571 964677412 504683883 257349832 843776956 348209529 77049881 339865 869463582 730491484 983507104 91215008 386362254 223318369 274223185 364852850 555924214 357483547 751793938 574871806 748339153 535470073 482048680 15044856 364871930 285567662 966146195 8299458 596764664 297349560 130584100 536160039 462504043 111823345 564069557 248395255 778293511 682285015 970614822 609276373 714311077 866683624 940642570 106880275 250108353 764662666 114061972 231485253 498388792 630007789 711900220 20118015 473117264 155178478 299120614 914015903 688667567 802782228 582217390 310977563 563245826 251075400 674485014 278325689 273263352 991482563 265759670 139181628 103839064 619919594 754025534 321310028 761590587 161403016 97896934 234470037 794113238 369073968 956793763 454738100 71878276 585175027 658547353 939800703 111423139 885016821 212498992 872639766 402024911 780629252 166975200 612392102 46150676 893965842 229168075 761085499 299533489 103593431 856096671 263511459 767607865 86079722 248080738 150800541 762230677 330666739 996486267 693046768 96645584 459567076 97308990 496561661 825914405 507818149 593835391 324434567 611242151 557272447 420932088 914202572 92166680 270060749 865520357 777316971 634168038 840118741 884744032 22325394 126058226 261440324 696471482 308963244 753195268 674349364 882328721 701113558 415231705 410271950 714182490 540860593 500395773 15839217 785306762 858510903 166051257 286034000 216482930 478619329 904619815 893352788 779068121 10175390 260011503 460950070 371005295 169924680 916457208 121617235 171919762 923471261 101473748 154334829 24496151 812464810 802840485 286263541 767860386 733077905 325361134 302043719 608078704 999092736 599302677 450161773 405688854 64653273 600554717 307243632 51547274 48392743 694021143 240358467 764617195 212270274 441638059 51899515 839170749 26534274 286132402 80023771 327570592 715059548 666719092 713513545 843737278 725202047 115522330 542656392 400573495 434097640 213729749 409816518 40809527 705193539 27393669 102744680 43934713 141684304 635213078 961467632 85021713 566855994 300114902 137147648 960960455 251837596 226292223 378623959 810518396 281886937 6369535 745951024 90653342 104385860 73612347 155209968 602526728 395508335 735248580 681273511 611011438 765165567 827037741 604678805 689324162 441572362 750134875 139168389 672954022 537109396 25409887 809519167 537764616 38382063 486296822 225831769 755224053 901558916 643267303 373802175 494106783 4313399 72267341 104441812 732611014 612516025 719150903 657804644 645914224 984085256 488490323 415359484 162008828 972373523 366038748 579637636 636484894 757294834 93735122 497054784 592038621 473121051 726116771 110117946 633770717 962706779 958282466 844157015 779871195 433988082 472068110 659716976 891455567 952478966 391751077 245260057 993539287 551178971 978815140 869585920 486797054 15753784 221692717 340391070 638328807 866252252 880600840 988751222 487958146 27297763 152088578 5677726 686795415 223356230 591462683 88050408 40848792 628061980 927583667 834168230 96207350 864572041 566239501 522807307 407985018 594331659 882956968 22853839 418247786 22565343 276422485 367496146 517158675 20205475 872527525 111804874 427817026 449934568 796551269 262634896 506438754 459063619 414816628 531813300 48114487 78280043 194540590 344493723 345559913 494627059 448106829 962475480 795756720 46793290 421120052 721321938 812209850 544587406 170800845 531164252 231730892 800715171 773721283 702036724 754374518 234809031 266741095 681732818 470972070 106528573 85268035 979629483 814180117 358616761 834510525 416237738 517918882 123839282 830482868 719393047 29592062 771874801 420642008 801888251 894386894 428044859 20061971 284367757 232282979 341089594 464703680 6093573 111194244 86427910 211335231 982328916 206366233 784781872 177279956 669657532 858919107 810968347 602848674 175195310 16131838 446830433 206877918 961993968 465508907 542343354 807515918 5620682 815329441 898412949 700671838 56985730 672690006 942014649 394057062 97931840 94419941 762969036 853856222 805746355 907806325 727787274 555690914 131390860 826980595 398322426 353677429 354029111 71070893 945940719 753574923 167611604 73428895 36334847 54660508 822331923 61450867 551652897 106909137 107350370 597683185 784357253 478564839 421776624 275472171 705987725 836757505 21641104 271068701 272508730 796442116 639740034 14076281 519918098 17174007 755873503 317788903 793325451 8901845 156861238 873651393 693892167 887596309 4890712 298863447 64558172 554393375 1000 887308013 395748797 954319105 786960895 925224270 223346100 871401837 3990943 77901253 259806861 118616099 127826624 810708151 393034052 845960446 539568644 946436080 623859521 815424274 218088940 500353184 135001207 629721934 488312606 23696508 731048109 887661428 792425119 90222647 648946472 109995105 56025004 641192858 954222896 43856656 388919148 266984992 638811697 145680147 891260708 940623023 669766704 434689947 406307252 325522365 279247234 375061494 630160296 459346741 119346959 31324654 647120346 46080924 227556617 907905427 279226629 144371136 785858566 251780275 59611739 941436677 191695731 324196662 653165475 373526052 344787508 649381971 50014397 581104274 509681078 228766891 885374834 367850769 858832166 621300957 89228513 635367837 191149020 307509025 935628031 166085241 252466167 930417043 589975608 953328922 764637409 52336329 908422214 162693152 803824227 505687350 16076115 542559416 513939277 340026279 733192280 566034673 694076474 97142449 529898675 227403510 147795240 99265366 532418376 786292089 225645166 503249996 942992602 761717370 558923281 983118078 990320951 278686398 515023121 496041558 441494517 780223032 590167642 419729505 567188119 206613567 940423384 831666255 383550903 906887780 769975842 886758670 633287996 546936075 132807300 655401764 482562127 417051817 981213950 207995893 401810963 971877469 813890779 178903744 337192093 814230797 579299376 267307090 192684585 694242234 730850056 276185082 882088092 78415439 748526436 758756971 19477098 85102178 409268881 172910873 990990553 550063891 496101637 161076968 261935249 984311456 11046880 405177072 998369309 947027270 982727969 19050253 582945418 889134252 337391067 838858723 284677154 924823343 82260810 74449527 727180780 861396784 6510416 358345620 68131770 683246760 56629427 27643952 646602456 321311016 865770592 432013875 208055601 989527974 116636914 890885273 275238772 867936065 175947326 7937653 10646540 110634001 915689268 664233962 244298565 798260458 600962139 400487878 170458301 424270111 976977861 839085911 584346466 794267995 872866230 337961329 32951401 911327065 709950594 532783386 159852130 358510887 429485463 359621018 690277101 564133930 996214061 923145567 967318675 766063645 960691024 465766075 839707476 753888046 165873935 155145571 271654004 120888695 402308369 196547189 123884291 430704872 969775636 180537365 292397600 332363332 61892945 238095235 45807676 703273819 933714760 376907399 200230252 371562274 918971456 475799876 289633485 62317058 506949322 552558269 500883937 818881128 35379185 47014635 320814967 958639803 677615221 525921484 40719998 488388167 513223004 384310255 111953320 334627951 886988823 24601559 293634715 900135239 455242895 913743325 120701595 879641797 585660093 62242930 947346790 336026041 856008733 635902214 471647078 427386697 496821726 741682047 501894996 350238162 75234595 641682134 334240787 855250966 7620397 721833453 47439566 348151324 350610980 812564471 186603673 647988779 107871149 310610703 940491715 639523950 593938533 916861077 286583628 936605021 138025144 458035146 888555822 386051705 74264018 545348555 687234236 468666188 816570607 641465852 933278403 819513325 355415685 719130372 347063371 2691196 31760 424779183 595768515 690599666 266658746 139779654 92973907 725243640 538042803 624855371 864425853 906309434 66445154 602923316 71661889 834092515 818083782 348534366 629827410 169209982 459589979 679321438 38787099 825276514 105831688 722532840 443539824 330634719 160136529 911775367 908543125 600974147 572787533 762167157 594898505 695000902 131846396 472237938 828160689 216843168 754009 723104347 135927692 398613776 293932926 815663213 227118780 462611496 280589026 455028025 723335959 433544442 966089063 612755344 894013549 985256772 856657941 487142391 89025485 90488457 938893872 786220302 102988092 254532504 346851481 637683566 544011131 810415860 358079586 18996512 694375835 455512999 150240145 10276847 533440512 807577933 52690961 639961078 870280945 44450240 145757293 502832686 154093515 766877299 893449640 550497329 463377299 100511623 780252271 897669274 625364070 1309384 743664122 107018204 294773114 953724057 475714151 365951580 156752297 6419019 311991018 297242192 119346261 332743034 178447273 575798358 105825337 697678290 194481217 204042682 833591988 343658796 426721900 435633229 822738898 872870796 669701039 609120138 695032150 714799240 626170406 711091689 66245467 819497514 354516404 950660326 661384726 557632409 141244847 387187797 403747269 94207075 885080880 316978179 462705149 626193587 96196767 800777799 104903532 540947764 313232863 425903660 512021862 354554146 64690288 682264682 396634694 217958491 319075481 458715303 369544257 376914764 156069454 7608707 576536204 547293952 445088448 707190534 281556061 182579310 503561275 157807322 12735914 624614007 894782304 829228633 128839971 133544362 267962765 453303598 510323101 781200548 215520448 643257707 674776130 56608091 981868201 100475636 650547390 168521172 17729641 940450822 54739206 360294977 206459122 905088240 948535124 699974424 138922671 124215053 743845877 200100816 737770544 314219221 492584372 919774245 203649613 117972629 116459510 810835617 874055424 820959575 643562039 405329410 500870083 30239516 462209641 5985262 551332543 695275164 151572915 422880866 297682907 547920698 199060938 611081723 665423046 165471941 506489162 349822724 123472130 677459895 312736627 971487996 556722482 779369499 905667803 649972362 6143445 542710722 477191268 41811757 584815313 907460729 639566044 602678755 945244594 918953604 241551560 516505729 165231019 40000280 24374831 16972251 687968724 140751629 853367051 139301910 405032792 714518786 527177309 22475268 752268240 53834434 757830186 136001796 660864570 191049210 184085794 441051948 974932897 701446308 198282153 88984042 467790342 105108587 13498044 197726042 605543118 63264302 747314443 549509279 750636203 947354483 223044413 80767129 525658325 579645467 273639184 887213770 327428161 101176627 959805071 86435975 758079860 652296531 188135609 923566069 846344656 474227346 270418875 891267319 573485624 235289125 756600454 215271807 926181224 415140324 537399830 844436564 698841970 435731123 829004050 293914720 818916656 649655042 158525233 650290086 770575262 806680367 559051092 103359615 939605971 686262676 414073411 195376957 697271950 210858386 608593566 535374493 973828624 701562020 807036906 38899904 72675190 578017325 742732537 128205966 766181877 59942566 663810566 732652577 844522115 5540430 794925718 668976206 911437763 169781426 507172504 486847765 573480523 398478796 380737276 511607436 693982638 4151657 975201201 631658675 69041080 281842866 428359848 139270153 523259065 861329579 116183409 720056286 870681058 407765793 141287035 197778756 597361356 492181403 874638458 221096327 379943713 945805155 679373773 835231439 454167143 145190069 462446926 916314339 53746676 2896440 199958868 525103760 47600875 868113279 956171248 193409620 683656532 596706969 207928813 553444245 131694625 10802961 337249961 597270793 280974348 830537243 733154122 238948816 654927291 647849655 34040275 465216274 982813694 784237665 507906062 106589388 150670912 440248839 542449706 374041763 658480807 739269637 161982407 880302639 856860642 856263353 110541243 868474705 605511362 21487212 722268752 74691934 220731805 262194177 765484676 650581787 948542684 610663392 319752660 177271960 673828277 758416187 669661688 542966354 792636865 249654543 351208148 854113452 846537504 993284036 109899253 185398905 114082352 136328149 430146296 559830468 500320809 489124326 188877756 913889817 747253363 535757816 923403854 941579010 832529383 18640175 610629272 407104948 868821597 311631224 451599910 595932952 86082680 935240040 355219570 752472536 586576973 95729436 332151016 957531670 714196659 91323149 238647298 375506030 611161289 468509347 216346906 66521379 747879729 146587536 579480293 208587098 34365005 638129449 108851203 497330323 345460993 485556132 226540401 734175064 316780739 883358842 384104893 253987776 187045270 354059352 996224219 55007941 767290011 206156939 324214780 521843842 91395648 53651279 368472479 122150059 768666197 106158687 229844947 448756932 741627870 93987435 458586489 594996335 616332994 740887489 814807359 599474008 474719030 743422745 909615090 792092079 114937290 769683819 95416237 345361357 38532533 798434428 774974113 734039275 223097292 628864538 609750057 235937585 840990358 546002138 298582476 794420871 779010174 129315958 833750414 273391251 663138588 829921697 540772252 936674268 19403479 121504949 259738883 695628125 232978833 138131817 467444289 107605655 942552983 71750063 626473648 470694056 930211355 155836352 974141093 605940067 587953615 780835436 308353415 879140701 842929849 761337910 399344321 345672068 80728788 885944887 627158208 651893720 323882401 864557764 611283068 460222521 930028535 222673401 527670476 625352799 659229262 504384881 908029706 136797440 467527637 935130090 734049858 333194141 121310519 688779864 645942851 863944835 480181193 292461353 571945072 791376613 953932121 136813486 365781516 261830325 780880328 833351596 114469678 299990410 905145848 211790121 430448198 18613655 140635280 378166470 922316295 985605997 431566581 683272482 48107025 858190016 496413181 813743788 816733654 585668250 431484173 13929051 882763409 742163563 672644442 589509556 528240827 560153231 458280598 686983012 25154267 970131820 356358881 586287172 466278221 75799909 470512192 155052046 626506507 769121421 13910539 846240109 648772184 232981020 873135527 768946840 430031117 890854472 145667938 819953191 427463712 70289696 844988415 263969649 818149928 261655593 220024560 262540813 422070329 554499745 183667732 131920766 519686347 779634109 290824697 391417420 894458415 485911821 222903391 94598766 966867265 393629201 531863176 834026702 549986500 602032466 984781290 815106507 19597576 1000 163199340 468838620 308867399 521251336 386762995 493465190 846819859 952857913 14266080 18778091 75925481 851634653 5486726 411355248 132834688 77781661 322825968 746783199 107646597 52970570 813897214 52099667 338643773 47257918 95541500 243533633 458694201 106074445 606599940 334519497 783080005 489890778 774456507 440821858 980826554 615013568 529620035 514711251 341174640 955103604 156981099 102560145 513905503 128778688 128618354 664253019 622900411 758493148 1823830 135690200 454689601 768824200 483637415 158454819 595589617 575670526 62443845 55800472 233936141 262045044 347016396 225482894 70109063 61402416 619672892 850217643 94639399 388750056 138239043 112104676 875648527 298775272 304075478 242573085 117923465 595770126 300348867 281880314 630082121 707520024 14548614 830486054 806763214 255024786 942231809 229321369 91496275 27266491 944065976 978063178 269465282 205433180 798286237 923621803 915936639 387176511 286400282 154167016 115495569 730875400 91100098 899884274 168110160 542399821 796981791 43839098 508912987 652362448 721907143 752393 127039496 976626459 94292343 414895499 355159032 39529906 634707885 884749371 254030407 71401497 78079970 385597287 934317593 602634819 22702392 102996190 769455940 687566722 499130365 177298718 418666390 880508988 205916757 864214947 843365170 925953826 36928877 627969120 837204376 66820495 899388796 522907900 916801756 800279022 596304907 74845628 89866408 799638824 750124074 193226324 533874818 464685211 558585260 565650024 428980498 679626188 279211580 174426605 294464622 973740321 322313260 620921873 16339819 613860619 612424590 946222429 671776379 558377728 858668526 131013362 470578512 392294552 58837337 110628633 598258181 141205908 190442527 825728075 194641315 61935917 552215766 627828955 610276604 554774999 22638585 379405657 617182346 118559653 39380115 7769005 14757606 410512557 580088284 55652145 164440250 224416148 606678127 231173346 211976923 800337506 521507756 494478384 147582127 427472879 26133946 663544621 520059007 556030760 364443480 983392874 510140331 874590500 568914727 947899928 209287139 74923212 776012133 688201404 849086493 312813619 572398457 331862515 875724531 84509880 411977976 718020087 374880421 107107494 400355075 955020408 777315609 86517509 524421550 522301086 31940309 19605127 145021766 670933074 925883478 548147978 949748400 120055237 761100738 500798626 129003083 994247505 296661203 848371041 921099120 21499562 294721069 107601540 44014721 955267333 177999002 917451716 725595034 840999297 334473917 813870535 666143020 984932033 594850825 29713086 678284093 160330702 31706085 548347856 658291403 508104534 599405424 662508688 239695353 242100211 399251009 494156475 823365590 673315230 15988888 522903347 819496001 615662816 248654744 629344496 671086142 10871180 127003778 87353783 928541432 175109112 611578501 730863716 923174184 7457170 269060420 840080489 546218701 882531883 346631739 918102573 709869619 923296826 760514385 855695087 959542105 977076622 564273545 433283409 738858058 322502967 677528864 987526511 257022594 708814968 257419976 668558367 562203480 651555866 68653277 495975435 398687774 71134300 427760724 311086504 455847333 55215491 26160486 714057726 97285662 324089980 573248320 353937519 354981176 411571639 43544131 689967163 292469486 298609864 813128976 156221827 97512619 857680214 307834145 242813346 803189003 11068459 755855661 739281541 268312156 563308357 481115662 235287436 649182435 842372264 976087816 733392438 564459134 162778120 506449789 450752761 110583610 837779273 903333337 520058015 696179606 760732050 349265501 659392147 994981202 66226192 723629624 46314009 511550892 881475084 498328706 342668461 710545756 807267348 990308459 402400337 878422602 680667681 619829043 861588877 34489056 55724017 892121172 44870102 293541993 248441136 177949271 978068178 712143989 769160422 415157014 635246780 898443916 564309691 682409150 728109023 199760503 107604440 844782188 744782899 81489436 923750609 55487783 89932508 840609809 640569203 139310524 402186600 59580358 722510193 601136580 354868381 385753398 554929551 173768812 719648001 639242556 883227580 928783551 19682964 6546459 610389329 101363587 843735054 1363704 457910615 983478532 639574117 676233633 502050258 839063402 465450867 292871401 783101954 819373410 470103457 162077662 301118663 442636499 849686414 104041839 262981375 989495060 135541388 631322670 232546017 713684238 714749311 99617568 175670649 729528561 855786451 61301762 75736924 401529743 628337308 113222462 745583386 463857601 949067969 992800008 904263907 35289346 698795758 128033254 609563449 711667140 101200612 583368193 550468983 197149660 308860285 162653215 339798455 303303284 553650819 799687026 775489306 427341157 880462114 410529657 496755044 287563364 820457048 220718894 318614758 385978771 26160687 553833619 386257077 1907917 523549694 381719479 53454683 893477224 726802477 887440570 435487296 498786650 184628668 147171837 307362039 373602446 769271532 251511860 609808322 351512163 131666226 976833365 12499242 402923560 26644769 621010204 809655430 794127226 942559737 736594609 804435264 766752862 11150823 683214310 411094349 811003755 679413093 133880446 294351809 456508559 549934354 702326820 910162253 317756991 483453244 550949148 145566741 701754581 335513187 175052198 730493118 877422728 686306214 731635674 174558303 944152696 131885195 142611005 654937288 148911997 140387054 191271823 783612425 805764756 95476525 956341230 976534416 637223669 827847548 186567441 906490705 719273433 590658179 572133382 2306076 635210020 595917376 826821902 225304991 835283631 498560473 159291666 19912185 122243593 876429927 611952634 404622850 141681245 749555298 579830411 807439746 755980760 889580594 172775760 612971850 996006692 926246525 424921627 954170070 139148161 772955114 620585766 253404540 860320994 517398921 513640241 671996072 176817108 194018969 185871813 872116226 233248782 172777382 266664605 87428345 93801403 95046730 841820065 603357314 977003447 546061882 817355411 442029408 945728013 838081004 482414234 959098004 7187117 899036637 129556503 205002095 562604887 77240439 906995406 229223988 207301730 567213000 643582290 626405362 191442072 328769591 601757040 273170238 88946602 391871915 941448803 702129459 134478650 966955534 830375066 91519904 887640613 450010212 694280243 276540167 454580060 854674473 325525756 74547279 427387994 748546778 947396492 678501533 590313631 451360814 123891714 48789957 821333147 615754019 501737883 817204485 648551474 629722532 587700132 567348492 936568884 748037442 350132918 469038912 166090024 497479715 928288217 339992506 833234949 292321639 201129019 524851711 4560835 61108230 367786127 744750811 512896792 107198086 467524732 597175290 306501206 38607244 865157994 90001309 264843436 22669059 261601687 581956855 282429379 798888382 44641274 732828364 330301027 383426497 470641613 466437353 84784581 203969707 350641123 745575539 707504190 57702606 746451892 46099083 591022449 90560106 192468080 479574958 243237323 738513315 611155137 107810158 855683106 808991599 73002116 501474902 758588407 501689281 114197684 877266952 446364655 493883310 742390542 984570675 20831998 188379442 63592517 232434570 118678032 704816946 466607033 360518001 331182279 581551363 501469333 715693170 617755963 502578122 750097130 797540052 120060564 764866536 972428620 236419753 6483683 70015337 442348367 65231681 337346175 759969445 779609327 388725142 689911204 339713653 133317260 3572397 780420651 33022099 632015089 527046449 770471795 764569051 822839389 940710772 917423357 775463069 494193077 265720555 205133159 616197644 864346167 983355961 93628193 703252631 272613925 180128522 99758872 331306850 650787115 542451494 518356317 374705368 513369619 576039414 15162796 753183778 91245964 251542324 299609114 726004190 56488203 326406655 181826478 228779121 778104111 103407138 707804283 581610590 43914664 57097768 898106202 373099872 964072895 722806713 634078035 873630273 144460879 555844512 558583309 481858396 940334900 61015519 788801371 812717113 688756133 946119373 366829291 592422543 172432341 749736311 180686402 104771239 676861811 738264620 413024350 939525115 646076288 692343254 9013450 485797799 35545361 919996918 27320739 637692108 785049571 298279652 470945057 487492063 794167160 484832405 401447193 452745780 365833303 671555784 949524361 128554035 12157944 589565719 51130541 67450662 125183595 708149282 631578204 481636042 595785966 674231119 94867940 299883844 529669396 426635600 902210141 124057583 923265376 56861453 295100181 826921023 480731291 881651261 395444618 162442031 748795335 325460468 780612463 923905000 689305561 922670306 53799822 895726461 173530439 716862114 495666918 992666554 65616613 3985184 742286586 580654492 464260981 521554623 270175866 360879617 361515661 531822160 105019686 875353949 89800006 149273933 114698158 955453955 571753216 354273486 233738102 779086624 262694722 551887290 248876288 169979723 705018167 697621787 416198312 964505161 469454959 74190550 912953202 416042189 816664755 569164162 653900905 677482002 307481992 672604997 927062281 38402980 139536029 27388031 995507815 136122059 18797348 15796563 183607607 852408625 111760134 730854175 53877372 486362153 445346234 35923822 66315490 911170886 214758896 561623359 227988447 883808293 663444914 597666984 993537084 848461312 29802622 981295900 383860717 938461635 759027014 902195984 514097789 297326077 141452958 962451453 58989245 922651858 12493259 821111016 13324401 669286042 845468789 729325556 559316284 436406434 600992251 601946611 986789160 424390122 667048179 47890861 698096215 236680072 755572400 262430777 404408896 258701420 591272530 5111370 983753704 496977155 64226634 163099970 458288197 7588940 325343734 770185959 903979758 54274050 688271949 371024277 290620039 370135876 1000 559789391 592037699 839909049 99612028 935431288 12463248 193487096 119488578 578981242 487409521 988608194 418065027 566559973 12549130 448654112 774006566 477348475 904085453 417169970 688145057 933314576 180170297 713413911 73959970 457272622 642767907 275288898 509334785 334859425 318589328 911764658 983164041 724792325 474052901 441198181 879549514 847748370 863437890 861081311 980667291 871463055 957309479 64754162 486944206 122745917 44832701 280347869 786055617 148690552 584959582 719854549 32337481 239412791 257409016 457441054 437682614 836408433 341342951 41251614 375362336 88925698 6205434 186504202 398245808 647156127 93811309 603571510 753487271 994041879 400532450 352976656 7704354 953503752 33352710 244054631 914153977 219260378 445677251 842207992 801761835 930266171 59069646 510535840 994247465 684504750 899830440 648835079 583882235 66581547 452550617 900715751 857897731 97339542 465410338 183224913 138110260 475948556 328090360 718226861 593630673 955346235 388796644 758691248 682317899 900904221 504178803 834235028 825025592 85896683 248538022 662903354 70813460 651757793 882845085 930091572 98467813 567112849 598055016 738297956 727337140 630884983 224555605 709736693 398068048 366449840 813513435 351475578 858285489 916532146 660838767 65998613 275612322 515279357 11911938 121329181 204433272 31276017 645704783 939559368 358087834 599588390 914586214 236563653 387360655 948786398 740467257 927949786 733107654 759834635 958129023 177027094 944253762 996816777 37841538 709999061 602408222 337931248 690367843 80566794 58202151 225942118 122209970 625247646 76113016 26185853 554004131 281653315 47429788 400406075 894360315 437432840 234546568 131515532 253857486 950385591 91593362 842839602 27453966 858045817 421680356 822913865 85079214 965329696 427712040 117471104 839768710 477889892 72302883 922622687 750582520 891827829 60109377 635705003 100463072 792997770 486337899 136246760 706865032 817281776 869639893 448656188 68646974 845253520 140610180 221543235 664947052 751408887 281167278 934577616 687092044 856324194 23430955 268816062 292781894 601672684 912796773 984344317 94825841 640876468 989821749 614707435 978805898 122633490 865226645 503236358 827523935 378391993 119364594 59553962 761503485 810812199 628761025 226260688 380549104 804234872 154265662 368796888 568783672 634704580 395136032 490835622 240729821 859812746 246067210 568592103 417510817 796138960 384679171 611511643 431381404 165656583 830389363 974380436 31583035 925736504 244134681 792853435 58480720 145901600 373645330 252540280 913663505 55417437 950632843 768489053 623014143 588992835 686184821 216004554 411865968 419177308 207078708 19183124 343765239 856373110 321455949 706340616 641664670 636584260 423917673 659361615 74018282 686326875 556723110 861039084 652901896 428446139 889302037 240180324 649602005 92027905 156162664 843220509 202272791 883404435 705057768 568679581 19848999 14028147 807144423 759893883 276741312 215511740 415226935 916129573 136333188 789662914 155436762 994731796 641119400 485775333 294041150 197369803 976173200 356178515 346014324 131645846 406926319 531773136 949750873 470831620 713269148 502228081 129350082 399215305 865656093 816315118 808975098 866014544 866404127 177923105 183736584 121965129 363386167 36089678 793596238 72087089 416935746 3263199 400833709 706337484 413672550 277201963 781960633 55483615 75850658 724764517 548718755 862973037 56851981 89082213 489465416 966712785 374393876 248012909 326694662 406652060 719632789 262976118 213020816 606747701 981430336 67407758 909030937 905373360 751230962 117790674 828476539 495964842 12509551 993721773 932872917 384283591 552146650 876368227 450186539 602538869 674141506 702070598 957072367 71295394 574003246 998700061 186301457 163624028 575212656 448228782 922831946 186468330 717359941 713648330 290410882 832370375 497745614 140220112 117774220 630326741 857620992 275757138 548927109 995552093 756300644 45601834 41611444 199762141 501797327 457842818 16956860 603937196 990654800 861975019 995551367 181896781 2335290 999910687 813472941 832470878 476152543 629846789 413240285 631965196 888822342 157159485 355948028 880297628 350905828 206717391 701013517 967896350 191227234 694893600 730696624 183806958 556819471 46808797 142006239 447605679 318042582 28216581 585587166 770062095 124852830 14333379 750712648 510663344 39446123 433098846 169615773 165627828 437526170 768172323 118337289 593509432 456113316 473514440 563982717 660047432 515854350 67395216 535977808 708845395 508563977 12089421 110934484 236325497 49459606 65186551 443691531 800664277 88867670 352803303 248370598 987381620 5258440 171971544 195386080 950460928 343496987 812076488 404841768 626151883 177046111 298595042 633291292 619643992 537511319 142156571 49627497 79060925 283519827 346571809 259797889 58809410 247248021 206749022 534237801 186879339 485596134 164082594 474741672 169511471 383721406 419808505 368920051 949777251 180058169 55731234 811679867 148787572 700075247 548004023 525125601 133249376 353851649 534336453 629951091 536551690 446750576 110738427 540228838 160459178 31981770 584005166 110823612 360289142 775770792 493432256 426333869 101762593 450725014 182297944 934547765 865513297 128308520 830795456 579165391 270173164 987950647 103977422 276643267 511384787 84242952 432702420 402102423 968307061 225461240 139163562 334384323 560122946 848799887 19114133 30736578 677232420 631609517 804049538 427948263 478501759 626993293 984551972 490355993 399505409 956799409 804832380 504298719 617865497 403415652 505928508 104364089 106069613 384097459 478156345 746679448 68008090 711949366 473967403 668655291 915199325 365145435 249877130 549891405 647520735 747428746 319402683 493337243 835220887 218804338 94388886 282832354 622240597 277250180 953654380 264624625 24143351 557862418 115430371 179870932 67948422 35042315 407144114 706154847 203628677 221440024 887237285 897890844 962039488 274238649 819842004 265412083 940626987 760370327 359576026 365313218 203502123 473603745 816423826 295050532 594898975 176414312 88324722 269923162 603294320 114640717 548378495 124081884 956946296 898367039 50696116 743981914 188099325 949347929 416750138 738312074 529236874 423920610 451810013 130834708 469970729 934992011 811495801 198987570 197624322 389712384 519399553 960533201 662699754 203972313 73769213 209837969 656812731 903597902 392041513 237867915 529443258 877479 247157271 87731087 83250425 352828112 557528488 425597217 741085474 666790055 508249165 132011083 338607450 126266483 115988791 16120391 702335941 504735597 361748932 491775768 107887546 887849545 193846589 680634571 484168847 376357563 179820559 735663215 945769522 879335468 731706859 845130940 176361855 801703612 712661750 77400593 116413433 211980747 45800647 128389140 52470109 67733023 5059860 460335319 958764618 340657331 300942173 632951996 540809061 747137039 463611928 408919362 630364632 378143286 429914431 20875270 267398144 923954780 809492982 194385431 56711949 146536675 363571496 473783786 363684210 598648450 109377852 259529083 143135773 798176113 839287288 515511034 432375052 98062124 168740533 986581770 21733532 423208707 532762694 251154596 871920182 700056991 215484517 475009202 396740716 24680860 85010293 574381796 373285189 501368090 59854791 123058872 496100025 691866325 321094406 360474846 589263605 28238173 523590065 162653458 145749259 685280856 704916057 577799733 592180697 429179175 77776838 391436313 176145111 839864037 268722011 347843735 43814253 45452175 742593159 740556605 215659669 893878069 675000680 809897846 694530559 442687791 537682610 316223076 789668678 965869697 713778236 739723528 693081419 395298182 103419738 73795739 33742843 197435301 832076865 728579423 87641781 98309261 93744199 567625237 682614782 450208106 453777264 700585368 973302537 627083843 522592428 759039941 610230814 565956082 563421147 29203936 580650162 186363421 598367308 179083616 278215770 875013815 929212573 462533622 592905707 705148469 952797883 704463002 264857748 480732167 109071370 597745227 875028728 821721975 890195489 872539503 60003083 19962007 315696668 429697352 34323611 466509443 423466804 267061444 5601910 441022527 930788144 244572037 281182140 449227509 325916766 584088920 218462373 767388979 757680598 818349644 856609211 169091528 410895994 24718213 839646655 98201215 569835212 934285025 431070405 743570025 403924238 399530897 524142989 121762338 202269594 54756869 388446748 835542441 531517134 668969905 275532783 475952778 325521459 138584881 550330865 853366769 431955407 560047471 851569634 426932700 915418617 615566461 541225274 93518969 440096425 977315391 638313639 849691947 905592393 929319177 7374149 412578524 451843627 156712228 555464408 299414158 446187471 387858200 141484478 425201214 793627039 577811872 881481018 245055195 629272095 758852173 365352447 409431240 246300447 513780343 452294672 321197797 92790325 483263577 174522635 87770319 130311660 335449048 235597364 433668816 108223945 227336634 851998843 136403645 462244808 938123295 136074829 960466005 401800575 501090911 728405938 191754539 779113167 428090946 449699012 90553776 190903232 116829305 41296968 662682519 395269144 454523342 515798412 617471455 43937329 734207151 811397941 906144841 966960563 844301331 567839063 137876737 535212162 209920160 158183923 59861973 335703144 140537900 227671082 721711412 408158142 464599669 733294913 802694273 204119329 100790739 478446278 564555507 304731391 214123587 414425408 811157040 264344675 740289815 761059049 519174655 373074672 352139688 601833445 230548911 413324660 153158845 684257871 193697881 368001117 869259476 42390437 12139 338070588 478415598 43341912 165177576 987839460 874327287 862137572 21631956 481305745 936563577 959370200 527106044 551170502 97340788 480618650 707639646 320081605 813171094 1000 144121280 886412159 130226584 129546754 609309283 112221400 380088536 615398622 167216303 150118235 237778199 433118273 75278746 870190589 538335093 122894185 575548135 517964354 161713750 4151231 378033471 374933100 461392049 886449985 374842078 607547749 591580234 849939599 928589993 667132149 994018400 284598137 52555758 84395956 830995579 884961042 995331189 79875036 941328600 113448524 34806237 87068584 221220280 60287957 596150600 873270161 559575807 138058602 851610499 861628647 316122733 844133585 931485601 972982515 43451441 722185251 239261192 771335634 57263502 383343625 258882189 5777834 955692829 750742026 655727672 126040949 745052499 636002826 428709481 652998600 50219011 714348505 59600865 34970905 51523280 847766634 559113791 968787886 269336496 31188443 10725712 345798580 408230835 96349352 662396795 488025918 607248657 44335287 430474559 582656991 906173447 503740860 351077308 940004340 243069459 192637185 212666706 24622837 793313 700563185 650759033 307894957 756666451 341217048 533166691 172122312 665520947 432247901 975096676 2931682 73894558 180254522 329150535 563735002 524044448 515199700 821345053 965985104 313241748 475244239 502821248 254074328 209452524 562543194 548811485 3003768 354216264 792912192 859574413 783158376 991442423 736876061 80554232 80567763 692007342 753946668 320840123 595536929 430503451 7345131 227625907 730169176 26591403 525509664 235592902 431539403 196749772 561244119 914135808 891167943 868519674 533491723 666905075 588048141 347492478 858881333 374759767 614316056 832420217 206169665 237090311 23776341 721671900 123776108 618289917 536343234 59778635 66527160 720453799 901213045 792443454 216272163 95211857 301036576 470059432 129513469 257804542 505165079 140740386 844544168 904058892 639823846 123471546 373772390 598495196 286056909 960119580 671156963 488617984 466458983 279599915 882392053 620666631 475283641 877258795 580811757 404592257 680471184 472693634 64942014 739217383 902875806 294584534 836359896 997015259 648225050 926625862 288885288 82908910 672277423 618689466 343054183 458089057 835187732 635939674 765408247 30642848 731629248 798925633 550700538 75125537 918508228 564820826 489556664 704487392 813377915 797840581 569156642 98211012 80472959 975119096 873372497 555684164 649451724 161995663 358100022 408398610 851108353 480067835 530438579 514179497 847048243 842735937 332799331 953782620 126793624 10853559 568971189 372964475 604519318 845349217 17408941 176063350 189745915 340225270 382981963 836823153 24865018 25360427 429745067 698827994 548393963 795049290 353674099 433612819 480537900 799650947 748405734 37352246 639586428 686426787 47524904 592580600 15763252 841539178 237992151 786580579 97551442 980412200 854631910 34702110 27503946 43239431 819929802 377677291 879956058 205315286 901730589 977744321 981855125 416166286 144902006 941969213 612067800 810118768 722380617 94286603 722937872 436937500 942452620 957485017 698977499 989955504 272833845 308234678 600139470 128815787 793551235 717098876 162177169 842281363 738292806 321391421 603036060 913696856 926394424 25992616 669128982 749141702 116725179 8379735 70264317 225148800 43240336 904746374 429079471 703165460 911843292 12210405 384210481 72409870 870008151 15705835 947188151 496957503 435598713 810015526 305684438 678499207 930909660 554580911 794209449 748782213 806294531 595794496 255099108 42875886 909887619 542340131 786820749 827052789 737887908 108938178 887373918 964515661 649572898 167284045 29711843 18879189 668555365 423796982 114019052 159509274 440808805 770276401 818337501 448052571 607339020 227427857 503635070 112636151 757036339 658765748 483139294 797877102 875377660 595765090 339112592 349265625 602788053 709945181 773857582 84374371 187177804 61521362 381819268 254840423 887305364 145708217 383133443 894764638 853208204 107218422 314714722 510529500 964608719 353093487 128202939 205498858 273775535 815286314 230453252 623549803 805705605 156169534 37808203 99947319 672087361 5665652 579199110 632967914 637879501 407059456 932498670 665964556 36353284 97933049 224446024 464705094 119124761 776985763 15071366 351914296 797666541 555768550 303611827 422645684 787235215 540974963 253429356 389890934 18748213 934743334 672723596 489971501 13459309 728926793 799659847 916144244 932417800 235925796 827096229 938746937 850775124 113226792 77501502 887442814 185080758 921762187 418109468 947914450 182752735 457757994 273415971 181521208 455791782 435711063 430935839 968382831 680774467 269603073 59191002 856099954 816752048 283886085 71382468 667416928 134333649 4581534 157163544 125439541 684653307 405424061 71082520 791852739 427653918 316317643 133146506 157588555 493835769 78402110 82854794 989249153 849174835 660343729 240756817 786630779 887331453 859097795 67164366 833042799 314651201 81933646 23301473 958737830 227073155 57513711 296274207 188156614 38528483 59228511 871214978 270345837 943049223 841374881 106463326 704432509 122747457 578019631 321463965 769483201 683817634 57916365 409696123 63163086 660684914 847674837 129775450 940635196 180084962 982786449 376557200 539659096 912084755 773384939 171983873 472592884 116460140 163164215 387367431 339293495 220585812 937013685 122884389 808908338 475538620 767473877 433561117 470497921 65704471 109132174 899211969 133136142 673655310 74880260 208070717 115488355 255556773 919617242 37278698 540882061 602143498 857950657 866877857 381138287 106711912 77400740 725686046 696517386 703895049 736979508 834412512 699920664 683011723 485464648 610321434 451233845 386060633 461607281 361076137 81275626 44154150 335573189 850241849 410926396 997392830 71435937 708338237 759245744 908672700 87653283 304543582 673339458 270518039 618433935 989915293 577245298 26023097 279983611 234194326 989981601 922691820 179364775 88801112 721131441 65729809 407326472 34230539 869297347 170185843 877147222 381939302 908107172 797064704 126780638 112690475 389754724 652288238 525195941 991901439 616872151 986079677 990608955 762275268 78612725 800458408 329033180 132201393 88572884 533708919 815006082 72066068 125928803 371142723 488719624 182823619 439857155 825120910 760721848 40844281 496649360 696681886 61007257 573186608 644606209 841796316 223919131 81932846 805433143 81221127 56731859 5714424 727892736 120375299 836926825 90573504 904830085 287050295 146607332 255363706 183653981 850322740 445644802 583286188 84716717 45285168 313212382 926623463 618123792 504987462 709841329 201678118 273408123 362543926 636144870 544327111 4999284 15785047 835680043 759521104 433549216 766339242 890526500 457227515 887410657 8060172 304018728 306782928 568485203 472961332 752333201 328975632 535648374 872492775 858001074 587236161 101268187 663816897 172482225 633372222 607282144 615213371 220219483 92194999 668834526 162355193 606282071 686681833 128750182 37365767 967321737 69144678 434426983 182566324 511219365 370361722 10433929 662886384 187767667 613765133 933684207 661229278 499783844 645104669 888507749 817499378 790674768 620870302 939564920 106198091 538886413 315128919 302513353 112060244 5554361 591723195 918850354 237861782 457017952 278971658 82513205 237387701 257901886 4019653 709449307 455809785 477416528 564710478 108538188 130811700 881840743 32715736 829585915 602788738 863074779 453169452 848897653 188487552 140261710 49240397 683191894 308493869 10095525 685563780 439717802 718359480 308662020 473608741 678675959 3164430 395469147 636437752 5458214 142155974 735327738 262956470 481226525 493907569 769657989 170114731 663560714 193357544 579912742 64894162 230784917 719260166 326783903 451571848 907147845 54169144 423689449 81354328 822304191 182986913 924914892 367434674 864933701 221166460 981102065 685874119 664537682 252038425 76956333 721618746 49972822 891004284 852525218 13909152 785507202 344988234 797975747 627273808 372308625 119276102 808434297 222401409 762820933 341855268 676862287 742144258 119160367 354065863 424846148 913518576 611326508 783629734 121546274 943217016 820528656 886208644 608184522 613156966 237251550 345887566 796744405 618649264 426378646 183926977 624221086 94297741 140811771 731964927 929581308 528743964 783982553 482567708 191735851 438896460 918191873 105609994 172190200 112851703 368397079 165880246 669615839 979068723 996449309 559095603 96357527 810852425 968490443 494630875 134878225 80607515 358994058 957450188 940525931 269839831 447656959 844994807 46925229 603373103 891369853 57307871 192511304 525797115 172527444 988809977 411662881 39053272 148460337 445506200 426637534 23988678 471222418 641637810 959396943 487522435 324775425 645488514 336755141 485302032 538215060 878089102 105445027 19694443 152224703 565725286 535997240 556454132 204434890 276374243 650213701 231383422 542295657 650377766 781759860 44699009 525325560 213029630 6675287 993904404 389557436 666495564 9580839 423802658 83820420 77736423 415709961 667724315 47577963 64566541 269656200 978494044 853633859 498906355 577858546 354426453 497429846 674392566 775430343 430356126 972605377 78157771 602280215 857351162 767615480 87393579 491958896 535591479 911857790 324077968 154938269 812278990 428182975 335834927 512612254 998763166 869260033 314922718 5328771 866085991 359018780 53521212 609460638 84730606 212925781 29062105 670153292 765413118 563936760 641891584 482841587 91236310 30777200 637323027 82875583 398885763 602738674 49457622 393053926 535113401 353822493 555478386 492498133 295530612 365098312 440006736 782540122 597561966 104275303 168090397 450930547 241556752 416019321 299801316 605383370 900984048 652235276 971551395 993426606 477098677 965467412 464663402 279074430 519755004 284810949 854020053 563488977 15431109 781842434 672944344 492175341 533686949 906722214 197901206 906727014 286014238 615371740 754920030 1000 95656666 575482056 505358651 697477367 98888221 922719724 511294434 679115812 557651121 696289767 524079546 153658857 668616928 346286297 424377231 985376155 327136128 410982785 61653102 63546895 832243717 955798006 471768486 829241487 427705344 797052976 110893535 624034946 138614539 606061698 315055892 21334253 963232222 285840276 901555348 3338745 210824028 863309748 69168349 799630914 126480817 618487041 79567599 335421605 583262274 124644975 352675697 966878817 136722574 468300956 187225024 429932277 998890131 409544859 558696206 102703961 613184300 39780 970677005 301018033 193568226 90634634 598847081 289630561 438018242 925295740 217771164 129608126 872612278 528248884 40386081 962230886 845238135 143896646 438672142 801516691 857872092 766929015 975797056 105980556 687600908 499962567 136080133 799198311 855607840 681192420 226234937 292908532 547384021 290440463 658525295 729759710 422657697 273359811 31160221 827610099 140127574 787978282 510859792 135731658 58621777 985005125 627239180 54239173 639016702 346846353 67828287 567970502 879103174 996342597 653158676 948757554 664430855 98863653 61504579 768476973 40446342 447205958 138845539 909278025 238713441 181456717 415144113 525165796 623793792 755271961 128333486 157789986 834239071 318254145 180716942 938737836 433028416 406280345 937967229 164178317 90678221 64701140 661406644 703953899 102583724 512641955 84952795 106862682 257220569 70618199 726219840 225836735 178765682 994919163 758459773 862421611 62681014 237031884 777261474 259377566 219941049 584228497 515315740 626593816 451071641 855567986 878451138 442430030 391934250 155252914 282946710 951842713 445655778 367190051 447940626 841237512 838436086 124798677 731267 613184052 557262878 466119670 813168651 115501018 155563853 404053718 860487540 456590349 379505959 143632651 741029164 594323684 461047536 595382267 406469718 145450845 388445149 100637887 880681956 186176156 828978404 606148256 86585069 693779662 756958834 10062159 494677291 952115038 246795386 595204256 32632914 506233390 704130301 944999570 508433080 428727725 601029475 648042163 602207244 823295105 644161064 752905845 995229605 550304960 755127669 352333786 876124412 832126247 481354221 969451412 286967867 475526516 993215920 619452537 957396017 433108346 58445912 74878852 193080824 165154870 533380314 513762063 661835165 658682893 397309599 199501312 458565523 595030890 162752960 630670212 266259391 165864841 265624981 770780032 804484675 837873413 236415640 681305747 734231564 59103357 546158616 736984482 678657921 239528703 156659817 495107851 584515723 65103681 477321291 683742499 13921113 425841657 1448179 12706430 812900053 6437011 619595538 313872596 193624850 191470272 903502586 694266540 83623344 485988388 459182953 733929849 11251490 153132738 565892319 932538709 500445633 746517792 518825280 839644778 155583686 69002151 390152824 490318441 703994322 337428062 864839327 310519593 757984863 817943033 700474302 314525321 112410242 979857895 794066397 960657215 800955848 259396868 629766953 70828412 81709793 637410975 119112251 74407592 201757184 579862980 644436876 543452169 827098695 783901047 733706031 509173090 873153690 390112711 348187405 586064291 763642 461902419 49881964 633372271 284383915 540418304 135398413 646620983 772229960 382862364 620305384 463779652 923775377 847840493 859211107 233191075 623694160 331443666 902214634 90618706 75927695 472863866 74156070 233037525 187746666 74798641 429096879 738883188 526556250 510623873 524493675 599534036 962391745 35934876 655564599 51509813 326933029 535535242 390071764 471945505 694430963 684074469 137624950 133830980 701543449 966872172 703101962 760431293 546647256 676951925 746528613 295244567 450847834 729885344 819969920 904702872 181578624 816238799 47945741 989071804 940626645 120707108 17969534 789914449 372987465 991752633 453863155 407823763 206181684 982657572 708186583 792860715 487226848 112675751 108892039 487990490 346855957 591874375 885262109 560849902 714672986 978278975 64183177 850842950 716146728 668598500 514916199 641095937 416336184 539441088 814105244 565393090 842150031 603612060 245357073 706919497 804221879 984767782 552557981 727859192 738248027 387556705 651067379 322461241 905879169 179408126 71218534 140160623 833902674 146530240 527749234 808765183 424034710 616251385 398339567 931909591 488387219 874007316 415821285 2139423 374531398 795577940 497950885 518761935 462940807 644364618 670616637 485218903 139547469 323812373 564264075 867459197 855440509 403866176 44841857 829970684 654383135 433368873 616100224 934596224 725002753 746359269 80790410 28922692 838639113 934371750 663950498 468217998 514839687 221633990 999820704 364806780 654337049 219076321 627860271 596290125 208380304 514076806 733368844 273784679 601972653 281998193 908838403 550530252 134107643 159099776 565839420 312226102 118881879 284783757 402935104 436322896 274774628 505043565 858138985 103426584 258443436 113190960 427262763 10524045 62832112 287312570 563319078 880517809 108142519 319363155 216914820 126248046 930684810 525854657 273254079 35876777 872764215 340674408 15563162 939498558 428172400 88866397 827342217 986814404 299585131 443432377 452709237 504323173 851186346 444258717 733069280 189540489 805168113 687260270 90763550 400561644 169393470 601171237 225503709 20136471 617144302 736622187 215897672 538328817 14618588 81565373 114595680 697148032 961966642 504493285 873459452 357058269 189341154 640500912 7023139 952650920 421451122 645972061 711125088 211962239 833819225 912263810 75496707 714859070 595987786 876840177 769144346 438897068 235815339 406477463 709966469 335856105 894314985 913151692 342466705 457187320 426028832 6705981 918078900 290175973 133428788 567897219 963674527 373399681 845880602 523436192 293736125 911240655 136809734 734527833 494133911 620840212 931620207 11867476 828275231 586117202 4740799 321859238 166766942 330489536 687614505 807965740 417339603 923221768 352091525 853479343 639455467 53223773 413974850 44846670 80858012 47636582 750833561 872954994 99171581 995874894 995168314 941333002 813741084 920832083 912891212 416986036 868182760 246567764 91421994 774316997 685072624 635799466 837826731 5643726 368566363 148978400 440217599 194469247 488080973 438431026 442613840 16373211 31355749 969754236 654447023 223210768 898871752 79795114 314874495 352072469 865795054 277819979 602119161 259688028 102430231 265139116 537644727 380790882 696035042 100352784 132153588 131314058 161749469 785534165 827934511 471842948 561877583 884285165 997782310 238134260 983507596 932861279 74599331 322910531 422125767 747625115 381694268 962647841 115886279 75305794 829188337 432516417 297237617 134222203 487363154 852025969 450256092 305323258 643701377 954628172 121343533 981727488 884415966 404802112 622190170 359764512 724043436 491057130 699084907 13583992 805265281 797199065 565571173 323590409 665159092 197706537 848946342 519609185 828522509 676380047 798796913 209913338 558623393 101986631 630575206 89681430 378789243 408147529 825753684 809892200 803764097 606497326 187993562 469407949 183613301 497334221 210815076 192837814 776829755 417908218 123010695 848165022 457458935 37589637 948127446 740351179 305838115 893000880 946490072 356917092 244315763 386997122 829135157 842574361 629947747 487140229 43632574 561290479 106553071 992012963 7283854 945049370 745539268 587094689 819480628 738712534 289947623 763771821 919384296 841023386 391989495 926307383 509332959 451793956 760021805 681370188 593994879 829200435 764822195 228322295 422688618 726366471 185133129 170221923 860449903 43512254 963518916 577073364 76501649 497766331 321450990 816618327 952847807 171088202 637598883 589761100 310591324 569723496 523046446 685517241 302982755 764060290 268102746 283759044 93601618 866020808 709496222 839252126 877234994 451839188 301343363 604095324 111438308 616528157 259077884 440360217 273658511 849156463 451010906 292810590 458739308 807080789 768229414 263488558 139185035 992963721 977018377 23620998 542007205 668497555 437761285 832923368 423568950 540856817 533720317 50976473 302544782 145572631 608749284 265522845 92233834 84775698 955550312 132792673 356164366 462730058 765642542 907141907 199095254 149170195 818547787 125339446 115547580 82285139 693755824 739587537 230650566 125285593 266943493 930581648 575024035 795024511 62848957 87420832 960346524 510730711 140516801 414869092 274306612 329648793 776521791 577595232 414254581 376765509 349852561 111558834 978999290 218342412 585636001 88480652 88713719 693613320 902436366 841874850 29469834 853867959 757508844 294919250 657428377 889285104 381254156 748278911 269926378 91281158 36738229 256213031 350367608 66620614 662832441 886768058 490788911 742131914 578254806 6227194 841568313 646000137 934346184 16761569 121931701 393286813 120830101 601521439 883426306 364841852 941999454 701348666 910441566 299037785 859308947 420135330 443748597 230321688 756199877 34090182 772665679 128159841 891709109 329748207 847178719 856553779 562338103 580691272 796598054 68099662 665401192 135067637 235309341 429584665 759803151 182035548 639897613 112349630 93132205 101378545 100481228 54070296 721048111 18709525 533395664 88810529 730744943 38831555 482633301 649437089 597832492 569892229 33868113 146124032 92941569 522181439 641232179 489835479 720198535 824809185 738985817 374571178 700874456 135927570 37883581 296388365 272506902 79045174 645858233 453774836 692170072 414753372 193372181 495179269 617814151 734932105 942478948 353801273 456973262 283822853 746275477 379351614 433335167 640284260 889623195 952962094 58250577 910391129 512614915 847198652 433628444 116197285 523625160 138949155 958548966 227588755 305887192 765719567 571351934 386790942 707625689 926390794 814065623 80269636 839916529 582968038 541769826 562210417 1000 69200876 906316809 488400597 309510596 362753590 67273661 202477785 140707705 43017541 310839415 669092008 901766827 205438419 673911369 883374137 57257716 551881235 382373664 901970049 60146094 837526102 916061245 143938399 44536250 333080912 194060799 89748286 186740858 130019959 834650890 999793263 593052158 319816090 146304560 652379738 713009311 866760466 221904399 919130341 694897047 425887080 642057944 885893760 887439716 527072825 214124183 921833276 968607156 442312282 117196110 372792236 853951788 112982746 740401754 326109528 865289695 775054228 773281786 879949018 40283213 484177313 713774596 819683915 731425559 407247853 332164673 145879521 837472457 33017941 425267663 837114567 391083181 69881928 632881786 896793660 73162099 110692290 555470270 453438970 169850668 946942185 466659515 459189727 395786078 968820619 603722795 274463900 807057540 923986316 837366975 322835480 455012271 859196699 349591191 69473345 117577359 140901860 695239683 973248589 786855498 898561813 206122178 577889981 941833105 631055452 273878898 738927511 94649835 4139022 592902711 496478415 36034243 235191280 328945397 171794707 173066500 480801220 45705588 29372712 71239983 906392683 267290324 303368388 384579378 274285800 147278514 978093534 833183812 929913009 606154675 257916759 406276757 14292414 658898537 183668532 796122735 936536375 16437290 951264831 662049661 959787231 837400924 729073280 856984180 634960107 70581934 276201472 335912900 992875567 725540803 284866531 738703437 16200399 877159662 596897330 649507337 200887281 711929042 930693661 92338281 85918549 242589106 505609678 280528465 119909442 59577608 964321607 645039027 385068420 721518262 758944026 667467628 171354957 370406998 585226556 633202947 319570354 698544536 602558769 141133903 83795875 996983961 13044148 169385543 20263193 94361678 167356022 879217357 597954903 381682096 673662429 290688128 110330945 180872988 694382590 49259664 912920321 642780157 960530033 55220563 458056488 13150431 299201660 764111711 696171743 83044024 496668332 887500082 8366731 154281103 763071163 71205127 238875608 184817420 116653787 472655466 640936099 241885640 717195388 996564850 954263404 479777890 102940403 167951184 240827225 901266503 74865006 187315127 944324124 76447125 395250537 690721397 117474324 798918283 713300196 22708424 176142759 779614895 560051009 337333735 482126297 994521695 770253425 525577141 404607393 84276371 183054612 972135422 831862324 715771784 938262000 356937045 846728926 61011970 385999643 804454932 544891099 181877231 430164595 427491633 979518803 673818013 6191562 371885502 453000120 483780226 755106455 34494101 161921428 118421072 772779839 766142742 558087760 80578798 529204540 384068825 403665398 168844315 825835293 121571413 368038164 311929797 377103007 986001985 377937433 193308296 733845488 317519588 183079832 23635868 565635717 730332816 284625854 454566046 841953147 917744172 533170881 489811379 793023966 643059193 61327699 907447222 829972963 716246056 826913901 40480309 870871446 589942357 509105919 534755120 174915624 503114049 706417210 353208870 701479704 152118180 854836328 657949048 66290300 661829414 45205625 876567267 214505604 254425414 898795026 244574710 121693283 509614888 180660516 614758812 706415664 102093500 515118014 240447360 879708983 290444585 921572145 651647681 105909322 559386557 812357322 88115890 609580607 534507845 870279347 191271085 993395432 341242296 722669922 34674171 611885996 344664751 827900247 621217604 349460860 161811398 482706690 161038067 80218831 949030137 818531840 18929250 168752105 243392782 172840009 378895480 184837516 885313124 172615121 289008714 275484180 707244863 308147885 374634432 5830077 931350910 130252558 21747629 76779059 127776060 394675916 109873037 620191991 124493576 381282490 470963205 418737540 386654265 404332512 483510807 273485369 579385969 186770073 201520747 788926934 815240447 147630079 260213169 177826984 833281539 391844385 808066752 548882000 870692395 784313090 710583103 720899289 860474317 998876503 597987484 889706357 268100874 329883580 217350137 350115066 820116182 915159366 358617992 943749099 64503447 401933031 604303628 339168114 771794298 3116890 114200987 980783572 218160800 193928270 14766862 750106765 610172012 860427659 687943301 362363778 141525563 764644417 919826964 747503100 405953424 400447428 129997547 214155796 50133109 44416651 935489228 851548968 325667853 51743732 638139884 598882694 86916390 117770393 449198458 637457441 816294502 788850335 572631611 600267187 92157583 22180066 318999447 771709007 718854998 154599239 332691339 242935131 923377610 708126159 897464918 737588179 698216410 515828762 611275420 348200469 758532670 272204630 640938418 513427625 17599433 750484538 814558273 109893760 917736112 677654493 949186617 48813514 879789985 948285172 102148593 895347415 366084580 882090958 145343679 518119614 38857217 475038668 858111560 514909177 334924722 43476982 48613128 615539013 611504449 718191784 422646072 668642735 496910254 515051102 806035021 63461446 154396785 849572691 104752344 26849224 373161197 630705877 455067268 536770918 219331614 629171930 406709136 915192455 68545376 299460554 896544614 459126418 906980068 100173934 749981850 442254941 119267416 693299601 959230853 22980155 525722420 998262444 117947970 456791649 146189487 748606465 769742463 667579360 501679442 585711332 438805466 87492850 59793551 802879174 741575387 935966009 15307326 855616424 532933652 831202043 412835831 757986233 552278029 794130233 242774965 105616396 276779727 864939512 908671808 274676921 776029953 553849629 661743985 418893124 765295913 181762997 573285287 142301403 53017586 821657114 689186098 347413528 443773199 309898262 315555174 917367459 588505799 909785051 44872151 7887068 113391739 980930669 814329760 505116883 176812845 30778051 710235475 540629732 3310816 211897071 28697507 685567846 463016769 489997019 855832165 284558602 277066861 856992251 509218118 495590097 410778893 149978314 834943316 211056845 513457144 846671440 588171828 75213696 902038769 9539542 100636968 380796075 44299099 801154131 487560613 514353517 872139989 783470776 83394794 913119267 992597004 874888761 107205612 46853832 925866523 691029895 300600705 318301934 853187699 818487409 888402155 739466928 146484105 833114023 511099620 217435043 808489726 157497540 574367347 866435232 204385574 615204262 18829651 43923299 56061821 112811978 109900410 219535898 992898613 592356976 953117376 357538114 606212967 916902971 827619539 444510198 37581795 621891413 578406758 833978373 379180765 213052008 55062433 589713789 264567390 62800345 426349794 610405307 870224527 835693375 924707284 377868094 284861895 220113904 263105113 142080971 805311902 549363075 788107240 306222542 97139647 333276383 133345213 257572149 656759095 147533449 189027248 694381773 626289830 447581925 777715762 303205867 909009097 623122540 999256229 219638021 662381985 53204988 987791906 799353794 51594776 348824172 137603867 8575589 362538336 114730436 493868507 277105099 488097070 382573715 29754181 588346404 939176503 250664942 217487268 963559833 675877145 940376798 131736272 926132358 114168866 731577724 11344413 769793704 445076932 361029788 442550193 148212264 7889979 84963564 891059471 516849808 808471619 597397539 319341790 732135321 571698129 824080560 30591750 929588700 198623821 346509307 795327829 161356528 4754530 12993822 41430704 14081468 349805752 880110975 384713707 727814177 363340134 381274918 603000712 890810293 758808869 311085141 528003532 178952837 595543259 975803671 988331217 428943462 933726600 537830287 47709218 820063681 719638532 438037026 239097763 414750409 280696837 851247404 367841546 975947012 178649483 703830848 370107411 389242581 844583464 766875061 74065782 101153634 127101914 926828626 141341958 46437366 283401824 12828208 19299563 494037626 292588452 187262152 356005155 887059992 690668418 122543170 852057650 746178845 258000245 470379872 926512695 520879747 742786695 198837199 44739439 438086003 48049503 371492491 547470685 932729475 644046938 402506991 807874586 31970461 808783205 153635147 333870450 860815480 958139418 154117343 650759514 550554863 172216784 796393314 336246777 478254019 201907450 955664480 678929782 132515473 13509597 681444759 958256259 494314939 270343984 73833483 78961956 916610851 86200412 382863643 245360283 195014270 30301655 160734683 828186117 473774436 338146311 493558943 118893938 437430856 111029739 732451898 401862925 381208910 832993422 138556689 806496756 80933012 618049753 34254040 706143240 23340441 388632542 930499127 291145301 678822982 679668577 351429491 447671451 214846862 821990694 995719280 30773964 263137159 661844504 481297686 930127713 61259912 759633628 360342021 264869 156561291 390816761 438024856 886754640 719399090 87602393 36948999 795051065 177953834 173552480 144974765 11235384 265274439 175382303 819884031 346929209 517414035 340307101 562258947 118810885 295108079 288885955 96764143 93298157 340419430 849084442 382243801 88817788 42949703 354257585 141501079 354799435 177225377 194014331 358229822 83346202 297775937 847690411 312283129 993127252 492190002 296144800 439553577 166663507 614134497 581747162 489640644 977709743 291115067 583891116 307554119 454484468 607250612 153447964 160410977 117975549 779674226 555041252 259880817 965906523 18877572 836072272 60163911 719176790 30940701 711349708 109896387 287275811 893174740 601169242 614843978 413334161 872138755 690148174 302126835 915544542 832701557 756057287 236064624 294005985 736724522 435300271 225513013 480826682 356159442 80916269 450822066 869486810 64737552 618647633 609355642 388574538 29025135 221826205 974156492 806243298 947650481 805852336 539763713 833556772 74518844 519410216 872394115 413338530 410255334 610890798 828676269 205915425 366252625 612979541 458322882 808700540 1000 1359698 577777063 440538507 158048231 627855090 727394896 724468783 521250333 247631498 263974736 568834795 956120982 151640903 896599881 486432158 483663264 13355717 251767504 811836750 677936800 368615295 622848595 417803146 921566827 858676867 203714269 699979447 552516331 268270643 547142612 639653356 227287831 12440783 529599238 791267894 641433096 423813234 707067555 749990701 981103148 637587356 91074782 828987265 84557681 639415255 113403863 360695082 994509571 436200127 567089738 567611028 31146693 618273711 810741978 763124768 760723625 65856513 504722817 468141780 64111230 587445695 871303667 285649773 975986343 887149499 738464877 456780891 836900825 413622416 637764453 491540995 574650959 784198125 817151532 320391917 711407205 845338294 328818384 836651629 70143725 11518256 940180631 441210545 95687431 30737379 71449465 370132116 65258721 828877583 542294325 570921134 23109328 725481235 379027789 792698344 842481207 613927483 904951649 722846596 563511121 146820494 360501545 3218939 784631861 155000938 50470901 872986825 361452402 499892926 995427472 172960909 638796563 951027823 521388394 470238446 762325808 136887253 230682007 533950313 486285178 308089782 362644644 735811340 132670759 968998788 689333887 732771349 879782644 49575488 373106672 285552263 82947144 792538496 335381738 136253148 721659853 369142919 264911236 758762836 166400757 135177824 95430768 829594180 324394333 66112855 824512670 30173963 644019109 687431886 859527726 907668383 712201253 564037934 196277153 622606956 943103875 962061106 466621110 876665852 408226010 652266395 522213577 100322247 907717395 467885697 939623589 162702174 498428931 894782937 341800052 737296799 130870891 602517956 462717637 168811941 734333751 57442622 26677217 982128378 583694633 371863214 951185489 950743975 130461169 856018353 760019406 548844548 345676164 855914017 179166256 551035329 78087170 656939943 203953900 3851812 78548380 32708007 586714251 605986805 390778025 590864305 696810128 552485539 131562611 457957316 591124075 516374642 9869660 84933826 742657221 930791134 730606098 617554588 106816785 918817957 5364645 67511686 455744198 470760185 994569161 440187671 703991612 826418459 940143926 248757975 371491813 375600850 90016190 602252837 195188584 758260825 573371466 273876507 760329044 556712449 776830140 547155459 137916389 38668604 950617992 200863690 853123868 54676989 767460518 424169008 840791607 61643131 56329008 388953277 622048363 747224064 195807173 978068750 875666039 162457040 400272970 358474371 782380129 457935361 228453162 607982331 522040562 174133597 634247291 71175551 736383835 593556691 171148843 902846821 502214977 67796507 524503791 896653893 440918450 937927681 84955271 393253615 584489834 907390430 401487098 89818907 306668792 263629504 324601810 312631010 102794278 175177447 37368341 496213756 140062183 686957396 471001017 36619345 132103199 25170091 183205684 358878932 481690404 593595200 120422840 599737511 49206804 281117057 116083934 538693536 94890906 568367954 567877057 236701797 911128098 951427290 859076490 653145240 320190969 355848761 740556698 676045631 809914032 996534086 893664362 947327283 922770900 364698851 91459883 389186939 507613167 358406558 215346687 509028752 475082811 111464495 663572877 83971396 257347942 451417675 933368026 43498497 792792722 855171649 130545304 582758541 681580631 44872374 572703649 809418230 50275594 912604236 171307887 250670487 691879099 687150439 397700374 321914223 772995103 449591718 398796142 509414088 983593447 407840332 678188833 91065117 370525923 382241599 16558790 895325753 697492190 377555510 729067165 657138288 827355430 106158820 108531027 336951916 200093474 838825017 851571114 446245198 451407483 204703468 160119358 764289025 882122602 92002988 29985651 227286720 322163469 646447741 307283282 346674586 889933347 891284230 573388402 88999432 928218823 294137515 579433374 61075829 957388951 608192710 701742225 994896282 708665850 125599898 222276288 672456185 82869254 595683651 515835570 633960216 208779575 948354195 28776456 606024939 26072983 228331733 245538024 993198614 635627545 587420668 537505034 29709131 18700728 254688669 966177489 132093203 281748892 148275359 360711032 197383703 570198800 264107664 470923440 39093147 110862856 262081700 833166315 495108171 627301498 568067676 691415721 167160700 586627865 669386182 312498292 866960564 725266549 731016569 117559352 652992045 292738215 664094295 379017371 419509794 971582788 694275975 762614176 335382343 359692438 983545878 722377504 328335676 360899547 230103095 139365698 602418849 174716255 85789884 717408703 479305946 622620796 143278138 730820134 847333722 41199825 155095090 19721065 531511023 96462318 575059687 433408086 45588770 242346014 922103717 506957694 27918537 935663080 535543676 143751969 990882444 149681527 708930477 972118839 103133022 290904010 413231657 925960990 850555981 669460044 27207424 481908259 445215939 738886385 87665741 818679787 267217598 501814119 656305627 749082359 811032409 105878029 338156800 390773068 780242743 934504902 62641779 147579504 283987256 750755357 776123641 886856171 788323341 969450940 763868614 169988781 480675931 299294457 406950624 539860092 200919397 266704891 846994778 333892386 258723191 689879884 146560476 342442667 537302567 215833588 166019872 425971555 818520007 562025166 508404443 110541302 442961564 996148653 350744632 266578125 54643929 148759975 638294726 700962024 990934029 345194870 814955568 678771322 180971340 242327992 518608804 692737798 630021630 346862430 540252941 130917008 159747059 991283246 14882556 490343610 794284134 355713011 960424863 263195882 470355664 996187991 474191917 711094248 819967403 27187912 135887053 327130014 378134485 258216200 127866174 85056804 359576833 523307578 571728869 780088510 708095546 522040667 264252345 794366645 51975869 345941849 784707850 422792323 623542517 942508214 92229724 3804995 45366645 165597453 229274002 550560741 59418062 770803880 921756263 87492344 19208576 558068201 387000500 178707593 410015688 653302688 348480791 218396276 422817442 373626054 609293255 56033371 238078663 964675063 641367773 566717084 979603852 772170075 485727326 30608973 705476207 854003957 147258027 231116328 205950373 753571830 112046211 687280858 905942984 435670185 406543981 142260040 837449783 707611421 140814717 338736092 665567615 546119463 43663126 904111775 31586754 166520646 629179224 339430366 823209834 461477162 954388754 251211190 141457408 890191070 421432627 412221025 404722534 114298839 406505300 662808362 440639518 564364344 245080888 22398061 341236030 546596276 976451404 696469499 77959583 928968430 409843388 590379913 966475612 963972353 162682368 207705674 347018984 755620118 847195087 655770585 329870919 647311577 92028118 688738685 956545093 316962577 638446140 624187451 435451734 654360917 218338 68275035 296507794 401475332 373917189 116206857 895486047 733434326 425153578 517815874 175427391 569794963 433598712 386703576 450064605 159322133 223958999 804540845 51700305 316521598 858946887 402599619 403853065 198599611 445767835 125881553 792396115 139647483 408472118 397338830 671822496 481893587 530664340 781225547 495333618 943705629 620653611 827490989 539149532 489258479 955428438 616500467 172338145 258612459 430016913 483701921 209408271 700877708 192087608 85367499 997068143 775753458 800624404 33493493 881548043 180433534 258221337 499270427 106567527 159621713 788270009 53518736 413864370 844329203 765192275 233847669 752466830 41535367 933413281 758445504 410928154 671303372 53069977 639776591 569120485 223949629 738396797 829319157 496039520 276138755 635848363 20891551 266887274 513416042 509037174 413897055 46327000 188221795 204765119 220217928 72454479 330992049 933591603 250138231 340250592 839289836 338932093 75491719 820574318 367277291 658366138 86586992 354445639 682665895 35118933 12264813 41205204 702838401 998263917 708410677 481288446 818436905 773696633 788385613 86418506 293804035 22500809 927342325 541283510 585681569 121317445 273857909 640541729 447486536 730046487 46964772 44923194 670875713 406978764 947621235 346851852 688933946 192484941 153075617 777282414 478323728 113039589 469726389 904678198 138463808 28515845 352452185 587384155 236482941 618325881 163400793 385336 626849525 131439675 269117885 672717909 182112578 12824078 643033772 442069554 846023608 623674682 657308800 102451218 702443600 981603665 135526614 778368511 805656586 412149663 649946658 831261731 369899825 89333041 107735129 788149195 532578660 103649130 258337854 222084492 6725580 161594024 549833502 576679476 272547932 394368882 637158800 518332455 420236149 772680680 419715464 497466831 40718410 726244059 558159565 871432949 332025585 245551619 885761110 600967202 34414839 357445625 842507878 70788991 39066839 931559785 638717638 158380897 627379192 267555995 115351263 706473660 593947704 899420205 790840069 57925921 974263757 436674444 52735027 224074639 171117472 899400142 205437740 229137190 954110500 445061312 362838148 194690430 904742849 233044437 553339455 290458548 910689104 708627803 710396290 521629715 568882126 754721999 885886691 481351885 611233898 817867051 286633404 29453716 907673613 966418333 13997780 345523878 455552357 77393903 48407496 327773111 934450296 211720558 942832563 896792546 501791036 924790163 1269786 269239690 912955724 759564079 74872677 41606634 655636335 470110960 146064686 300394696 54534829 601712559 898797108 975561853 427842290 889206954 890995124 498042563 832610001 875570465 120543868 777011398 556317 71606177 392290882 505996568 64277032 712162937 9928393 552310454 48181852 211724363 467590830 324042651 827701629 43517044 179659850 763042913 69179532 85853663 321319794 348333341 354469312 224832554 951740541 866225247 498327109 188171344 379404269 254447624 151488569 523468639 285547971 1000 953739372 700140480 417895348 488408339 872875286 274702273 873305657 410266343 91885232 100899164 19342812 822358370 20115851 45929271 160198878 957284829 581120562 444881823 787396740 827019258 326648955 487313714 725587234 671998763 292754977 268197243 864234289 872922163 429626357 412462453 666468658 428728630 539784940 271213678 970904348 313737696 827048063 43227524 838129197 393290780 288229276 566922491 749507643 710364902 633717015 847021302 352838718 563080931 957389355 261409364 99583975 4319582 107189979 615769843 102822776 881186595 340648930 885750237 768824164 865668571 342043157 846561282 70829218 101167377 502662116 555508621 688838392 266348669 904947953 870295675 776230460 373476171 333650213 38602260 860397216 481924939 453783670 906285604 713710925 868461766 681417640 100351843 233697505 282381005 926179432 868156595 739552425 778123590 250061275 231297627 554464952 126899016 976288544 679594147 900839321 620148532 274971912 83367386 744168845 737642867 652682819 565497139 595978394 726043157 905770119 425196361 616570161 397390391 136620482 371756611 534973814 308658090 840640851 376295444 409644388 341501540 210185172 868410077 529152412 572614054 988790104 120555307 948016859 976158487 95955162 941169554 63494481 887355901 12898741 2057280 470460895 211278220 401320277 123904250 722280282 553220180 621332623 605618178 520534383 489011374 130738286 320177994 651217129 76442831 690109006 837811490 472649871 74533274 111711596 299688207 191302999 801314941 690278691 103786300 391962891 5236882 954791164 359315300 189321855 243382375 543032283 130682332 384777678 888660473 827186724 70145854 658236133 753018523 277690550 251019616 825470274 654100840 218820905 761729440 615580513 69656134 561684372 284795505 378016031 856265037 62974724 136759008 832683930 103978621 25571977 578755973 517809057 459523852 286926462 938479904 146975251 136728617 916839771 58208504 231019527 991122474 247877564 291503045 811533348 424250703 414536737 550397360 133889828 874251996 41921326 339938805 105993601 934178361 841166273 946486662 898829401 298450964 32989251 100083684 500701636 155595030 517084691 448438270 139310362 205067319 582665743 828090226 750291627 334223804 425577004 159680875 608302766 647381945 420853452 758282449 127649093 29087235 843073623 348793293 399838931 311773334 597298753 80003211 291748253 30217506 697152409 345706945 521083577 245872205 412353907 829275443 53176053 683914101 151711145 8164496 145753653 704189239 857891621 73813081 202523641 584444707 94402590 734098831 252231975 816093520 446462794 423345468 536014043 86156000 313363850 796286340 956435221 58782012 662072030 329126330 39839709 177895657 795629594 606808868 696404883 433133084 634037437 880409387 914412229 899865413 950156779 378208589 825860580 982727847 224036061 922216396 256885988 572720944 84546345 969437568 870119099 463499855 615540646 30223209 489416409 550189699 835852060 596299926 378128583 172775126 919963748 428133878 894026284 756949084 645877118 54688076 797950770 483569384 870954354 141589054 214322569 797227079 119475791 365683443 121879301 708154771 729562043 38700210 307656011 697312489 19372049 4907380 424398279 670287074 465036126 387603833 94501615 441933092 715468823 531835483 164325511 168228075 254747270 359604075 181321316 480127184 3822117 476726773 106818347 571466503 775230183 915565750 753427722 872415040 512606031 302466193 590366720 504589714 846184533 635948720 486881648 633536364 593467254 682157812 458639225 799235093 158804639 45349850 593353442 864373025 201632268 492953117 646299506 779098032 495233166 80467512 743750708 601551086 834993166 536644676 571291379 584761849 56330273 666245307 731778392 163591256 436407735 925081320 280564440 138059119 533939364 683808110 323030704 801853252 392528720 183138713 629542474 387783485 927840690 958604796 392392772 149394953 246135923 989979685 622348998 54871102 808156162 767090102 243356385 878959926 656799218 355128983 624994477 464161778 547751850 404371690 188624139 533867582 979098104 854151102 698505527 671833652 947491838 89117393 402842562 475009768 259840053 838954112 993349344 332239500 611441499 509782379 681518245 144031417 467890926 309558052 251052915 160133353 113546145 200774594 858337081 109025175 789225309 495040960 88864806 312999009 798482088 891312223 118199647 58248591 16731037 471847452 406095495 973769442 948831296 845266995 243811507 392019672 530662100 65567177 188806728 61903234 848369971 25688256 511200308 970021863 67329259 663786197 369583912 571118682 977059407 194636012 370970000 355957157 789776999 413403741 243448616 869132098 125842632 672617255 101397727 443125435 603595142 143916615 962777200 483992567 41438446 539422540 82118288 162839234 121710641 322600243 726432459 656124510 311466386 232427290 681447286 442178223 324402215 274112940 257226635 111338800 894075047 80140541 980291435 587144812 43802718 144036677 480753348 126833082 381139467 712465233 55368083 418314111 77309666 341159296 55933873 661703338 596137996 919738905 554943979 599121712 418985314 952042783 998967887 328690555 359787886 14268747 860489518 429627744 894484453 608707341 697336565 477839496 59988030 90353718 594510176 544248699 362328583 513777436 364100124 445586868 419754096 957096055 130140595 350369541 815684024 56944788 201723168 785432649 428021697 348274211 103599011 46068596 936204459 209758976 828194839 289979583 923670360 109992796 644244037 277390445 203635516 190098538 679173172 519022890 7571770 864588258 871529645 649456083 625648919 362929977 162030484 157251122 405384615 313278741 859082902 453933206 15584063 141829520 786857746 576643373 944006802 67232969 442664836 512200596 669284004 25704320 3384735 559570238 454190376 842662945 77245800 775704068 113537335 698141160 477589796 323715789 492240982 990484967 497851880 885415348 465556185 804731478 556493870 646873525 300842974 49918638 872790531 457296538 789579441 98313092 401048498 257993844 20763831 925004715 898312630 834464002 605359969 678803241 65942173 372929048 667714008 469670851 170658888 897816356 36841227 293802881 584984456 986949032 475274293 248176564 27769227 770783742 600926695 223564397 316978101 487661399 817660697 117885653 818097723 998168195 138290468 987758409 883673774 921431244 171632946 404723217 60275459 670399534 113248477 999764611 369623832 352348877 839234322 290121019 869212449 396943253 16396597 127297976 597675447 678236481 271833346 19536381 318806782 771249099 370553904 737232492 578942284 999224984 303163452 905391718 902206918 153892464 880108904 208868373 987229751 655042166 521315225 495474418 878737039 338587854 462872488 717338342 754692231 883514944 529153403 544403218 889779317 87822472 464258286 406846206 420600527 497581139 243975313 349055730 419133388 408186833 353135382 450760303 708475722 189988658 904740238 893544762 99923089 836391386 438396380 631913896 961029999 523081222 118045545 198121585 245375351 373383585 663340903 611974536 125672285 31223723 958635351 430476062 9376757 17765898 118461707 501556372 847995807 691979192 808600181 796373232 438805035 47876869 672533754 182219588 84531962 197809068 21599262 257794078 357238885 261329208 154071690 507516049 406443666 803427246 449616811 636893914 629491059 368827229 877190640 472323842 992518777 373310124 142824788 786061538 108771458 727330490 984492465 727027232 440289692 687250389 620141182 749136401 659206449 56754028 51077639 131145866 674781332 443324935 39039777 264021433 7819263 498180207 84663902 754474571 331429687 80121080 786332789 130379178 842438549 839310335 888104742 151915295 106865471 524249155 829055954 522803930 26635181 408628753 244816649 392807608 755644071 28776237 533642037 807195669 750320517 764655615 928239116 659481087 187912818 984165352 856303617 736085443 399246354 67272006 254768130 177250773 725925525 579728519 745759432 547273254 777407436 921608596 279350563 975773395 773268487 63606267 390926486 409410300 875956660 488977013 28577830 704777539 112009224 285757552 106110397 513427176 887197015 484884392 633060058 423792271 965918223 70634361 900516733 531622230 766632999 254635580 508524190 827597553 952437833 172903876 648826388 975949327 636715221 967381352 817778301 791987870 597477060 112784229 376164631 1588003 616605179 975332184 2216348 749538003 779555675 39938936 364543887 822580421 458704378 459537476 994755547 846756339 97828789 973403966 750436633 862329148 750364805 889597486 409624716 71491401 434606545 201386994 123961229 45124901 668551772 858885620 87155981 180773528 375511688 137327100 188014980 738182403 444218177 395036573 830652734 118756957 430434413 307671181 458851501 241467715 54028803 841477101 591510866 273818544 967691862 457394032 716090296 737587741 837347616 267304622 761215567 657985231 933265235 301957774 441401449 936204557 344055088 259824694 279836791 883744764 587574544 209711153 115419386 661602047 584061534 449629335 700079170 593183313 336003661 395921897 425021812 555916063 907832307 480695763 14197286 38683016 861764461 50599707 969848043 892622628 521669199 524391501 111750284 285181978 483594224 418799516 213220611 486068980 108606909 88014583 413654514 114626375 698189800 855350835 224242552 265334030 326799077 326267614 653010085 502738594 735277595 100025868 300400355 770419422 406303665 941953729 8993912 157769592 58549710 603045993 12414304 575336547 609665350 448718804 966427378 857421767 545538289 776698402 14610823 985072774 733961872 926049273 471684424 51236309 798436472 451637734 92755228 554093283 72707788 228616331 30224683 718942666 325565119 136559732 129535289 124542779 625416616 742060268 564204229 62574087 95023637 971843 433719586 649195199 663994275 740927349 911644744 398916859 682153438 962131885 898061306 476707077 334715519 674795098 668945997 730659936 27629275 525892048 236575862 897531851 572035600 217991660 1000 482692454 275664358 313069404 43909805 888358454 726299968 841345229 243449513 487142026 166610162 136743972 167687596 655837640 415432991 34957460 833644428 374307743 985644202 19253720 7303631 334408687 5479966 796168912 137099868 832575471 893973417 997942122 657133937 651095329 788633470 71768236 20958892 891118718 132607806 552346396 257856859 607134862 863233686 922252390 576853871 43244085 986898370 841639323 71869157 826444740 24536356 201095079 129326845 667997373 675724380 410337269 905289387 521822466 940296511 405041892 427658155 346467347 524726993 531465832 681546238 982113389 58748934 987454137 122712798 933665304 639771514 705795654 450845503 647634289 612229713 466557858 928345605 831488624 146046510 980781560 54012488 931680488 540550702 64962338 730446341 846740883 597929454 137538144 276534328 621526976 482547260 418161853 32169577 929912893 40565020 308606347 120729187 537723032 341231298 565436752 761883780 279383830 217859403 337899234 128521075 82923120 84810611 634643001 581519020 933242611 413282202 908349026 949459843 509397959 582600072 288495878 442629727 312475639 532798152 108536150 426079057 140017646 590362959 467585771 743880791 664058607 695070514 951127068 792907792 456806302 703455109 384222353 47783474 879845669 370750925 291342833 583121840 474803780 641947991 394082390 587379820 46881908 339926068 206260152 106993849 388588977 155904422 848745707 472356765 223643020 306674734 116842500 841923699 213300548 36769388 259282223 559143464 235987788 816627765 881147763 541021145 206841137 472187055 119120324 132706329 17958966 57531446 34063455 131560250 201778851 559015618 81039096 471817800 334245992 239305476 669788014 435452214 50465621 12108741 514626661 890242489 974877885 862653114 116541803 752761802 690053742 321324046 179199377 257155030 489168956 163324995 205856617 385108801 217558835 997593809 84557751 35025050 771070500 487883364 385977049 523219825 865191027 107895167 571663108 708780661 960471432 70854703 499059497 232672302 718400624 632132153 82853671 811732213 366906019 109194840 58700085 424964086 461326008 551969909 916899401 182484159 909322848 939864957 432709627 613199814 536561016 340648636 277729245 48190219 115304020 9972525 270844766 138756395 691323571 659012597 622769355 404411212 975787147 336863561 812581032 320782247 932615261 141519867 567009853 917162143 717138045 224560674 145222582 755132270 910786312 196083249 996813916 120315782 304309089 288995845 125798217 597250017 698576729 859058412 549544255 467145469 380677599 863867250 509865197 669003375 720054516 905549557 883705740 787199021 933506972 18199941 11548532 499794639 146194963 121179323 503968713 522023472 647427102 885812831 187798561 14560180 887369256 591207482 762563751 448742308 113070586 270879928 493872707 624150879 460029043 8292929 272361761 63724509 231538525 501168075 266595881 821034275 421898027 460961726 745200834 154205642 741529086 688690644 381537065 772948989 82165033 558749034 102119867 816858794 180648164 346192161 588780231 724048018 76535784 475477935 779557925 878753508 622246616 188045591 749385045 460911687 71841278 872539016 679955636 674797088 419366370 804077208 708290463 551019780 300214979 813534504 977076586 780761325 485547830 796130426 547744926 476577718 251037983 970054175 917603622 534781631 39786724 829839935 654975605 673309087 313343965 426772687 272692556 850605726 902622568 516207250 417575391 682788981 79289129 246914474 604119816 560458678 917331165 367806182 543931698 882204831 318819884 31295046 895631772 735574606 130616471 434283033 726937275 125962021 544413805 668232116 31117848 235927096 36788711 937371548 784048611 786347909 639333706 52888473 599122151 539093555 920127024 197779519 29798252 283010959 338581214 82749869 116941563 560655569 886481735 347908590 669427483 476675023 123871981 699545483 73898641 523538725 375630766 291860402 79867829 886133449 3188866 472677541 998254893 652654936 853628097 758581280 314789075 989199 795961369 171367104 151867548 684566218 655864198 946658194 517206737 80090022 666791227 36123311 49953664 713528340 497964796 991174058 8112933 424401152 884300634 130586505 258722920 126423432 71114127 554005935 87448261 583519226 2531023 169717793 612499513 734031777 253699134 739639287 928688746 781384910 240909692 175785087 264733297 32661193 765223668 391006580 964172199 45222109 337770126 939809418 917450973 477117717 902455303 508864618 439282634 572524899 291458317 139488038 51820995 599372652 607555436 639177353 50283549 127163724 578326229 137239954 976468367 131503011 828547582 845567383 100043419 870681360 714700297 453473079 949038479 722826739 573228625 660155325 492870007 710911689 482194038 403513902 809687911 545941202 791049373 820964808 238332474 228768266 645712926 696911541 28262522 40240540 171574477 627607699 64747011 492762470 667613587 570335781 855360219 571628709 227690854 364850707 817512164 959510267 473826988 904941193 747435228 535291046 775792325 938170502 769021272 765338280 124573237 107121190 463959299 410949591 406779904 779416759 105424091 589774982 134748434 693773303 63322767 13899179 205838851 647715660 911633626 57784800 562290603 445035909 421201201 12080682 508012108 848975599 816172695 618541177 751332707 595773381 948223294 680811340 665409198 158486269 890809494 683274979 523589982 248461614 110542583 55519602 733819278 383166338 853326412 482521018 894304585 448271427 504423936 695912632 185701473 195680156 839820939 806825354 509053508 61346059 486542401 795221351 940735197 141703718 713924985 258867606 398965490 734540407 864783875 592734737 96704156 912425299 4149956 552680914 645259270 719143609 788893949 907975034 41849167 377790029 359070757 47556164 203900823 117328059 148201295 204041536 791429086 592577170 246746872 502961586 372647002 502104198 202826819 969600991 215207016 53581904 129463653 976298196 395378424 356461312 327400054 215095449 522164208 297306637 340666618 890876073 156289359 477639040 457271586 163438269 727427633 56691064 34421027 557937125 537894045 12786543 294276838 833519583 316271915 388658691 669622689 878093642 244605910 731306525 336032136 437013048 853010308 946260025 608578388 16513641 2008732 525953298 28750086 919066014 12193041 933153462 78418072 790514255 130054922 148827630 671187681 772602538 766958566 998475820 480437927 166234656 545352044 71503189 469057266 609225320 269636513 402252114 318651488 261439365 64716461 70422701 152587732 569076319 12646375 577063067 960400570 210125226 254709829 697939775 894374645 631624797 729999759 969639811 273597927 765247490 554516856 943135419 96377037 612786927 449012197 277324902 83725857 285124032 53668719 317946371 68851820 521459139 725648568 594491815 793866631 890431274 253961367 909107648 914415790 772262890 583664642 168314819 366785817 325618021 631404832 171010574 684669402 196287627 436813253 166697746 589668449 4885072 118350538 146524831 954971013 797925699 722702553 92694269 782287628 346521317 77952505 15455404 24318288 779696086 745195941 219026897 11958265 829437137 800032487 890729207 138023996 207395991 974698992 462768660 129439189 425800823 463187013 965090203 805066406 714946991 904142025 773841513 763892082 27900519 916291988 404088122 50093411 719439226 947170732 180142284 891144057 336688336 707575733 215175307 186209910 3621127 322455170 617076336 69123903 111822780 371160229 766938086 888056605 533586714 315828211 40078855 239801021 351029189 243073257 735393518 839162647 869164744 73542572 383569480 882628975 556235552 28817253 445787405 538993761 85465420 951141206 455195900 684678772 156983317 288285181 940257144 723356969 381511365 947494048 372694785 202217726 458499813 909291890 469785781 410699370 836410650 973059897 511286127 78693220 258429468 894243171 174090170 107521524 281357793 133514036 439766894 28083220 168834272 862881358 170802979 877014812 726687053 828499120 928703925 810163170 185443760 569411506 144689813 31330528 882514100 685919979 829901350 132548424 868287537 168489617 268157833 21766705 777861474 710040093 393050362 876703486 790796081 952376958 125904224 38943407 985938901 914986490 438828885 19918430 914870638 510157686 859293873 506341190 618887369 221882544 29856738 972157810 22399643 12576481 664572700 107921263 217873490 531369027 695007805 710147246 49382079 479047394 560125686 624963661 469647666 241504655 324863529 839397003 3017340 666265217 918951083 576860506 837294315 128356776 133878458 628846367 593881343 310992904 861700483 21261443 713035605 23234000 909683649 126431044 573510696 80494996 670713855 774441926 86987311 736416157 555767995 594840182 98958453 374521841 577301720 433800228 230537573 61002341 256901276 858798767 23482167 604059652 42531088 124476995 543377639 784469903 352786981 824994077 676669972 504178517 99492271 870876258 83989899 627475156 910848559 993880735 189957309 546371145 730779970 475825398 107042690 880184152 812149573 440657184 942012124 419875409 902082248 200533291 143696048 617338680 970259933 803498526 966313762 912313292 648905328 189437026 52126880 857449485 773837608 998044200 202605770 940212525 744621274 543659074 88352539 548873188 630526541 114490875 256452716 196726331 84327013 516181405 176553260 47170515 340204425 108600718 328284699 377193243 362505595 333709567 332379060 56911693 950314926 694948326 373962917 696774569 763003388 237894536 804772172 828717297 200030416 580941052 925872815 740471425 97593709 826994502 209084205 380280381 906999568 943400471 11457326 283665404 1940916 933169565 77794746 356357613 179292688 222900811 698086269 783445761 694159241 197950794 183280541 793766633 932766157 688044433 261188338 987964059 356531058 562426686 385372713 409664095 919184122 382952141 278612718 168594605 128922328 17526957 735767594 468042045 785919316 121799039 126319018 50188147 32263347 171710310 332103104 1000 943201696 354551689 561241491 281957663 200581500 840630438 93656022 116401639 163492633 505768795 926967771 264442218 116784836 275550771 963294873 668125421 370316514 826725539 763552944 660290887 167927830 533211764 982660339 524341893 794886524 530084487 664863101 928412607 614943387 207759613 855806209 835212649 16796417 827891139 615895650 934488984 98232423 672417753 299852353 828706149 561090601 965196098 501068017 876836758 119890180 926997071 909909302 122532735 834945308 984631430 499389935 688786683 268211696 298945615 479625714 264205795 367965524 175660753 734530014 400811261 916726260 471865708 619093507 703975049 78352621 71947103 340630207 333124304 568197521 431374640 427920983 757572213 173060895 328039515 445604629 410175869 635224035 776020716 888095754 511105815 609422759 315846313 273825400 285992910 29637208 763313582 198814831 721993074 929872839 702734534 747899732 18704375 475716904 927383946 831230291 115228835 915532173 537922643 866837748 336053467 634929343 794459935 612673040 596820199 135467448 816380802 896632235 775284999 629556365 22390718 776427389 648571099 545553530 82762085 336022741 271983752 367838056 851267614 539553008 29064253 331943131 806780387 514597037 85999662 425163990 107648902 826229951 72863032 854771621 874265118 858892441 668919303 691996352 62847425 628389314 829290165 235060876 599103767 155423574 895980703 505182420 131830459 300605074 13032201 261421613 84971540 2574459 727423134 979970743 501186100 916610643 776100739 118784599 321825658 507218116 338405364 514942005 83616730 141734688 145707260 854148922 522954989 770869685 399604414 992660388 183011565 618540172 30896404 13613615 78777644 328870385 825484758 308427602 666647813 819755336 447883465 589777751 391487899 368629148 720358284 243637326 430911569 533471853 501441472 314749734 162470807 303023748 559702534 554413341 406556779 885510683 341043402 960066618 894599533 702837187 518086637 614591968 370848270 873585836 88759877 546031884 323351402 40082561 364279859 230023713 287046601 950673904 417692644 20881203 673391144 456563410 286675478 539147272 19678641 260950165 803394370 807216822 443822908 692620391 190144438 895768813 162298476 986763339 281063262 443805820 553346144 270547649 434250024 71390599 172465252 614231095 304699763 128755635 535380548 868443653 949207761 504980126 100834724 101120516 177144911 119896085 707053859 24087471 167035088 70642452 856136805 624955276 803090162 652856450 320091701 291676751 960626017 426897373 262085911 792804581 592030855 567996463 538367139 64101267 427960992 512965688 489634277 843831588 292478873 837150630 492018684 146795410 601044150 127603270 140287115 787895108 852506300 432910266 408205028 765716485 272181668 240703627 42617721 105933270 569535337 186736385 644282286 417366389 663724840 312417137 748573936 458585092 13083138 242083692 492258251 278841517 896707589 348034893 847143562 58862703 302489263 113216316 579082179 910182851 41382052 715507940 293141290 227026586 487338081 735107645 59834145 679041990 817616679 852729793 91320434 918067201 879836280 902347869 641749398 132692140 522154442 615138912 501260280 371200088 628379615 254188093 206566649 962646082 767242834 351866833 990101502 946217598 303393008 560924810 188803416 660072522 778377840 30761069 657425576 250290587 299939942 575709049 559466223 327510471 985263886 643066573 97835969 972174254 867507334 340880664 80781302 729192160 861200315 503296307 130473944 631668846 3371421 429419555 595667285 492611909 878117439 57234628 297313512 386303195 991746803 110890620 119454817 50086919 764680536 138379787 12121236 92376927 290002715 559817861 271926465 509710847 300869148 542729868 654510932 88882505 479031407 906774254 676375891 760733600 496940258 962917255 472705100 59911287 326113832 299432082 882299092 657613976 492375393 288273587 110718291 27161507 939505180 421071084 673806088 905036704 420115610 593518128 601335402 130884203 107555303 50091356 383048241 236816770 440439548 599515269 468033040 759520174 278154154 622256456 521952872 436174434 629480472 877131680 570209470 62204569 864923712 580723687 302581398 599973360 254912071 183251780 974069298 155730776 416552330 969916047 817692607 920970451 673744892 506828083 38395760 619468482 405940479 305732628 384396472 182679642 730585391 178099427 661707341 245836505 15764828 90552667 91587250 505786056 961389054 544865798 665306915 425119023 637879232 159675748 585022429 829075118 738660867 157157457 38678393 610439176 56276249 176927995 594269149 771152998 445574238 457741369 773906841 354776449 5453598 506694824 612803742 874758947 91445337 455986426 794435812 667067704 67994609 929847296 121410279 421378506 326536216 997241292 194507465 11619510 578327631 9952858 96729174 241074822 672913733 516531741 506009205 260460143 633877720 290830539 992900532 850672219 73246129 587944501 96905433 72825767 133554075 803201438 586482387 382719078 134703401 424966629 561166520 962344796 135299146 708547008 130495964 741258414 661820161 77930081 918750872 877766565 155258671 249348681 202609197 685904336 908465400 746271921 254144456 841871148 343930852 865591034 58109572 544584828 133088764 734087720 92822766 922446523 92162172 60022584 516652512 835900007 211899970 805488058 232469443 985999206 25149420 114052824 196136001 4420229 554852014 21265297 692292057 6993289 944133414 7754450 854605730 957382986 761987010 237969002 145928794 191677263 646528503 359304617 744146153 167839761 71855606 573593862 519633094 601814314 622010281 78504116 590854981 315844153 464645210 164830513 313354983 732911148 285595089 58430897 102602126 605175556 62219192 44190417 212355896 641835974 584084815 235437703 477520706 58089107 133481917 992021641 175824169 749961535 372125435 1057861 521785090 285748329 866461708 305352770 848196372 66019029 916275982 726671164 68506606 341408191 928682350 111797750 551122950 886298364 76062985 588880295 626000724 628139531 928385654 117756264 922117252 548560191 561977906 160811340 204377544 309852868 522606910 977429100 321057603 471141651 780911530 139912419 759375419 258065586 920225809 232764171 533331319 796451281 257081088 775376638 263596501 90887757 577106589 950118706 138225656 28128949 487274895 845165902 778429943 841222337 589892320 845369843 685582631 104148540 904995118 791663478 101524079 555766494 710425278 586278735 510709387 467096486 383442586 976501057 78460874 882168608 602542863 31958808 487900674 973689400 855586839 13855948 272406829 301156322 325023585 764484574 298280925 777745182 342041541 129333927 418059071 214716653 18051579 997741273 662805776 346774280 873296845 788494404 218575908 641085198 242584749 148113259 801602125 874508800 183634493 742705275 126989642 519896454 901819112 341047015 829763379 729680159 283686063 490202135 639991511 118160536 458404009 466896549 473192528 750088969 732482917 145926561 51125759 847092558 922561532 185979383 10570787 351775857 816952523 114749132 72588989 423911137 244156851 530309611 729619344 63212079 940546118 939863241 19633466 496795618 47617566 798152628 90843906 46747652 166717236 293775236 617214378 509962543 462546265 642429222 449040141 396546117 58032324 733707061 37160698 875326810 651939251 455004777 569131343 998628049 582851589 296265060 222118167 518851929 27810819 36985267 52926275 246675076 144781755 196064575 121971040 144252683 89096286 814073190 37527735 189917532 924628581 43551303 708969278 288528585 934671943 192491735 768632001 644788343 556308175 137286110 116046736 86276594 895257255 222190806 901400271 161635415 781306985 934034166 365633998 501250654 59774995 406501415 389638495 194326415 298386944 182904834 138257366 85733628 723495929 395795887 286741508 827946331 915967571 97723249 801590754 721416305 944945857 81632959 206395776 480244175 591334861 401277223 632116807 213533367 587610652 492078018 473228473 876842329 556373559 978581610 946793177 253520842 448665254 792468195 291343171 13701104 585230905 63507901 129725487 937322986 458765199 746166691 600551016 652040477 469370373 723836245 296921711 429349441 763543472 473214877 529617589 289224256 266843422 13580789 180158838 798343376 395587914 224721427 705309948 122922881 867832132 802515952 207254761 709696308 245931529 108511733 216819290 869819650 787812009 160857438 825703665 164034326 832610731 111277317 257293712 998117843 112074193 535158807 924788089 601755252 124590538 887807222 419765525 62788040 664257679 257769349 576040619 213805122 174545695 551019610 598251877 138484908 677236963 447717564 333477039 855450974 852086494 223291150 489023619 92026480 50377476 541608352 920171598 393003787 433666123 973770863 735742801 848864434 95275358 527932470 614788922 412510371 597427568 838809601 926413500 301838131 238107831 47277485 381925791 495689550 597179597 685943861 635194643 455786323 849702213 79028183 620432930 736995790 137858423 611447728 92099418 719817020 149892606 176529084 311507955 224349950 687320740 876577761 812063129 382975602 86156212 699908766 390319835 39732241 784138818 328237454 654513530 449448658 803434163 146142730 166064618 24995249 650776063 682954151 655267004 706902052 921024847 896418646 157799646 555217081 127781334 423968570 144966651 525388777 184322352 413803957 510102654 126488795 842421204 858388622 794721705 996661538 955310082 708005314 781769478 728747123 497350160 246274247 752700840 871127885 815022994 731064112 273794059 784285213 962890943 316155931 67005593 117603709 989051971 909296890 897767945 23003683 283298621 285685484 156520448 631142599 579679344 224911998 807044348 430839580 335998741 850784272 219959831 907800519 906428288 583738818 466391873 159601322 379186815 974535012 215738068 122242775 933132798 525916270 45636511 74394159 134750025 338143850 808315883 667019189 82604601 705668932 656357485 322510832 593027143 822695427 117982782 74820678 241112255 1000 933023662 902837905 34940929 657820210 976168666 802417534 341962978 264768792 378270359 615083099 441812849 335267291 698632264 677848969 554989999 146938614 181775592 697595012 102846616 191840701 202862786 995276115 15790120 6688878 103406756 333152785 884273334 862034116 758985980 890975862 177520818 786782617 20147181 166009578 829146450 479293488 8604226 412160836 236630957 401538792 93806397 43499698 158233102 974792166 730234899 260136233 87334015 161668141 535092652 204012385 73627310 3408030 660550709 443961464 810098718 736983748 41326985 201194687 85932128 36964390 939122504 651361247 56108659 436077525 177260974 242301626 846684936 997751136 996474727 977666711 770648139 867502560 449472287 753169967 410098222 731461396 20769684 36480888 171338040 766486233 950665219 220159676 363492966 181528169 64859431 303206215 651417893 327320156 710812813 110099269 763368935 283901441 741863823 94713629 651928186 43782656 832711107 353869336 907658358 563040596 8079734 18926255 154110872 956776206 205215441 371501643 115854062 876451806 412262120 355288120 674782084 261376081 728752199 65891645 971361809 551070959 446490575 465143281 250965967 134873775 800125198 450374024 525886151 581855826 73198081 10866604 898009797 658925478 230264165 777099108 184525762 321144800 544063888 615008083 541244114 612968056 989535312 39880240 523074826 412159269 29008005 799668759 268988517 68383994 383289608 301061368 917058648 418107621 7402691 367102476 502700259 990569393 847475886 644267132 100063311 123203256 704094949 407765982 636105438 915377364 461873545 776078791 205568343 617684860 420084026 970356932 58009345 151042041 33895595 663068228 632379815 652945977 98705650 294426253 142158270 131634813 612777591 374881314 255421048 81307439 123435873 644443786 122616667 420387106 976286919 564247614 79416034 716994190 882322354 476312662 479761714 877985041 840993560 371285590 135165625 840174670 655625225 406020960 178476887 943682011 64849776 902908456 829017370 543041609 335517870 671554726 754513318 700110318 397192728 57644635 395261774 72295823 950574501 576601188 856488196 337490949 678249859 98308330 486225171 63606503 744018839 853206305 991676556 445738829 232924253 703031363 803913244 153215595 806930946 476042958 945023073 621755459 528724931 816600014 455792916 567929979 972823980 696791162 907748851 187988568 510937793 18731824 186062320 291452456 261342650 916338995 468658343 382875474 909774522 752124078 478803245 694050723 567160472 319321274 244476667 413955808 663698051 672310870 914028453 434563142 737486008 94528910 577968222 171903730 40334227 665196443 469662948 606381123 48139741 786543449 805071310 121959093 184225253 609345307 354590834 181131179 665411692 843367679 184692177 526999161 263794722 37421450 850489978 596825826 665925818 810788343 209658884 471460196 27641269 906168644 705407365 977302680 388209072 154818701 400178362 222606269 185393045 471817448 61357142 262706695 904311139 113255215 30056566 569855358 634901246 296423936 445039132 20145684 672309607 507010817 511150717 943415569 560931397 15294125 786108216 543254628 201323349 172919905 964879294 526203064 563176954 17135333 181931084 859674756 538661750 918739658 80256419 279730344 131882237 805151585 186628820 309180530 404945533 979741062 615402248 502983181 19005956 545956355 339262094 611618994 270709095 195662080 979365195 130812394 726093744 805909088 525399733 346309843 602644578 913897003 608428530 103227356 440598050 476495927 510614330 260548996 74729914 244033647 386591685 226120720 241711026 76503454 964251269 412321324 692966550 602364611 256556189 636552159 436137033 142395743 235216123 444958566 594765778 807989712 390730522 823794230 586375065 91615573 136263169 511533135 87445043 245396933 897747368 948485925 516782231 233142949 79380401 45205639 853113693 619508201 424480237 733041210 37097500 508291722 805945396 689065473 191041908 250281748 70432254 62852452 864666128 832787467 764580877 53712789 851686618 445651509 278309444 379933639 633186067 9686923 78778646 425277621 271595259 150362704 861719110 200359601 753762848 15249721 462804538 846152701 321926554 886911379 952097565 866442981 353199741 830065209 733630251 410598100 587791676 119648325 804085557 962341195 920292182 117568209 899745049 591581960 281544979 618290515 761979640 269580593 327288304 147684981 89047004 563298387 603736289 89227819 780914202 878090627 815892999 117605397 761562634 481617081 261651140 831570446 295064468 645863110 131990496 291850628 124940549 554604751 127295379 782733438 13053468 51083660 245472987 488453343 198232729 364179220 748441518 910324354 890881070 94917552 105771248 811780757 557108968 528912521 408751241 99286457 433687733 240362183 2534279 918948209 993856955 573968016 768708069 681110033 485973447 62988527 729077566 20052743 76906775 283593388 475213652 72777443 610664677 997576185 551481533 508096531 523239381 743700528 940011749 939306035 520406314 854933950 772082684 161424506 863700602 596359452 102631038 38298098 518114643 301876354 116372590 3761261 841735704 861482338 857897261 446221939 23991871 426900364 98643363 298733250 396767679 37518346 865757265 212595189 324582870 947285512 679261024 907740535 311529252 656055470 971598432 444067708 14436704 215133106 253045270 690691116 277649174 728788244 518754700 957162001 451957193 86723483 98675675 80449272 423816117 504937263 741124982 611020399 777810541 313839622 434090092 927496683 190502738 561539349 287816180 219123399 224673740 695341757 867482233 778686923 236597410 844676219 302915154 59959346 290403658 274690445 513043808 334457055 790301899 23941225 359890763 654960764 718500725 887030871 985609630 637294577 92181339 561161292 125738798 28677827 541256343 482248904 873166537 673801100 180776752 120222902 122752816 181497423 272906648 103299545 377636989 347552301 324259280 102897689 198498506 88461589 133569883 567475311 122257348 263884728 600831191 719067070 202860404 152198736 347227510 103334503 923520937 865594051 786331151 142579890 538230346 207891221 601140129 393009944 330723533 177626950 490600536 526204287 212573492 336560715 602068981 233465049 218178239 755427498 238171595 118840145 783767560 594394802 406992968 846180416 747939227 567218790 432438243 260744769 755479352 922716383 595977561 972275220 265313036 365213307 474836838 809967516 144047971 911519491 853296963 47608186 154249964 934801353 451159117 415752318 604740752 975924386 146955922 753658028 87668607 521861448 429566279 774172722 855699178 513634803 620208032 743067515 426211416 787193848 488568074 744893413 555683054 466283908 565057999 254222078 149789793 359510622 886319635 865306851 851125749 59807931 498704576 139755311 329447693 30093399 315362311 993042374 971417626 82998136 776793509 912125456 407109651 236466942 818343020 96497954 384576929 940943080 330402412 268524399 442873503 65729921 540569060 101473597 500766457 682396569 270985503 90417238 361427717 29235305 873402763 799529032 712720944 240344991 616526236 733105060 745290076 34050965 331578718 242398290 35230230 172311653 597148795 266351351 476954879 529326934 226773159 88368639 35767270 904301800 893717521 704280815 601827508 105193881 67268142 347520093 58707683 568350088 863538441 214361754 246874147 48144720 736568624 249763402 506558735 818025696 524018027 723388248 797331179 318886603 578263764 570077176 489275756 377209471 404064091 371433581 124710970 736547550 64323429 379755966 117680567 66556938 181453148 3007410 814570868 20921248 931539712 33530557 6370095 451459120 93912375 25761121 121006697 588178898 627269267 416092428 261298919 808137414 434596990 960307678 611769335 387250992 63633225 977215409 169404998 791254479 136643732 631010942 398998787 32549743 261468358 611857655 411421571 645875846 770189255 283728258 552720027 860988113 97034345 33775630 84073304 833859939 852870334 92696894 349875769 990283180 853787680 328848038 953205200 104009815 507184392 634053517 889934752 560201620 461529962 637041500 221070878 258407975 966837861 454830938 44468651 13478073 103884844 590118456 208440209 222853122 935403440 980634036 294015996 649612533 677854534 800656438 920060008 219837949 878180313 604994359 77146504 310346105 330757129 203652527 99855146 399362551 551242488 279344294 80288909 960301704 841856257 553192338 177418104 505574153 676468768 531440340 990720177 197560243 289100853 669251280 599865774 760264750 701829985 211738534 244207475 165509380 694899986 293926598 39127479 281483587 780667327 620995234 520761544 554156004 95708906 173809265 21502136 434571042 336160912 568593613 345799609 10013495 713221610 935825812 199708887 279381836 798687348 708097043 456621054 971433078 55837052 49646251 364087154 366776562 870135879 698035840 715496063 248094207 10384262 362477310 535402147 167873270 998466412 816461687 106683690 490331481 61140235 42418678 113162985 587760342 779374723 112480282 232511083 46698279 894105294 63162311 793605635 990854213 922842838 175284664 768532818 625331658 100406822 768418376 595020320 623798077 926666788 227020946 342695894 255684491 269529659 341583604 172457667 367848034 987250454 844081276 661275971 227509208 913189798 685104044 110126040 190958624 676124376 557139028 91468568 995709577 113003448 956242635 10890008 305086414 392570707 669671115 473569497 775975737 2630699 894945147 690065412 673679055 345083501 937618807 126367676 368692915 665783096 355316321 418979526 561197600 760686256 859722322 976132691 889940206 800644309 690799614 358379341 263817709 37709812 83735548 126910937 57907929 16841090 779133159 605740701 36656342 822837748 973407771 933099119 35539285 579665839 577376044 979984745 645903167 545768605 225405693 485116216 190833539 348587801 563838291 435604379 144421645 728116911 273471304 33205307 694945272 82771960 982393667 309865582 629051880 239039108 115298712 1000 204527272 83913248 938897006 495022120 221839855 83877971 167494807 82794407 698350966 853084530 230612946 69396929 917355675 846489922 364015498 245541189 201334339 45227282 74710256 930549904 368217222 176904501 524022327 66735439 685270572 542304772 642960722 871534944 124691324 683886658 433736749 4986050 317604733 906002322 616746964 280545649 608052953 758845283 219961971 421924659 485386639 474103083 137795247 374066479 467601559 534708029 899519721 548978509 410382308 440779719 310297138 816524831 612601220 883375527 306780938 695131460 660901159 379919134 825671386 896612266 256958009 187686842 840551703 224397574 181116127 210681669 777649771 773710031 201064603 398163091 823581674 645588770 169407284 725506785 491924002 179840454 16719651 670214165 685485846 304887193 283417028 150735937 948241259 491610814 317630933 349085512 234283540 622007488 178182528 338857385 492690962 806371599 347310200 408949729 546581383 717897821 226072159 799971002 426877494 237118478 145452371 581821420 601396918 374820257 779006088 210998669 838293014 150872526 266002340 428893886 149689030 788661221 540968660 142507919 850911247 272380771 64717797 859650325 919123386 629317577 428992052 637809206 897697653 572529840 211874018 774117409 320725174 496113996 576373785 48921964 483676590 852745990 987121454 351858579 371562148 89197036 582394449 972280837 291329615 501895221 669174925 645381582 676858243 490150574 179948763 943166316 863398687 26156500 707104266 409714632 721497569 789713024 523424034 36222596 96533228 778778396 391503742 33938597 864625391 359321404 641647773 888466552 793590494 872764662 720758020 822478667 395077617 189600272 80840834 440346050 6345668 175060032 816975996 674980798 933733528 412347779 914165639 218858509 879606978 52303247 139407416 875136194 27695450 284618017 468856253 30740465 567489958 893009814 79906112 325794759 824391570 881907596 907796946 179937467 598859834 655405033 616029222 999821658 581940655 403967940 71819721 317524390 547592291 144483160 436907050 89463295 459458910 925412022 146574366 106554049 701538215 763530527 924396542 776588939 357659636 281762294 24165762 671943537 422094198 335542117 254833171 929309309 107422482 455561703 283083414 206651575 849583706 302593 80733216 118736942 581937185 961458598 405383877 743580440 84192186 705445302 59676424 80139295 29327594 823767445 332275834 351887559 281970287 203550423 239451471 11863441 131108756 189393284 722835633 547529505 27943314 22325070 421512514 454996472 621200629 40703671 422228567 522365652 170069814 994367450 200280260 659376813 561015820 551662011 6651866 764534586 28097089 749458517 817886959 562883359 21890832 406526877 968680860 463670765 6990495 795973740 200952692 839459947 789444239 743324786 920722582 33135620 310298923 458772263 378027996 341244929 535662271 706228391 48825927 378882293 383938917 483569861 600099635 246987169 904825266 993537282 975658449 92752774 338638320 494372899 601980347 768678332 274445578 188160804 853128165 311753461 135389883 77633610 618870407 935894035 66517472 806470998 304127857 778462984 184744683 391678190 103265177 965450106 251866573 562474261 685088193 978793653 433596186 261063668 68604117 994146766 618146717 165719503 590943103 357180356 411415559 895007162 912874399 563486995 481026849 233097532 470490139 905299141 845965119 833306967 90113355 447770215 448905022 420716143 396974069 422689169 108976518 860378162 78735287 130313745 663476035 721152088 421622065 351646880 806700390 213984586 57282908 984919130 671512589 95340685 551714088 211234052 677543165 633299567 805465830 763843035 18151576 30248913 315523376 239615819 68329787 712562450 875432699 783153180 462141699 996793070 590484893 451084643 51858416 433339172 962374884 87863097 374454849 59710040 786204957 577454106 53639977 274648224 297050410 937758843 16189502 268795642 89313521 76917355 57565459 697278086 202970839 484229151 146705640 717441649 640209029 58335344 327086818 217545414 524259296 893146241 942292146 411723960 955275083 186760373 550216118 907537677 117379896 213680736 520650891 198314662 860577788 86437198 292623705 270337306 140119404 530070583 965828036 138281426 860628980 702225644 686816309 976341039 612715466 78694330 267557569 331581654 508374806 792976126 847018086 510683151 678767596 36620708 273951771 74552198 140084450 753617180 710469320 406916268 870495745 926249645 470062762 747676360 790903671 572510483 973234068 892707780 261451590 643539438 462564445 407003344 8053983 123207209 916248666 404237860 394524450 475466058 98210960 697645970 732617349 912912726 24230797 470560345 34465146 984443823 782900485 13425457 418157201 345572203 179666575 102516248 829585186 648803540 377250454 761678729 826115885 506458678 875216483 522776935 226842449 418478200 440730530 36496446 130707714 915452439 790271491 21356763 107798426 106096767 225125599 817996245 443974749 158835865 325157862 752193420 910264075 745159572 439348611 599684441 428419718 251446049 791496466 984126228 737703060 176223925 828539507 544869855 294639255 743693798 247058389 817032812 241727784 948059024 249248540 698914085 959929688 235880205 226088671 182792084 50715272 393234385 713835666 917207761 232923910 238432140 908055265 591953171 389588696 941090970 387854415 828459910 502000308 819605539 398524737 859731271 727660812 294789678 61588067 686338989 70684016 532257685 20829373 246349364 776795871 974057961 702775216 966786578 989148978 269417023 242923849 143473306 727853141 893561609 685168321 124037646 430599125 27993018 532145679 545071466 457411108 815964929 400722703 838847563 624303027 123517245 623705141 537529233 160249022 107266570 858769185 874084169 91064847 308804804 931453617 688482400 392921521 148237446 883168398 674761661 262480751 729602704 206907379 612676197 276726643 275376861 195113282 86307511 651324389 806784791 589700331 950413164 499148427 17210543 753596282 21911950 499220055 831363678 488632806 332616381 499264455 651833141 558746314 377806065 47261324 948802285 329390040 650357332 233668674 565052216 214844579 916858313 38648195 784163604 368199490 543941190 118805591 767055968 265379884 31334879 581067640 519625601 862864834 929406201 102738323 717374241 989999677 796439389 682370031 263940398 845537041 929578805 992004093 484238634 151915082 601341391 689810254 164831005 979626065 292638631 103713874 784797019 176302400 33174541 363150059 196442159 705618139 804224626 154484555 3446167 68540701 96493322 467653603 284107611 71740707 81090608 72695358 833334260 419036091 29842136 329550354 219482312 545478899 729206496 221440276 174568439 13011737 406246508 100581434 966625350 441344892 435614359 354062434 946335658 648756622 914908268 708702062 10395156 87647270 155333345 794903712 416199643 857840203 36468884 97976219 808823623 766878793 479707321 137785682 272174829 325774251 843823315 637920355 513188802 181026098 312915352 590203403 962677477 907924437 415562501 116386215 541447310 206869859 479463018 34947332 792012152 36564023 103718375 291422359 740569979 148111500 415712636 571741775 298820234 495973814 872338114 218909903 82746522 892627519 577606546 26029237 969883105 80779958 642914684 512279499 146070800 160862149 589299425 181439643 407146601 815459412 331222364 861953471 287738141 78658251 146240895 764230473 262459500 343073274 823674863 221206671 143348458 915398866 690972532 112083201 138048028 121539915 297596016 441656070 84737433 6288639 847591397 893056891 258013806 339875333 836020771 717466696 41776322 553360311 833961446 202700445 803979376 498464953 370304689 387658813 253264480 144334748 725617577 982081767 677299457 58470060 358179267 755838958 393057321 659313558 992208175 601662707 490157767 722412445 456813719 594694951 568133596 403399285 190442824 917376696 119002043 425669054 183985178 962911849 94180133 411197763 430969770 988048863 432175152 293998463 691476926 525940237 25771237 383447372 635146019 566679508 252120690 445065327 914756449 633470197 559029510 19994112 383831062 394844913 930034055 137427544 964404010 63887566 596811675 120317402 766720366 13124087 106405871 944756463 226469150 81788074 647845461 865261302 115928570 835796972 964808336 869159345 616106934 303376356 189724037 89066883 962946526 9207584 539520764 908989352 215889622 591865998 610537102 725512935 690700458 173985255 666422675 258168709 581303432 104817196 464208448 428751466 492298660 271402351 286586787 7847765 671246042 138299090 994663529 640129439 504117464 801993081 951725404 544295662 127390184 226407065 704962701 894109224 480165379 617434640 555114841 361672094 592562560 641426374 416764104 422573286 310016519 474999259 252108430 887404682 193449790 390388197 757507843 609418275 287985921 91162489 477433607 418935570 348110909 966596574 682095403 156894483 160388451 629146616 464686070 216618365 321332681 536517458 270137554 544322583 732321632 512083058 471276741 222619743 496381686 366865475 60857656 619503217 692540100 182575668 106879578 599267814 946261272 632844762 600638812 793842351 466264608 84613714 637000562 581390385 96643326 720035550 438580647 438935037 142579439 882904012 449813076 285621266 221292618 162798470 805863230 977071320 867873231 715783247 718760225 13079726 470758910 365123873 304807444 258318631 331224748 138454364 907418480 944533120 420941226 475299534 369548011 262323376 555852854 705306690 645410577 249418393 831214206 790675371 533627947 51413916 115197265 922504894 306445735 673852357 730844256 982021298 968964741 439048855 65032878 999200490 598881115 551913162 596997120 166514458 859865889 110124491 942937961 873688032 39645163 562615650 446502565 38456213 936230669 340648424 96960215 287496467 142406215 951034773 983703247 52092152 407024538 353366182 613625700 723859499 716300096 206479397 823218306 88289707 595980901 816945356 557576095 157114074 51411062 430874623 564637173 1000 271142970 101522969 533411523 91137793 904109477 701231955 879555556 30698842 176476674 749082116 42376549 74709094 40531125 886764599 67710516 554862310 335794629 406474129 73894881 35034093 949773965 648278214 903372729 400500270 900275468 880114845 329797071 6777502 493399863 897968945 474981954 651705159 632694522 499511617 696732385 204554698 845259887 488423646 159240874 98442721 362489135 128472059 481671039 153079034 878173378 493858187 45465540 986346855 87591248 146445171 325424613 643163082 582637516 774282697 245419942 968394741 627254281 289385089 37955148 81877182 979122408 966788404 145104909 580715224 42524944 857127666 877844899 966845480 128118246 893738259 265569619 551158110 418563904 482730312 105663846 943450126 898411537 791276622 698539283 693572391 57046751 5704784 613821435 759188905 7343384 425097090 559813569 937139391 839553537 896315677 713202156 680567459 578902046 939230799 124145392 383311167 594312561 516672607 944286597 106729601 82335933 484549278 204687166 253596474 20764202 913340741 895268719 189041632 54079862 360686191 133409791 122525127 566164381 467447919 510745812 767611084 358547664 221614637 347094539 603202519 45755779 666749716 777644271 599549706 7170504 452572235 615593771 658774897 83341217 410316067 714817718 104488826 22037049 131318741 692623771 354927987 538963798 70034276 432552526 838329616 368979364 786069029 771450884 717989833 626611805 176706364 396307959 729069016 625560227 284462803 665141268 218514715 663574289 656092083 110134962 37019944 633479456 15513177 732001296 185997278 870098482 768146594 665458036 675695039 717526211 310651818 56892592 398567502 806480316 806353856 344463311 42025891 724736226 507965006 179307946 261309024 560439981 790320570 483417786 175208785 470666804 649986394 578050305 149884433 232277444 423238614 810636123 102507795 71623261 186286462 594598704 46522855 779141281 481939875 297500617 190896736 423003341 520380266 177455190 586534821 800619307 862182088 886186831 46038271 591260481 736394494 292093510 246096315 674619744 31031426 312437862 524063502 809212324 619930575 102722783 611744681 145637375 607350357 117264819 357709829 387075464 568631225 302528640 37332869 76051017 415645908 484687810 175794527 731016657 780703674 15207123 845725803 75192970 785195202 328339589 327032493 996167091 279342639 611976453 181191117 88980921 203208928 334557914 498599546 204951342 743293380 730223199 878554179 848052795 92742015 574784688 100710905 177705476 302680038 652494563 567212922 902470921 622806783 880670397 668843114 159771626 612923857 956077959 506993863 841781756 880177538 846360146 306172323 431341510 542431558 68429761 321279919 512605811 402526848 93326858 749127163 792085684 765373521 881496905 67201607 595579755 735937916 793774566 729300656 573485887 593817976 483079393 163545218 319250913 86020407 332379750 151335553 35977428 70187329 708823655 812081312 976549274 139204938 112752898 578666267 617519465 257237035 505791098 292669168 363284570 640476154 899855234 49452685 244942568 102342437 350424356 293083534 434445824 58654127 161535047 2521097 697743426 538183858 400695866 47467853 345955273 100966477 438621605 892246332 52950477 111032557 160169436 634426085 737392774 751309798 330965428 138615853 946464104 942918653 935894211 957467177 521685466 49467841 195885506 447263466 565109474 692107431 644562680 564670072 238380234 777669691 243588131 29093704 980053914 736036418 287293700 673687933 556159921 128663557 446903392 322265489 302522706 754622287 54348713 17621383 138964423 506513065 614640529 811712287 973181407 740704632 823551602 21394174 634997899 365217908 700796171 657552406 928594514 606990303 828305661 610585475 220306000 182936896 587330051 403108505 671918768 972849806 253085877 863195321 300151425 638701922 152308060 655463414 404589776 100463464 882045581 313291832 81328612 694557366 456482870 762774275 652645083 154290654 243608574 841501869 679216421 108272096 105407805 139577041 909342599 555592945 718002644 718315761 224264969 859191125 39514226 139872164 767748743 127557350 203627678 179504078 1746480 660431840 591433201 421992750 640636971 55520281 540002298 650803947 649117888 792122005 219928101 615862434 792766616 672613221 735097311 19337949 32907031 62202027 253831030 457478417 773431613 207333157 613325902 131583107 130209868 459682688 276340601 658157466 142435555 388362535 820591949 762484416 562669734 593071598 616220261 913361747 509976848 737799508 647445744 974787594 705515566 764592704 26006216 846401044 465896036 515245040 622145394 194071380 579771452 707801189 26027755 267834962 819292635 743267798 903063589 708310121 76090455 154812091 429364272 115030983 287186967 6145405 112671693 844799840 523716670 738518841 946822288 763906127 777824445 949829052 532219015 64721620 319506436 601975465 16955439 389187286 199748916 668241081 986005220 969838821 710112376 500665177 943172703 904725033 970189036 552015261 785207149 65855140 913668003 838982124 475742514 997944914 363850608 46844079 969931932 495625347 511112660 772611089 723141459 866089010 139333345 647587526 605728047 35984497 982569638 372185812 972022668 346477448 67733609 424156395 274523972 753610210 992880146 533032608 73938706 361249962 837801005 986015187 156941277 785923004 428753044 725791964 54940079 340270745 868364865 50033190 965135668 49365176 941185371 288638009 313786498 710009906 211994560 361064051 817317779 285980676 583496176 849847956 862075707 959875079 100348932 982046545 28372991 812398143 367748776 11575552 33441565 248203381 931908464 109561273 485284932 101662031 209430626 986274914 303539256 961219709 28603784 876749141 250345692 554698153 830033773 43275131 105203660 811312808 231317582 18623578 444430605 344236747 753389865 481679504 427497322 125587974 12137739 732967348 232215480 629873399 449866658 651384156 527900201 63563434 607520683 138860966 464936700 616663396 691346583 673837055 862627877 933713467 559615152 808127895 105928543 462266088 663090414 991594636 297804054 97332196 837645357 136798024 77144820 10313960 633166375 881709440 426705963 309765912 591926542 143294431 406968612 852484357 374771190 317345767 353357770 518816777 172965953 887592857 19969373 933069371 309023910 534700300 268137490 820402223 380948974 657905992 323036478 822360523 342569211 877172354 49805735 524130965 384743864 47862638 324512376 740798233 717877336 914746507 985897553 408388392 977285195 950198162 214471211 759875768 870622771 146131364 313091056 634765155 145322999 363539556 968152825 743644769 47052998 518535039 322801947 317873666 440178129 522302721 646612559 200338162 831969419 869119165 952629115 971790997 221191790 507892896 319065118 574730889 382415455 328230410 896051795 449035642 987738464 243705735 854307649 824181994 29783114 420759234 115103111 993476121 177728290 906783115 549941061 844095215 912183011 211802345 961432562 21581611 57906075 574942825 681919128 425135929 834649062 756976559 142136411 477292493 465617957 460095626 1774866 925844531 203075793 240301718 67705225 364058652 83630318 54493637 512852192 45012611 888402562 745663362 818830291 385969323 106832943 729204982 998547663 517534781 899530572 618089607 8203265 116720157 201335428 620899576 966002087 972693423 71526651 313576749 7111064 718417391 808916715 436688767 967322288 439152364 53137882 65121204 60827751 287266746 110770491 974922481 988587334 140406229 478170266 80479785 910561566 518069247 734863002 84212657 576611191 386134083 46715368 682989737 721225891 4063559 622096063 615575010 941898897 80092305 959118919 449207655 371442963 309199991 189557619 107151455 99891556 130781295 157036080 200816638 144813058 648300171 823813049 34157507 177115944 341613741 374768253 570094318 406075635 420947657 601085236 409547753 359715846 89781997 475847654 905355842 780006560 585835182 853618008 775670918 836656920 233864812 606976183 746496950 476458691 604432417 390501453 60558375 918997250 706311313 377387126 399594102 64760870 752756671 878537085 178752339 837039483 542812793 358013813 456106457 81252288 363966633 883185813 39296755 788711799 975483939 273012196 492139814 125574166 853146181 869939301 707980635 691480420 430444646 67237705 327505563 43997577 836466187 490082795 811720304 18684371 562790189 971137295 75441708 989455601 381974479 204167515 50812918 283758306 101586690 17740665 378530683 88161004 203698864 685316044 257577960 433925834 697500784 114960130 816954427 637831350 3192788 759834112 880423616 706108764 444658536 837460003 664108368 546652882 61254478 256739747 116441571 412205851 521070638 85838234 715254080 359245296 741459195 545722252 71550566 814991088 736820414 208267192 567623928 575077936 611552547 285649818 825537431 106638443 402755488 642308383 396728557 662556077 95997470 230132032 830901422 447541472 385884038 100103667 69770572 2051926 846080758 28917221 736884170 730761297 691783282 865207640 146999792 94862149 217062028 781304904 834442786 114781141 453498495 83002863 256237954 686016871 8122204 66894195 600128299 330256739 142525509 415837187 468140981 409876955 984110331 320767556 876103713 389029914 315887211 3467142 150333963 677775470 641626639 140160247 110448902 34983306 988687010 418168926 433340961 143973336 259989698 106790516 629226465 193180568 505304967 49747097 311400986 621675380 841984927 857157739 170703915 204053856 772153466 68418268 800322267 647724936 892160433 52173213 227596507 44845006 415877662 453318086 400556641 959001869 936856607 20315980 223550855 501479492 354264482 821107345 942030605 536024418 204671137 31169178 731773154 716685253 551676380 758374004 935220129 839669034 959654151 306759288 808353530 973298391 83967288 39697318 759199858 414878137 60041358 936773251 365696852 523125714 665637856 622987154 464259281 869963755 996340384 797730392 20013102 346042841 102987959 1000 837849660 219342523 154398507 407185683 199587997 788392893 756425766 376729400 603902609 960784788 458036203 132046119 880758359 791478746 702455161 587646396 752051844 220757220 420400104 731246218 316903883 945909043 336625701 173484812 519848548 522708990 427382862 623535428 311955745 296172384 732925560 816812793 214873861 485545834 238972964 614027467 590109669 35767399 114180085 748465971 613708261 411687259 400671141 82131409 721467422 677630098 703755626 725921595 540365225 98214317 298909850 526534189 660532706 53317930 534114230 905389645 474607750 52464609 767622674 84329009 854558414 200188642 213386741 92184999 866791096 739818930 852505973 482747479 220674773 121247647 952950762 646665673 968262648 170293737 101347147 736812648 686491920 105779774 687436236 752909984 630532621 920095882 887226464 888795429 817888660 63597073 458369624 105097928 3670333 952790154 127286015 887214157 981613172 860011370 957908569 21635140 91682536 20268988 968395414 995657203 729745073 913817993 325972007 243152681 843663914 870401102 282983239 648168438 380194265 513465176 123563116 441349304 259672659 9941545 698963340 44180735 823333245 301835744 796255104 436308456 504275844 873017955 919107357 611538590 192331051 917842792 435370511 351200432 104555215 398231473 639834609 990244783 747146589 564670142 869204922 341712367 256026965 511781857 789434292 150546851 125755925 997728203 43243458 664220998 388228302 749538942 816338085 840797830 958378718 139624079 627216089 685733898 448252309 23781857 932177544 228238536 807045026 529400398 847059956 796993344 638899157 341879496 957699114 337891034 487482523 38107300 776625514 123338777 783890448 828636572 130082156 304633245 816289902 373660095 70510617 35269748 605147710 655613355 718403758 442457564 330407656 90406259 993629291 967193886 816493723 659636564 289957012 116612041 30966025 458653757 87044538 403103626 750805124 360109002 747880548 855901075 300823151 563520283 289691488 14323852 86730051 848132778 585398543 46583085 125221280 694427141 704545306 226838789 180515212 679300011 530906996 205636294 820697103 150377835 882655520 416991370 2129875 195115990 228474568 13994824 320667208 928039337 302153939 453151626 606381742 551956561 140668759 752711499 537491699 994865567 798890692 88668544 338123553 20656044 3422785 348226911 528362055 50008885 919365255 132304874 532035518 430739635 210849787 533613872 620977544 515518108 685651090 77976077 346495936 146206859 330699506 362139474 404074022 462139197 527017239 115530570 268159611 572848029 278275463 839003994 163548525 695270887 568584338 319954239 307033785 407815356 313755911 971685432 189151549 178690166 76206281 919111893 991673424 262074848 295668841 488760524 268672455 123475929 395706748 291226649 635691977 720177275 730252354 548284766 28856854 239026379 713373182 36913857 87060017 266973534 103153847 904025752 137412967 43050206 285139575 747899887 534470582 721448027 770380473 244576691 748647633 108514495 111035100 245464323 12510209 709153161 932998978 7505399 759862984 958385776 581843572 447890391 950272133 705546251 192500443 310944463 306074436 530229134 129689081 255062840 974838827 582446186 547937722 503178396 161534420 723390810 44892242 916028765 536126038 877369423 234203473 128341077 467552008 803312556 973302082 324378009 383416295 873486140 73842916 929334728 776621727 626772435 509957829 873422019 535396956 370901503 417081565 116300499 29031578 214462074 973525962 534420505 890040107 483603576 98601362 765089017 986631821 613732421 398457859 510507760 635004569 369299426 124091291 407615516 539233815 363361226 794541927 858340671 635336258 55341303 789599670 8955581 181380198 661791856 441301209 612597494 938205999 632576465 315136468 885445130 337684848 464680640 904953621 269775070 138517573 243222484 677210912 3933829 883764616 160232898 800609369 611179788 608330542 574595325 714934336 885996347 779306507 698656393 793838503 217201084 627082311 670481448 18452425 293062556 538550477 3307223 482759881 946195192 48521077 406250040 780662065 397393825 38919081 588127742 748647734 52061013 869213359 476788665 133313134 382040174 175223612 631305444 170475069 569463402 398230104 276777471 88748506 49869036 197505328 99347192 933986859 356350016 393259947 695106186 516916916 829916613 769776755 836600989 943919470 704945150 844290839 431828973 461554716 298460523 750425304 46088125 315356462 337694111 98159204 740879897 574940789 736170050 611874896 148352742 648313140 876339266 272965728 9771520 824454035 702007217 986109472 427992588 264663697 698835838 619287876 60531519 947505788 600592179 989269953 299919150 203850211 109985731 404889438 942838055 922054665 794100861 3601204 705192162 213869321 494901317 873809821 511192618 115308635 710366385 264633763 886087704 764721440 478329348 433633944 552545456 484809920 55543947 56073046 424270466 804636054 714817199 605558335 283282539 216853456 640879662 901466515 232098155 499013834 247867572 83114010 255363765 218577141 262059166 611381094 35896869 563952294 217556188 56027461 820620854 582580053 181816885 298890816 221650221 510532456 533306904 68449050 577379849 836803898 599783483 299897981 66421860 723742491 626678002 112007933 742446616 761794450 838629367 116281023 648947347 230643143 161590292 787003932 766353534 403713969 890607045 302622020 49498137 876368209 426532355 41288423 83132649 309483579 272177689 913067572 80160813 499788760 883528362 544110121 870257845 648211681 488099142 953215503 96192420 233862757 845199772 812549599 720497693 909840552 413679169 2176294 336745071 774378830 932039463 400800218 411003868 88749641 235186009 671424401 186077192 41531710 853540196 439383860 506724809 256628123 554626614 11225142 25874090 725184051 27743374 407794194 689427207 818760615 308102489 420693264 11430135 235799243 29828809 759293952 479970149 57290693 698336886 94490784 292635321 254747126 243474986 906798892 161308870 982943445 629479172 792541244 153566628 981639128 62752085 106634842 165455956 583369157 27140126 675386411 98833575 411015504 956134613 134836510 516525165 558524179 469381583 865408898 351676503 579703126 228122297 986604366 348629143 619808082 258219534 568253729 370258036 498082728 859259856 28600014 95866596 611465726 685423378 872482161 869074054 260392724 705670345 880808728 436973532 772036618 348786079 442279634 131495095 441075479 808907689 404835845 916837599 27629989 252147509 634662452 923422076 747757438 581169086 754685076 166228211 951364910 758691908 58988236 826912840 797887472 42568194 2269762 713320107 510395662 313507629 260844000 795641299 483152185 584985110 49310949 525486554 97746896 643292503 813393407 158355432 298901282 8964405 189276547 591913937 974587034 717307009 513622917 920132417 153894527 546344548 905272556 576163827 432072473 19510200 767016604 18716395 640070453 238713954 807461085 558920074 593352452 480228432 308567072 394012949 917893605 888883940 624146595 415021556 169847667 900486068 394957242 78314065 12454489 8637368 843903187 477128374 472148953 36199647 655696070 849578037 759145528 10775890 161914794 900871272 306461809 423590554 396335330 200492309 950181963 421919313 825657483 494897329 858747113 465664398 154900791 267075922 176776801 530936651 425316077 298496850 648410070 82870051 90031481 340748109 358104950 557616397 37190983 327336951 174890926 126658564 81268883 777756578 118800918 287652527 725393164 569125952 50988638 568446251 845238355 816150652 823774739 529231047 736168028 29957826 305735764 49592600 605824423 994767747 599468335 593229672 309220426 917619266 909182332 52821722 612671135 85222769 536729697 748331365 208377048 937528696 62066619 851330523 22417692 437580893 446916925 880241736 100498555 210416895 134997416 412309833 609387165 69379234 455585869 240564097 577895547 517271391 115785921 486517737 66721989 442955654 205747535 671791669 127762293 427153352 578844410 501901584 590188317 14130618 318784797 726022982 772386525 315662316 905661929 523832278 378009975 208524661 90225737 352356816 750155502 137387255 7882251 952499296 672706609 527178028 958001921 738557596 327581250 599099123 818634941 678703951 755884363 248080026 142453094 391859853 351196223 863731113 422148076 784311475 894400123 835776835 356574657 616020277 746769799 545150359 692355598 192598468 140482582 429591299 132465487 463400315 270942460 543732767 424711020 256823151 454737887 702741721 927710504 473523788 623854335 40522505 552097321 696901531 432766101 392827333 559117438 566064992 160768986 9637565 73457269 479910836 488026748 956950538 202784253 11594445 924780808 568946443 240329898 521302539 963871563 111953483 474991415 416119112 847185004 121077646 123684944 96550793 699642030 887494338 314385388 337960610 707114819 485993304 131705092 937351145 42601505 957411425 418455793 278488520 918645367 557467978 254268051 942274627 964627717 750796662 649137234 871772935 177645873 688146514 635796657 26368396 213601482 570990288 746011493 704122052 81758322 18468809 117009898 965223689 170444510 176682513 641560232 60515185 150045411 830370850 992779302 574123462 204233600 85058554 643827614 757592852 960508405 84659616 969523244 729595283 687828938 492507170 915132942 595306539 825166944 976259413 834233577 658269656 104986826 268314756 587705717 118406451 37697291 852741419 583414681 954286115 497152964 829051284 850581847 116575106 999493167 155295285 360876219 307315100 854549146 967628149 281068542 219939535 29348571 391191445 119118224 572069110 674402645 307889439 946204456 778758704 122405324 240872427 751550879 271263995 255474230 743466206 62967808 849087243 915237709 901061942 202454710 710880603 163110999 510558082 304508047 565402373 672729202 187781077 540022192 759234324 900629785 112303265 84098750 422195177 102326420 911175766 102129963 841519095 29315740 914557574 318795407 701566402 1000 287012649 197410620 712108266 950493151 390536509 457327352 322152422 829832151 155941253 447639639 799931667 820494131 932395616 788054462 526009496 761618161 760533554 122724375 413650863 357303897 997738847 149011324 35923879 305702018 826168007 382184052 795966709 40222461 3123487 932901163 550396774 226014103 214765869 555909345 47248217 13454819 758158590 769778058 814850287 864853772 509559331 349951190 381865801 554643252 919683998 994853100 244987671 749355605 466641659 41746521 837043302 311416546 363961056 760019549 809629627 788360557 808930433 169362203 808948728 750607937 863745946 782119574 439732047 503282283 843886049 100016644 559148814 730487923 414219639 661538845 516933942 962365589 543999768 675307026 960276408 678530929 44284121 835484040 48498260 744808657 901936802 451154333 447966733 492821506 855589104 542022183 564335167 993341721 799347943 433015627 655732299 553275635 763193917 124381004 911311866 580015464 989525191 606690046 674951299 697605832 463510432 405798900 208017040 204688815 266460837 644600138 827536258 39218341 395737971 1797001 209594301 611923798 465349759 317100206 323860363 380520012 706100301 812251094 595022897 860668863 579117689 513648851 909923426 213601502 312189696 122044593 645217753 140181103 723106050 294989258 656567541 878031904 754785400 576696493 30499243 824225025 505410840 875845856 115360959 330440141 546049027 77859554 313032240 323776160 608279680 725202993 975031964 102769047 565546796 842370794 15434937 670925829 935415912 829629241 479789907 297171289 928579714 258512422 83014558 218856760 509862875 729101297 71240764 208254315 340473219 640072144 519477147 564353731 919013490 433741896 573366007 368798736 362746225 639464140 77492249 963217034 350554736 413716520 131123321 547329756 893571097 897046514 100373365 984474536 357170940 120408942 721973074 841562662 46509825 601984087 119772767 345529894 394307051 406400783 862704254 726904169 505675653 94352758 628443497 904891360 51794985 912372480 546617362 44415139 633785436 915315801 947336978 182264383 663019858 929237638 879493377 921716302 91132820 497850865 875878125 109570619 805487550 84431956 617545218 556659798 851591847 427433461 739582097 625030026 945457724 862673066 596056277 982178484 23783525 563352103 200028178 315275831 259515074 56864739 937997180 461743922 286686491 226994418 945173457 22311993 210221910 834585452 306766913 902639266 683843683 610390641 468739554 717949844 130104861 434136638 442496801 705271429 723150377 329994956 255739945 688320378 471433790 968604538 974104619 396846878 947729787 667399089 67397545 613718622 913932003 986574354 914703411 646344932 397071630 361829406 20440571 955937854 18228894 35608071 801913965 145120862 581840029 717082100 275510741 681722680 865852940 124831522 798712994 891286443 802303460 133362626 266098831 861815129 49586171 310922438 287992888 16246026 896128949 612309251 406634059 793300429 6044838 189930587 207448965 864203584 554736793 579986311 402140942 633802330 532515024 582201573 22620935 47079044 540214688 254191130 808803460 574371841 864806288 11512552 868492181 145416691 602530198 523804622 234255710 343191090 85886663 174555552 155949658 339693571 353445507 942665514 625333548 776382401 440446464 32991746 790562062 71234945 911447881 117253915 831458178 84814171 505144712 721954778 347065500 210279152 667282157 951362028 291214692 822722470 945529887 176577971 322572143 494323389 702124094 525902246 481110735 61098860 662549328 698093101 471035750 749818296 825194751 79242573 264947956 485547615 299015081 72186847 529574263 1416568 473354979 307208623 734346312 992321807 890555832 201542193 302763534 968853673 510654691 211187250 284865154 809956025 974370930 151985393 762248146 570005892 487960358 163790977 786093221 644634888 356559404 322689641 185931711 982104006 991829681 882240733 713927670 127539478 510664788 847579457 195029116 632685283 53677277 635467426 994797647 98566292 372084694 121924464 128554193 391669005 742488647 177149298 631501176 358906652 946726006 518121496 564830258 492164448 122648848 820115041 719355742 830973601 81200781 895304671 707514221 116740129 108186804 199963999 234544933 160177311 783214514 209206903 44563429 312048126 2283108 761599514 396500044 702982534 791590503 93133345 475037832 122771789 334567430 2015545 811469602 8955362 88452491 156235675 927361009 879549567 428078403 592820029 937065197 892309061 320568938 768340466 389484276 466303877 162139623 998210139 457819323 463301054 94118668 575265004 807855842 97878267 707184966 101492028 209710110 231523061 421333285 655120318 684537674 692027734 581441283 796800939 992702951 330284252 60992760 503395295 99667758 605845180 847531378 839162980 884295596 378393079 76834327 495512178 874492394 155801303 248721171 45853525 186386130 900038450 991266038 90689622 32934145 247146428 930681912 133066645 120310873 301981839 905271668 412789291 614424595 442602364 564140802 326752055 460125352 81231578 228301795 18090623 359694024 196506924 314605186 59406462 317724529 132108633 635094726 744861585 576794640 217943906 532057436 168959238 314638479 363426635 216713617 503007049 148256974 652783831 952432197 729472634 845172250 234531769 32283081 444749080 232220413 581783310 289797462 79636814 20952605 404112873 772794353 215256129 119815993 600496778 606823797 653548695 739598016 130021417 518848057 856348706 772709630 122635138 729826751 431505912 591064108 711217665 743066931 193406169 113072363 250509538 128652403 360504735 716868326 58807415 958434041 130118593 15925938 139239718 934719372 277538933 165740196 824681416 914954611 303699391 724479051 11029629 91469218 731441047 338676714 583879557 250828060 419403008 942737426 987175393 386213723 442349279 50290618 83933436 827739719 667964475 729567010 998622014 460541159 456938242 646307033 660839242 312890752 129222983 832853170 480202344 348893541 420748991 95492540 255808776 42228015 931540125 588499060 108016248 80524012 762051109 494209252 938733343 430998091 885836072 376812143 344304908 900929963 604936080 38357111 317873508 950549394 849389373 264421228 944221065 511396401 605633026 31915296 941452054 478489912 322201149 621719822 827272801 456589356 655166502 971840068 27327485 406507005 32233667 123853401 26628136 536115442 376088746 497276891 605679131 508396864 458517476 975802753 413978644 207994542 906264280 86090004 48889850 2199904 262006828 580343802 398895555 274369407 5288319 610930172 982230318 201470931 283612919 10712764 211472910 848935458 462591750 215223651 905734109 865925929 620085033 876243940 707627954 81678973 133047435 709813251 25411436 616867308 951019872 407732495 595817096 230778131 889096354 547722838 273402537 257309648 460705578 83815101 432153827 628779821 842878506 171095491 634399567 684574873 696460904 176845275 992853472 498336104 581997233 294392596 66344957 12150016 191566323 687510060 283865788 793012389 264431874 112199343 898173157 505083427 788416644 501596346 453203720 987054067 210161031 602206073 912159992 153144119 160069389 34633426 314411112 72058530 133739124 846506145 265357992 67707569 509365730 748231724 309289210 428099196 951238080 680324111 532915416 146600874 332776849 224070061 679073563 1922683 511581872 106866881 45245868 687002136 628329510 542523904 388797994 449214079 399541733 433488809 6302003 426307914 627615949 691164739 897197330 815607696 873522609 44642449 745866930 707999329 271522190 529020909 138065517 813078195 266279559 820666921 143625281 173542829 963530751 207973426 35109604 865001956 549503081 797060412 781183012 256140403 419715793 469791309 955756498 14085803 119759352 808660350 339517415 158481455 289612811 193351371 275597521 143869907 609087248 884418117 608446885 198023107 104447899 129784443 277273868 306885564 393972960 222054516 254457922 110443234 337032044 910906899 803342982 674214566 959700839 496474255 653643538 394003422 143968977 526694812 393754329 816552461 235351756 408731081 481645396 143323863 586643894 915530667 601710098 979912327 851872300 502392776 7754096 624608715 697292004 326407465 802336142 816548006 108896393 807836526 152179455 57489047 537990815 67261530 218289964 878543918 606300232 559850002 880630852 715081850 551119083 440116310 974712780 571977949 230211273 601652406 755552875 812455165 429417549 703708176 529278791 890062148 660883702 658186199 642446497 240576431 158643666 94746001 390811527 922684010 394517616 160033399 749237381 425510201 27880793 784204907 199424062 13745901 362118432 48150808 613649231 149232643 855822135 46063295 311140845 129438765 65040172 747142723 261193667 383738064 75880824 487134329 159700513 427722460 954140613 92965719 88080936 545148745 632776896 966412334 318205682 98229108 291604940 413461005 772580299 69443684 216408689 492564071 106762749 574238431 945785057 859510518 154152463 348311378 803458004 96744522 446961035 769429950 564273739 456907796 878552186 313630730 517621480 720286226 109481456 636008534 226990006 131383471 994747699 136549002 28510956 228670662 163113822 362304091 24403896 100783567 921577633 971709859 42549011 768110551 296248597 516939208 602406876 152714075 946558360 364318332 351280703 806954396 779028886 304120336 5751681 626972116 448371116 541988903 514570622 561746782 17404997 504328606 30107734 390079344 933859270 381957258 790667982 151132301 821820884 116782475 748742770 111961066 839160189 250669578 712539167 730426743 456044019 390498257 322508744 156426282 651204953 43954386 452584930 553048471 585574288 491172208 740249462 486668375 705806266 752604704 630931999 388416094 333742460 499838936 958209430 86349450 984653597 794973342 27606145 650020280 405147068 283270008 12154102 220216266 470060183 497652038 899128112 115887478 199684399 698607638 285647050 600146751 281782472 168876588 107004437 326016291 783628526 657715658 482326046 139809712 493427390 1000 387110729 731068938 725174858 573533185 381241928 518737819 306757242 66315387 65934543 475900480 54201854 164588539 847153831 39391114 206171020 34468195 893511093 621426610 342609901 914524300 770839733 654997772 21350194 575977512 727332158 727907199 83241224 931620319 503419960 10487369 184645825 470351950 8024646 264259994 101202000 573848495 821087874 612456401 515070138 729135348 98570700 438851504 43565423 925424912 296127906 870551590 87085861 441299791 993360545 798473265 931607405 734764147 590157369 61651982 341451115 691316675 25332437 900999590 619709394 142539128 178862781 565271422 471318520 771856784 974146348 779209801 487141998 241879137 726846713 860122246 549834636 92201638 627702508 306810287 450380997 917874910 909756119 551762988 234464749 70886330 296218777 741899678 858727445 182493173 782599633 308669153 254013371 81163259 272349624 363699043 579033196 607705855 911482478 962803244 160302868 397389370 625808742 790168511 319294440 627027531 754702213 172753309 339422189 526681448 663100183 402144036 703081901 109428922 516172786 906228727 25958703 272240941 670774153 272186807 435714325 958553574 105694012 37400884 619361227 503734649 21372444 419318381 118073792 139383132 359302482 905914671 369066961 986774060 230949912 734023609 809980929 594205896 351926368 396985061 67435975 680036181 901920271 685757618 950668993 901678051 930201683 707084169 364036830 634356825 433220285 72266190 409935414 584489305 873593965 146982604 491655170 500003750 255919823 610666267 52096791 497813971 882842317 572891457 786477016 394151305 87480801 763043728 907925239 277530675 280201617 13667934 546540400 195319143 671650365 823341801 878362626 15044242 38793862 58569821 773676608 728040575 255728131 718961607 960954290 374506427 123953147 609702918 467452622 377487553 487684745 51758855 70112529 28863723 603669711 823763331 264661214 681347902 866629426 813499888 15559003 67792477 982965969 122913746 254758350 634453479 63475226 721603493 496993471 382701786 248405048 264128754 186948749 229963392 576172138 997507236 697584634 37867471 757527914 227674830 766656223 104095857 945018757 54196398 578153945 900048979 743963768 69527640 460507741 604953896 491233006 49839920 568692284 596918647 199785885 529387019 42812012 861916498 422185684 344594027 621124416 121892820 147607069 809374395 140574303 571983070 544996439 497051089 895456121 947352900 183678700 462210220 782001399 625604158 84620446 602859966 270429830 637246539 147133600 331839044 586587090 129335442 222311917 525673121 535929745 482829168 995032684 169492726 430047904 480550114 448297281 750864749 139240068 261099295 855734185 99989272 143008476 237311826 171182221 812334452 109830188 621750745 44716859 512202886 829084288 795749635 409709572 640976578 72409168 161732473 934211591 724366667 330938724 501765155 144458620 260973236 780908855 754113783 100511936 135033294 675785109 65110231 845538883 997178138 499274266 579367896 96978732 506394447 331469606 164238467 666231136 283676935 576804221 648982937 734576084 273899884 514584917 598824520 663689756 77929219 913449993 363188591 870624165 804385832 121081521 212506638 177834343 709257955 784173871 203923878 568667691 51623276 830024385 304819855 286189603 126248721 21582596 320898478 249904941 65079226 905946160 827970454 982747843 214845967 396589835 296800771 402064104 41059495 797595028 248873420 890579067 133314674 456612962 1318745 780316486 321875084 868388550 102570123 32889976 46214981 95140171 616649223 876888080 575349184 268190115 64879311 862706119 920134371 539380873 33183406 188643115 105222262 135815646 505957938 91972389 682919361 74887731 339713210 808547968 185739653 549837936 336842152 421667967 702062519 252099576 293889840 528957682 782731362 741334103 880445453 462121411 96979511 819333765 80715216 833471335 603601689 389762804 383102385 2626120 545263973 363629219 836979613 113418844 901928235 155730127 616411525 745540634 858078885 351297315 305974084 680441175 422688855 362701968 321937604 411818104 436032514 33286748 87115677 107761803 983168013 103822463 858396986 65599458 960508477 594570501 44622891 463635533 554490441 157420017 578740687 619346920 515359939 25705648 438950394 503150300 243554881 737591027 262562228 774520068 740029230 907877767 899363606 865383888 504060625 564249893 687145370 860703328 898378079 627700291 688381304 600849203 729468363 35018216 974768641 82852894 194123973 41950960 164746474 687646423 229574018 56432677 102401388 607189909 97200052 745346117 758855145 276367143 2434174 465183171 464519721 773622057 133586775 205568312 221105605 382255993 570342652 845981667 743595151 117871108 26990616 38485576 568372769 629561206 5960955 919421949 119782057 418543256 279065019 187867663 776395567 460152373 126217039 620298199 286209397 946378902 92381384 153258290 187914388 318034119 24896965 194473304 406063477 799742814 23893748 135073521 857137431 321776225 230787319 145429739 458245464 475168652 393951354 228353358 29002691 389538842 679539734 802175646 90020745 897501259 545059816 558037191 384385375 81722476 732741341 174557655 55748381 634245333 973375626 971097175 454443267 422533934 527097804 376768668 470769371 740871099 976182309 583786507 27547192 291250606 981412178 415383304 378570171 296273307 108918750 639878751 819482801 645363011 528348730 451989059 207437662 335356233 466784284 364200111 728813155 144388688 835145528 122825917 276777419 447280820 934400062 265971473 63506958 711880191 375356273 243855480 675393482 30610023 676482600 555683901 887121721 550729236 14819672 119649503 653670044 251629732 548765732 106723828 381491806 279936318 852320588 412377285 116312376 15297692 625872015 529187505 288751166 455393749 31352112 105842293 131010957 412458261 229279016 222871555 759842407 242761416 407838703 634582011 697175742 748933079 275375400 465643113 140021896 781153089 647949870 681973967 390631405 303525898 360705840 556810209 131174730 706471194 955172036 251214357 621092880 678292306 505880455 56193089 554170763 189273535 913666648 451813422 627400344 995946921 857695751 290625516 406808598 899390354 377384633 363603491 786741178 665469482 220693522 360924963 964940255 725276831 564652672 992235839 961021221 100386097 24438598 821995863 442080655 571153714 957827796 483893748 730395753 731789893 529851319 666659389 388559603 54379223 499412983 430877959 48667736 899472174 832803745 814857986 431560763 24148366 65096324 345717857 73595916 277916604 85917580 109172698 143350157 874966265 353315568 493126375 309513264 197875956 219356120 4900585 184421215 554098258 754668233 476757279 708869901 104613665 643890382 843486946 159014076 572733656 420703275 411282353 539982418 193509388 674183388 813878502 59971019 203325757 158687309 407403555 926926601 34181979 751713840 708519700 60395898 34055071 987310847 226945919 812449876 110261929 133828366 206302746 730066871 30420787 289011025 786118221 823160014 465857923 243532364 57944500 642959344 79955377 402088669 769999901 474782980 386419100 832324806 721733672 342564747 407621753 344791412 306700061 789465167 232963271 270435493 159448684 307692127 493321131 673631685 350532181 498274892 74612697 907002541 401960867 89027428 3275086 704095924 224307168 3089660 175951314 344089221 460508215 381945167 297241544 950657530 546246532 670386457 749519239 470519318 429746798 754963833 574118207 171441674 507549555 921497577 801263076 358120220 241576786 717228336 425403513 481535365 576570438 556544205 456733668 37693424 452734488 253992783 308158109 275725472 523982964 424455062 695807442 379318585 374339304 585673765 789797887 186156201 461677591 266475761 795555877 498606975 553385634 537201057 136384376 624863042 97914639 283661427 398938383 588555269 978450256 939018783 835720272 545240322 670578480 704173461 306940359 889123032 433001492 56533703 829630033 78177785 960189958 635773091 356994382 861306227 428339646 871708549 409989885 618229828 131919869 532912310 267455212 17975229 103077717 743931347 542904307 651577663 984240454 302191930 266624761 361562024 347614351 987490211 209555397 214715163 782586744 290466344 119222206 919785379 995600712 491994741 917170520 727353 913135500 164454732 869389078 938050404 202370558 10313183 141715053 349133442 278075316 473855951 596932211 316610389 268274346 703526946 613194012 53979935 441730902 341748109 725163258 702467817 572684324 963001234 337511145 966611147 515900196 110129279 643735373 438384419 279018138 476713579 628707827 750806762 81516789 252335265 126977071 350596653 801625306 24665247 822154368 247362237 303871137 910630421 843436065 276176944 99591187 85038532 98212841 915663974 282593730 901135428 594000128 997979745 273470795 888624157 917346155 292130196 360854854 713640509 43306319 510796734 986064769 403953720 574965612 614473983 126496303 307877025 325524948 316216856 843704678 436501313 862646244 495185232 57369515 80152414 321849029 27422353 845593354 633842734 105064986 918212547 63914298 228518537 545248954 760074735 245365961 355758620 245281483 110604532 121636938 372446223 604862125 189211149 794388203 852118819 926614536 330096242 745487528 733518244 634631947 818602484 460364001 267065940 392564893 155328978 55317553 630443089 377253112 824310888 219226495 481546416 448281112 558885032 2901083 272577433 710701771 133853880 104482171 267837838 405233915 662088062 60530476 384694971 975201814 432716227 818666154 650463039 446828298 821300780 579588722 5756701 958302471 703297002 461718211 868095727 922198096 305646116 890280742 577041894 203019439 120843801 421415163 346395656 203746051 645683878 195718895 542399872 23392680 819925297 228501019 982340694 6586488 808440388 189586710 313382476 718690346 108883201 566174730 642851462 179126347 551129423 913662648 143156611 191465970 679728831 47769734 823612802 476227730 643054807 252668771 387091720 1000 585100228 293140852 558278172 327882144 879126159 944000030 879896479 394317723 301341540 642708328 97533719 346360137 251501364 363799529 200760396 3419741 896116954 533119004 949744379 86320861 416560065 114141363 120733063 123552426 631491613 676195028 970576766 945599164 879351827 485377003 474766050 63553178 276835169 668243038 85897402 554608264 992229044 580348523 183701311 416240684 259257502 291425056 653531881 249602890 315212458 401831048 561742582 226824796 201483005 769615409 799559136 995984 20750027 480451488 279106075 13389122 403287440 543880625 900749058 858197230 248213655 949134848 945331670 761704568 809444893 117337440 413873912 519700813 398563769 212026253 824607586 959589898 522063151 767122884 78931892 580439848 850886485 234397858 205194882 558402862 31306552 100036648 54032241 214215818 598318604 445154997 739652143 109416709 480916501 598695907 236603876 373419516 588463580 593043512 10948654 138346339 719332810 461376932 377072268 237480435 66934338 805087747 828580472 885156639 382768012 102987381 16415917 41380816 144912974 399440736 772550641 611170402 444211969 914825067 180046813 779449428 415834014 73771579 53219306 430402964 451910797 517388247 664959255 107011607 148749461 564549024 218127940 629887877 228956033 593285547 222791647 391201990 626065305 347556662 973162276 126464258 42727242 485892065 166673785 719632910 887688272 631237651 736559946 594579799 9223288 54026357 116360494 660991359 266133022 840848950 284589002 395220734 467790642 625487932 802166662 304288967 723150367 969768250 640564850 164770277 253712799 868333626 345262999 585548908 741879840 259011860 460314696 355681934 849734138 979283987 78065690 2944490 365844456 540980632 39992155 119416454 261058505 265405109 65522489 299443870 36556340 19172756 752769662 348114553 276950748 692778117 374295421 611610884 239414053 605893060 365906555 912600928 194678637 737133592 871201283 373353262 523643929 669826739 582279059 961128968 299266587 564343107 23237597 400663830 264582996 600053724 487220169 595475889 885008770 61603369 332457206 643842856 404052448 976701508 937248423 857739578 26955810 24803725 6662013 296462864 145738311 318016628 138866392 582747132 34587803 363096303 108738221 314249152 555388454 195518982 787052975 193063272 349853331 180694301 257377369 50222511 78868795 119062336 994721876 296047231 104556766 342300216 206596310 997423232 167811178 437658283 921210756 145851088 419327259 266134769 882899172 467911813 263128210 348532202 545765821 358645658 90869819 969810704 38936743 468638247 197946086 696409134 791926237 502137239 70426325 259415164 744391657 567724629 408304796 45150429 685369178 301115573 651139023 7182563 982435454 121306062 301786950 95435040 570338623 789858558 254165386 823477500 453016253 845436159 261330126 135878854 674276829 581212690 582665496 51048710 96624331 876982419 504235537 35856623 850671205 174760876 746569717 458920008 216083204 417185957 187749162 671605412 268824961 719306239 75341853 170045143 646506002 255714732 783286649 605956287 782259118 133461936 654220909 312241179 996185066 258631949 587356745 986145183 770448238 760049055 541752600 10713924 534815051 734231046 379221457 258387948 604090585 239376429 264879307 424615917 697547900 859594106 377877510 374394675 407327758 108835030 511855571 975462356 704366845 165783421 182340564 713210078 336777811 105220415 959975968 496491492 782411397 61360512 386829058 111944997 91897742 659763303 28386626 680714819 249408661 22689274 748655481 680529057 276299574 183394357 600072935 635650183 157629512 170320123 681535325 632495039 63086323 637396844 200957721 637237894 575268883 378999162 8895670 433984660 293066325 394592638 122912695 370909862 379227061 341944006 522743802 556814104 754107130 402587116 527358420 976271944 89298680 416317746 81224798 508183025 500239674 179934336 14380554 594511843 428326022 640635760 440575888 6830673 65619378 977143005 823840126 37468644 396703158 453866948 615082115 508345251 799688036 28674064 66966138 238933967 38806622 810686891 467362070 204190948 100203625 240733326 589948854 250839831 316612751 896538056 638990463 200043167 380703572 610943133 71531564 477681640 751813864 260519204 560204719 613883114 831479125 234521093 654425515 214112717 100714148 166309434 103460059 720261887 382767762 929138664 242054746 171329934 742546378 323146407 393012288 352693785 542953974 896072635 382553549 104061253 336720133 820574801 510607411 33116855 609115426 337567556 330195509 583620076 362054169 90106494 807101056 938064949 369352411 954976345 379876733 641263253 496247472 833078386 801506547 389024240 322361671 719559029 942213669 101203201 380889603 685512266 70369542 57404128 975613400 118130185 894253620 929814863 508944774 977527276 456198523 34389632 295230423 802078324 903293965 741610360 896320829 593262061 467924696 992565721 767993737 75923444 390113474 829846363 386916495 827173676 578482899 63532409 626749854 252069209 745187247 152592079 529692178 143718538 804721467 583215637 287289788 75307463 424383257 129036906 226237664 181679541 303924006 859570786 74250763 206388648 966207936 925752632 141689212 599481600 342102030 9796891 740900056 417841697 506039022 718603927 515624394 367141449 394222175 933709219 858334837 736285629 968595475 864786722 111858984 884117316 328194667 677436289 907910575 157730161 785519092 307611529 624856440 346276409 446672233 478784087 633105415 530075744 286517928 159813049 179096095 599364654 85388063 751707448 835957304 734918698 634389952 227964773 541103727 757104568 630334230 504477325 415252696 506718434 92718331 183158817 292823059 943368517 564993418 571824091 950140184 655418792 335983726 783009972 738465070 911269897 601266491 387053502 746773642 565748817 713868668 355624644 662988402 24367560 737583434 499990825 142592026 459236935 551356689 597912862 49561890 820180662 2255793 680206440 457354129 12014549 901124308 482741817 827609391 803713366 393992884 586786817 479049907 207051446 780933637 16160308 688322980 662755231 127017114 515267303 60290906 233889565 641779620 422327494 720551795 964351789 137452481 51003504 167621364 446179832 84730348 932076640 244389266 40794064 823980082 867378048 838455745 399714575 948841193 565863142 224933045 334607553 244151985 184605924 151252933 467935284 294325591 120031420 89986938 948002751 965017054 451043255 985624399 455125825 433421102 76867882 758366172 887009908 146214179 967611023 644517526 214879999 339937572 920921468 929489442 412701251 577739983 872049566 450891927 446269101 984253459 234469015 101298617 278788114 575250003 722144813 662339905 941289450 214208963 850938469 27820503 448242433 471317035 704898590 598843264 679831676 72710158 378490137 251235470 107297304 909216254 387338404 380545376 607471600 65903640 738852923 14914555 975870805 364626462 516649227 413139590 719873752 633321200 993109190 82166269 36343505 568794153 187881153 485756535 448769248 985905656 715292287 442147867 755144876 875311232 508687406 830138582 761529931 315317700 189284841 506864155 767321384 935620358 690005161 224861153 389682705 597040346 717884613 123272698 927977258 877680726 28951302 127116100 542494262 133597061 320693486 784543782 213527874 155425740 883253302 357560787 372935908 699945068 659547583 653474639 205926251 409029728 706530060 705390410 842639520 86067429 304936542 570292718 457568989 816883929 253701050 996767970 441992745 879540656 887525970 814740801 323840910 258257125 321933759 857304087 306326260 61147227 973186765 249352318 315072141 877827124 114580096 610330774 454072534 876969931 659769208 523475939 919488230 34897887 510174506 950684861 985288832 520818447 321244395 79539939 860051952 763837548 566728727 532714828 440181090 690816629 777593956 760499189 421546507 226343061 548965586 46460791 959480381 440067489 54205906 195711258 137911086 61036579 974854092 559823192 888547067 608454919 965696493 78746206 886006225 849848748 539185306 147508719 857044776 640765415 841895561 611132600 481305025 993842636 283043499 224092674 388834234 136252076 988145637 134520096 703358859 212534368 999049118 961261755 815309637 542191410 416291084 212190906 841687767 417702034 152040772 895524961 913555579 818831111 746552612 843050611 258615728 175020827 900366103 537163573 892616884 6335862 431028018 81525711 366082903 79384543 736870047 61330337 763324 772223121 752663450 32648349 53376280 521619418 496519350 730741984 594965518 537847965 468616940 906806469 74377315 500541497 217196178 216290246 702816074 404738929 143083726 692638473 951820745 874915083 376389754 164266899 57226155 567890819 544559215 99403435 618155420 547774255 441571868 714939285 950085724 935453324 905033245 443521008 104316772 461125850 100104416 272594225 822195447 846430351 14140893 809644880 309423765 67066982 680304874 190260699 225898058 989520593 912591656 712789470 93004994 994856447 23324825 662913684 30609993 305747293 102990167 8650319 979436524 449059796 143477436 489109361 23076002 992654036 555743628 247726512 33992282 514488782 710634024 768552312 126086438 99628870 761298972 146991847 197377917 191096538 666603218 120145451 485576971 28696122 571744903 53030377 12317167 446437055 340417148 656532072 222364586 748117653 265543517 692532732 638956854 704130240 488338187 374802736 84289173 952699890 424264175 630826051 348561271 342445720 939800435 375932424 120585986 45914925 528101828 867156467 458638200 971327929 692249245 700700999 603504104 366191836 328154867 603543148 907382073 579642129 475564146 137700156 202355911 353932709 612877959 461235066 756066503 711753644 147015162 24313870 238297771 228182462 638420210 48021890 763049802 123915624 338246948 415633405 14570668 39763641 426706726 283183113 19308019 8785058 985345077 34370108 275388306 909939522 240509740 678168441 643156194 115211652 498492283 163459606 405907707 1000 145167237 544586210 912996469 83288131 292866664 619716777 698834526 120160804 144294443 982118584 791078334 543316984 94639185 444177886 482406578 668638910 900314045 58079274 597599242 90836585 412328598 112576967 478132320 469917268 785283664 140311892 469078472 496787820 953124740 153721767 623428397 156143440 137120654 437596324 342943571 832107014 680677570 547221188 783622362 291028573 319122485 583770889 318018552 189953843 370588973 83990834 876836496 856999178 30702149 951724458 340751483 126833821 443289665 899954489 346337937 107307839 212028194 4389566 896499102 868989169 764220742 5877480 55213354 441377058 20620704 182160357 159264658 729257044 330106689 549134569 618440287 637348721 966031997 534711492 362908381 204062877 61662241 549188473 401957091 898370377 257715940 681154798 635028690 356899811 344911912 978051218 544025929 756624068 932717991 218450957 52784763 482623986 18678145 583206979 720441210 443189427 882589483 636822421 16900815 577059270 360438507 299100291 987376104 675862076 305080769 6213136 898224093 876861790 384420666 395468924 223633767 58124330 324899561 60086937 999160842 869425220 137281445 665577441 67501186 772329933 925513174 295069548 580842448 774487267 922665073 168549463 490296600 930110180 567768312 817085312 881726340 27674299 659415769 108510468 424462188 686220248 993662041 857466664 977562623 600111741 273016527 110313690 479769251 611719644 852631692 845572864 467016451 209828491 573170216 373197930 473882169 757232821 167386135 66881812 109219092 579971569 243511333 456143992 224229643 966735634 916417135 358520125 855215962 406788877 50091602 11683624 555244995 955263683 866456937 412291596 691756903 189661561 193126393 256618534 253976991 269051853 674539558 439333853 398050806 376951976 515616920 903139184 678587640 737260834 522787430 394554405 427769052 695228593 286717468 349269833 83666166 663476682 897550631 415645814 736520392 139564584 117621351 5739188 696593004 172061496 146610874 458819891 218439163 976156247 273275648 340357333 933833950 644117465 842133377 415613725 978161554 547914763 196849390 602940060 312484595 372353545 274770972 298498462 738461799 529682520 563140132 288972246 997273954 417504714 754409203 400597016 909464944 301635663 739529835 705177389 217897846 202484078 451534692 931650522 88973422 942652753 632769538 141578045 872994441 280135444 586345855 87175839 634491623 148866111 439970560 871337945 719309310 830615228 175292414 287067545 165419652 801540513 115570229 226822639 81157719 379384362 519938212 334219016 790364225 286596290 551611000 179804856 790604734 983194286 21609142 440057087 100836506 871529450 743357744 102272371 854788272 398294587 452493489 343545940 289682456 955674007 107823043 796234044 50290243 199388879 216546888 596233119 970816174 971688211 413103571 13549919 699772872 177960147 959326656 247223776 341627968 650974137 315086793 46717929 221488473 47953914 141600263 762303922 52680006 329963522 869922573 885638535 440080278 474619392 474986979 429627792 654251322 66494616 456136159 252383933 501833211 603293879 492223864 253635119 478685068 412659925 896987934 482705439 907496337 943837193 660879508 788630782 105915253 6939044 914821406 26632478 463119412 309506554 109677234 522539423 93885921 796787628 34553876 153359031 274005086 710159490 495358978 201678716 457949894 137696719 158486457 139967601 369029081 697827182 47934481 672289312 540489259 941128468 690926033 115885492 338952603 689948384 69634004 116578255 79714513 648758037 595752508 593860822 922363315 334541541 154418711 270147618 106285662 525988446 785652174 636854526 10760010 689647254 918486664 136175008 31279160 4052887 14873570 203941270 247858348 508971464 390881645 151448573 722686089 918644527 417988563 106502197 807238683 93774596 966704108 712004847 258118817 699304392 894684914 856840832 657558416 81994029 656377938 53959660 877979720 824721239 374027579 667372081 31393087 185475767 459965661 852640406 172307610 696583926 53971327 500177176 137782448 749002824 604034679 265429284 580822537 623387721 292162334 521994954 360384793 633535185 11591909 241508526 782593776 534711527 192641101 75840020 410784913 789384769 391782959 83616333 694771898 89971979 373360158 189567040 352733303 65819940 954115013 279950888 785321911 706882254 156906542 119804704 792304035 435725837 445159018 6792248 38332171 92296292 479988821 235138960 379549815 635336916 918482290 950942752 569116853 177171913 548117270 198440777 471696652 348256319 280446773 87528862 413686880 625436395 864900924 746911548 835021176 657240903 9026223 698079843 799383371 194214930 61172920 114831624 152085135 120933330 782702307 776174656 193787409 494097897 41151159 408509780 837759734 897998050 104440355 848902846 935224368 664254268 378623268 986083485 985100598 735126635 848184909 868886682 728297899 724440392 66403794 524632882 935690203 368130279 33937978 851128713 126771472 843098724 726084129 569847602 82689448 575323478 107777722 299139271 181179303 59332636 230213876 38908262 214192803 547621839 282229291 572955374 987628174 242104516 334052469 592933412 429496528 978132654 619449204 294815089 533923116 278725885 238588745 340697647 504877305 333390992 254052023 43858699 148024481 584329218 841374943 351932917 727451337 673185684 58255084 111788061 443698709 623530125 289375920 249972571 437671504 455734822 470277184 820624704 86893467 521388224 733026768 314610954 198925286 670746178 434950357 140101955 744320780 496771059 224354099 902088732 520594442 199918640 9965772 678648433 400090742 112354 790744067 426821119 411098370 757883088 329011263 293644851 140781529 178996540 263245079 778669406 4902420 23752793 699689879 343183453 955785867 341299239 336757064 256764218 725182877 777154907 658334560 441830778 229020630 90852279 169211675 66577154 234328825 949833833 882277697 808742670 58318787 345247936 499974904 938724999 931515598 877266711 106367355 320032310 454490726 991143053 107708789 417718180 287760173 163697981 131309252 988376239 320724167 478887546 572976802 893052852 13806691 585805046 348331090 703030059 238227536 260245907 71332072 890555369 413729754 410460620 664264279 116356721 373426158 788795061 118835741 298366312 34343969 444707623 907080819 183715167 421473462 929258957 808126107 294216292 226427763 730636438 484443482 281184140 649731975 391008223 35289145 917376012 433197753 897822307 275084796 729571147 282730749 981716897 308011493 769434482 928906958 318827646 312527742 356609601 122918335 114959655 810363908 154135927 311970455 743189879 875533470 739543909 106367837 96410303 576204633 796256169 635934655 49723924 460524782 16196793 529010858 391852275 718170422 575695886 843494870 110322593 236645256 736723654 765581027 78124020 20251319 908804080 873014820 848767203 29480333 897334920 789417250 265228000 515121326 6645966 598943440 473719429 134643316 732514244 140126861 41558211 510108596 445491823 248179800 820339984 539429916 92557709 16484663 742503214 591342014 810756978 191265372 610633034 217354532 360652388 389890576 545746320 61810982 868065021 45592326 222490172 782592522 103069650 493661500 660719825 349287643 578293570 51322849 96382647 256335812 506420750 447862374 219799305 250589235 680326454 628995410 62151621 720471225 85721196 183272931 427092001 692197416 514618880 970106230 70431878 259683255 4564297 802823574 304446862 945532418 261120835 876840343 751970548 183009706 157154010 60447531 603658683 666348205 318604763 684190890 855206449 962261782 867008406 651157772 989303409 619091157 103558421 737805641 30696442 566233819 362723157 195897355 923706428 829539351 179088190 822410218 423780434 323817718 37270515 26507414 50096823 674579962 633347849 142184824 113029484 893627210 640214130 8482866 219016258 971135117 663580992 702489250 793300309 552513795 352817988 82007750 970466940 797805164 505437797 905646488 528033285 451522102 34420332 146587298 634279588 84033091 175334686 906192586 700417322 710778917 668577798 258175296 466644293 9566088 916222707 888143006 787417761 865969458 545051196 858527858 144282654 562949240 443749708 405950175 806476360 443568893 576834441 775080866 776720695 579525184 194565033 633588117 101361567 36175232 682888820 108049338 131989323 695391638 788515294 583575258 381754512 542455082 920743016 159151587 874380186 38076832 752801864 427072635 829593720 369336307 232756098 724076049 548676046 794732962 278719623 66309070 755316471 178670873 387460162 366117648 377100276 955069886 4461930 480358628 694631279 274693971 339052623 129005691 77265500 992608996 39916181 68774968 981366624 174437315 51386934 991584648 618372570 566073517 566346169 109239790 394631788 245560772 798770691 72922268 66769830 192360271 189535926 239991547 407978728 224332236 526010435 540428674 450511856 916191165 614941882 960146851 515994120 643520440 671143597 804400309 926928099 70093720 203226152 866169575 273530289 419931771 522950182 363549613 118486076 87398025 51278087 652376739 344485894 246155111 744931178 924979220 523052549 817091547 491192985 973900128 660757481 447005371 933172654 153420319 61057276 842040405 787250709 665006990 108399146 511291414 126883823 24067013 541524130 443986300 464130685 496611579 362557951 12193562 177900425 546662801 491016599 541873347 780825218 673706103 874299828 734999998 74034078 14703063 989892627 237898879 11820588 551896070 709209151 757641202 495771791 865050926 761995872 135985273 331228972 97741854 63481416 288634712 457111177 893466705 322872861 107011005 66547985 21117707 429644139 538344180 972923656 343422531 634546989 659159978 464544900 837281737 590242436 54161279 312974136 129705191 410554048 114346404 929434928 606500571 15650912 538612334 118998350 413695250 83695094 670044534 164978354 155521404 195806504 121272767 678823536 298905655 110052420 49583816 454971514 622863356 421701081 1000 931139878 159850730 44920906 701457701 521862622 987701840 970449256 80193229 363628718 799090665 766803276 394728758 596213124 813531023 331339996 214916496 307385509 679297572 158319760 631104920 924649454 832143180 145450983 492236076 404170191 701165459 541811897 377316515 371111265 252383511 784656420 383855471 118134902 736720637 357932442 726533904 161337239 651997529 999597864 643389184 297682054 688666272 787787935 329704124 55914802 961935386 635970078 9687519 783367410 171873851 325165396 103972568 57570744 647040490 218779003 663508714 586979335 100836599 426934455 658529702 709115348 960555139 269058242 88182689 995932283 579123565 880981242 294709002 486364249 144336939 288042875 705507011 862509356 576743361 902344847 55636833 540300097 887650774 548741584 544111836 792615979 196272959 418778191 12259696 596495437 574137734 749018113 238385809 477088598 26467324 528616102 604418 207650212 132540847 727795498 894505195 657773870 611597658 382842556 608275304 78559336 898595750 67238731 15214782 648039549 108216154 467399166 825693824 453210866 392027270 853568643 74302682 130733358 501159521 410840037 634557 239559661 815387063 270439713 937255332 142081280 832057692 175073829 54790929 121220285 592872120 583552299 697023903 107522743 825783396 313119541 377321041 120323508 650198888 174778857 193303176 399638655 292897197 689194724 544215867 500015416 730838745 507554284 839479703 172548711 815982843 696560323 741100214 613750503 724798062 47464742 818160527 6948309 118940651 60418704 731337937 390410719 33401767 772378295 204916956 212136787 61506422 961144458 805360250 870305037 132651106 481692698 596491850 351472999 625186444 108733824 498770595 420397985 135684741 72476220 813163271 674861745 31413775 160313669 232004385 214077690 775331360 361869704 976269835 132816560 476994778 580816849 86587064 458362207 415301662 991158573 797320626 76269296 120338851 263728416 568631554 566385963 637733097 725485767 29029336 328198205 735376401 79893919 423826162 533626452 943302327 828335452 32466933 839488598 99636382 436921338 917337222 809519182 146670638 919986300 133111045 368883045 306151769 733923731 432356557 966025207 734767671 884870404 933585434 96562801 852303537 254801638 468514463 182022615 689064210 615776620 429789350 987159744 168678522 616046759 8299626 715300614 457284748 356970974 868525241 673515611 275332545 109393083 844242839 560428661 136165061 704181909 388346380 780095920 35985123 200988635 346476742 258897176 292030930 21989267 837192657 649015859 301681217 339299827 280383929 630445610 625839378 119644319 380804327 561285238 142768368 109628852 182287053 191936626 813428949 506542008 450576955 745770044 687261732 605987827 599493286 359547970 228927845 155775161 706217285 619455062 2122459 898815906 115370527 152872174 356755416 142816696 639758220 213098404 126321195 741784217 894421107 127431584 800164819 110853287 827121536 220341897 751102247 873566196 910155256 774713199 321443368 904115474 678671820 292613362 315352021 946930201 682438958 73709344 57717277 29797674 642129022 433138253 582849829 926758060 517626509 567463788 933130967 365669131 77911568 240490301 656207800 71087286 93215470 157955251 241650424 18023471 505781256 779007221 193966826 470923901 868828571 819854808 546527181 252074427 809685909 802350803 985858144 972661067 835339876 499912742 723007126 452739209 899082988 229201974 930987029 191107901 289986150 635042951 455845347 870560492 428762398 137535753 142859082 533875109 69027052 381794760 79712923 261735537 679867157 557900053 123404746 453009132 970014760 369940985 514627089 110221526 71706003 404981647 435046006 859513068 396794167 276894676 332168720 590037060 290619306 222377082 364734328 550491459 433661757 194435404 405040793 788044762 956132308 332691133 78699924 108820573 876646502 243067312 447225918 475352730 513032354 29164954 685574740 238231581 186236468 159255326 303603893 433911478 458885655 556097223 296380604 421794779 994546405 678760194 890690975 692098330 682383761 542924794 11254255 680352093 893430277 59082466 464225283 800296903 101722789 895928341 190491066 815322608 895635412 221403874 598397325 356841807 199177835 937307466 51885546 510112889 587023886 217263043 738175533 5336780 834864792 81192258 552039935 805076857 147788335 971597632 343205761 118577561 723605979 315569526 220697664 112005012 357696708 208593510 541462072 979113358 939288192 611933076 186625128 657327097 931202588 145642235 439002401 238516416 245022086 294782820 384557649 140578323 647879158 407776000 139645861 223144391 758151708 441855501 883500687 630512703 520002828 908549471 262242071 270895820 60808414 825191817 120581629 398918171 138777839 635000785 342036219 814973660 234576843 899485792 795985274 835871861 727484074 944910561 530908693 531593047 532780465 354995058 469214551 782981116 35504870 1995166 809496622 769372704 904081393 413777549 424527624 525810078 321419165 9821890 274974296 869940551 708015501 956298126 566391857 312263048 703763699 390038824 136577683 311836570 276316220 273757290 537354119 400079835 117306356 178672946 23257560 47621543 886223176 603086963 832675332 564648397 180452663 844312506 315863430 336071622 50582568 535941130 619297729 2366079 257283636 335387672 944388176 310192764 359142561 383407847 350794477 484224742 94055277 50799121 729393298 661328530 669285895 159827903 537517312 583721187 511764664 753033187 954316699 776022804 627594934 801957771 89075833 799756541 474603056 983282837 333326175 128733828 206181692 783949541 807845652 802107484 114037992 343588066 114896243 98171870 724430217 486099919 906360372 275439953 245459735 214194923 388834338 263683435 228091263 623548164 442246262 559945351 301119544 116848166 377116193 148061634 577144263 276678745 394911871 31154093 586963296 19658089 816261958 829801985 503103555 507327547 882568838 667057116 652476624 639653053 526828296 75736864 529381371 298707376 947539640 20476724 104607997 183535189 15508400 352839344 118245678 839028025 475632784 485219818 605145048 330134424 597332106 551207938 950020830 807795271 909926300 76903902 256004471 819726371 871074077 630419382 305039173 113713277 692081551 942261677 37134553 214771554 768910189 447717914 787263721 495174575 739070705 182080733 898365283 480644795 425779675 309921029 995770566 225626864 855638873 745926022 657877891 506556797 911611937 305833213 415638248 325411355 268624158 296452639 108162783 176807689 725814650 281804763 307544091 98748010 567858725 582131408 978172541 921010532 85847850 111985295 850987872 536265115 520084884 657115470 363697730 702694317 571559255 179127104 960480603 331850400 700760475 21423861 34760819 986250826 14112655 750810078 588435229 602667234 767407806 101545919 844897939 710595822 880477593 95949245 431840094 42068645 612333437 449849933 399122307 951140134 391190775 306854545 22235066 352860148 454060464 431703060 481574167 466801622 134597516 160793313 766966060 88236667 376888402 658332627 851539582 132337541 432557844 855934721 100375617 813944381 877260869 568919883 319815872 455158801 498592361 475490839 200630638 287715764 808596449 825108691 654007745 758192169 679205926 853184933 946156545 482603481 888432586 255152731 804854942 522402579 714360607 448428944 742174029 139035788 886930203 467081016 2117645 630043976 839095015 993300653 77794400 270653396 704065847 6146446 823989457 929925975 396981951 109303386 51909037 654124087 645803648 499133829 78750108 36565924 249913650 396264774 91526513 887420494 467020552 79867900 88111438 638425837 612572107 3874196 216916515 946169472 919842773 142584938 711721120 715474407 438134585 79206812 805241973 920043952 510174480 470853428 298003948 515001479 453295638 252634630 271831886 819540207 354842194 261863676 965168611 169967118 302306361 551149589 362483954 24768276 757017644 861749310 417412555 6157968 62028501 91655094 750019182 224116131 633626404 569519916 138585185 868265780 896736454 77196248 198812096 234472612 168024168 445222106 813087914 857735560 729927851 866134012 847694157 56740534 543113886 339545809 118983704 21047042 901621925 311468984 778820269 830647179 423558671 970477786 265438575 866976642 202133001 147072725 887225422 42422285 728805814 164294542 758725011 515955768 114593524 412712334 656315538 772916045 123524580 885218945 925490905 634753646 208945398 419170244 60609437 4251802 809172062 931910201 634154338 234049559 978791512 283287537 803167623 602744593 31420538 474747031 76444526 841260366 245551121 110573977 400050621 664091865 47299247 891422283 671475489 451396535 937283328 843709075 746206409 56773317 976121087 239896575 41289030 76451133 856758443 720638339 259134740 720368373 477834480 302624273 15674664 740004924 137086040 559541497 849432966 198724093 803619308 575000346 750528423 34004710 751285470 676509126 365726709 336050999 205873069 226633403 130969553 375618869 151969826 729373638 911745332 975439978 590811951 704417742 102048802 62837511 994957535 246661247 974512450 551484640 778991624 266772663 5572427 381790552 315491706 652363210 45068187 568075282 734743125 528006207 902523923 856829723 701960967 713429344 580740155 653136018 329265868 782824690 187647610 391330895 905443963 845850585 789207990 432951820 891803607 389327504 765173959 128565481 82204967 141535976 629276531 449863013 255266726 627025147 181993276 420864469 526778496 14625773 238716531 374653332 756513792 659511383 961238708 830526448 117715598 230684198 76911880 567392055 997682279 498667816 588505338 600370214 722666769 347623724 761670221 299585587 988376363 772964780 267150964 822633473 574518063 50969861 391848810 462421442 460017635 204351011 316544638 23749555 631348218 310579702 63702046 1788115 802468686 295810394 351230096 939368323 396152406 527643132 38359157 128712187 152294583 785327645 841921451 76170348 206416587 11458632 213374549 1000 255354918 379170841 40706041 802244715 140713033 327676005 922085329 495966112 615782075 794287897 349868351 596789922 613156664 580007879 214246986 830543214 859903338 305717894 586591787 84150080 225056363 151942510 41092468 670640440 677607196 777842855 855960107 494918483 166997998 761492766 156439522 434558975 765608771 285114846 636541943 647679967 486824949 856962435 138079654 812522914 451576352 408199403 838732861 745841672 238048928 383340760 767576293 670948426 908684116 591618840 754271184 901640601 480681973 886138705 96518531 638326249 303934495 70944602 624490468 39025361 660877794 386093710 229403373 172324896 520041911 999598700 890216877 419580697 263778901 102179157 669960890 714675514 137524688 903319141 684838566 91786005 596737202 398461869 548170587 999571995 954237752 76456232 131957053 135701256 990927047 814011114 781786946 113297096 75347264 616367439 701168061 286667165 795692700 128607182 875217174 476335445 947246635 100138334 803800227 747789477 482912762 567409093 663892333 113966060 495150892 604546717 417147082 20472600 834713050 345151187 847515912 874800506 569529175 535917049 129873599 53680982 298748095 270053561 692257993 613083669 248971772 308050255 73452864 721083907 217084745 213402430 23820733 205977177 379522282 276694602 222111975 106727668 567219531 59955310 380948378 485424982 635134048 922907974 53973554 851978652 4204651 759636935 64692885 182826420 220231476 266562739 48331512 49628534 955443623 509649859 498432252 52211856 950936990 327586254 28628317 240163460 314217520 116850062 511803974 427412022 635584417 315815352 967502909 141586437 106675999 519969327 852184180 40453810 839607398 773520630 832067164 560201306 601677324 473470907 44900468 731370556 844229131 761835881 183528360 786368212 378763677 334163083 139907651 412957918 61898810 898054903 260877838 410416685 43879100 542754004 959349068 140057692 198554268 234129647 143676234 490719110 97946085 551654679 624244793 217408548 175891705 915976383 394593715 447240908 147085246 213949709 94387022 980284847 466155359 438120415 599402313 948722500 717194664 645183589 543099364 213180287 750887888 382008117 498110659 931411614 640868359 965907860 407362274 968932756 903087006 665880931 498233119 920944425 804168283 453184983 890937293 251557879 325800204 983874495 985290862 787939765 312991364 613585421 543847403 440683205 529908324 27405190 247646594 928838596 571305936 963320232 6744794 80959235 489377036 552602116 51346027 309557070 342432508 261681793 537848340 847472135 137521908 209710816 419708142 882999526 9671971 415982538 61339776 613415908 501805620 67312478 227314345 778264958 120669084 941207481 428525021 974560763 701932439 366470196 234059078 144263665 880101880 521783803 607616967 18108888 322924434 551683790 591339316 852687172 570629724 467533866 505426320 586596460 443130208 467302363 548774766 16955270 18733223 196551320 513009088 642946910 260078034 540646908 911831763 149561120 313143874 963882963 334571307 134040181 696735319 696650746 992345388 882225792 2950995 854793647 12272428 181800247 880959225 353828090 273003974 934620070 16015205 85015906 348370055 462776944 328557144 572810831 607178011 663596016 538610172 845499995 388223885 235954646 34566521 890827375 717311756 472274012 17469897 114374596 621544906 892644869 961226208 900546887 230103587 818081199 688573115 606777792 102259444 266942545 787440449 447774101 909948 908866021 62768617 595311216 635354181 372537868 712016081 388497979 350792717 310415537 332842029 397223498 465809738 765458352 455194270 17935841 217268009 143531291 368711760 565462960 277981925 407562663 566446033 815201090 893492012 280166951 893157498 37408173 72540823 22062577 466242731 253336619 425570235 891414564 1363269 22592986 392363745 24230678 251350955 240727394 593829912 250793952 879212798 159937106 353242105 291308036 531705468 38792613 19516750 611765749 472159966 879139735 307395815 503823291 709018143 621892220 197874193 390857403 954485697 139165358 371714358 647065165 552088945 950796401 164771327 49008277 99150791 654528451 86458840 768069600 522518409 346791090 422782078 734616040 942899278 778141938 8161119 389821321 291580797 103223180 162824592 284999784 66928315 60699166 816607404 661223391 183728546 133306886 27428879 75762420 352064791 432276759 511424016 973474697 640281374 681251738 640680124 630044144 505651616 747495899 696245001 334255470 630142498 135577606 413770860 700154529 471990971 26507962 309198592 726056052 419248706 345708246 925917080 715429090 125168716 700947647 399134381 32067564 147617570 404392820 933756824 969101098 69816534 344481082 714667776 327868414 597203709 296320582 148769879 410207841 631494999 158133907 924188050 111196051 757368512 961881894 591130233 814824003 13879930 939878889 773242973 742834187 324767251 299950241 9704329 183841896 558071420 367215666 765227776 33951042 8418183 980705013 667990049 120256382 461542525 156202122 200691184 68146924 274318571 942465115 836547731 418238430 466651845 765195473 502024049 457514755 742669678 722118195 652309447 8562413 993725616 930824025 493683301 252762058 78495257 489976210 725997815 425801474 841049313 240099953 29116573 308947147 101575499 716210051 887877509 556528849 922528953 981935433 561550338 28325414 393894413 943195153 871354512 166561562 475381399 52900783 395024569 502713813 849967294 57997855 780340395 859773475 102390518 366307837 433974640 364260984 578182004 9828389 704090306 419898016 944339784 698600692 237022182 865904401 90370069 293281446 955021622 786221135 611905387 680127637 730984680 942086193 509184174 326191499 113995625 933562819 371122995 833040975 78108684 16052987 107872713 575982556 370167896 656861243 483514672 413626515 739509619 843746031 912412664 84577391 673506947 13359327 415924462 71933889 178864240 345492143 152066761 141019394 770593638 391071357 511469984 617633167 144285971 568969094 316044097 510620678 839743372 319407012 922055384 722102743 922411275 160659417 680652316 853573490 663624832 694404951 585972189 609877365 123413196 70418421 51541357 657652713 125976610 547587913 588984243 959118867 152703263 479707234 689594911 748758562 129077036 349616549 303526313 105285678 584596407 112651924 628960333 157682546 234701026 89570809 773922475 844680130 882921653 821887969 965662452 894285272 635040769 367657696 971660163 62842645 216699993 992228274 773641398 55723603 66650290 16998346 986905069 210504766 605267725 38462332 769265256 922814940 852972629 146252326 136443378 422994076 562002703 445572254 844826991 500246930 129515785 744220331 781036790 622475363 527930679 91576140 640584863 126616571 244510222 744585327 218836374 720373088 279219964 636262563 159562075 203163428 742546479 793589913 182967797 165550203 674443264 670534368 683435900 814680324 552546703 62468397 466845882 417627015 273685211 692776142 47280370 941731091 152424780 894095484 412287299 357029439 559952867 663005659 83748733 3242121 284394027 848973440 693324127 34215164 623355534 641679911 87223198 833946340 490601371 504300282 753289515 296200436 135944791 438456534 715802718 330051015 215621710 66899528 536562157 487655622 803888607 364959324 28760933 140354143 785143163 180441488 406331457 759519788 52096604 154368332 901053258 166187376 199137 358561244 98515042 257963784 584652870 526646845 921527546 126929592 900574479 96438406 124839315 299889140 193930884 76427415 662479994 677292554 623506012 239312781 402812182 501824916 871617796 414527256 400836034 494125464 207083610 526233792 451377145 830045067 242908816 975422114 31485773 822350268 354224130 787524851 414718248 272395320 915920369 930690371 674667254 526156736 352572684 870683146 623793419 506931698 369293041 663510915 46892395 271622874 15414830 848681188 264300939 197927488 281192346 537715184 71527604 126615310 122798187 271086225 123060003 72972463 508595106 713275351 728523311 688309154 110496429 552057388 861801905 735212151 95006986 993727443 88363178 422933556 490878786 549422497 809967224 304054926 332356948 453741080 461425608 122121625 344380910 596558613 591230437 399710095 583762856 65526053 29770317 34039555 675059545 427199817 89052400 347344401 595519107 905352492 121793765 468050947 800010368 514742846 108854040 617255769 489380843 296392475 276878501 258046246 453400379 153109948 945353183 896948327 801555034 285836054 444062278 945398352 967478613 239853626 738367360 591002424 867542569 957331983 727188026 152628365 605750722 620496018 375185264 844850299 259155010 431696094 715520740 794436341 208259561 129099120 239519596 3898927 252232540 815617519 771947164 956177273 101232836 368347269 12779422 695947451 513435543 217943709 880426058 38517603 700888560 59566875 180631067 319581639 58084099 540765358 536798529 98429376 26046366 622180012 489788687 468765792 142294179 703701219 694147473 645944669 597072914 100089509 696191510 745088606 390010213 441511821 649314184 475839130 886004304 718507851 583085150 742419560 822564197 944807376 713978290 2576107 816307032 160092955 533420680 392716251 952527877 477623455 449348230 898946694 309715852 678648361 931246299 391167638 7439406 28950154 594597402 784642493 160247774 693516467 294937191 88192430 169590774 226847468 177534514 380750343 71587323 891635343 990886630 564544617 568144970 404820816 39753079 784108026 992869659 845888230 265080320 366376344 17283454 819033662 976257548 577253658 651757831 523258310 557211259 104748370 311375359 232902994 74893250 482658356 724458736 747095154 700049522 980751292 433169046 60939988 480289574 109744520 196960000 372201917 397496672 63334786 891895826 161064055 349807471 148157342 608707686 296747277 6369946 266607911 271166271 373872139 674334146 789329840 912239123 185402526 433646018 342195131 441563661 67311709 976144821 353945145 885233438 23149728 198115078 219723199 28307766 11838185 1000 287773242 756024101 717519320 98701068 246038895 357650574 420025654 743749039 549336413 312966206 61550393 335877502 732796895 114772815 597040987 100393163 61125803 563229916 318754949 50407472 161088821 297130490 500480015 566498119 179573356 272194280 60481177 553995306 905201582 773979819 51023978 994710297 290931025 422449875 309035884 89771502 570804061 299384749 574919786 724096115 518680975 212820968 405029273 995767430 360667106 610667497 574157559 855025676 754709812 448928930 964869686 211856254 211209501 411978152 999139904 247157106 551361779 182533793 170161868 987144836 839210571 126901085 838772579 269325839 405286897 848050173 507794122 747714515 726040482 61613216 129592459 67656223 27458183 789891475 507664530 288980125 632501090 113550819 505669119 334225238 64678739 72840902 649633976 212494388 671876575 345615374 643894997 290598891 207541886 817445236 760110957 793227003 400795655 725476066 64092875 36964416 437336002 705901140 131121753 213298405 969873865 643798492 99579743 107155888 532112257 203532737 994389194 418191006 771635366 587317848 498021675 829151479 977337657 386777236 150434311 963723606 899139323 551996465 61013937 203174961 116639391 782540308 394843627 611479530 128936653 779148146 144220523 144575181 438956540 545859194 526109585 553916751 385570143 452426164 26554517 197199795 425985287 438598653 579101519 137031824 235273984 766073594 22427381 922450201 378463497 864606380 585105434 302386150 799469847 721217523 829661915 398677268 135451859 533525278 298885658 887368683 225785303 4628047 766144214 237113814 712060549 921110794 432120665 45422879 83024788 188552775 838099895 376346705 305252843 141022868 789706451 831356208 852402617 58822450 637493692 429208275 811467920 771580249 332787349 123305136 223924845 125600703 315165664 782451612 841774825 455321574 230683131 975815762 122224490 654009386 540761953 162550603 158548642 661181680 489364680 343837999 105066609 399718347 960889271 94175460 44550840 115735973 132248124 726170149 519140791 673267299 579328770 294140475 592827477 448064585 600049428 616855873 340470189 658084549 214720333 906251969 588944433 557532004 488102986 416812785 404162431 717587810 600220326 99945426 181516987 242839876 597017967 865850809 1596652 643422199 37072893 725737327 147572458 421971165 136349236 167669557 280359829 945868816 485526793 512197531 893678350 815083575 882947270 950788097 118522591 136075613 793141283 502674966 970224370 126516682 317413413 771731372 960408195 109874295 444801207 124100866 566071191 255195957 727425112 311100208 572655643 834528709 408908781 650352747 609249558 233557061 116084360 860392214 481494129 335926952 77673172 840006601 176378637 499199666 329907036 773483940 345418516 225243174 894398914 937542482 223878329 641098704 396089936 755140697 899915815 247812496 956195626 105384686 829991126 143471770 781566414 145846681 84966839 692520336 777176648 993422668 642669532 606686375 75815888 117312973 640984981 903913471 812256089 119039693 41959494 388156032 334328565 46768068 98937610 441439901 488912240 423503096 157853233 866278010 31577034 849682611 425752675 137014596 16712549 916941795 198243682 190276434 968446508 956604160 589063669 446051872 92887938 386521419 175058874 813318926 983438090 951256036 695563883 474953044 174698511 821646376 734780439 960319261 561157536 921427142 971989074 643073838 130912982 667217348 384882197 994481826 29371713 596142101 251167509 480896348 136246395 762609638 530937465 729879320 620002869 438037014 473290060 113903371 537926398 432297382 275628919 299540543 44315254 936870488 793092223 976195349 86601196 74614903 387481986 16026140 451662923 135217112 662006353 781969935 414738485 311244079 113647689 772158291 251513714 942911382 431995867 477403375 318571618 824088080 331812232 158935537 5108640 463404021 343881755 65742267 293413079 240724045 10878410 190016471 5340134 907873164 286893181 752650507 117751361 246012688 830260200 919081453 440015122 97041501 618381502 653623169 105714614 97616198 138815598 133701000 819023008 144128657 363897151 848769898 726908711 577935245 280442715 679536440 146451841 945745083 482322854 749061517 1205506 50424921 325035043 829973399 948641988 44432131 746747670 162523210 529219197 462816438 393608946 526557783 114493193 239186539 375153148 231697593 732303954 252530581 294678586 117569192 914892633 87575823 641868336 27174441 358379168 22518999 87735791 430629274 877759150 749457723 868866833 208966004 191668047 414844326 881857005 483965068 699074933 952236467 264540192 132165708 622313853 797012365 138437096 792488696 516629712 392313853 9767801 778735765 873704692 644650554 221764517 907354372 38629599 867861789 79535028 211899077 889245904 575985323 687446910 85471271 88218302 651477214 885181896 237320285 77666493 111790590 714310921 879885719 425951194 862505782 399220380 349942897 36245249 3656640 92155759 375599167 830904858 739541243 491565926 759052152 183198882 468091429 222601860 181155899 251141482 734533961 307337461 416022154 28490938 107457757 485828606 831197780 829590849 452100736 764067141 454147075 552285146 826152101 475205479 874369651 520374805 792511047 398168918 23393686 871386195 68129097 289408522 658677757 52439241 288340254 342608688 904010618 432894873 132909494 800363184 22494602 732010792 457811194 360642162 791236644 12144326 853439043 870260389 842777315 442993316 618603255 45635201 729531210 461110654 658974202 456247725 980873261 784534137 142302009 992910042 633058712 921055786 847270235 822278191 318797400 286667940 151626911 380496011 11321606 507574705 336396763 15153341 770068094 546102088 944092523 30396055 71502423 980671264 644793766 241377204 244919860 784202738 174246880 178276605 455726102 882863725 632753820 499360432 323506530 443989436 525108335 886090974 473523529 370159500 336009934 217585847 989398793 145437366 655630939 571994542 133973460 115978317 556652085 930829276 904168003 462736636 297787805 532118690 798712162 916513828 640543510 653142316 780994265 475272480 974146423 452747388 851543905 319713468 1557580 114109415 883682333 903177882 272584173 720459266 985848015 268669815 484959460 81167945 136538899 891741633 470615849 446171263 324772660 979333938 309862466 153202439 758327330 532061423 202019278 367147667 436432743 11457067 806821834 243351458 355749123 497442691 521972360 154608536 303196251 54472853 55436141 87504180 468401326 966731228 109805260 61057 755690159 38893438 310433129 748376736 742038900 675673438 480790030 969552785 98237892 452855882 653919007 455536772 273301383 511896807 936188460 112357425 6646763 401568714 932693515 620996504 295206149 715225538 287811972 108616576 134970700 697690284 836434203 784779994 29104546 78231738 676800313 750427592 688286203 361826321 848257143 666891426 600376380 521262668 547671088 720267866 541727569 625320256 560238525 63435054 561079767 723763639 923105801 285417230 359850389 673484876 108893259 643511872 470655188 91231956 199306847 528228795 570641292 537737194 761886945 866883934 111527599 294194172 819607913 772133130 51762674 707217906 623233509 131210218 502912347 552118893 421143804 246069514 462869109 93780514 92333768 892969377 113908545 149104867 860284827 934136747 436372341 39942103 597363680 631202468 972926185 73243111 170773892 11821347 92526047 174839973 944018712 834157256 318307080 205714770 949101 848188875 389402028 282781977 463260617 602726266 498506502 347907337 636928611 342041454 671401093 824894514 726799248 93272917 114111519 722267467 580559729 684322763 789120237 945940604 113842615 470318212 784355929 178268459 14913454 483173051 726132239 782315138 297401376 441769962 562897048 874460327 397654855 620241189 548831451 826812270 893192621 617267733 197074758 925855366 200620300 880086836 122377459 650039580 374607745 896036756 76289539 915220601 30339268 609351007 478006566 549148136 439826798 7876719 45247517 395058323 420013872 781467978 164465044 508876119 320978482 387588135 342023613 845035578 544537486 152642457 626822034 8860572 561363963 777500000 907205920 286722420 432024666 466951528 219013765 385380128 536003968 917120579 73826739 239172546 604053074 468092643 872888099 276423183 647876514 108346709 401843596 998202824 39736160 218402684 122134660 508196022 457310341 923352660 742163340 143282358 111713459 807738734 976310477 92476806 720850956 8518843 285494654 170846142 280725616 569644425 302177566 129782071 13548291 316135795 308114159 288414332 17657730 81351850 22082311 759529406 741247273 547666596 309364084 732439697 891513518 414816790 917579571 128828414 217773206 903970345 860993480 949586594 245075694 922215763 11586900 676921465 30493989 119126346 689983071 781471298 672345615 408836538 423911314 448532065 228192183 803240659 69037567 149130034 994656928 220313761 952606741 102261031 814857495 737855066 125154023 856534876 342918888 10733716 393663835 134425199 439324374 535433768 279222507 730980774 62198189 445053327 223980037 154754953 604904661 692256949 528793157 371274629 334462201 887810544 97984243 778093667 994273849 2221898 972111521 711337859 227279994 523860319 223902282 409904224 89541330 393036909 291927855 81216000 189275124 66797295 824386998 581002644 993056311 413297830 569074841 763312524 679065381 84665685 101520689 711438525 365400219 48047973 884972050 108128141 838985116 18814929 142541806 38095325 226290660 217034544 872051827 840113204 67403956 599257410 240039468 856508447 502114609 59633214 182326982 679227605 318920084 961396067 546527901 83370949 94880143 17140449 216954909 923856095 745397176 352908592 179520869 88129027 810596323 951970650 67735151 168378224 345999064 884904212 607650268 15714584 692537294 547173514 314167990 531777129 552267722 710671804 137807661 29774827 116940901 105438366 389989090 585719385 101803311 332303238 468469165 843021691 871205229 1000 428920088 99155279 526834675 97603911 713514132 159090743 798771530 230293821 930746066 596327028 581675756 714264780 778243281 98182575 786458958 444127339 703658252 121808009 130231873 387050823 411521319 254029306 660478613 133649716 931924115 563249225 519314319 504750315 74905191 85842652 392657041 783290878 773947231 989099481 935458257 816807092 804481363 103913974 606989619 831842106 252388398 997602262 982561126 102669415 690769455 840998007 253299650 207109164 389624777 135659622 34791244 732819126 140677114 65118146 76172002 430344066 667178108 207297596 132810432 121088287 768617639 280890790 181597552 579498302 564446430 456569887 949474105 729971652 208858731 560905847 300935904 428410786 631723792 897410136 449001531 704703756 193982724 300991527 348337534 504772724 901368889 44251284 389665958 707423838 145247043 629273016 173341447 71013146 898431128 290660387 195870460 403518690 155950631 786355525 670210698 609589527 64496206 972362213 883196111 129595468 900606947 226365894 621764534 141866781 941411053 314163335 592539214 939004710 550383959 596722917 851212633 7653010 78421101 644554307 466543055 79449085 246872509 212307850 680290036 391495167 444355009 238237146 782648640 93917623 775582483 139013199 13391187 121229783 720407641 644657231 900889332 337729094 377077581 546039840 931093118 316031769 49567982 163431380 149917934 498934827 786465047 664308666 169936990 470630213 442219682 885575708 942218484 281856721 991048471 796577687 175255629 911761536 199347225 728476214 19679720 575095956 592546969 65098286 819386398 84201299 615345945 38804908 208177868 483366336 134078736 483040504 323179337 523424289 658714573 623085777 177959790 516800545 331506123 86970583 980228558 719868197 13175579 882925659 474884796 284176194 341007969 462188088 436638332 809875428 16010395 51994121 112917033 661495365 718818404 77448703 463746792 622584413 504315858 191127409 680201097 991364629 249469928 481837607 78867665 786745574 796476741 461669928 7623550 217425761 519632173 829344480 62492644 333779147 975242653 730157212 116388741 447784611 307481350 48973976 764696343 569911783 379133786 857064555 890269770 170407185 161303822 45653685 838715572 753964326 41410604 782693208 225517311 541394043 965492067 82662721 999406771 834822201 337658468 98716170 974411863 45460955 388939251 358501461 296295562 208772200 735405104 455610870 377701629 786556696 207534148 775607185 559764703 553564815 32244574 657502512 115092469 731715021 965174960 77786314 574508891 839826324 290825183 383242877 590414174 914374211 715325468 746240304 15085492 643322682 491112775 198026341 340895539 145895241 629023690 175214029 949826474 618936420 86628455 573877343 532889995 96118417 359716191 713676739 709198965 904078249 5452458 273316466 794748660 63892466 560150286 557979829 186706635 70721907 876082216 444920448 144817441 644497219 814068046 953967288 942086761 357789038 910522976 501897346 190752268 142264926 267350860 621741039 539857338 100876968 398741582 121163673 283052308 964360146 601815573 193072392 403059901 858161868 35137138 318406263 85761820 192849887 320302008 672241669 833316354 515023307 126058376 877924157 7908727 333347319 897107917 926486819 538297795 966151463 959166466 488234270 666677160 168601357 264978152 746445076 645574770 844921684 846182190 767222974 854532318 150495859 760728475 370216203 807385133 81229539 757549009 825093572 701150849 14684332 766262138 73099156 754834153 368064370 396524307 903731843 564195487 5103657 619429852 41028395 497339698 746075034 210890070 795440181 584926332 560660565 212174163 704582714 59221471 200118318 716112783 11399350 672177291 299137524 311578208 888617381 695136331 594404465 976838533 381208832 255430197 688553982 838752241 537675569 589798756 48969202 10013335 825721178 14514435 583223094 213725618 248469007 231089249 511003398 123919487 471623739 221369943 261570610 967964860 205520735 604498795 123947876 2754543 942897304 20548307 200215098 588981601 643532669 79791730 205805857 706411297 77425255 156262403 82861453 430574998 278111932 644832036 529720967 126729511 737895357 63298118 401376776 367550447 113190727 322134802 531505888 176770577 418408507 639194156 696675982 163406665 166624981 42997141 61773346 719939020 863592804 125845715 277229536 241682490 742043465 251763796 91697869 100269327 78944208 101382200 173515800 109803133 474147123 211370140 964287809 243171113 713310054 959688395 219961723 752939925 162253377 19732070 507073461 789690013 73168606 228029659 987793707 707315576 534727440 563540008 113605716 530817620 648638910 885326517 125105396 75483223 383512910 505259193 135752746 100766812 371844386 837409388 891093775 63076512 55119062 765900900 764865966 807552297 36147846 621167928 198218472 738611255 132149240 113624821 919105758 810876168 139167851 457971028 741183243 643251637 426808539 574071410 441177197 892711563 155627805 919723827 499383102 600991084 509130075 701154328 105079863 853167151 309233940 769285769 556024790 497785319 900845221 375669223 128307563 444491204 766388122 556741417 892046341 684612996 531926862 796176851 51702933 90604611 410387246 294169287 853980468 466412811 289641455 65470123 421620111 426999187 850689910 130875003 202905664 116685361 291974989 318913550 207247273 259361261 26678029 126914003 225760947 782705799 304977623 870830549 107632856 64443436 399444588 434676865 821111092 621748613 294232230 317838445 878090725 388712727 755335746 606188460 254132633 292897013 300139566 74039336 67950773 282225156 212829692 410110907 879181651 775531136 42462324 2713894 742168725 266821368 23218965 81155037 17178726 468739316 759924166 417253752 115451141 37440698 707577400 933406978 797656946 799921436 626589427 688169 805148499 725603109 165868197 287423383 974807752 716563845 697560557 241036301 767770012 703197724 865886532 513785951 618410454 645803375 657712623 535962540 795375665 378046862 889504440 215608832 921085110 12420758 407266978 697802558 919782842 988705412 381275564 120595652 133998790 760712342 922514770 378032187 826842055 268249685 640147291 205602322 113187567 613927549 845953147 927031848 432852318 257605487 718161847 79063632 642914459 935762154 929346264 33122212 80082011 574822070 143453909 44101645 982391797 36602146 56900395 425647983 30951373 117305161 127254072 744306040 262100430 953585045 122738487 966804452 697009325 62206347 694898219 556255418 86365644 354547171 536140994 99210017 692924425 250413810 420928779 34197508 579077633 516881687 251944742 268657781 627245530 378695193 909022946 902256966 506199406 575607333 414964114 823347718 536562662 40502904 432085925 708637446 205897113 892309058 912241153 523988578 937496148 223552768 278636195 910278011 344394473 965642036 739149353 160308430 887803389 500974753 314001069 854657377 556165139 773472782 477310783 505186754 765795028 107137586 985650207 66911196 925069136 269876730 279676039 192026813 37597891 129944073 137126575 921009953 435849361 241530171 693275967 21396226 925833775 220872222 575341246 204321975 273568612 237289258 792403905 781741059 899060588 794742231 274990295 702133619 930507606 265724666 559484233 649682920 871653867 361033596 350751144 330883860 881378163 577302784 425432363 116510120 29508326 806551013 364455849 714804516 797840330 251659287 659679839 524051865 919206121 713498424 440510064 886678315 496106969 672306041 896803019 25476757 325006114 686963318 825394287 202818161 208464932 902072880 570553668 383317112 574103068 393320951 740026338 850534460 826971653 915439771 499245970 89441172 565483304 497290525 732375550 386603917 363598859 45521742 292525174 793053330 736778338 977431754 534748006 195856043 302761898 160976247 617955340 801124644 403624438 39868122 854646111 348867540 114006621 224174142 192498060 500254939 913072403 177560228 67340866 851122497 625746351 576138044 589153816 552694472 125970094 878287123 8344949 33266946 700263256 207817389 291898414 297096226 111942190 539087923 240919493 696117722 75377854 295897483 355324162 571700625 814123420 520472491 926456521 357989525 622884763 599046090 244040051 990772041 291838289 274071072 921667273 970071035 129877064 41703916 275458272 207932476 957655078 166389878 4670997 21743425 137175780 884151042 108987619 416671865 695336605 294919562 814442215 783844917 193793229 537111283 362613994 190746934 793593716 265865417 272740804 608983586 819284481 871849552 632341945 174512114 804939465 287820612 253469924 625434061 934395544 836736365 991103141 856309228 620928070 601540853 504282836 703404564 323839760 640703046 990492186 683343762 981703628 204958702 241294440 313446723 405277389 351400370 986744082 752433439 997665312 672317764 219176072 918510356 602526933 463978024 296572446 639011062 799035552 548330650 155017908 883702985 391292321 527530201 572640620 968891462 520050989 886050072 872263846 162544823 568865965 289241758 355599903 752112768 93022513 597221685 913723711 653999161 65077116 980215623 826038682 763140818 453849682 414416008 212867783 592853518 125328222 388404629 741811259 116903439 387112189 561166511 174373545 858952217 48650774 50732460 741162519 106082752 332052055 12354824 791898293 795106152 544956063 321984438 371094404 72817654 290439012 504726226 187236556 250625827 967744988 95476331 747324336 197444471 163211017 897404570 667352508 793863795 596515839 649077416 702312679 300276880 632055962 423731486 762440538 125522112 80392768 383383433 826631733 833092771 523930965 858732534 647898968 487031672 777087279 842878757 36392620 865791338 735293192 379203194 445900175 828227222 819536074 773617288 91309444 107953832 253708131 86588080 880416439 78818793 780132681 512867381 317391487 10669714 824173945 808274905 156452134 571955763 670794355 797549161 25629331 480274949 536658142 967493229 357642899 967519167 453079708 380018391 692142019 323803818 18266453 1000 368405760 492420987 67238585 672502132 890738689 404533289 872284255 766357599 146968022 44120173 352883689 259425151 565920641 690245283 628184485 441429656 95777942 455336059 3880207 546468541 281391938 330417167 171800826 349753601 545629814 511441911 284233771 353548794 324691683 831023172 886392017 774611672 66027330 736386538 873444485 560945757 90795591 123816661 987838183 295429836 429725324 901038143 617638966 742768849 917564615 137481598 653857861 513209099 178834240 107367893 915859946 679638427 394610018 646247 483333197 562080050 739022245 957004767 782975188 73411824 292186852 48961979 844678469 892865221 179345322 339367050 745522821 233861835 950120185 512620386 318501213 872462362 455856218 338992638 979645899 12104078 984811989 773383052 312011000 92533520 548216463 542519914 80046639 708110774 682612728 626494694 970098942 647170775 131180900 743660358 668209824 28027132 904304465 204416081 150550393 252696157 848216000 566346497 818678178 754538669 243939989 372675976 392483885 993584654 991107091 931504728 147313228 373839857 28045552 836632185 560605360 768061766 102929263 122126653 485810459 484746715 876953782 544766725 322366963 796876684 812621134 962999171 177041454 855901006 229140071 664372030 883065327 411826862 716124701 887670055 568743914 607855599 495644765 188458693 178179232 370561684 303836436 131518502 610851625 596849536 231609789 332836974 94579733 326884264 38855539 448375401 273821511 620789355 412483747 799382250 796120472 432211591 112346136 46042529 354157259 564474588 154909233 143031835 476673071 576027581 998099330 889844816 849290177 992894471 884800941 776933566 942261170 309437174 701213222 188976693 117088246 837614080 636549478 500383915 293825875 681601749 220906732 903520118 557700432 12465862 557330198 97059428 205891642 725257917 5623221 587038131 129015762 126926752 797005012 611806464 393762860 390502677 644038181 484635446 658541875 364705251 172869663 448128524 196155609 164270809 951297394 574465239 371344003 356371023 172813635 121860282 606348783 678690411 125935735 600811395 761752904 219578540 84209470 791869810 198087881 987083161 857895064 118184017 641029266 482493188 340222786 606110750 139838072 887046295 210103696 101215727 303550708 591659524 516425865 463270083 683662408 690146735 326729320 754206203 944161349 755798190 886519921 236636433 219284942 657096298 955860571 277951962 190548915 585594013 917455297 488315142 63343188 379889493 863049066 706972285 945041672 85582600 994944620 119216954 422626200 170585927 16936079 395612286 809836302 232569241 51881695 937687641 242318969 11478332 242313628 800092275 320890732 645126498 509722599 43986432 111894242 824166324 542394732 576835531 413146410 991248116 253807680 954938895 495555076 762009925 832596355 390899736 307373777 955496846 610400092 622340012 157779211 319596642 341258731 575829597 699925752 40867987 83460645 515409815 59100532 104808503 609277300 298424229 578670158 814639840 638933237 791622310 424124665 647479945 368663876 652554601 156072072 408245674 210280414 404236548 905355778 818919098 507183962 96963686 897419049 175229697 689028544 52172909 784882315 823285781 512399701 507380988 415166935 788559938 656661681 656976744 966740549 44066507 655779739 825616763 812340618 601229448 243198508 966553299 597464825 441902762 31660347 626970302 528731896 684685441 12607885 148116978 841754785 607256738 282756880 287745633 44402551 972093612 868371879 252433727 963777254 140539928 735289653 146088712 889910036 455870773 118939333 517183222 445266655 78050497 177590932 586585307 150070373 565055471 524006535 598923047 604533948 140322477 749292888 443771398 221646306 557164575 697342255 45119769 12658456 646299150 657667087 204367555 678602018 968588719 962926837 494581626 95806594 822939956 498750762 915243499 112912062 277846059 605411806 14915501 954484569 719335612 30354429 712463766 494748786 853554943 350791780 685378215 68627593 546651857 475534568 486720149 109528061 63396813 914565472 41673698 878861177 88585330 393813081 411115633 661829600 451973936 278321718 896682511 19887877 741345480 486325510 94480890 51874652 968548138 685303568 379948610 7752265 921383155 771144227 405053189 179320854 591451935 285781724 353555991 759752628 68972234 27998849 702236552 355231744 322920633 136071812 893038461 643757190 568455601 112854666 395363487 681652412 791055157 996155481 896075202 188973265 9898482 462120404 910987767 610732363 983781578 672102500 23481181 594377459 422308608 94148103 285293995 822481054 319243708 682765338 26084467 460105794 799342682 684513917 69870787 169892785 34534027 732884777 186472106 44168680 306524674 376335187 666136525 114952563 784016817 651973261 447337072 181007039 671500560 887587453 323364026 299006996 575517002 395289485 261559942 657348592 699559908 680987709 510870149 38878014 702008009 904392354 385423119 984433866 708013446 166049756 91441757 688555686 139369460 796659741 177078506 385508793 350955418 282027594 224348054 652462904 888009980 160704830 955652968 152811213 955767742 944798002 719788541 105772152 497064289 525124697 56541231 8507063 459895224 275583731 633315941 277819819 895466162 266890768 557943074 135520736 93279378 948575761 562121877 847938950 579876939 368242155 666446046 389884857 763612147 186328967 386283587 231735322 68083277 800215261 36184106 162067601 35410719 611662839 861028036 935884878 713743915 253846240 880887138 654265753 933856793 101225894 430814422 664032663 555946565 482986310 892716423 496186013 793232666 66459769 977533147 711066623 335169981 232792758 82897999 258445067 237149243 145735092 547335694 981956205 740720864 203796405 882041224 235489997 43036625 341291222 474778859 958867765 332454868 378083766 182819621 64230565 362236021 682797419 720604519 210696990 928311241 107311472 276605774 415992830 734026889 445154053 205618063 367842921 778917845 761314597 540585049 831932330 684093147 759373358 9136284 270046083 188860795 922854243 524387406 581870744 133215495 251920609 384420738 507584331 530764005 486893797 347664430 783923456 26521956 98486423 99359946 578568955 588201405 486985679 31372741 729985101 200546473 493997365 135725119 806480538 579187239 273963901 303033943 660859114 787007371 523473062 931002044 647317061 360272313 757143391 1568853 883500029 662493562 30816825 61485542 175314548 29101278 797889480 441692851 170778297 775092501 94492376 554924961 445181926 280709367 745189218 591317986 241921881 7946981 564802259 718034010 830237426 775017282 190803960 973499197 715468832 772122878 579050065 137341216 975012658 246503176 371433616 747621879 735769064 963607976 56458597 968091341 44356508 851919471 151710020 181036161 659803401 330101845 628522374 98756873 993102589 111969695 127944238 844287889 70754205 84193718 576744023 886561016 681610816 713527252 199134722 474099094 536470027 975294216 606657780 439867186 781820827 196605628 996165268 507918372 675365827 27907245 31599727 207214602 395049332 308109199 142658135 28372705 814709645 41368685 702168115 795090888 331317146 516204500 756245321 865010223 86579128 74523106 462703242 796130116 921754126 589801267 246658830 27695158 513655712 566071226 125851349 860531129 489300878 297351338 246752976 770206918 5618572 533545218 759172491 743365364 367979230 988200848 360806653 650212061 709115041 174054457 807572372 391196670 914462651 704158712 337122531 433690195 858736126 681912837 247654770 110084625 418078487 609558616 66433793 251671302 787369458 502008754 680919784 450828508 988484429 48129923 27590819 76644780 536715512 810255249 912911445 200820604 875069017 127595555 290362750 669893574 542955366 411548335 715619451 717674045 575576454 704606244 35830408 178305526 204246713 680757057 641143447 915715606 903431656 46184875 120803962 502686404 850020195 350107142 2798522 19132840 448818059 77148753 407977256 934577762 322741445 87363138 26149387 886582840 304764549 312783961 724448135 235644009 124513811 425646074 349848577 423018385 307984038 418232595 31625569 651029924 586487409 620011198 328587401 647149716 926596253 626578340 272935321 856687640 463244341 243981019 774071143 515023892 373837470 275351431 283476033 277924329 772538629 644166937 845111736 475715466 859216251 51692320 689870243 251084542 482429004 209929249 898531905 50013953 688525112 622145016 980160880 496414745 367706690 32031555 680262373 820911870 604174510 792555546 931891199 302188923 188057664 95114510 134447273 136802106 668983514 197940738 446557986 942260075 730801833 489203867 455913686 128793352 342502709 648426598 346842991 211473075 6250641 634872062 660538585 395527980 394729812 905438276 763263989 112851927 133664716 64187610 806627676 815799989 667981238 1858085 176738055 298840625 72707422 822517506 165719899 698317087 579248272 372334376 800028496 31117581 53777772 424369377 533023812 702685333 597955600 902868039 256458148 358731779 771833887 224364687 696391116 128606743 215421087 903719911 635695188 189608309 668824114 674362931 386481519 490956513 401894445 531844094 925893855 306464772 935968187 796839930 632279631 786259662 381395335 227119399 584121735 941350335 472492257 636051067 370345427 68646594 5682537 983013039 135787361 23425760 127039800 186778125 861102977 662375726 545928549 168663759 454696808 150975038 361645352 42365738 883936644 250005947 243121587 181363499 753811394 975916001 446097008 644123542 67157855 880339586 286753389 647501219 699535297 753558839 813120255 596838050 51472895 984114504 733846320 903935150 920738669 722014503 420769494 586747861 268083799 934573231 342883028 320600458 670798241 505061575 674249912 817287730 616228537 960749381 144886220 412763399 117585968 552363975 877705924 819459154 805628559 986408017 556697052 146213630 372617628 403018457 182962870 603849535 439552476 829754411 987913629 301062173 625211738 547531359 421147867 200823500 1000 818270175 585624423 747018797 969219083 464980373 471361406 380815859 536203111 213462093 268919245 453816147 54549571 841449947 719136922 461388562 903280881 211226503 762643936 85594572 32854538 251700148 190757502 561921300 532336107 984924556 28663521 333282873 37612916 118735533 582386184 553863958 10016127 19416277 465102265 149912780 116738073 26531592 370312758 469897829 935212659 256277813 474566017 46931031 951661359 54071192 70851346 35924164 405176497 775269052 240653279 408001959 41603137 281685095 204752955 37380357 931197585 756703940 429220672 765461444 485551684 784060559 875868417 649535825 857183152 630390475 315441917 403783070 669492873 277551398 133570261 500081829 339362117 82877916 749499511 60244652 89726209 62179859 749109294 994248364 972305199 695809562 237980821 496595994 826457228 145836369 608913816 646737505 631455682 256054420 719892822 229926454 65731694 789918270 300299249 892488956 62257250 321158039 516219819 252333922 624782655 991482127 465129937 69189775 105538833 265359236 29774058 2539695 435349183 152537179 703769615 452594634 61205068 104248007 425063438 260757860 158541228 797192370 523568420 104028187 166088876 480471629 963267433 362410944 593405389 490516893 796251604 535863646 92798807 471608230 28866647 402182889 687749641 878587044 413269770 710028942 794148340 405147192 56259532 61031231 823486568 101751891 268481741 848710464 530165008 628082888 66676086 897837950 814983304 706891042 89225391 956589740 553485442 325276908 915108612 81284591 582727466 56293961 235425047 87471258 878123235 281619707 798714705 977376937 158832981 523816998 710235487 910839268 624178548 784161767 254081783 832047276 784241436 326097920 543927356 169058896 790638450 145330398 259564860 609935550 54042151 924951692 813350316 881096540 875139561 320169571 627013443 249135884 18269771 656515907 694313312 313319224 621545425 135845536 347401560 136561543 35647141 785735847 24107322 55760529 330028807 130689786 915520325 844597837 653577699 649627907 554625594 253219342 861311987 27169187 390167748 165317550 627708464 494869469 187221897 516031747 434467843 634778333 154642044 923916747 888057314 716390615 483416474 852086877 76423203 265624465 677074067 461284116 779190223 58410845 990963944 507199523 229387709 126677503 477260553 737138228 75216336 175146743 398643236 783557499 620377983 889880247 17074237 639882614 52234867 272328134 212132371 745983342 65321663 855495434 327611100 270069890 556451497 851711484 214181711 407734167 476656182 682084570 376693643 859931669 826665688 511705281 312905214 979370905 365773113 730878309 277457662 418389216 771551366 466675748 278306128 74799374 802350401 465645731 203891220 954620960 348085005 619292214 201592611 27073169 75873490 685668895 220607080 243931233 120331752 2087747 542170107 358620426 136173007 129409149 255578843 443806965 451966074 35587055 596680443 3205727 440111400 517613007 969109962 103798940 679866874 463876432 371551577 147971275 844223690 142771752 650692048 818654067 248951608 582971854 62768444 850807515 625447519 71254000 720172194 77787036 20637712 29068372 246376873 924827760 244824234 791772947 514588432 274355113 6361030 710249222 82867707 139799014 350928275 21696188 82064643 29378218 447494000 85849503 666821637 78202773 783409894 833277001 342700536 581789930 27915435 184385697 556139340 296986259 611834448 945917621 885072321 820844352 949455454 864021054 802266033 202959735 920371494 97480692 565791941 342362731 50031331 24639455 687027977 756765651 380487822 769123709 597396957 87562269 90373380 875544825 68778594 751534237 624048352 889355898 256508067 933792311 173329064 113773106 708288279 819454460 297985083 885330151 620929347 826726095 24361446 864283435 28687360 374174954 6537591 25905352 872325235 242716193 906050329 547116852 29551852 136701361 130105153 181395529 332521443 566321343 187389539 688251694 730832577 782708657 966473177 202442162 665995917 761852004 892187219 82850353 25338596 759732498 147111796 855230614 404885288 261399767 781023931 364372495 414671527 885533694 674098131 246658191 20709463 190474047 405822767 254126222 145219155 96876731 88468557 398647783 467547256 845026782 20737479 461351248 268766503 746575911 981849205 945843826 94753572 97034173 871878452 47410932 965514190 593696846 579625407 781752039 639798989 410688114 245708446 858435029 54174568 942127053 93413931 754811949 504316840 583497483 564572586 846337311 58241964 228116330 202647585 877946072 689496294 192996420 213339454 871058912 636291580 783996263 834522305 227994866 614941937 881136116 148703025 99469325 495462689 172628985 646189368 76005419 550589128 152528607 446896180 545135162 610648459 571052071 277026 810982569 195880727 970684242 10768073 823635251 120122646 26331156 587811607 340949114 815371929 164338252 861924743 894481540 873111226 514561912 808220962 888807839 491640648 969265037 74353316 779472825 670910105 688548001 221359375 631985107 540479576 567778311 36559628 390102068 442503989 80475480 809694622 75902585 833438156 926780345 256861511 952595198 651267505 895578098 717357667 528708429 698162033 637327425 611271473 595084726 965069824 421766293 328659656 778398758 851301738 870718862 644990575 171938564 736272174 430121091 840191937 961391398 892306471 53088235 950088454 957037545 232476403 189919738 497860814 870510269 845418500 958673032 39805639 959392815 41980914 977307806 573599554 49248207 662980972 381916314 27601304 694368838 541674752 554353865 118520044 44429960 948811051 864796090 424253634 33997906 394151222 809344820 970980494 231731863 186366075 833241119 599762498 387650753 263261408 741393802 956421489 945334589 702462780 766468166 649502138 327959989 404256001 117287679 285498872 717073647 314148934 726170165 789192883 97563114 335261673 878483034 191157312 617615621 890352788 904824674 316302206 8802107 845901990 487684408 823961832 427084956 729857798 380327300 55642870 899943845 646301481 384024065 346803401 279796461 916647411 600773323 460725197 595585757 758085981 115044019 334019267 387642725 421200590 477523878 365712184 778842222 38264354 610158861 471550500 408355422 843058266 376776255 127303136 715671221 260499801 113597295 32456154 843801916 272149510 717629059 641317535 993477749 495501257 271815419 834616849 714041203 130310399 959865244 593923140 152478875 98743469 178889699 21339272 122570748 25371759 576105829 235068582 949083993 88478232 351231300 826206650 787970581 83043487 745769862 270995489 34514060 521504647 346166820 877345839 972595506 79743947 640248089 438468255 850840846 83089262 76422580 400638042 978284359 188039964 932454472 894277187 406299519 926871241 459310926 993412781 876204895 537928473 192483315 848675151 749034239 980372104 431649399 87185543 991777578 404217485 49482094 487254563 861404060 783630406 597247170 845545340 247365118 50425566 446802196 65829806 750138355 116209251 989016332 3493983 127556723 54524086 644688646 717058260 679110737 56357393 240599479 521950798 645538348 389667850 91798569 624072270 265775848 750179405 694744054 286462927 559916127 767713710 850951963 427718906 895242478 175437671 328935269 77025078 140449191 381480985 845589429 698461978 109100056 382893951 403366651 711189654 294113183 272653078 855036704 703112273 903233810 835310529 650415235 587195660 362150484 523761207 99920027 33810764 319390039 469460590 702532271 959387754 390459694 40552002 831857665 673664660 660658276 574992011 59862291 105280073 283710856 789173720 44411275 60792523 158410729 900668148 908156984 174767684 206694479 661913916 434319106 914216556 286293601 526255505 911450456 835596076 104525030 580142711 662002711 27510245 968299426 120309049 998816312 819460650 89576412 418671797 317834735 766762057 589045840 606322010 670949391 8072030 812649904 713342926 706491719 22943886 49645437 6602663 652672910 45458604 785630756 748897503 397394850 245749437 595935751 124223147 84312759 732967967 727513604 587113263 136614958 970331487 629110175 578367449 248089014 801871950 134210634 193254582 560208274 658709178 10769137 479517630 377151769 200747539 214050652 524313650 544105747 93311884 116108003 102421144 831227495 140700983 293394663 285494406 106356525 154951997 781543125 888984957 734111766 705325668 283448809 928410439 843547692 772560295 794945344 788840338 744164718 650384247 106456894 275905673 480171962 357552310 800069380 594290642 100967770 312438391 122328141 960350245 288292993 333083927 499169570 159056649 459020248 960069016 112140114 646788125 74814307 831655095 16338041 19323153 238986360 373803650 719478289 662481644 751988427 174506318 646651499 163816657 537665982 661677469 776070538 189580511 216882904 333683584 229183425 897684901 262686335 786327668 977648704 446625798 784583299 522775485 630173039 231081202 412556645 418153069 403664390 227070423 345943378 325151654 556089662 436546510 198023149 554191790 772246887 92185836 414516854 23692483 409249650 286442226 997448930 401797545 459240549 753591287 893460752 924288621 522845502 367799127 58458161 974594937 51347593 283878346 248700723 20757061 625617525 242936012 877482540 627712034 2632575 102047486 122463513 331441990 39798297 977867002 45794214 989294023 94803077 991386099 706964425 917727346 439060015 632900044 465237683 488331880 814414687 789431182 795481279 317479315 54558798 425587690 197305048 666528801 381317458 211484313 785607337 280303709 702531305 370395330 330888628 692380893 620875237 590825188 286477752 228098790 158283071 367941656 236721414 376124727 973112679 427948314 897553889 479145756 828347012 72742618 876648016 809492419 572750666 9825022 849021381 293544645 982706270 713189679 46575347 983227326 141789044 185112653 686089223 338713190 848117785 650093307 472447566 997946539 110784056 271983041 190395570 592880633 207887950 189575490 302233645 616637080 1000 583221636 649161265 997631691 399643621 653812700 866238770 459953482 36022723 58571592 915303844 659255074 732493401 665410422 768231509 431506027 669496371 97134704 372173642 734797577 392847177 58107865 490461983 23581837 41207764 71027545 659927498 444266548 94308657 198013609 679206841 886365018 338828024 927628435 325428126 14975853 816730612 408100212 986373438 345089026 394910706 547281879 98687614 69375685 54399729 580841278 731851311 810967476 795925639 486608549 517570780 70124013 624494602 625025 315055033 957533627 61132201 818355447 296332721 942519621 781951921 454926823 34338693 573586360 947648875 507583628 961783894 94914164 279531159 657721909 881797674 446406938 613709489 317957353 441095353 26194883 243946198 205000676 904891790 41451732 539667458 44332058 43908497 113241159 64713031 605038916 940508890 445237342 402578202 933664424 683521247 352366753 904756547 985316119 702645203 104351659 697912886 293746594 649106374 817775233 449674578 9406184 178289165 10852634 726569218 942886182 92176113 387320104 812395206 227146952 903874463 925120567 51189395 368888416 897193153 9724238 677088301 296694046 54997615 826208759 923581989 863015254 932668383 149243642 51983317 275813737 525112595 417483296 91732452 296042421 431544389 613444761 982123078 686832079 337408123 283741191 922855817 108306963 821160769 24221056 138695015 264849666 402699773 42180911 740519664 540375982 299654797 682517224 3005325 136992412 98376145 105850212 386077204 11786205 198583568 136477420 504595239 805314745 832800468 387648834 46279231 466716786 284277332 799599037 952388161 995533430 969126338 172588763 979956586 899786515 636643850 267210947 132637606 189628806 712002676 133292312 210210201 623025661 600572069 556439244 592983596 763429107 134702780 525329941 858961518 52704073 314766841 590327097 154517389 43915418 249567138 417830769 775587118 562369763 37646554 909991060 799518378 237334524 993047007 673084486 400903248 330206387 299792946 680816196 381750169 539664375 568415356 106499493 266714874 355867309 167873668 109609366 618406040 22458221 34932525 550035023 658044171 930033218 908424589 1732934 51898654 281798626 21402012 172378508 85334036 9018538 82263832 836062448 5962201 881437326 745851059 50953390 613899273 463660570 49103845 890800488 790671789 691926076 782360944 70476769 762386708 854889117 871654807 643993477 899012002 860481958 434809704 103477933 898828253 838198496 516342568 360888762 36085885 443843020 464134917 126587076 288478681 114454821 18204516 121374766 876270210 295687960 298454018 255640135 539586567 601436383 24606880 833046587 968815009 929397965 371652213 48254472 720052102 219258416 771347157 727805131 665612860 729564014 431061644 919968944 12261918 398074525 267420666 168609932 825422391 431662307 792762134 898470257 113577840 991110700 988211134 243124549 123378841 147455466 104693537 547656012 403239755 769520763 498291467 216966251 346210631 721503394 92248385 944588268 361972490 203480633 98838646 50323470 135573721 681739593 103748701 861193669 303350049 600738033 796912125 506101384 20959656 231258929 93650277 293546025 436784797 744972252 6768298 450782617 362500904 18474328 716377160 871307975 962397030 981870606 801888410 755629119 23262152 191476233 340396850 498950182 441668303 687122924 180199183 86808636 902198078 520082763 293885622 291311800 73226242 653482940 146319194 25658839 146564122 47995835 392550811 626233150 269674021 872272153 28514749 795971962 920527571 130467436 502179246 264220912 101568381 655101821 575148162 155977656 510340796 39253785 576173209 863139874 378650125 602219604 624104258 158132659 912070456 978927777 160299648 443589350 383367975 568025301 43302764 20720441 941037431 619913850 409054550 451160613 657023766 191034816 552186073 4619623 61849820 689018062 946717361 283942501 139622962 312199399 646487358 920306139 122886745 55265229 107585548 127542616 803735228 365638827 114239961 434243003 877750866 238618708 339453426 29523636 423622086 965713452 66059753 20707131 932627260 136124172 285851138 536441993 266031360 335999502 346353737 584109488 415739236 161177928 604622470 264844725 818426602 858899730 990068065 175185059 203394258 176330306 677899307 306266378 626968163 30356524 159474895 108185447 318791512 574978286 480389692 882262913 382135323 108511206 231157326 159100376 465987433 564719412 904282518 951576789 982585210 986253770 40511879 498020588 310994930 201711082 2074290 540435089 242312665 557932973 503095880 811078961 378214364 804546771 633305867 311579151 69545132 53709278 441621506 236369221 489338990 664805438 140764758 279476103 787757880 651370029 585321355 130688108 597150041 964176050 41430235 38764905 661724989 82435907 376511549 764141440 313492220 666860385 950448535 569316392 492182315 898352041 243905888 40892403 389552526 462920510 610439438 150678563 972419761 653488020 744546251 46757658 488107128 537136031 951751091 319756969 894814902 475106395 776514580 932026196 877302934 579207944 857845471 934590009 435915678 309938585 750282129 391373680 280734277 617894426 849560197 420434053 121602499 420968961 533688320 94352221 740766130 458334007 212555359 379574532 54894891 65014881 420323578 898723910 299169228 118944247 406697778 752431357 283374211 334552223 320390762 944816857 938461267 13161516 18674114 67769104 717698263 294236708 81637284 130755191 106656963 749137202 521492935 705934936 305992482 794843810 75565662 149200275 262870415 970404409 20292139 396275156 540783571 946860045 275857899 578500975 947505390 32231490 701112514 462321980 352120643 49234661 448276171 129309146 379733757 897024719 60838305 223643814 94857199 523140358 756368039 66315552 481259048 93965076 617235396 790351516 366854332 46911075 590687357 228861335 429176123 379275459 179630974 442477058 843084121 575805194 474428028 131336321 598069589 211810762 334711062 385045550 761033613 243201270 502817396 598193761 572699522 750319601 414880821 355310013 421972525 782086703 33075023 32785222 334732498 834232615 432912411 331488584 839922913 934034579 836657397 394985875 581113726 618749853 341110909 70932663 982374302 559472807 779069294 469674683 99570370 107431181 529880750 124134295 879543267 205390043 31696164 217671116 350181795 505249852 936322941 890988041 150222653 217414028 872537186 831795181 653378170 201041364 729786542 640708352 934376177 234601754 239254701 321501204 780223975 851640591 334696511 188180428 161579846 469030194 970046066 469895895 669277867 320100607 72791738 910196675 998754868 314212303 875237004 60972457 407303816 521573557 552088741 743102478 192880900 307642659 361878839 37353806 908671027 738127904 64491295 101299642 154214637 718359731 693962519 614870358 246417218 793449546 78317559 295386472 45176433 696972861 730176595 718719203 758961250 978599159 997226069 98462854 215696927 190790970 720915336 24999014 756135716 556275198 66787722 441362555 762605079 829672308 357994648 108953789 362858837 374639776 581055688 524705666 549123807 60002934 359696612 305318231 361809524 744914266 187330951 351927034 281574933 776669287 704110305 182917555 590669592 732041360 5804210 54151424 771236354 155645220 457135399 139788360 592250639 294620087 728614196 661422209 393470257 551358238 480110744 926711172 947157894 379823830 599101256 776227808 206836675 929872441 992119319 296751917 688943984 992285352 111124255 600681250 933071261 210369126 992677696 273979589 557968108 421927735 574164084 777136949 91806352 830418494 394552880 162878655 409604322 36931118 684769354 41665505 781835386 18919685 932280307 126401255 448897977 742758576 996326694 35953188 5942218 662635086 314029518 618978688 514626693 712449994 539582212 69554975 239687830 146838671 112129656 66628095 342240604 484051907 920799176 730645994 647558132 497467751 711965071 503117148 400876579 600123978 117446992 932089386 120605447 599126945 971853927 856283068 165917792 630824532 679847328 773302248 560629518 292298517 31559924 440627796 94469890 996595577 228843581 106452515 875685549 366725303 832037776 832069133 114256364 159565688 897488048 295149505 44842478 671301153 712757001 352991289 827324500 16135584 513396181 117832497 51174942 245783903 93271488 570900658 936567222 67419054 199401187 841896508 78677045 605568607 11601808 319047 513762255 670799088 955382524 65265060 671284093 480400252 271344645 735178497 772580291 830550488 11959139 7444553 460079831 961169347 742245853 660118461 971089434 309070227 424622592 904510947 712035981 142952659 867190965 396945294 465918126 838264818 696398848 513443821 894932871 353389010 474031912 151737434 968549217 496375281 702191847 739277308 259560349 122765345 477913479 958380554 76446328 19754494 665856600 65705931 930987328 395319321 942907857 311805432 179890148 116489357 249732968 465343651 126305849 289951509 741374752 603903300 41862818 365138909 796457455 61241538 832553630 329071641 633358287 59986291 542568949 36482076 320479198 472148121 882475465 670197416 533622891 31983901 525918844 581024574 950511759 800176248 913600973 15188337 65302558 556093775 153195125 842902010 147115656 869488370 96036518 508948116 873465068 520930279 44462838 975364403 68647297 151036845 997292339 52336305 418564402 634922238 554505945 113642525 881687320 274314246 827722010 581297673 333703493 436580937 667991121 70000937 707879242 191715759 677240932 170526098 52338224 720050456 820453975 776962477 730860903 82414895 723392292 47170361 907181788 79057669 727448347 373725159 904496430 443444162 232401644 598759805 242033505 448844020 106883294 713306079 616356424 488283702 737017147 970371464 975360705 759131432 74789379 836486106 159708934 964517289 143238772 905230269 141743252 527830857 980193608 172867785 802449311 634058953 591830818 318802944 588465531 947720770 441972238 715870338 886274233 278334804 943598861 1000 487257884 295960089 144135810 298994530 911394657 85676713 343670502 892013227 184215698 511991665 443534577 921066547 36810718 267438556 18066352 22534888 379206966 110650660 537500464 520902804 62070528 692315518 400013502 115813601 219960377 307383103 407974788 935509542 511029156 550282242 132469452 654508352 993221864 809261249 723697126 904652824 236001703 100545114 142446662 18889529 465253092 91940119 699678879 505010159 619124859 126276980 819419559 866362772 585115171 805125760 918942215 135804075 635655065 185840535 879370614 269741322 745678727 207290548 16873996 998445835 269673491 460027339 104938793 913527373 165890441 459352285 109000524 414947021 939678906 933185584 214615534 381603267 488719367 468308056 657735822 395888609 648277743 233759770 102062721 643734454 612797340 273488021 954344884 63415937 68639280 900058353 888715997 971535210 536245860 650276343 509078331 242601120 854150215 519016088 254392971 529053298 195545437 120789859 570945827 207014918 498999999 913887500 136886668 658415134 421395209 714508412 922976690 983935347 137594777 353774921 890422655 363481278 655874984 254511021 919139192 20226733 790218325 128757026 988740506 227413635 486512614 49765713 310849099 263820064 823426192 193444717 91224571 687540676 901927468 96145110 574038811 409897928 112650943 66787184 164818968 841045713 930585453 374926051 701289365 644673742 920146825 618107758 313184371 126806657 92104212 26502453 525807352 147441203 128666180 956236163 212567984 164479155 209100179 383891942 145487862 593543931 239385266 974023194 460047786 128409732 57867930 522462518 872440080 811121221 419461671 40399663 316338457 436192080 63149825 400438609 962141520 388687183 562167289 299517148 203346323 61202975 632070521 764685734 37983803 300270171 778603517 601694651 36802039 496969493 372525626 609792321 255222565 227228228 713340333 148354312 624430054 164588519 643164494 274194897 32502422 942127807 334536166 595454589 927066275 389653031 615447337 894702439 651165467 476822910 373418823 765792968 547067676 68415816 388706823 584282703 652323709 967556953 983678258 686241522 392755601 390057546 649539965 51674662 644739317 838084018 35436947 962792988 936224636 12006382 986901880 530907568 751371421 792460033 931633422 229834345 718599043 588525681 407676008 33988674 262652055 485495389 512375630 551139924 217195449 241773398 362561004 34051008 326148324 773218915 784075628 80027100 658591155 774391977 6539010 541447130 999820392 170525633 131753872 228058999 346728842 793774770 336647586 454851053 673702572 338496720 842510685 262361414 370873969 534056393 34351647 998999080 775425668 733137913 465488123 963904210 920468189 262071863 856122152 59399838 183970837 913110214 292775428 177602616 315593668 953538060 748436797 185675824 46741443 777223633 116135609 877484226 402039574 86603366 986047711 993857216 440023436 3386831 485914737 518942865 300430987 401307241 944459280 30415162 611381597 804510238 683962983 778255014 171744816 819752278 745539366 557270110 116422235 434697301 354152026 344909405 508585629 857454277 413554152 109064224 429283948 321286412 889852853 791449782 678524013 44553578 156724607 885855783 367155587 933971245 667288595 956773023 538537252 992487064 631200328 51890806 994871585 967378765 586712603 32200118 64022713 728440928 155287965 310088932 455390756 299374997 903476171 849090269 674274839 708255337 935043407 471099673 118752325 56036542 591434044 619103978 304331343 570557615 452751478 692931432 308925557 213661634 448624483 819323726 680965383 260828316 190585464 665108590 292691334 913704071 985172372 73838508 407360454 644590991 653851150 569824925 630384862 981164650 962492427 836688645 686875207 195822729 296396893 317059947 603990123 930762398 243240539 112690952 983300227 684180357 151060977 438514242 25930437 134890860 58669335 392252543 503180443 383533939 878500103 761580611 881547752 600594734 11246707 839593014 761885319 35701201 93448966 462360662 960122353 93531305 212610322 180134671 415713627 321758026 505682554 802140174 268960776 633298082 972550970 62351672 47415338 480197634 336750039 944718942 100886532 301896973 544889267 934212737 480846876 229744223 21592624 181619747 672642530 458526542 24838604 889275396 580525617 416145864 742764182 879220028 973955600 760757893 141166889 203704789 408947818 925311065 82680824 128134923 68057545 263804644 57254295 236640382 119251131 717198601 487971503 103936995 28377798 14692529 231998540 243940043 210083801 997524070 55617775 178230343 526215401 990223717 58428639 132926892 44371880 697501339 635255414 24854896 586880262 908478386 635593030 138262006 589092366 543098791 18590308 214337416 398914113 723560488 497126543 288505911 732280940 792353005 479194154 816463978 481611506 485647160 392589404 409154377 974624589 369586411 361434869 347869213 997542639 519022348 83169746 75846365 480482665 734719372 883715528 905058492 138503643 825696480 432959500 805095676 369886750 879403937 57941418 355958041 434262037 739468481 473660255 972234407 2502115 212572899 409853233 629083104 364817381 189619552 525870563 398627368 686100506 621836840 57298071 499628767 659723921 696722504 801367626 3546850 169629149 349369986 790408891 848281086 126135461 907926901 255110043 589756638 285411482 967257510 171730854 341811101 995453533 92758279 131671699 873268870 745593010 884307638 655144671 203275010 801008271 140404545 436326098 648073940 360155120 732476301 772437485 686993623 572897939 38266691 95196043 893516895 876599629 224777915 494662563 325681971 776300985 463636632 76973667 489013041 117165889 672863342 536351481 904558222 36600913 14683317 138995609 225064511 587268482 10744813 456958861 423177332 127507565 849441469 335657604 680884704 901034250 688419134 447819144 526747162 187431786 295163586 669021134 469818568 730061039 698033465 492956189 818561633 518603855 24493202 537342463 18919173 890559325 35532058 977245716 271405649 5581626 486180761 112748607 701585940 193151490 499172319 212838169 285285580 828045486 263617506 367741537 108886203 175560152 592576090 711403289 57755947 359968179 460863278 752385135 13709726 175999739 985684932 311481366 441794582 725865412 975105667 336546569 31603367 23976038 235251160 659716319 559992272 513470721 118748232 756531655 83300177 18116199 496247617 971507412 137114950 186897026 438985095 116021710 713618714 494343383 861033194 3447027 943496893 439373050 35368625 244519041 99623611 605005713 592345110 483210161 575994255 999461214 962598273 965250678 537731473 607727547 680379252 317007937 164896899 656750984 790757359 571623330 130445717 285974718 796266055 89450662 306180173 687840063 55646107 816951714 128991517 183501668 379074288 871244242 362309385 769933572 253751141 14780061 992936025 434583970 93924301 570267248 347608397 866514674 591221151 675588521 418549569 55762647 227040696 420108325 81917454 513639631 640788597 594235344 738875149 118568832 95354423 906353934 880861435 588749701 485977237 960981099 645545099 509457312 132851604 943918479 697265014 922103490 9983042 389214597 996347247 802562567 791758271 26394606 178952825 220543004 703615089 1385356 124363545 737008698 56456128 84223862 95087992 551704272 284236023 233038280 125109442 182031565 797884156 570174510 62001781 988423844 874045973 634189840 358461878 111068389 969895200 95399354 602200338 917874086 16997670 533197202 308292482 130710192 331165869 262033739 182783487 137176374 26278084 820037804 23994804 601492971 277782191 440900749 578200875 717011844 636809568 505062890 935228624 653345182 39317883 131121037 543979256 484362594 89264233 655142310 34822528 546290634 443168192 255559556 76385588 542645003 981465819 14843335 805634410 845955627 109038559 410313485 793915664 359763557 862663806 356763445 318119868 350084525 755656059 8453486 435825754 525224834 848981830 476528319 40023875 631899562 57360889 162960068 733910701 55806735 344709127 500445811 90518934 364911514 664866313 300472071 976526151 91326514 368282056 151201716 41093557 669584710 835679522 213556103 218431547 589607528 241915953 419468198 520844536 449477389 52388659 450539416 942157857 906443846 483528605 804418697 109346968 296217035 411962444 948250594 150588793 908836519 229629335 737356633 448632090 432668240 992171406 901945284 86929211 543578481 512184529 958328325 964823201 812844288 980273075 373167968 950522952 697916172 74720045 707441266 531080469 96292517 107974202 723302037 391778730 449891668 132461496 23020887 980577300 647462521 763071854 437892877 101356454 746288560 76395475 92242116 3891860 785404859 90562072 648543701 420580580 681759662 939879929 686764256 498926205 522510985 179479258 937063568 853494371 570908765 441740652 10660806 902602853 691558111 298005113 660844131 321364769 666226190 91795798 447075875 53795774 733761164 699703366 806292301 288468928 464842170 67991287 610428467 820286799 55508572 553141768 92554114 168980168 139381629 79267635 124244896 761540741 523208693 181292433 709242997 72564818 26605218 86663927 913937141 329049702 374612284 45534408 822043306 526989227 589594383 624148308 635213793 116958912 200108651 671840175 834817036 419211939 50768755 768915998 657889037 701179818 866493721 52245885 506047087 668982626 151586018 200288795 828225038 434773287 890001253 274670647 885294836 433066774 578198855 228069110 317137451 709533047 817202345 450123810 963362389 135501644 35027269 516212727 710313815 79008370 15331920 165362999 93557454 570586437 741048012 527914325 376671461 214237305 905291950 517439195 950813687 822781156 2734635 20249951 93851706 18200150 8812106 40789038 740728978 326736456 748881861 880259310 149433978 804547894 968306992 16358414 138501149 206352835 917270219 526083444 25120993 817411554 208961169 425350477 319409353 693939172 332699305 296866464 846873989 332651327 932585889 705813320 1000 844946871 505087719 207301421 80911894 643200629 483069823 588607758 134857375 834750334 533639650 484549774 234033827 316238269 176712176 500016807 262336092 904141647 119715094 422020804 978237232 597727335 190780792 169655313 125731105 383362181 950857898 300362145 380407535 717002416 421664108 973416344 154468043 424116005 410445471 819179210 123315949 612743516 897349489 245154041 884114385 194802139 35616383 61215326 915820032 665035334 430537558 470152281 115666396 166340559 883425731 870248580 437741124 442348198 94203756 708176129 62196246 64876456 38041683 657693626 871036967 837062952 329941049 240394614 261389135 446596916 17106697 676098808 88139999 135908335 372480773 653140594 73670223 920886900 282817467 808403953 778098603 146320998 823813338 331495227 730055496 379548606 46276141 731896844 486367303 373277203 638922631 176943175 332286875 729380144 602598659 318500091 394193387 454990894 330028081 532785563 763447205 213254548 599284761 50217883 66841041 678092429 227643124 505295699 717854210 178209750 525378676 750864045 101013202 507436891 399875420 901354758 751836566 928466769 528192324 967469216 456826689 4256450 585452611 721903754 658154596 732327895 295922469 809923912 621852258 401091777 494058651 610391661 180149478 38747818 488527263 975463873 694667681 596648251 381740561 215040185 739199837 382990090 326728743 60556012 106562671 941532333 478808091 93293579 714126066 422957942 92882143 847394085 80281673 857731296 568503374 572369163 329040985 209742666 871899739 542113575 604164584 568649381 784917911 31295119 848654670 426489034 87608098 428874469 355079827 445567331 529310066 77931980 893923853 448331212 452313077 846894496 30209986 735441947 58046946 761842391 420716442 707103301 620917 338884451 485242183 559904667 970363615 202178956 351976883 57755390 814451323 705510128 5188494 614541657 770914127 122463442 777851903 34119838 152357066 833169021 361870933 483669300 104962341 64002321 22985494 411667648 444286121 173981345 662690916 299880745 295827896 903977022 634676140 487956087 138617017 481764338 306453237 715359517 67966260 45406502 849371890 873792424 915760122 103161746 145770959 868489397 679884159 341060079 721028166 771077454 532207182 405709824 16471442 280388927 695717119 149606416 588274290 460747533 602032226 686718499 742881020 801398073 145367581 325192759 572945341 196650527 400329224 333384763 143562825 851536512 482342028 201226699 227339018 744645391 84954200 223959030 740208588 488021590 310815214 190780823 496368636 873931606 51363224 3164798 348025722 340258535 122631845 121962552 107110207 897615198 542093900 879810132 742601692 94063268 874975728 684555472 49411572 72075537 32736740 10484384 520034746 172819527 588441883 280604925 459032868 41573549 48132735 111709036 600941979 952393105 712048962 630672656 824104504 636543277 16029686 185379255 515347166 299733662 535042145 882452917 887064590 679923571 897858110 555022490 878332257 801808149 639294159 85286886 698880344 87010149 821027488 312323830 311257138 83956976 489618361 762913099 101318992 755294180 966506492 64243025 276417050 935052256 892300999 496958891 501456760 724647569 984148967 537355772 787389335 29919893 876758253 95601926 709759721 472227129 490737753 268308757 897005479 84868665 434394909 963861482 617149915 727113986 948482886 394309928 695067464 545034678 906376202 48028946 325041443 357421999 384302175 984538834 939555873 28209142 549489595 53558986 134186794 942602587 405418761 422886321 530431270 277475552 13804973 748197067 21866167 572247848 818037591 374161652 836242713 509771213 74102457 316937619 108101854 102026672 987763168 611129112 591157694 316094848 996128269 61982555 383588039 976190355 299136392 691147101 980948077 266335332 615975590 724736267 920300021 889823647 85276344 414071979 90601561 561837510 17617223 361854289 169847201 824842017 107291291 506333282 25680146 211929847 262478457 884646367 351831044 483223040 944862095 488761835 627040490 226803988 588827 841424884 47044111 926547412 447846809 301592148 937314803 916930034 140532569 392804116 668772246 925958588 939243487 129805999 490941520 456726474 773085827 338325966 551571838 515173955 468215011 25615558 791796100 387431350 409216961 974875049 850394078 148442666 471848619 365577650 431272277 951445457 521118625 531343609 263602506 243013389 689743962 999687604 425499702 608271373 210590574 218237233 228427674 80333279 633318544 305153733 721054712 115152779 665264932 64900789 818959550 706950606 70454551 423343574 400216822 882762394 994314963 582129008 513309584 674516450 687574288 458080635 5586916 919591098 407668225 362713472 59539319 933183381 60143603 42136156 221802000 874076843 784514155 709751937 488830463 352556864 105766836 823672794 76962209 125575511 867101885 85119647 629470221 51134335 967798414 513180675 780729409 484857855 232599588 981349823 286264778 836301604 615202164 374753607 677731634 507007561 27208428 901290409 422249204 330959317 283679428 606396205 271333484 940033146 981072781 394134676 601075817 6509673 530825915 63112394 496687398 5335627 518463997 360095629 89989766 696708980 567188228 24380729 126581470 398456728 122804374 313402149 88228541 561320146 772819928 625094540 729274097 182331611 818597868 389546938 49882590 792324056 556388161 229600270 778666892 10236538 354395397 973065908 32678285 106315269 896595779 201600168 303134744 908909392 975111233 217674769 737624471 154097845 170873572 71471376 148832240 501153224 820978375 3155152 56809822 842167565 165829488 629161799 299022263 114101783 472137459 70505425 924946045 393073728 496613425 54003502 436148457 844409438 926222737 585389672 733442235 551898335 581303320 489655182 104614166 642762193 260638842 405069726 40395902 847540691 115974039 195873701 269300863 5696493 435165698 842772560 732587735 124066694 132463503 887287007 521141668 262817866 893515293 288313840 939499234 143479078 679687432 70510758 483100864 581314249 557696150 884986522 665060478 158409390 577896901 630812444 191248267 178803151 274116452 804365056 40130659 902017469 836178104 667097869 51472038 80504120 927343326 272903226 1018272 168768938 549211213 127215476 606321070 397582961 232771257 428925501 424406172 92726022 652308517 561950540 787704245 469439044 732731579 117274952 488091417 101746501 274625707 413959438 57937040 934675167 754527624 763167093 832981894 8431632 531772817 101372567 792676641 777759529 982375024 552524606 437858402 199862111 690078044 207553392 246987876 469601520 452268418 948608558 364600649 116665890 168424422 143736712 337909801 137827789 508673588 131058021 676249085 324381945 594873925 530389299 225378650 32088940 406886861 836446094 456393802 541317920 779384576 88884999 149616029 546511596 417725264 131926199 777662382 38212884 989749728 69852573 983576408 201230333 83886291 550956904 28550272 724268867 526083170 174391742 649561545 865941032 682148633 203280995 866548612 762554379 102825671 352438126 174970530 176595863 670696730 314660034 299938346 528898791 728036125 620415 260235483 564397247 439229060 134399652 339476593 275561302 975466086 263331338 727191730 671252375 816647923 901142237 913028112 873097826 499169381 868211216 692997588 806852087 534658363 42359166 621788190 611694085 69884508 482229992 475562397 172728519 892132928 220651833 192815649 639238432 63738119 404151892 71458447 569220505 134595860 832102103 165573820 244527245 133057752 512200771 341767062 277725375 368286071 10333693 416117754 919970432 928968290 360818974 327102148 971140242 333884878 81600145 376849349 516524475 126729075 955431230 50361706 828937971 376437825 231572431 816930204 661139703 506064694 967232647 295010105 935524540 514717572 188257231 171428158 631800033 51866839 374365987 377850891 930465157 441709302 347480100 183493569 207920290 211426 262297883 811902772 578281748 589453529 748476975 713055258 452011558 664724192 311742893 766561755 753591179 101875779 571900577 558418819 543914909 256295455 733810128 802100813 522193430 907762435 287227929 973474326 397885974 68804904 900889768 318391072 219627638 614758038 16129395 519179194 439978401 772023012 758007602 485149653 753252276 446938263 847580242 459548952 664723733 73574535 413473409 637141350 110038038 894607587 321271915 581428728 314924309 993532184 455867076 119006737 893036346 513002445 813820529 765777018 508282431 363923052 100118449 720732815 729836955 30171690 904752886 130989935 903734617 396506826 82397761 361788221 265890742 562649887 110035984 55924198 279064609 232290423 30745850 255748339 210089362 910306831 4192893 708606876 116262458 323712466 320688315 80572893 658525660 68365918 926676328 457174799 84081124 133976988 367625032 136094675 831197322 15557067 847047915 999558069 885262058 800594620 110869754 405068280 255284281 803275186 950686161 533974325 147665438 807023283 295760678 160347287 414076695 801575185 216240252 351418788 165517697 469264769 247240239 415892956 615788682 715739975 356379460 4830631 491050222 592704378 116327620 990065490 14444480 517680428 437397805 591792578 538770368 600535020 774687327 471476305 285857931 274743522 757779138 280177502 1324703 101100508 626010356 396169816 56405172 217331950 100827888 754857256 94138250 480366270 432359641 129626869 107213805 597953 499854489 478798911 754408126 111573455 889866436 69043258 505242676 430292302 780465909 800434516 638844024 447533039 556744162 145219198 71009504 57597121 437461934 450755928 270362130 657998735 191459692 919602804 567791762 422534650 252509300 27793520 769353628 964199253 293707231 607230613 13547013 696462843 181934895 850850336 749723202 728117436 74764651 703976443 42938793 717813638 494645156 728019553 582265167 861809835 679346161 324701066 80357556 399648342 373605286 12812294 674850692 743095346 233148007 203222232 731053726 780733415 260837772 558452733 1000 342811555 779168111 698053880 92231244 261603032 778059192 728206083 370233958 701167205 398254274 985153598 63459111 682253380 463169583 288531122 873136900 161023140 438307640 461301344 111677019 916634026 972461841 209709684 567764650 375221405 924035245 808915078 209708360 836509335 711508238 836361304 296055369 832594050 701766168 162585477 143716415 469836400 563911799 468508215 31011995 417009293 37538894 255284412 506636435 173534139 121269972 50685273 760412444 122308378 122818885 361301628 497893957 387533271 77484216 83855663 991294759 970562499 781986758 868541060 872848300 468525417 955681989 805163756 723470891 919057667 654023093 569122709 953123143 316743208 892144345 58432736 899656544 909333373 64853495 237791940 265251185 388448496 580676551 203614619 563093125 501403872 54148939 122165889 131791733 774563892 123232366 994915140 991260101 456874147 845510363 494777699 100178698 480886424 227822385 274962000 773174721 751954827 727447910 370171642 92602486 19311631 86608112 827296273 436901798 4334097 469791471 512085551 249725071 19531999 99529393 504416389 616756456 326262265 135081872 984870584 289844814 469540891 331283280 435885870 843879133 886394298 445882793 118981268 726314327 547958330 892663111 825247101 645677248 616834600 701139034 467521732 825495516 423240819 150684846 143583357 885141129 764042425 60050304 173795829 503965915 159216025 651375156 86152471 18647359 973733799 511053346 711172205 114913653 900849511 918527805 158956981 359343003 684057839 213820908 755938004 753298118 254201397 204238011 334693993 785611739 823755859 716323559 198464385 198097772 841639195 533426295 140854106 137864928 213955240 962733354 38629253 354134061 769783276 106669648 775703181 891471254 43139714 945462852 700394149 485732315 248194445 154227039 391879369 435691465 866019924 737790079 310747229 990030837 120953438 62595369 917736528 233104232 76631636 274991929 515823841 823223749 169662015 74783269 13990480 505005501 702373816 497684450 610774900 695526475 42252414 457524639 741824807 16459528 757241595 70190944 344951703 823523390 140333475 590139947 629435940 70068121 199227528 540501653 252956816 889876446 165786652 642310628 741051527 153128428 430701420 296893391 102843328 589597562 778276986 67093492 167619389 477698126 317308277 111502462 91973133 919740826 559018164 485442208 197335941 812221689 196780458 507197225 804127881 427676916 701569519 393441913 358072429 772067022 319056738 76893185 501090962 630378870 747934342 257848142 50145828 958327977 25328591 517451646 562797178 873428134 48390782 692705437 180915802 152206219 396765049 1266056 98807300 755195899 903839281 420096906 896932704 140362955 70056217 9663500 317675139 598963049 57816376 408718747 670319017 135579681 823011918 490779560 919132852 946171021 176501532 97534667 676879396 244054201 512299246 157553322 692176518 489964541 681731680 78126762 541547431 884448862 386041943 899225827 49351321 785898031 778634978 478152452 391011471 156110286 536256811 666808249 346884347 670334083 948190745 360621341 863608731 16213267 100931089 439166230 707791265 649245595 234447836 125012219 140141768 513566576 40005410 809573431 684574420 261367195 683998935 415501859 976517192 839541444 55906998 46804393 639851426 993653404 213868774 52527794 234736854 24281540 761796660 205952855 670068299 14806466 468045455 42046656 933009777 195197971 436199282 193472004 331867462 305482246 484079253 224417983 247922382 630502292 212524119 981859222 564747811 938113721 340579981 303633390 986298574 639861974 391481144 688084531 448002345 305325872 159957990 598218245 263203575 635550999 406502920 525279503 728246220 768504655 634578093 73431425 91961513 249301570 615369659 938506246 861147788 705741942 31005795 118637935 658034699 130297415 213992296 123084310 122979046 893201800 431770783 932530818 376313121 858853101 572861211 986742595 567504784 515781334 815354702 66369356 757778539 372874889 782841674 296291213 448060302 688078266 105480220 79879993 354025522 19661233 131099745 974059651 526557049 143519600 675561698 70674129 395837401 731484545 490092885 597609563 568794350 138628251 357394935 486230980 638683534 51543586 938838526 608569221 699441926 822540525 63582901 611018030 24876119 777870888 760328598 806035036 406450118 503547029 64762416 373829845 801538393 316282819 903770654 552558142 899102831 418092541 88366666 923411874 887178330 531828653 571281107 422465753 586856644 268322600 89933256 768923882 530882911 83958797 289719149 670015756 786028218 71184278 716646683 652424815 117546025 356254992 444104985 423521120 721913976 833966696 213675303 195789771 781826445 506575310 824334413 372010629 420589190 225458350 179479140 775930882 535951271 465683433 471405240 360281097 500278679 668913360 165020813 20374185 580564269 45307311 340245042 397584258 477167529 840835789 601055595 931788672 889516935 59484813 969770773 98802525 766175829 284791634 56728100 648379816 968118363 98333215 904263543 252680817 746683319 488391283 370286239 403952110 170596260 289894971 478978400 851175071 241682728 134646012 813939952 128050774 218738171 507227584 263562689 657095700 482434705 407473023 794825102 336789935 659968621 812980018 274236036 146435759 194008737 39169897 59994224 510420984 385964511 228440356 74521744 598036126 185136666 135705530 239000328 64386152 321424039 185048102 958203518 867427367 733325422 937049795 53434460 914220257 425706606 905718246 218773890 578821913 86329612 665896955 685653035 41945381 639906964 586891691 420891118 872790145 426583521 475142229 418767066 480236841 579224311 512493467 203502268 513860549 292353651 13593987 795548762 125728654 622696668 753143432 626546839 992384998 332525080 128261899 265357656 906931182 784429339 338578496 78832084 932569300 455585386 576589602 856198958 325865046 818250009 912690 57566080 750646067 647263730 349340106 44454600 286892848 201063894 945389372 404252631 215997454 746984997 769770708 769889196 292315177 377902375 122921307 993645378 364999812 880576335 196650 550329208 445888497 982773350 297257939 654914168 931732077 983576276 404906329 816973401 814879187 128112896 222340119 43753898 651262611 719108670 95506347 366201060 577965154 313601780 277480454 894642093 245223247 575354140 106020164 468965357 203199981 45123738 241592696 701779831 394564349 125781068 966805449 599234369 460928315 380453268 48203787 378865980 781138988 736387178 87368689 478905207 687937809 521526004 499445010 439362879 200121932 703354034 923738827 926275994 697866451 486765946 665394977 4838229 477718792 89755221 15820464 23516141 67849557 924297553 260030362 395362751 570317017 525628106 805349679 882154644 187431953 802145082 122066840 43537890 414930270 451890442 702011412 562428337 124696220 426340997 831311468 84802864 251442902 856929774 749856551 113634883 538303995 749558385 389885948 589025609 887433463 218784269 295810056 575945986 586064490 748904617 914988113 797304250 904045693 451389873 814128102 111849890 569815678 912884166 215567087 16165603 259036925 678897482 832290785 860818843 631954187 295990933 435863394 460763191 553332696 758555741 554103645 831180633 368021731 12175058 181014020 923883777 230451709 556308689 663990313 471930866 393609034 849694405 519213392 95566555 496915593 255767756 68341538 816861835 106080724 939163828 236159628 876435206 340733825 82243178 275460533 463946026 965713742 119401036 130566880 50761532 393620187 445754087 630031747 52073102 49907236 642974537 989112829 478273184 480672223 487141064 993097923 72708706 437441703 657065248 290962741 47777216 690924432 244386966 965917108 126171407 113583391 326708835 842717598 625243592 281592025 891132335 761413262 770304756 727962306 932577035 756709110 945086294 624588601 856973001 776653327 244336094 340338750 568833499 223013046 123754597 309345474 210841503 905353150 740095918 35158375 388547098 832087390 413762836 21421051 710009073 50732224 23173468 429570413 646463548 383878189 118823187 997863269 664018246 438003682 782493401 787281350 524705030 922186439 255692355 467028794 469014619 277994625 62447261 228293536 508955371 991777420 887561814 604416895 83978411 788595283 524794059 645020794 106636293 284962637 843919607 869208342 765433318 371813133 860803180 356466518 66759542 236813194 750609252 750227966 348490210 234244112 446665851 466357200 43575603 110061625 491108614 245343059 925781182 389490815 748566334 8525903 571015159 135226218 375880225 706748542 682293829 688341694 959009066 935572216 438347828 798815193 731491080 691222460 640214085 218591323 782676256 150670487 342978048 667802978 411297159 426918265 727921805 481304933 44773546 110102211 183931200 463102050 114145391 653210890 92078518 720246306 815617200 155681536 885355326 58872459 669420155 213246866 671387745 157825551 125027269 185248515 392056678 91958067 161739072 96880155 326143256 953574485 690617314 462842251 303923492 293686073 969811568 232143340 463668918 980355740 861199157 915184883 901368718 642544381 68258721 824060037 143096105 824045395 741538336 362436426 798232364 655910177 81723019 322797039 301295075 2171290 142013008 825182090 555423453 77137542 641927423 108332613 494269396 70287194 455198120 238865754 36778688 850422611 837631773 932726098 2786665 870689454 920787207 969206381 96126540 141886244 67347217 532117819 379110840 275123048 820514411 377179286 768151273 342841483 566466605 96618810 988959794 711984902 954638779 957200236 763074954 616484281 281633845 776532488 787856899 61827938 769058653 289423136 42253064 787906294 218132917 742480380 716639857 543001422 854349235 663080430 75451495 694839879 76412022 616214594 352030209 815316999 724764954 912584573 46550258 807148828 466337693 30367856 791049776 184960885 896054749 401265739 37201651 176209277 415470185 766909791 381437346 685973835 424149473 396913254 3342704 289696915 1000 645934237 260949765 84627369 756161321 528095810 744653965 745078164 818970376 115404468 596103658 73316891 526851415 76343112 385228919 104747849 369136512 665868827 943790031 149307033 689656491 6637717 69737568 424442778 228931622 451902927 4885391 412263951 541528344 563058699 768692892 883794045 539959826 959505359 101730962 229605180 121669336 162522162 187868036 931516071 3422647 391890391 509794028 209288711 606092366 595747235 432314780 534471801 31494656 83902773 684722048 55043218 612898109 308710795 606381167 963049869 322337437 301556895 456055703 728619592 560053734 115588339 914665791 758042547 536584462 789696574 783172990 142279349 153141682 257653877 996264769 567687335 121610751 293505572 93479629 680553820 525216265 523535769 793041794 51234841 175186943 766768943 105548706 687367826 937806105 361218940 397487674 733087998 829984923 631766995 617710707 969885415 409935237 788229084 892138639 833216212 832496484 158134698 81266867 208171992 632307140 686171207 567020794 383093624 615695909 799899191 214937248 66361840 359900014 413868777 382302215 618318332 633498306 518152645 73266871 451830555 391210247 980223392 366508625 329940107 502108581 664386342 308679704 283630261 544084364 928185783 288588318 200260419 818476913 642307692 316695135 904164740 150136497 436159565 718030018 365858295 585065 202141287 533985729 426806505 874517896 551799548 321816182 426313825 808774086 45573595 431259925 479361636 198640209 978608658 140236856 909706342 128145922 345771595 899874941 409746161 385145293 435776819 110089911 416983978 106219461 93297006 117966312 806732441 441218488 11563719 693697527 569419226 335871625 830713686 857971301 712196993 673592684 424746820 587142297 561553631 903335906 692557828 62304151 547854669 949080200 732937310 125241272 696033713 380207925 16533277 917342841 520098568 333402293 855201495 687045555 425751684 303853872 43725346 439860634 298450924 411890479 763409483 315970538 69627604 922552590 493156436 462027486 297213244 776224508 821816118 547207005 498584872 898787650 318200233 440019588 926363552 565365843 15177964 952537161 553434076 44447781 870581713 910465565 809545602 634170770 890186761 636211392 874981928 246038110 456404327 922610080 165632478 266308082 702418262 597854173 270739716 172020461 814466356 42212318 54528076 676683756 556019002 309767504 782360084 144651730 158414947 218416808 636742387 521141295 346338281 626144579 876093418 648956101 278720582 938407883 79774173 829533528 288706941 589347356 864708454 293177941 968814537 697733655 577896426 173000313 659155913 342358910 918323128 444542751 266807231 45061246 854173905 573991417 156527409 400398607 183294990 671285672 546825727 501243247 772222032 498560199 472132100 570446921 860600084 303365228 448668106 376484494 20600199 916002653 640397307 54452727 512244560 901634318 343937323 745638792 58279559 106658212 11610021 275922022 604514380 310038846 770743824 806881755 313885568 757523851 612033840 243286260 73793188 120219469 273144490 525793270 804663905 40147680 494400046 482852128 707756768 386185134 518546305 951033354 565976326 187575785 586239022 830349768 127091482 158581476 639722503 436372519 634100215 390078781 614674037 506327229 237031479 278482266 97040878 283666019 262550107 420179079 38650212 147700604 11167407 886437387 467680046 257183559 995401240 640090103 539207124 199268813 459599792 527393016 399873310 8831484 886587262 147121774 833826727 119795007 294096716 678347687 225479966 590884530 599542533 978035451 198562623 668155535 689905381 329955420 766373151 740669549 21424740 514128581 273211622 954796169 485316013 205678162 282113461 37209253 10934853 825154252 11897770 422589660 568821846 582050582 135561226 173802139 609899649 61414603 951759895 650190933 434520202 477248799 790968260 784904646 357520590 95329910 692192429 427823197 851675773 939745610 117348778 205494821 16943008 555970622 148463523 539865459 60074948 760207858 544631902 829991388 905508492 68311794 46957922 251986014 855296257 584365441 124550270 777897624 15991792 42684575 269382806 108419287 226829129 90553844 883525924 128157792 2842389 427012001 176273044 49355925 844209538 523746803 4336362 899133256 532958545 207334877 967605129 365879968 772059479 959323988 336588573 277942383 865147312 982794544 271069859 419673296 720890255 284888583 873067109 267787083 433310846 80078336 467073694 736203006 179536348 558390048 443814986 882651017 14412242 816930726 910213851 394947604 375189167 135702467 482185792 398932485 134910749 339680690 292754860 92708940 207362666 369478584 542036999 980038684 421099430 558816257 252013189 183225663 860058710 894948719 109919668 99268622 25353987 380744770 565664110 767880649 152415096 379244224 442472116 992778609 224338014 811813528 541380588 37356824 740409588 694600300 795732917 875130527 920888043 590201553 506501953 157020301 730412459 726116999 709228238 71779621 834319846 273488209 946087746 72452530 392702737 282837468 916989875 276192729 782059022 117464389 925191297 351567087 853326343 163509533 38526815 31972689 109726794 182729946 43485405 402466796 5384662 449803765 226221329 37816676 870841681 77746288 625025642 496123259 391929212 950213518 472191599 4010559 27366719 319860072 788955935 740943947 379429047 601242503 205500116 743447719 858376731 69721423 512432627 160414820 141502339 759306808 326105180 630960804 40100860 565873303 227472709 521256929 748431405 381234607 683567658 654884335 929922789 851347998 670317120 901274411 577539811 109806318 672334681 147662394 606203388 932421949 907127400 476908223 566663394 44857345 411651357 550196269 872511468 41293871 353744148 348012693 86847589 845060202 631762966 141696593 212589210 475698020 272896029 657007226 904804115 28155736 743995567 854564642 752586917 878530426 625630507 504759943 284314062 122603629 497111228 632419716 325903552 746006275 380496153 548317328 52734771 497475731 396228750 524333383 831121541 973292600 590112733 265953949 338678102 723491331 298160991 578988429 439010023 379758828 555159386 514931331 622436145 849867405 137425242 13042054 874146143 268690465 41365866 304568409 629961272 412469118 342724924 213970849 582520665 317048110 970730371 131380881 713098098 34044090 154267784 965559945 534976408 249460754 195165132 128496809 134692309 574828592 974400762 660298288 974844745 364416468 232011682 967241300 967536919 838379808 801170559 59749285 156138897 34514437 242465990 245898789 635435053 622252117 469093332 535002941 453228567 271987077 629936600 788989306 682646899 18492140 581834129 174186297 723027681 669155418 633681979 624857946 262973607 611432936 502946901 71701712 398636620 936989137 136264108 948874311 473175950 107762621 925512362 347706854 636151134 932692227 894225810 284726496 443027266 611119064 621721119 388321424 144130134 35864553 223275852 355031963 313894289 814588267 308716534 722604844 208082115 47322928 543789546 101311773 15067970 267112999 390578403 998797569 526904925 112995583 11988437 10565859 424818155 497721565 629957294 92494443 71899767 811009512 636758360 574380833 427789296 32217002 83659489 769702161 638269472 126840669 447714158 469001871 399181266 718410051 505893608 492511626 24962161 683337689 363049096 669597412 321047630 258051014 771542010 147458996 249997866 835673348 269380950 15265557 27449526 451600959 971544005 878357919 952479453 461845899 528349808 886117238 471459109 831931505 895564367 713745391 10360900 363497254 148164647 827419804 742704170 402731493 921062419 9327813 94774209 113113816 411958343 215539314 28559123 820283211 814841036 62551374 313798909 810268775 139324 849989826 413481159 237693721 443688143 642212744 178462721 662325078 142606977 89930641 296954253 760178140 467626513 463262470 45952523 549441738 849830928 569678154 967191383 743406861 641299597 438250149 764965587 779200311 460617997 963228594 301035575 121414591 978446865 6832925 515508550 216526210 20974279 220623011 42922465 15907093 394392300 90560529 812046589 426926018 590636761 490612828 74174477 959145264 847251604 530516388 701432708 883705491 41992746 793774082 509063525 20199320 51620574 146759072 498296373 124249499 680617126 134094656 85531657 343902227 290826001 895491064 642911012 801937666 669516811 282231018 777315117 828214213 473989962 473091090 613099056 483583607 134404189 723564578 175628335 62158785 586848019 343795715 309532883 903498387 939782430 368147984 155062453 884562335 740448016 409679252 800580797 231359078 16158033 903353966 905875271 65103603 15340741 605165893 492839059 790314342 752793964 723661052 415708986 332452568 678430086 24040045 983620039 340782475 426647315 87534068 30205241 340981008 652928127 846946682 327686680 218057109 772848294 98894855 213669433 45357101 413363649 453971990 477959459 899385974 361228120 710642259 313203228 621634215 30745636 845892521 52298341 440787393 566392514 399802331 571765563 960072362 999853777 732641191 824162810 764657965 587243704 998568115 434484939 725124704 808809003 969476565 44526510 749525034 833568546 993676716 165342427 851167684 132213429 912693058 881486240 903825097 967788681 618515839 95612104 295777185 506677069 858292723 882824849 87546833 854888363 74436746 755527359 136124787 66273332 1505098 921036724 383375419 147954017 234932046 150500915 957061174 973157975 981345915 499671981 958026755 584980171 414447012 86000461 771973263 98587644 114625480 108015800 611678154 198021190 57674319 558825735 864718631 448537120 503971525 448396703 14490275 14741375 388983689 503366888 531787236 783161510 577026764 816841186 79080007 272562456 670360480 330926264 879184970 705062654 115159275 60892612 701393471 102990674 360727017 545986343 741894255 45051526 532854695 617941283 419659728 960291711 815378388 63579576 765516080 882362167 575377786 450617498 901951518 95793688 616263697 601434562 865312302 1000 456187756 733987089 552215707 693796559 256375168 621880652 220920665 582334911 833426419 344140782 324327900 647745013 309449889 7747108 688184548 954475082 642315235 146341586 637841518 556867309 400274467 150177624 142059973 299240117 338414845 708069292 769455542 11068981 673120680 159964442 443927822 588652549 162317956 999769705 811988101 533653769 275796634 849964986 823331043 788266079 718848789 526982969 480849111 30262064 361589271 460675070 68135859 382716741 750824038 353268355 656427694 833696026 167801554 777512242 372097721 33415821 205142640 124985937 636168767 129594888 67782838 159075318 118640164 15781320 17044806 861717098 557392916 667247664 361326564 477520599 81933035 782075241 166515639 585512584 401928327 29725711 80813724 745186012 915247768 205098505 31583548 316088613 229974258 7325101 867959205 247364035 92221979 857983498 417523923 139861418 427638685 803175881 792416085 197426020 947909247 715624328 102433351 412301200 119754883 407286457 331959492 595759001 848514956 510235574 924319440 856510910 564965378 713063703 868963416 824521824 357865730 952091628 675257598 17499333 944910011 346868770 314396942 487221508 937580494 204947915 101568042 674801077 87102287 360648053 258023698 683832306 29007161 205210609 206125989 819719812 661477414 76415496 812036260 436352103 126612810 416172102 507768621 395160993 825551400 786242104 29099866 472636107 692000585 797823782 688892688 280916730 84604427 71862310 227449370 598017768 717796175 508507622 946173490 600769232 240597385 727540638 360520277 485457963 19058971 869598217 856999376 445306400 519139618 35259104 846352670 280400351 313800471 270890964 254740167 896235398 864951239 567373635 421274661 386020522 190034490 442314095 962618963 328221288 405770857 814275192 166621112 344858230 96453602 575151062 418167593 908711224 104288599 937863611 312216286 341910449 636740727 807503387 808198645 169247629 832550672 928617779 657999060 925988846 864456911 93912183 29859745 476725979 163343355 907371534 785281968 650992786 602107851 643643759 892573027 123351003 532290712 170421450 88176068 333837764 142053498 287563394 566104360 17408714 341770280 839303118 754564395 783148768 85007716 614344925 123824420 997396031 667361674 725352547 605254123 600602346 202768195 980058379 117908524 938786219 819545989 743940017 913706477 685423419 742868619 111587132 924195718 550396399 40448435 55600214 678094280 949779646 666826838 148622328 921340525 450339297 230227296 712748234 508168077 251791559 283788861 9614286 526836396 434433615 656179992 204901502 905868814 953852970 811398797 100621127 442028418 575697059 120355633 675609793 667591701 332286998 55448931 938138629 771048197 101855370 833615120 239567496 320818819 971600233 632321036 921374636 976347115 548150270 604810083 458488630 165521336 419035518 290369925 860077116 589151346 73041325 387720867 746352031 43913198 896036234 684973481 43626611 194072459 229209395 85842367 745390330 447688126 130406795 138713404 468636652 285475034 484830838 60098982 491780970 653283631 661830831 817149277 619494740 154372168 122016066 349778513 213931983 302579137 896608804 623846829 557563530 641194706 448805514 438809267 240842878 869214433 980498924 864060187 101974048 57229099 828131245 125327578 104191248 985835712 72763283 392928858 473996231 788837949 657564779 830306720 260129978 915260971 483223073 130315357 968526025 121643810 186955524 973905478 465529888 216538275 636329202 307657098 199172435 779053692 232266765 600589111 524265474 302769070 313217119 118202399 837878634 951767730 218425034 206429194 45600580 150815867 944859723 904976628 19494313 342840724 743415332 372160922 723727193 844143721 500057110 249516735 368379657 102412654 332105187 224194224 918975949 58165518 29276206 823333441 64898550 67050786 963662477 138340379 153909730 227104007 384493778 34709958 947911412 88908054 519040153 838881863 747794093 728943319 562513307 279280978 651356722 219332698 733701689 802073486 332278497 914012768 698562833 796331898 91766123 161375450 79316154 622331667 125659499 878616231 833679576 243707016 280718709 288801861 456575912 593431590 809335926 260536396 115070723 560902594 371785400 709542722 366298231 457856797 291473222 72698109 803869198 412222563 776757348 622919195 103929962 614565243 918590153 139391045 569154541 493508254 666650906 5120392 136288869 777346070 233756142 166977612 712762099 890324611 104639868 352290422 513648591 260805319 586947674 110557999 156317146 198648364 773192262 480319731 127688146 6675345 301056703 715056226 389769443 55912740 130233856 532394695 292159633 560353709 144305994 692332217 409726873 764854724 386473019 454643255 797871982 46194742 197148132 518239500 703693746 906381378 217307520 389767160 430442525 726256225 634160479 435436791 137941240 85378086 453409149 574527467 370730850 160115069 543055944 191180421 387391405 398888038 103230294 495823333 137980962 635608076 136718439 61134715 936671679 592335345 340378449 373823544 612025046 4440979 450845581 707536980 201366771 988961141 486664806 652457834 608012676 819673483 396289440 999053077 475662337 157434500 54054274 640294134 340182830 796292703 526920810 754065855 716215436 244719593 116778918 110574852 942160231 716170891 335557284 263074711 440099550 685607655 865294323 569868003 195145944 692956161 53901782 276182357 659197833 736257501 991106793 287642135 238837375 707564735 259255276 914479403 5644283 614026874 244860579 160779114 699841628 52226764 177097692 367445366 39472221 87276839 367834610 354028849 150294109 418392169 804947160 144451471 645888965 484431710 62832396 377750397 938701175 370500016 750078993 525401738 72867701 533079669 712183269 257192825 605853875 857722017 757681167 246407747 185598232 167064817 17059025 81182206 506877080 805438697 77438996 620658873 92221643 207955428 131824933 530467043 572343629 384824214 877671886 706941900 112481833 193480232 444087262 455381459 871724967 503992484 558711786 614002715 705558776 356363952 215735423 911592222 790374865 101101603 69469857 98171267 120492223 244964299 838646956 795346130 528025116 921550646 29350189 580898041 947888235 157534385 52026574 161420814 579606670 54555345 329626501 196676177 686853020 405357154 846327427 731968063 927767709 101022487 81972659 32409135 199629083 31209084 673039335 317150847 352555870 132705129 56330347 301099565 441849969 330887853 47708141 56393971 386053995 206413797 673900641 146272347 753175201 194443203 121927664 563617821 492828194 939534248 868194277 193552675 213875316 221980627 702813382 349628328 74776518 43992312 891660663 793675131 345495900 14371468 72616316 4406562 595024371 475165347 402786133 250109991 311293324 79292065 416384214 257996778 373113554 121646247 428475045 521776615 27952893 526944807 84065999 348664335 820213532 998284124 305463266 221373039 294168203 135642526 385371432 836998346 264009674 687086014 970424643 875774404 585630142 964199246 357525181 436393786 780623696 754530378 826517769 875283505 255562616 867314894 469255864 381253169 251883251 964376628 55475052 855153980 605652374 375055862 118841854 371057211 150234929 149390410 684866968 752108985 385482177 275329359 125193739 339222395 294628466 128216527 311507525 25907873 176732835 488336357 604665448 115019967 62193369 805260884 169661869 938816699 919332418 885516625 854181102 132573867 237877219 444595666 588117682 998799023 449803791 870414120 788051275 840727069 911872135 307527566 839690599 641419775 35599315 317499957 107513390 479070373 101486122 808621955 448279192 699796543 743304318 787041052 419561557 343483695 622199898 619922572 966184197 975014769 89952470 486936499 617316640 708548640 114979477 183271507 185460554 653779116 233907467 726980668 96776749 612940598 145936518 851009622 197308824 545521088 52859768 720164066 657320354 39864988 904652245 370643088 530370171 47724779 303435422 67867983 564919236 283669526 248481268 778185259 147108155 702366301 47853150 588025633 705783036 890074803 224302173 444208506 374576814 254899355 310509720 558911020 110784107 445920586 877840072 158270248 620501050 932967085 12125466 59383113 923881491 662885505 25858547 257119006 34280399 567246441 318861403 6253592 580759629 846844171 647904416 504767466 396766535 471206326 402617111 368974309 591086403 658527099 935410624 790059531 16140180 505599449 767185941 232381432 801914006 24963491 277244999 894403064 306568316 128131238 816287817 281534983 551845632 903694583 44250772 751159354 602012593 469611038 619055135 376946275 166979983 830091791 829750314 598671059 857716210 457652878 855074798 317002937 16169332 433561601 102661733 893157089 112890252 30681306 134319074 289642425 210986158 687681009 187180126 743480174 445035417 516511120 49030002 486508526 862753988 301316847 454352394 174466446 187376671 126835891 711442034 523129806 152614872 52620427 449593856 20243295 65535348 150847228 120916201 774696669 564958455 709301602 77255362 788724717 141307484 531040717 566271535 730933046 807991186 538375575 891143497 44846852 71061357 60190991 193143118 403484780 351779834 805765411 239467417 740325673 671045157 477057430 300314306 682582697 643667056 922869353 257568340 129858341 661530010 742645490 15294062 667037094 471265422 267036450 968388998 443184791 913081749 973413286 14316129 143119967 396429601 847804057 525107264 159500416 90309037 292670310 976988101 950041213 492682196 934030984 675637168 145625202 81802111 401756855 363233306 667851875 675855716 567628724 722584302 570262037 507674915 297199824 225088586 929499438 29578142 22673804 637883562 359923127 98650867 6019962 146718805 119066582 667433121 102465438 453034394 483751562 176147758 137745127 255904760 522123283 920139864 230991346 401238984 294010735 128354726 48757813 34961510 397600473 699506574 335125872 984059240 104360147 88906349 818499903 638191410 807339518 481037222 1000 437437396 970245775 370478483 222571835 610084358 848661311 475248667 120734470 710454712 133990818 95122307 269361952 801680362 182463804 258010968 517922862 20988617 150508158 40513683 12622987 633771177 938604716 15445421 936832108 30677323 197484269 77937020 86630020 952679326 447659493 799398524 997716960 743374204 960879454 763991980 109524162 555889118 268143800 59408951 743402449 534168172 632319572 884698061 973745087 399256661 140109965 103720425 777046784 102016261 45761067 423615730 393512096 977188438 836825405 553887269 33028424 283680410 411943234 897167243 942468831 702367831 620380509 475331690 315967726 641478927 819304095 98209256 71175544 24826506 830207928 658897553 515919778 69040799 124810333 641988504 297922389 71224072 186215808 825587941 105294805 978600701 414834970 214691923 38878336 762278875 402410580 730452810 415222883 962866073 939945824 84996753 300377278 830155256 781782505 514986285 442552816 516458789 131196006 143995846 612866087 948423676 716537491 955175613 453756527 951400936 84244135 202161499 783261545 470084366 620585162 412925516 642843726 90549472 875897606 981554400 800306992 512473714 625675384 462894726 753569957 467148932 336237123 569487681 733980220 894287713 149065329 30810376 91345354 842164477 37202383 529603656 644072519 702747121 100260042 579922952 325062797 909639328 336675807 536839102 33423972 459542907 117633322 493954141 832671078 339137666 391263481 196046633 558853682 349433760 620494431 786141594 418630409 596232074 376061496 888202411 735896306 684052419 6687178 752789820 478023112 871278594 265745991 78579449 491902668 378856842 861968497 706911281 495628438 340084740 117489146 388527108 199664978 99481558 267970887 285440061 163879620 668810730 174329655 142878468 893845509 114955361 962100101 894555135 265585982 529341532 359445904 926293202 48489514 319816954 402462743 442223971 23533356 902142578 714762390 145909015 865282741 770508531 920219835 612596929 122558080 43392294 120063721 791011363 258179901 58899431 915354376 683228542 547821451 146623390 826806447 69249627 917530308 120568095 133341296 965051006 466963636 46956171 309555783 172069358 405040605 899501657 409784285 255291974 621023359 686864212 419208364 694012867 223931783 816961177 346834595 533264734 67367620 667148444 500794014 407579735 61876388 816974072 29590464 283184870 671261168 188056675 28162279 860199941 929921241 47277646 901526208 197150891 554742132 180986474 309841454 525426662 762622005 144971100 844399642 886962491 837996979 244923177 277231721 676122846 11888698 596650073 46906710 493960118 211127506 128692980 623653202 604962389 325160653 888270382 194736687 543938174 28596011 856734969 394469313 351459819 840403792 10583375 989974404 362571132 442520955 329894056 670014966 671121270 315741810 547847618 883747243 57743859 71224211 382423853 759814225 793750886 40037130 827662837 765420988 336566971 15345154 164521903 215433053 194682054 525250577 790782608 7243136 237179322 573808810 348784979 164613994 344529454 131437314 44894853 51745628 608830510 971724298 936635574 535452248 240195555 969907037 904883907 54088692 164669266 851879796 156485034 699448392 139260739 710629816 969259497 531942589 878587171 559213835 818292930 60513928 523116598 52897737 516579767 432625964 972830975 638836450 910516965 697231483 507378934 199402423 353464358 318781658 533525917 254112237 405715900 749939677 614361722 88691022 129476081 715339709 350404384 596814163 104475443 785138988 54317072 70818849 5489917 480884927 457630034 228500743 43398843 90757277 491886311 569883475 623651168 105636943 794061098 77934721 619872873 99555572 933616777 233708765 155308460 155389037 112247284 939714078 970265366 914130208 267987860 54123221 15827580 18631605 33467755 829719834 95193608 543452180 243127226 761566537 270260042 119658441 381860402 56015996 22831981 331056752 812173266 943783621 484394295 965425509 609340922 995228490 225954935 116363025 940248281 3098573 18691655 460306616 87105407 281995871 270216712 754171771 586718403 165951680 869713547 596757619 583229701 386564147 849420011 544891334 613430144 486752578 649168890 944247103 214462398 954550910 36149218 864431196 710074590 830842884 349667301 242466528 752301242 330388413 655126015 464969094 707568846 349407964 711540597 102659124 193585577 897709331 651275275 239607048 15059977 107950221 432760136 842470028 56045130 198415287 397215778 375394140 425252259 443435042 235377042 506278574 255653403 155413188 424640547 280677927 856026963 740077397 607196759 587971870 927323009 79435416 503988687 16143065 566793236 471048346 570194501 852595583 833714707 834854661 743456570 289260870 866507950 540065831 331761045 262946344 417493503 812115031 243695541 512318749 971486192 625551079 122482843 128566259 185147737 62624439 528868608 635413759 481113 670110783 471660961 618687220 643055240 652959487 816434392 382058996 125916225 123769079 423301289 44097181 50048032 824012865 926333086 427197592 396514634 152982272 419783072 43849158 760008549 127093546 265743837 982063420 974087036 76583418 540858436 951082983 401698026 704446021 48483948 942081807 870674827 986535958 93954898 141122779 431421017 455319712 465118475 175974818 761006563 13121233 351547876 115047386 1862327 421798985 947264259 273642402 52537844 555430396 6823340 956377087 641728221 638634789 39529344 721261767 783430478 692356774 297734222 748403842 27684307 22814459 786621585 877997733 934955356 875158254 676522614 311642789 326640239 120941343 560446516 390426746 929935 349874857 343136744 942870475 287997799 748280064 29057492 492921633 649807866 888194246 131785190 973037769 810905807 994207947 896317654 697410111 586398179 982546225 50692298 128124853 323019710 68014337 930417273 267009110 218380851 746105418 452254196 459056460 393624914 568156280 954674250 941619608 707821575 80415503 162313444 418533456 848247868 277966132 27720280 749624517 884619855 158938781 668971705 730441327 711043902 105931323 224491670 108333257 716736264 89833744 938221979 253640424 261226865 780402270 843765519 15391084 672564762 308013066 63650845 381619900 723496878 890465617 74312557 255432884 982710624 365576822 792120256 269588716 758041074 580325540 770452852 961804206 92172911 267498828 26822779 658217108 591942722 778740827 918615862 142896763 175448426 118703844 20445716 813624430 289304475 273099838 164731312 124712769 489733781 194847777 40931828 10042606 32818268 258077814 270477118 954871563 857653284 872618237 108177007 62888738 44988783 361127110 499597335 82161962 970636880 81827880 57921383 669898980 260661383 69294990 667468920 101939885 83031036 966129362 712670539 304953445 959722825 354248158 91332795 308079798 118179240 23643888 335059231 83676241 916332700 499779699 914730083 626133774 634844195 25944493 259710939 527266259 754816873 675764812 301458056 360062012 605378464 226383327 588999594 222672190 988693966 23852971 107390270 994161083 195608773 480678884 827709347 20070178 634477845 405226270 311579507 189491957 66771206 767297822 653097845 81600966 240792006 858045399 779050441 218532087 790011061 957794609 312972492 145655475 208679241 267967586 464631108 718140045 995611942 277184887 279882242 972991129 347415963 764807990 827232699 748546099 883796059 857131563 889258586 351096550 942067624 621893709 871462609 242936292 561717949 19905574 99126030 154523159 146389442 801332945 45518930 551407528 752675412 129016166 294803745 786800939 501536608 916113115 355235520 284333626 573121564 296651934 524607 742775266 969885716 271377957 569930395 825107615 763854051 16901707 877672343 849302233 737869250 550879692 772096126 418969386 968369675 149981044 107470632 285512025 661272297 824279286 712334990 522673838 52212256 321815289 38415234 780535027 574685724 512718567 868770230 2113653 769377587 390977391 953307727 969696880 956371872 750501780 556852367 541874167 116671914 286784881 904298277 905044989 72806373 654279592 52880125 502074152 119235072 498056524 981749885 898279802 505836838 401744060 338130086 293904412 843111959 277303864 503598173 588587400 558548847 709191131 700496556 487075128 491422367 851207567 842694375 949582820 766115918 422784003 436246000 993167786 858724431 90896041 151408748 626920894 488699196 506739938 984594045 518909100 886497799 512919974 114821736 648330529 222976332 598711814 465553892 25892086 804622206 870064102 203072668 143652334 445466272 438129308 156822211 452969427 267655849 773802550 371756415 270647682 411998790 141916745 60493065 7097168 163802645 400155050 965426001 803564594 936878615 265944780 10503804 163055291 508830689 73979063 920834174 847668661 361917146 341654766 497531919 489995865 833533844 112470311 584382301 919243171 706689877 469276697 599726729 195963192 517992648 830763184 31257690 91992282 301206405 329199453 624640785 605300756 487323768 767057966 781212327 372880522 330046169 948030683 900941883 451977556 773326153 884544259 961862301 72858405 174882349 714242096 664865413 537869971 65790372 161566968 613946179 340026067 674826029 601061884 70170026 58359351 556930804 372438849 586252362 75492261 413791849 188375200 723159811 488580613 618890638 315484864 657994000 665901041 107545087 463845618 364254617 35149430 129244008 391886836 690657105 494969117 660624264 198182625 690023612 460268035 18379677 984292005 485775760 966722942 68430930 689485265 287286762 992409677 283064839 258786948 139898945 444778355 628256370 458593045 575063852 362367226 212277230 821096401 139829300 662926828 164290671 392253305 133193435 816065643 372861175 309527788 115197351 45026021 194100049 173670629 502870846 96495068 389038006 41668436 56490474 19589096 605922343 90585444 177489540 81694548 15405812 770591924 366908634 800809006 972968368 637935943 982241442 157240143 310236391 780529530 289424325 814464536 170372961 979521331 1000 941864211 15466925 860448702 953415769 844037581 806202151 366690648 618083927 86012769 895913655 133509166 554850310 759967739 65296815 549674415 623587601 74392230 15486320 201398757 961173278 172189397 653021932 514162969 157972211 26520633 778881787 36415529 878028423 188743012 862370381 570460068 490111282 61195538 7459993 586365976 617597041 285674193 974648982 133353045 116572491 587567431 855788534 103274244 804073485 728327510 842654057 155467485 36913410 178380827 384923050 938791733 207966450 17612296 797827676 245837070 221160919 51702703 163296117 557750780 680275246 93890118 747342384 384043702 855279736 472891648 46472242 154518664 466881355 945949659 150828512 293005415 7493204 27041420 14161483 56731103 291939266 137432923 231317427 848259950 468472547 213528614 639591936 901970714 907023004 918442653 205132721 969152562 257706582 445729125 630920761 640726238 433164097 633550849 716271270 387690618 520426983 717286410 646388546 431584396 94921379 21113519 813359358 220007694 76171904 582407653 232294966 379812067 898715551 800668449 575689009 969061018 749770954 363043170 176693085 49305414 437190796 35114601 809879228 880647411 486538630 99309482 117413598 697938064 293258579 181062752 202231575 952850225 385481334 259083545 533135839 76085728 162002301 488532958 140840034 203965662 264196242 180302102 313195322 231185949 434951314 963998735 630151799 810346755 628305938 292240001 690421908 339234231 668130983 759052672 248191638 54120954 702044126 200600340 901832415 826124904 678409970 447070143 643730345 266965134 611248296 611636227 6471628 584290423 295387909 90555883 704264182 202795221 792387820 329419125 465551206 386696562 676838413 664899016 467496717 285786668 41483859 656530410 14366586 459329381 289156784 593230942 250794264 724211851 1484394 231927307 410159686 297704077 203552614 908434269 534654656 761007749 244838572 360670988 802696185 747550157 28986369 50769906 136103429 567421793 990455361 697794969 954250975 603377911 758852885 702492024 197586769 612647149 600247790 287142265 3527954 185503489 465047315 647526718 392901869 19093199 403424803 994455346 892327043 638495278 131360199 921992899 726797839 563420982 464857889 614725626 887982766 40130547 284909425 393746976 991485151 429510581 687904986 625868936 850820764 947699647 281167042 758678703 45331892 158318131 40794235 485445443 883913398 864656470 380488478 377677300 455534755 815544286 13068675 466793753 29227763 966053835 666286380 52681788 360383635 90600617 101723756 604342749 797424204 281723314 89701751 280919311 122205531 263101740 135318180 176876920 811286276 103946831 397877824 108289908 661352775 559677049 838262335 750538383 697116552 868911481 599636290 230832695 5231229 370884224 115498456 368488777 19519911 338460449 699269052 495088003 55160835 366028730 966830284 701785395 603894773 186384939 44319812 47626155 690131190 546288712 231484208 319140906 661970676 584084913 461065959 454273752 179192996 348231186 557621691 675516412 392500782 867591114 372920772 633605370 25551855 607465636 209301334 922960945 670914069 992988874 946998797 533757768 640637405 335155405 567617874 481528510 644841714 105929715 963959366 532515126 870118382 547592605 642299458 931891329 712165734 592183390 269780663 508049143 233736676 962070624 851099445 953313375 959874172 66923691 411035888 978687955 165092203 76426903 903106180 742225602 401514325 504575922 575783836 713896649 271927507 231734115 822158819 352542778 687397412 414019797 607151980 474135007 250688092 940087729 240341216 317735021 28677824 526766953 138321444 332440960 971088443 204485400 307938613 50768882 59975353 7957083 479307580 5867992 951289452 85879339 339903156 449746744 768864024 997577819 927928210 427167436 668480028 821182823 541300791 569750666 673291510 6118601 699830669 846115390 850741572 738297057 985720176 545416010 435726619 541225659 153938028 36764803 782165682 394470849 934842332 288674558 960334268 543953673 765755726 914700719 88427230 95530160 130049596 329514361 535840213 423411962 452919208 36154411 847852218 522365146 19517667 124723960 729050781 1877998 593417427 603470771 355642083 632786887 766156110 262543327 69286058 727529045 290468390 941472066 942682034 641161895 709029978 818177468 487212985 169509358 862118746 62952175 839680734 785405141 73565792 353825867 31786135 528937996 478845920 332959232 135287607 85151964 915782593 823085696 782589846 674619115 401733504 781031436 834150424 446446037 518693911 259609316 472133652 755065093 400304750 584248352 617840842 176303339 326720552 799419699 490080299 794785910 461204485 435359912 877914544 325592735 72829308 633803397 131716278 121542077 657585935 748725337 477044192 741601923 860140848 990172160 195989356 475957945 717843954 764964995 149966989 36442711 792481492 88836323 124763856 497521730 40770814 694322782 952307233 433129209 532307971 529055973 336749438 202564535 826235750 780642347 790399475 690883237 528228311 948094689 116968159 823336744 51403065 114937467 28018624 131087475 149089135 164242952 85628929 350641950 29022388 476410813 424615826 938960475 8140322 478995924 427773299 812251178 71173397 163490682 151088028 351607489 544748233 822139567 9774530 64354342 218256877 932340637 377253471 208551493 262918927 554242778 147523566 851331008 24805821 695685981 548704472 867083859 83700059 52605760 841517374 175425614 292573270 8475203 678559916 827468091 62924665 71458748 628743799 389386683 120123284 78301909 43698618 544375252 549617394 962819773 102474758 465589524 254599292 994865408 539776846 967369307 243247489 917525068 594000912 313336559 475850700 115228835 560134890 821145049 465853426 9498792 341351449 674547600 399973400 245478839 185367235 303024560 321595659 654162968 137734608 387985818 233223726 884942103 763832857 730762861 799274521 300865689 107197322 274046940 673909786 986013419 764235051 734872503 816245448 342307475 518125355 266290028 876921296 410610789 640061785 929211412 400867934 565371554 455246065 884226345 655565143 646733207 743399411 38053400 468747811 317147078 190227266 716869975 639165176 489674389 767301570 681783823 808681791 94753823 434163067 364648492 30297991 686539773 801557715 694193333 630600570 683539340 449604195 70288790 887982525 431963850 679410137 830628259 835867241 60174322 453283820 181571984 61580948 729071029 423824448 700960423 94010064 904971509 358656104 113645043 126794827 327593358 72002545 178892254 794814682 32539155 139458044 415621153 879589582 10835035 896763595 979798763 95669265 472553520 172232948 754939216 665115698 29518891 372852014 42102339 913821445 829964046 870065088 746805298 325913743 825718854 822014597 511417230 768279555 21058114 780344012 659087366 847477702 125302038 261241811 938059736 490640834 615082556 346959594 268499459 400830282 555198869 652110700 318000318 418722093 621439878 197836949 566007428 156135318 820716030 449755992 1356663 378579769 575879437 289777946 460190555 687714691 451288430 124793620 758014998 334751800 933379376 978811962 137234954 529061440 935726913 198488486 850009776 879070511 95945915 45238300 236492921 314938951 488425878 737992552 793835586 796222795 861496153 84943335 913139258 385771685 743894036 101490560 505711828 28734834 337650411 807872392 502473864 68621315 667323688 787563333 337602481 481798452 704433025 219288144 39733581 526697299 619971951 691956195 863242204 624066646 990689939 803224742 228631782 379328140 77253619 173305124 4688027 381922789 274162664 396499874 893201435 914364213 147131046 915217269 939977107 48842660 556923062 646658495 212808861 270957411 625256869 547777055 53208360 918406657 74515199 638563432 487058522 57474589 214450456 644856758 44312602 161641484 323968107 377746058 137803076 98088773 598111669 107146921 666960595 268078727 54209019 707731328 172899687 313353301 644682029 776295841 36691915 491763699 100621352 622371805 958594262 40712363 436333572 631959526 910406697 259288528 960630876 630909337 552302881 141723903 365544991 596154896 554332633 982051342 957503695 572452897 825405537 139222448 990149764 48092873 178928227 990624413 624121377 297312945 420623513 950370871 179856518 160911752 756896066 10725068 479136990 94759401 507218104 334506205 318822400 148450113 364792491 906068954 767679364 467216491 338335001 215201195 420749557 414325657 362413150 541696447 247688096 663933308 721914338 40099410 39030083 148696008 663105714 36724955 185513491 18396035 517646652 948802753 396224931 470523054 689208905 753333753 242157438 293065487 861924768 262590020 72301559 803371462 518586520 521897859 713082235 33778164 541167316 84700367 273576827 121094639 52522104 143422969 531112875 962170427 569982206 772231319 973819422 900899712 299886542 155377734 788767095 281481823 839663385 487712115 277623153 429084812 306547034 605963889 689286083 334644128 925397148 13787280 703608910 723962551 952370166 852823205 586110050 639540503 859730076 373452331 427739327 742721678 980388787 584817236 374279851 963986584 644291200 748931895 420054095 438878519 74791862 92763283 379441452 207331108 949648089 972270850 269218901 815397994 752135295 994931342 277806289 156209239 670307069 723202666 25453764 74633879 845137376 702340822 913246511 786320896 345961694 97254753 558984466 379772171 340283461 420121612 76303979 332098813 587614454 11640628 357453849 707687947 38078438 827994935 212236739 543100414 816524146 228357019 40683310 65632056 891109421 58374776 918784456 553693227 102771977 449063997 189718812 224388936 462741310 892938748 535649464 215940572 60562841 159555091 930721003 922521056 984071039 137580049 658742274 613299731 325306601 142775751 607961897 834271166 442206988 527227567 377173795 693310392 139860703 933171199 691988514 828747116 62362383 142148748 731030494 942084373 863075877 163654774 645023615 130139537 45415160 589471402 1000 602817 400306556 683306902 121733430 420004778 203854114 153065041 195777128 316332144 185285015 921134931 480054925 862932846 425893096 223328753 523315708 345014854 539512753 176878212 338029707 104454181 397250452 466026066 357288681 874344216 904864984 17873534 607829302 987437271 695701961 616904911 595860219 831564989 909504865 59480958 696843204 61362908 771655896 336034762 806311446 69966946 523212626 866381898 69524286 794079405 74498804 160804659 393114842 885642962 927460600 276469270 316191039 228674253 38618581 433670844 432180243 148400744 658700981 278902773 91207759 469553002 630133025 377744261 497652298 20622625 124857971 977415032 854347453 350364266 466944516 848144480 362383853 29212906 955440497 35073785 411262228 43675956 128384003 313745346 71541121 997055778 167312039 351059074 913272744 252527984 907294967 291770367 751207951 177586109 786841791 127412719 431251539 759582406 664997091 6264824 263608800 760358503 993190007 249378014 981528781 697234352 470314920 577554013 754667800 370051466 274473814 898138360 303468928 860191696 296203814 117523414 532428387 541478616 148294596 245217494 652584407 109624109 942917880 115870641 161866455 761141037 427895644 843228395 427896337 875582775 343983522 300538178 148939663 826044746 101930948 690464954 514243497 194533037 449817819 882032514 671441775 544425477 328147037 151168865 827044204 423177785 417063604 117172310 222207036 790595929 537515981 583575101 564030885 648122089 9941697 376952714 460457072 434159423 221310316 8221718 27212094 757544398 420289053 322186650 182397430 225569381 454963165 360338452 467217648 111753637 88735704 994179102 154554082 902783952 696350351 452453039 823101049 746080523 761021988 645916156 57650287 991199708 278282828 747427331 49997337 187312394 641414534 509572982 508286089 92208535 618364872 598968188 591095768 761650167 674381793 527404103 75834854 778227345 634944031 925611316 619978084 211009451 608942764 46884407 559777886 783713735 644131791 585369178 27796491 202495185 645273822 518852917 214181990 950456514 35107443 776749680 786782487 273296778 232965144 562708692 877813390 470401588 628405094 167384555 41158526 750310126 91277184 997613437 152782135 513383494 637778019 49183560 454360347 331945204 147876939 400199154 141341025 534503044 359775863 73549186 217174686 507597381 491605473 731638506 531778310 119560120 121701741 773060993 125811258 134566109 898756173 380495303 105399299 871978299 439536770 151046270 983198794 420519113 941981705 462222273 884440176 599105161 98054750 604780801 382873089 344212233 120674929 504779713 706842288 84194965 324141284 832694712 433212241 508310863 593419056 400189970 135870558 468458098 788352281 117107787 54908675 32266374 315517030 827526537 46067816 888035143 269584735 481430094 671602261 664752840 69385535 702225690 31748934 913865774 207432390 898513810 150670956 164206838 586797713 804083149 587151149 870579177 197887867 90506894 332173811 134769071 760997704 584421225 57253104 495297449 640174787 559701260 304160890 820787830 238557066 752327076 691547188 929388897 773794731 137579446 880454362 28887342 998318085 935920857 23808163 246876601 849123283 664309472 76472571 413259514 164382734 681360874 906285405 174810792 502009961 394301382 549685505 106614906 315342630 773468471 268796652 219352578 99109097 746932613 348288617 466004763 636890422 353241542 65295746 917807765 370117380 596738679 552055791 43843270 726660830 244473351 48551589 10010406 894840160 573719910 109388649 392859355 522327931 571903055 298458612 892894775 101506970 104254748 727881622 909636218 771073718 96345506 883734246 1768101 717702661 666161723 282933591 890937611 993663544 30322796 357039367 506587320 143296427 192656636 266655445 516866388 30110704 832420073 455839613 97929203 713867720 905562678 276220782 123728748 612314810 134061962 87304017 767387204 25947762 389035136 138351214 257811083 255779228 666425684 66291688 151112783 600772758 537404016 573050915 964787256 198276247 651122700 831805208 710826655 715326440 987163464 936931725 186311319 627038479 542597743 274449317 108530234 926563217 691183919 983844819 948513625 854522847 106765178 343834850 418205013 336414833 503006215 547879924 103042295 810887947 63735941 167375747 846402784 176264677 450047369 295421181 345601093 111567550 424934562 722812727 40969062 532244109 677066706 273326087 568830851 1517155 779144420 376426427 414014512 661408630 44850626 881802542 982162914 225794892 37258824 506997239 430250180 200729062 960345995 249978177 5650511 76663800 700721028 92997900 50345723 793302231 68177229 523396801 128697752 84632771 437890869 341889643 18295728 760766291 29371679 202430205 234059097 595600092 920980275 512827617 281999475 804197895 296849553 602222534 472677205 37193973 881607976 965830901 53966183 717313143 593673541 746506075 188554145 970232424 115697922 725349543 136798746 935906181 751262836 355525454 578483954 296172208 391996911 888606601 749948806 523938280 883515161 909765304 101072034 672198154 475912914 316051183 128668540 152413452 274881469 175422219 620792038 538430828 542979021 437579700 385598730 633926631 626834166 2159588 832295587 617220340 374544017 321876138 824957858 890028495 641102188 597284687 178523770 123189236 537168349 321927605 611215337 156893260 703858691 547621262 691579456 610768583 731814851 195854097 96687148 755187461 938560409 793782517 490891615 96927692 567102933 508720205 939155618 395312911 297972433 653056229 317783520 160699475 544540599 121979499 476819753 448866285 68679457 11326884 533677102 553347467 978103488 7233719 84896160 621015275 117675099 942849452 734192319 721956509 490609326 502817212 97810262 635934232 132366284 914651398 627453548 995047091 974255489 159408103 505215492 96863200 991306577 396216326 878022227 380359334 630222446 80827694 607449059 114304013 856671803 60538182 152768656 734826658 495721240 131834548 479739318 451986818 56798646 129391580 6774509 769517323 634687266 623290457 212991982 234619312 464729226 158500695 57502984 610668099 257938813 2879361 440565014 36483117 892692921 6263166 611567589 423095603 745373629 761924780 719352975 704223722 756700266 504391199 598415831 779642201 8109868 768946986 259059794 15966526 175262837 715716190 457876059 114883726 690446260 674945347 298369314 37739836 144382760 745298028 791811947 860039472 657183827 877353286 63676777 204960824 48645663 883326339 290034050 597396351 31604492 865034841 348329011 514613774 309064198 941909466 709219959 100391981 842999073 131296726 110834975 227112311 753634002 347910587 551544104 623967546 38807782 845580484 724720370 640838196 515404251 698264416 510206189 540234576 55467323 596739738 883800540 388091609 575474750 371166152 114862207 819441016 258101140 294557322 626400978 286061604 466589133 227330328 854360326 899594352 653023275 367656046 47482995 356524173 781860534 392930534 916511051 358292271 686572063 39321086 220056453 81102389 407026218 438381142 509161129 981942713 936490332 795472601 468004307 226397709 611256951 935445609 91589533 466924633 810989184 447276642 130703342 192102943 512304493 499544457 49334298 667954634 180558384 663505232 331238878 64267731 419810244 659823056 66298126 437698110 7644968 288058242 552630432 946704445 811739737 923013395 42519997 137467848 781023708 177534693 77538236 886597007 867814274 984427670 79710180 287310489 340077009 173327758 462632290 640626947 267115031 89687411 469193258 431487616 553783462 61169641 286984600 683121431 713946869 834344714 996982026 454526838 65346680 941559966 823733311 391849510 822686916 559386384 770996926 63759246 513473126 140502319 772048099 377450476 967021771 678881836 964100565 25551996 368702065 81798168 557491983 722790486 4449121 716357738 337963538 525793131 637542422 392567821 950267045 508057930 727912888 582102190 515987134 83782804 613547405 344563274 108032015 487048826 390534837 137137088 145421625 970134339 357089451 611637422 830788762 929622401 407885972 171940092 427714781 888768279 115821167 681515548 208994086 959111391 724549698 159984441 84897299 676556240 864281542 344002408 543834073 942314554 923806748 238940777 621471814 630359403 572325661 862830385 96206692 554612654 419451677 774175414 299747675 803731259 563607941 667203609 953985291 489739573 959493090 335604850 85231471 939813536 3142223 208129679 699006399 521547610 258721903 278594775 145992330 955839872 99280085 108604120 491620155 120838333 687024287 747662816 258911161 723310172 328502219 95269749 231808735 47394390 396935 689272607 836026627 329909854 47937339 378409081 7829575 408979947 137709422 335107503 123686454 307588295 3689479 953392630 187094392 415656175 714652484 857321106 855835278 163794106 497526924 88016876 513638517 682414731 927486799 718441479 5259617 832858886 19507616 645886807 440509229 851807661 431930360 465635480 775015215 124507277 493148395 835622563 127894248 726405627 537973258 443607442 531100127 667932169 142143381 741993389 14952507 633548379 910888968 94715354 980296998 539760647 127336233 180167573 808858096 719137734 112720508 541225130 141130176 56220149 886319681 15130291 559592962 361110176 187286663 205581632 619976674 956573465 364894247 680352686 980710728 359120301 254353547 247060557 229642178 409570828 405754995 445675101 951367002 635207862 231656005 988949169 744035476 863162065 174748488 572447135 521632815 6154070 779027305 161223973 751093457 741143750 216296953 526894831 204646727 783980205 530581239 476997774 56651168 677034376 510661510 235821968 462660174 416729087 825952989 284192396 681898740 718739706 823686583 39204717 504281940 537883636 903155994 563843537 221531415 809896696 737743243 586633701 127451488 874565560 554793725 871891778 629341899 514952052 197619282 79540109 929595415 303400733 550484041 260676824 711429329 43138942 74435032 910429609 1000 241783123 326253264 763626092 357771767 633016889 432751097 820227189 735521138 481254492 237278296 497605659 118731320 940591171 445354964 935200130 303603873 39880387 914949286 851810383 864743422 787885408 294678648 415680122 735196042 35751025 980501310 120518922 967968383 521176639 318090384 81071515 638318035 124346574 235153233 315425454 30343963 210650311 28505514 745698754 260292161 849182159 446233609 989238100 282815876 125310264 122433266 167910197 649429368 819879642 896250696 569693514 194484229 10554173 403807105 485126595 837398174 475458957 204748985 19457441 633534270 703194693 351836438 71293891 16633228 544376242 697419589 731559412 268420481 146427685 384901254 900114296 648799901 703977063 360337597 606962955 949430649 407847887 200869320 164150184 637721538 395443156 42213093 36216920 761230531 235075447 661262810 322867315 29883441 468531373 382747676 587025878 487023088 87009276 709109 977880129 617278692 989334816 269230669 329613260 747728530 687037663 783992799 707311380 188510656 1073877 866367258 656295880 797298782 919899169 458800494 770313483 23267702 468338362 775079228 902981918 745616996 122130700 396900447 198588401 887286417 753048317 831344451 399915680 954121632 526765525 471049022 773417890 473277741 267671770 572803846 55414864 67970188 561662694 699526442 576413113 132711533 883437932 418464183 909877352 330946911 410380353 117667075 163676963 530464501 559699468 304257004 565243612 815607561 475940374 392271619 902017456 434819823 293343491 592698642 878133367 164641726 139404686 36370650 871285045 148987550 567721137 202183841 726613519 211094610 874290600 11395840 869456004 554689439 206689424 149280248 854770889 493292621 565837614 8869175 792152954 232319200 301877797 961933045 70545571 48941305 196572981 886367038 408391652 661304284 220038159 632581385 8404055 466052325 705421177 66658891 32088755 838172535 927156360 40362543 741214798 119885874 856285506 713397476 198372142 71860883 291056310 507182883 453785372 442103446 917696102 884303956 959385849 557798808 53588968 20034787 219305882 315141126 203270558 670281317 414218289 877163888 847416331 7556450 44416640 653844986 527224224 449831476 437294460 845274629 682846594 968037092 90530003 97143279 732259770 133082304 834354893 81891923 108318409 225389121 437397001 34035983 502110315 946290653 410700588 47361871 394429121 417170030 636454614 321532823 425719993 2507635 50400720 37296775 844542728 761699699 597236981 925851446 126481089 991169797 516809348 84916529 753602148 263933361 517381717 628589827 414306046 409402022 58041305 774619151 796793967 177885048 577164847 171521153 173367384 859424757 221857939 487346284 135121187 944562711 439751612 319297672 381486081 522074066 76767538 97023307 653127569 185143309 770794629 225941165 525128428 23624397 376287715 226737002 437830869 126063632 980140580 329664016 47043756 85853859 821965813 895337484 465964784 282717535 804814800 145593342 968305667 95956717 680185198 94719797 403638880 126646321 548920712 934243973 378598970 797547392 228137911 628310023 108723080 586139523 383149981 70543861 86007610 75737110 534145410 48801535 277915044 960624026 110744921 441374399 316363799 873369521 32191434 178751577 506448716 42628480 810730277 903669581 334598564 869950484 547617729 926412588 668917363 10748572 520327557 105838002 252282709 442684935 479804071 658148064 513715886 841320717 235948945 25428292 792228490 599736844 424345512 535845313 117589328 30604241 345492440 862031331 766751239 272575880 870709205 98351830 133567677 588292760 775023415 700464442 117254027 382799767 841022872 595208873 792648030 287912081 835693469 983331911 461777482 855561083 993703257 323382731 8043616 163819988 223434741 940648354 534246267 346794697 768685773 613494021 444607858 760768936 278904667 507039235 525199437 197137592 434466003 323982112 988429772 69024024 96429288 949411242 539917885 114758337 35313752 15000573 227074068 122645169 588684229 720412227 21422753 743164084 12428111 172748024 797683877 919003803 996272274 115903481 31729063 896643430 658085169 552214666 336297778 593978220 526154735 615710280 112764072 476711255 110316397 397000262 424734345 299239009 576788647 216959469 140895264 257655429 280650612 66534948 145831543 387307934 914748833 406778351 579411534 420954095 987803844 69471694 795017377 841329885 109536566 454689889 198940062 406937031 888623320 85078463 104019664 239993378 114216424 648912843 605454099 498831661 539391537 949632830 91675290 80039301 42316441 722404890 629889600 677897436 309001779 98874204 701750483 152090964 346004409 643690806 262476952 96789813 173775334 284686935 775582628 966787713 292407388 736932291 594271005 123404352 991987626 859887598 975668393 146850994 585312902 905587831 515223006 656531014 66031408 902284099 574735168 624216677 292519442 907904659 222662601 90409646 442522318 648180910 537347875 359785601 776436348 382454514 451284097 80108783 117316323 327072019 914927350 902526369 861712084 320007531 718762277 175802717 169668495 530779631 455565588 578425555 720195981 884199229 718559676 451811579 902589559 585400345 660000648 740364604 775580953 118701950 51852855 10066569 813258339 850961720 877054549 503868285 977572052 272378744 454237845 209300350 586564732 80300111 221219779 629114361 970664909 601305651 222098901 25080644 378422954 950007519 132851535 520137636 909590724 937316893 387187870 152213615 122901914 878367231 257362246 523887184 382216127 713982410 793645787 852984674 25940004 871944498 797062736 84982306 660053273 261743441 276866037 836965741 919710716 474708850 307713549 475768784 18385930 793813375 202435762 517406480 393656547 47515947 561396422 866744725 622923400 407769568 965390027 426203453 760077696 422801646 369862426 130445764 122930506 121199424 8176004 102952760 374627565 620473508 359249810 459088145 611090146 36101541 859237533 60610100 733901747 16957484 336154870 878546288 860679558 277004026 959446496 407599982 139150720 602307681 712174032 515381226 677519483 952491997 831883738 385591548 558270973 252186750 110562078 322055752 198115386 592861801 880018782 835787984 138309691 227864256 204262976 837667146 12151523 511288471 440686025 692594723 568576539 497131990 834565094 409706937 960761638 270998740 665240823 4978096 333725935 941442515 107040295 12607748 58113294 476746166 576013464 179170480 961839353 129671057 465961181 957086433 574657213 427599423 902590995 486181070 869597257 309532144 937808425 953576470 785700997 202711323 25382868 59739798 144977244 291696845 721588471 713890305 410233479 138347093 436480067 390587691 508251646 971201900 988449037 774683186 760031760 113951331 889887441 79980589 677096694 785789379 999088378 480493164 48768048 817230768 221167145 746588185 947564249 811033957 573855840 823406134 278627816 5870085 493944252 749430535 264683782 859417978 522149281 186371137 150060847 227542770 638052763 527482 54536320 841655213 988353426 841837900 660680842 841867641 382969754 128723466 642937332 929334790 117139462 368177814 114150962 489865719 353375064 423927037 317098555 981944584 450561902 634978567 399836277 908888666 182753133 297761609 207467323 76194399 231549120 738456129 32784852 282741872 15804357 851281000 446312995 98656512 384557114 735195453 259498635 717392989 96092990 921438665 664707018 277024938 562720104 548380074 546758693 784216123 82243850 175265435 440736366 573525964 27119686 423993323 566816748 977580082 477493784 84044290 544643343 342705444 908326582 214028362 652589202 75821676 942070632 618571073 539071338 119138913 820430251 518746721 625586968 901361954 349363008 57247659 319360389 73247991 953123815 238438419 52061004 58646583 816657976 117093017 949851180 513970895 780725293 79473087 970436468 936591196 467711319 5916544 639558907 684539563 940256668 376660321 271857927 67611714 256290180 177382374 307692493 346271350 54134690 87455702 434188957 156361732 377655022 34375078 192763819 351823517 243359715 132735852 659254387 129559987 389485380 237377248 769258873 944829590 898957346 658298520 313611984 161548728 87834633 106197288 390472928 931634397 839011724 181296119 959089865 481005524 382160093 579300852 37279981 896086319 529882414 825927812 591000032 409268024 66892089 357686955 128569902 737893029 217182197 16157470 42047682 251120756 890306693 206042615 932480934 992161979 532902513 248494537 578900118 279387486 835615436 52904984 52165830 785542776 330719999 317748748 356508856 60869887 80303329 267166473 614948731 496995761 154856345 542023801 456026345 543647652 868692833 178369956 609204141 508117645 823756899 813331285 25198657 76640088 866353407 787257661 887621188 7902006 845361867 952779191 334038097 326186772 186755351 660775330 786894175 738371828 442427634 700704741 376704841 299808338 972971840 135360902 793937286 686987469 909312008 523109217 310521057 77628368 16625008 302799287 433892692 188054424 55593487 742848834 170033904 349474767 760740040 20181683 369871666 639371695 950179869 143636478 873791469 252709955 549833228 549378271 198980291 576887021 969476077 172293507 329010988 259191863 842629247 373626164 414472283 607486613 13286169 104566587 980694013 65205579 741320494 549525519 985173626 123160681 146339853 276038885 705388777 956563061 544472731 756168751 814681580 615982081 753959932 920317643 859384371 913237576 615937787 403818786 635982753 163977258 107639427 261568300 199016847 609216027 19129185 30426850 646622094 492765077 95768605 415786347 357406764 58138603 42672780 402794847 135349268 715353730 714249387 116790784 776731353 914119914 929039817 39696818 954546691 454718467 159058908 259326731 214391754 811175798 804961740 737212944 399301697 6268978 440319874 660578150 909718165 861648994 777499811 702648297 602774883 803163430 544915745 204384360 831058601 907872776 712990850 870785570 716965074 668263415 1000 472141719 567172715 193393874 496925902 404370400 154739102 92105701 486411032 573749002 386084942 936302301 487973847 627600731 688495511 516573951 824521838 208367128 643896679 963324210 208054094 657816634 811128923 548485045 201367663 635721108 454788599 79267494 187644728 483087737 203251814 586776445 38109661 486730724 495312891 92319065 781728830 361152328 690745871 758554134 773417479 59354882 251780162 522774874 271762452 751920502 460147701 259802071 808835582 903248910 137769719 83346055 132871333 878664258 821089053 711917790 584762779 399425883 689992736 717826146 10414950 463900152 778097513 225583288 35030713 724639331 269107766 800546408 438303626 420375759 738938014 399946249 298783221 988900825 697260648 881590085 7963262 95413053 49572163 876392233 378995309 887220040 82923367 960219764 63141128 922296593 274356234 958359605 32257480 930031363 7468000 764005829 487444097 165720637 223059110 845408425 29234095 6326955 140230651 60949260 367959387 371066883 78935355 288341667 550313236 102475489 349631780 484329688 189879263 559933936 379849044 705719832 156394538 333525033 440704079 40440766 715424085 531057863 134682125 164253057 24179258 259034925 297011696 810235764 235464410 510296324 70643305 762298923 87277376 140122196 999672617 521577718 684096826 26594622 912594407 928698350 970616021 387223035 794651979 686526911 678210799 172465437 87699274 196940705 424003818 503011337 404342964 209636072 116207458 880232440 198446166 443875748 319769227 50945509 11079852 567921038 915089985 710407273 809373725 503755283 62494730 941151221 72781025 546015506 558944868 328542759 170469701 488531000 687822262 524777641 428675823 589295680 650637973 870426198 304852873 609222683 260402844 704087113 919246582 528610006 488863455 157167646 974801085 794215984 298304767 71538335 103723760 350511466 230460896 222861841 535892901 502139481 620569180 607857315 401937011 361389536 253259516 656296566 566161299 600558262 471400515 282207530 925367882 687381953 54881686 307244607 39859402 147283423 478642382 152206826 576737212 371222110 29785213 406489652 957843769 211732248 6608911 160729806 389293129 122994054 115523745 551016474 392409790 228011655 269245381 804967659 217975830 111779644 515330342 362127442 259255648 851370696 650337722 625585873 784800760 47460906 921400413 949202207 989915493 732642448 850588727 72732805 610786668 9290985 376585723 556228885 961910336 853287592 14800176 678335127 126781776 213690067 578739424 194325044 960967776 806597153 13343968 964133547 863338707 799605023 874593857 960489545 295563513 987598153 615291632 378690725 120459373 630000134 456028565 671172705 434036531 734064496 194686276 723500743 349007722 668451286 338131256 768183527 870161319 347092746 861572978 12794082 779068311 95735795 556781283 850263470 289750383 372748662 56382592 542348861 734291562 77806441 433182419 509320377 915509484 203103706 145164152 853420634 464823279 290976926 360636885 115077663 126807211 254879982 438176345 65063097 4909388 889585020 674576126 975430987 86601581 23694940 668696798 278216632 349113521 935604727 640966763 859533536 696078282 28039789 93659690 474399790 167651665 136396100 824484905 43249077 772169855 925371331 771112824 696404542 696831681 718653098 305549665 147114529 450420308 605483279 584094315 338743768 777091626 149652037 207226245 895287962 12754891 808377315 133599426 720924789 664118357 34578266 699504536 79555423 275627587 411461390 215607591 378596757 700456847 9514354 607143230 631341445 375369549 265425518 105281858 823480623 97787579 141262464 386056828 805583914 4796066 523618259 549058753 242284028 787450036 102238190 222478206 785438111 626934210 715455752 328668350 80131398 525028551 329592254 137250756 621280420 409941737 698586295 442721819 996501663 634357668 614345449 39274556 186288491 851936134 96856122 488116976 449031055 194321204 33009585 251065949 452831547 133641791 833648509 839112467 66467303 853778294 665445275 648776900 21850826 818107796 512312011 216483011 241182568 154716870 428392461 666597896 276472352 338164000 421812293 451628868 616991065 796599439 856569102 838675689 596769687 190299148 304926056 519600436 88358719 641179358 581251383 655938427 554676034 460571128 345758219 678462815 153681628 193339208 387444384 622351501 173457729 406154213 523945528 852523963 442229623 825230912 852911605 243359016 3638280 41335021 409374094 36185877 161103386 240499276 765709973 747133566 516108095 200591551 524025609 947675286 445615227 754749534 276163390 990447273 798251758 309882042 908154277 970679552 324437000 670682282 973044738 325892268 245639220 331430067 630976405 29056596 87788621 778154782 775423922 402886541 967361368 821132204 85276991 209845415 376886211 628097155 938386242 409204571 492819538 447948261 125627458 578673342 853426129 56914903 583665642 12962793 470950173 962952573 49832694 131450379 172817815 716163300 831016862 742956047 827840962 547358834 670635996 646785231 628311587 967514318 37110869 437407273 328084197 88922692 965174339 640629775 326595682 694028703 133136184 783119225 880875742 749798004 483122731 738035292 84950473 622163672 9521243 409296150 434839731 750367510 967991899 69061645 635905000 16882470 104833442 165765150 371917067 772373742 366157023 923162629 165023604 235242144 192205110 589210725 169388263 789041374 975856919 102149114 380926922 819139320 90184335 75309231 515457719 948870861 769745950 84003386 405774309 774434042 173486948 156446378 61763997 83403882 64363480 108271679 697216952 496400712 961978452 10767341 74904741 631461132 84325483 733936428 778409323 563022094 271749832 94885146 594952041 63116182 964447759 586648380 132707454 353605948 104869650 41190669 422506858 651522360 797160033 111677478 497131232 140328441 302785710 898505113 137040307 660599156 811840273 219073256 2375181 812644638 669219796 532983891 680661970 544697953 166339086 97828178 765618512 13035327 170701542 33799406 506107191 771217287 676015609 755974175 938110771 663406921 330039279 768614967 290082544 465244926 433651281 384323045 548698331 568418874 317533227 671370721 316093686 606808570 703280478 780353161 26552885 186706462 426970436 280713837 96056647 448983321 23618533 824396928 391573785 68417839 849635728 175580580 42368 779292071 84422381 868305131 313585520 576403595 460155107 588216233 785025954 570069017 558921750 38864343 14858438 443549307 447157425 616158253 795696828 10246728 76966991 770760999 970429169 735285373 734132940 752573044 312987429 813483691 230762077 673639361 419888984 418574687 487103390 690548143 391567858 189472704 103785883 887488848 82831931 731395657 903665430 843002720 776354901 261910054 980106648 656184469 264353834 582121548 548741431 642818491 736454939 76719832 243078092 564934751 12183593 923389545 887529577 62458510 288376899 808629380 508013472 698209235 319492561 787958419 392638162 83117313 136966152 54278952 287031039 115882082 800234933 290916162 189728548 83028888 886953753 288826468 952967239 923776969 293417781 966509172 45193681 574318912 373293751 542561078 682046677 959533893 342315754 268719932 205495928 877335089 40326723 276565617 284249674 212401827 144042791 187877984 431617429 206797654 338375462 180415046 782835635 23378343 54068268 826985402 558479789 754872564 275123196 99385709 24808906 135555814 348325255 510873892 350468739 539656534 455344904 871005145 487646383 442647386 266950875 454838310 691575607 236060462 667902950 221622425 927064679 191839754 258672379 145694801 461467293 272714324 399461488 783182951 217871079 922813576 139519928 586221554 771499234 536560427 852995512 625253404 72442996 915380907 108606842 74940754 469840224 55791901 27738146 720782937 106181718 880746754 13452523 454485045 635527166 125465924 799988242 523204213 618383059 184840304 358700426 589285621 212964667 68606079 114226726 228718580 564027010 583121694 480806557 742770564 569657909 960090582 107640035 491363394 397646051 382378232 501081939 24715967 885203155 949857671 4743799 86283316 87734836 106660871 365729930 559761347 239066695 47533899 162121938 156262330 794952465 572518749 316002016 157660997 620438707 877585161 488317220 725654933 107604082 896961403 905616455 65579804 825574636 717591165 401200068 490835708 392231658 739674613 251534802 706714612 168116797 186431010 648559107 873840729 797459705 440392732 88602834 678556593 1694942 825557911 909912664 928772238 146001466 755960825 714742470 625264421 430550777 556063271 16171387 176517135 344710863 844319926 821049094 8518833 964193263 342139523 43942344 185841499 123999279 824534768 782359861 522200484 94274451 630535382 40660307 126624193 407892608 517849885 132786100 816607837 133937003 54752748 503699095 727209273 768913501 942851203 479635389 424293457 464595505 947111738 407349090 363356136 224060693 611406611 252806500 530460717 440822408 837268064 877950245 780916588 296285278 259343432 464123185 613715851 321324067 36324744 973750749 430576881 255935545 510823791 55936894 614990029 396705708 397467589 13944776 156818255 41363227 800701036 116131423 869453923 81120088 820109776 970407200 700493477 53367185 349260971 3483249 359360408 921271016 267620269 609039765 615979853 891341740 789029299 460479334 35582845 209139143 532964775 989429529 252061363 676168490 255850999 37685823 881607149 288449271 513896832 10080358 928302691 297909225 771288682 654141712 20844435 754553812 477878376 42523939 449549693 681070542 300650757 26905616 370763934 252406248 220924266 845208181 857548943 627427464 331366899 581632806 310932193 552898089 59566175 550960642 646456738 881566520 544319365 440533482 380853793 990248872 278322151 584030492 542341323 837683159 75755841 186464692 219879542 260853069 632573282 230103989 302359297 621919445 65787379 811441024 1464147 738301461 782755676 626564460 61636839 834026654 342463801 1000 212136781 676254540 44970859 831594743 724644157 4762864 302922093 536849042 651654715 436294402 726374905 843565018 870939056 62289303 27875920 526535310 88806935 142259299 797583516 214460226 627950362 488507828 347965854 460327534 173435522 428491743 212347497 144418976 561638777 356070272 762705795 75035732 108630478 129674415 260036830 391322257 753546904 217179545 107872777 163185181 753726259 240187003 748793041 350611895 30827815 607427924 944953009 965525435 92035980 411590435 392654395 200721410 124026854 75598537 232148524 366531710 187040236 135279655 503284435 73897494 411066186 72743618 41213586 416084555 341836447 462226018 630021127 28944939 164798188 877188357 938554399 460062902 225007875 187571813 632920909 893720605 252400550 195081445 432962909 333081104 623723765 653975390 551401573 564707877 258619818 689886918 765264224 221530537 847197856 260607458 20600916 752669120 444830964 176127028 523435657 830242140 8756395 843301370 797188941 164778137 43701636 236510770 54445802 215492675 686868266 319425193 175845919 267983115 988737598 513719468 792786485 73622412 635049707 640249069 54431223 725053946 8497457 950911281 210067443 729529840 155643060 774558549 285172035 512667937 778135748 508269719 626361408 315119064 435220533 516950672 289008081 802446833 775056616 378123598 884624780 989904424 805657346 450344900 418803901 805330125 665176941 484990053 220723959 16920158 368564988 839641999 431279715 273993002 191861438 288913201 234705664 487702684 305579301 488990596 200910718 73503395 81412782 126774833 70853920 113464260 602454394 631237964 279244916 794394959 385435726 946857559 67518787 92164963 961476058 769357420 835110221 273515837 652759025 913827561 484176253 433350582 317049621 993991811 133507833 11994901 985639195 507773917 216346545 187983245 269824375 434811932 91707223 612842610 790023486 262152432 67576511 796957952 67163 496207682 62765712 328777981 229595456 10866579 492278729 927161370 806040744 338585379 553903637 572814451 60287673 641506144 905448337 434762337 470715219 944878235 402489390 862257322 932333126 695487500 5174029 138674411 34370419 498346998 124866734 634120003 143848508 18543299 398848537 918141822 321657234 425520050 414170716 429690584 905633243 97112231 84052513 7809969 477020613 19149761 189635387 235881527 499626019 960155984 693016594 257023508 16816685 658560225 70717370 329411737 928202863 949422938 151523202 995729492 401204129 170171909 764674871 819366987 467607528 50963307 504760038 905141206 904052773 794080739 71236092 70471645 184023713 187034287 407730844 801832009 721535834 212298894 15382995 327393672 410670617 916429042 105990085 474469246 279614102 952645053 327800849 248523407 259160237 34815055 536372771 432722103 453694417 551510356 2034178 423207227 890030432 174652872 383449663 38963012 3651048 702007579 990889203 995528729 199273885 48845213 31420590 198224843 893924162 273276559 274681952 324519557 428512435 941858582 373206286 969193881 353802717 110935413 991584766 663829712 94355658 801647070 580796721 18462013 651621799 253935437 748879546 538531048 110021169 255949373 248859885 427613298 716151800 478638710 149444385 919773736 531980828 612544480 617385233 59319218 325802367 563162283 549387509 538677106 137456087 957925430 412901199 108349048 630463877 766290511 660242611 919303075 10494983 684065829 941638200 220294886 473505888 547882323 70672387 75225506 27522262 502496965 352429307 928234106 455681516 352716065 245557080 580222956 99550728 838743250 171695103 968884213 841498583 264561396 346758026 984806196 811757532 123672178 413047250 17855634 473003028 170240328 615663707 188949459 817674755 861700012 710556000 475360564 569389015 87141255 778842122 674372446 212217334 832620020 441942758 646234501 150476499 94510703 763771113 852261871 264325609 775203576 749668711 998702811 995312735 245778770 23456444 286623092 207009433 946107888 257586485 822850104 86967545 888165484 37963125 245468959 73993548 359299151 122024411 331292740 109631134 135903281 758898801 364024238 465129688 745894663 15993503 872027394 95055761 464097990 888703367 697547942 867430832 595880367 194787232 916239205 281633230 315276796 130884345 84019461 365818146 58009161 85728611 964225045 691476292 344984638 276988964 322332399 316002108 791873069 619673134 126433851 740796682 382777566 615017373 768908101 560668191 819623678 272675081 315129363 26964859 66210207 635425661 822961732 825960897 525109420 839653922 990892845 189025239 6575136 65430246 465809407 888816559 497093154 950570900 57356291 90618593 66416247 442269730 916057213 773732867 505118636 160400114 668850790 868734640 31708052 249072368 262485715 436118368 942355560 96246781 968971324 933359663 310898199 537523286 301848997 485451964 237728774 336103935 371753950 286617355 916943118 30941497 391323544 578678807 667493509 432405094 34505756 25469219 394297203 507321096 517507137 644269555 100803058 893595346 356489708 53034284 453835443 190032231 258573289 676130632 424763061 547197554 351180765 917317939 312606136 987123183 869223202 951089137 70291992 305201451 866296235 525612123 693679734 481933813 31606856 752860449 64472870 721333614 469240842 489449486 487554432 490374734 62718506 100862416 684077883 616345927 882024042 98176261 902479790 546917260 857315364 599049114 946364366 308408602 206207049 264869757 415932422 489075781 419381395 796422429 996475339 848789388 15179128 678497604 550526625 426250782 128287798 829682660 690339474 414683205 47842669 52290793 554288119 60379465 682346792 240594801 335553063 883145377 527361624 540746170 633087513 445253160 476040216 559023419 270270206 264385107 173489202 846064875 771604042 72002493 545340912 77939557 101052318 306720276 63951303 162352167 300183178 831920505 40441680 976261553 419596174 81336078 350688594 146563852 402822156 772726103 328828981 546572960 34355621 37435111 118517030 402840734 422192716 211009571 243066513 784784131 122537007 415853961 113607157 931088278 523573088 207639210 483526213 523293661 202005015 47957482 511992700 725895689 505415573 909729172 428499996 358253292 23194110 403670425 471087621 40155307 493773503 374832666 847466152 369015671 152528769 516644533 233801617 450619634 625757942 337048855 83530980 717712828 978907355 429204667 708586308 43093433 440886007 984868327 869216068 590303761 327778434 76524862 623826631 499906472 105597553 311516433 846200576 79490902 919092074 322591877 33844177 813755723 346073637 360746699 603552310 33271072 359996033 66715714 292269862 611467707 447846774 873649561 522450386 353597876 250900452 746514178 466845596 189932681 931600274 213144361 180205042 373784176 539270307 842834481 665315255 929816118 948537594 949001748 942910837 722461062 636442044 895306360 282788553 233689375 126716148 313314800 813874909 818278199 507200161 781345641 737994355 228936891 666426161 379428705 655661826 515471021 399746878 882624059 700202001 658319348 228502019 137964783 933825594 942012093 60354119 445020266 449313312 26382737 825871134 850686106 908652756 232935983 729178120 919121603 848298236 583452759 257374494 143085648 115696973 597196255 860579801 596766837 276455527 675396178 430791402 494971014 512843720 904974351 186441687 920262476 427396468 602735466 768459651 138210808 922455983 851759034 751347816 789790909 959431396 378315161 196545037 348652708 12327535 216713315 12281048 455994632 331635470 438544273 868017179 350788946 924500999 327133527 419638840 642587791 214229572 103318391 145672734 360504078 797848742 42211626 219532208 177788425 228133008 167274409 461636424 69980350 164134746 302448225 354168231 821551923 43618652 937954002 326163356 681543350 909035239 276692526 374951718 31299542 70300882 661241723 211227293 593348611 449649701 397923593 668665513 752029062 746394797 905982937 286501366 6410046 549373138 170001359 701283827 760330694 944316275 378985890 943396514 115646620 169971191 933345587 484211608 761687053 355731955 210497447 8921837 134926257 819283800 531976806 614763282 274210069 348634747 561685467 405791160 405392853 617374294 440572613 835479139 753838221 270834184 172046560 438454796 182260259 910940016 475560613 452468191 204571323 672144169 679694590 460894231 169503076 842272078 427024347 124701359 395216027 98369172 22618497 216617997 842754228 773031594 710098715 85908717 305663732 139205134 366848507 543965832 56892309 793772295 432484100 916379914 66217126 363527936 305132720 118141355 878149422 747901495 68227071 503680910 424873860 586736780 845920125 331666939 588953163 189528612 636066988 538375436 340480907 107611497 118801476 270795153 796507295 809833135 517713037 468170144 74058374 277558354 95117798 752765216 467116582 534988028 18750047 125565901 24414874 614652901 818381092 874327159 862324484 776431199 803290787 687876629 574782400 348854520 48021893 552920803 83039794 682445585 406725151 988141724 653839042 858124140 485933150 785228812 539086460 198229426 252353889 574085529 308002383 782480362 132927974 264467233 529237587 604654674 509435489 677188789 76915884 408899437 403579461 890116297 322446543 584937814 400838098 407654021 571262153 351217558 839010559 921483917 840224592 70973070 45734870 805067273 672434741 938231342 473944093 21824985 655994434 125042414 846063086 502782818 7250900 520350574 422331002 496282503 169719768 144509502 540621275 687698547 125334001 910719895 657202576 3554978 924800457 310554526 89711100 80818339 536792691 671190111 115918538 35875645 931345551 688618365 546511682 510973836 669896773 335322555 552980697 856241323 890796497 132514601 602625376 73221822 604944501 679980232 675845249 313819696 457260982 124687247 72107518 980828653 81923765 818736239 412670781 109933507 957150186 790170790 511822978 7946287 436772045 421915149 550300663 3881549 106922441 835035199 624557427 506549346 533949950 444327921 1000 437074843 487146146 630552852 182290633 365974614 110697433 839865212 494725236 45356470 819817138 294987430 59385383 560140045 798196708 912598149 986008213 244893597 944294485 875935970 220952278 414403981 151693355 477705767 100774866 363472481 18881485 749270400 47143567 239898489 954691908 254484877 140302861 711880927 436314378 849282144 288743469 221921172 440697419 714998329 264040016 642064789 154673441 221106365 836917318 529436416 676754486 641822261 965796743 233206814 595210951 929182340 361786923 131468502 35591523 26416211 941888651 173849695 280303377 719341151 287304677 249340526 343520959 679572523 484570275 627592582 772948902 216385795 754827400 380058219 577628638 857560545 566234113 30591374 731071662 186579329 177492892 244739070 146469168 232158302 199446647 22655102 242796079 788324268 512650600 290032467 450486467 594121650 562652168 9662238 638193034 565436689 472714404 72476689 342807217 985817232 937899299 782716274 655416180 392635678 553938988 288742072 551713620 133739659 647883250 122031356 198402160 105273687 992884504 874602134 281656260 788154759 478396424 91404733 934004172 251679469 139018577 423830821 865206142 6725462 683131864 457401937 9223381 575496162 967708366 214144006 758356495 541720144 863255298 44323533 877767107 725558167 14319342 160124248 593612913 615320528 630559630 102560265 570132650 35020562 317945291 569839644 96770126 76318785 13932496 684606191 343497346 614474575 210639187 408968002 182918970 223798234 372306734 632354123 618775165 346228548 98730247 98415439 494167509 516027717 32680897 310489503 916530686 588300641 13799848 936540703 322279477 906240541 754603686 321104729 554738486 142965566 854586661 577306209 599166829 311221209 83626209 436361973 759733723 332833597 247314182 93220178 325308593 648555502 25168603 274630147 496554812 124843775 981675851 417728905 976935309 133420169 949042164 927213892 38985698 23848397 491078558 347472041 333703846 995602247 954602619 873474121 672694180 426702131 680818911 818654709 662360164 56019985 948610806 282541397 252788141 910124495 271393365 114679786 390519253 469666089 146853523 300534901 179492840 519229079 347067875 585044542 170709764 901411027 150572622 625652995 900189787 655134046 137511096 453168467 404139993 927055803 974214826 640029418 447531316 892490688 905703377 238962402 291645759 98958094 541560465 129644423 652500277 89433605 488208806 59590376 828337360 495058004 400972345 640960305 990724872 205485594 495900728 667832250 963765412 960560545 34860751 675283671 845672387 315462656 423110322 390816244 952016246 898263135 120437316 545521406 69410756 112162865 543781169 221414927 670574424 380216097 994251831 346708853 479968619 759533195 268059709 976685329 493054410 811742517 877765850 623612906 299463223 543048597 402237087 640634218 89788790 38273438 537287944 25075847 101736413 396219509 335065686 98679480 220622686 75041866 163397245 897914538 182231565 139591052 110394885 758345400 687203602 598058692 11054981 958366120 704261328 523003212 190807144 267657291 459339118 391709346 359523394 996273670 126268400 43079597 488637709 629136757 373704657 140940186 708581199 888865866 824884574 318707329 736344922 643151395 818654968 624808127 377220345 142549494 43613477 330720289 516460361 862857347 775772538 104128886 220412403 732570943 89306109 544002299 692926282 323230817 259839723 690624261 512773369 121529724 343078451 117421850 478677253 581632373 706778658 926843858 477441195 459156416 685039571 568903861 255814562 430229977 516361137 458121161 987515350 780475134 207022423 649089854 594237066 722556359 118955482 359951520 678010395 775683584 581830059 7363738 721125196 808449193 32164001 631622099 203262192 208900636 194820432 521338016 912466236 964053895 138198218 98075910 853709280 571153014 190437740 40992905 767967610 536350425 268551167 174630199 824892485 229736465 723027718 243129091 716683227 931007679 956709815 521073937 632653927 166736610 263102806 995753935 411575244 704014639 910492509 578137351 63165465 732566183 925429745 604512816 768514981 499714264 60535073 512416505 440260567 635908535 631693217 934973164 167847581 877546967 248568562 476145126 454240245 98182962 102860932 943174563 443817767 118299889 858685732 803468042 739295067 530293811 175058388 824964817 965556270 292657008 810439729 242205021 20077532 759758388 325731108 647570706 42394114 69645651 710589074 295464661 672218105 759674738 105714470 656932628 696904618 184466399 976209236 224542585 429327557 999969206 705349853 423137460 369375727 868624395 649091365 458701892 263137857 409503189 783437586 605288362 242510930 533781809 160586091 230915072 921888718 880581344 646621504 849116532 275592505 134369808 34859836 692738662 506914798 672312079 858508383 659744295 731730675 818222994 618531269 664628882 145202269 195192950 283410558 666950509 106522423 391836073 799335343 75304473 363243789 799607 751168110 934179249 826306016 340649546 686972672 467659763 85700963 173592855 555993796 644649267 939244894 685374874 363990719 117890095 713122062 878575818 12158021 799655833 596356379 234462480 375758889 434838347 561179962 83668238 375123889 527787652 439162398 778156506 628071936 403183843 692094168 612854411 115241147 825325702 245244061 949926881 682487648 43233669 289032374 693571961 921091694 653782891 429783523 787969991 10091202 992467319 692821257 9739203 598925085 979055210 390708285 372824212 192282926 303507205 22936846 915612712 908758317 172355111 343469316 106042745 103866440 726206482 694693716 167941928 479011183 559137435 468449836 748449255 43495390 603777186 119547399 45210241 303867729 856460543 48763062 945230866 638337783 858787386 822383084 111593847 130611969 904376333 653012774 265626797 84751667 659888655 578048005 485084745 789786688 725125280 115266470 140743409 779805259 886000403 395250734 616720288 523263740 692631762 123645946 487735682 871690289 483936474 813610575 521487692 520356432 581054543 193133347 403471099 59064250 695451697 533705411 581508319 172969271 931469514 232636730 520516615 719932503 947458939 359905065 916780219 316223339 202453306 535377807 667698742 779269127 645432795 47936583 72609885 912977209 481501303 371410767 908687371 433753063 768729235 232450147 68612169 24628381 44163235 943604055 362475740 176220553 515816513 711097350 247019962 651011112 957830835 559959295 81074979 925568502 248205579 7391887 91759245 227689500 373480210 620874310 841609661 687272445 395545167 315935647 279935393 464067410 619648892 378861450 891734998 891874222 528606280 643118351 847653617 138449295 47565234 618465453 958073529 910352028 813438386 19226383 245447509 452976126 849820180 866975230 545405526 218064248 256481267 275382830 167931519 326355510 147835893 939322149 362802875 9820382 919576286 53678254 165277094 79149002 352187045 533605196 308694196 23250439 341658937 43960939 65784283 290260458 1769089 227076259 952698374 704640262 771214467 460784947 370237657 677330163 556103703 693433376 806925499 969128509 654699728 452570701 320156032 983666764 698328451 933519348 598812218 749789788 639707213 514752485 11576873 395089010 132693941 97337592 276474033 94192346 831326380 127079798 129682641 143302219 415090199 551098361 520735587 32284036 807561065 77125257 82855741 234415915 625618677 500870487 536522369 618097548 718606387 218062986 747878222 349563777 249133289 919129809 824901076 988749794 458733885 446848360 116815047 182590342 10766116 44961905 181370332 417423161 878475767 547067609 591056117 399961324 58106164 104633702 540299396 138645029 301336110 194979456 872556641 114660230 24387497 5441186 437028816 202056523 969913519 394535721 935910555 51325458 144438070 18697213 970851375 97795682 239840685 314004268 174926896 608540365 830145614 711542731 905012228 118203464 651948170 173674542 238722049 923194696 437934446 350030008 27541941 752430704 469598723 510030437 169846420 71277325 727493494 32108323 385860567 440195222 648322283 256543149 826125307 37179752 750509196 47827449 787904846 669670158 329055123 38938307 442004223 488311432 895348250 614893840 8424252 45716149 668171115 518670754 44076262 330109584 52021646 276069939 76410454 18364155 166816883 6122198 433351190 366191982 172197570 652191541 234949032 718819457 770942904 753059133 616443063 776577887 523885474 334514580 711323758 735685305 638046088 594893641 725814443 625278723 971188815 958939528 322191870 480709839 914409227 570294840 423362889 808351921 401638504 611564235 563183897 32848889 872827219 113496960 672092986 8481803 163456186 423721947 6594712 136985192 245415142 129814328 561869839 342029484 449678947 886227671 850091905 805615494 100085115 721704637 809373032 929768548 888217318 825341879 362080814 123911857 80648424 797522749 545955445 734790815 75802957 241468984 669014511 91026465 335846605 549754085 297426607 222338188 429269386 20352171 104769978 876832270 988798844 940635993 44283585 572236718 69915004 894840993 555468431 177322399 249392952 828279942 747294925 483987598 158270572 741758035 455651504 597018834 344222149 873005856 204960565 804344971 83142199 439738948 328794942 728620624 423021476 639257885 857075646 806269300 241025132 164392157 85730007 163669011 13978526 490090182 394926654 975458597 120525221 978989514 280515749 95839058 603422420 514771769 874829032 8525639 830882190 810858651 107364925 770329335 567816151 905535453 904115729 679391804 558333881 117504894 571179587 874234587 53061303 481860269 681345125 922166542 695209460 129146130 937446034 488720186 199002935 527851072 246507078 483644614 361571396 775555109 685711492 271728139 885631657 139067101 325255090 61226490 741917222 195538743 749798767 888395456 682631160 869926396 231437726 62279243 829589740 662345935 989152758 309428830 778703461 66876578 630739588 576727358 861532130 976722759 288961513 83485244 805759205 137502401 1000 31445360 175699433 887937904 24313890 836252337 358422706 177169996 83630546 294724261 137435433 26058473 124976389 685198105 767381278 277721093 769694106 253547903 92985948 128386175 306605190 270066411 410037051 956512738 9892566 748412783 266811648 466506065 823539924 723938854 509316052 506361965 463605398 916913996 22086845 460808206 752191505 681036439 889285287 544875839 615346110 329238438 430152423 715545064 889434013 904426761 93739518 522718055 501629388 938450391 136912293 766672078 221091174 113983831 891400646 107012600 129462027 455983029 40346753 892026055 907935041 489547548 214055823 940726028 373706649 855876716 983082559 913957030 545053919 738918738 304430931 478655069 122153792 860831893 723971380 478139414 438700262 85002967 242025135 688514203 78593687 901823860 730729753 384135949 351151761 745198432 168287458 354798989 543182991 545085149 910521 126228166 338970095 639548177 537239346 122682083 834542248 364507967 212134497 198739836 528272177 942583463 187489170 45498541 876162676 913913971 646533935 607807309 382341017 79887848 814401996 627407745 714497818 618569765 537337680 398591284 200959237 916209517 581437365 880112874 912887170 541227083 544651397 132185791 305697288 946754610 849564215 202039613 881396677 951813636 20050419 913592432 995168988 539360088 950277844 215285309 569069540 607201134 280522123 117029483 140342475 171427768 326221527 882766240 517198384 836729868 686083220 789491370 936439524 932126900 56013223 503410536 110548491 856744763 630912758 65569743 435046625 742198391 876786783 215296798 980204966 701284999 439647528 326898515 637794584 934487284 977558296 628163980 466585571 479817895 852366995 205364078 754702570 988976359 1223713 836217307 88301765 799024977 291385835 421093721 503775925 263999125 423826757 689417269 781683349 417483911 694014925 925721588 503728672 762897174 249187128 260297860 637580402 598464788 813146341 781645245 223384064 739180082 145256939 292492629 4116172 445037635 333499176 19383442 205412805 97442470 546674199 133342976 844317690 677160269 971532 771207259 662554292 858829982 277458246 687218246 547178183 997754981 71361340 909285704 977419530 339906096 543134798 397315120 983702507 507892211 875503099 778875034 317918457 279451196 637017822 86445284 526610693 157017668 340524826 549701654 657495955 576582308 135062463 314236062 318770755 83993991 30207306 573688603 346560771 102741320 61223481 107032042 108712053 460054882 427243256 141485016 851111795 905021299 48278888 475694120 465116507 680093910 893067202 7821510 109797360 635914461 41996049 361062485 229161845 65644458 123402617 65579613 258362010 679757600 152645660 146598557 771525302 886442992 91990762 715059517 21230352 2830951 330880306 43408017 857665605 603214032 675192916 734585495 556830421 425618255 116443231 769320554 456198526 442971879 55870037 240660165 642082024 499959968 496780766 513525456 145471642 223016297 686575528 653686796 314517613 149841386 374873437 578509793 198030573 213398266 19213311 720230176 802525005 603469971 31683817 364816361 467862798 187442568 638549414 397565537 538149484 312885997 89323558 338420133 123737597 923379851 915865116 125528264 98816623 490394658 684958004 898037323 51931064 839276005 518209054 405042627 786855714 934072705 48745942 649053470 762865888 124217744 574967993 201735827 306583081 907943959 967353454 313918219 637603808 470847436 528285819 265575626 23616784 792624422 695763363 571130319 19985167 152096922 511392907 68791558 604611587 995047863 534620914 339721807 814626657 21785025 872356868 118029931 219669290 629481772 66589378 697870111 432427561 789256134 94168704 982024406 268540463 132240482 243532557 469077377 42081280 106002277 549816528 570005764 493971018 466001622 925565813 498129727 818981159 515167126 765248849 871465273 955061714 792684327 109112326 90822468 983569188 400532436 422742538 923604972 377130144 579856076 102596308 17590547 109454485 756342703 353088416 552158243 726647487 375241205 183385743 265918361 512729186 276635912 861737589 619892751 996284580 349250364 944903387 991677878 843199041 243130529 868698041 36148506 36738499 889039970 79107296 330371088 214694393 47212014 45589970 872577663 543160495 798188120 841310790 439251179 581560332 10782108 478970086 702508143 243066714 343841028 684939048 902422605 494025647 628630393 478840815 687072382 295637089 535186816 374802698 877228049 273842404 377072044 158936896 935828422 759907840 287583064 938565741 38909054 853211507 528857491 235839463 729678448 165526799 729314865 295006786 511544732 724590799 378192988 247374933 143058303 239096734 565168531 927320733 60139710 873255965 260473668 240711566 257241361 153946203 861613285 435289699 907035401 792893416 995770035 967376233 575629715 210359600 509371613 542591730 745140688 37369064 272865293 398510376 568293042 9116912 156713426 350439640 259275194 629633378 922983369 681446571 823230177 808276823 49617111 64809202 768523621 72282743 593402883 618335949 6906600 682812603 316888274 973949039 879634838 91628212 725091777 692897813 267845907 305024673 734201399 168144222 682402063 917804939 557621566 154306791 666896745 464310187 153194231 545216263 231856771 36299738 973648912 531638286 900764080 866918658 906265101 313221106 784807600 358543550 663690718 592603345 809540689 129602062 564422991 634382368 20279637 26616338 96809540 492008850 242823012 922235617 928666434 955217972 765526646 988341696 370738075 70423423 771756954 989307836 241747648 581105333 621331545 103837045 682828624 91522366 422074803 8666097 99928634 528328100 232923152 354690106 424419701 831715993 370200632 683960120 53040359 300979270 814123765 810353411 220671485 605268006 86212369 144124726 872235617 981970028 971904419 844946630 808495098 650988682 7188712 494952556 156481749 416731903 589665402 707955768 93948877 371644189 716980348 657195427 237736678 944484806 566786547 434301277 73141957 122030466 863130050 4484107 858943230 254588838 988446149 854620589 142508775 424468971 872107316 926422483 746395566 313711508 797874742 533200053 136079492 303629529 521095324 109333307 300529079 824545169 190299873 465381395 238082377 249486556 405901116 620707689 249266069 586595717 147141498 913986989 555126656 247843646 173296062 537030876 341473661 106230295 221158947 660524574 234867935 985338975 759205053 641174726 797942717 413476596 289661682 167865891 106400361 136477554 953428704 932265486 732022848 762863953 35179786 231079091 29028757 888779629 740565291 553441968 4073801 571360169 734298193 433896381 55183624 802513516 24801846 483554702 823613691 70969181 769141061 659100294 200987183 919572117 91013222 255927393 737466142 365563396 798883277 63847437 375181209 575716323 482574149 77345717 999549085 898413987 610348018 289009995 414225331 605682671 69256107 340225370 35440062 470123691 66396889 269340587 890627043 684090063 56540467 257356522 976010165 511276743 133606399 386022958 303962923 595714504 277582529 359142927 683098101 835935882 154716601 743525637 826288995 305331725 623434148 365869764 158522752 349202237 448729587 663931480 210101327 962967066 475389326 119935973 147015275 552727734 934121302 138678510 538571771 591386942 954577331 383940106 178172011 915953665 336808497 382891007 310716926 294744154 879544935 846140379 159887646 270278927 690901195 159686457 814353773 132252427 801333029 594427231 66408600 363912974 730129355 622220048 311253921 848341415 790969330 302905711 182081977 846522021 268386259 234631465 592510919 878149296 81403898 819080934 980941046 235692044 659811572 243449484 105435239 386185118 552942529 747370896 797348851 973812109 138170273 339614578 583914676 775565404 414567084 736997745 173513767 40967875 81682283 163103037 719410207 511995640 14898137 241128590 605236591 482380282 771719174 539717629 589426565 260529207 909693113 941298525 981028292 647723374 788583676 226516404 799233570 745693731 196226847 799324901 932167462 45862571 902498668 425237748 180870092 512670078 410715526 403477036 7888614 408225337 559320312 206168398 902784089 104189309 230856825 759099749 843544501 379704552 675910209 11851397 135588735 27597214 275622649 765843622 946417319 118135377 161628499 657717324 980229865 592756868 341369952 77231347 693751333 28818760 78508273 798424858 62379719 715801175 217636344 335589186 781859476 706776361 716520800 125040263 847479392 396680123 855438873 417978413 792990588 471216719 956565335 88254693 34253556 823024270 703191834 117340442 669271357 909569376 828395422 893311715 1028986 436362835 353712002 745334957 254578448 106920744 455583979 296484264 587237291 466815925 35468178 993621585 335580108 387142336 196495747 904090400 568164964 131584817 175893653 181968273 730705014 897044197 622789278 146088527 854630699 874155513 965719011 578305508 348377537 87344475 690506781 270469396 748876969 463400414 620260247 40141409 877568898 590146767 279329359 241286230 89486092 214974978 878941060 251950160 109862397 544456614 715974866 159610965 677824473 52115099 641488074 346545634 398819866 611136048 761362145 538911978 227985131 839671652 959705897 545061411 195541798 816323220 76798842 592672300 84609396 4414907 264274365 185883509 816533154 359135062 290162897 118553399 134517548 611908868 587458672 130804953 458977184 627732157 336406594 485951166 144933651 613055790 739555592 550607297 56784524 418648799 415087996 928755396 520703766 182764961 690559170 747260308 715762461 900587413 963582303 702798562 766149289 108356716 117790182 261682071 600127481 2481405 15905027 879969075 572143370 315848565 347513925 846771590 743103353 892585255 45965129 268611765 932802772 682434038 211106612 734169749 140282620 76516187 910906676 957991955 633731821 980854872 735289106 10243643 734764195 422289048 533449017 84942385 475676980 448441973 387107429 691492068 730816774 269020753 3347659 212111503 1000 283496043 711716001 135006253 108731499 658623948 136051571 386030301 466274725 572763440 472588813 297446160 946266245 58043455 73918964 118134150 745661973 318621883 160476408 34605053 826613549 281689265 884777290 130083598 841176373 408140487 949703816 475349470 822848672 894728029 656672691 172076521 982562493 114829562 334558389 462214905 77857283 576413162 123945808 193305250 104673882 122845920 22820740 167120001 498220763 362042319 950603785 679335652 41913616 363811059 470556990 555051170 21760050 404685874 9968967 928790576 92176837 653748042 107261829 883205304 108373179 781730922 861235786 708270064 968691448 493522624 358167674 980794996 275568021 738880579 205196156 122290268 520030985 777410688 114840255 142181658 176292922 681821523 120379018 840314900 298879677 98325154 279284846 463448942 217414387 127959376 297109743 635784593 506064718 841058897 695527822 490668874 134251662 80288257 406520092 973302812 278758588 968521220 783204226 469391772 183884991 788685041 285527247 120932529 282288363 56327888 476868558 505827279 221311273 555978603 689241554 780217774 985073287 183250105 689795435 441682453 188390292 124402408 278621611 159082837 57128339 55861611 448843171 201778398 842278002 39073995 967537428 601507473 626448552 467754316 683074533 465952150 434689231 522253914 773130583 626418289 307616733 118223484 59531310 494681557 520448144 141850324 265676939 891865778 497885050 55322579 836296806 547459509 759789142 422342486 647759083 550902078 752381038 856428513 942681947 47124351 909921115 896909862 891854330 382162739 542453624 219081043 133607122 63303084 900477022 61637603 289609583 9484025 564744388 610536768 396560155 565767474 91414066 242699718 537182739 776578291 484367412 971251568 893124039 719004333 116193960 402078895 541461830 294196156 879986265 29443515 173366918 188078198 321424295 89772279 725631736 681097706 342821456 614346693 342595599 605299939 580265740 307687205 938243054 99742300 940509239 387694670 152457678 844799470 897637830 172217222 742430926 258868656 375421439 445844381 975121741 316776360 852298237 569669288 351560112 290090589 699152252 143535344 831037615 205938974 377559149 71401972 182095806 805218235 783757992 213261612 74340230 108952792 502058196 738102917 725776938 33458368 321012666 125439022 524318179 697529808 86407009 240581312 414018173 109079692 388960237 834871227 13816933 295098851 998829841 806995163 885938381 876228357 35794271 111066590 982487676 385385290 710087344 912036713 222590072 494052580 294731712 51576488 494508732 456011469 787351984 71031919 426601210 441989396 669900288 901555753 316955058 633147689 916781380 545037361 846363207 132270614 775381458 61669478 123441688 12625058 896509169 478748644 67841653 423909951 593127 114183111 37728273 851213196 284510619 143265983 654457376 519998501 509928956 993752202 759579298 463785160 208010481 428953300 29095929 35845057 42013462 953047601 286156 160795978 563245084 8289303 907363330 806908213 497038446 678433204 813398676 459645597 328861569 562356109 578456777 918664635 423583336 439850154 559501482 86547038 585125012 491666071 177367406 632782137 676722428 725222865 83523641 393688930 90048879 674159773 489046128 157540079 325070846 132280887 717117532 920199260 176545986 465639432 114099187 746725520 610943534 910799847 931429442 572917814 116238209 903535983 535812203 779770496 537620725 317204774 859827374 613517379 220717207 141080157 172528464 42543094 585922796 1537341 435096703 44993337 473341835 267215020 755605712 860006622 111027709 705078454 431903223 451994428 759164407 341817988 497144084 134198309 90319462 2409786 557701061 652220592 689938787 822389496 706819693 78207319 4427192 615586339 301780221 502752633 449019935 653785190 402115118 453695598 71830672 320124222 787060337 15003718 206084068 38896242 373653143 167615401 238609918 606534527 805322919 764240159 853671510 689260271 732718204 957958731 228485526 793406186 538943512 707367276 108237777 129049524 874180044 239536337 652284601 47988368 879603077 56200580 676017818 6158559 270424214 862045321 995441954 77630099 56645415 823587297 90193096 214710647 12764810 219158336 471833800 259280565 27979 526445377 622575613 737716861 920414971 569899209 64093410 358807757 135568343 902121401 3053592 806499082 170580570 267848077 724054521 349684127 458326225 723459382 531135846 387240595 895843800 598333795 286517984 472244339 620402103 13763873 98124158 156785050 692752401 49264578 340528332 584855439 566245319 861788732 745288582 813995967 144266646 496967911 74248940 285360392 408996802 75886200 140175105 298969551 461793881 736935890 369343919 934465946 383520408 449296307 634372834 231827896 325042880 741880192 571927100 36998852 158875266 35028951 767115657 88543514 438647920 254130112 669604226 462265873 227567799 947913577 771919336 774321233 27596549 616812938 471400368 575462394 562677946 250923335 58774480 534339679 214160619 348642541 942497388 55080372 84357998 935563851 116526339 39031283 828033489 387641933 932667014 82746663 527650380 519668664 282921558 388031550 420870892 832423382 639712502 468942422 12890514 904887809 769503597 992509400 63299122 573343508 535617478 598195386 641086863 482041204 748680540 46714682 573995024 904190682 804370926 324901418 476178025 973927410 5088667 798814723 352056214 696845732 479330654 176337985 257562316 167508259 334665283 931551468 611125810 754479623 18090156 833662607 803387971 30716106 811823637 999261796 516764359 652564424 766540548 676411554 743516054 532863348 523608155 386524608 103502444 672478450 336292013 348414505 435125344 797565734 281064801 917145421 556021838 88645740 910374572 597477296 654034842 116832058 403035867 611036101 138471063 751533791 120195637 586455286 323182609 301190173 38812668 366866600 991134508 109830273 726408345 311435680 511257131 740458459 220348603 640438096 443791580 817584961 933626073 224405231 59747411 101321221 709033888 769528746 479097320 571661289 853133501 509471985 524290737 255417800 46643180 403967308 373793084 199020269 32716472 551127144 633519047 924921569 342269821 139537092 232551145 588009922 772885129 488918998 790343332 533433250 879312430 961715921 789517831 902753565 396874348 731344496 512033727 512158840 655167688 13470311 153354022 297856732 111424420 899806703 777081746 712866266 882077883 908694479 383323829 596328801 857522285 107725771 892054003 239260016 125342880 200347286 756066865 719716528 505883009 235484665 646836406 577825976 378761304 996236072 404280304 949860936 871481923 219740250 551266212 545337419 450258575 992995923 830511832 503655897 950989951 343771744 13022435 692605785 283344793 435500226 269625266 446653830 635879415 769560028 698693114 961067512 516288936 995254719 350411284 185873120 476899559 914741081 568072381 736375395 508565822 848925817 864309166 46029901 279648254 301441742 646149033 534963745 794606495 226763614 35976258 861978273 845558165 823384752 179119164 710020280 183218261 481798111 275041442 201869064 364486970 18977006 65359885 326383653 421682239 708775233 771249719 137388594 989330498 308218540 756741367 179769572 708156717 220716296 625402561 474251808 263527717 506766493 995654947 962597396 407949613 54335197 422498888 495783811 973789088 122715149 51584000 58289912 521865456 709523430 370628575 355665148 707834946 619631017 335582459 62800340 400546220 948390884 792650959 632034939 698863768 89835254 64972397 755503507 584181981 411601641 208054864 963139005 725065948 697030549 924710310 729860246 600529247 933543836 150585866 362575797 9191240 480011927 426818514 869785935 444302264 589907801 147044623 370724533 98698464 248954143 71119560 845044867 677157814 883468968 326169568 525466801 386629842 6096453 662947498 834876937 152227150 140506417 841167973 251693373 404713850 677276072 423751661 206857692 498307659 632173855 277035596 469035881 254206199 414953766 435327582 58886258 870586801 256519959 128155218 272984430 703305853 689391699 189734446 463614198 765015691 507176299 543070148 317119117 372986363 712975450 607112589 99890367 692776757 932678941 999648197 557753976 358056172 755423662 924525163 775468689 120511731 124748709 214279945 120309575 247028294 607941999 4662460 142456630 158067651 429299479 271712525 407528797 69072369 227889549 864866183 765623670 899852509 843970407 789810299 248592937 512755441 344106433 304206146 440362968 314231110 291228660 677331183 717625296 865398924 999289771 398576676 446614617 308535248 324647859 679133024 910736270 567685115 28633383 531103293 394696428 40392791 56269835 556064323 171387385 318662818 980269249 821918772 897591537 159763131 288634765 389474477 629685327 468758329 169665883 910166787 989531605 750673171 306086455 841574796 47050032 184531651 212270657 55461725 541218013 963159224 858760174 490407952 275128988 306548236 314063845 331915159 456359557 438059977 824583967 260990198 6025548 919989898 419819414 127572563 189091608 906518522 95315981 290975872 471475718 727528913 23324568 866543609 98610879 541393837 37812117 4209411 81247770 645338587 812151172 818002438 79902518 381501927 850168409 733118039 368542493 582316043 60715534 301094895 144031769 259022083 140260981 820100476 258809229 471252693 844392639 276317365 104524643 534774665 427250246 374543617 903597173 461078269 848940014 699603001 287705488 413451498 381632586 90901627 985226564 507986759 186087436 720765921 136474164 284941418 169849612 29072080 953244035 63648212 220874896 801949745 556852917 432922556 814059508 763540588 400954242 122765210 616139935 435644322 813290558 937250407 697209403 24223597 314018054 582036210 833337645 555882774 359470127 208306479 23563402 767198402 266028837 775448783 81400063 900638758 325180496 382178731 84091761 464064808 565076311 32757917 171067421 247558567 835107047 80236016 350278611 96491675 97369307 435312327 1000 20778671 705141296 513442845 86808709 180289298 573763241 803689769 796758925 46429157 143587829 647186977 894038079 759840801 356200415 948663807 351871377 865397689 914399139 504091150 636068823 655852974 181827251 35853164 850832384 21245000 429710866 78453366 601437630 839696968 961440162 32688188 441610329 227073857 191561654 281904319 665460601 613677037 924972226 880053995 645216506 645244590 865306901 524220034 883292831 385191017 940975837 460769145 8142969 171354622 620957928 98684661 122623030 866037484 784165744 910421897 476403828 550902646 596774414 281845505 756557266 679355140 616582595 9778667 140684875 274044034 289854411 926564722 96378457 201886736 984265541 956966887 498923329 576672087 855216348 58888779 71475792 35897559 747915945 962490298 890076777 621712695 258249146 88354436 586019001 940830464 111517067 21896204 648415194 678636766 999910003 955242944 934605119 119662224 413903739 642433833 850416243 812564220 861080516 425832291 83201056 76000491 529032435 685867338 329907220 324860766 219980108 300868175 835594849 89727060 818038067 831703406 85787428 777781435 762243241 685489916 305205019 822275791 296459006 16084878 387836674 816733009 822532071 126423852 728222021 957978023 168804187 207766722 29777575 570754987 983215920 127729611 464750256 567022133 78100182 682995025 124425162 640732692 724786490 433295402 919738772 924050818 86787122 464958535 516915859 5751758 670665156 947444966 55245946 708931737 330928403 691715114 943330141 536407268 103867310 79087157 924469894 516844415 760967845 204472023 95798893 718998187 520153614 283855919 867186674 782589495 102185951 272066636 159230403 557116958 563110672 429891981 128897475 172126212 461698655 452522618 873463255 798227992 205644375 402345468 182371244 595271575 29232209 208879286 66331859 771277305 584163057 715619612 35856933 699062639 559279602 505683759 51703094 63058787 666530248 279334394 435338961 111914946 349778696 784258786 662394480 315357083 818181527 138595229 518928393 123620340 225244154 247305895 59004578 310376440 591513564 326176336 344769282 581758262 776794618 822164252 440006708 790723913 64469329 578167893 241924225 651277148 555075270 950906196 575676827 96625019 103960597 12569578 316507679 35082808 944033693 824058148 117399843 685875063 596756968 709093384 770613190 61372912 50252923 477640081 545875127 752595981 393826940 920499954 9795926 5740280 873636107 176642594 420374466 204901719 646759506 161503700 547660045 973826194 467415769 695275062 131644950 143431239 276255244 673406589 290155072 364325962 705933808 457103190 558449593 378037114 142524055 492343281 556433846 705147880 42953417 885080257 45378566 337876173 593880322 113524873 746850079 214075211 177395865 985773115 718285675 364443057 285003587 360730214 494295224 430302751 459819361 206264722 225502403 35512207 666510313 678290403 560038571 857402254 168991310 885942372 175319141 604744140 194990080 77291917 218345434 909609552 3758771 272082595 760048650 100444836 23162958 744910423 213417897 810279205 486704468 338109250 986689036 787769728 732380676 791258636 826861427 400104241 598130088 441333052 897382903 694769351 991093044 458360273 807231924 275472464 145210584 30265212 127057795 696666627 100489953 702127913 901681599 463546816 627907664 462419743 714469600 373161999 280252929 77379670 666501964 857770492 649175538 420675082 672140669 795628627 25656049 664372820 563956193 237605695 29492102 25786675 62522102 348935287 395871024 78054726 557372879 433992734 272814633 41142266 543437337 127939448 804167312 626008338 986824508 757917258 62647747 333325075 194220244 325311705 609530691 749374612 561172201 859068118 817273853 805112008 41804404 357787159 715913288 596657502 786600712 311548664 423462068 255215409 431292436 35640259 994999713 318290947 850258614 460176327 533868726 684586411 583332575 375853900 578089397 66510192 913028739 993714541 831249463 133499583 337049558 218692314 824797203 462031435 128524000 903578182 45793707 824999776 666149951 406474325 129312019 694795671 580158071 497950630 290988486 810131639 538906660 447110144 544645868 810926509 854099735 50849214 315574428 647329676 182221829 64861978 113587458 766479632 725004896 978374109 833594765 370131939 365880862 236386518 547511348 523903747 392195461 671003180 608393343 557559831 144723295 71883881 129232929 335107632 539626673 643780123 684984250 41076476 277429679 216498209 991075921 829944892 869682680 812781090 992293661 7828825 590883057 115790840 113079855 884894326 707538636 565778400 157682926 544032131 416315255 907010079 556005375 140280365 141400341 965370955 55992629 416284650 671752961 732539309 642658629 815729124 597116730 102145455 25391129 29589566 610283990 678428343 362151617 141798646 676393100 903832461 219604165 262041527 997508924 137490522 960163094 738926618 107738519 278621351 349318484 25579731 948326708 811169856 267596308 399245347 83299801 47860401 4259212 766090165 576081675 211837704 73494413 547406245 926476538 364360470 67337685 223647216 954307205 505667855 834148152 377315149 153584088 195349133 960705581 888443195 640257456 305668079 292188431 40640537 572989959 754565317 682392154 289174205 159877943 56496234 590646702 82515944 749537603 630061012 368709705 132001023 133529832 18261744 290502059 45124648 486232529 35172795 124213931 42769799 470911192 96105755 498522819 537436224 885171910 68813040 584277717 703455692 848560861 785037093 201515263 794968124 701238634 31912209 752317795 570691251 278797562 262189233 815603749 291388379 785125071 932917516 548041772 327654900 554597554 333199996 507104660 996866527 528491441 488388082 266605350 998061523 420112926 109883561 170628339 456556068 896042692 806640112 273200962 823307520 964115182 21343769 267960506 64336140 140283103 998044175 605712718 439288002 166510071 630194726 571535394 395188464 345027934 909580487 741643746 41606653 106574993 313136817 221066579 961408631 178275575 272771282 887756253 675239739 652212999 393920082 851481351 113841677 901648721 701568929 901375320 404514999 280953239 990729264 456825383 233924806 947917416 585855589 466897679 92893199 710798817 931011281 77275548 36849172 122434135 752447320 689377347 448119728 133474187 91079407 107646748 251223099 806963400 259848589 161749001 826432341 773296682 925043591 361704932 758128693 59931808 620286007 60211040 630332533 354066621 278118979 135480200 503032548 990125766 107968254 334944918 692404764 484608987 282214449 243830347 784830549 54118677 754449186 384045858 299999180 949104752 509839154 534170810 778091858 880942925 458123568 583678232 308198551 682818811 115177193 869589046 358206017 922046012 623937918 689256163 625236284 835040809 757813573 325572838 558092855 529820513 647450152 51743166 183185390 623839173 917439598 255021798 472161837 742331161 674841726 866530434 729478168 500276620 996720118 86656426 60394595 378364606 572466325 16893819 42660127 890167514 989412258 220165664 374734361 588818903 73908672 8973367 25415878 5461286 833861776 362505490 135047209 481743063 861006831 390252023 212318112 161703958 16203413 432452629 133982265 365824006 651490531 833658788 828477349 923833610 76227451 767654770 23697356 172047071 684213106 16715554 910526389 781036634 221545817 906142538 27595040 858362095 87593016 77614778 612652555 90407304 343230815 444017516 329814944 885822084 73278271 708639380 855955936 763619029 635589623 570074354 132562138 75281254 111599889 878196364 589384829 708709985 792362641 138082690 100575843 741098020 792994043 373059156 885231302 104950328 329031694 986262206 886545671 694032458 427989113 462336316 482172856 872698588 575448998 445957898 78789153 922214369 229251973 958266081 860431937 758325983 794358752 138186622 229115302 878338387 279212348 50312047 64443881 387125859 912801017 544876734 475666418 337790877 785875078 584291455 288241568 659904522 633274640 784229469 550437578 809202158 19110710 966342173 601252354 292644676 505555041 831085993 961894514 206051181 918441703 526228441 83749421 747456230 390784301 390562191 392966007 324581442 96682358 381458990 276755431 155904560 127099886 767268714 935149002 96536713 560947191 319421163 99138519 790496551 652742600 767200530 96295903 321788983 430065867 252517060 599351292 703942687 321162427 738645443 910682634 752797717 46370271 89680663 338227902 44311606 76814074 765594624 258590220 92233802 112861068 324337504 316548937 170663822 227761028 31963281 694425589 6140978 39548025 366611902 846958231 796850005 748745993 296896078 126721232 432709392 428122466 10067077 102074937 137286553 171769730 881057948 627579674 830694926 39290738 405048914 149833506 924939418 372479590 898109882 781607628 819306191 885508053 505184895 119567908 843543740 47100687 548657315 138404067 250154068 159204247 966290436 961442688 132330040 231254852 837661185 110130008 943077056 794227593 315424138 734098926 107726619 47999417 595407741 92392914 641897892 824213175 143417248 104938910 185555439 939374059 28777857 682966009 964329392 490839257 974194550 508954043 143954155 26184862 63597232 150189787 81726634 443939749 898428099 357892587 186974598 150003486 82618522 311267015 761649751 81524158 250566228 296981371 884246244 921669630 759684213 181679127 303218406 586526921 395535450 532002532 159956993 377456247 130367429 942297740 740751633 519716044 588472604 740183798 140213046 758445542 740126802 109051590 427596616 736513046 139168740 923838779 585839528 692075495 204175143 729722954 581243832 628423657 602066437 765465265 859286553 215366797 305948757 15175310 440936218 785117657 62637926 993410555 658687796 14292732 21739635 22596981 830136483 558775485 25498406 638232286 414055014 208337917 61322788 378750065 841316858 264185853 191570771 91447604 821087051 140334933 617141390 101401746 5312162 1371633 758064670 382762971 565414098 1000 847733963 658578059 199508232 707487303 405171159 202453954 805501348 419603796 370919205 913833564 944392477 531556621 52001336 296925963 165161244 806133513 591271421 25446677 689160493 685442551 497151102 516697562 25587769 22748761 921903087 336918607 897771661 940829987 281427858 497694323 429229025 234323771 984642918 102539808 803254485 871481822 138293338 884593841 847253721 742499537 221692485 593342792 996970016 173128749 587324436 111099855 474517631 116553220 796966874 530050247 19354418 207948999 111858981 143676887 69509143 857619840 944306855 960834100 398823553 27688012 456401149 780887451 775488145 11018060 285458108 805660301 526543084 910431862 648082969 417927081 888687 946774900 903254228 262170116 438888342 373011060 675667624 883902547 378267809 663302012 954834915 114404347 737799428 310655597 502239449 529573060 931676325 593500125 391144540 550800238 936295370 755438767 324176433 87842775 471409953 93559420 507150589 610089529 177064495 699743902 74552348 993210568 642140499 674578103 94229627 180951934 766552894 690015746 968866451 558757998 364046477 147143140 501234163 623402296 124728660 402002671 594005726 918101280 892641702 297161881 29854657 612957479 413985803 418653480 913048063 192691272 580518026 879363962 659692417 534667216 899455178 48728445 909101558 273758905 50261178 83150099 140334514 983330712 541838017 471264076 64722756 408559574 729438405 419857574 760730773 761160287 592016961 175633377 616799903 967045335 936650339 594839700 901483106 214690012 170559319 194794926 944242345 906588161 146485658 898055144 392492217 38165703 367849780 494626221 96045255 354223906 396434018 925194818 578517885 238249510 276071442 109097957 258270475 690772849 13103927 263904595 329865538 249292106 186216946 565093831 467044804 486274805 29912850 675547827 184787788 801190715 857860022 115666457 206957894 464459314 820914998 434863192 852268789 971528225 365333671 471005034 366327523 22923720 607328847 667162941 280199350 373092230 180845658 822262608 150042875 600752601 346323129 644822736 190583096 376399490 998996153 645240438 964294013 52123945 482523245 293109918 634225576 636758439 151346374 232050282 691873567 816595015 154843345 657395141 951851369 690221204 980552552 500118273 284475065 53084581 276987692 630912759 762819260 142780477 2442059 455939581 556039181 134337291 538061079 200756677 87524981 69360158 204181122 305026125 807120010 666870913 597330083 90420417 843542884 75330383 251103275 769972493 799397016 92595398 144943507 580809531 599292147 760277989 160536705 617021102 733907929 91083978 940201364 706124651 254895100 113601191 828133839 485881641 516938564 658754313 538058178 708288481 700930533 34816015 353909171 22669403 494751057 435740756 859209846 900157939 740722682 741237883 841456564 93486398 899480054 457327679 350756915 583630386 846438148 490208777 566544103 395801178 12394145 865582385 22307213 998891822 160947 50916393 43140599 793279175 421113054 468017460 740244522 132728408 862163009 923985934 178250737 542123516 392688080 565460080 110645494 909758860 898842802 519213450 600609583 701813842 178586861 38764146 855974809 357149167 96683008 202136808 101110424 519766633 826408376 357747226 971776882 273964543 239118966 47383783 185936632 509958165 268724857 797247042 377465399 581682353 701354981 304400610 22401844 127473450 943530549 454946765 842324847 641094702 426125851 640807775 41094057 39931194 659748595 206229665 95935198 183511575 804926997 76920992 897059753 617875753 28363250 463227137 178112699 257901946 862402696 240541020 177457831 777622206 131117839 408989995 743323034 461119095 319649459 217753427 315072777 785801168 108369838 268167870 782649506 630836430 812091200 819130399 808527039 144999492 951990880 789577592 487875653 505282335 412924059 854702256 313860433 280564571 887909741 980517011 397864917 412935618 41786855 855615475 19888374 695373283 85346903 312011418 220187597 710392001 357538421 45858454 882722036 165908241 491555235 834867419 73580159 619406699 786410024 484950620 443050751 254172400 710252627 356264001 96118626 140093465 26486254 51525990 523511513 292032120 646956344 151541166 73904848 602996058 913574784 292268726 54374438 701798704 674900437 203270998 786405568 403679376 346931442 319914625 83484241 85975752 282213953 33576988 850614746 421030352 1089483 622948759 217546425 93079911 26388319 384973904 909214080 886486291 898196022 534834204 682889906 465137699 623308603 970868106 238185224 576372166 226345362 977393993 247917432 75288223 922405415 94772864 178931475 623266201 323624009 173542676 834267842 53059002 609193284 990841807 747906489 404833925 952977459 457177361 616482833 182471617 182742597 223805617 679750154 263088981 24780102 370953656 420047281 405093815 948751989 100986453 222225180 319084756 346184277 143182389 304939562 459178220 791616047 706968559 377691734 426978280 876226581 625254978 574220631 954119237 668986040 193089776 978165756 902134580 746107451 689080355 458269723 366597196 122217518 135395865 619187038 702318171 664000063 727978084 257295812 635850357 905781415 984791971 881111622 274744694 212142654 9735199 37101750 749155720 265488578 900347206 20483754 112948185 117971964 561459947 604915178 131961926 295281911 19417193 613735470 421076354 714317096 19776049 804592495 384608996 594080552 923340084 112044176 624834171 994040448 61130261 193272769 943482072 811139364 757199585 442653281 828625486 473424492 319757686 554263511 24273649 753384229 646153613 513423454 28857035 38053955 344026309 888353090 61304600 80307187 172299233 706346115 516677697 171779758 258536420 75446315 355704562 286241654 849003856 383997182 826313794 416838069 224197747 935971780 6649779 259460506 8079794 819576087 768929638 4025151 992599164 106374158 676036927 426564247 323444138 915722776 547465942 579919352 900670682 542731568 777601251 444609645 378750397 73826261 423694258 871346520 416772085 272695558 906053989 424996989 284326569 227814429 648413960 921007124 142536727 79622797 136685589 421766482 213439095 100894388 443338764 696268763 386603123 899704452 976256975 666780481 723870208 172246217 420980884 92879282 185049617 92294343 260792656 662340165 536296246 98015828 773232224 322305033 841091672 788895614 159340904 773393727 239108540 565943592 919739056 953470545 157203727 312791055 749316475 893110658 78444170 179287106 92569837 483791175 338374087 100752806 22656843 424657127 579894043 565488141 139119547 630202141 454673522 253765262 47357019 167510145 851757185 430883402 472467414 93601689 33580318 375559075 539349893 445863121 431928534 421141829 194721032 385416965 109423846 736167500 894564150 462731201 42251062 775136244 595770471 509870114 642735998 666469007 885626673 602504381 607685563 69847352 104210599 614052824 559022526 341610780 594826930 791642933 794497909 890676530 123305634 845019808 591423802 428082987 100526791 445300646 997124538 350033037 11379789 164831831 195557533 654543612 568806146 373240371 670114893 670577501 82045204 160305532 75726636 519077418 764323144 283909197 82173729 493269647 708504138 255191870 886348550 450003840 990490363 995685658 89513556 915570775 528381698 464624069 870709632 634937909 484618950 341590655 249787267 758191003 752403206 98032204 762939118 16018049 147045257 55056605 629511143 635589716 661180789 889342384 535134787 470314248 332513413 954302845 368752279 209707820 487497740 194593277 70200530 534714242 512747409 971611642 28129570 163691945 177007278 347941790 783659029 82744617 929315901 38143011 421627152 331634100 741061475 135110139 287749388 335172718 112556252 857433873 48633565 314958836 32129640 74718042 951705786 666595491 899514848 718515291 132370939 145611865 960793066 344251110 642961584 481315133 726561465 452064173 840399492 86374023 75434007 35892302 439827725 922452677 722291005 940381832 683612858 432143996 616901765 803636211 440633252 150350064 786719199 218055026 686225977 262564979 132054395 147572180 459179809 191011941 650023191 335661572 914727085 431075732 214497081 73094187 235535694 891052312 736183546 250474968 325031099 23405583 110446082 84130974 810051857 335286186 399349991 707421675 99214815 498477399 645552683 561210927 581719009 748933899 27288726 847572721 91828272 885944538 163092740 383701316 607374037 944247451 839673116 236723440 363030949 304075817 389864932 800686567 209616689 712767137 210266306 834714780 452646768 113846053 117166759 601122618 604831027 166060205 369616246 708723162 263614117 162112809 10869085 454296202 941963133 556610977 830267790 868885989 459279107 351536319 337584446 614654736 962679173 122749168 184859524 386134325 857713091 752247306 233751715 278705001 294449017 981397876 857085550 18937990 47768057 454321592 84742816 57137317 254951760 512586462 868295095 79675034 563951505 843310003 756087546 195841033 659754041 37641203 79622335 833092443 43909819 555025559 421608113 328398921 155665300 60589734 135995391 656303885 652983686 793249405 376504594 279252857 997991184 546533884 741640914 290270915 188792044 450303002 925222390 85451486 730299506 512244481 359427007 537371598 419783587 252632665 227313360 637524582 99724379 989696737 225015258 142592640 526400044 405508609 164331390 765224233 481163697 104305323 100777803 610530281 375614356 893387272 148150244 613423225 697791969 607604750 30976559 26511674 807317757 592852937 263874618 757640211 555945403 319371764 725781769 516413478 690435912 15023414 229942367 69901347 647132145 29955798 795593117 747798669 743867039 94363073 514528889 199927226 774600755 333295701 941469306 587090556 251577671 500793085 681720865 436199408 291742268 942853245 308713461 69476161 578854344 213908935 95401067 44481564 135025453 252940485 395442584 593945911 98043200 151830443 690773526 406653297 921283742 468436067 885778736 117522527 911752845 538619583 365674037 1000 121585222 277284516 609404584 338117234 161064416 94005729 409885962 94941486 427195798 906734830 59553638 630309179 540147086 820124914 147087399 225195274 113205103 317621394 259438940 564176009 26632551 61249863 641531724 294210856 227120296 513498910 42804359 834011049 75693238 416089786 240933124 356874779 771184415 688586726 913387461 132944654 905204739 560015238 899429656 630860274 883961016 336574052 890986993 92179865 690101014 114164078 286279498 389870639 955506088 925104099 917797684 82865775 439155164 865992880 428129255 555457075 423010373 233320190 506530677 520110084 880955013 584689042 189553091 814789603 549665373 65226215 122126567 885287223 994823601 717304802 233182739 975766018 239263928 49693477 37299790 424318593 764219805 40213297 668660614 90996828 99287265 840539140 848032398 689242323 45200549 191405556 745657365 778983892 295096318 416690823 642875518 821268419 401055542 564755399 14203749 304930566 881686513 995764734 126785531 223160674 340670796 813361428 856066008 370061063 508334748 682108871 544746346 518231414 591806344 801588774 110959462 163283880 299680004 85923971 744057695 314972758 152141697 86468954 33855959 548762082 60645457 507557544 186944745 577776311 816498693 55028630 668626855 899528175 955913470 227646762 937680461 733606736 189126459 2220599 544787760 7006489 92297846 868637187 202319291 335130595 917099784 343907380 777288761 224580319 573825231 284315010 150147426 664949800 712523263 829412001 311233336 184438763 143092615 479488765 111636048 78547859 806591723 886322852 455146602 500452893 627111805 919565229 627850044 566413786 741473948 13478240 936950898 587209886 45093508 527100889 808675590 561270020 314809856 253926410 502125564 41196452 201772014 141146044 942701227 619881524 178467027 411782387 121435626 84842041 386935287 355475639 381911183 858810158 800220608 520420682 113262124 55991640 819690088 865578710 265463052 431039496 820868544 220666023 150744834 134522928 755578216 610321322 168919050 387665291 155479993 879247129 218392142 134014083 124516802 995910028 755281190 612695001 780196000 853487438 605983298 615992892 974191376 82655360 478691408 501807557 253496464 600632595 17417046 949662 974445336 28069955 904501101 328086881 104006890 637556404 31921284 101547835 515313624 284850441 30377786 279725864 75919279 264241075 273198523 656828448 985356547 479550849 748070830 800086380 895073159 780428298 898963601 135948389 61314905 649718432 273150872 137850933 228073360 164036654 549662606 80002960 595508332 154856225 57672159 609806589 845807810 270609011 605248925 907787379 610384149 393072643 678349807 95155545 728505066 861243543 598336510 137584595 679353053 465068991 381155758 494100876 400236788 806247841 988317643 653281184 145745033 73804740 696917491 676502894 46033447 372595933 472651428 558065859 55550021 159441660 138525399 689949054 353111550 702441723 4215757 906853607 458310262 63704090 128220760 934566109 79754090 7686785 262956790 171720619 147373401 331475235 479863409 331978593 617182202 993009745 522373073 690729415 125286025 312510349 623122462 229231426 47949213 772236549 873692302 821720967 799127817 834646977 407137048 321042293 863231918 447585282 769280960 7970564 571971354 232640050 428562162 225556749 75964899 290417241 514472266 52278888 532017108 429914583 576925235 166287346 106983480 61828252 278753910 959135499 59102798 249081329 70127953 471043869 700474128 160750169 63206075 34167803 445578830 964194282 104788498 34624787 119688018 922867774 339308499 713377284 546195710 595613089 774749135 100006234 263312666 104486474 744763816 694866710 567869270 415252831 361622908 668170397 559927958 123430963 555059093 153036905 881111199 627668227 89876496 672140528 703572341 452802164 711659785 346585074 884542491 603910463 312650263 594028654 822052582 492590987 314661182 69504899 696819634 582307934 713673956 687176832 926944824 296166143 986381622 919416251 64712576 769740978 548558714 119015353 884865987 496815996 615729221 75909961 284409902 493767613 37483567 71390872 530621235 414397625 936159557 706042270 37669644 876948897 599383678 139831553 464769915 789174753 902272352 850659740 190126781 929645332 285604714 443670615 48155725 432326976 662081883 256143595 419089070 194384354 938855124 109299242 837408322 941207124 375008231 137631356 136523394 406662682 885374687 316947498 150867847 515986863 348865090 271783464 974739021 415315445 597738997 84813655 536372101 274640607 22512465 745351990 696567875 168071538 743890529 594663431 108181379 164750034 102120104 31241941 20940683 393036644 865224162 804078414 229746082 248066200 745630010 741511661 287854903 25914421 310798654 640861695 476157698 687491862 583060258 210414285 742674190 245993447 667557238 123101008 467306297 315732664 343395915 525760157 624894551 570852206 397183537 846028216 475785792 440485534 167978500 368685440 16976055 152117161 363878340 946693100 602491501 209356073 176417714 219759185 733180493 17221479 568534472 168332246 361717275 951121586 984939637 324239025 989194116 679979295 326894272 708055127 205151421 971351673 878447444 794059940 29474136 260239468 725827126 761386596 416250115 736574897 900221985 782323957 271838204 290768369 144255202 716520027 27896382 2591063 641803869 542156393 273041116 672839002 991959042 58846101 691769389 696802773 347603660 436047481 752446797 461758229 791567463 321371036 37048190 632787595 654259991 683100806 908610347 15507575 813877461 155816167 177746709 643303513 226661245 935800348 797870623 661510037 958538213 462984243 532691636 820622224 119469440 814969335 606157734 188403408 111822738 451747431 625273501 705734541 556703562 387979788 141237517 170925532 400347300 878770216 356027143 493478503 562474415 607137182 160996269 49311059 285689499 372773337 67978638 574350333 95116330 14370819 45694371 358691766 208933720 526805172 453437260 843229693 805783066 471916187 245484935 404266327 230605847 864037314 172933689 349054728 333138324 464009819 66637213 999598845 752775 677577029 433272599 613706461 231553717 880225367 94250536 380093761 258472807 457385075 470219210 742203465 818282163 541339686 244202685 714751965 927354160 789371283 375187429 582397958 295525518 412643646 558048202 333113655 932119048 872003026 487020977 145875763 130895496 625787123 43618999 90918482 459105778 13353401 111125222 377595468 778018014 646932603 967460062 808061415 826337506 62644397 525464313 333124795 994598164 877903444 709015224 754262383 434375136 119466049 505192457 594855873 692240939 658486472 400202710 156277392 678935082 732023253 427860225 382369753 704462532 683269208 438630718 57515298 628603497 724313541 587038361 577383513 392045294 566812857 100336414 913151966 386591596 38149399 174883848 498144799 505788605 835263888 446046155 59739768 453140142 702539900 421883100 734729609 935232754 533342706 116849451 905994340 931021010 871958401 354920068 108554324 949975289 899232627 302926306 416725502 992825889 364108715 782057380 974791362 434575016 674182173 187771431 959753319 586926163 73264175 942556291 354079898 788851138 561202305 163013802 435874857 674754351 172078806 885909860 860509537 390502283 865088547 294777172 897526840 806350203 402005034 17557978 150527237 413703744 180185698 642395555 669206826 335023847 619600029 890833735 836249935 223242534 922882364 678841646 533293470 753908823 38127241 211083391 496275301 161484254 897223309 230270814 470086229 645185252 648040516 930088595 85125701 657269669 933835551 74011974 799429061 234296471 875277680 880683351 791031622 714667738 234230057 353801131 741520862 339533811 53713655 539244381 66956829 640743707 583663540 972462481 351743679 464222652 266625844 927141645 845939522 523253380 477767276 308546259 148763861 719753063 655724634 993438733 141057776 78091794 843210907 559426588 173920547 127761668 530774723 268344238 496078778 967619687 181025745 587598599 219647844 17479038 505188372 987058341 894066174 729004936 537112651 232395084 729893580 123442182 800636083 465530385 582586334 172354858 873752153 548431678 783885151 99949961 566950732 963356850 683462947 827503414 486396008 879064049 63123496 524200967 236334920 96439686 247826186 410523278 142852144 144558418 42427259 862949311 422202376 467528990 547136507 922038492 67222976 310900948 825467816 485906220 110119363 496993514 752349750 694563927 884515699 641056463 682614793 950747845 60378738 646503156 282717956 633530035 776805729 872539916 282620247 351528845 925997739 741098202 235262359 679701918 904188323 977706500 124273220 915399690 625795197 551177340 699232616 19809575 372786926 329861292 229588803 685892390 297581577 627156910 951983156 664673407 236514072 933803454 446501541 86318921 621834674 679398677 438622536 46877164 579935420 917482306 656907295 122272221 444150436 336322093 165140054 775186063 361863532 394179004 91797351 750244707 214177176 44420747 40824881 560810077 406447240 998250865 661216225 669257067 131019054 352441957 211397575 86093961 634162277 720505837 553925110 762633418 270144177 140914451 974348761 688671034 801854662 37293344 731366204 761564163 34520028 955355583 912441852 497061517 792344669 282678789 675856789 732435719 453847310 345691348 854557878 389100613 484920788 771364922 606964580 903801890 751131796 418525852 287396464 898505197 570958839 769730887 669345710 237462098 439957148 135266109 222959849 611596053 402466658 926167611 962823502 792778254 766048630 60653755 556050683 470421309 642635396 928866323 644926425 50511138 928844912 6955438 249311911 612517029 465762904 297658240 26798598 547470553 205830198 25989841 523386642 647290154 130439726 681831155 255232991 591685626 925147045 713328028 299150813 55070124 606804723 620854736 660513984 603777044 269724649 362617593 867834363 277074656 332496577 709498312 343128597 598643236 86229532 674113562 516973647 213115807 993575318 1000 244358466 834791418 945436737 55895154 828068319 846897080 90006303 192051190 337042118 232661475 405487041 676370841 639796983 816160790 751344248 151854187 44331349 748068689 151212495 766444260 452217024 331363600 735555020 305616027 477901421 419145883 194051525 542908367 56143466 60138295 672220939 455485721 896693389 293213581 440245774 827957615 67309897 322682481 182156732 423025202 628366845 645619158 940624546 145318511 167764151 314968027 142326945 423983243 183295108 247023380 801940833 233622314 48953555 252556237 596276102 675190729 438205335 251065122 570964796 346624966 788075390 749198529 446965083 53946761 538010913 810444386 558075072 18892641 87791220 410499003 227871514 204509421 26000335 84012812 15659645 637712211 780609339 867883485 304590810 466138395 763919862 571365773 42701347 658995268 953997834 890572775 365850915 135576436 94919993 984390183 470069056 947530585 527834556 142452974 945675267 231302665 641219889 695866622 732356446 740820513 325281795 604032995 60332868 841976909 52241053 382105208 215325555 482202211 112681178 422163947 180298089 376066231 499731445 301288713 384227530 771595902 320975441 174046907 411977383 635892247 576807961 733531464 840562392 391557475 774702367 954799645 83313497 681205934 740283887 959740544 10168110 81463457 731587590 655609183 343018544 359086317 637918051 625701281 716856051 323972109 61719576 221045651 129575500 290548240 759381383 126084065 678583751 72014591 888612890 770181938 332501483 15931771 714867170 122434049 989890224 102638618 686242248 962353049 876968310 679595486 221696342 759614947 276772746 657560610 679984647 990662732 455282769 912902157 245534534 827112311 276946624 745994087 476920043 482851089 622097107 873068267 806389875 797196696 404208114 116271033 102274137 716100835 747110305 851161616 92381948 795320801 221200656 887399986 672712726 610395027 136533982 99953051 515869744 61196619 93075274 813992662 319854668 347254642 490149942 538072306 445895719 219044469 37122647 782862971 177531158 613181625 296334460 656939044 55097112 389254347 348877071 791408637 95807065 181026219 973293354 337099193 158020335 920890399 640715571 297506448 548471442 678096732 843056044 247564419 745718129 324619922 624384654 804234046 748892837 784867815 680421648 901604267 421482012 756814429 147922506 11910335 27583277 18795059 724970296 354944196 496385099 118516329 254138835 278358398 230315189 107288954 265041295 766615392 130296221 309659885 871563885 97583715 133246561 758659215 319089123 968592832 149877385 45881991 625037227 711606179 272482405 590329697 842177662 130376015 481751695 889534858 722424850 296684785 637805668 499627479 290462948 768746344 671646517 176940653 276035391 756934500 509012905 996865742 16211466 917208384 537429167 562148635 142569043 95102899 25114738 746301107 429115819 564432870 841810285 247761366 396505741 269032348 295706336 49721757 151423138 320540527 438787432 593155592 604562491 103655149 750640982 732976975 410606133 862285857 158952994 331584292 240639385 58934759 857362301 669760846 668698112 205343515 860106226 170987919 715717380 97553178 508663530 246148022 106869921 411050899 818746959 260571518 755661806 295256989 398002209 365495535 64880298 307831520 256892374 751723297 465636252 735123356 208945141 124063789 843218741 544546814 579637041 590194423 833849690 209759928 34436871 455099884 873262314 954869866 706905011 606436799 523314505 557473861 624645264 521131209 103030184 885040846 422884850 938222319 81719547 809826311 670808330 60025157 709462947 414787528 11355730 698320760 191915220 786607836 876940129 490158782 827212558 643316654 598493571 617185063 849098231 201502201 2588975 64798673 169019156 473426656 317574716 491835160 362814582 358014928 573289078 93990212 924608958 597131636 91440913 608292504 291491355 16197486 372073833 337829159 646234589 337825156 509592706 487117128 992622538 983505118 464652448 630864737 776598072 377833242 415482640 568705348 400966663 314953349 871903030 417476942 757929743 335677508 120217634 253813449 892832093 87916144 62049608 85412923 468480064 950771360 511371144 815634281 84261465 748109939 646825063 91588056 749481078 928353904 417958153 291761385 664478878 455964940 175226543 487368982 38665033 825708114 552786813 41660757 428600275 751994940 34530501 698531827 705563570 568312063 619097383 26465664 525059581 909953887 639427899 635532646 760562432 877913217 865553123 120190401 860011910 177006712 112568155 304515226 634262599 728961803 92801836 897996512 657972422 880858112 709583413 512684218 330219222 162987061 803773506 385251648 216613870 397734180 983273278 98150511 239125932 27459475 339311411 929195216 355612919 582474350 805095370 109227449 844209883 602674339 812658319 953283964 788964934 595756276 650749091 518286329 615842683 850277449 886157982 474927212 966880598 614712913 992848678 652020515 267141145 566864328 951840175 776619942 80481599 340578155 736175541 22538482 384920910 41499894 832876260 146098135 988700522 222184146 232808712 947080286 9260223 977639250 32670089 314807948 506661576 819436430 687148630 637038315 784754550 117626310 52549971 662628290 798832241 36043838 850397988 57121402 228521105 117945223 89883438 167792866 846264239 546345695 48706435 376379297 80042764 916422131 221027632 263065982 712827586 449332463 32761242 231289698 295135823 273224651 270410517 204745356 153247620 92932784 220345964 723659229 146298084 113082201 496938291 985055096 466939595 824493360 210717990 593870878 193799789 729604151 976361511 48229851 454231601 923132234 129509289 904361938 546985714 744005895 308392876 126686073 351793525 212328123 547921694 390099852 68254872 77188051 517470554 994925700 918925664 53749594 867015630 475265509 879921415 227892124 151395464 731810452 136215964 496153093 320989677 168361977 978337967 34296543 5589777 24740453 449761606 371383872 668466711 964301683 61989973 397543484 833006363 194026965 324765075 326235142 87862940 398772946 856302959 427782854 389531707 648892887 516617144 621613750 4591629 901184016 461581059 837665383 439707885 584332106 477879605 896488450 550463126 739240057 467854230 94575163 936727450 27599746 898749846 536709063 430684427 289076081 42184422 328310637 133189443 238693624 302802653 951006923 355879857 584491763 996878445 811955038 969288629 96895639 428142327 197786590 567409508 650778202 658238435 150505437 720780285 738806167 359439882 749315123 448260897 421267891 907144386 439400219 660800122 574039971 954060552 849513455 632715654 849523977 79041335 247485002 320907480 355136140 99902229 145701853 576952608 634877165 782465082 500669266 1101738 423526700 196830361 896454502 292831786 87541768 83815919 603984830 402141226 643149603 827575964 517860648 863975154 448019468 762543006 725656461 327208902 916607471 585081630 169178060 412173187 943599361 308589864 467634031 90821952 110986712 889703616 51396830 758995062 360683162 348016783 358572730 714608102 258183699 991829860 56977563 476019279 554767506 734762332 156697667 310747761 642405919 31375706 42678879 424861159 593145797 123453949 402644456 519830398 142342328 224301843 142290002 132393499 983305578 286470610 432251798 611865183 726386334 112424773 795241838 472153300 593024602 459027221 123535619 328585359 130672486 784653053 620216064 881176142 733196887 793341472 758249604 429582692 383461982 49521392 137991484 720004168 326545990 333853413 16171375 649337134 461456959 407616925 24685458 265098566 721309096 343819750 977920936 382502190 406935189 337331648 118387896 585571401 187428498 860122133 62044173 136092600 862478931 753584925 618486539 346836223 76002464 145589755 216760354 131567809 910581525 519195885 437800590 876623326 300137224 549708269 873030563 795545691 342651974 801109806 206371169 312685355 142954898 839912137 885959806 690437324 676091774 420887628 584076751 292094989 692034597 450866619 991936004 750797750 298305224 579986482 22435943 608945612 29360682 127495209 958477633 119231316 738377988 127708247 496185996 756862752 537179840 277225111 491789662 921892294 418707048 128479775 952395350 207915210 725820247 331722878 678772250 442741990 688501091 461725051 460685136 665672101 107565668 739122734 297116119 703531213 23462625 183842009 867884910 105042898 866782546 531876679 100163366 965398633 207204440 192374501 525750357 21385914 495413752 735872353 44573330 24068520 823684540 305315439 235564538 472115090 154310625 757123205 623021930 58469125 964408472 266664490 319992147 957575384 444930736 534851598 215328434 314493813 740221171 709405479 617770677 579539602 264393461 872582413 788560667 261964353 336215367 557685677 504803425 119038836 384223996 851038586 449564085 195425249 410015220 380572212 919215732 104770148 32774667 308591405 987505920 99131535 865506754 61411813 35193325 279716677 160489181 294358061 472319517 584998725 609880115 686366453 942080370 281156796 586556486 76729014 141292409 533007624 897756555 506562410 208594484 934463281 485030449 707963586 503613851 745263793 90453446 517936950 739362887 368491926 920155979 770498437 77784419 329974151 263470801 803641989 536035262 387759196 545474753 36784183 128851233 839985087 218542172 851099768 445542540 594646584 782823462 233609841 173305863 684759586 309000446 124961173 519214313 355712472 96639506 635279048 864161707 817870481 241170251 852049173 274744369 680109771 263855708 523771028 96969297 552041889 355497801 290063782 139869167 268665577 126513566 229355626 582672099 778232197 528589902 362550193 272824142 313976870 175132023 616472407 354205441 45452346 614548385 197133561 981422348 572433898 802037809 718889605 864613298 414072665 675862833 362568216 979013588 108057761 745986753 246570091 314570961 416413038 592180906 996646198 606424671 997047889 929371754 453794889 877016888 611438490 368297662 766930723 158168000 489724030 951442378 71291937 557879185 1000 556513989 213429311 155545902 127554178 957345545 150753799 164254718 410758510 581079667 420360975 949704828 40382296 86470112 93223855 182267956 465910861 229994384 638950333 873623302 83123326 363502930 569759046 115155958 629868885 908186240 799533385 570606523 940649956 379451072 989436787 656357485 603162030 660273205 731293474 752066381 910106381 219284825 469023892 78016176 552921727 330143227 943298265 503096693 708314601 774603348 173753282 597314087 864846296 708876452 14245952 115819838 95234650 802417552 924154380 870674372 68224511 93104066 617449417 445474930 583210280 39739625 388217858 995224548 495923636 91765062 651198431 93394816 333624971 72014070 23231924 707487948 623348919 627864099 164729565 169984334 83475978 908985565 212019142 460425226 347963125 910495008 75772399 603521803 167325522 316443851 988428814 949030587 587483901 280394474 51154966 893790040 487278487 343839019 83343788 557724926 89956098 845147113 534763956 25046287 473413535 374788162 773447168 923078096 710861456 296175277 265994493 239350366 631092658 202284834 888162863 894013184 439567063 25635162 455431035 777909278 966603722 483023081 690927174 345338016 784775869 10533447 178119669 116080040 38878239 990108411 489264552 617542683 975729032 552184505 737366572 302098177 75186917 233683348 334905321 123557563 682999110 660811186 940476695 992452975 264723258 172340491 522010664 133864174 607764729 343295133 364393662 709533003 131551836 57610724 699649203 116249960 97997586 473310246 831731109 153244642 107681296 835006713 136883414 936422848 629761253 510360609 417737009 663231851 572483721 265081412 624961452 735188383 66485846 520503121 709921282 371508764 785002601 466265324 33537423 162890020 577172095 206083699 951582372 128004721 835620589 107309428 751735369 902236405 973916065 595737824 146090004 766442618 751528591 911078168 402866327 211850985 366860242 904830018 874682448 569909641 431855930 844991342 719850757 14983238 533171201 390654802 896674539 67523548 25024830 92830279 354563704 220574528 116876640 49237326 102537883 95202999 218707378 300634494 662566471 124031605 593793535 72231021 636305710 322346674 196842611 154002760 828227286 906856916 593769890 525674821 615518180 424835358 238580118 235048149 738369797 293328772 790341225 292565365 989368299 363804807 45936228 218423280 483553315 80476876 145978355 68048598 179255160 817459985 650724409 797864280 83603739 219444415 403558870 415484227 457141706 177051393 535468196 136692938 12275900 132364394 54620657 126160798 827142593 289949253 338750373 366171232 478931442 200974616 443284493 233728239 497266587 384202308 823041783 429060839 338182815 524987128 899781719 967531939 28083262 906676790 711846643 90970473 935255179 467926302 35387569 696711902 267910069 382841194 955557859 185559939 67082064 728344820 282602958 669274833 312099059 481717910 785962474 624331968 666174589 896036705 551739320 334519340 214068279 799377153 326075553 132150264 778282958 523717945 244771089 782998211 214965332 83712603 47919560 605158373 989612345 813395688 438607528 734685565 279082821 35303343 320613314 778387807 948513833 59971133 738894082 768042488 199845720 120387524 573037867 856307340 990976446 132801653 325271249 143175899 882125074 372833640 968614432 165330404 723818917 703878784 724143482 502486128 961160479 80962666 89377263 83165911 537689004 721968970 869272341 19007615 451598637 40262266 425847830 390298430 945257891 516273068 760629557 949493377 315903984 127720711 608878890 429061808 984062966 189375862 435247154 410082826 439056400 809305544 844767066 502532074 928468519 756969269 637760103 577484031 884658098 15232722 219337603 78405788 641195176 27555043 611541548 244410976 852963657 4395060 54779091 792589051 602982812 384176031 96488963 331184245 999436641 538194634 354259308 535636173 876849880 549081123 57968577 407388639 642471699 45624306 802210723 191889374 653523565 186498682 5110702 827730019 632330953 871768200 58447878 579098207 31793851 905872088 329669508 916024115 606599723 851107304 736838626 614050730 976029510 250339175 921163184 580297286 95779543 898682807 213265444 125060593 429475633 597131488 814606603 267548669 161410050 648580919 366030905 163369860 484579769 578145280 721449550 605079857 737621826 9793375 49931280 620025407 227079253 429077578 279504982 440312914 319646510 179333360 4313830 274652728 357503140 904241383 5879828 186894264 616928451 492157844 776921835 763488440 697553804 241120400 60382063 481218533 960849601 785796155 72565654 910263358 38664828 859057226 741799969 131174164 216084746 695522640 58351621 770249 538506013 18242002 428463131 223252066 545844704 442771762 866448260 209524216 162387040 356172983 448475316 859773634 270099735 405434314 891234839 481455737 751606334 261399560 427930900 25073373 260150104 970802729 196967081 875346700 296817639 130781586 823853517 313655679 526561016 427586826 152969179 944253077 83744746 847672203 359078896 896832217 307370135 735208910 33457240 345363313 847457313 529263176 369027412 173252528 293853888 194661515 812108795 936623869 930813960 25212069 715100173 992796944 156924835 435029469 786415444 450778721 65478126 646871651 9221128 78846276 273295054 157400115 872194572 330424327 218432575 221068430 511471991 104944773 772067708 408264094 467409442 11138186 122952561 479174509 838396451 168577801 905003647 931109694 700991294 773745298 908115515 585742767 561823832 362224396 221335856 714819325 868046823 867285172 12396994 400063368 690228209 899169426 93764468 83914359 555141534 180286908 15207679 743007122 876372578 675694933 818634778 807826825 107543891 389983835 970832457 109515787 704168127 676356097 313388681 856788801 904970518 557355724 285539711 94175449 978717619 333014165 842849794 267660605 621898586 982037652 219858186 850194691 876278615 354822505 353344347 681247410 581950836 68146398 55009720 875141091 915902016 640280388 67080144 469333503 37913941 226702030 540583529 167224446 739617936 40041087 64650178 162975167 981160044 245501999 783200 909964039 384182627 34289086 812077955 942374128 628824465 677019674 821112878 372517475 566379640 623742364 956550563 558440248 21293595 445970621 597152575 163061732 605926857 477511152 448591720 108507805 29510002 315971973 988561380 90927501 442720240 98925005 517460861 444629410 188335592 90713586 478274193 232471286 310472439 271390765 353190541 501576052 898975718 437218659 62168769 589922857 116524863 780657489 686259310 57028699 688197360 336630168 913396400 503514113 454702978 643812297 426139719 440338642 996632043 767393266 659000099 867842138 79991213 910054725 91337179 445106197 151913220 313178433 579067487 956520059 372499382 346637341 527375469 126903065 410987364 61413373 42966752 775091832 720635284 206212990 954791561 554163263 616071769 129230844 291128412 664854447 686576662 835727434 97161333 27978061 919583066 36973563 91883123 23838545 772318943 375353816 524482470 317254249 231281614 60450208 55648519 512504020 173929941 776805197 153695021 286266434 232972701 721410032 296879194 13477337 296234149 576795852 572166186 52929826 827733052 853061916 41317750 41056552 927941272 886097378 900005973 230573043 175329261 902692154 694657657 455574973 532533774 637513482 766683696 341275116 692557595 948400463 362004181 177957941 30364273 885647268 43020482 578467508 907888351 631805287 68469917 730442601 468396172 501882149 285902145 185128258 536986150 347444102 273697285 56105409 41349418 37236210 452888757 900502665 703550326 404415533 807926753 816469092 530384500 81991117 673614136 56923280 751003475 702569247 88057936 557324022 183339469 84291980 910455169 807838686 532713979 751948284 127690952 863668607 309543127 393080247 496600521 370902201 571651308 591059329 561770060 263849403 555030665 251324700 539816548 387050776 102407369 257939031 460032191 619048222 859687500 12064166 101620769 433966081 205657552 488098716 325977917 583355323 542253428 314648807 312675587 262099328 874114789 914208441 192403376 547676696 44542564 596573344 584407939 109888537 955148429 317862724 144248153 588791616 447040979 562385973 690412385 409864725 200175163 203181264 949347517 806653222 638389221 153443859 746463810 728835706 21654770 410498831 350933005 187742626 50852031 78494581 965154590 502851534 237014657 73797965 680511078 660125526 768664440 682840698 216791516 996672614 720330889 159705116 631580981 698247254 6072159 261407569 952214826 191526269 294874242 353733611 65074449 383746686 155089471 4359026 881824407 15291098 541467587 603656584 578478783 981038955 267770215 986787900 827577900 783037329 424413884 26325653 906148707 573604053 734841184 44546775 919987550 926343889 67352014 670321135 244648434 549769768 322254228 175205269 5396272 662395205 930280633 410301448 306514323 860245196 869093219 616271549 878077292 259674738 883989817 222720435 593459173 316138868 205808776 372918141 828122782 56056953 98899082 101866220 126467684 180686536 133638953 208870601 6381260 239327557 709248674 219069213 81212197 603848891 602321173 375537361 24667792 122857079 293338215 577955726 61852855 91473975 560960863 222227133 456938530 967778326 169708588 656712761 802910073 667501977 340667983 575435058 3358029 146718054 952689111 641059083 893852070 257562516 988075635 869394926 442192242 462549487 380505055 928588178 954183791 581153201 552785361 495454724 17954924 675297705 758674841 493857566 134914926 739110013 336382115 904920532 168657452 206647049 717299827 959291587 460397159 143684804 817723702 812100727 518970083 351378776 38419998 353547859 419661616 760734831 346025984 488630070 817678324 251651488 329116877 642237561 929560054 443245390 732634035 151328719 480462033 884929011 405168267 515952430 793493985 411669975 582081953 846625698 41084440 580285782 4006514 492414574 227735860 699432951 54823652 1000 878277710 791524600 605487444 192355108 817558079 239427870 182061563 519137057 212627660 448112459 642600683 482997678 169461086 732156354 4137262 588052708 156061315 94593009 376675129 89417406 747879627 115860668 286894644 24005453 165074538 531596525 751256826 559017263 316262270 949115374 357131189 714018613 435776070 737068691 861364491 760372533 259307299 639023605 331480100 441213905 11006702 590436949 993310157 302475342 672289502 51136117 408705175 779269712 812136686 9798327 83996774 343606163 464609940 236276530 482962474 266271938 88190692 238260233 330308930 523434707 976247028 864625396 689540231 104992630 593648461 682622764 737655192 934144687 959215659 113076343 11798156 123439138 253501568 773997424 93377824 410923381 322275131 899371272 671144889 432964060 84310826 836269674 853994555 25459929 105766337 899936611 386252531 180923885 486491482 388803531 820905732 125942750 21050883 670783477 474286614 786341567 88903600 73768718 341175029 514306671 109402365 776919120 826343066 133679930 368921200 882640280 49483800 796618060 899900784 219043325 198203748 408382364 280003035 75521331 703996277 478391358 188029184 735515492 295148856 121110685 305373284 861431721 562935977 32525413 270124480 139735704 387440683 698416654 467213927 297458107 482292895 500440777 406362161 651737417 538609572 371109247 776692196 274778855 751424441 244129737 924857530 247096460 107503694 46935317 73836249 630374046 818277579 120064184 757137289 208250848 222685514 886110791 901376362 572857218 718464002 276172325 119174704 218707658 888410873 954652790 677709491 162832929 68809071 861215790 165052434 347337327 658640674 897524916 461009323 187119015 601768831 668794082 947553797 10943802 636697314 693387572 690579246 641073289 203817971 898379145 589665228 105253552 7779858 546206536 183580798 820587100 855881955 284633831 43325484 32852226 669404672 349424977 495441311 195193710 31469834 460087607 191369118 543161337 798289378 22414033 998276655 383989203 692071650 562433894 753235219 652620483 943457076 136442676 29602776 244093151 302374918 80831598 325673244 310949962 512879773 841207450 223889688 61389220 55630378 179400465 546683039 489088593 216309158 728707797 123091618 738506121 620017345 126110079 138676674 519843329 55946700 704032166 625855307 108207956 497208561 304498083 177503221 400504041 916141942 770966302 903953584 509529631 963765238 893181284 543055826 812404188 613423140 499849628 46688297 160174879 647244317 522272870 849718299 572301414 163250862 126683075 914263280 215498445 111428611 501884500 230607734 119107557 546629538 787767153 105034208 427565495 308721181 11680478 27422269 259860100 284961704 544807078 88684291 702907045 956036138 182031623 570047910 346597492 153944752 255605343 320164752 599109867 901391207 687686368 116215750 60684880 980730796 587997168 220535409 653383064 430388560 69139457 810642830 162083511 796217215 715305624 95390329 488053858 364185493 980767214 252901384 598531387 711816003 48151530 625423507 49346642 745115239 880816131 725845179 691072975 348973554 616064667 362109993 576743746 921232206 333358130 371963113 459980132 442026388 963679306 535983309 637717378 550510485 378749329 848688951 313735545 786768721 338954234 719433228 128028238 240098449 583479674 119001695 39733863 785819842 586378612 588376349 941866513 297390846 23130287 193184363 89334894 124720638 529784380 644058577 355815636 949269288 685444730 776836828 20695737 714664244 166832992 837126025 772145553 463485013 71380271 71485322 588310157 255040491 448314055 71912036 316641545 801854715 791083162 956056912 737417926 546674638 179476070 987519125 523491852 783354676 780076460 742193495 944378362 406347477 222852860 717641318 613379752 418153330 838509831 198235103 201677492 66106846 965687277 706792203 893977008 566910670 40143315 579925802 728229270 2425223 221666337 778741125 814977802 87935573 707196171 131760794 901758 877043324 842072634 956013382 523260450 968951409 354096537 34310211 89559928 992553355 556474894 555719342 902206869 131564172 584208186 212949813 914854870 69675202 171354947 426764421 438279220 707144762 947943373 999466509 435032154 67314833 798803403 637347222 631219457 357410609 909078137 320171318 70632952 971712291 469759965 973446445 193541726 802865191 579869304 763398254 186528564 988141229 870737038 346615395 864840955 23864476 187898304 529825694 584073026 11571471 301274545 432003608 962816709 386143616 578011779 915314669 415723428 126064340 640778615 744838075 488313413 123204648 557514823 134859905 46513214 292887314 886961675 782099542 787859602 905392411 136806331 757545712 431272723 769342434 657024399 799217643 125018554 345303689 37466272 271815997 383586882 801982065 874049106 26522471 82599172 420238160 641027190 293120786 888701459 728485170 761636405 272036142 18517288 338667961 690970780 476183324 672198639 522561715 35567361 80977213 389113168 674028303 759391040 977105908 420897504 199215850 222098195 623449815 782799931 436155994 831631786 806505274 918773004 396422327 549405778 523375893 379123408 688121764 808635717 22202674 698137883 565603387 85856654 141991523 491231562 420895363 212523565 110478796 184754092 21830439 221917218 68114387 506325382 680029127 144190877 504873278 116773039 73772346 382395535 626556485 334041009 269676285 862959275 114743428 362840994 262553562 229707101 384742567 647632391 526628681 552515120 256012533 443440559 598645939 759266724 692086823 677314757 161706913 784613714 319295623 533735042 715717946 236096180 269403623 49302790 847614725 890659305 219807653 671583278 28230282 973149747 9783570 265170617 900387556 710978088 77797479 177500883 461525362 438916165 308742517 9012751 400146007 397527735 686587295 945526078 508973116 560821108 632530706 341997229 792680567 891979957 423844592 366016853 137259241 382393236 935573114 780792166 411692814 790821505 89145270 110070699 532470465 973882954 71281824 941693124 945588389 260639880 272957000 475481044 885591245 767881048 198368058 682557689 430987077 605337250 634753342 956660384 812074886 886256129 893676805 529894257 549536317 159307147 653271652 541155305 982598689 987684757 812347494 11827502 176379286 36750968 16876142 828620522 52049046 295207399 293278845 839189896 788171794 943403323 769527495 549127034 791767919 910451421 763656350 246548575 73377481 545552663 266062775 751456856 90713110 43722632 86265546 179287866 835439282 811792058 973598696 170285622 184318692 752516666 496282436 805772704 285664445 829894661 771831496 506493717 564742450 873909254 897122423 679422976 866304873 513474079 688938875 329796799 80703230 120219084 809485655 9736300 955381131 804332667 16466717 371833538 22468680 182691878 541115066 94617227 685576278 326658967 990034332 422160478 284133414 508436022 168996149 207731513 32097851 993982046 948827541 199111917 967168014 257197639 268916955 716910401 467945097 779832968 205698556 637705645 70626881 454644739 499883505 667579385 58442371 256319553 284917064 530475822 687491846 279418165 85005198 992078867 507297320 91520298 728388329 965274678 444527374 921505355 293243406 705511692 187803128 87860479 940942225 654690379 35070204 474295893 280838161 818444420 533748707 607945773 792201061 43859234 912703604 23734530 183649987 616087698 692643487 573470483 811442836 54012873 446875915 123392069 787454218 67160049 79686460 53922327 316308934 114718908 568733564 249018373 489750157 930010717 199166233 217654851 987741083 148825916 450093338 13331964 634637139 901020853 725381835 712406037 378607796 346089636 803643131 12161523 129505983 585720177 370018391 886739949 653683313 993323946 39936617 725033038 296734557 884583325 384667899 698116546 280358348 10397423 814974307 14155597 149148189 518038854 29324353 220973887 198767217 322844740 934274823 100728074 749880999 109466112 253822182 978811019 225055188 302072960 966046877 63459881 782348151 382676862 19832638 502866208 737192319 816148093 135183263 793979572 753844931 531623177 223025080 138814605 893208191 206962316 97741506 181681894 92116708 607053703 60140006 900365711 980238343 661361897 914397209 546098220 789369 74691270 235469054 762818745 45290221 166413626 853714778 998381434 987679913 754478684 676951147 25154466 223670287 900353667 586677518 919525189 658898914 907174664 563546726 160351355 426566747 64902804 920625849 386755787 729642054 335958633 605364142 523322586 357627374 609112454 879130856 192449205 38199452 474841952 517305799 277475939 833531138 252066930 90427749 78080071 66086602 587958147 867339616 870360738 506993162 62092265 103797182 35336681 757203707 629371901 565824125 85369961 835794302 872798204 352172609 954262962 641929021 566790357 729178025 358951916 567727140 259152342 233413336 793783368 196698259 691213533 217177 560981154 476277322 385245317 921681316 219072677 725526512 5745289 971577656 288912280 196810278 610633299 288383324 434459633 899547477 444492702 566613492 134556829 737512165 83399386 186564913 416350826 464598352 93806889 609403257 83770877 21959671 348073106 499810687 337075156 13867444 549742914 981035680 481933511 934045223 964590736 700686652 101831058 574018827 661769393 41317889 84602296 367367559 89988467 135410664 867549937 668230976 823468980 214163342 55031464 456256908 448317517 70250031 79851478 584815844 611066272 647574234 626087551 886780632 878285768 863373947 264864218 408982642 375826048 979081867 234162628 87506222 874895991 768612097 79700077 906256678 404497971 664394135 429610154 431182953 9189560 364648163 923990456 82688863 157360799 450193964 453511643 60810440 494057544 509567267 745161862 41104883 671264066 707132867 23704059 886275698 12919046 510847904 291242410 27752003 794124498 61170642 737898237 433730771 244970016 633639497 113456728 216105390 596680450 514344164 663138807 826773581 975803881 764413850 457483593 1000 736600823 398262259 317005372 483003932 179809773 241091401 765072297 92324568 871581698 306483577 824769637 296676853 16503236 449914254 184004745 139807888 354306467 25187374 521544341 442381467 798893467 759496891 922493181 993957737 732427650 941019512 351639891 552265742 352511323 718545635 53393356 139758385 245251553 630702259 87945775 353328738 812499123 22354554 119631239 445189213 530592307 252930237 609164340 91440464 296495142 388300112 398837611 587711314 544640817 831830901 129514792 436154425 487023517 195344383 884544746 714664678 923579890 772795521 700684804 32698011 490787228 640268396 531844058 871089105 120626307 908044143 623422319 445806627 186140639 538780371 828827101 936566190 85994321 463113854 453613853 536896445 475847797 218644564 285935826 767534565 483761894 960952 647356997 547964374 224944733 998976659 224325181 769459403 202359657 252757263 638964136 677166593 500469164 939240915 995208878 567361790 16939467 683579592 112753412 168348442 734325882 972369809 288096191 965047993 45924172 918076147 821344970 122274493 875993484 245809645 933805618 332413173 836319599 456659980 59004878 265599105 502183494 13865227 890326230 914046093 620690953 244626214 299975404 711227254 99678180 971293015 360385503 204180128 206052272 898260143 799457240 632948131 121863088 543045876 49694534 907597469 594549294 468692053 654958029 310079807 107993174 891599550 464303730 750897632 855027437 315997352 770475013 28242098 162748822 821115504 286663579 811411657 541479385 64036704 768985110 369182374 418736528 308968340 670955966 439161833 750442590 130361038 650497867 304688547 752511919 256482928 355181301 641502492 166217309 347221325 534670310 76361900 417638582 816482988 355555454 343126260 687446454 54683941 926285350 466895576 42052948 117353989 929272887 231518771 415764 345584930 378124952 63443510 663851982 667586557 822204771 898462474 843418500 775269318 575666539 122594697 106392531 982986947 609137162 713315504 184566240 27852678 560076091 619521174 915620199 804295365 863351983 133493409 924442738 75751548 406412406 329714258 775208317 625450734 339338702 630358002 559760909 669178390 882393521 318469691 23046730 61109211 576143178 652387883 401292781 130815220 124440173 904840493 494841124 248112221 920032630 884210873 342497610 325213729 148472788 768094459 409515273 455739461 214323549 478774851 708506155 507032682 296408534 319285890 322883449 7576442 470638229 654557086 326109136 5679335 117682422 559107848 492273858 754038138 615805897 473153064 48966695 290553464 265589070 542450455 652125112 74326570 43014379 633948208 373922730 145427093 338596539 685461932 109586922 558444983 784353578 973477369 660217 144779251 234937676 508237755 320845891 226980426 55926637 301238512 964881153 240121933 348199844 407396860 12970545 387097111 64157714 516475494 182847964 760914635 677830642 291419108 90891507 422412265 19757619 417993566 6872986 983337883 119389125 826501156 20531619 601882174 908124761 177435283 49737022 715622415 88903777 367297581 816459527 81266929 52526348 883747669 813600794 533169483 716881572 127760025 994715865 845114944 51491647 109758750 560737263 566210384 40695277 731979920 722772640 225334432 238275012 460877036 148564901 440569343 525504177 938681105 338224684 107800002 55279951 233822541 658218107 691105728 322072756 305135348 964861351 452313596 211979763 163027613 668433978 870592581 250844005 167179584 810404298 810370411 155088764 781065001 644089162 83986820 478275821 617636314 55950598 370717955 189214591 95441094 190860854 329516769 563742752 427805858 190963056 102221187 416127232 493915636 107084656 265445629 695775986 61726210 447412022 772055850 829586920 756535681 155602400 17147939 72899062 215835574 181388478 758652285 17357445 76363097 554315598 935012490 462313755 387674397 280034888 845951737 888426775 166743489 570105864 261611121 766994775 606374330 429815250 319061377 218679399 256861976 931697050 553212721 393015225 765947468 545839283 450952403 379897667 265003842 180248377 204366136 130489539 853253699 91647372 736031010 155859237 288855543 139562785 131521479 709449421 902137780 617922145 614122442 582670791 73879267 708263413 815506693 814068714 610435911 450654369 808372462 71060666 222153056 831034609 853626833 203902720 10143424 319794762 451051236 76105111 37980301 953306835 99160675 959384126 49994198 42327320 325043270 660281751 35052955 88232737 819840886 678650856 633568929 221912600 20395744 261269895 293040942 662034041 678045433 560270241 198714663 855625863 14689792 642924310 42319974 765438426 196249224 348925061 611367099 945767860 461416169 695813907 568217643 282612449 366269464 429751742 469039901 172902885 726877225 12217127 468970873 13093347 201536982 131370039 22394501 758191252 6104083 553549429 531617674 402380017 134417383 950045369 6023283 627642069 410338500 754404928 402497014 648246158 159267938 350273822 957162667 948800086 200168539 600477726 110683644 474839217 839118745 475093600 480325634 846750314 771510541 208658909 46385190 240641372 246162319 709861919 255145915 608985472 799932310 39279804 516383726 943264059 359550921 606394753 782045956 38585020 588970045 188303134 826848474 714650618 40487258 578023702 355470645 331438545 87036158 16314107 655749142 357423477 361122162 366575899 910972323 312963546 934085976 175152877 505640035 216605765 612588507 613498180 8642179 59955134 132146401 762970893 225521374 209212764 39767020 730834200 660487683 804560163 108690324 62696246 784838606 379138968 238015334 266837464 255403699 426831988 725194934 399428261 283942537 893020720 562962794 999753061 641374744 45847441 762452312 284053857 467333113 491684486 38047366 776919679 859959685 193430770 575128584 995947715 76554491 36736519 280822914 390727296 2538359 820547209 632680632 237308181 284764055 483739249 963733396 203782201 776654536 864510901 886245351 687044431 120478723 590129267 774391573 591480449 291535590 678023565 425858852 439011019 512949188 315308520 87164823 81519753 792381778 346660718 887483052 69603581 332731694 8865804 547095540 442645342 94130336 369361443 360313576 905978120 560144523 560186625 880595904 778042839 41455806 749241637 91215751 20819417 58371599 186848435 63328457 909351220 581352871 5223052 190608837 577705945 155711957 341677030 91071130 736693888 464913608 24096141 201087693 748371010 49733945 761035806 975658075 898565703 475474550 809511764 351471025 820738191 918289443 828242971 112688133 313764678 671746415 310842955 112941894 662795441 839593641 173235016 961974720 957203155 607327126 756984812 340080720 661902583 773604242 648455005 41303986 167263299 315994009 427062672 922630665 81105775 788025567 294734640 929910086 587112100 437779537 92447588 958056852 683033390 880959178 709906260 803484190 805897893 666825156 489019283 8393669 720093567 403538137 967321611 479203707 461424441 298503418 418507035 203020762 55195982 428755759 450292188 45405782 68279671 974972567 72236260 49851825 627219722 702945631 673360017 983986713 862675535 527198790 20113308 243454446 832796732 12869506 718718838 664334992 21964155 696284328 9302820 301279616 397400379 292402980 55536757 599610288 234383152 774394846 559290942 581047405 789591604 602446201 43124943 181466390 135984868 810331608 758700167 118742978 947880883 904708641 199884723 117141879 175190093 16845272 634552659 29026466 197217059 472274804 644257901 69263795 374874688 600388983 707419833 111940039 86726172 930380084 206462276 665549894 671333884 359995529 61263789 929128364 314024072 85965780 685792384 975843352 35544721 871350890 39549963 128422366 21086300 582332142 408917789 691893040 191345206 715722018 102431357 196276392 757271707 172333340 998654350 897257632 912976643 664378586 350151288 897091044 572401427 894279334 224333260 833315811 971589282 244585056 442937796 940247774 283205511 504760309 643244920 408411627 957900353 145011332 133754150 24733852 477051682 665828653 723128911 194599903 922803646 472756157 59839874 71478101 307962927 267198206 5206996 874214180 418013515 310602481 643007184 326862328 529124882 60413329 81689795 586279269 694698202 51331682 229981766 873237133 251588186 710410374 377309640 515770093 6537756 765207299 339350125 888624902 777346081 701945775 980497784 823797575 379022371 726906561 583178526 143052908 546233821 910174430 181660890 706294576 826303443 35873351 407271013 759532673 737863871 668310793 326554838 31096823 20266485 418796238 588181205 740409783 354630953 735396616 753503127 128178135 54952891 893551926 818234613 613946865 629862904 278426603 138214038 540939396 237143221 704947489 437788564 39526306 736845023 145835571 161769483 405712653 766938274 580011081 99072529 234131549 677384778 133647355 66459999 161716442 391616900 410657922 37553200 409096106 658737522 395648710 377001490 108981417 93464944 824854698 350400788 810475853 433032508 177345820 105962622 874848893 827376687 401228811 919021929 64727174 804201860 626905947 695624113 711186570 70008682 121274022 245307209 18663620 752318394 665870195 328558948 167736893 383734691 546676447 108730096 99254374 331765596 317509232 411130034 362648392 339903933 913012713 414303571 920527186 595759313 152335553 599010369 39347373 96517884 936762396 214427983 152981793 647049078 674766659 416460661 262699532 197639442 763464116 88253877 272844426 194991388 424842631 648470307 370822770 525739978 825079616 792567705 692896515 18351250 654763280 805903577 937419370 817555147 180839599 819414711 5067829 27574280 591013021 373532549 516059733 802469818 969562033 218246875 337752708 227770361 892150873 736260421 840118635 565154199 62759217 45567580 249735024 639748484 142356358 549355829 135871442 184358410 645445016 76318591 568008586 594244702 720580256 88283530 290287129 483523579 36232938 22916166 112700811 714630647 341381888 1000 125981952 855882345 870353490 402669254 690249798 958754950 610218719 809512409 175674506 91336029 296468560 45340314 296401001 91830280 112720797 41820922 232096786 781274196 142171592 221398300 210419279 960317590 888171154 379110592 647261344 948719744 603818456 404613119 65941879 275271140 707352318 573387928 508344313 465933339 731851424 566016108 569784779 542611802 865469070 778027836 193087497 674326195 981004792 97708138 516535572 423963454 409338102 7128747 893640585 610663358 680797550 801648513 805692953 157386054 525901183 588791954 17122487 20653582 926034682 88068015 403595841 441339432 998434945 809974320 392029004 815593068 197539743 114691022 31436085 81101709 574063213 767660433 62929171 65089758 675999495 42265792 447417297 245405898 334259158 265491229 193559633 116493569 220180961 224515906 696641454 202253062 371455846 354233777 183587061 864419233 644885174 444271 188436252 828521848 824638052 88839380 914089645 562603974 523946689 478633815 436776306 165384735 902205946 832010907 510383 587667186 761996929 160292712 526193576 269922698 300125268 329844218 141229947 37876101 198640990 509044171 916733097 483400744 127084604 393513858 208393591 492995730 848751505 895352277 268119941 985041 456921308 52411614 395453869 630711901 570516164 725130800 693319995 366517657 328108839 873967844 815735514 689508334 608051499 995437711 618979155 760636162 581425466 830836588 104352195 897141372 705352912 275044215 549108802 349412639 645583631 327873818 863308696 413986958 264171299 632643090 610286339 405477138 993908725 711922706 298882163 163061270 443379969 883042335 801500761 406590245 306300161 185227261 479663952 84551310 745071367 719564881 574079745 503243780 110288115 449537861 889366316 926691578 233113740 392083302 987400983 184368213 140083013 113285801 21663839 619754146 99340802 711767301 223337525 132235676 995213944 93425696 652383507 697439462 16011953 967990338 392696756 376402904 871545396 301337555 681400365 471888742 365673419 100694008 37085260 884371460 739271835 898367514 281858204 114952967 467637677 627958184 159795889 565922970 147785213 594721760 558054224 76434643 550129974 872460254 401808327 440660487 726546234 201053106 385159898 6596570 301752651 447495869 751950322 526877614 894530141 830058357 129083437 119577413 845187470 242013508 239844925 298600268 367345510 250369328 123284198 927284608 230654214 22675458 561960202 908568455 202524986 404084574 396574971 614181823 984551920 816271480 471126038 660862365 776732137 866808462 359562519 853203984 253283048 956261780 861602246 333867367 173505404 927465660 743967348 949191304 349770203 362332298 270374930 259516924 81560727 4347365 431693100 336397556 963333664 78516746 695413796 37762459 40366093 69014643 681277816 891486320 763209320 959297648 655618541 768329597 504317217 134742969 347063242 844157243 605012635 618983153 348645973 68521466 852469992 187433829 550830619 326825153 272686462 9665802 12617171 622765191 860494238 493272770 314795252 612931942 867650240 53442184 877600661 610462565 702545702 127077742 276795993 130791915 19379768 82598732 757388229 341650533 204969065 121182030 284255153 115665636 372355548 204629773 605735448 147274833 532452991 200120172 636672654 452924217 126001422 756033802 571370036 728308436 70220171 30443644 680117133 640446970 955038469 525393847 850241120 689300709 49666449 107993981 59804717 793946140 394804925 892024439 232228305 78564567 629305752 972637777 427290119 85508716 500413384 59898880 476219560 428652338 15878618 526790559 925501416 248763924 815620931 498419515 827670097 93840339 418254919 9500438 671338092 372118930 367900805 875631667 251104998 175480677 813066901 89765462 84842937 739808363 579897118 323954165 848106218 391735314 483708805 351389295 989192615 95052930 603560883 182111287 702460341 865696152 875227716 331989314 176705598 986022234 148693730 476059217 459185388 879617797 823811235 108066397 310804573 61250490 568312243 114991548 511759716 223411355 968096180 47278945 278261192 521433772 531003945 540210172 35527005 75986424 861439016 168008662 99178910 280680386 164673860 129766796 110743472 853615711 782183650 23478634 115952358 261508760 934122255 38902751 101144197 786086655 78887486 291422965 733740043 614819879 497211417 226256650 394841858 846363953 238817370 537983268 358455956 233857427 855855946 393975116 259989393 636506942 412530628 940903632 511976962 673862079 383301310 283181619 485991816 105767925 56608803 769803826 341477403 720179007 908585927 63463822 269806243 441031264 101506637 450294438 542431260 923297716 29127397 88321073 115801803 183561311 361862871 903910358 897527534 136625662 860092806 264417978 77777782 590605571 510925735 230639996 46239904 352737771 572028984 966115964 573863912 750098124 924052097 240111376 965968345 23407389 613901766 717022786 295360956 314269522 872373898 288744570 325535463 84988958 390229143 505086979 476770779 380556375 213391317 966753452 564086333 697571735 897695760 159050779 49550443 875659125 953030956 224112444 679122491 65640295 917038790 544330211 68479735 390016502 915246591 952667553 892816815 153188530 711071686 521377103 351436848 621549699 440621893 925933940 35038004 7502918 555136484 46751058 75916839 476644365 88880864 12879530 417641595 235360528 447219627 330226654 324660207 63884456 357278648 93427836 751499637 226162734 254429620 647369417 503186873 617549350 727648288 152490844 767057369 909374659 53258657 984089913 523276435 987549760 103223304 970271631 223941947 858113581 730896197 301057862 994609093 338116079 856898055 580145456 523765259 746937356 857236399 799013648 99749509 691550962 111097362 40610862 259111040 7108364 652697635 718640620 2757115 235740100 71138591 553990182 954731037 368727424 91474726 409821917 774035704 69430940 442121675 182127290 858189199 934745951 189522797 967352410 769660675 122180306 575545822 139556257 217373219 822177465 380592504 440871358 888600446 776930426 299236553 94385985 236369378 182169893 745325040 511820133 653679647 902319426 620780186 478520536 290556985 740278742 188896056 257924932 780962866 380812935 584901932 534866056 747798775 422374689 52976851 498387088 829125076 23914879 8603017 250411203 673917013 144673284 92261374 59935434 26975583 160463738 738228077 809669177 526625108 639210504 58945727 652184316 332569942 251080419 706480085 293836949 348454352 372146334 145239466 486121296 363658179 884751213 351495970 716958149 959117708 30391465 130995217 632141908 136982050 525920351 964900139 837571668 823738664 265645580 73038557 240716428 140630001 57060367 514438514 660228433 693592129 54760424 28166255 178349533 309404704 905587654 795909962 345409440 577482832 598143631 513069471 477287395 793692219 353852343 776414128 415057963 292481426 63809465 58827091 509255917 471122998 112935251 804671423 826495823 76316444 464509897 2633969 79624234 631360174 16918507 760478342 67986011 681367838 2417905 609629031 542537475 715322573 481124111 359239042 391781644 312459071 734905004 227738083 566244059 739039685 121119178 79294047 981163445 448616928 699148854 791894910 850726201 331544836 90379316 765410666 210990985 95384507 175509408 703098663 264931774 777829615 164163480 40061876 525464033 787423856 619210223 772242705 514838326 54370394 309060674 594467765 624793738 37360864 67212255 243266449 482965263 635294215 200830288 685213859 5053652 19931696 669656319 698977170 855468485 781811375 391413622 984510234 689350049 173560561 669464230 294093483 231144934 22249053 56539279 59369983 580482795 49352248 507750286 355534628 16719567 18354141 83223155 459686174 736665906 603618319 138650042 287693263 615499874 114285825 45754235 634718506 785220778 696018377 746806067 714197699 83090812 910965345 285823949 388227362 128817670 805642851 392694466 207470835 900439812 342402730 399046288 393577477 868629767 273436300 540382902 755479783 671775051 473113194 382371933 455968017 799704172 680757844 734618431 822349635 655591304 62768704 838661375 695803746 565343805 17614667 423035996 285368787 494011222 477997728 674902250 246063840 117740067 588106283 362491247 301918323 375444680 257469955 711016424 14259295 227018134 562134045 578412388 96921609 441842639 721593210 154477820 204510274 70816557 853816494 649658030 42069602 110949608 716252268 551615913 753903635 344898098 520903747 130953593 730794428 241755450 840355687 57161522 433369418 613349216 732324957 44002157 897589921 81343863 991129583 653256013 826402870 452410055 414249125 592604161 928004044 869398324 790244881 390154488 154140264 311113285 503239937 189580266 994876611 637205371 622868307 803030228 931003953 515418925 102077202 618906549 654408481 219704883 204730031 894582152 609535096 22949799 501451759 636582604 422694005 442100676 62434044 780058860 248614592 938395174 746706426 68541559 437121956 726577460 160306794 111663679 360789205 177237169 962683186 825456237 743889696 569263691 760381164 263852061 388379751 43015634 805639245 832651618 114268558 5190850 485638636 53017115 834598366 184294369 382291946 418826005 897358078 584915256 555935699 478678914 327644869 652373698 220490400 943573432 197237679 702682097 56707527 166496496 849232149 448208204 5827315 447930880 160303436 249250542 52298733 510991924 632368743 505027741 924131075 140805926 423934947 547842178 26606871 71658361 151267210 242012438 5911229 122435024 75006219 990968500 271653207 191777320 602926124 76618022 270893913 904577510 615742533 984364597 961919408 6086531 663496332 698184097 109375790 539448800 432244997 207675787 263791028 623712167 129048058 512368604 308213469 487275582 957189752 596055536 942139453 717914902 162540792 139310906 14907970 657686545 375933694 851458214 543453788 21679303 358129658 941394416 664945522 313659673 275122651 891537741 538232998 8514566 381572273 519005497 1000 991108661 919650402 103688136 243283544 89598253 158321727 93936481 960244586 254853391 337852189 937580313 205880351 835905902 316016213 860456638 834858292 171496367 689729554 497646117 891444041 410910533 132479511 142744212 100558534 475944464 297729582 720725691 670267912 531472826 114045411 976659544 238564931 432873049 469135776 951575715 253904384 49333825 902464060 211361632 197091272 201995313 115386957 69160897 37687442 617583304 974929296 233027690 265743357 753392641 283453833 271457976 324437720 293087996 77976331 72865879 79703031 298683100 883961886 489359611 771035433 795147065 202221466 848529918 708301489 343280674 127954174 48231224 260990097 57891497 541304130 595983427 654473742 89514124 483334582 297785787 834853207 21082780 474427507 825183118 124306370 592485336 591297152 679301139 258881741 528293939 535841324 49345427 798877891 287138145 957332057 998922782 304580097 471147235 214637521 552539026 22797255 790980383 687114250 641371801 995517950 747687859 705394050 128057893 961347593 365535104 262359624 25996879 175418384 93326680 3640655 506972698 767211895 836196953 607261463 708539664 109415472 913313743 878696146 620825348 363443199 705874757 64964326 874236366 271927067 406414572 999265467 71905385 142522284 456845733 333486379 743388235 329276924 793231960 418537228 321709541 143557518 857506984 293745194 672146072 310284622 260486205 238642685 325354126 407558057 804583614 326213479 83639691 656209384 724450544 545289180 318200681 70566912 155328504 622744997 158431793 945925722 3446895 619026097 177710137 597842865 114425764 830530753 119881305 676575938 106181804 581028934 238611107 468674138 869843392 737692084 243447771 330632541 315403495 88597870 425175034 505799916 346678371 375131413 819583300 564066822 881815444 767082667 379433488 471974060 999212431 250465122 761745973 130916016 607782496 63368573 851407138 706525028 671382490 98507382 13374981 402236911 343815084 512509047 521827113 849265545 535130808 64598169 100367313 560033544 786115288 341006406 753276420 409401224 460244443 574641005 119641585 1361201 829547318 790428299 635030592 391578080 284640085 528782233 692324758 715220661 885456211 882518827 494441358 403468920 535041860 81681562 901250015 604698630 361028808 611908114 529441925 769050526 249709389 871458521 483048156 192087496 144046994 694203845 64738631 313064932 271646615 983111110 536045392 537834283 479085341 872376289 186911815 366513374 437849819 231240206 673111537 142675607 503335317 441733277 10594565 556040593 116459201 818486747 466424416 184233219 85160838 654849205 336749839 938789694 419629832 602430584 595389958 456027707 569550056 54930658 163852244 998933557 411730368 466413569 915986377 823565053 332378063 137055190 403478978 135293766 400087904 824090654 977081851 577794582 82518207 15158820 156473772 98272208 787170322 943281742 922300621 158691697 546286504 197787027 242902785 5905947 500128228 533201123 932310735 521775848 82314835 365411019 754137856 796967475 98389400 97601943 886367365 494719465 971885599 737935805 215522787 132766834 577623880 706927934 56542759 806060284 40193667 123398999 550928518 75539606 234785896 793698352 105466256 35429272 548051852 376411037 944016462 669631121 269059789 422103145 114861818 955322358 991560294 399567807 970500203 984124094 428817078 785323860 65548639 110571193 851410275 799704021 190084506 755102500 800954226 193465513 106094193 862216290 614480650 782279035 178030294 878325087 612548076 620497980 63199146 149550010 764177752 304181186 259014333 433006067 498476319 440792887 620888771 942761456 281426715 748522249 865602595 8268492 399883644 788338570 935724967 834623439 281896389 288448178 533668189 734748469 133898660 721529186 127208735 545228599 824358048 708113439 615983022 844766730 940206454 707805094 533988644 546809811 923638802 637391139 670933587 20520731 796687254 174267329 650301671 237795584 3565918 379747078 44389267 129193410 66375266 739947351 625420690 809945503 62340530 72325601 818278709 593193747 563101913 733024201 114076005 457623341 593251054 645142205 523113311 105008464 482965508 714334168 18404679 235595827 771961743 404861694 869076403 980059518 241166977 310148093 359511639 576200641 502621246 241651988 891993459 625823579 808513758 894202970 258515232 208745150 305041348 604529333 536902490 754977804 967858723 173218701 648639453 999339228 841482587 263718430 209132963 216197782 77799550 252300824 146602768 131536186 188537080 707647438 607974294 976531143 308713347 735243840 297876535 205243327 987079388 275886190 862383758 248272980 870401560 23939057 113257303 278427734 795777800 731603227 737918384 454759684 13241540 52734888 519342730 432321457 37604308 25577825 780634921 981982916 726014921 896456880 79941821 782678614 405462509 819832997 873757078 258239273 130801971 938440678 95499630 48291841 69039500 718647643 315224003 990388842 236148175 419114979 843333475 549674087 104990599 775239873 803133205 856257871 212221432 885964486 218542999 608654984 415621329 463501194 159597167 149757939 501667373 544314089 494224749 680766653 921893979 871817043 518771908 241928052 103769131 460280845 102159134 380342803 601251537 59117861 589392703 514164220 60153912 579029926 149348745 180704234 286571587 611676369 884345226 435011635 214242058 245255554 434066366 758708244 173150165 999676443 883762356 17536548 640963030 851951286 605471619 53845056 466735716 177825748 347170914 882527812 970536537 768017379 283940491 585075185 909990669 251912763 869906046 21961696 941205860 542023325 73104201 283400527 291606709 633610888 41661058 384441884 707920138 253412837 575822191 290164877 608015715 611443872 184972349 986251776 264061513 943881327 40975108 97835000 615527332 532735613 393710770 900506945 381522728 593489388 857290851 254536181 20137376 136240066 536441246 140915744 771899823 474580083 659943443 320637786 699692079 239066386 154923604 550955396 231334271 773370240 901006654 808289155 114514710 756196320 75695679 348568113 171832671 891565789 701019580 437002394 32526762 665206436 183291128 996511770 53874543 474782389 753357070 420105648 305548175 41887859 968059683 564778410 349379683 113436884 98791909 820714278 925938153 739078683 114189252 923908305 114169595 445462262 429782384 558855856 762608859 115749278 470258710 256113764 110983117 101740606 408295017 120305242 547628957 776951895 743924100 774306761 362419574 980881227 104158613 108916753 82902867 652392433 100591194 880386489 421034472 420163982 779350716 794543265 120468791 227008539 133850517 40091428 2253390 66813859 624482761 877213447 405005975 430366783 616440620 594384597 964930047 363704111 811142871 899104656 832450930 19137706 613354462 940877927 62302743 879235355 833107659 415668879 72231183 830396117 499832168 353076604 700266042 14438343 587486022 100444570 86642947 430115904 135580096 819515253 103017024 855131007 20291961 733029901 487549482 46702801 756046101 581505776 406548344 47498854 362041682 162519243 191692069 80042673 72846914 478458805 195386664 411267364 611124567 24841922 373651282 584975565 261111690 515182666 713084076 846293891 918973388 929925607 119607748 51537228 363472216 396934026 104044190 557179322 557398961 625116110 99101453 41143342 496389200 855315242 114716855 101638744 978133033 956821130 526220507 417413379 767860320 507161142 101758679 22757612 687902698 447352638 46268410 121899981 268171540 903506670 383476822 365311469 199344220 52548729 35612912 935685234 226599124 912651120 18177963 558991103 784472253 99804701 778721671 69302972 742423017 481969168 631360510 73975284 35801314 120159970 548689802 145793396 357273332 154128115 816886833 101608023 84952675 417478107 317259079 566812381 800266276 995571779 740828251 721447303 48988175 221742120 712871265 339047523 816241155 494378307 603459682 903467643 848583260 408427610 55887849 309939243 807807675 932461176 992410887 576990091 250984058 576502342 760355190 184428673 708917874 351694110 585034758 261307425 390446056 312237401 201773795 492813918 586480006 102423180 246543437 748874109 923315658 48880245 719934478 903036396 772837441 843241221 967307168 934244743 98299366 593421506 74744486 515634068 683956153 352699014 101630914 534434186 656528844 529276818 359912800 19164020 647941392 398833044 872560994 466945600 332717388 891621359 487635824 445602387 892033724 54943077 697211005 75766620 101786921 681275672 172353270 675044941 913563889 332563053 824040635 160406387 162896928 538041973 395951645 10725305 426052740 923890805 125169698 135439640 969025988 66851599 381139105 122458154 791498182 417609891 230239034 314391170 614017779 690597645 310637289 932540893 248528525 250282942 466516655 807862822 110068794 8240278 273513428 749814095 929446901 166634236 417030784 154274944 730549123 155096300 873055887 870407203 794403890 137216189 60978842 518201444 282631191 853836165 145343642 59817830 968996498 453713651 853826377 913712109 50474076 102019541 941967641 950084850 39100429 639032327 52542950 259267059 707914298 109729550 624082509 405931965 780593393 423265201 992618616 285185459 280101641 957330934 238713753 163084570 600835651 123186747 180273610 631278461 129361043 861644732 555591813 296740938 518039565 744815115 93003134 13201403 603313823 739137980 633144078 7247207 227870861 658181775 309182778 137618712 960819716 1678094 393751286 155692336 346858809 731892398 172108354 489667518 573971909 396435489 371616128 166530862 224657083 141005647 414829221 836213438 829713126 30714860 822348875 353391904 422586749 524846799 928108132 719074999 932975571 506224045 511701411 754605251 610568477 858926479 797510420 238042779 136591566 776547524 652511159 165916588 88253813 495390237 480040407 422511847 505528751 29618575 695566914 441259720 122748781 461391253 329213279 53215733 804851837 416562700 137194122 191249421 424642341 70204819 1000 821731607 256845609 166620858 914816989 581386313 222877323 635175404 370589610 739119880 347921729 390422133 110646105 569401433 765082744 939189476 377923667 797025686 345679528 667001580 113110401 193593614 82515886 595650929 826319489 264993248 48901706 735861726 798466690 44197796 224374579 127034150 959041231 321945660 967210586 970158525 139692269 728766320 191055957 628540313 422843059 746318886 626020048 186877574 1073249 168205843 810738030 867813680 124262827 292973371 239952706 411061699 52742836 354940970 232168504 849797218 204011685 547728330 101006764 947616870 609697712 450779393 288569885 214293610 995871792 500380723 299356192 341763621 321315392 327090085 457649230 90973444 481616887 794318601 488383155 46079698 983678706 661684384 197741840 349652572 690384593 727091141 688346366 302899996 90419672 698049548 244415144 780207380 308466054 762763303 947350285 748919414 46714553 140587560 664131331 88647907 5643368 923558990 418882428 250977968 195224698 815671588 751726768 939602025 903613361 652623950 35796448 85029140 244806157 966185736 687399726 864068535 680779198 630097564 352372255 909267728 343442599 789423176 89943021 556850777 987420527 5956242 526920546 426472880 997168922 134030653 198929976 482045366 756922405 275887001 696497559 142081779 608695543 128373459 182663669 52124830 470664682 705552317 650172348 170549928 309615927 373335724 720122592 442762859 692566231 123932467 327658625 719895316 296459119 825903629 376904936 713835935 990480784 940404680 371288582 200412282 151486171 138139724 36807754 618112821 987270862 76865855 520773610 996192869 60321913 45195097 991537382 63023577 856694265 208954445 4077000 31691927 475904253 618570322 521279601 773134348 143203338 102345448 705241991 166431690 90539882 483374260 158133492 118571539 375699959 701856662 398722646 378510652 517020429 432329307 480841832 562505324 816215659 53523357 440765099 191956030 16224714 381480134 180003439 113731677 764812016 653424436 821369607 258380868 115277231 585174804 911074319 721632032 686762886 889919724 682661273 225640402 214530977 137261076 939966298 978025174 103063156 788600788 895504357 834993244 330160787 65492556 199045837 98978664 442235714 554552959 704671350 235782383 991612647 288195385 523803883 696995736 355080188 208833863 35609582 44788065 375986446 106119203 202817748 814810780 327843820 823680972 268653360 595356528 709227900 566206256 29355015 662109098 438948217 246469824 487408779 913485907 401178181 257241754 602037585 712763373 431120748 873042191 411807514 539018326 36437106 863318153 841002251 644921394 130826292 186039047 954356311 294694091 228731042 873406886 705358717 756285509 929701347 8497786 966810568 654704171 133213203 149742265 565727114 28114569 287981491 778367820 424590445 54521987 688590572 685007585 979698837 622372118 804253492 7754838 39991369 403264803 981993542 704029228 189210758 621480062 758529531 207335383 108926686 622526194 736274930 189741218 2402973 508318534 132330181 866637239 947462151 538540655 567190120 88985861 61743465 757907270 260441387 814902605 565526665 679270903 98467100 303652139 722022712 437439727 875605713 720194888 70216597 101446498 406611732 331210375 258162246 698079893 139541773 208929804 670773351 107555044 773422038 269171520 270418942 310083644 234577311 30041177 638900397 663305516 230642493 267218638 667780106 676298275 248016213 574905182 98840673 757086058 625975552 128975144 712234593 16321604 420436455 885931158 956888622 6473632 71633557 676972150 352204275 575916066 408344276 401656201 121728937 396634316 526974390 559708658 316858184 435832252 108160688 618711971 104174894 427452638 29957392 715232448 603228248 690503539 204826070 145600612 921277308 247788450 732028913 248748053 394934064 89704712 186915017 511196486 8126363 144661661 845672520 492938439 370878345 763413107 165021748 222127488 560862074 686595469 713966315 606998949 817267150 28537087 11178353 979836029 177202585 447638439 718278237 709746260 697420182 762533846 351279282 347754664 720904993 375172779 635464213 64888997 85599906 32305411 561466324 944803292 748028589 242643824 474931989 745302032 666998187 567250191 223851439 379683082 438878596 175432812 147278758 988471283 764992790 295107316 730258270 12129850 750007938 415952839 628053650 493520187 844858280 853172054 59328909 935334694 339398585 901282713 222505016 970351963 470778629 105837045 401007499 405467177 13472119 59888233 60627888 657754083 87994426 119878946 34858476 91886101 425661908 357211356 927858034 564831469 455275755 648560770 362823253 766799632 362578332 718672690 554422092 698574278 495446039 900343497 384621225 166815789 875405028 277446819 433853380 873899068 590434578 984945632 36586757 234309340 879778562 24439302 669072988 528793934 590220786 470943792 943919930 921252089 23125965 36272772 768881068 848969886 448811460 698580202 132672405 70302075 554070306 713649373 300857226 537053388 228684554 76881605 517294237 400330506 118720709 116286737 844883687 76923923 227690692 90785575 713317339 931060736 979199588 518223475 262480041 115568533 91700855 3164503 35352289 369326979 63140441 604688359 86622094 134532051 780333012 111557547 132130221 417143964 151591174 16789139 993911767 996207639 641232053 971408187 192495663 813435098 537720394 32094761 641503034 837770230 167248635 260320686 994363333 384421186 873153478 899668563 540093539 637964011 695639106 381190960 31051299 420870666 418435481 991162221 468206312 354551471 386263321 230910440 387471212 694026853 839102554 631423472 827750652 795826390 857776847 584107342 517979399 803342737 786954533 550698676 65074090 531561488 231831108 699800905 757170164 151180607 872932961 891221784 362623474 390210638 294930156 913200932 518663548 216211466 724972017 261172908 935532187 372353190 26334431 263830683 535160764 745859635 890587163 684066034 459956432 735641477 645346362 743111828 401709645 623982753 910244449 172588589 385815329 871038901 513773563 611524651 415056112 773346152 772578008 897177852 386137756 665112011 998189268 41412805 185210770 155307487 269791331 107941397 54362511 30250335 718895350 543009627 464301905 177100540 329553318 272642035 374690014 700666240 286925064 962904045 292813309 70555191 578024311 58924826 529773137 988155211 16877403 916531867 405040573 673537612 813751082 400705368 22219798 415006594 15035988 524727461 183414696 964326028 937900868 414437009 388595756 727920496 510263166 144699155 558079894 314054268 534047432 470521390 57346381 814596594 695629759 546684638 774959747 229254342 417976690 731386096 880204562 51370091 265364395 56744712 198294362 71838917 550276892 845231941 937836791 426458243 94262451 567292277 325117191 265634870 227000306 820921925 730160099 686351127 602370119 137200420 688684686 223752579 632217974 42253921 955975492 92447217 850746402 247131474 643109082 65135635 118213054 124767529 607928391 947464544 570333242 978087464 880722175 367505413 845509998 62717829 650024506 750642694 824606991 23271671 584201852 715526350 71187579 814432439 38011254 754027922 689171918 59504067 233896164 860679867 641129041 875613233 294974927 835946244 782987470 136922572 532211884 264589488 832478023 187433972 991129070 412406788 107544041 122173587 337530847 73887073 899459533 170572414 546295475 781548400 33674466 419769836 129033304 694788904 902032988 523542890 184927032 965720952 334832935 865687986 599514523 952543458 62570527 176128526 539081850 304720767 962449123 29752460 836782150 965135684 500307928 900455826 30359191 406421851 540074046 545233067 122541950 445713030 591878484 410937687 59613502 96439699 583577748 141845577 716652100 765976849 236521059 631657925 355564996 609366262 395612657 653390102 806880122 410334022 916309494 108339030 95245015 159680112 304509708 56689328 585238899 798663380 798816786 358808778 686512257 909198063 458627499 130168690 539154377 402419348 496840300 767702877 958110553 929820137 106681838 934751620 602710380 670810424 402236658 515716487 923725574 700031723 472470354 267183211 767255761 201410686 543908138 710982575 152284070 386896688 35598513 126422991 567527452 889880511 586179523 552223389 759460370 979086419 617059434 757250447 421487613 340301360 703533028 338495621 487261825 344519090 391515653 120266080 273195792 195077919 930614562 365386714 193001795 298328417 892674274 253756413 225385221 146803796 10339772 635369351 16148793 673608176 77477010 969418150 252684736 803337561 737410434 287944836 755966327 470628429 400517907 961210062 921778306 535834819 51819418 536363146 115629811 467833519 878162319 341657179 960994151 577175930 691683165 664087536 949229054 825128785 790831401 385911999 1875786 646604925 46601138 152986597 938291689 600467802 315092433 361773074 160079364 315890709 53460539 844337188 372855813 106158644 107297074 614814503 947604078 257295221 713741466 536972961 168341507 217122457 949103542 799438698 143264312 80623690 872399100 381983439 210954576 506474505 593832717 325574146 193241812 283931441 941874330 472469280 471262287 550833815 535368256 937036785 675029226 91771567 887882958 498873607 374046556 347231289 288612930 156186968 131471366 288354914 704869407 180537502 836180870 300831506 649066078 442913284 135312923 204444840 56371714 86567820 398734510 171854810 463691786 936823009 49190448 688420396 693862773 729009678 393436324 84319902 684564981 499482910 796990033 307633070 66959483 467889934 210187044 959580037 865750626 575661842 893365162 653879822 22601220 751680528 845890799 736032467 708589240 53219050 999613637 745076189 355654807 342410452 846534476 536004065 799398677 92951981 730069491 368581164 123860577 419316369 320858488 599045651 430233729 677473922 733723966 141775833 216566006 616717898 528198781 464892288 649975664 748865965 325190525 679317820 562094407 845924135 301780002 78166055 212090092 656087391 556321090 1000 126357487 966801304 200635455 418604554 380930378 200452620 98293506 630770801 637375708 938414771 52124522 879393018 244178283 857543390 40960037 4873942 556018049 886221144 554517649 839599186 214390948 509539104 130712715 72820138 990361294 270546257 841517446 111460881 627363808 428207053 115462191 677424057 810356454 374275339 370074960 177550466 672959814 228340012 353212171 122543774 715435028 459868203 67555398 980638618 989164375 164996034 599518825 798466865 791197572 5530554 876248829 30114744 8400761 998260646 970551948 506885034 72875896 401050381 14241270 572549101 141477200 302727244 307731473 41504034 415733041 379764064 503186445 825227455 585839876 173229687 860102497 361378468 777648404 241448463 335213169 911470173 670657354 304321310 813776273 937878588 193703609 209963966 656417732 374689443 701879342 766188175 651916030 720324085 167039525 727387491 264538661 832753104 291376083 710782229 94287487 196104986 260186708 628131801 599753605 312798437 710227758 765058889 508474692 810380731 615392634 92838265 672140693 671270194 161828470 42918829 873221039 709230027 641709134 193193013 285361550 218204872 555454198 717442029 853507655 216573130 202131517 496932884 881290485 270576689 96438359 967285084 41733306 869717891 762905976 553524336 714535419 582512449 555218753 964535020 602444013 479676779 667981191 686824810 291247049 13599509 414424110 345281955 643652392 157825661 797263447 133072921 878801250 988110092 543692432 312697323 509444894 372626528 620037779 438653507 534857842 745888296 95826289 137666533 207050002 660042585 340862808 304804759 574370792 508965996 110655991 487530218 787827307 701467748 386152702 975914198 965031034 569203629 733041860 809857740 346088405 279672352 73210437 248304537 102427591 836415796 127463060 493002038 974114535 455041722 819542166 940539949 981960247 223745100 871889547 325578675 130182439 793088967 225113838 854778786 339305837 307530881 502005035 911135582 288811482 352080396 189149223 28833266 374181832 565665571 559105431 753465664 174966827 490702056 198500774 281673247 36917863 301397196 181006279 804536990 504381599 110129329 76903402 31715430 458194087 323644252 562609941 634193718 643774792 153211978 908997257 189279885 935691828 514185135 7924748 865087334 889195027 917354629 906507945 142193933 370923479 268407028 542852252 417260310 58484296 28163524 658442142 477122964 838417811 237070918 881527389 451900770 168712374 204801856 542301099 282129943 586457419 606071274 97653329 93354490 63984644 919024177 130224897 144935711 396810767 427582926 813985104 90530609 607332237 718012241 68557675 17000576 963707417 964026512 941348766 311470503 312289180 811481437 413352951 875404909 166944532 643122514 592164409 32133275 43342260 329347386 37766959 236415220 843231318 279785570 264939856 106895428 69636910 338554744 638310893 117556610 627726523 113767156 904375097 498242998 937325079 533166101 806553843 210436582 382250543 665359715 73964963 974374191 661250768 211345953 795919352 960637125 183505546 263608275 665504875 136336732 334194711 153623239 131898763 778832626 165404152 127681439 13351055 590505577 795354487 65252670 329890290 488197391 800816792 787955235 163450292 363036361 331750841 161916035 838917505 400920940 1319930 428305532 379761773 364986582 443830139 601984442 507641879 578417268 766953972 552727814 676956530 501279510 603523861 819670205 380701765 220984650 57520165 904331395 560062645 552676198 527219494 503906176 841041616 798622362 466862059 473695069 954403214 208890025 802161325 460484105 40682499 141959908 130478978 474639803 797565918 410929828 604805179 12219248 368694964 187969427 665856330 982689269 169858141 835752809 55444635 902707037 209316118 588896972 759441021 322528901 45677512 239486887 132875949 996870937 967035032 381261162 501042276 13649448 192957318 195076063 310201929 783452536 572696857 186583762 880540335 614221404 237034330 703334356 197571755 708758983 327347383 298846548 413503262 883875162 103406657 554448083 424736997 696941180 937358025 600503897 785179233 421139389 980058074 131466853 909575356 147156420 976933861 800886684 84692105 759303574 871329008 738948801 352399463 127893428 770557206 843112747 910503026 407138967 358352973 983208554 366144054 159613465 909652029 154605713 948792948 98965684 569701434 353313270 48975413 63987591 781201178 297515386 420129110 749807699 811200374 455269855 23583552 519727347 717720263 778795407 13236144 790733903 876657537 519678117 57002463 509750548 412354838 436950251 614131802 979712044 334935007 246024702 145521045 106951338 200070456 101820354 535419734 22892139 83168136 886954877 387503272 559988294 88009619 57330723 152167583 995512323 808194349 572146454 107290301 314419860 692914223 497230157 115251700 82067078 624526557 142647742 589379540 943396834 10522605 132693920 658150728 855413018 981018077 91700025 18696332 315025530 272209329 310248740 478064595 824119880 442755247 353567150 368769791 924236018 936678203 30029894 630758532 2717821 427252586 944192847 369105935 637452985 629994114 405382583 591158467 552990589 376999912 495535530 566334209 735765712 400500127 512357109 1905366 388903653 764692960 448487221 316186946 48818916 192179481 533707802 542222240 759056616 7899352 718818019 729524388 91516466 98448749 198066053 166324806 282181487 722819530 131283554 459649405 382282530 726748057 53913799 601144938 440877516 792834364 951938675 56439536 733309830 343366775 155923467 625415656 88710277 774729606 45455163 881118221 141612223 193921689 378208956 537142907 964031616 661601229 180816214 599490509 582850815 332911133 533769109 840620606 282175730 605066254 207337450 808970526 928493166 667798948 172318206 62050749 422076764 649403960 47537002 832358233 834682055 600995635 535354087 273780953 570192924 697093732 801267856 444051277 960881320 984485891 392711787 587714143 775502485 368268157 898110054 956385041 698774551 686651753 370270351 104448520 959134599 423210578 418133545 393770865 823991849 245084169 128871242 435151937 566153367 381243340 197166804 559112772 24499342 281985684 881071866 188766185 70410707 332697961 4393587 290747449 110966681 595131838 377316512 922023266 824552732 990750681 873871150 968571703 323292059 26929591 210920297 450335368 120866376 122842131 687627616 670717664 150608410 225043703 271810907 511184147 963399994 801054433 416443512 310502733 939325251 850793182 286109757 427730467 79706945 677896151 62122939 383636540 437421640 883760897 56213441 832792521 938509862 673650724 706692537 459583973 846712776 559798745 729509015 987259011 397694977 316186185 326399888 436810085 163069920 433412592 596844217 960852700 321471283 412940279 518488364 407918500 98683271 53886959 867476232 977107191 371375932 420313361 404824212 670952795 716652672 845657427 558589124 15507478 432087710 832669170 675692985 923575485 654888579 509440709 675691243 436326088 69096691 390510473 125168339 98557454 785378438 250014727 292245524 543123531 682164187 935081024 606648599 237413605 777395524 127547608 570854793 937783059 659575185 914911054 460845173 535245652 149938572 662185024 367436425 744430905 290526190 831125382 965337175 634256124 799418941 27960059 335339047 71358289 81946904 370397498 8404203 120217094 685144153 491981843 734033372 86530181 889659806 172280999 127129903 598896138 434928503 155278493 511833777 727575491 528144605 867334108 209462103 714390157 433315590 983255706 295327245 415941383 940133281 106382401 828025250 281808769 671700342 498717349 322223023 746177831 271962709 401225693 123685887 982539934 937603469 577058371 484333400 295059621 770241948 689520823 412531240 2918798 553220514 563841639 693890845 643390780 403505286 800470555 182623608 657547099 245213937 140944821 13094440 960333366 939586287 758789189 298760011 497062920 508381438 411549585 210052647 405543115 858104251 170536796 795777721 676142113 674874478 512643664 895498674 698711195 274189167 386278061 310282971 268968346 304677616 669720072 635219327 176436189 492476779 512839137 879628350 169301689 21958620 915559607 577356805 4790523 447663978 992345437 689546417 565175672 680568622 36065698 958237096 254847551 82830734 257029844 639608747 927014143 129276285 289582507 906390782 61837076 401984449 632628873 897403260 58397337 643382179 563114552 986197155 763663130 368880457 661454342 950878782 59657060 793535067 741384598 677261501 517883647 910000508 47417627 424001763 757903250 353949868 495690527 247593523 173487508 945314993 841779589 799649595 285834727 141088752 727964627 83027572 879890895 763634713 837121663 847883400 435296485 750197132 871791502 623918121 890460373 395517833 80968681 503321786 943440025 973737341 217497158 98997286 665484330 984971394 187599758 288509364 366009024 343866904 235955790 163161319 359982087 1913184 887091107 424990035 165808545 22566581 836099287 611726396 214959487 869625309 747414905 785567636 790562024 922566843 812951670 337031519 637531608 144117827 98050758 622572150 436568999 743469708 377731263 387077827 782338872 155626434 921157639 781076833 293581373 628638980 748676144 62431421 986376342 141387940 718439919 552932099 670756743 273812316 932689172 383382751 55232956 700684394 77961221 848463700 890207427 180127642 307407587 506184221 878620572 556281799 835862150 56656637 928544029 818143812 302531956 942547486 706272978 626528503 779744817 502319003 515327998 38627409 819538248 371719064 575001199 28152121 645091864 203867203 243999314 110987227 139943578 498447800 432960246 186620113 856003792 766761487 965055588 923459045 142404278 877081237 95519622 70641022 991648483 594305047 71679415 904044369 650003125 928166632 116222061 520162019 164238162 645734136 729754490 393372923 474454398 326510241 706760825 123599589 897400905 660423745 734477124 805842130 963646895 702301112 131624567 416073300 126766333 713470374 133648521 582886203 1000 495645208 4810673 570823518 652652253 105713460 477974499 394050446 331602884 630531168 544542703 577957495 153747928 98915616 993736524 891308944 67358105 604186734 86418211 945219379 780466768 342069256 353681782 63345194 618226511 355796109 710260027 549746254 978950507 266802487 925106235 674887614 89120395 686548351 247964487 502125502 989597564 74728194 121493195 385000156 832245125 116779719 837277196 486322237 628916103 763812307 446771533 516294519 544706314 882433985 586176140 933357258 810153434 759614172 450122020 447077939 66914890 137851931 711116571 94695226 387787223 504581735 210366704 174181198 51642744 258309533 134125962 854454115 878906265 76800025 853765226 259042792 607775379 749411804 216433400 25731109 846096400 355469058 447262448 945774713 118625608 813448279 58283722 427117020 596350113 289621870 198185533 751070967 931848223 403952871 728611579 14501809 971404414 726418989 64103404 761047478 797920690 70766767 694082727 718277237 301890574 356392183 690493790 509630058 720487793 641185247 585714972 124889074 118768659 76471859 130171871 803473914 116778429 45932095 122235518 975111366 905648651 972306752 673403831 503308317 49960822 11578103 246186538 943160095 714948787 355353151 934140490 139411774 925919224 203935392 846394771 498792715 630986194 383814636 440828945 45396459 515552368 764129270 290426937 715903668 928747512 89878980 865983746 701680167 420566775 107557118 564997343 980810943 554931496 750840848 160332121 741964380 809988447 454556095 16682576 538357993 718124799 375932671 1188662 311867166 276172497 709833318 56810966 27318715 244310454 517067991 407225256 786836206 443530794 158793183 430994699 886039318 735936850 440906067 880080759 53657251 688745260 148332379 595240357 211975685 171750684 526327859 980008927 123208180 35208744 34099460 105083717 868700756 510642257 441365161 580718914 112593347 955330155 999120858 807894453 794585557 386579905 396736688 742700231 959871599 849308584 122186196 733885503 245228400 633640242 778157090 253299108 92221747 767279940 234484511 960620017 948556379 927931313 808229257 409262454 129259891 84417619 210059349 190210585 322522593 436128477 716566311 215873890 847708018 779447959 901842195 6790533 571702653 774981825 174135028 435161183 43792432 177689370 627874167 590971559 558232460 25293982 548556757 202412646 372495216 480371095 373312662 719191391 712549497 960227464 139923166 945120698 546300367 648663165 969813665 81066560 112206137 872570913 448944902 22427090 466500541 811120510 940288481 655037506 984546951 57711036 624861411 895991792 974200981 651673786 319407808 782486480 505585090 417923747 33775785 37730662 865383256 231868421 183630082 104454855 105770152 202321769 304562075 442224660 728077589 618288690 500330788 691600337 235714538 1408344 511533576 167251918 139906169 713248714 915737118 664901225 15117716 548692214 813128523 940739344 852295684 536590200 155473301 6338370 542718722 674410826 337879376 905762464 746043259 406920834 10335433 878184744 833166617 496639720 618999825 39519176 354206635 992578417 114360552 188266666 178623249 93674102 947600728 613455000 437968284 623952373 420145487 813650336 331195204 834486228 455394875 241771706 138154697 983564137 75216654 835360591 696671264 649065960 67336963 769362228 745931983 728423220 916706103 835320134 115191494 237116354 4412459 686315497 145716467 180389676 274459350 112195614 566925455 387238987 487334182 90984816 29448514 80381736 403067613 425492974 855589549 195747316 628677411 928904313 461995374 707608361 446532440 144395248 365035907 834618484 565579886 342662462 220015961 532974881 274940033 129398177 580445893 669043230 86716310 594148565 127298426 332886354 218228080 27983452 233752683 117702133 183110819 86694327 178445861 865948245 246049972 122759908 957322656 384460681 3807002 429163101 82301478 551634953 100784034 476537613 951642129 195865179 320225879 219858640 46815667 508855441 861953903 103483377 670519566 585843862 809023486 218588941 878840379 225080076 497012212 94949110 494985149 126356908 116401495 218567806 95473928 85154918 946038349 295897756 992020656 64977335 325565444 587806947 557062098 172897230 379664635 212990745 123138598 902859827 671612516 932856293 611920293 81539805 536328686 21174108 674445529 992021073 416517389 411496921 337902935 443507028 127751216 547672288 890321641 515477194 114945789 985814530 153675620 688348459 625106626 724090783 405687706 118738386 24955810 921032186 461272195 41503501 107590920 399728935 324438291 870183202 653226589 44449197 74175907 772491368 703450864 178922592 939743512 562488509 244762333 651625680 153385614 801706460 221377040 789515895 347767173 678666323 61750869 331693899 64221450 255291019 103693244 136223294 856670835 78129357 428828395 916773525 525089956 243094920 593009654 595405944 268156263 194049731 744985801 427822284 286874920 627626162 84437049 338538245 685477790 183472472 907860137 776503050 125746305 130340934 522242203 239661050 510830164 873479463 246486361 837024836 576226717 823841086 89156962 15168991 816065441 865564507 85325949 269781149 728359042 298097969 88484135 300242794 762621760 660492536 543330792 112212810 11403212 204932431 464781983 415323045 928060105 244340989 446210907 139254656 21328792 131933038 309811462 200570850 817923330 281955873 854938817 479927075 852194202 206395402 609225725 93262580 900183873 851745635 667245798 888105929 358095623 779882750 30346406 632322080 123410037 571453880 944111552 235606064 5470683 103895058 675623212 324114982 670526974 762283300 504247230 605488970 248429427 67164204 129380336 943732615 54650627 721534509 6568764 893794889 680873415 732888609 583755813 190364920 737687318 772477135 70165935 493451198 499282900 939742030 24025954 331552544 399301466 884084880 104863423 29381759 69471833 49299561 556554138 776989935 780230263 537483471 85817528 835468532 137175063 844514947 478060163 910031336 724720665 744154003 175913168 673578431 218919339 821216069 966723666 300824285 674180615 515257572 40585786 250032008 396699725 248506196 45448612 68624458 423357446 357555483 661445678 594231399 147056203 352548293 70248664 187330587 940515214 801105758 714833143 240458171 470114090 10109670 777464350 749200537 573812976 440630267 818680305 911435716 793965030 869089055 158558601 920299684 498367896 482224784 259861083 3283904 223328614 954636890 120573066 529545726 722931984 734105309 167237876 879881185 276872995 237948358 210373964 429091775 314524023 917344300 412166448 548252384 203074485 858821263 459855764 831457691 474423991 520769911 757116426 496615542 364060428 559589319 985664458 321805577 242746790 50046642 60532950 270175608 92601361 580244143 122670465 798606034 622950511 557672603 122766349 434617358 444833156 197008083 97673277 845444623 963781519 69772914 703622992 138214178 984008864 687916464 22977061 923258907 40017422 262430402 597420392 689830036 775863209 100049026 279650178 69021401 798050600 500587642 852665164 867100238 921616767 237837380 375796097 548471514 49383221 159603879 779891447 796985617 944214380 3540863 430389921 621919651 677112477 261232468 103087230 239266883 691594016 136519391 72369084 506843237 741559092 693995530 4499953 587079460 78929621 491712704 911694827 954710981 841790152 969552425 978679377 74898925 896636524 334484037 804017701 338526471 583205496 297763786 490577163 851792707 179484797 958036028 154494838 845787154 421154000 942728017 777606222 710664079 27144342 83488234 705493001 444107811 643742133 928635923 955183691 115169813 989294513 560470173 551015318 228436078 954226743 645357506 716530281 482002139 989520860 203799534 187015830 707737569 588364266 779506171 566294007 498168568 215604587 81472244 235365794 723528901 412922423 692032591 264711126 654154170 178060231 626746672 587413332 260331271 697274093 436136027 727148217 567412650 537310931 383130186 15223215 170809590 500242060 440025779 96322637 127753754 10439732 728067853 192044722 875852187 363082220 557350872 2649297 57446289 687094062 629074897 27047420 561322772 892769666 202553800 898318878 176563951 328719163 83689316 327271314 966534049 884946158 87329734 479301492 246962024 50713688 937705712 674170718 165160723 678859514 296306668 253324704 346648341 382240748 472213367 594361462 511841578 844031791 529199054 60747150 320361383 220473435 80191129 736499678 104941627 334483354 422339984 647122714 61613288 745449015 924763997 164605381 233550945 729283627 195163675 18175809 577604756 329115478 309836505 963815665 671231418 49317188 167958373 156724121 568588998 867596149 686626207 402935172 623441690 825025929 906885741 275480723 940960812 304763423 857423452 54999818 533701920 613927289 139841855 212382815 959972972 36625843 21274956 906070487 71557146 379564810 439983334 17767915 12340269 568286674 849130487 63840474 993793864 788700497 580324087 655585384 756580802 50862150 319779513 770801918 501471284 203955060 692489071 156422551 48646151 901651196 17343780 329360240 728797861 489927397 96333250 499257706 407706963 739304804 23541036 776977722 275500155 925813276 297537274 371956338 755381168 166917006 284963703 705380665 588602236 401951358 125724481 291674784 883709599 859836019 761968572 627427580 52251069 137792700 531978339 686388587 849911219 296398580 92003210 785620195 443103795 98645160 245139559 343852074 144863661 15228694 539787734 482035417 381769603 78117481 347985956 392186630 582112581 171292781 764107793 658187751 99996616 735274933 859295566 262119954 556290086 92428185 221106033 453080962 522083592 2764080 766148465 985457750 939098342 21783654 426777569 542967541 120835981 19130400 511380482 661873147 758971783 55702267 182682728 732618377 938241143 254990927 212769587 510969777 753484161 963666164 372351713 121695501 517407183 247396105 776251025 347416191 374658839 954733967 44817106 1000 503175380 736405357 688233877 563976639 81798481 709904893 168908699 743678289 100934048 405681658 746551928 493666849 163790387 285382401 728178427 164776968 304676215 622914448 292991195 691328331 68636086 684826810 759026733 366058700 472201805 25108856 572528666 130825609 171085438 881267757 805167290 256247858 459548800 683818625 483060602 647862575 77680791 969606861 491676667 468705351 52768000 346468130 867790921 751394093 151762439 34097014 275803257 23370465 813215689 756263455 813848905 123105166 496815843 79195663 172744955 211738906 95471952 960399551 359327891 537254210 687115962 978838545 116620762 889790861 168635671 303566029 119554478 711325883 640355097 468706416 382344755 827608133 64262137 746821539 800056925 243796378 640724741 179235092 806915073 930249258 947823891 696303882 662680654 283632472 923689213 521863316 384825294 141864482 144357721 396538832 120753990 922163714 145197515 798679958 8456682 696119392 257311523 661617509 956150462 672188739 797552568 837805239 651034468 355030021 427881665 748783973 301197798 507159490 76589468 694774063 895434033 503066176 925331075 746508520 90925577 107922491 57046767 660744716 240847126 556909454 120682001 360384001 674515708 112629568 794129326 495031645 170979915 109366402 43745450 117765304 134636773 382377216 288639759 479987119 446449262 733623823 527757346 568503325 42650752 483089017 839622168 110176963 9423107 138421639 176394487 753650770 686866101 143547256 272962498 975689655 472916117 349088367 370432723 388100058 754488283 787419584 614521892 680944884 789140404 586004115 679988623 163099084 669402035 55051319 741875203 84239985 657731286 65236710 473961406 331299598 79914616 541713516 53840696 773859312 746689558 47244343 47180049 406127957 929911064 57913190 153950039 942068750 858766335 351689242 328430163 162216415 873095344 448615897 726710161 442551929 188868692 609052008 483419935 559641705 429884792 34397418 132254266 612627922 514979828 847266016 899006048 780772603 517870999 388399976 136085888 291611409 71431538 135715238 816009797 594084790 175519712 690691953 13933588 964534533 183191928 124282491 566933753 81802107 530551627 280660664 317028966 584188013 404905418 526263540 608947813 44289861 109882772 857891277 907109640 579351751 499012759 160111594 409558102 523993698 223322715 910716494 790558370 854322504 863306482 596580344 50491641 329345497 465163292 571613116 787932519 677516243 689567713 401991237 511087760 878211530 659302045 22309325 601019304 542983643 951571263 408079465 834090816 865123664 459165961 806395564 472594718 580500250 519506967 679465409 912388047 255697674 760196755 587347887 46771500 919197999 327566275 592898498 286591185 341939311 362670157 458636863 401494035 544523072 392574163 238259521 642627058 739995531 709495315 285584762 525796782 685104004 947890863 376207198 63252000 15866870 478468265 212483411 614715529 887406770 869520374 338915709 554264515 537636494 848416658 279428096 41346935 584782707 946378290 982852810 581446741 297594079 197391711 482645743 885741592 459330791 743425449 293265662 583693790 144199850 511979560 465288945 619328263 216929045 93966754 715198268 485072985 589197337 690927444 111004420 727245135 106546309 471133850 237620421 726895650 986622110 214717347 184711556 58904178 38714498 623435093 173213490 472712363 103812971 573004226 203126934 160588812 419547209 817441456 705566448 809559621 34288030 757877339 169284385 87985194 517218688 762106716 487162199 126227122 612846760 763600443 720828788 840994722 226178323 395030688 690127475 370095491 258361561 827843036 243841272 2920768 346751816 647888166 972870567 354280653 478312027 106048115 572392215 331295764 804671697 103718891 645218600 841242354 818974857 515156746 14124585 608082962 720745004 696970954 847044262 730340002 273076235 16562726 740720486 516653637 931331709 272283391 352057665 484623001 887452958 651383526 5966640 967776624 402347303 19104053 357232466 998472673 850744441 596841619 592513166 204838412 892878624 238884413 589796328 612581859 870667018 567766146 619349703 815024970 376005759 826816396 287036377 459516677 838180599 801591477 955354429 84713092 496807843 859907789 773886105 801635261 35035108 76085882 624046584 651134177 332425740 232658750 227131704 241687337 651913683 125827451 111071086 833788809 285135770 230891130 286668735 829449608 193906399 633356288 856918546 454768342 220742952 973245247 221484195 365116387 110260710 855453746 199787466 158368256 981926707 487477343 58427865 492222605 559702500 650235468 401861340 277844413 563825560 657174811 115632634 628750738 172490358 54670398 159406598 309961647 81032522 883102610 780894506 288780203 55518763 116746624 395114077 689461613 548060873 805374150 951394772 78277260 981109545 52175182 812804541 76950751 836491893 46555354 233589847 238441126 69008633 398300592 346955506 509025961 74582711 240569693 118028290 597328359 934790963 985480069 127302347 341926664 239662837 491680592 681361727 30099320 420473022 885985664 656722499 444518061 689890528 534016482 258539374 292065539 888656232 47634618 279932868 234865896 634488977 661366538 976556757 589222891 12015673 74549467 487583732 418650968 573224856 618686133 90621028 790495198 833074175 790583243 924950155 755034398 903416565 245348669 27015497 581044676 910728579 67516095 344236898 522939352 545310615 341026366 903795145 966169931 598647540 776613005 690759631 506758327 946995894 315065299 349648085 317787019 807631953 446149611 549523300 327655559 995145560 353585043 516734750 163608079 349554839 878638268 97609902 535243128 130989455 753411586 107332919 791432764 175983846 213545897 867586281 808607002 825678919 519029993 402873963 816077767 471037790 216659057 296054905 34821628 465173917 74391320 602255282 654197891 49539783 902884626 516658076 654109683 464035388 408391731 84519374 326797809 537701791 820429536 688138827 629288705 775480883 844489513 898550728 135775157 502563598 830047863 734024295 77607086 336610387 429889456 394334664 77939915 713029776 209854396 920630524 608699659 660966471 219700839 404761028 639921833 11174939 2216309 79166967 131265602 628339323 255742246 373003417 594930894 14087834 468917543 266156919 647476923 919621963 170119083 982694595 844037082 312013903 84494663 691900330 466244999 911647491 168600847 501241237 745740776 307494230 420351568 570944976 559275497 894180460 400037316 897198998 752890989 221690495 739023993 422475526 780345828 28146555 804682953 132676851 992942421 142706223 718743580 121317220 928440115 96211667 31009998 172377073 906373210 155043329 732983779 806630456 60959001 405615770 196661767 40760273 729402765 801959405 368402794 327302123 186854199 519544439 373921041 520510186 199185288 654505370 112185793 112308736 887596261 325966595 545071488 307381430 282377150 898975670 545290141 652987354 860064196 914856024 130261325 801444392 224146567 465816687 138236497 655435992 755971444 613870282 323483523 198879774 617677959 290754960 750680983 583243472 68079335 515788009 532789136 539805994 195869525 375004553 665510725 107887460 729998230 645816446 218075532 479371133 365483598 91315288 582670856 492462995 171919492 600992638 774046271 703941683 64360810 611700553 353819127 247397645 946501671 102324244 31569435 950943171 727244777 47746684 327185320 720672853 16992310 322758603 538454642 622048141 684460967 355733220 213076583 117467337 854632537 41593931 342697381 494986600 815580256 787002816 182960473 670389574 241867791 151227296 487479219 121025391 863871648 426971340 826895907 345197294 335823037 20422114 570301996 868423990 9112706 969895507 323484872 811427069 656267527 8150473 415563437 428978920 154557841 946515776 761912705 298073662 705961448 526917035 693842851 315913335 513817208 770245063 358331761 685263264 599059301 874623524 427252524 754017860 381332042 631117336 42764549 327067479 178072155 825892453 379976414 477316444 531045665 617487502 964998711 38119612 730231111 121794804 179937620 389055445 329485841 318514848 655838057 947026002 573305816 711895930 947312188 987154293 432146641 282386215 342814164 801892980 830256591 897201467 841568664 370894523 684238487 734305038 641809434 520768144 650350229 779102147 705097988 195004669 947302908 460269357 833310700 930697168 633794304 403285255 48639825 90265181 691458301 998303498 685215705 984025294 865118001 577737569 114024543 802854653 987951346 97268949 619071647 253963870 38649678 419331996 258226557 416926689 43810249 588677394 244557164 574497714 912253745 494909332 857185083 746040656 963839965 545447661 708332777 850579727 377089214 43587926 790173187 1019574 459902434 252206523 682663590 80650752 93106041 67376368 342484757 266373555 328937132 833303343 5095935 637006427 247905834 604435640 652576218 544336842 554594279 52957086 89337026 66447569 881231201 938616285 238214603 101454632 200804403 898793565 47135746 872419480 967372421 740558876 660448305 556725128 544676481 148721318 735166585 142907085 590553393 873729450 178194005 317703803 164882782 83271103 418514660 874378098 615047346 451666599 448076046 106763957 238332902 10861926 289794685 142160883 926570867 782131141 765176554 826799177 947544657 249652600 22187355 43310641 319847198 872995907 313383373 840226106 93801413 220643330 423152682 187295658 57408293 918802730 323115325 334667865 184937625 68339619 511007430 681438959 52301934 723244676 152174001 468028864 920409318 326580337 286612958 192001384 793934047 61901642 929000419 800079311 25358948 247759099 359058099 362112397 549799166 546752432 746103040 162144062 393630150 81502670 704138275 51794460 590075469 29561684 45028035 389083151 740397419 444382299 584315143 875811716 714603453 722405913 492670493 616892449 423321652 205040781 347592605 578414899 635343062 75888280 237401146 36327237 626317942 327503069 796346078 217890069 496463790 989674154 155137938 175392278 1000 599193135 777303589 597691316 627876509 561290832 532625000 453367186 428248411 695356027 22445953 836403358 850783517 137680270 78237300 364801962 213682485 677057021 161540671 747167011 937029680 652226205 971773357 866322137 547553992 33590250 424238627 731864542 177821272 262857326 334980001 749860972 446899676 62521996 316045130 332417221 903700883 571222798 806986322 485554371 821407392 901317163 496210557 325755597 490660298 612946838 184538879 386835494 790413136 534232535 597867477 270488623 673595434 120663332 149438106 468964180 637210209 92137706 744822353 50241276 871425991 727523210 676193877 251750202 937426445 540535230 586448597 605976283 670295276 738428982 965028488 241781440 767748792 311576511 363112315 859407512 779681559 74605211 38258668 334664868 813636771 169365835 160702031 99711674 535778100 897439296 506475603 88941471 407513425 620723706 630232322 996147235 215336081 895130277 395432341 324082846 126424526 939140084 556293562 406557465 357675683 928233465 356354675 487158530 726432714 85321968 115117686 55470933 625066622 95748054 539515644 830674644 392880135 44060711 743178205 422940566 290821459 75206008 864930145 301531382 401810028 656159510 638499479 513298939 148900952 997454224 640330118 416370753 165680733 32631858 624818375 82832830 970595618 59359830 322386648 992422938 774493406 582244402 67251548 494839215 830247523 538481582 288409772 918300393 299010484 994446703 490019326 733692360 978983749 673407556 76113939 544093030 984441699 87509420 121144080 740259264 275737724 127903353 802980380 171243269 300575093 376572079 399013096 830997942 877637831 706899152 874007614 2326861 977528637 91407902 530202051 431330437 139688434 192166191 434455046 118582181 662415080 411392721 732516972 526460140 757111565 105911415 528784486 284033764 971700515 10135367 487684500 24453112 612295738 924157051 749163566 510432030 634002464 835104043 817456405 256597792 236897968 946735810 903106999 100986720 811023326 400053611 158054473 523238379 360665283 240515456 119136933 151147558 70049148 188597935 557310898 318939407 123220301 660381651 166119995 263631966 140642855 697207688 673755722 560253379 376675164 51409352 845051932 146809487 804142202 709479635 680179213 958567937 884516513 710588020 946623290 13911901 977523564 152155165 604637119 606502032 562718666 809695954 139084252 134686501 170054507 819670964 61221167 905038029 992887709 514523278 248795849 146882898 935145731 343203288 308066622 732142891 890972194 697825130 584741139 457465125 846256883 553456041 57092076 310755984 915228101 597658422 124479515 729552749 368841992 366272297 332471166 172289166 852768355 217633211 994982071 912540129 864510943 114940468 536061847 869859415 703392948 43804924 573655800 27333842 286312228 246479949 531464898 228962052 361785460 695977119 870239866 744925558 138599844 398258869 362504735 857598451 136738470 538687313 831490117 911872842 146237750 196589920 933684533 816407801 120754782 642601531 641154263 301806137 401537795 435493445 165158135 978750650 126204397 201578297 721336472 100749026 20876026 150049801 120745526 826877043 211949444 997175735 82076359 344847042 487766231 831091205 699727608 956191311 275524517 670572488 53849451 34924156 915541645 606183798 17416683 208757889 939914343 619150550 537157247 688566764 536693365 921708147 522490725 264888824 328182453 764095097 567505180 173938351 338048485 718855983 731800764 879579910 117908000 643376532 594747671 467941204 634483110 28338560 962485068 961021338 302260048 32630941 220735977 268941163 301840371 20402495 753249561 64432962 322939733 96240434 719220032 645770258 650478793 381050651 879143971 660741134 561526670 391922975 824280596 412737669 108298898 330452001 511194955 381875250 700325994 363871209 646365271 365623791 270933128 277484640 124645651 87150576 751866397 711381243 150723983 641003329 74476230 824467626 398883132 51306167 84383786 869513383 26013962 559492764 122661208 728853232 847898348 599352314 127830661 922290291 699011829 888933480 348891901 541327653 651904156 302160435 107061504 305586837 54442796 350904698 138109209 46676415 518371072 318970895 713486751 378936824 443430457 861634800 96314833 838535840 139303658 309232857 789899449 996122244 620432452 560841345 660614160 993238804 683348633 179727514 985153600 157766401 147651669 520701770 889985389 145573248 82956134 130405584 321114582 49390598 204106858 288354990 177603076 557334237 948528130 885238091 409162110 927530365 727986796 539614037 700655016 75517473 359880528 589873696 501063817 959458359 14858051 455782764 430248233 48707607 351186607 986502207 166134567 33000224 787675822 7706472 546092440 100447394 226544828 203880900 560539873 307221132 972835844 395413822 242094993 528821773 855612616 10785528 941289769 455636638 921403210 538258295 58547457 313080025 108906103 209132715 932279628 199184973 303090491 398179878 897397318 352355851 943032342 931138430 760572233 674100607 740116100 289456292 545447290 165498194 280853712 666817066 675160112 895206684 329852063 748669013 930523542 432291216 827740610 121219822 102752976 216344774 601643735 55045697 461939204 365013391 389609571 185374586 733431111 140261400 623481673 987342450 186917071 590678190 57953678 410992567 271897979 620169189 113837684 409260078 837354745 789273786 793317406 622356375 590921905 418795034 927017220 577694548 920114698 761129779 337847098 249256677 459470515 373723001 810325466 981101551 304980855 525043886 56446624 878930196 573026076 725256829 153321151 75905879 798236529 700370895 849030893 576110769 378210729 963952017 260781490 633010708 838847079 815537910 361557727 876628861 153277375 871447780 24076410 554318919 539031283 423666551 179862721 77858733 340677482 935846534 450635842 639235801 610787782 308409974 348346216 858386163 38149355 649247515 69679991 510419039 258733736 500338493 802878268 500527812 541317489 37010519 597398606 528282264 311705435 329247387 552048201 719551827 775209154 509436135 116940714 870289404 265221423 42415315 225329964 841460172 589528030 151572207 658079037 794950717 286199494 827734620 71249264 634790357 783770098 897941315 443721062 661083743 572009809 955545565 461477964 794218216 29405201 267200737 887113200 766191981 275228510 607399997 486205519 15153285 990092238 945157715 639708692 135311562 8467001 318581665 601745749 164585819 966929405 705070272 655201348 239540710 569551892 35118558 809226594 779380091 536087822 644535619 69671821 488335554 971348937 267957800 241116344 470545901 75609316 229725132 457966201 249306163 238964306 852314554 662353717 888835756 69464737 109847215 646795907 338730445 26533704 463513811 400500807 40286056 855620611 622599482 755994406 287587702 563505823 573487798 469999596 36596749 262589854 699802492 235535235 252224597 943441262 577909422 142209996 652356898 63105313 271431900 419906142 217198924 752888974 855200760 500174442 888522787 45495680 724542238 928721340 8952391 589308432 908906760 153318833 847117980 783667226 415365333 862819884 673972672 756307328 407903752 774876894 81540532 533748004 722565902 411553831 503018254 130737111 892241804 184831028 646841060 52658714 13231850 488298304 607770272 671083786 443655497 717369840 977393288 246183873 316821359 354987384 386314464 698266182 503218318 70050986 999765535 196643238 164375307 511378207 367722774 791302563 399107494 442446882 917882529 795099520 118644459 589436466 792999752 783797554 786028891 971889610 569984742 28139424 749548882 701493591 552056525 84455677 583761092 511923331 442633540 796919934 246617263 753346708 80349945 814387969 883782124 306806663 743178031 410854536 63274365 559659309 153617566 588523679 606159899 345189745 425346484 660228208 719558529 312566555 502391950 346171110 264409962 953894997 274981072 419379805 185695966 631018979 432604467 16538905 34204658 198771037 365545308 548970043 54201767 459663673 177634346 340110543 430400467 860706839 221851809 633587859 49803217 869641480 50489695 30034330 730688911 491890675 527905455 490189461 448597531 316848355 216603784 447336110 333472384 888722651 627199765 904633873 425962025 530020100 859864178 960788184 968529477 957322017 236008973 351078947 863045192 749899274 573701781 174732646 647805990 691743286 517893634 888553878 886071099 696938628 509186793 105946365 328989722 148313592 487072232 593985594 251348451 864572167 449266630 326605850 481159479 506708482 352433622 614138856 489820946 218714400 707766477 306269476 33719738 547279470 724422059 648718464 331938232 977569786 335729342 644651169 567241989 464133499 636405038 135391748 908916200 60804932 84210121 294231198 978150730 160514376 433454585 684534571 721579 757545346 980379973 520825103 463327975 800217749 558273114 837708351 270141893 78529270 212377138 752441979 109515073 715675581 109287625 236709860 134469080 759480501 225943743 69737338 674383531 751748053 376995233 257269304 116602846 918484055 420541618 264092314 164517774 469763562 48298119 127177554 100261608 523689591 351650643 401853620 625794880 78934145 831646785 177181748 164563168 863612135 349070800 243115086 140999656 135018915 261509288 754202029 4381202 995586708 421376833 137995292 95671487 302346523 907156829 993615336 737140196 100199823 755916080 127061661 254026400 740722284 247950027 908357634 773785721 59646108 76719607 564102655 210802546 317350752 659206801 255779517 109617730 216942981 462075081 396241266 610687716 262831046 430961797 892641185 652309808 543828805 247579534 26710619 672004926 298045008 85915236 302141947 782418090 97690880 109950422 541441348 773488377 151489610 738985993 300211313 596521440 87232392 658913080 372575802 56662199 298788100 492616527 240322070 377317369 517272690 67106929 348684790 862803179 101751970 241448475 288548878 478768242 30734210 380945083 62099921 669346070 101722108 602536313 55014780 708005315 702780153 68399913 315625860 1000 670623572 330992523 463302134 373864764 115043919 533053124 297345950 341405730 405899303 859891161 207094492 200672644 120508743 27789338 375430778 123387719 315330807 298908014 818164120 835315770 853684840 139858460 264326247 761959042 31109508 256579787 959530087 223289448 768083489 590714467 140208141 514261674 705670955 384655777 756136831 348697588 786780525 234816471 107827843 703421236 232126197 366515502 106617205 690572426 19184569 580393417 892714533 700402824 778610902 710292623 736590085 727819519 242484309 250467858 795472826 292271382 220598549 4416727 190232609 141962509 404785836 439009312 521727782 804745110 741423576 814727035 8485427 87484364 636577510 71729604 91684773 243979087 811023065 126993595 576204492 253755744 431037050 16190203 776126653 72598426 143388187 26154241 810272316 601824843 702427488 999512330 731030121 860528118 80176100 938931841 75557892 101740860 341564666 117776634 261546616 224218207 508880576 867566135 128940402 16516015 429281583 734197267 42852196 249048754 196753290 843892024 657301367 689875503 277612726 84842876 247692521 29043981 245950846 240646778 620124033 537002613 115044732 921233454 984246703 947278283 446850809 265136518 965247323 862044976 217293183 57364174 960713389 620654546 296845166 484262617 317258164 855310434 177682210 109124115 528831249 296098531 368814813 50532164 26754497 227266614 391220383 167662124 726423484 129149432 483819580 170118140 258129784 382517290 14633282 727931392 980611648 2539301 208371348 736088900 663991659 811026968 5513343 215289059 36898712 313323546 104169353 668016166 264860211 139423208 461348897 296629079 119972009 77685275 551055707 668299663 751086275 664520339 777624182 449746824 231613156 952200442 91849819 202772275 541643316 854974596 101798465 989886297 108947794 127468050 785728840 385340423 377819215 883895129 648619010 356466302 609425715 751436727 346421005 928384464 37953521 386790547 834400744 946007533 159274411 505261898 293151474 158244778 6255834 225281 879500763 718955866 915436876 816413383 538693748 659431886 312020944 784647161 435957909 172811007 183370398 99328463 927551458 655641971 712384689 823459971 494837928 930171994 934997069 104073933 956581173 285088770 607686833 110174546 107838782 773444241 82979775 88351966 365978917 254507446 447716759 281791884 511809614 431297757 744178845 169414438 810434387 835726814 338617122 429208475 84678906 390615118 268661576 9568073 713412811 260835175 605860012 177795515 206918216 207904218 593744675 497901653 382461947 218939907 815358078 891461495 90405013 153874571 991119571 206912204 63882562 762096924 21780631 976683981 556774676 89830047 132725791 133935257 519129435 355269436 615551461 746767121 223578639 176803272 92402915 141603096 698116015 434391516 71582645 319737047 311342652 860230827 4352419 30841558 323129948 118920888 888261497 736449771 421577699 527828086 139907012 280565279 322531208 615127690 945340793 400924831 178196604 329459007 696240315 43651888 174473987 113481775 11602801 294935868 768019591 888317456 347126112 737195720 881378602 918891328 16505013 286914521 937959314 66741957 48408463 628041828 916279171 40682587 907463308 464712062 401563970 821780269 57099161 826266453 717504823 607128485 199565098 629752506 491618637 576217360 5340026 783110021 375265496 813901006 306656708 448159933 531407064 461930243 674478642 555504874 365681665 119677878 79605117 19817007 308550702 886452389 879478401 198337892 70272765 865026834 664505173 821926987 555182935 144219608 982715180 64863337 567090191 153867024 505610751 213999385 266164040 182766448 480503170 71548413 242497297 458119122 37624034 808693513 336200130 60711253 50210604 722254980 742562482 368063950 951538990 385148765 874410288 283180659 495645471 597131251 498983339 758740591 591055263 555455899 82074565 35258567 529753110 470245887 542854329 516211117 307765459 58658649 932032648 438500533 109937440 25561036 76483263 462119334 264734126 293313926 492736692 337597324 401206194 164321560 448346441 667367075 292762435 111611340 881388259 278501798 933095065 555029568 759736758 559579763 567871947 230190683 517484709 695771305 240592550 932691702 108907928 5903000 123020831 818072909 600311696 439095034 778193147 908715730 111110661 931309774 937417461 327613330 855376558 712554554 97205230 75065400 526528531 536832979 583636845 648844834 680779604 449140881 925254312 513351585 21442317 479863774 456318585 28640166 725775070 905090028 242440237 189942064 879969996 662004526 42840724 575575615 326628732 557094039 181658954 14483484 858512355 761024404 405403104 55645406 509143333 938839322 467094033 478875300 21431429 641608312 554537254 901310041 844757609 867134758 234011873 627029826 291658327 739925213 503485582 386903610 152547812 34339229 907464320 633098754 344605734 72965550 593806518 518927031 732253374 845402991 929098759 402972407 377747791 688306832 679111256 222795386 813644006 2947082 573920396 779170519 885674378 292316975 937097565 116562596 469205378 795689663 96597980 624204769 831803475 756250754 86557458 382859913 638566950 633675024 898194447 585078114 264688110 454015061 355428885 375992201 624082743 626275225 986327325 828415661 252990409 194545381 47025929 529572587 501444856 282929501 353151266 730427607 225426510 102531399 123472799 267091819 514495304 358538427 90274535 305434653 415238579 5854589 472674992 639601551 739946999 36122627 484130174 19433764 650041536 636827376 77574964 655554303 818131402 650303517 647809590 213061063 520560129 377997115 772523386 236127059 304299185 916002370 963146856 85489584 693179052 504026487 361512150 169255001 268835898 617361715 478297579 84093692 358971763 705588147 179381802 404657504 584389940 981167722 74016245 844483702 133075666 894711285 670443110 981903838 7364856 433198912 35831520 280829492 133480002 397886421 331866811 936832865 868927017 620313384 463720733 75259209 843540181 849990828 663717535 346740128 399653320 991998800 191630475 276570053 550312682 694892099 398867537 733642642 610453269 248266428 541323044 638471085 58386750 937039092 85719334 684337453 866565960 387497711 484788090 751660239 1838177 821864117 88414119 866019320 25275466 442454166 304473324 53917975 562995663 540970828 963964263 12167916 258376119 158684882 819436672 339549456 665556783 566014840 221393338 964271192 821830120 28509901 678551871 214659485 285358512 482348077 108848979 593519452 71153976 223923385 489940899 129040750 617172624 489935989 740875524 77571941 521636306 501360642 941193284 676079502 361655423 732530983 6014887 365608402 127102464 450668590 852210443 928783860 389797865 922233053 709801587 997644330 584335532 716468540 368831180 825267559 350748477 482780326 443839106 357151641 647840767 134035547 427954189 951784246 229917099 232086411 693315460 510089793 96151954 129359920 979274398 100251187 839442052 4443361 51150355 55238335 2915739 983913762 476503689 955242673 254426631 969644773 273173512 611395513 757644882 307900118 583726906 126699212 901474495 409963918 985472114 412946675 141173996 46964870 247502686 615689109 549293859 171884592 468921791 799635465 648840777 84160544 532921883 693442716 667622846 121133957 218157557 20348400 339854539 31855901 172635814 88552848 715665336 782667577 971939930 45809928 66037537 586957899 398825234 109836318 834077774 135321921 419331125 894460376 434357623 942394444 626851948 119079441 196975442 310248666 280338834 64877023 756647780 753777661 514474914 333411621 343430265 328150803 673979521 445805375 413332473 18060043 285110311 630697884 460310244 33188860 443518959 895566993 591888597 867789271 722756252 498476028 81855108 683575549 805008178 60869178 802223389 375036400 536211267 94853557 812543977 663034446 72161765 692391335 505538698 250244047 506250419 593026994 394285089 186752110 4700101 862224017 137400613 915240387 707803901 247287765 690090430 553881220 285790140 910971442 705065575 290529205 488438134 73257697 466295995 485583569 535848104 321461595 737912087 849411014 208321374 776940114 77409810 168462081 932101665 42265645 53379700 589872492 254890309 138204720 885574918 279154883 543202710 365028252 532100784 859545526 157413705 575438566 68007464 93268699 826976653 340587352 822624143 231987917 606011744 806675606 193632660 654381416 720417641 427451483 567657945 763547882 298451824 105707612 907996632 660872897 737383070 955897270 812354302 286901763 196618015 228594926 652433704 448642099 659666976 945361209 100477210 15098529 334897210 705173353 502699866 715587557 987634543 651830278 134156927 49100422 624910924 886073150 874390108 932293167 823953126 398403817 246210966 298693289 918289600 324560704 724508271 24079384 242498072 611796835 795469139 884619782 390165324 811659500 476130323 676810447 229901875 963683355 912267845 36741000 632845502 817165234 573606619 763491993 781970637 396268655 235901778 37583789 409805249 649732511 229406534 137617665 733277271 81269834 893842028 466803014 733565498 132852578 956946571 854263997 944369641 706283396 513091106 36201439 207496453 612637306 359014844 95557533 433556624 301475021 514360776 367074079 246032437 799958927 784190139 875867101 358553562 954200615 905136586 17902139 470378091 404763117 928775383 329634685 865996464 390995102 776565910 1958835 203524161 282531986 818516209 75281570 990352464 102789431 776400933 439623679 883300113 754867632 892995066 454732327 750442443 893107827 311906848 919497524 477877544 511417386 519766786 592812486 618181046 993723495 573675720 266522510 749291382 445215858 264960023 481048344 889448719 24142359 484241467 484568421 819658169 5434801 59456023 660751795 221268495 788955672 740718064 39557469 26409179 545847330 399226640 181267246 557225016 364706274 870091906 422356260 100797140 687281002 979681199 234295810 415074106 141076856 658893774 260818322 552278351 333874407 1000 332597247 148490679 535769169 45575236 452317115 255225503 310797531 626929850 359335203 630743850 324494383 736550690 592656557 597057178 47229529 781716613 1605843 125315107 37719877 383556418 249901220 84672736 134825025 386691502 985579052 1714616 155280724 12717549 462680003 541656518 63753731 763609744 382828490 737999644 92615572 714175713 325834154 714513160 901095338 217180717 288324830 134635796 682274584 887413709 765495198 308318064 497439898 293996733 215516263 511048294 806422706 479709333 432031008 363513716 855703425 788723780 306236845 971932052 65865969 920441423 500056910 935391625 55799745 785053661 558991694 812406000 33468992 537000407 160386646 641450063 57645569 764095760 595575560 497188155 513051393 633775135 376231264 282269041 998917279 810854655 375166556 331060266 463248052 78672 990249443 393906658 223800307 822454559 326944509 19521067 651411318 139060590 316250436 554493865 966303182 627255725 567111853 172274791 114010618 85066447 469424954 531201614 574580179 447290406 205164643 367837957 204626314 681753463 714088197 290005369 321470546 2654900 19533829 48389600 859459913 170476410 914409296 782743460 242382718 517642556 344630105 8386652 63292090 967786826 171325140 6486833 527283512 107992456 145475043 257353946 833306020 7988136 539416803 524778107 221114822 943364418 38934207 564845056 847003564 10575553 305430515 858298561 606856451 306168692 741713317 4832656 758905084 610800571 410716537 986717950 449866064 919361551 134406739 701820392 467145254 508428582 274662468 244218195 38499261 334054553 220278979 576797020 320647198 911846771 843375215 219322026 498876212 744281147 514339315 244818806 697892733 785814493 982286421 787646120 97907114 987972207 131418742 511376803 759200091 274624487 912904106 613518274 989950316 306512609 102961545 421374073 813256739 4987219 512705593 427057779 557029955 934772783 780264534 63584515 102586752 99854759 934608873 375826165 380541529 726857539 351403424 801819537 850710828 723511368 742279737 780714266 206430356 368369407 256938507 442721428 631478363 513941889 509652458 70831348 149648422 222289301 14110798 639095727 831005076 465399016 901201750 686578282 32085912 337946284 5623778 193772261 739837820 689948391 394563196 47610694 891010064 349703065 916568127 2805387 479824164 975882347 110016564 886511602 524037947 508645015 697873751 833968547 877037948 872917964 82619792 32423425 719193523 74316184 16702852 771470828 929802915 404343345 587255132 9829220 723333416 400235327 421858264 889747445 226118704 827880266 920344743 85791828 985984120 518170572 408945628 749108501 734987546 646615472 310558293 999760752 40749037 518673646 44267676 38446098 867979727 691240729 293839921 349787307 192308714 492629247 677791042 764841466 382701384 593083975 409790955 49228130 822933097 80308347 31039110 154395240 427859154 695194614 659535439 40810036 133593439 120249834 316392714 951053796 601749540 200106104 68379094 31429314 854687544 145839680 381050495 502112222 348036373 342892582 723060580 309089879 978626058 55059332 242801096 105794041 856268534 257936333 323979838 375610488 601523581 464611940 268993506 871410327 362625660 429561241 441474684 62179899 457454556 561281285 967960971 134808329 73293252 765029280 695455540 720079316 43082197 70743559 356850088 692085128 104457873 742790860 397999658 149496626 970904961 124767722 775256781 320224645 271221001 648205875 102858415 628648649 120676393 241919337 502963267 754584115 361005629 271452109 805773708 477072960 68335849 503800788 27573494 705559305 143512609 211193977 119801632 58398520 891823145 818901454 283047309 287725904 31487780 249095614 807112724 568117295 826140086 252941028 73040379 848622986 725822389 304673027 436646822 921598102 690097367 823668869 708884891 886288238 210745144 874244246 95281029 331737213 573468917 403766443 577059015 702635659 876402482 354293129 938284527 703458446 229600299 124343260 636622299 291162067 592704515 370446368 251736459 139637799 477829262 742392651 93378773 543253685 131965251 39963903 100706771 47846351 838469211 18718457 353064357 471902119 20560089 640918190 930474059 81276220 480568124 520555739 38304830 989697335 740711035 300692104 676487085 517222550 100255913 188578807 138736544 191092722 73237136 977029867 96373272 905350682 129608167 384969746 810368070 845411154 90180846 163966221 585332446 201820393 129709559 212231279 57198630 697553763 956464197 75684595 990524185 67216589 302187821 301571501 549425561 906626788 177470541 647225295 259213184 723495660 554571346 600432173 703345390 533246598 251645241 111836635 426555740 586764874 141209458 746473825 668806763 95983114 729362482 522252628 132047457 89697815 801942020 219774685 853052081 647848597 744004677 732662905 500640551 109599384 191247514 441636578 833329979 345864015 544034068 996793595 624161061 224838433 103848499 653352700 98352310 914799357 564432116 246695666 711485751 995587350 356459457 260686158 81749223 832863397 45576975 205981468 938082637 250989066 331464629 694156911 326780587 217690477 190562756 993716945 88507645 30507380 590307055 932645328 734094035 576769112 27338209 715922980 500160660 76172660 736287332 572640948 217935557 433246847 703396344 41901855 807210270 538202783 421540554 960525623 585718798 104147538 299952079 777385663 603949575 26685758 569986049 695149994 255050042 628342835 978320464 83901983 858454912 860344074 904400253 871585920 168433046 316866369 122973585 38827177 748555742 463530126 501688039 660451035 738001836 222563653 581888768 151689111 42731385 355900704 456226124 771118227 259881198 757299070 227392898 307928503 942211510 91833003 906265506 4594363 922267416 326682765 243419389 12417116 276002947 319010377 251955690 562244949 965921448 229243998 63311635 477774793 57918633 942998478 856789636 574283911 607437982 374721331 608329021 159419952 839483439 902418843 783805866 956846503 92513273 389945351 598019759 574930458 39582240 293563941 455464861 72595091 13702081 657421189 592972672 49513510 264599258 704316879 896806714 760435162 930686745 17508110 940875666 319843991 524564242 901871102 769501772 924702523 449851767 531892371 708557878 644344057 525581932 366260970 576758539 803841830 844171722 6102878 394718850 49193557 781316195 29067639 141052109 962842148 103426292 887214130 278111927 474281619 43230996 514043265 694948434 864505972 192197785 173197175 862811928 921160276 202241591 751905316 228301140 418040725 113697038 642749868 876478677 735574964 963258021 216319367 383346968 581238758 615068073 820390834 28193606 661095426 34205890 128707084 141577784 530517652 758663950 483132008 727078863 223974934 55341918 967047306 431607646 30197858 920272512 290481039 319015607 672362337 50604771 189805218 485064643 550121976 248101812 724203807 144316892 146747048 461522635 119166146 604974880 29069393 109325757 508788007 373826650 837207080 4276808 26543562 55913936 664422425 121196156 961006644 715377518 36604297 308299155 692524746 791292662 288378071 254060693 729596312 309598030 454321445 542678145 862111159 363376659 172085986 920238348 990568368 818329737 399590127 43100823 525301434 763434542 8176503 109943809 79299648 951337449 768932274 253278982 70289962 872336993 869191128 100168443 410942737 567681380 790531203 383235726 638692103 781368652 539378534 566682344 162214378 736071303 268141934 382339108 355302980 118436075 100852258 483938953 900090066 61899069 662860424 563617628 446792919 629251775 601546284 977867498 208857956 227152314 45865575 192086796 598478483 217955899 796892428 311757067 308568220 415865736 19296838 976699811 89960913 770799075 167854738 469722909 325883500 128065318 142573852 972912051 277077508 447746474 207767500 997796187 117203953 956297406 679855190 46069073 858560483 82645569 948655633 806905598 91885942 332851695 679499125 121720194 183246851 130595311 724877565 596238404 687270380 559644431 21230051 246335860 103711059 460714757 368820082 896791119 683164577 481855111 256848123 643447879 879528629 741006732 799840151 980792481 333473256 407624386 179885606 322184621 25446115 898947551 991851782 303329538 870979829 446175474 858776306 727847309 405191741 119582534 254059266 683277180 619487203 592762213 989994432 279996280 39056084 199154966 732241557 255842742 246344570 342936275 252759584 381368529 633936448 800895697 171637366 741660964 873058680 631626636 261503307 949590105 859730502 964629828 92913091 946347177 33095264 963488151 424956068 761847586 710193829 711013359 664950248 199799054 584932419 582602223 634293098 610505884 330953235 488992270 946884832 745310081 476389317 100358027 212892559 620217499 949004286 936686314 832309644 848945159 364147352 956235955 18484593 912891613 37761411 95493764 163407612 6782575 795785242 471894723 950514903 268291724 837850617 185183428 100067244 49628189 64869978 236824290 678219674 940636426 229698690 447261643 469110899 486230669 963966440 45624449 526525090 401507408 20916970 366815932 222502421 993240284 644155261 831478158 124232841 386015615 865663639 39539172 646761060 326883678 950650538 286542005 93961135 943612393 423777024 704353812 909464082 401203522 81084671 370796986 136325487 921103933 986044000 749154536 322343659 370400380 460088876 50974100 633339669 681102985 280414403 695388267 213041774 961633459 622120610 431472747 765397533 545744065 720734866 157092814 39999669 503763763 695113871 756625049 347800477 724528139 907712916 776512875 423853772 381481038 159271563 45347696 709876951 407950781 681454415 150529550 909863170 717273055 337182690 118731476 907943628 208846979 434841824 978462631 669843348 177503373 299313789 1994904 281292609 146816896 809944656 534469178 295800667 720546755 480265622 438013266 508916891 404764000 750047615 140259259 594153946 315259734 240178913 480512970 975029985 679722742 188383793 609338405 904007949 1000 662295560 910734454 524174429 861972169 840987189 720755016 813375208 23142091 21190664 107747396 831899133 960244802 785997638 56566929 553529659 32086163 821314033 852978140 12252514 553621363 609341539 319021172 135867209 334704698 328956681 408796915 42502317 47353187 303120918 32568003 874367478 978995669 130491196 1083321 83528215 36599602 299462030 356043009 664969136 9026969 699243615 644025893 571422531 260575696 22571510 257002625 894944228 32183175 550996112 243198511 706775262 232678711 502018631 947244035 724323463 104073701 98426225 943551717 273973716 766018330 655060326 831244198 126937300 894947258 892412613 835735726 27951189 257416035 769853230 828790733 52713813 171500662 67492581 977008117 993731372 466441178 331569392 98863142 731378694 527452192 841129632 464384023 917127016 922868767 788884373 294023694 1013118 926075244 373941073 304756045 939725078 392934909 695285362 781156117 424749541 910200733 599155876 561292530 786960612 312089982 632321564 388313921 285647764 145619247 940957526 648619080 585329537 689290405 99374056 504844813 25379527 976379655 905148938 824538441 165212784 420469918 365960362 735548061 388532694 90018281 82867893 409905352 909783568 838854798 391108685 370344664 202962153 859010843 774444628 831693209 948113788 156344857 78795149 191242948 315357085 879523497 105779852 550415744 387178472 463820406 135930661 759087281 667077543 764826892 230301701 262103373 111490211 777362654 131449620 201500740 367398297 566779492 845949751 598292468 125086323 843859780 658209835 632516464 619362069 505470433 583066471 180579254 746895159 977767186 66014379 540304290 562707415 2930566 895157233 563223228 93426832 125005855 6901895 5100712 787579533 115240264 431353197 129508752 703398851 413256796 487972395 650751449 924232798 31679001 17799103 136739828 592542815 53977018 39145299 633076653 497340078 633536741 141773000 608895355 826847086 43368921 975533808 829989677 891722038 464170920 679319595 241556005 997711504 423161781 322731021 843040568 50983793 141479913 973092107 828051782 713797575 335442161 157041399 449695567 184495725 38039119 657202773 346525231 473853524 556372584 422946876 377612239 111147868 623248604 155824961 966582972 545285091 142921903 399631016 519171412 456226469 575506663 274862569 502991338 421514228 976369819 344264759 408803842 53070440 43260168 520126175 701285715 516232392 86850162 615837528 230882356 262736740 449920142 131881298 708190144 1132016 23929433 24734847 782717236 144056465 672178255 934803509 602634659 255052443 276281949 102866249 459529100 39266570 94740100 23900941 269573226 248083232 878311187 903947450 234578625 735811048 226648798 318308227 127161699 433151901 289801512 237872931 228720106 776203417 154878867 852360903 300897959 703626347 954169521 673435112 918787405 918339654 260047733 337277447 137487101 89483054 549198068 942727498 12278366 938650797 562913638 359310484 575565659 388385205 358312788 65831674 96497425 867687819 619401631 433542475 228745315 832687712 835525560 981155052 524529332 428228599 146368571 89548214 778915867 147438417 952123267 250338617 63057682 605933982 235734642 719455067 804014000 456782073 358863578 615307195 869961798 552009230 984908071 851674552 464772079 653461260 190142257 92812739 151699793 293687779 293053464 306811553 899537796 110211325 868437933 338098248 435615699 746585888 149573899 973717553 449391314 528193679 68127484 484808693 267750041 40279952 241151510 381352714 267288811 75845530 497305190 135340537 471417260 729837119 90599610 358965451 241369824 885521723 92576099 765145736 892222670 308350809 312057175 494070961 355510596 701975011 191591176 69162424 666725225 594466013 182902292 991252858 793747655 817212639 576916007 577505289 292736146 73003795 818093668 893945133 276132170 344101321 977380781 283634574 416391754 592361693 515525110 272457569 240511862 287433590 961358476 208793904 721368027 724820073 700843274 709591067 66587849 87988879 69224561 170116789 538274843 494170846 668566301 190662803 125574535 451622979 90709728 669345904 750262023 216123932 925258034 201041483 221580448 490667434 380681130 721789074 847594073 386266132 891110942 995595793 925427242 181972604 270140456 265821490 1700004 384355635 941751481 35432686 895346645 456117528 997496420 106982275 552939919 159501154 187289898 245206513 505123092 690670023 292938214 692384495 996025073 40747295 833964941 320339745 581422447 433077906 988239196 588902865 433123004 647308061 962268452 925381991 701510460 311075881 974043211 125853978 293023687 703869061 30556426 184444735 329527669 581406015 180970830 210096744 218113277 565158495 268357062 251397442 486255944 246903879 150415081 905048298 901895452 628846268 586875288 824240236 84167005 990829713 671673078 52377359 259015954 713030870 784902358 591523224 123770865 275710135 372070564 75477997 601461328 504080171 580447042 757652387 54135366 49144968 335495935 213157460 746710279 602495673 530889718 998400621 470511262 160553185 19857094 593121348 799253582 137433213 627453987 984839130 970507043 918810533 647469418 129948067 483617740 577751526 87435221 31915308 260195808 828565633 663222976 617674323 378262683 580890928 583879838 95594481 628391612 122047124 58325122 363869686 296678538 203383996 787808600 463591034 197493419 424654610 973632567 519209555 435632705 61452036 86053667 773247353 34922778 458107307 652925987 401706705 220379761 41991910 726867089 947659702 421163582 552855499 647337715 566135067 667776274 326572356 658071428 279216843 295283899 733739466 933982990 160481362 124132131 887875391 141592006 838144744 235636897 207820068 246232155 343195983 634290538 145281017 545923216 490350400 368039243 885889550 214264224 52191178 120625774 234623916 209235937 588015478 579558168 52817116 662030048 567338426 31289027 368411831 308602692 702598953 816281949 52943045 534704973 121429886 568013449 923727675 360419538 107576140 548659354 161447324 607305926 115197477 418763366 817787287 586732195 692975659 228368731 3899238 978331647 707592686 490385105 139062032 50932873 1541576 695809131 72690711 745916950 744412249 514314535 415774223 822335368 633722606 334490702 558999472 678097710 28083937 792407762 44634382 587546459 728800559 86881749 476736842 46291175 850283198 20790491 853439956 140574175 3544183 564897899 745327275 64507873 333046231 987980600 641216485 188266308 72809357 962806585 99131364 166547670 53686373 176197921 87810728 63507807 951413288 140384540 218863711 578703949 664607755 180825476 985750155 654253330 974715889 395481422 885571504 673773983 543778037 232665525 290129920 227618230 15831423 579518838 434109009 966002610 553408309 174048370 119971939 800826802 449448704 782366675 63167511 995769317 583515850 288101140 102538357 996346231 632219903 523613228 857997402 944314300 758582008 38596420 47232376 488173299 198033738 902624240 872940159 19897822 648152451 83716480 727660050 672359278 730766324 318759812 282843248 90496260 145641622 258691209 336662315 589759159 133976709 168587873 269908832 722844250 76420279 342601775 621104840 688845387 918535531 73693689 795274194 218141043 284417811 503771408 558523070 356539178 408444274 602398510 757794439 12548219 325930603 535229175 467024671 707210279 991282474 908977802 955005236 677701656 786841988 178112114 398746456 1967470 690350224 311857917 133463607 875987665 724397883 903708836 233082341 69891203 648505720 365986219 387566596 356675927 598907778 139878067 75294843 222668898 832192867 378018097 79018082 360825571 740580960 398209018 486923364 526468262 537866271 196256994 958870699 660398470 573152343 644907680 35233125 38890974 441208139 275401066 353133735 360299938 632324806 989873299 742348932 30239677 802917290 174997653 420941085 496855184 18520902 479949723 521030960 258058236 142135828 129219326 435617581 151753279 268408120 204648408 640503262 45473029 45548657 94282114 110153281 455364236 906183525 116993992 307262717 516304326 755965258 260288898 954141495 520990755 275444899 491836183 706195009 523127841 544710710 834886123 765218255 23289736 309085802 364531960 802975321 258289299 388969128 719766725 967548825 371238007 759795527 247122674 437391688 73945841 750015512 105202195 155160599 196607083 287807750 793157271 297837450 444111147 812365740 937596102 855917628 332586841 632008406 254392530 485124446 165432573 868336375 128925274 264373485 654253834 367640529 675941201 213530737 627578097 812958220 651875393 501006463 369229567 969199334 713249302 752584275 843512584 14199596 635587027 426654885 481771553 360657328 57862484 49186840 191975902 781966101 315543353 958588169 476521573 586965994 760478967 890170321 186286785 224145683 482727153 389935200 649191541 804240569 151738344 874292272 589161628 568625793 197255740 222028390 244456893 456386720 473659307 2616753 131018621 215272992 945197289 533203676 678328136 503807235 14941343 378929594 362729432 972121726 291346017 362139926 91947920 651037365 930691 985079586 890380620 971538600 504631087 97659125 766301515 777367127 609927460 803323906 946228927 241439678 82562660 122668346 131929390 394796159 98864311 871903941 91962416 70443640 518856884 313034530 280129046 591703730 336711302 493476218 525489276 933312346 549092469 440820113 237996172 63190029 379000378 74825362 882297166 842037633 370155059 956257764 495735418 471243244 99506369 98676553 282920532 956698153 855379731 217205684 215054842 945108383 129203821 874520691 800645169 950800604 899803624 77794027 119244938 519176670 38913484 558184245 41088486 141397657 130217858 705959291 41395639 248777043 22764383 597166206 406728755 451655194 986551944 936607118 976649888 490049105 919627555 729876537 485619039 981246244 354903947 737784543 208375860 902896597 109768968 427804564 325332454 686515206 570950493 590159041 597418239 631433812 746693092 891024361 270116605 1000 971673019 421251838 679600477 485359482 82039402 941778250 447779096 633774262 407130191 731596691 352208127 138953540 425653178 211929443 571376031 930615998 506007675 464386625 308843958 800850407 418374143 283847030 162768656 728179914 152690547 803671761 339697512 121706004 781381950 979367654 278311887 607953123 969901593 945949358 403903716 203072558 252207824 462574911 801276926 32675039 362897477 987640892 659223838 189973754 66179267 725328950 139738035 845144340 745533285 72185443 669786374 598864188 940900875 92759909 937787109 301273389 456084070 856670714 767673011 651745764 92175415 500378657 492226711 203649059 841208997 680581693 741141450 292043990 155869759 372737422 885879724 162939786 278771223 725042286 152424055 921666843 595033070 917137334 307592986 193927709 78403580 366689515 11806905 172651593 444214394 77190509 475823604 492314365 151114527 769290753 401124976 399041715 946177617 873893086 159773039 113800005 196410427 631735093 435955177 539163999 860765270 367759873 642049541 595653062 288712761 908289554 470175152 828185987 391941684 150754038 12387920 461311522 870625435 60389783 701885441 684567356 583461351 845874496 929851946 925323000 374390173 635927870 729363545 915593408 657859376 327579247 45968595 141936200 132901672 348413719 661708359 553549030 428832413 295068082 732106052 788480176 461656107 703470125 295419223 839553520 815911441 229069469 787660837 615490585 37998534 295203104 115551679 764499049 567956327 333313128 334113792 807286334 321625653 5999510 279785671 833303953 459670509 565869885 400258442 142687597 941982491 916411365 767137003 870915977 244760394 179886056 600561398 597963795 879280767 675723224 609747700 155168435 494781528 521825746 512695875 783194123 139317762 133599202 17322359 262476436 403621818 179529210 51495550 699132229 365592472 132732505 432797012 48997599 779353670 511491625 158949794 136379791 971833908 851189133 39559153 250067390 561309689 158739694 390873319 570888917 939813281 297470392 638530187 587329437 627191413 102044815 672360777 963254276 7809783 299180306 260707088 54021876 69735459 291321763 40087563 665621927 13471013 317065283 41260932 914631888 65275969 337963880 961090018 126279407 541090152 178809715 912680765 364949817 698599626 995823255 729058534 731744244 887986767 836430728 205413987 717414971 932350902 624060875 576257199 918231955 239420606 737407502 632389569 326203216 978312111 203943643 602208810 848960885 310281069 526341795 672769460 105252570 857518412 398039411 286756168 858842265 320733139 761158601 518227389 488481993 440676779 746178716 184550729 836119987 844349563 407355087 369118114 197078019 512857056 686527075 871624044 863406728 441940324 175132769 169231598 730055579 730491590 38083902 665096284 660588998 140882110 680157112 182664435 290365339 8583022 56485950 109281110 578019954 106666802 141697424 423877189 777366109 78886055 702614315 416295924 147574811 47211672 399204351 167005031 834810615 93314677 934839193 322569905 33944830 510570515 125332006 906011096 175000078 821822223 654582951 526397899 561513013 67088159 868570603 688863130 592034546 709302286 704874163 383710301 71084052 689290413 661654213 198918354 789603693 142990286 307357453 376800838 580824411 431887013 91377812 136431015 313857551 144383072 349800138 119901411 299204159 82268119 15576958 884171959 909007524 847157719 492188889 765756444 299626335 880819449 955404036 393840458 224841411 784971058 57915309 860365452 746099789 904756467 60274158 668652163 687834858 924751071 827486680 919303501 343792774 88988654 722410650 811206696 189047423 343548882 260666451 984544595 831715961 562399062 49968951 508415596 886375129 986645823 763453409 330943878 149434585 793836169 103198065 688687515 57580620 869029815 35561174 445231941 61613098 276444992 793631898 812480469 479407581 552040924 354740525 599231584 872999755 265508812 429317012 913492280 96067024 501317829 720928635 926087553 889214533 551563800 432527014 4195324 819690680 962828967 798615492 83927268 860296955 637040321 511906279 626536069 2522731 766807989 834591093 801440341 468622934 313527668 585308741 360285982 922471306 98099291 215768170 84004854 510795125 949442803 578432575 958683181 46285768 387770808 132421736 485003479 97042983 871398332 15549402 43573621 947196883 658987556 94867260 196186841 865181460 413006456 886164619 414978083 235049599 299228417 514163228 27504361 180421866 265241720 597240203 956838173 792710672 655583264 240843630 580507371 244683471 710621146 167601921 160406034 86056156 120454154 755304437 75210778 97099057 111802301 568560954 655601649 624334337 116215570 44467502 867960050 142676676 823496067 425699408 573530878 610484466 134734541 134758216 921476476 619737459 696071293 379528812 442210912 633215589 964095349 896392464 309912292 155090831 168326775 940679806 320685118 861021740 563551671 85806867 822253218 644578838 858094 839272610 820381587 849432961 199066562 177048704 175828891 694407666 450867330 962726113 587413995 400753213 415976860 711375448 5983591 144582847 318591538 22199200 557437874 842808001 793793460 190301624 328728959 790129947 55325841 51603938 951725087 713627186 853489258 347426942 528868357 581959270 181950228 510485071 618184469 925084971 336575314 231258885 74836511 957211635 131054363 322560841 516496176 633885514 571509281 55825789 240348318 136269738 46592690 91553235 77453676 344093855 836690982 329946429 446370463 688904150 502388111 659514399 191447971 158361198 716526849 252640961 97322523 811441824 501046425 821062453 510758828 50721023 673607065 256160225 551583945 744286902 60787672 59925793 974874269 344640548 129459340 153639159 40493394 805334542 355594924 199517582 905156548 665151115 282738338 734641810 865819406 584799772 265043844 934246036 454983056 682726074 213637785 574997191 445585329 123354975 578739394 689641460 78233880 276218593 158245920 170707941 669887792 664786077 219236511 186175077 189949739 752978052 78614686 904688426 687686520 57175707 273543923 344750027 605478821 261118658 877553819 530407797 813277896 826796281 437438549 704846299 770757970 68640704 247890152 955828489 233642015 306659855 94436453 990955299 60319388 42874652 572939589 137628291 626953495 712130605 38349581 988678705 120754344 506146492 218745481 226795065 992439684 681948932 133970802 321582933 856763831 603808421 56904336 767956392 579522494 238977279 760640122 23963740 326559219 120349898 743172025 625408193 622997312 831440070 861022777 274129430 854498121 9275690 624610622 501507442 556392328 434552624 890221816 759599841 151262758 725900414 640825204 647125640 787779943 919512118 789540238 903899213 659129067 515049306 704118330 92160253 341154811 145040122 486466944 100619925 889092259 475894575 43552567 552305576 18324567 671854844 275445755 504559389 309259605 35165971 10859857 355055830 351050 938203725 955927391 875016518 889620016 763003718 358941608 88775855 349655102 388544510 800613228 481644559 123165579 652793293 47215687 421625995 262631855 625512193 792877226 687860255 448500205 594752077 354731830 669931168 276404800 612686047 338277773 114624621 541247655 135647523 942794487 205060981 201956519 828591327 316282949 630204085 817229531 188192887 375816129 802824242 47711546 337895568 259180442 343012494 46841285 668839027 330209834 441624472 894035341 712563030 287159094 355724404 604611016 214668765 819006821 289163056 799135426 161393343 509111444 416790032 427813005 99479249 127149114 676337875 682514859 398565635 530535312 872989583 650299502 14105631 280472418 354696508 982614013 622846054 125369957 796760023 248581243 817469914 269435127 818971896 619616802 190289481 720257486 800494430 771692171 245639427 664564501 905665162 995770325 235847952 73168685 306815185 246891375 45037943 304094020 30762284 390633220 4995682 893458935 523773836 978848383 454423968 536198624 255626149 820065746 8147628 121110840 766723776 716582732 263584152 95037010 344753152 602061899 861282314 804345729 877584201 57347539 13582584 590403489 997758574 55112512 652858262 402933946 998870924 732415694 374002708 881048627 923416696 290201108 926159116 221448727 838996837 432060370 926213377 553449100 723753544 130853531 212713209 934523312 706629178 232291558 756100818 556664464 386037921 75381884 120351153 731955098 453782966 766308043 995780992 92435817 681652250 731683804 741151109 729504697 174309968 792576014 546612101 888018606 843598248 11797899 646314753 604194412 14617082 757591875 851610527 892232482 478938833 712451245 139146546 397487704 154723938 637633763 77712141 620655810 835066100 554642066 209468064 869636426 360296386 980579056 131816823 95937671 992000899 820881906 860144253 459234737 616405882 220992285 893225602 598852164 167151463 886110618 790544499 886134556 574361777 402518806 116319237 459968409 800513104 810726903 261207039 916377727 101320 635400431 895486935 188680054 682894455 53865821 466186674 87512206 48131192 79171193 979396950 503197215 682936894 624996623 87767206 876992886 818907857 334609991 283197027 414810748 296822864 638429940 770017860 665296371 697970038 11927288 514301342 320758303 951238693 297199412 461394554 182943857 80354497 267380570 108824550 510658349 562305761 650753040 384575230 768042716 289046000 542111377 777307651 921583432 961811837 50424163 457945370 139418482 43792645 76562319 529566578 281950263 421265572 173550658 482124163 616092858 179620353 914887557 347576487 32097402 984360810 3642157 152424553 908026567 90853503 479560901 389126082 147127665 864932796 61884255 790154045 801689262 604652360 717023430 45407143 81906200 660722666 334538373 553569568 650808255 173957590 923841955 175327042 539550058 937366025 391417920 87914374 968637535 16896025 568183945 437176638 382361919 326590894 166694184 254053007 39278554 159850987 56780297 50004913 85261354 42275493 729898251 814489171 1000 943126685 807265036 465300722 996974159 30224245 347182705 882703952 800720541 679705397 9665551 521873416 394628960 173550045 3486090 269321380 986969156 169754649 665846303 520307866 589984759 389411300 901140668 106877986 200665520 327733848 849642223 280030408 18827260 768225195 232886464 577179435 179780653 536783084 461986467 422200527 810415344 347487189 819372774 858448372 518688909 5550428 656480136 41193130 465866954 471371405 262406993 218557103 979870531 64361623 8848434 117086476 221884102 915293553 274572213 178359245 431313656 193971212 80590165 87479127 28925527 678333314 867638541 998781408 755652025 592095691 578712772 260788547 9433567 162888855 998337040 329714153 678889833 155249208 521496551 599022344 4165877 972410624 540784190 523433686 360170152 138912879 108242476 468381910 75941042 705741718 38113404 473188603 346416108 569928362 352002626 843863753 757788076 548829395 743197646 519024823 12048176 970693127 295107425 984802705 421331320 916191085 999084348 931612150 45150627 373181046 188392252 103652630 853628949 848548618 578818788 984795509 38167298 119527521 346935045 47114024 140832697 443518021 230876225 38195703 455013262 459725880 416495951 383662168 943964640 231175489 737494292 46804540 487502391 121076385 786823258 372404824 398085726 766073543 363699865 28446412 602532655 495158789 69368491 364850610 183892397 717786431 125413983 151847203 71632177 984343301 422076122 542914031 349427266 84482034 637152766 601082377 848219596 312376089 234877034 560818007 594120502 435859679 103992243 854129304 660602760 791005209 201743159 340740748 215920988 246214426 305740157 889850805 147461288 107111682 524695196 96523006 735593079 95386640 316901411 283442103 88319861 612529634 103378776 194876062 237959301 930725062 470976456 119253668 765956448 833801051 945113565 987658820 102157217 300694282 91976427 740719646 961956897 443006223 87779774 420237976 673938118 807346489 361503125 887596757 802176541 130485974 976807613 55075499 388339359 566168569 401641098 448102771 633084024 126869524 467328905 319984362 20646471 127652017 979040232 366030531 326568402 408425478 166774511 956886795 528044437 94997966 32403049 836350122 412909880 478095138 750046564 139975816 600698810 537907063 866293861 434469661 390497021 930713794 421868226 725990387 917120829 332670150 244163839 839329513 525186862 733391198 851952310 552673308 113391075 845056615 991719061 187753881 89284024 249361348 588418795 443078791 547052904 189259396 728709025 246252087 461710852 49864625 146429311 846145554 253213560 424049241 630284464 131759572 429894825 46211846 931245084 414982324 460244369 116718414 499903189 574115032 647321551 151603624 851075573 743517726 189464228 256872171 506365172 935083459 410021223 252358386 516833036 939811773 542020330 56707776 350801233 475832701 705883248 527744501 330278134 966681300 118379767 495189737 938776440 568438045 532158858 851546867 895616826 890821884 952491609 194998126 887642146 59264174 528814958 499443157 4385961 361431904 868171445 684918401 200816364 472304120 933904372 799450004 15302102 289084432 248892361 362956959 610266820 59823292 302880868 96332072 635270763 173815384 503898819 3234680 933347444 726490913 493416216 660474213 154173316 845033123 32856889 542721294 272317342 422511411 344420600 637748938 596337780 757407965 505633459 5616666 106181159 138674748 536802907 50808426 17975983 843287612 615563693 599756754 592511665 336879953 529690865 923450304 857963794 173490315 58853800 997062069 191767294 132891500 959579081 466597901 886077395 24262318 136943916 916345149 109473653 658786049 319756469 461220462 817074468 798227637 828818535 9619654 614618003 554123508 955406054 302758935 83313251 147387518 128575992 46888636 647944355 665181715 497902852 675767960 84230090 210145411 105879520 560421489 609980447 430604469 249438229 54687924 736505130 466239492 586505732 484954097 773782961 768538665 209829282 8866188 170142446 258394845 861757199 453822347 57435372 413673615 56837569 167214455 313915427 861538170 538389840 914088502 924371296 948736625 835892556 981851550 634616142 829807826 232087903 366597740 214497704 621420700 905822762 556404503 902875158 928208297 100396703 977621730 165093452 417486032 458476176 131391995 711814056 131676528 784581258 396615006 123707006 122557603 912221399 193391536 788908165 92374833 77301644 839375841 236545778 479340876 857128810 316413057 701871440 324021650 270066640 279570387 3917425 104249616 225149995 513681490 659687443 210360332 599219645 665531695 189660668 494178633 663284063 199363189 222823158 250884491 476312269 814620513 436609497 548625035 857404599 431883293 573600976 551996356 742225104 505019876 573408961 999210418 247467431 392537949 205187799 688567445 622735908 278065003 413355735 643620944 733161039 226810001 897359368 116907522 240366447 735481787 666404016 124092808 88609543 162913337 93664422 486703801 991884734 324456506 830829738 378529417 50830856 829544904 345529040 696735579 264938478 119939359 897067243 955824991 228120680 952145049 693308549 915305391 253807801 135212700 318616785 73652051 711976494 282716763 22453807 50782517 616217771 314418901 546236445 364960591 84681138 450172300 614079642 32753116 323770444 394701875 884442304 51990989 432897674 64380310 706825973 114740205 128511931 84126598 396273959 669328223 563873222 684645539 632323570 252744151 419311471 637208209 18700608 301575464 100799135 556067571 421694459 935276558 203897833 221815884 334718337 535958102 104874914 7464810 702890944 352482205 237834536 535771781 783123655 525541950 119831360 200049548 128644718 958121909 386419678 674247006 777010489 784631597 315506711 411474031 126828410 712534220 650381679 77978951 801299491 518051101 514112355 136783159 504402210 610933879 280062038 378542272 63802808 355530797 663132113 928066333 836536899 38849842 339361670 518415646 128645276 566394474 80869319 837545747 894997450 60394229 448418171 605537742 604987488 156213423 77313682 59937501 967719326 303276584 73423720 312425385 774518067 347247267 795726021 70581075 672428962 101561255 211287626 749681593 715354261 663861607 754767874 416503899 27350948 180161103 594718926 491330812 362566344 973534749 42370396 465396230 698385353 81132812 436540138 525542133 165509279 294726854 774961605 638570264 486145317 403197201 104338291 975994953 947481079 77847318 198105985 69635682 592570404 136598140 52061891 335011086 325435088 148424618 741064375 916269447 901440000 511385512 23303987 136748746 449472695 522016799 415135170 325809566 776702481 491244015 408501315 537884681 396154507 489868191 269691732 968405110 59660255 555553810 82878971 833357385 210019497 434344332 675811765 697509907 427289777 718491721 507799317 47446995 191749986 669607658 659071051 51715920 983971329 293644035 282956377 436029551 185597413 66451119 665379905 164025075 341541904 108126583 575304962 473632248 295315439 624517697 79477130 823923819 751990161 744519193 980461465 238819148 832398631 419264924 301820785 635654332 386515052 500564408 936312139 185668868 41268258 6262898 375362565 919234170 103577547 938000449 496376539 78197809 948334728 256350933 628860012 883259437 237407108 261062441 883413718 172767345 638936920 929117610 763192442 836019169 432228114 733491481 720122177 93168378 137850863 784063205 63293696 801680607 481307120 556897525 898360774 275091759 203468110 54864741 169867848 745645044 543149905 909031831 387942795 694833303 131534728 247237927 393256229 626574 998849247 289675220 574222231 128184265 956028866 754145639 129657313 430066892 135501750 362347546 718572384 234207090 758173443 915533195 265393460 521438190 637211897 671186867 233237499 572125897 663563404 702073040 657901591 479133982 100234545 965560623 479723076 280689249 860941364 220271678 181992624 42334296 551599024 118307828 774682732 32937076 187751167 463139296 24225122 198067755 245220006 239853059 793994422 671860813 450587671 117739215 11932679 921328999 52086578 372572152 33437556 731583444 166928205 848223086 976343559 644009253 141539323 642339312 164427924 514795831 566854790 615681576 703288751 620938627 389143209 147019574 978349529 498977426 14845681 6630570 25461117 589483776 608983090 408138370 627890766 209153454 887201131 56797460 113422705 140167353 233637929 470855247 152188343 406073726 651085129 886783338 702998473 373713560 548509146 238326287 144062948 985849866 723957632 281812049 617134491 874884481 622719025 395550997 961710034 218132593 696266669 952798543 67070467 618495086 398155012 811524041 702675379 760005672 758705491 703273627 113918175 437863887 372987672 97633400 468999556 351095843 278680307 318539921 132806814 843767600 650306708 13565360 402924931 79518900 489399665 390050985 280803501 857974007 994936812 44432974 32594610 927671690 555046821 57000802 435397468 613978472 111549773 255470207 35875603 742261204 45643708 199499500 594789216 234003605 469680025 661599499 739156819 429063142 509691639 83956359 803783297 289682 43904776 546857266 18087389 561548978 937827740 140655825 775739090 424855153 906650300 924981713 314337668 637399541 346055700 203857899 645970158 296806104 536100692 825620556 783090040 546197013 72349674 285360120 975705271 287858623 928081365 116118226 251442788 34366430 206479637 129852034 565207910 722138801 538635235 100000164 861345302 611569319 850084609 896062889 553982289 36103 552008213 721022349 167678553 737493842 591654523 35099657 687365341 249117015 765176255 624177599 744377484 688126523 57802665 329807439 77183494 467764648 382941132 700959518 32487819 548541719 184196060 516898869 940417341 806042597 139230996 987132107 156630674 272508283 765791228 658610294 23554616 310798268 25434164 388126300 437405418 690546626 673767735 600023210 43233747 318886761 324225482 220660810 30212228 59686784 754833209 929581708 18217250 1000 214510191 5927351 314545011 99751742 570781125 173050773 425004799 239346900 131245220 204090868 181239664 88993165 54719669 43405661 445716330 115398654 723854445 456573226 242301656 103749109 203771382 720521199 77804223 944584340 544307941 998583420 94125268 321613654 812861462 121096125 948528106 456757996 740506081 283232731 375609984 866464616 719024167 426724309 297351325 521837019 79104454 252874445 928408544 149760466 450170775 611462827 115710997 241771672 361133150 989131577 830009964 116086221 248703858 949695583 127956909 790587590 902743731 747602778 79244489 473255277 428564102 19150852 601814830 101974998 875850658 907606679 323321139 498877656 348784682 175903955 649170528 515265923 27240409 332521988 462572239 222134032 389339870 151714307 89832902 870153561 474888554 21196518 149411042 20800506 71307113 867874390 738786415 826656536 852825740 221151349 497084089 695958981 21840480 183372057 741239181 433244736 209662840 557024371 37600772 143823282 481415725 347358333 904065388 499600753 234643081 838083060 990455986 582483843 966093696 800725778 370551526 451550535 742096017 903955876 726392143 286528821 845066397 32482041 51546161 817330751 620003203 159407155 983393097 474031408 770863581 767298833 512331822 772082186 435791693 934421201 392482396 491478320 556621667 443366739 537121182 377153886 409201971 157485857 225832971 96933503 216206681 470931026 416243896 824033464 593059703 347160069 806337477 904943802 15177302 75256338 210632834 540938689 125783512 109980613 348599042 87596558 360207728 210829785 856071464 559137724 584285610 220956121 807784805 231308860 781270094 214577703 258416057 645023765 49450193 167722919 546098786 131766577 809790319 846720748 817327145 39612367 254144663 140748543 791138530 760467378 83183581 312446037 569878035 341461187 94790297 705585795 304069393 44604380 619159402 57162540 541841833 331942594 202915506 32444729 894219364 738766467 663359971 77279665 462468186 380781686 720678031 317323183 45720629 84383200 717315928 81044256 866260909 752303190 521398334 87900760 936797781 829930293 700422651 608377196 831407643 589065296 885643478 333670167 446361014 841006806 809575587 525149606 346829182 547726360 913497578 114608994 240717715 123212771 988627642 645227445 806723280 839126922 242671645 119539534 243609483 291805448 908548249 261277368 20028265 710941566 276984086 641581743 137862139 638900199 928195069 59165100 248989443 180494756 144826331 30016002 798203235 103292510 464650120 49812248 312253717 316811108 804352553 36530965 52152653 289470909 893746453 494862254 857003904 541119398 426880285 337716991 420235549 173668386 387326556 649351699 97175371 886373409 761437181 899014036 115337350 418864932 646974457 171688963 839823872 608561691 373201232 364188350 350841692 357728031 528125007 753038812 293236540 59600520 700110886 927280942 375462924 578745279 568096387 895394252 17826523 360552893 485569393 210919113 821702763 964776498 720768997 47024206 560104156 127951997 708589317 346248 358372059 82033945 459754696 851743101 391407830 269816105 324815799 748543894 637337299 485128620 690760587 69371028 757882327 519686737 738803302 339333930 390876196 606931477 957523727 936095221 141836720 185868843 264075494 543819038 107952453 335522725 43339957 529235333 147915461 290715462 64464890 244150816 211484386 763228592 798854283 957907261 533839599 555279483 318051411 461021718 85199547 994698583 301838540 64674270 148789023 141977036 383017460 843788527 116757135 562738437 805921669 27815056 380974492 484689637 202224646 594316667 859924143 131177127 969694839 926805220 95822680 230493800 617209449 305233920 766277668 243280592 22676443 304019871 297552706 536236040 233703899 560339761 173690293 114859442 226625532 361097361 821868856 770998490 624882035 390525123 96572891 962285445 809342424 803710780 293805624 20759352 569073565 87290203 881699068 334503826 973354666 704928429 96175826 702324467 761559521 731825669 237108317 898685567 24003476 712243424 224697677 526395402 297604099 549622120 664512960 67205312 97004683 768750744 747783629 857266479 244394754 367892453 519091305 208915909 817624388 246427840 856601710 979499507 73588347 104806663 583831774 363753277 901270184 855476039 199347354 761872720 262316161 261669225 902183910 327220308 647279367 829007635 593895336 669268548 202204887 644323487 935735681 545541838 57444799 668262581 173419975 594725481 161262232 554229608 377547651 921348780 99786927 291203029 44370072 15620923 845798116 656981796 132040508 733139466 360680395 893300089 803066557 154625398 474632246 736959650 671508479 84919609 905008968 876976403 210255570 328226082 488343770 705769872 738683985 813872447 909995237 704528787 840695897 26243064 26746597 105046803 691025349 17766095 242949795 448601709 54956829 907561759 395312571 18877358 387309015 523627396 82494163 457123024 835212368 598622325 671161074 382016807 505134152 154641612 23164155 47730465 689290300 877546787 820270176 8788647 882457245 322676319 124470255 914139504 673068015 132815626 816681663 652701749 645626191 2586216 284455713 823917732 146544487 313746432 597708598 217395073 692368440 149046567 786733114 859069550 126746963 892685656 943753211 564897693 373574131 624130357 859653428 293402360 806151554 705182670 935873529 351094975 930219055 467047199 911755403 854654144 503873792 807402865 243368361 436580550 111763061 881508022 680963855 717439677 592233456 687642141 529428882 176511775 63633903 161507894 702455110 56817885 167599202 698075603 52884013 156557712 748120531 340712174 830577099 63017382 803076526 343721041 650687483 475177456 491134560 677347430 366008649 855762762 421754630 550656833 189880607 883249084 244869910 544205312 276585710 59515674 476741590 995847480 999511445 46461332 97056848 316581162 345421519 846771898 31477228 27539131 883656073 802597099 561957139 231200819 207865891 782890515 874827 651887669 214340312 852837242 263156261 390768472 19533960 959928491 422276496 388992728 358688967 396685558 484721463 822879316 71844300 784293591 333279832 224534674 466153069 44805303 11017606 865286421 28863647 951151287 857036416 900862385 208184251 652698769 894946841 799802233 341330818 617928944 580335794 423570869 569235461 12035469 826617486 590323230 875983700 224601615 941166995 493224342 394684884 215393493 196330932 458874584 202122695 111645202 717831535 221520377 179339971 265506899 293180605 440044511 157222236 967185973 551592433 454465022 181672758 630315963 235816783 844410454 183624522 85502247 800373546 283813642 250182888 848923833 818455359 884432137 284098859 71511360 662937958 182802564 464818286 768550782 747506195 16670733 759054818 762992837 633303306 111328259 209602718 102253683 275365610 902979461 186436581 263295394 366146369 185201976 18192240 199023052 196031739 881662316 85656295 95417704 525637026 381481193 140699292 976311617 174257332 84021423 125268658 379718338 792606003 197418141 75951723 173369868 633130033 286064762 421935490 201651566 670847335 827664138 300165425 735508167 222208066 415688543 340584634 107851550 104473701 395343112 933003828 898020147 773254750 611201553 391044902 385922667 708243136 818022962 734192405 891609926 658205974 72112902 682219533 360470303 471567751 902219843 81346025 843922072 80196964 80211371 111421298 958370968 879952404 744088027 482056377 984678868 779539361 91425945 495625773 243678124 154183043 694071000 530080495 251816984 353161650 952347734 180801403 21513454 543837681 587915215 231973340 722260905 32528257 981168921 219341219 533748729 113695346 896572550 106620922 430279596 475591833 856036586 424937189 404174422 192132976 542809276 4587276 12156106 173704369 753232397 252333347 34349468 650443760 688256820 932811514 95190878 625758856 83370394 126127453 45708270 331378453 159418418 411138852 879620236 724105161 837624197 339565888 462375719 352333313 12638132 846149158 851804154 153574977 466980023 438026624 15536984 367117343 927578080 589663407 948995214 705401796 223963174 937267013 73215106 695670734 146321084 543647543 594205260 553966160 438332981 149375386 6411809 321406109 369921796 215472342 543011495 162592524 875009728 135801817 65287859 639866120 668191766 233130866 23623647 495597360 325912434 831773891 902025925 402278834 363276243 76034844 835761242 579802672 451726363 297880254 373356261 192637546 487716325 304526440 977929243 141776506 49714325 654468739 734004547 838349439 152813762 409531330 872586318 796654751 225264136 812447660 33871486 205151371 668179632 860867904 421043567 699720695 890526180 513972350 13397327 988753499 637849687 983336146 516506100 702678573 558734162 645304720 653476872 670133685 45459162 545739698 216368252 496854695 631090446 310007312 435101454 198573718 821214406 896056651 744741150 303843533 393279470 270998536 237674347 996628230 263371901 58286801 712348347 576622337 250139929 716347861 852231921 3994453 637258377 586016091 431830458 302251529 858899586 443279924 918415388 382351500 727688036 35287575 518319596 767918663 165231644 480234280 292673915 665493201 562733283 80963243 296231338 699549316 824964695 791406528 354035090 503269510 346029859 931568810 250799790 113095068 844523845 934248074 179989873 394899096 794998270 642974224 127815105 798141835 677003403 237434482 494719786 160374830 848996548 297139343 151458883 74734232 310641744 66070864 638866000 622966129 78081360 455238478 201744008 966584436 83788525 432302329 630511246 881763095 197784254 769747950 829740811 729193834 954077274 247896535 919102874 110250935 710146547 210602022 123759700 893307991 184986200 778791191 548758409 68486212 859544113 590788237 825043201 288533264 601758695 312605951 95027914 337686927 557706734 873678312 630157684 732573689 842137234 679182777 751793327 57140123 789030588 273883190 83332483 783425782 781662421 946868236 199231258 46181780 64179967 1000 217673820 38871869 118949984 456375728 64369933 821113055 708574536 196766796 260269855 182670816 404276044 997954351 124006845 741100987 911359599 90196381 83867370 973145329 177310005 823289453 879723264 898440914 270300445 396687995 183056042 197011016 790950245 814467595 527165130 176362946 766734710 258854005 906263916 798753583 293886814 412856443 830864222 102935106 474919026 962073041 493343261 29302243 183295344 710382748 66230678 320988069 44711698 36561607 775358913 832674386 135396166 63074288 731699346 436469495 192542695 870855655 882443627 828381662 175510704 47449670 669837882 230716856 720965701 997335071 157037591 291932727 342146212 377551178 586154507 254682053 417569483 519336292 290425732 156001004 859037817 296977256 698476631 113779755 797670602 966827889 161681741 748043115 228345001 193898780 859980313 472713999 939525264 52717498 503714207 619666403 645261823 550609548 215508262 9948356 440934537 533990005 181614868 888720011 657021254 151203432 39717844 306491618 59721605 530180252 569247809 636694267 621204327 25740612 970558346 21068046 475497171 62417754 594095927 503274941 224204154 592031545 837875408 293584237 225829570 199295481 461875173 867833294 125117572 106461592 303434869 413538409 863218603 2885889 932670747 594349663 598767966 260673378 819326902 619459832 948177518 564094703 900302756 635614216 949892931 376061700 663601036 340400336 710802465 517285221 83934328 725002668 704288118 729446470 214818449 744918764 640699708 655879281 381726543 836289950 416421679 231078591 166959211 343119822 259718336 348983099 85289294 614602879 370044785 945593313 419998447 216439124 711621430 708068822 414637196 24150880 24720960 540716206 989207048 168134251 209135807 521972139 310173646 922244852 652558623 927318985 305025425 931217703 412399192 141549892 708302067 12969254 185806664 399820459 178100849 585671393 465440731 557700896 430120799 110288892 926519976 523940520 683087742 716532542 385408479 5267523 295613048 67478174 546652869 166745827 253370216 769438146 117670831 139231720 579919562 703287751 726824995 972703708 561424428 360487167 532624015 184736508 349050382 689752470 765874683 55990479 473727990 791251006 41083326 34802061 650441660 830350587 709782867 39881314 406674958 408913980 76805759 700400500 776190572 310698147 955548712 192952357 619957265 555055014 984012611 645947518 739398680 962067012 368714849 100183344 775492225 117117814 164869877 670825811 113888529 521305391 146367258 254213492 604144830 870544340 729846927 934828578 688528974 391959425 21656942 503600817 76010746 303490566 639947142 795080078 683221349 357891352 161365024 125482451 280990611 333330275 947238381 11439773 811794179 719463211 152758741 573570484 992832216 749414936 503744741 897984995 597304677 499916269 58779946 444539976 326205503 553061492 397214597 843033243 949679344 918175338 628714239 699545707 201992479 28783458 51090777 580338521 744660931 552116513 641084594 537414298 536771464 938154729 119336214 603815600 775556450 12307736 127032398 316413292 538308311 242466417 659083013 960874193 96499480 263211894 837340220 701200327 106828276 249911238 98616789 765769222 694731588 793599142 575449085 93057949 72993020 514575095 191416412 812786042 499044052 53249851 66121533 150035708 97623749 819498444 951768938 87069149 440657323 452659947 736117531 449493388 318515053 612325756 152973186 720914764 946919309 772643659 774048630 502338198 464379610 521798746 163980270 398572798 527726151 267620678 403949679 112129114 604665995 64795304 643152094 343987836 845448169 961718711 36731305 158500780 839506605 372802590 68144510 422656813 680377698 580263477 301933340 18790169 618236219 736488378 933393480 718734668 772838343 842404391 652257546 590703953 684004409 513511841 57206509 333056593 688765251 918082079 720058660 781431839 100867115 698010179 645405271 934025097 160494681 68447740 304994628 575438550 886103562 977436982 758001060 324679202 348840955 326734830 486396162 449084632 518362651 705371629 314055016 800244689 811478877 32683968 285979167 260846696 915962146 344201765 514671346 40813001 205752324 249338248 917007014 959523525 320582623 880027366 540931575 180227752 788974982 831288440 588917762 94348104 285821076 689671541 138853596 757832511 472823700 328611730 456484801 748216674 967881047 643727544 83610699 46114381 922980948 499714482 203379348 823099332 12847499 777552868 797031765 868662919 990176433 139933351 272474608 770560232 75186342 820853249 32759565 926643938 245737962 391999842 584038600 718998020 116456524 347531867 442311820 484125277 408314945 394413553 415899261 776508550 647670471 553088200 80499444 191358031 635602984 663557897 745738373 525573696 595816725 638719653 120087541 3877641 794499269 51128202 117575334 239090467 443977732 738509168 415222404 863319592 473871579 570970635 745818198 70166778 901896868 331771552 55620409 716483212 146595163 201242965 424395576 105521075 886568167 257418560 615392428 565828092 471948648 195354806 689089682 812386365 226010659 744243597 166149916 796491209 527694039 68084394 337232718 254310269 685397605 467512452 512579654 972331462 7551094 843404346 221950705 60691563 387688061 926217297 81186147 668947461 831506873 525444742 194646877 112086852 307410593 574849004 142240734 665070021 232944097 49429678 520682332 105446298 444828788 561228137 50626923 24390366 604228426 875657826 981942091 546789479 88440771 767449360 797549622 486737336 859959311 850800283 124023035 77295538 806857275 999817582 808533818 373649632 552744220 353774028 886614332 128000320 670460032 795296209 18648249 462951640 629316162 335882312 696420811 316033259 273825809 425134231 20637392 894501990 354879236 299480451 102792128 849011240 321745565 49431288 701001576 103609289 154044411 107323230 333051823 896861378 440360441 328056327 606218702 84746783 596576964 42502700 125616439 464291696 27444656 100340011 78745980 140616732 21021808 732512147 506155481 588415427 499595546 654845151 634031862 411164269 987165755 341417698 767957529 764057043 221485397 684036800 919209235 603992781 297816850 886523595 679270502 915955420 400912433 205558438 448592270 597886939 619905925 503571445 988913774 621064782 979949003 979265328 705332591 52002433 250976545 519767326 432235862 662368754 164400279 373393495 306446799 793169869 153331635 849957357 989723025 769931628 263735154 611913996 697456332 514174479 192380183 420929753 569119545 604183663 350848503 42794455 797074272 322643453 165425493 255737952 334639560 968966912 275555485 51993668 259809 499352359 546397343 625039350 507085669 864110790 264701435 800356208 224149365 573690226 509543004 509341817 382486196 171005586 276701218 619182057 306800320 166635511 436610175 912747273 100692873 415597041 175630718 331907965 100133727 66865544 671002900 233662502 700692944 49418149 319414605 807858682 76060214 257815551 413041978 231026413 219776311 998624255 165282378 518553499 899983573 806485726 737533519 967886838 123064574 899070618 225291932 249496017 219851750 488007268 234997379 349845462 576759761 314730848 52830967 313423540 449378835 55485440 122879130 13869631 305663064 539171498 543198903 3080880 937284371 951639636 53058206 527123065 886942455 767710097 131296303 516569550 120767109 59744924 135429505 690269079 489317668 93568345 157626436 210907170 711012894 874044145 204000837 340448510 771082118 885902983 821502146 262913303 748674604 519747428 894933613 718516839 536890156 172934732 39711408 605868337 836385569 8664477 73285282 343681489 145962984 227605528 230798110 316336880 757167187 866224262 680496761 465626641 722282583 951025407 455282745 860195937 956490170 994612646 552043483 840085454 578268606 335334008 91715509 662021355 719490045 356152363 352510775 146632613 247912392 99223597 359892433 641042033 902032521 57546650 32982314 698348729 56512203 139018375 404848871 964769409 220794861 307667131 750208908 277760243 52165614 88399156 886810186 921459481 36343983 850990225 664865068 254133993 525047317 341666479 389692935 458947602 36009900 215834552 603818644 311519363 54738313 349388972 227916788 245816687 467154541 335733178 711123030 387632943 993561481 605918591 881147791 808120312 213373195 369156524 165800970 968289047 701449992 256666517 389838903 706857899 511795703 955101119 762931597 168117053 123007151 820507535 627676120 824165887 554385947 717449347 523072088 627193554 355001386 665772805 392865725 364554422 292732365 513488856 716736242 500978045 53852246 477701900 844260898 572328686 405404570 77527592 940047624 148856914 786865748 741299744 977087348 8950821 746713473 559086253 44132953 273665974 982798909 33679060 876120416 50753670 589878370 414730927 573723180 266197337 875439613 590362860 617114366 327578345 773188204 456787680 946973907 8099668 898613552 492281066 779707685 59561497 683162954 403406338 500014906 986456023 260015391 654071265 843009783 432912655 257647240 382204748 859536796 799430967 363802115 446262809 836329250 30170373 572086294 567574964 301586620 324286419 420543053 729552855 711658088 861400454 377936001 478178672 306082240 546141122 838199031 191590078 539332490 25060566 457906156 990144855 683241503 725144939 740574257 712883682 547599537 505153132 978934985 403666144 263311449 234059937 207911765 360590683 47027916 758849456 53813799 13420809 714949836 532610759 814441528 898096421 142117609 452561560 210899764 887319672 633078728 334952515 856109249 136989047 329377994 962794171 69524003 439314309 527639992 77360203 436331977 143875452 370342904 11197747 469715216 19945664 872405599 246437148 445681317 827685029 92733809 823406910 443393220 537464387 680132283 567406865 702507490 811305743 828556389 576505881 11090905 199043424 416132272 661466038 673016596 985976215 495913481 642443560 546030646 670218092 282902215 678348311 599841901 310634270 41761167 762726494 736720438 763150386 1000 748452952 4278019 398649173 89232058 787794065 956683241 866991524 334551029 25046317 13443153 789788177 338066618 174838305 917230379 947475032 857096474 146069441 597818188 53470968 435222755 78046862 341080730 202639324 746593963 385665590 362903868 722596958 214440763 124056976 546289858 972547881 437909472 417331546 47815761 942362791 237716335 495103856 249990585 345868607 432534983 823252007 813559576 892027091 596486512 248701911 262446187 416509762 660416927 817503233 738359257 473868806 18097482 632886724 116324553 478034542 746747857 458188274 409701520 101626088 803948717 395348456 431467919 291331532 18213725 613444803 518580865 174069135 723595947 24751809 709966548 468964328 118453327 622569380 318931177 196955292 64590968 834036020 460611586 887028282 143401538 1818370 921033387 168359134 837185485 880047634 29323157 141941449 47871650 168621078 463634295 782328463 123426001 653694883 51422687 16188243 647765266 139646574 99225939 851952700 183173839 243217964 209141124 500547237 130794046 9363740 368088959 420147373 548125588 244215169 214552374 234790060 577453025 557212309 162571139 25997332 786959755 181477336 81320352 458733151 255721645 192689704 773520687 776348051 612937723 9851625 918010 665263895 678449896 629268785 38340967 497947614 865812817 290275740 87609195 956499574 737979047 773076075 148878495 92129729 662215358 507173541 43042052 387267559 226550315 640966193 143591117 725537650 766549927 238771333 208032128 65859523 830597367 91800182 591802916 84612224 726200884 685983444 910914846 189788329 935957218 268594250 519747285 848762035 108679276 447753227 883474335 666692949 724688414 511120941 285760778 97177248 88890240 256326346 276863192 480557275 73427126 744088655 781803933 244204482 987350376 174901536 453909168 66892530 938300651 442828368 92060522 355566530 805007450 228342723 758605313 417954160 215531948 684623202 146475277 993825636 664627759 504149066 52076199 781495524 631357288 920222533 228420040 271020163 91364660 885273352 590333586 416884323 319527074 512521915 56442882 314553596 390637153 144651597 272943978 193040430 159690763 309740002 930635046 866299231 548698522 219313839 499999000 208075366 133916048 678049599 42725877 298301871 822256172 524036804 520322805 204181562 63687554 295294321 677041208 302271492 919194190 832387914 403516159 707792143 839788360 391057499 763866509 920207953 365502307 700710272 604320492 487715880 757253340 984127547 473316625 176484993 206172146 98975000 407672009 544244279 977625864 598342943 180107742 405178532 840921895 335085868 313724307 95482657 675676046 295672726 751806535 720691081 556051508 757327564 749589245 799965922 898168896 530268218 931316549 466643727 604094657 884751341 996683647 41719489 219339721 921265132 18542930 83211361 467988299 839728401 574638797 330696290 105658323 315264131 433381587 440477442 616228950 179399916 472077663 996004590 54553627 297506482 926431849 780726792 981233633 827009965 638658043 869077906 779492047 123094679 446874243 61815260 507498645 553982158 435781208 108423627 113497149 520963538 771556663 113993978 559836926 837011176 155901800 890960462 293739661 179996595 919151299 486267184 494487212 743420133 202272338 364636769 793589152 669518653 210423203 10002701 326181503 264931177 771813223 363197619 299394539 134515772 898611244 892434325 391432876 728291132 981951483 525083051 841560903 978604377 295673301 223374505 250459423 687170132 610795093 760412024 971856582 175368185 18393580 471042397 299698773 755362283 953974797 350933308 85947788 190734018 840308579 7110517 54662578 263438173 874318556 95022351 967552761 499038916 138490985 553208290 410882539 454367251 341151564 147090435 563689411 710749747 700043105 161028751 301250581 6372344 333695277 804146511 415638288 28214031 584763647 232596093 163035655 262062493 612157313 170084861 923066763 827659292 378394405 547569820 939691199 383259341 232970698 44928197 648828997 359625155 687440348 873308294 430971674 199788145 646969246 90366040 815903600 127306311 767917147 522911020 144191729 976600766 183492341 457945236 704109415 312445287 620972676 104863758 728394002 714726527 143448955 737307463 57904871 689649691 226561582 42318698 55028654 898933681 420465200 717822924 369660562 842584509 793914475 1747179 625712982 260413027 22306245 784483142 768076455 483603484 845498039 373373107 915248485 605542533 565715711 487031100 695274903 594299315 787986944 895408088 530036841 146419690 401768982 895626862 859874137 748939096 889116316 26046495 161310172 487955240 74105929 288616480 555811820 752600969 400618432 457645705 121142713 60612696 272649576 599228405 526350006 382920204 940819901 963029821 514560872 926833825 955993137 267714965 975894568 313962112 257798611 970399464 124506994 436311450 467009441 724955059 317630375 850510400 884674548 158136721 324028175 118267771 70031959 525476646 69264624 568599271 560178063 583757023 402529148 83202198 194618975 884161857 10077657 369100425 980822215 96268348 927671338 730094247 103737195 425973587 743020713 489787714 638690268 234552521 762718318 200432698 34433902 43262850 580101640 758726567 103242206 985596059 760157922 672258960 64988477 823957083 666155969 632451038 760949063 831999402 437008981 894929225 56186701 120938956 37315955 118932889 104218102 81411506 368611356 430294702 433114863 90912401 720306282 187999309 174466315 275187505 673449514 686149666 709586471 648621587 412721905 51412917 966295062 763653128 995247369 973632702 20192937 835098392 433333827 63212226 521947776 7370330 798205693 894599945 109616463 81469644 27795607 387800928 121222586 709431065 129101082 534641485 141996610 176585482 647036059 767586431 307284740 937904721 615241547 104779528 62340979 509040621 402486485 114072444 879399494 922958299 961181232 870157651 91547298 789737960 540993453 822296373 894007192 426748703 186935653 622929047 110987337 617184333 291293395 65291121 650505973 203951955 670939079 233221204 456012839 223131525 798909618 86077007 305636781 296073319 486344818 176829475 112243671 832373175 843059117 458080114 81097610 351266607 134147402 24739241 895361057 170800161 148669029 941656480 772951475 548617424 473185100 620617279 328603914 596877442 398490745 312507823 185268148 315176594 512106765 36160884 176519065 365694254 670122177 958573280 676961673 211941217 891070390 338260698 945197336 703117967 449725380 23017152 547451111 630108125 276576049 484853636 146087768 790021921 428697035 494215855 460158261 849747012 419581032 135713856 189070232 643004543 364503775 200143266 232186988 184391940 143412035 468715452 531676206 93443349 303654866 958570516 489734970 532697118 612275936 581309793 148212878 866015055 513038174 723480066 552550833 925753584 285840556 250203302 600733699 221070470 776781490 681948961 584261793 686649713 457493573 880439568 985490934 30585382 912463861 52200248 81933706 576854437 502186701 503922707 415798829 86923720 923104021 896142291 899525921 704528699 111502008 40173209 946893000 544688948 712221857 386968809 137714577 203288733 860704718 962300615 646895469 257333477 705046159 292094227 535557371 253868486 326538541 282729185 235695966 49689583 228998969 823868003 892299961 206004539 265212418 805325826 830416901 650213468 481953110 68067810 84751218 80872273 746167928 20037662 746787580 517254018 762042912 664623517 177914787 203879672 672034888 66980481 610100107 798001955 48709570 386223952 459063369 956834237 635796538 718120075 215948544 316901244 756938218 776796820 863820481 195765585 611263300 425039233 114273574 119125318 378028863 401052998 575894424 139381199 337675793 335112887 346163033 268641402 550908002 369057578 574105295 647655238 806407775 18431150 17551735 409035151 720526496 227162104 554765744 548616913 419352600 280015279 872188989 319108016 886459600 841003085 595749091 210471312 784759707 528605858 378969038 334742630 662240424 33107843 543632001 21876440 486617873 664398882 863057667 775228903 572736797 258191846 219180620 841175914 434081464 696414089 837278024 336614713 71320019 297294177 590158665 8751188 322055844 474876320 103074476 907377011 607781708 308944214 524532107 227346404 740678240 27900726 131617508 622538022 120950372 793234327 64603713 720227240 168198720 379819237 20106662 24330574 99959462 639608264 972531564 84249463 113965849 7900930 253612419 964542184 591850176 539882288 287398751 184980134 857215748 63136297 319605737 183604062 874717360 266002296 464948042 176968315 550249211 574280289 78500305 280878572 215615543 36406550 790522025 17213505 934669833 526239912 85706261 454489904 95372979 127995937 781588120 100716205 251796835 622747298 441790678 339394372 780880886 778974489 145518391 53364462 38646179 392828574 37305384 510785538 44808827 732910485 829275229 610520211 555400663 345876280 277347207 382714161 906981591 143022496 431461034 708043964 444441087 554772770 6714281 806238770 686564708 359279515 80300339 490346890 852208499 197529115 466363364 779742719 232968499 70828221 168917619 246476011 372619934 366411772 16780969 97506417 833167784 695400898 362138116 395135810 760186944 632918156 1775811 379070777 705507578 883488859 900015019 313028175 88944348 952804432 854297957 377485880 471813488 657322626 213112492 988140800 325147349 535065454 146462758 599010262 768490610 537753799 56029407 73289121 72908373 90231677 736714738 128370292 654915562 14078505 593871908 802549459 904356018 272211039 570029688 123238885 330876924 135064377 128715510 943163307 14890485 592248011 150755896 646881673 906627606 147915467 971585239 638836493 974667057 298234750 231241306 889899259 318154040 602133822 956946328 763437515 157531135 563046314 14831248 355885221 871386277 308569255 66409335 832926784 4089367 514260594 154783465 73682355 699213354 796324598 46497238 890894508 28547985 806627187 41350672 117593789 464002764 1000 504397675 5469583 8156164 583269788 832325203 674840159 749507084 874090689 357732464 144650031 417948096 72182519 368146151 816854247 762427223 838802815 328856610 790005700 627859441 98236896 297883995 20694660 104916115 11597664 598669771 609241871 439558595 93736164 214188202 693233914 925919558 36235760 337853912 481901791 160327630 52934907 615580342 338986979 93192288 923047443 616064605 993652549 97438853 283659899 319339519 890458241 299645600 380149604 698182048 698006809 266571932 224788431 198508864 411920387 304998830 15911386 482512765 85145744 730935571 976587951 485454488 347059598 27106339 740617436 430045471 640666511 950167082 717024948 751194001 677094998 417953190 102028402 347056143 345267764 948573846 86473277 174191600 715600759 519137274 41303615 475009532 694691717 433065636 880526750 328248892 215903967 847298620 903464329 635886791 6735138 301493139 871713115 607176207 908176337 91766017 95387690 413961124 317178168 13082582 22343755 595813815 436730105 963064854 670769718 540385315 659524544 299344161 460331920 941870969 613624988 286929627 646085816 740131591 627345539 501060597 363699593 126457841 148822667 713427463 446555998 435937259 954380601 126115180 968060202 870781357 43040855 798393336 173706306 408213780 25624268 701347065 847460788 915920974 245893658 467794204 464392815 994784774 55788992 454807819 589404959 135480392 741692969 554661015 967030963 510294714 897843409 465230275 985708580 378661054 30823224 298423496 157129321 801223807 811109619 854511044 728392797 701378863 678214581 389109694 47934023 140965679 945398195 76389856 125379860 95273563 246058094 453593045 768719282 170653878 671477893 300073230 687245078 78704734 19005463 732025734 773420554 28904734 382816512 254281572 17291005 242489294 442206963 737171834 592480452 433767196 334779877 399946226 120364726 485475448 466396608 577417028 901551741 445042709 386152021 881582328 437610788 392334248 871912642 933399700 88955283 76195031 564945096 975278292 199589748 8579744 56833179 78515851 971006198 412966668 682403925 737868351 637028583 94945420 573050429 1826997 120151875 116005513 577692557 691819570 895937148 346704001 882705490 137113173 951759368 307759172 39352746 82663910 76664843 92551278 873968733 999389881 960714585 661436789 36826607 564134601 306848587 614150954 540843348 842630332 807446911 706247786 728931200 365108865 93992832 581778484 545510409 791431701 75406390 796985252 22236709 681029896 860046246 818130073 938489952 543855728 911046072 994809337 255216950 820765413 470355931 383943412 377721994 825317285 805609149 959401275 993191779 637562996 754340438 704953028 225091367 14009900 138686122 519760180 213896036 525647395 925144300 6470878 997057652 193430540 335757822 924088729 552801954 64640243 276160500 428926027 60381745 295943286 722422693 268209283 186570109 545371212 230392794 54825224 624312746 156897262 436944137 252724875 942970473 283627846 441480474 729146441 556996354 709556831 2799897 351884866 294921074 758591876 324485006 330749572 140837074 607797614 563927191 929347460 636232298 808741100 212768835 583840770 674711176 555548354 674893002 402514468 383374407 248853376 616313156 3160703 398607009 790989142 170214932 363859424 774298517 192236745 61652913 375569167 538495129 569311860 245459785 800340715 379513883 924725231 485045652 895521882 900351954 817662274 57543780 130356614 357697602 805295085 849233917 617398032 641042289 312659845 807544894 695859911 434752430 666144245 607086369 619384468 139669553 918119286 147308429 12385493 21587848 281809047 251653270 45331809 144877739 571597178 406680426 746532969 186735569 738118002 363223135 338229868 137487324 297287881 72353812 76237905 512376364 70010134 190876248 511515329 849859523 801754279 612657592 863788232 306869401 76528126 700513742 25972085 183825778 307415288 766212014 727517323 596387441 974770048 833002205 633436848 596280513 544378338 722067568 745958806 37650484 367846597 623007916 49313983 34806289 552902442 397220642 938404211 942288831 55547517 20596165 918616125 908065603 331594694 904428200 689619284 469899120 461707854 162665156 167246930 756177676 134495903 184569640 806765472 189334217 750917922 63474178 554391461 400442301 487159857 46917472 499386900 81585168 289541811 728817548 262352947 992752644 651554347 577223863 436022208 222569367 919918572 364881792 36893403 37912905 918726693 587370146 546069061 182261731 248255762 897430256 359168890 122218624 149677391 196194833 70299010 410893510 568019763 954108335 476460528 213910708 389511211 453953543 282457702 913277391 392630324 305552989 483994132 303626709 421562782 918701594 620301580 441523347 205837460 491778798 796247024 940633261 609341396 460340183 106888502 365597044 568321622 144257663 730314461 130361306 962013082 147016985 411872745 921566601 819877511 406424945 27010143 286633877 896363984 734844158 424886368 691905025 300062031 546138870 334771146 369141666 125591081 904134034 499563864 317516980 238928955 246992355 243032677 143569075 720732925 386096130 495977051 838276863 464075036 551777204 736407113 481889058 975272859 16916577 837691302 118642679 266311674 103597935 62557089 218291929 280388036 415327077 426613728 938379927 516717614 569049705 220145542 448712590 150099715 129045938 510022877 28391907 425924588 659251348 170472995 530446077 147773892 973131227 971818290 679764002 117818937 512901604 113899096 489882875 242102385 500554789 225186298 388690674 578855848 900337592 757316085 935121106 33041777 568085791 709531883 646102 148264779 308489746 21536795 359235094 680153557 918621485 733779356 192881681 336232384 868046578 73813631 939333645 294745835 308675581 706062560 629317641 598789827 541503589 257650925 344009588 700780506 868698439 274954378 793620649 279073001 47455789 898810691 11602005 794716051 306402715 691443015 938490210 89310936 862617741 320133025 589652030 351765374 290373426 392574812 896755896 798604864 132148535 729185407 983154454 218681846 58792786 288199700 959538657 646313105 634026692 343918199 137633489 60098112 239399766 882591191 468480251 347919895 858056983 171579123 42425063 698817706 761503325 999845285 325865736 389722822 812208869 173213888 657432147 266744228 20674684 70147505 176976376 669339065 669702975 855925177 194023019 385482070 571751882 806812922 36441078 12847201 220252737 33210276 154672910 733217805 613840544 751174021 533816473 556945359 843009064 647731134 415005458 178718857 216343602 269249295 314821573 42213764 284318055 989136272 430934697 181584692 136668437 832438326 846619351 941261134 911546482 749811671 9856575 855275856 291670329 481087769 950603726 514662887 64078440 338941866 320051457 233342364 528415137 503765279 194976720 577799324 20491071 708122398 405478283 403396418 300467685 789264758 65276152 681706253 37470584 391650750 421732850 310993348 220917571 601476269 171539254 506489489 239132081 202003045 294220087 83728810 461775301 408924206 148782573 455055261 87786031 764118653 194840245 872167351 521285691 552200799 973852579 391127364 660567748 339362301 104586936 88070677 42858047 504190707 892394196 423667717 94040072 120618831 876048572 943067714 467681408 905730276 417950259 885303356 356771297 66693400 22133143 70349185 797730729 722717738 644907962 333747161 629567285 526491851 411374055 867729921 858747014 74289784 172251394 311489485 249689497 981894205 343013791 863176479 106984720 217232452 125060069 117545824 68420348 174807826 389983355 218353449 768657749 442408094 806874540 382114746 7324625 650158376 976774773 473873208 811727894 30433441 903700355 492548544 235077039 205651355 455135686 691272505 968264788 729222228 682161744 383277789 201660167 985970697 320360880 569536396 7364905 129909841 394940180 178209822 614568859 936534958 676446911 953703403 329803060 131925316 534620273 723549137 923613682 231426979 332390645 132818172 577959599 703856678 637858140 21105168 975123588 374746458 473382972 275244829 87917122 12367191 797916892 337038821 61355133 58930823 68715428 173089040 805859874 404781192 189576105 713044793 539721579 359283009 80438077 619682118 75348670 772035900 184737270 516715422 383562237 194206559 871901781 404000617 842208386 520681854 679935026 100483485 216309599 555886987 75646543 730011303 605673972 652826642 650712808 725450940 365497228 73828542 936801698 278797020 761199709 143852268 372855506 260404430 115576381 864299474 947867251 931044381 417149725 433414236 834171804 381188531 706157455 510039351 917557980 273939404 280686091 198001282 373106026 109118461 55402452 176923155 141136086 66142642 928692872 935627446 656378622 596671552 367235980 314020814 696095486 130505477 793629729 726751179 51973442 765942440 554751172 921417443 433706128 18721104 125184510 723274947 774541041 85986280 484786463 57725052 228260458 941951218 162199259 749254231 881280030 18907135 772795911 738248984 535257669 731151461 1985877 977031922 772920900 787535532 105223927 651789890 261113321 137401838 35361222 740032232 185850858 389949879 827884622 82609364 21373665 638562241 993701599 909484414 121208014 741524363 959271315 626043262 697621245 85628726 815267700 65543523 839697728 658130685 828274901 447546236 364539682 892632632 852354408 251220912 953661748 18110992 35184807 493222062 354198724 740824230 999901602 115417795 567288487 652979589 716982101 780717451 393461032 749627830 765722256 37185113 439486456 859212987 25047635 474009405 63820880 55071385 174955520 773675146 146533815 647225729 628789886 81413436 353214441 356804656 691844143 458498781 133738809 714818863 175453505 711631715 302844948 320998952 32327946 120913920 818903381 32537769 945380580 215768537 279743319 29378329 667637590 655635001 3711100 47606928 969054123 714495746 399237108 409935985 989873120 90842074 75161056 361869494 234116383 198447888 956251080 487900754 51663509 1000 208942651 134091229 916076115 117283678 359929444 82126517 395331987 986806809 773150767 21739570 298938994 685312913 380107029 529063074 21319841 318312876 494309906 906679709 219437571 387770587 898790285 290229294 884536445 651955496 418949592 603643532 626266802 825973143 715498617 851445115 551252314 697199285 213866204 13900671 373162144 830219954 687038217 628316520 128159421 731724825 183260109 578692567 744518617 390719512 164619292 483392998 949457737 721097581 133811587 316383190 213370844 406703834 294590696 823337646 975227567 52442868 77349984 579373315 53994441 359160048 606617817 202832282 542879967 200474615 500001850 599705644 639959619 311324713 615824020 732729639 325911248 738350529 765415492 534175640 932099695 652123543 587970008 526726599 222633625 355746719 800815358 828656600 367900839 232592357 231391009 69846429 994030893 67799837 382229820 690820651 113884270 204591158 595057755 940719241 772888430 830396265 154783960 127442371 82340618 807337722 86254027 693412986 267434621 884760138 893682191 147970703 412199964 82751303 329564852 280859903 899583524 69788107 989557179 753063763 81925658 976295173 668579131 985685820 339143007 79137120 807457334 851598237 736398115 455880802 320389072 988627216 942629238 79337786 359255121 938073220 171421370 753646334 20991874 935350416 465059881 870587025 769742052 423557302 91024193 532250377 97562750 159675626 110608718 469384260 353892051 739339355 285678366 434020541 385076006 335229377 1562012 363963982 240301443 817584530 190118030 884219648 601645235 514684735 418857749 713571402 970778540 396479022 910036547 922018157 629715348 823510396 298140568 196497939 966567287 588302282 702181320 38929117 919005629 413246492 249167357 85066028 175448462 7132474 587218369 274249768 629700328 96062508 908962199 28497338 28835222 622030043 557322600 337843973 774095188 931803445 293447857 316500934 49196512 897885730 663050015 130428902 67186814 167471051 82200478 944993375 48903694 7384571 709594029 142244021 129610454 306881113 288508939 722020920 788435223 93842973 124275605 407571585 93470725 109130626 952137528 760254606 658760874 288387523 584270012 799717731 352575540 343708747 757830255 136205500 908591695 78876645 49742346 518974581 272689951 203140135 323354538 457968938 613853085 547351352 941518622 585528601 940709437 870097614 346549083 338666009 642492153 606578469 453848412 631701412 505551668 121901422 971381339 199913985 686617592 591812658 678326540 411697985 517300061 678627168 64641883 129780299 623012705 744709835 555887109 848309137 949263079 703390422 72992807 723847276 942786539 461991413 60804829 70043090 83349298 257926111 821988746 502691968 686215101 408976985 380649196 225392290 516318162 172825435 26894210 970374623 311619871 167037877 372286259 63427052 294086527 590960454 998023570 120582690 787450084 44298149 907870342 847912007 888361705 489537640 608074812 604812913 117940163 911065488 495698398 134719211 628309633 147702247 22211051 497666585 959998908 46128158 849816213 906398725 985448057 113353395 279544261 940405291 415372575 463016484 723145936 31866185 52400484 572175476 33729992 831554791 2127091 180877864 373801339 757703843 181229027 721979802 760881711 79486512 24043116 994223323 558060945 904213040 10017446 986547123 849888429 263498599 325802300 812121435 470834199 484514483 410229342 55522523 214515494 726064380 312918568 504421027 751529057 599900551 263672678 94037098 63394723 36948799 961649373 25338883 229840615 233048940 29091481 702440352 698397567 306497040 205027458 557302256 983352671 750280124 295119755 558446844 981732730 521340528 383697424 632012233 578039407 3421415 220967951 160547729 798019507 549536365 418357715 250376826 676312632 81314611 646961567 171794685 209590179 762188172 576497582 331046014 805802647 273341959 53306870 376456838 617386031 205868627 52531354 330186766 150958425 942800141 43195627 137886896 57298978 168164970 452387664 297265063 647815937 710302618 889333793 321092441 305337741 49849876 704302770 124479179 740547626 560220848 572941875 59195628 750396931 690302271 845216424 944036474 404421126 425227211 221101215 128545567 132269731 7057502 5754056 48988149 494198762 802628196 165521840 157871946 386498200 564724594 303096048 751122554 246039341 279319170 958436897 392703311 412150644 617016440 350074017 150413182 956570824 117054378 712112130 734301058 415082596 457490317 652215014 9953573 953649965 903679265 302507337 914893774 254868767 552434310 801193476 131589877 839850935 972259691 902324048 789938712 537896205 162426925 544922342 574758222 520690401 522417093 204008439 125520038 701022558 279513135 954881312 402348904 896887278 779000836 416022832 443134886 237928773 445204479 753777123 769540125 144298318 46219043 770004486 132452773 216423873 63985490 275504845 995827183 369168853 336895292 414243126 77534021 626653213 620416061 420845916 469083211 749345620 161717589 420907299 136703114 144947321 691992575 798990892 972305470 397129308 780878155 907899892 396573781 714833678 63956719 21263437 194505594 818979421 699960409 915722607 107853269 99725063 648644418 968902025 43363223 515965303 581614507 284816503 668655967 67888046 24665743 20915253 730011580 358273027 958797615 203957459 136983863 577869530 6320268 535492293 624866445 426380735 660893045 148093535 102827210 486788661 655503061 140700000 411743214 665214096 53560601 209769892 212211457 239755888 145221371 360749000 22570001 723599021 958707588 580212272 428291868 557121506 286019812 585713262 399729535 863279936 944186923 905372451 264460188 330569706 882815166 673199129 402159937 495089012 227678175 148286090 839477278 454037241 170373344 973575261 324697049 165128770 175127203 626281611 468759586 967102835 822954512 469367012 33158888 85673055 769452499 303303718 579897780 469976526 65018770 87623473 633268395 77036904 185711027 354330136 959508207 132526722 242720620 13141305 476887632 285363427 96170862 997717686 671861623 925786648 24936194 73017519 300264408 53258979 421598779 65144942 573599506 58628567 850064843 704327313 642898577 493741029 44490403 503928923 296670631 577384947 786523528 442533367 528000579 603706086 907088137 992708172 91739937 623538970 83371595 460112535 41900302 250846465 706688359 182196663 712282976 553591245 182700703 995917114 406955666 905896470 345431437 120929221 356086606 163875013 567837718 538649992 51036991 312224884 210137695 886300201 913949023 336036631 406267827 766025387 40302635 981616093 40058305 435651824 61570510 74139547 390044506 757393163 494712595 169554694 562185589 90202326 263779384 234336908 551656652 211174071 400203621 614011777 980175242 694626857 542515944 259379861 665640417 328545804 364533359 41145499 498987705 221576616 992793797 395393354 45723170 41412709 635675301 838803956 79856185 734806114 425672134 108909658 119583986 575146195 200779115 394562732 549235959 24299898 465997020 614181703 864354526 8980792 759930149 606741368 777841713 351210034 704566407 23937654 965526538 900554047 755310169 781919556 316206194 507350268 630598826 151927118 812208214 421086822 2892635 69742449 706939205 933885854 440797228 232187594 41971495 793603806 927674598 909518716 339262600 135183919 815016435 881835323 925030951 417623851 907290026 646058169 565978833 121101923 587743465 218187019 321708968 978198820 142967168 456611186 604893466 22878309 389585247 294890096 468349505 42819177 491242005 944824886 901956224 50529668 88357534 684666112 929151365 389582793 122206772 634954996 87304604 883533496 269157293 963982743 417140467 66527271 396434471 833757202 391918464 49494052 625287890 618125918 289282858 303406194 970942882 976530129 30860211 648990931 557017680 889100588 382668483 126837472 806910518 547567569 972799578 13820325 66572650 467537185 225612373 717293942 807190095 751383743 50089948 631106686 814718819 237657097 406299103 202254912 537556272 560233952 757705264 808447921 740955162 61393750 431122029 934000824 9585154 574065885 81445001 500380608 937251545 55854903 736915004 446229965 790736940 710291987 574150167 882797170 58881599 268721178 465281636 425331116 2939583 59436991 845483417 687401436 506336999 129306186 979583245 896347744 339309385 316821511 511159528 613699263 182537544 867031015 588648201 826479889 688724896 730302844 994061975 710043658 332201409 226711015 407336709 111671067 292420867 782778035 231074122 582992250 423081928 72957470 370601201 686274837 726645402 670059100 142139901 901396959 14476059 487853713 243277889 538695404 729525620 936367298 973772544 146454729 111512098 304728709 624013014 511842107 366322159 896163820 795493437 504753469 570330065 204522282 43310521 109270519 709232860 630372105 898423386 799318506 250261509 851434801 511302633 975852381 93659451 732591736 521185995 950403706 84629264 171259375 865801479 506184087 527930721 134474817 667899591 717255900 616640540 244859893 460980036 203773022 175819366 968780721 992660603 156533852 746431279 394557855 15826986 196612160 151608312 164253940 244546042 828708564 728802618 717495875 987386403 664378743 606346000 241933109 85486414 442918618 903524435 347563266 578820576 761901720 799319600 120659143 323012553 246745316 852320877 442434090 58029886 48091039 825349535 945373789 78256789 736363480 705999317 81439192 786332198 812891563 342964313 390982023 863353092 519487546 950139532 999217785 935720744 613295140 229081583 27455479 331609745 627525007 742612732 8877543 26382757 449255436 9709156 87123770 256603607 65745066 46922093 11567878 995831381 932529297 523434598 752929403 264574716 831850738 34560022 833186599 453931879 487602648 609177351 99777342 538975294 148378633 61300927 463228604 220662662 362733857 661018351 317193669 911480470 832466365 137527892 431810515 684066618 635950010 373339676 888310498 464195974 125146355 3146380 792156325 364927108 1000 742062973 504239400 456960363 877857736 11187043 463049243 961863616 412205231 712251550 71418493 286539205 499848432 639214426 694302363 684206726 478843826 88953010 129016231 838368592 855166488 90326841 25348351 34353077 755056596 162591567 915518544 270727568 608169318 568608304 688615873 449084813 40242440 27092763 123280371 128304930 197833936 49969547 577496147 927753144 526044284 880214962 870658428 104087387 819900000 579873161 993227178 906421384 123155740 61522910 557852932 276644342 37237238 234129639 539118345 741137688 888418908 546921382 435774654 517566342 49740185 862552594 112205483 771574821 368252632 909350671 145256014 16314276 753784835 334837608 954982749 655929960 662274084 983525806 26564387 799219641 846689285 668427172 9150540 334911676 565602857 930731817 301012496 295613755 483908914 600304818 743217614 430795340 982284594 236375991 112809418 209094928 766982100 615551021 704365859 553381604 677037095 983775966 599928925 5904075 856388310 409799342 390272378 109991304 649855642 63052204 808069355 382703933 31457614 129978914 769905705 210707028 612475484 832126451 349204976 373652787 60906136 145447166 875033353 128165395 832281683 207386233 39635525 632992451 363000073 262615196 140345221 171431342 65828542 110914195 34449576 575703962 852454782 37025145 782690396 36438478 711368294 644606198 401928345 484534931 96169199 138523490 928063478 825917097 937603607 848280627 265091511 946326770 103964436 614328075 623865382 470125529 268050534 168074909 648793959 264766377 782099086 298646535 62646524 409467421 890221209 32974164 577358892 721766509 1977776 282126814 208437034 241886706 777984393 90426334 685324191 310298096 787175449 426233160 276369914 2756214 944772796 379456316 855067490 571401894 53463786 377025453 158853405 200770418 891050369 500151793 40879986 402298343 116648201 546886960 539913738 289494245 785235374 20096818 164011178 465105134 518638758 586692192 716309541 600441244 263050259 753085780 365068502 807887917 785029344 627598903 7394720 458163262 769136504 99103025 865769182 860171248 98736813 602646000 644999079 671378774 829118179 115956477 121558487 83912759 951402387 907777833 691110293 172342113 620304481 328310090 978921086 608825396 381641759 431983406 698185315 223705702 668004590 597479490 92633257 866324610 671754274 783813693 177398299 681185430 389985991 90275656 314499146 828574510 539583966 637484135 848081585 645987733 65116700 220806601 336732680 137785443 930921402 3150381 189786251 345873418 643388831 996513785 594755337 108969509 390214057 117398048 52381632 871026472 213143574 717071675 760718889 261358919 173940229 132108513 763338824 75213025 166819092 109192035 978797795 30870712 103050786 38539758 65317870 67259260 695302509 681793490 296152194 140633623 313733210 855879725 737822104 535592801 921174085 168810855 630185810 682470537 622244567 880376144 155587105 730456546 178815592 462738272 796887414 822609535 18654701 36338645 359332603 833097730 26482337 101062620 828763311 583011455 646517305 939775529 123485124 226695599 166252598 736524361 2494367 148568914 638140505 789772838 314522111 385421808 513169230 405347811 83704071 432272479 426353455 166390136 729742690 578159512 218244804 991260154 671156774 764822317 97145843 965730170 93997545 45731284 645829312 578319143 889035898 452847534 122867919 748982254 657654402 932839324 339143321 537379670 989242251 210419474 2739337 163865098 174379763 127972051 988770986 779120410 564239277 839403292 426591412 375492702 842513792 703988741 347045075 534923824 753893709 151620423 746013480 990687799 899143526 146776729 88720277 277386537 542434369 968411700 72537649 563280728 475699635 446224281 902175127 432576927 122279398 115485549 71426870 338919610 852099306 988201923 362366351 129422752 773611101 965715906 390865632 343190380 453602582 206873280 341185269 888123610 253741918 208080463 516337274 685760038 450899642 873705186 802634224 252253291 246221569 276677152 886904371 28324726 80373619 828214366 229785214 70923922 780629052 563139808 510242951 113665549 297180658 351374188 334777549 644846785 400298280 532651996 94271059 908409658 904099472 4244342 708835086 112857794 295753181 773237355 324383678 803595999 16449935 648452208 165835163 604624936 83414608 763159762 499436501 66610410 298356118 356736161 135138748 64354893 547214750 651087404 554328842 409914172 695384292 864821075 896759710 110646378 235197252 485748683 798738589 586362047 746277072 856680471 358115323 883385142 424618875 350810757 936890885 173454670 135771617 782623722 483515845 716425931 995526699 966584968 746312334 132807498 584464537 559048940 501116232 356802000 344189504 959567086 213989169 501701074 463124104 190772254 349249978 200573272 62031331 640958276 470205231 215150098 348616713 155907742 796194754 46658439 975040904 682854619 105027449 79205265 20400747 419771828 938406113 862735625 225174880 456458973 415142993 662066150 187924066 447149750 688249248 219341490 196663087 252383931 542078679 443404042 443705307 479211009 547068239 473515165 939641523 221521531 761869618 161801275 39272449 241303382 225236641 904381447 900604643 636107287 618251064 159957334 725092813 544882580 981817079 792710650 221879749 883200731 10681143 385565678 293125205 815970572 906417326 622246075 488987264 820217097 857296933 157887329 11445764 97098456 661851352 31008904 852988109 397850171 735855524 201881753 560093105 598695567 40780007 914363052 726067394 672124763 955703103 243229027 469657467 357801430 34996522 312084506 524805992 180281300 119791097 151667362 22245272 505656132 523807377 614967646 969202112 282155706 137531361 511499691 250021546 898632952 692576756 137285345 574997019 104032004 421162980 222941255 636290715 796211921 191946479 793517333 577971566 113226063 9921777 912455636 770887879 344474939 304068209 213887563 9982128 646725867 916399555 825641220 827751253 135542435 94035108 261679586 710473065 611606143 689931241 735290160 189528763 869491695 250719545 239731751 822449302 816083465 268012208 356329641 140403384 206436401 98031378 708198897 745658068 968224182 75925758 190084639 223355478 628650834 232963612 503768608 800171286 175528648 139248085 725546196 113177030 337268256 183468063 724017638 928468699 230734716 76573070 572430413 715074860 31646801 998207808 148602825 704258801 56605982 861614543 703949658 672687651 130855550 36313219 163509740 215096513 125606752 960499153 989811074 494064118 484047961 991718649 812109658 402825894 561021960 460508728 36242784 758539326 182795015 250699743 832860616 625473060 50290249 461276725 1340094 382286681 936092398 389127324 943372836 12623493 49117878 815800600 6859434 420302056 645178763 786369437 891442628 9973193 665307446 628957072 561132536 497572960 130222274 147833895 320709116 197497743 379530090 491097134 214163178 471861789 673171510 115356469 174207291 275329210 21225894 620516152 734718981 118713492 969562438 652770071 21199120 57168672 627850621 84998001 217636606 354540728 517034398 411043964 534768430 929827441 81598301 63806536 558522572 846303238 44976991 97105002 277720214 766062277 750173108 748767907 537729126 304002140 6880867 843046781 231877710 329497271 610135223 658746043 448009475 461663950 563713907 755639995 60055531 710035874 308323951 914695030 223764404 740207462 768016806 479750370 575412620 355812889 388750818 13132749 566944774 150063225 73346910 279392865 616371125 523779889 269087035 276057775 1549512 623912672 923513592 719063388 323362540 417000033 306100908 277561541 937609504 320158313 217583629 849978768 671357395 597231128 138155641 853178036 879831789 258065187 259882783 61955309 66488350 612111634 837433399 895618539 605443765 308180955 120167431 65453108 497255127 829295315 969869825 510618655 35379203 387539970 312710993 218317351 748853189 267452896 649672905 641590810 772192657 714222812 90073483 628959266 87774074 225218176 141083933 941380823 49450282 356352000 219827424 646428531 723403341 233324591 801714006 109272790 632656653 681081341 902376407 178048099 725356122 191576183 835307282 516269535 693410535 325939114 613751531 569531134 218943467 305944178 55453815 824723694 428264458 376192391 396098759 567413065 592926668 261892354 17212211 367738839 8923095 972306752 903573 2162541 34069271 632834566 677379453 599078588 46550056 841615508 751906218 919484613 420331079 11841520 405612426 17218578 712140293 922844382 135830004 426949632 373553393 819820904 221039488 965061422 393904042 94315818 35058566 256409128 11652040 871528894 303091910 691301390 680881344 912698313 431428102 201472525 361629518 386834330 762846496 118810740 637271875 794228308 751253071 666596319 808216549 552954655 185298252 905092068 437586293 375197230 648740982 306217534 926012629 218879681 183455388 81092274 293932211 911295270 31298210 772710342 578127218 737333961 17443107 418053142 740981215 212860972 767155740 147430691 206440512 719048186 507525080 659186802 439042300 480444373 785122843 787838248 143233325 180293353 62634058 93714445 744145194 992874385 60839183 468414549 17594007 993860103 534201598 22836154 852139542 898843000 435571893 995204954 143751077 896753206 84421634 75228189 680626964 727082010 112894593 256434689 188687724 510686818 204932576 727540631 795857948 130150138 325614481 473677637 221655963 922724995 782717007 144474670 520564256 953955582 850464082 606276570 441965906 472636270 406369720 337723787 100142104 634724538 638904643 447061628 404373258 954843356 419487246 102631083 885256058 198971065 152320621 852028136 229063887 795715881 728361701 747729844 976675758 287682376 587851826 47426848 62073774 604151709 978865869 566401919 830678623 832477174 65831975 345058667 359653636 821236713 303297820 825721348 85199840 592596614 337105379 9127070 10302740 87919694 235319921 451886909 138163992 124436014 235589590 290210229 1000 429518640 981355205 280699427 871511944 382421060 342744167 47819160 704036213 716206456 314736908 400419516 538488670 5329365 98756256 542379165 863035157 339489468 606194153 901136697 823902753 906103781 513141098 853855675 584453167 720814591 859528170 912129362 817462135 668005887 24294965 938535346 286351796 366779845 472996232 708740381 558556525 593285735 613704875 780967964 955782507 788695230 971422247 66121633 309956202 741869391 766319802 575471191 502466534 128713363 283008923 404043031 216516706 212403383 166651069 76145786 327716740 505498360 949266730 376716990 901879927 810792824 254876738 927154831 942525930 123112826 141566916 70927718 676409567 610553977 956356552 623757745 961502161 470466306 584288277 550488953 181601488 859007716 280795445 97291410 311101260 213219228 453242119 944701167 264654984 471886905 194645462 644591135 962688583 16761720 306144095 684472836 193185673 2857309 486203640 239302037 31605160 311731498 47430530 6409439 346791853 743695281 834922931 998071254 519008655 342664702 870327393 130900974 644804324 907061098 139298230 268154861 556042595 827540409 135388577 967553041 987448316 100821736 581064632 860880973 467225646 771498483 678801793 492221408 54073760 114702171 2023441 886503428 157236574 94899806 54491758 118399435 380745650 919178271 484471840 215202468 100067923 490214331 974314248 907101575 323387858 313048643 689285526 78071252 894164982 942907708 545138292 256856474 90493787 480338208 234071719 439591383 888995427 273382208 990244401 787286038 141053208 169558173 833958252 807666394 558558667 582992757 821715835 3442911 504381563 831884425 843493924 78399858 553596505 331378241 794558298 996861170 34088757 382829602 43576637 34459534 824750880 876981858 509889436 59248696 884360305 804950582 363560988 124332086 506628097 888823278 63011241 242465412 388103122 238433597 32670831 880472285 170444634 122684272 166142182 122670514 780297480 896851995 698677274 390438632 926034008 16059930 905863846 3751037 530570037 39646165 653555671 78220459 873492683 561640714 995733336 639159497 730143154 309985818 138225529 59844478 138443323 688146598 936288669 714286127 331184177 178730952 318968153 421452245 675774945 765033637 54264421 477954354 886460102 26359025 480936045 19749645 279922786 969670641 138903784 848545378 168439588 56688670 412212583 68511793 51417416 188867653 572452765 114082507 882516498 571640856 37538614 76903246 564001417 131362221 266481747 50464015 42988261 571828423 862888201 574910991 191788156 816192950 892632106 882119446 306703875 527275899 731647604 410005500 202680494 401626082 856717762 531500571 802500292 83604959 455211340 70329675 958922909 900195665 436037079 761788628 559350238 866634686 225249077 665414044 978689466 583388840 230695860 970891361 436657031 574776084 50953358 541459798 422200056 157938833 849570219 426373193 654954645 27216884 565542293 561481769 580347252 21885498 941719417 498123087 109251575 288842071 597984159 78908903 470352777 72238151 557876161 669083821 943725818 658102031 574961986 88882234 892605911 140539774 435318769 486431925 975436516 158425496 527355547 453420309 319719461 701427519 70743484 519265989 871254797 468255022 186858865 780176899 528728577 86643740 540221667 580869488 830111758 554706807 918755368 307327929 566111474 591540521 73356600 953944324 805451015 618352179 99912891 105727964 765451621 345949065 680093513 404401458 478793112 90100962 720058863 141061767 70633780 919036837 144568394 876541183 67986631 72617588 12211099 645159432 152825544 471054954 723834169 425525383 779942293 113709023 767052753 922181753 739886157 480991871 757068993 743065577 638052834 131057316 250524486 645119123 63176138 250495150 927197335 920225223 489332433 70120759 237102319 683504240 200378772 4981492 669008329 570936433 368321319 911815211 394448 796752742 549421088 152965403 278310692 778913604 843992841 697793559 874615377 451905881 619253606 148936347 111271813 740463335 41494868 458039904 925546999 901121324 430701714 127051581 594018001 443791361 567530857 356137548 757394636 783306453 261272713 657603524 840337224 779622621 122183488 335999327 339070050 421559131 139844856 836283783 549152781 885801650 535337944 745228031 457506582 261138463 518866841 163457895 610739308 187176966 824094 920958094 386644976 26959169 61024742 341420819 258955194 322129045 373807070 472376750 841040186 778094698 813154828 297724509 722948366 939130305 414982100 49066903 759782085 644482015 564824095 782786451 281873148 48271910 866797336 38610172 259259879 190109948 741053170 328967364 461653024 649052321 16366719 172350332 515923097 856297865 732469607 33367668 855914263 861120628 615086630 957341118 200859576 759860529 410536294 587079873 293859720 176993810 394922677 44960691 706974139 453070506 719152160 338652821 971762135 457563135 683361256 165297933 451547188 147218441 29188269 735352474 100020391 755394762 286252754 807640763 245984376 19936417 319388964 986201472 120402483 986776674 118825587 83516541 581444631 206008667 837223744 363795691 222828497 897512568 1795096 135193051 456256061 490186609 642992706 596042502 716301657 82863869 82930736 242428658 861040737 813711379 140811383 282918387 320841642 310367520 267017167 615330396 153383465 75419518 204503532 614410726 335095977 53173624 861737794 743375623 37986011 546520064 488076438 49020650 166116025 449345295 149080770 131778280 117702783 894706235 93619124 897605239 551318959 489234870 337569139 766770117 657811952 572712366 434027221 73714939 111698900 237843957 929275367 844344578 35414461 878411459 923470125 336905609 371024403 61346061 62792797 323275660 551100349 957256819 216933470 642335679 281551527 916934619 708758524 18323657 927588090 327346411 372534470 295982715 288807895 640267936 696001504 50747631 961406348 137909533 547962335 503185372 410628062 937252080 830488043 287859681 140079334 19895208 392426159 483488783 528666343 401140491 242672755 769637600 121059132 388692239 969343545 760218464 992642834 401032934 301029116 827905237 989818197 848788216 73062242 760320499 579806404 887378576 727064038 288947621 478728133 390325969 123807404 183216530 522986210 674317296 127065838 495979157 147656162 679869231 673447553 502402734 137236463 108484247 293153437 79352767 548436233 959186895 98477854 690886760 711195938 948116650 585978034 904611392 295865206 146888709 934353977 176605591 74458636 17553924 256412665 851446823 612474649 33702716 133028483 668393280 634117875 893223966 131915646 902378945 769373843 537698126 147661859 525476517 748752225 219734293 70621817 648498074 201861823 913053177 43108540 694251852 721700357 592707720 482226369 589638033 358741400 942872608 251874274 71435860 916022660 681706486 995510106 739706574 3697608 398317707 595520709 427216593 856284006 850333530 307444233 503831 50200649 558920757 756721706 170524891 849421466 677983201 164886469 845095198 674352504 939638944 595356730 108747919 9076634 319653859 771088544 886811250 94858468 208189933 259901670 361721419 768546425 805274807 615728313 782019362 16449980 342766701 870790565 697515143 918579083 291539360 124206926 669552561 1979534 670764658 127161835 147492422 97155144 462165230 458743703 929567625 972288733 377633917 33731620 192229339 555223148 849747282 2448332 101878181 953313807 224354134 308229923 277367143 765686606 183444496 214154526 969764483 54942963 799668946 317706166 128079926 862532080 65094774 977812543 45676060 16358115 723442792 298156422 417805730 132080582 922221959 739428347 398754563 589900586 22696510 662557884 175438681 778023335 856499042 790751151 876011675 574302554 191856883 721676056 558819920 469281263 123251121 629532369 591552616 889454387 775456456 917564439 427380220 797753525 844496551 7098827 252426760 601386467 330003361 479958847 72790079 418992626 278722965 175044235 990338237 877555117 369995104 194055688 485122946 25434337 81102906 551017769 771934514 838970672 754997039 93615715 845495721 162656706 253575399 592451569 207168181 512951672 234187043 316082966 68421840 116939474 427821253 111069837 391148334 913222920 227047935 291039997 48668919 323772526 855161204 885251458 20546503 688433111 972397464 923536811 31183236 708043167 953777084 143388528 457129705 43546794 196275876 18270870 93085674 187839375 262448941 63430346 88949586 622669675 914473540 894323770 737156528 127918493 197204302 208793204 520579718 800981397 895696554 409082258 924241551 42755203 527312804 424253124 54233067 22022978 487507128 203851041 613641246 821835958 41417992 950975330 609231452 60515069 900002351 883320975 513946552 865385253 855524202 792909835 905600702 303267642 979689893 380149241 959575283 904619675 902569062 366184886 847655775 795294357 410423530 72410067 540698630 544354867 188104418 101380597 194121648 247353113 857608371 723512352 99822049 248040174 182774989 661198401 534411629 806643531 32745933 654153361 60653059 876757855 52190148 631880516 891327098 730393600 460980136 751542694 502516886 274546737 99431049 933105896 289501014 18141440 526909541 368624351 50906882 923303494 371603011 415634917 319639349 654518588 61031707 778013554 119127481 299274362 71520385 767664405 33962808 524326699 76845892 544827498 704973744 540720534 984608562 149759576 165915445 11713254 118223168 562972420 169857149 51186968 559884573 45639814 83774184 374567125 601622303 516194036 599343112 204681722 728263005 145063088 386144645 883859222 968906078 140101149 287297772 625775576 961159006 105629730 182438567 139638686 771908525 187739393 872415049 333838701 622649068 993384167 124967703 837325002 734710769 777983470 936391757 135755649 458263376 409555747 382388148 836417753 615868773 424873109 254849684 217398345 868257068 202693340 881777409 163739584 858876602 535633625 816333323 974617093 150410636 584857917 880787039 75755736 118762765 792612153 1000 672191425 530986907 768938401 512361382 969641995 459479841 147107652 281111630 79315597 808841100 348078186 26604366 805016230 11953818 363036793 959598707 702387264 434809130 516645285 600710100 889307739 835539993 543217684 747921907 941448180 495685425 673374453 214998347 139789876 507749335 301865589 31156620 978532795 17996072 455572949 983157008 631160760 458456128 492597031 686058822 833547583 791592712 14968932 651834494 74444355 53005218 341295133 823494020 903669434 693768453 652394979 25147290 473755440 891328625 532998215 126867946 720095175 757602089 363194694 365233957 878468176 482666608 977800992 840679911 217703070 588601311 913753266 749948672 755847882 870820345 841393371 29911084 474631955 818257594 801480262 692021932 213054178 808290381 108064273 329837275 801601662 836575977 846960893 894951771 460796871 272960411 817256566 493732315 248903592 532712447 337819303 189602803 634985637 507574480 742599609 488882700 767933873 67257153 185270371 933999693 771058170 907047562 966575685 455708764 11738720 851398397 846416732 872720585 243993319 946639487 279852324 302578778 802606730 819773808 343702235 353181519 363269656 503437681 60300784 494132757 655431101 667226284 879538655 883242392 966473979 40268439 427471655 128637273 944782162 370796863 254786230 871357170 543687451 465359143 673516494 717672004 252652554 897854608 102845795 156462718 904964889 283404903 532227019 150588499 139047994 135385886 736014687 729818208 744271968 472480124 643866976 423738551 38987110 136993484 80110108 670238077 739758091 959092079 845219095 936580925 372969497 77329823 755633077 381582968 422780961 479511110 785972346 172895987 724301492 91713866 731762761 555850468 642975006 720767077 809599043 34496779 9106036 391011177 107617215 470328848 508256251 474843954 289403405 732213237 802349875 349005670 999957308 907021741 365441640 653453142 884234330 969559338 806308061 618094194 30354129 850483681 840006066 947398366 786209951 536708141 752804038 767708729 903731249 368006019 628019992 653333809 383756697 169203546 394848352 295472513 955198479 82740530 700620306 35645996 902186863 402036248 381927884 428070281 928697837 692534819 539858712 628597408 514059694 387433445 362182975 470323220 875310843 438647458 225004829 116426556 539888444 56902465 997846753 245799328 49045510 254626780 194942566 795005934 578473136 919161524 647739887 735736009 69735406 211571047 547971250 954051842 445454703 124934970 53603844 299228019 644810878 963788284 168040618 108797875 700229016 583711562 553745047 971887298 32541345 683096445 911344143 517664535 473144234 124484358 499936731 719720767 863043538 189631249 301897707 569251111 149872549 714542026 540576083 67178760 885816067 63034425 823386956 819572336 973251982 303848358 327264805 836627348 406509653 449074658 27133259 25434207 233286331 577833875 804546764 157706260 806764852 136081567 171999131 340694917 679859120 605077701 85265086 201626884 11728224 853083671 591648527 312529129 676984439 241611874 852647454 262177492 811854757 887041050 287818014 473886313 943202220 729876253 263020856 450437044 19043886 33708202 266537067 606392204 130634814 230830661 972173983 228802276 585355851 212462443 88829096 6216886 970956496 903836359 106238819 675902492 963471330 708951723 202648750 743762319 982496770 892540140 37881812 143735702 722513343 717923965 448319205 445344065 576108674 70208894 4216655 140873121 963729195 32822375 113298798 158355888 455596519 91608812 828586567 265309666 924778185 75519794 251676688 784160688 399807521 711939939 895489246 802981506 65521328 206516692 881867242 228655258 681291421 129214283 534321330 532897650 120093628 72667512 63362366 859595809 671029146 138320316 706648578 1359472 855541935 864434701 86404105 374466437 847128197 729687440 853784084 754606405 876955700 967281222 403004043 745012718 749854487 614508164 858071460 6794833 169992016 193113739 807577310 176105323 336001457 781008183 927019492 442017328 59596558 261884389 951092276 696871584 36003837 223482567 317205153 75785266 316604192 290454941 25832775 4743019 250454114 949496453 937574348 678024944 499848847 683911758 740638237 3693910 955017819 767586758 644850502 736053756 87590123 24826880 707734533 353710340 125519791 469172586 880715148 850755554 504865750 192195484 968057365 919042881 124198769 706182986 877746707 755835882 170714679 633755709 428258885 34617178 9939898 890409568 753915095 67236453 992531081 187335632 634795321 966510640 116582801 887844033 821247717 603099301 129795771 162980580 228048116 43006558 953692414 482796890 583915994 928341307 939140878 937504662 516472997 215011366 839802418 869734556 562773750 874266590 91447921 972472930 724252431 288013420 732369644 796887362 37175642 32863857 785719560 346411674 722734525 61404793 400692004 135821557 406896943 504088453 367594877 309583245 808701676 126589362 208346896 507571929 70834975 920408942 186564313 643469299 597749860 687716300 708741369 995832744 247854433 992155063 811288378 251014136 414319772 361618924 362927851 419202469 140613870 190140985 329862877 233626285 223281554 110993926 124492084 547545067 104791315 532910543 150214254 650006101 40438343 45236965 289105384 117349947 970493860 25674801 893203480 370375295 213205186 41951988 857128309 162030976 15906087 422286127 610116358 775034264 47994282 638535579 392251550 55412558 573456321 399484256 59672738 393996230 203581249 138264829 228262965 419069553 864028317 765959733 719997849 359849742 980935599 867986693 728504116 790215700 160780650 576408260 536056416 597563299 364890258 842535962 620978104 528781563 410363553 986088187 115913205 76680658 256238133 727619060 630204286 334381245 844389384 541803119 710556691 579773949 327333836 715229302 951134144 477019224 87522824 419803415 50665142 370469027 48313916 969966098 846493332 614320265 188607129 148889858 820687125 2013924 993764630 489857278 517969826 969984676 322951589 672960189 814596835 39276331 608188001 949195436 455470978 414953662 177481842 884887813 394527361 641794594 620381015 427200608 996218277 132948240 142749151 529711549 73921416 70075674 904252945 94652714 338153191 962153702 41984168 428845637 812661358 347050548 320230990 96805975 412060850 751903553 13510076 28795951 71616739 256088975 547761952 495244702 41573898 586565789 960865125 410598449 128693200 646125986 394738859 951839188 69205876 143067392 591422663 39877397 494904517 134571501 483046644 30202141 212778747 408825600 149757963 931530527 220368399 100945173 293036678 494941400 97850783 180328044 657094504 726836144 986960446 849441284 386895353 710299775 453771089 507567307 447142147 909608176 886829708 207067038 736890818 549697321 611068299 918375343 779410208 186134938 937510579 312273605 743138945 397487683 388181608 765398794 774963759 31331587 83793640 564529179 775216325 261509622 143315830 5261488 599246203 289318866 270337923 53949575 262243459 226670611 995968597 480753194 749301758 41156919 146716632 999822584 597328372 27045589 248274 860437255 662974843 186947702 347818968 304287798 722672248 905712307 664639644 301419521 233439483 310088180 586885613 449728793 659029352 528899170 415247398 608337117 851641225 305973331 300052062 91485128 196542870 515440182 538310454 827984246 110554957 302723688 107692259 534093801 996894201 711107428 223157263 471382029 43391669 584390128 522864188 949071789 936390854 575391377 293276142 404439973 13352561 727922119 894778582 516164865 474824379 585795208 229911269 673136725 832349239 24395586 678647637 664461976 112266461 368451275 699091870 923824998 740442063 486891210 649629324 137930377 160176484 798478116 666880063 743201361 27309148 655046077 775359676 94869853 128345964 193761128 309351447 491042318 456299874 554150655 853334301 71173002 728607624 836359803 996618265 319779006 932257897 273935779 451903949 859222381 137570405 732747609 835838817 858996971 87341520 863949318 78489493 18659329 588251468 668969246 554365428 678217005 383990441 725656912 86691621 240014575 97817867 637799870 220936432 187938940 147325697 960009438 115953284 854672021 750471140 110897978 494508360 933126272 87948332 465330903 20182688 714211909 687670636 145838247 450077179 617498635 881579962 64850855 370830279 680585787 188258926 605001085 367640418 455564363 495532788 935223146 488460827 393315149 140059607 433415658 62394680 338046753 936063029 303297928 616359821 655800532 611880291 785878524 570983554 747499125 735543266 864723469 364196361 412256092 468045945 496822800 568162183 707706609 759058719 208052017 966956233 7586261 809172069 99239919 472787118 800981352 152841892 260496702 997748224 187723572 600175176 569935118 569283571 132863584 921191979 14525865 629162510 21007963 159942303 868043726 142289053 88467758 313428191 414793746 327949499 533439392 24663038 165270246 996390005 172566396 172757275 865129488 23491031 26186880 396342104 343972947 909976822 586196742 150430525 29688549 879420782 401575678 72217184 644478056 87763574 880206649 444204944 887936972 854218698 274383039 940636113 614697859 28101750 707722532 653024274 913060010 617595337 206830350 750950866 792420333 727233150 850924625 924273869 674080470 380859264 864884640 264401051 650304681 208085389 781630065 621118713 836510849 374013209 146838930 519176988 494722263 520281533 673869608 486012489 60701707 25959629 772078805 709083313 407090493 812546993 99284351 950812685 198180639 378176257 179440132 911806813 949528177 890761679 979548502 264829746 108335701 975519037 843653204 491475770 816493800 961898483 399789374 403281938 614917512 43459388 557431770 86334669 274375246 540497621 928628224 141091830 919237508 72093692 794890675 599069995 556266485 283371585 196654812 224923046 119254400 628865233 644331362 86047623 769142656 962322373 641846860 774424262 442824167 252312674 191300472 257379708 5112640 408309717 147124598 1000 470314256 141914396 161513690 75948861 359898353 259353540 39022322 391260241 2075730 77264833 308304500 653816514 184393492 26716636 500162284 732308015 513033487 926149992 766017151 609777040 485178827 635293862 549650471 77121323 310975287 616586420 776436186 712068101 255853999 358243814 967085021 664353320 487933967 578625365 564039770 697536535 592241474 55734610 974897094 973489194 60584450 177590169 90288620 379189810 485257494 919050593 65596648 484711251 862121289 184461936 129046242 599743913 999653106 874188393 963173010 973829434 138328224 519136220 103389579 762537228 362100497 377025521 468229036 871813653 725756644 581602258 263439807 629636590 877547975 69486804 648618829 293958242 818673737 401832975 232979452 846643841 238608073 173793164 782690659 931828686 666213967 340422057 579386226 994132372 565076950 908067950 238533490 21963327 403500906 20082851 788574857 332740579 663497272 952475143 787416624 98141373 230444864 52304671 182874385 456663839 67626379 399519155 47154357 11848157 142688798 207251712 75770102 364813140 357106678 506394437 354124844 803915437 566726293 917621096 718482705 640808196 809230605 688287133 204428844 84389881 270362062 340046088 178674925 572697750 206143774 354177839 758093376 836906383 141903863 456690343 458952931 552672612 84573374 145168175 988591317 276280491 809505213 422320242 329896961 417531338 262398002 490864706 68999692 624725596 882009798 251116004 151164848 633688221 247342669 960608510 488642009 466127360 762872949 52076110 465541439 332990124 23847440 689388706 77799644 221160061 133455484 356705377 568614478 171542382 180692837 886355659 84012428 327353394 775073308 169129441 136076167 47557734 686260062 290173288 858195267 245112671 511970436 402149746 517650160 17272397 35370355 1491695 21215614 160884949 273114638 557818660 483796847 733384226 169985633 891272868 942090432 747741107 731115799 650321466 673547667 118243486 258281022 176892177 917311619 379811046 340796240 723989233 910799458 572602930 951973870 422027750 265521638 384696678 830849310 493467018 195605102 407207731 996266055 665909923 61900752 463426786 106461709 860588378 434328403 621905439 701230026 542861602 676328318 922291924 37202617 8809401 689783516 241228477 460598911 45736215 44192302 112553851 947908482 85158097 455984122 130396054 431110449 411182996 40456518 131277038 727846397 183949620 103438248 349964608 125374849 91538503 76242936 623441954 243721846 308118674 579862911 235072837 111467830 616663144 846460085 875224512 899808094 612198640 534291783 460719837 904569756 685710648 413562846 409769313 105639202 508344446 993188369 423571701 366749996 549413391 387407104 468783519 522705235 577400543 725937199 123078334 43514653 378727612 631705799 830466723 490063267 349278319 370899912 62122679 900262191 168945593 967891197 436646516 715609865 621655542 143485268 366794977 263846150 173262875 340075173 196779360 966677940 508608703 882079014 45698914 58075914 806079093 726295250 98781388 277428201 697127434 377073866 181404038 951604148 521556979 146953381 123722228 220680137 299805903 903579018 907947613 239518413 136238165 152520184 88065162 994317107 37947226 461471053 816108710 255615191 77746216 56488058 471458333 33924462 432920776 913516887 825556089 647422882 20347629 893234898 720109579 920968768 630202420 126514661 181288328 846439763 629589815 713539296 80360822 510871905 451535112 597527162 459845299 294651062 711259868 443863983 657726594 824119986 44100608 158046554 811604246 766400572 173613437 918168094 981047879 190358121 751839331 971558886 894193590 768314044 571000890 374480002 639120546 629201895 529835546 573051286 230192179 999253727 859933453 633673031 402564095 5098846 199266316 854333772 294762713 830522559 445983735 913008973 67323455 662976044 931262819 267697729 415203965 693789465 514026940 366615811 671014739 832835106 855831990 218929828 566061291 796099633 574681960 55260085 431291937 873873447 20638317 824216261 410055927 835082054 9289947 719499515 644351126 388301083 338173550 944736023 604380942 523841847 559402016 517168071 231303536 791990952 760148409 397572232 157965065 838763973 805898484 72729712 753107300 95328992 158604989 269781486 237621401 437677797 644153121 37705841 793741872 536280727 641697233 123730621 47679858 640998587 109177334 106654170 734318687 995984868 609480965 916673553 742728308 130848266 50785343 666592220 343963229 445139983 473597634 747740703 442248379 756348162 839601165 913170401 818785648 711831031 627530261 410269693 473459311 595818047 262225716 373399211 522241982 698151676 497492623 542950722 403786775 181772704 327094735 341404622 428957790 949210298 118980642 213991682 936149983 591467805 942680249 819599980 789618502 806774341 921562784 812993939 117678860 898137274 596039360 573817166 145681647 135498420 756587736 152285441 749966752 675886229 727740122 220048800 348330082 684218402 167152360 609981773 729816572 553403700 550213730 772299559 148448418 176491400 597435906 124657702 301799707 76243364 134201323 34758144 724247298 999057612 896787926 452333557 998608663 54620236 300930060 788053836 200044031 860303401 500542098 842513471 163541932 559934121 972806840 748338711 462121747 714358326 583120165 552150584 576578846 733777119 354141142 15420707 818135100 987225463 570800432 673864341 939337123 559220380 676448115 334714773 882728780 595287909 65729226 646827013 463565324 592210517 89045908 423190295 916658601 802321882 447244407 605212116 311036445 46415198 835631053 86007064 652822105 600383131 542029487 167252392 694822008 542723418 293063781 242393325 759918925 237936571 270468663 568695429 899813719 128108782 498158254 677439058 4061935 910769649 49491358 248259331 510529251 33608248 74581422 164631020 892668958 312925822 858351877 309914609 238078294 200251662 776272229 99126098 474531954 717552663 168772598 176310384 173169447 2119804 124095361 449078748 924455905 267593770 779020475 709344306 821097201 235395533 452264067 949180066 181338515 511044443 69696704 67579105 874063752 599961160 862749516 321813784 80959536 508975355 138803314 595201264 574169132 528328468 85397914 647953725 372641965 645341768 393891950 421601696 89635125 947672101 11459071 22503517 139255888 372746219 29430060 413311574 632334415 887335826 937738575 463613439 18651330 476554083 812298420 427357727 364870743 243216948 221767009 331392043 915878260 605178917 234882181 141214519 772585983 540562311 62081504 50880257 620583378 899053138 319937476 444574286 77586840 84395709 128002126 14996750 807725149 249492257 92729066 366267290 291357362 150500406 237925897 607254241 15882483 584692465 643539744 433039434 660445837 165081694 516013881 579634283 771214645 262920591 356394395 325380616 887261017 610508074 414151162 971099174 130337678 825189198 352991685 39259792 484170175 60064420 844988582 399629295 673153718 614758543 970195414 573357706 721741520 828795106 338597679 988667991 613319414 288580501 403781571 313256900 82343407 308020291 131914729 620712956 608390006 60270798 611972965 65014993 410459589 231254348 973334337 746752949 710514829 203077063 553757927 252735279 124363375 688858417 406053828 999515103 156566102 441743095 678062121 2491745 707722241 926738003 978914290 538337777 739416931 33773358 147303114 15673910 785352033 743507138 181962450 583356964 529864850 519751211 788529516 432265273 38087263 82428537 732744360 901488373 794093843 706598772 540086794 740689346 631340661 406666514 334356124 924233060 216668167 168255471 236386762 583692175 382557030 143839827 47538788 834222242 373300861 368647854 96397131 943298233 444616137 47563288 284749080 12775598 650864576 286154039 87877457 931294745 700653745 112939333 909114877 376762265 724691355 317861347 632875699 650874259 547040676 103031226 167671689 464238392 78710893 626645738 920038707 559100297 194348975 379299235 210136358 175633631 426448521 904501598 570313857 70951594 27297478 774225603 366616039 588057987 334773552 79387785 833332012 370599920 791007418 965640681 303821026 925616029 944143932 62758805 599976624 551950500 778058673 880710092 630996903 206451581 471294809 890730495 133282608 747681390 207935335 45692730 827755058 229642306 928831510 909669810 720462006 308537735 413004545 769942572 454453149 435412390 933770476 263671461 182862794 169630231 227673981 455656801 53335677 513191581 194215432 636385244 411116755 305724516 836201793 442586763 813326924 722328175 61335648 759832280 883988555 509026263 415598136 539981059 507914959 387117071 893844834 816542206 39670023 94578330 504820443 995192846 908332297 509228134 665837363 435735754 560927018 168638820 407746895 191533653 582883120 538853857 300213625 690836031 358468114 54902386 683382394 413747758 758906680 552803245 10077026 117227540 178305907 259154945 439090778 282219935 502121220 461512406 40527951 499006464 194448591 9121705 743252566 122856005 623903703 768583579 398657029 611791548 206583860 120063699 198613002 46354444 15764143 72685563 877494599 10646674 456027323 397900464 761067312 3354649 289432319 126468322 143137809 894972774 105154724 204517330 274911604 702983507 774058667 58779 755464471 635679474 149735728 716402613 823356781 941663562 14223978 779966036 148510919 703773945 153728406 203345813 25970369 417759931 364767802 697187076 588097621 917316050 416292646 229882411 485414178 292473135 425436564 121014237 69330024 197730156 789226542 287228256 366284169 396876618 309270193 143536647 266689875 38072684 132904106 468939465 693484647 998368169 621251407 468415898 670296265 61623384 908887355 460408540 781418529 318605363 45573592 530938678 66921042 960699950 532526554 195840668 107020073 762897703 298285080 426881633 219411196 157933608 266635067 717884717 126027718 410887757 867053026 482207528 275338036 975077650 560481350 784387286 756157110 402695691 507971827 449882729 632883760 1000 937512178 758840657 834009720 56940216 642073116 806112151 912266843 845240848 889912065 201534995 876429537 561668190 337297071 628172518 101850390 746172590 137184308 408446087 343504580 728106956 744973658 109006339 899544023 512644204 138978493 78179971 108524121 147250395 369385233 712330839 263918067 653542662 149088938 232071774 418393658 591814295 912020222 174279362 230131454 443508407 707613958 937127774 30461822 26331637 976948110 12666353 362833741 152487902 919922839 278065877 845136268 367083764 730924055 863800888 660444920 959504629 523766868 68318317 460806784 539028481 575182558 185193388 828882197 235654799 614138627 457293400 581335360 974640499 214007446 774370207 433783118 581976955 291722232 781312569 261176280 753360963 435071636 684258812 724485184 128085222 764373150 447000824 799564813 255549381 779543368 57396129 242459837 417055066 250521088 561161413 17615445 980585896 782835474 105669604 188521705 198764689 910278437 512759476 66800581 638339241 583657990 544257582 784176025 445725476 937700002 247964355 654208737 561145084 695599480 268124372 341268773 220676258 994832964 200337323 514269264 968322617 75627453 403495133 548847221 948784765 676782692 453639642 527393095 78935600 54691326 888508625 103668400 277194594 946306220 499670539 713174951 472016627 42441948 777319115 145930612 978799948 141771998 622757927 784353663 440551405 546412810 987162136 241191579 889211738 573409201 364385832 527277767 546173734 26081946 654672954 411835608 411155848 659767826 197977533 881297443 135514827 111457321 791970486 437689440 267011354 635971400 213671769 274717427 469395622 700669618 888538019 229370898 52747051 225623851 855837160 844109977 440955654 596844857 799649094 545907709 319541152 32522917 337153562 491512715 692772903 108147538 611052196 481053594 543440496 570994762 308661182 905985761 755637480 46644535 848689775 265954487 3445453 994482371 933837366 728337819 673123483 18694631 204448868 575740846 65682819 903723746 305970902 531984640 989880500 64575989 147155958 49160962 567925934 663445476 598680524 492426286 507361416 538796595 329039861 376166287 808862466 61488958 492286255 777859512 90501805 21789582 152290259 10482082 547125043 51366497 479536850 161053920 235597335 686160174 382109731 240056774 379554223 399426071 683987980 410958221 584358184 554710481 13802079 880183959 428961820 488619992 383016443 266792662 778599032 742667085 920993362 753876423 604954159 930193026 447044319 535223446 6583194 527164365 894604340 276888640 806868566 139716399 606548545 831093622 264624872 975236348 160468381 863865810 488581186 906488974 109727236 447169638 116157551 811316090 843057942 416409563 6527824 602970037 888141011 575900846 903996769 574044188 963181121 931381838 221543865 242756516 224765892 849461462 236395306 86965237 969618362 926964700 305143964 782940859 775861320 131610627 203154691 894924883 347937088 716690192 402815630 725948744 806375948 537099597 302858613 183824199 60285162 753932096 518069244 52495353 23439764 328166154 848584962 145423587 736273837 43092168 738708471 879406407 91709675 526141645 66090912 407601883 535128093 227447145 327727957 561922341 627262642 742861965 405230693 410203471 243867909 343533746 604044998 983209067 931367703 462950282 541201185 55888383 783274708 304664080 342677156 113648560 742728317 254492603 131510078 175324531 269308949 989565347 852757312 232591949 158499884 205786351 187342648 618024963 411716919 952008914 395426779 685568100 523827552 219411793 123186349 628548776 867099049 535111021 956356924 80600756 696459534 222767212 835630837 906587493 960772743 406727809 380621708 75836629 33506121 855330205 785363213 230883935 845683118 76270422 691869194 350495536 28793039 464420817 503453584 115596323 9512587 208545556 762194910 822698229 961034127 550488060 911281036 276784022 962566510 301604430 290469447 564851607 745750735 654614654 371544551 29777089 664108944 943295958 780856524 508236188 849495261 646090894 277320465 662102783 386138093 546487506 872781533 578451716 40128279 309363566 78437427 904605658 718790641 781112994 206479551 275630176 899331903 840241718 143123699 108363605 961696993 822201089 97207141 94476791 628884417 152418251 701588857 160788264 103523632 119837353 913257425 981798075 774866304 791971515 11562798 746360788 597184380 693689830 279522430 384664594 880306519 487962967 976691252 27785035 12066096 460620106 671634452 601927919 781786406 492648509 244803113 713029624 273036632 287371565 252104651 579732296 542298434 498772138 300711911 116539924 544143890 620189353 455413391 34416605 568735245 666051663 334839778 477923274 668976283 10829168 32064061 64227567 136971491 539720905 312431352 617498662 311411188 520429175 53418700 468658356 130309559 640324591 994313504 876931417 876049134 88554518 304328896 932447399 326138262 362284934 43950080 452040238 966604697 501357323 48292141 500227345 154887666 736704301 918913608 238309266 87022949 329037144 680320309 139519940 477024961 445365252 769293815 615950598 821212461 888527217 933422281 307956322 424638865 242779050 512207061 293001146 720260958 176420794 97384349 1823774 298011365 355087939 951754316 391965309 222760105 473591626 596978162 558091566 285367175 977512999 427803267 625977829 405513524 376821277 412060187 985166399 216824630 592197292 17698525 52469935 608422427 887405069 819618179 199438212 108980575 110246311 199174796 614695784 551493523 763303507 325910590 110697209 473407289 710312157 633171130 89332717 509274522 361457996 355046997 57988575 606817544 485645167 958866743 899328280 278930021 777705127 872359246 856803540 364158239 297691584 127507022 916855423 793179090 253524627 915766231 93948879 476010905 846629691 545132974 131045806 188755436 276585390 723010965 552960662 703802252 381434388 170441748 130627961 448472612 84484593 583728609 148748394 361001307 993085364 534870187 309296806 989718459 344116282 783307532 935360608 511437934 808336403 503223673 880624015 684088002 755516723 653005245 466964892 332681533 242833712 329682595 565032557 274463133 305615752 498132579 230625608 460985259 115201620 485666566 273006296 438480542 363383963 547124903 868204953 828522296 293756162 554665156 310724780 334476674 454448737 72701529 156742659 679491744 319601034 849220608 806539466 443448900 543286369 803300699 991315079 918017390 784139313 41528357 395166123 762433260 998307565 809950179 507483069 465798483 737642660 579449235 533484884 44276572 647821116 187186309 381356706 444149376 145240633 39826620 933530565 511238785 842350040 823761721 384849063 623166862 599621162 493042356 660169479 377974842 345067851 395322373 353601349 321429661 985102940 54128125 398991958 272981921 766181830 543271068 546955866 507058338 796760535 255200126 576275507 418785828 795738567 994914628 31036078 980986276 56314673 817988495 388616570 124901612 85409360 881636221 316927601 681428876 531367290 618390239 587834514 327527894 782256442 170653415 768029091 749925806 745298526 338139902 41469774 50947127 28733049 336327536 140621835 492705926 106255225 63266384 685763283 448849152 695539914 825573135 478141089 652950697 605146701 398093379 615949525 735658087 973510016 593609261 659324048 732223804 299718048 408521121 348374805 645893094 98280048 321692115 279039185 197839485 953752005 526035641 517786429 885333401 786962482 451986049 70563600 795338834 353807498 616177792 28803422 692915723 97093477 789032894 585881961 18526447 136657167 43282158 366549282 445960952 767965338 889449298 185421422 714864994 838012160 590705684 999367367 556856619 151785013 844420768 550534650 440025133 838804162 194610097 714838345 439962505 30986911 187065457 943522010 146545310 395668333 608456207 46222810 17308372 722041639 444356958 902099898 10111135 945907451 883238730 124828238 665172960 882368670 67234562 175863488 787034111 464059881 120050954 714670748 672152486 797736558 696481821 802155991 590009962 688275720 769779605 313548045 681974211 242654485 612665406 134232219 307624339 501296354 928020601 16447787 84145617 33707702 985175600 85911990 884853532 865620993 986730878 993379147 674712471 13192590 872492730 359325173 692070693 497711725 740759560 42874675 299353559 817279677 431457435 685641061 408186423 468190837 505427510 658418338 824793672 226619447 504904826 733056127 700232405 884658523 167545111 740060843 238017918 704294587 288100420 828912832 744701051 688635437 339411059 435756047 484300927 870478823 859036493 748648749 68620093 768368814 650626267 269355494 14303960 620994988 124967173 633311233 336768528 5326188 516488123 559379566 564952740 809296839 142575107 916708139 149544765 723545104 736947561 247468542 247588650 817221275 969210307 835965367 707582236 310607465 784342407 455805028 585331993 708452964 40125875 258174664 906170424 89230980 822755601 955530947 62811600 115367570 96091051 279080305 606650172 552151502 602741312 649235248 479491041 421298460 176598159 277669666 322470756 689013552 333464250 92484203 391075606 394034191 114608760 753621251 252088584 746283041 915151902 586552504 119035241 650026591 576868475 7748465 236825104 877245713 116046012 649678280 335873790 402258483 534218235 834585481 929713532 11082765 144404908 446064765 5872149 358307927 490685429 83972952 761011051 994526670 352057789 583373170 847027703 85748546 775270187 636090298 291507509 939127482 750622599 133978163 154192511 235517866 120532415 190110362 62273063 578749428 598064106 482810541 230544187 383088735 28418505 57888836 946845810 27248596 16388327 793308448 732574341 737499284 86246495 331980107 637229641 120162822 308516528 769605031 827270980 676648269 680782570 205079127 742972520 833965379 600359247 569372327 697624868 573005105 508560094 287898356 327284230 292962880 891810110 41003943 430047289 701604119 195921961 142481914 804730779 215269714 806975569 206824466 909999298 876397770 874625799 1000 611278753 783810919 864157731 332809788 665147843 86982684 390305638 676345636 126037098 538026429 158809456 876113586 85421207 948639356 912406369 283480948 909668986 137159975 573081263 532030315 887934363 838790949 840709639 34998616 851255296 938204477 101468284 9513215 787067987 519928691 551076092 860107807 221526252 452890821 518211508 779685051 378622645 742174338 348852513 854200007 600080993 926952989 713726302 28455061 11242243 499592024 968203829 539024586 601547080 118935441 496505393 107919648 199013427 888333527 325558258 199220177 617297098 725515125 479795769 100525723 451777228 801795325 929924327 775347727 469791305 332607257 120156919 792483236 625265578 686138993 260041428 855408861 906274065 481760652 308936702 358489337 594805290 455081294 838270184 131489294 509695044 403104499 866631949 103650690 784365744 122952170 276049938 344933143 580110544 991826143 169508994 844273238 455037920 658962904 248924603 117477338 966132825 657745922 55247667 553111315 749047810 1462470 134434082 747898195 241643139 377574430 549177462 511615228 668460168 301545605 241632533 101414563 484309956 96711938 792536044 800722898 858409441 837315849 111428241 154628425 85746903 585756736 579868449 793766458 124785270 328192279 452113486 17643345 525429156 650665305 495795522 514765293 215747252 93503731 575625982 267764094 154430801 181412364 185141039 579161952 111818826 806768726 357373260 45563687 94567701 841250600 556222717 171258379 77667152 398594082 125229225 522468910 81210687 393243244 511630367 243133890 744421996 942118944 411878612 566515770 742922685 336967530 308908549 158688288 160846489 749842610 26586115 993758476 926482886 298463254 971535718 247946094 847700809 457025990 979748590 254039926 854891076 191853676 148861334 938010843 795787770 182413211 378520569 170237265 642014022 729084486 93383652 444140383 135145141 661491425 540762723 235470823 267679956 33877275 688488606 214598629 149171830 718501671 763738585 399499536 109321655 670242065 734606983 12924786 280599248 855976592 620382312 579847099 395314328 20329088 280372888 948775220 653924236 244961942 381532517 52813567 407100152 634343780 867494474 16709628 975557171 51028861 88126139 7443981 147471409 695508791 227643374 460299046 835024114 409675576 801038929 442777454 80450468 731815691 754367294 443357135 279827492 141366549 621331865 5012553 992378720 237617241 146925079 240523150 228205473 701310745 891604512 475000725 607345959 173067939 745638326 236260522 20187632 469563233 791100569 122122340 384104149 891222628 732733010 683294184 445926680 512964410 131798948 797019669 859315668 429176785 254069594 870473213 659163658 588949503 727610735 615580250 958496229 666720167 841241005 28208313 202134469 47505683 300188989 92079081 20608478 468174874 177326422 427737292 41743159 117848520 961530406 238866384 812817038 668341933 165207422 574220330 920506365 89528217 485922623 136084482 526703159 135017466 892231742 91788868 409750498 548908527 987515094 129993684 464875856 237299625 671849109 944576448 344710758 776027265 467089146 214235787 888335215 607452321 62924885 72499299 170541440 984978404 57368722 686386617 458960919 671607903 489658866 152652246 852503938 682356088 495497397 996857182 844460386 403194651 281880090 843863593 378160658 838107788 219258488 494479989 872236171 184694558 946145042 556927066 427645036 37644704 822941303 113482548 111534321 866544160 675074235 978925814 122373081 929938860 78361484 355639438 930825906 274872745 546092987 248958312 125399894 764572486 130375105 411938011 428239303 490043629 353227400 10711712 206202551 586920206 783596322 541786095 146969257 481084208 523985602 315778477 63187986 75715556 846296508 187614878 274249144 20287460 173596785 676542857 509948743 60142962 207861104 345430832 38618850 752107001 585776282 255179127 225738133 3352961 803308395 917307701 220159852 29786515 111277325 847409715 759282214 739460527 75384193 366313225 986441617 16173972 490217388 124180085 492387555 620680266 100968815 632279652 3736059 303957447 580336420 946049576 290847557 901064744 965221789 62127077 799837365 680015994 958339838 122738494 518374268 725289235 736780805 171787715 124670089 943339923 707943665 434192118 342712783 270561750 414386724 807221444 285589241 185398501 711575512 318808817 223417874 167015391 951966413 928135680 298047462 894895989 995135972 758700328 556236929 552149117 912703957 644811032 964092049 711431154 943886168 67010565 189922798 818390010 425455958 945940538 584180088 62099069 114462430 80690719 125247776 207774543 767738058 71768528 953632210 273028757 584783930 511421725 811204575 799960098 846266353 944667602 995930940 738702540 869769498 342146859 551276782 987991363 537608883 17009692 468150687 613054886 160060765 737449275 406661456 340516757 291936293 107516063 714710310 35692287 400590996 862332810 868157311 567916599 346559174 123004755 112304442 762702427 467601421 133898221 467015724 762237746 337978365 659805953 629125528 737270448 931102192 126608852 329205018 367764879 391492271 279942571 101855477 172249474 135240974 880452474 708965695 246820098 609938013 60923226 374802676 73496976 895706971 808253742 324030785 320144714 73973579 214638131 779125972 292241489 80567041 362753786 376064306 538362113 451200947 729894120 492960552 873274833 125434885 94560989 122745392 889912345 791119928 244325928 771182562 179073956 666723225 591452576 948787483 802691713 42206697 626460282 721674330 770361706 102393609 263949277 185957757 852342417 79993688 291987193 696235457 389680819 178929636 693336576 58971813 134018772 945714421 49768568 420605798 16845919 254619613 265572221 271518 84530935 594990497 705321275 106572432 675996883 429471817 513249371 989450121 927289155 993211703 547455498 245399550 831254478 927572645 408794090 433768233 222230511 35689470 60684519 772092623 234581602 383576730 775522482 472130021 913968559 797124527 279790390 735775086 3660573 872461034 271879587 830468481 30153717 136296130 568871198 87323467 998530516 768238451 28070066 209850774 38441947 921457672 303388516 555466388 62400580 422758729 604618848 109902583 102171166 440912478 27312769 418128267 34979954 920943258 239573221 6434357 31922897 886873717 300176726 220031216 802098957 847533443 667427783 514823095 679221602 645704397 823343166 139717168 45300976 42845153 970114542 625873303 559870062 323547220 660349634 891415869 140087770 766593295 653947459 481639774 484857912 69761166 439271533 221711291 144601878 963360382 918465967 542829873 394663756 771787679 286452110 9023405 401090668 787490523 892835583 825766297 801447353 27774523 348713710 578314787 101701211 838510936 477819178 706009629 469240358 226965030 181382058 955421710 63055255 333378746 277331755 56890788 69390229 172534989 234628358 493286971 869623822 954339 282788449 433382875 920114198 307229992 892545131 743137245 992203426 512780986 711195762 807210437 105842262 686975754 59048837 422435152 810882196 335389914 91506202 402429862 900049266 51143105 607863844 759420723 887077088 933006058 339909341 450187149 656207442 933261524 335140436 54471625 499151029 947131493 114852946 873742369 937013315 202551615 217771760 246922734 89971706 572162572 914963432 994318320 826216641 434227777 890816486 377366423 978338539 657364820 446205272 959309830 371667599 314119333 70156345 343526139 50797965 88028641 613749285 46502597 65426803 418308497 103509779 35512957 703656625 25326519 915240647 186348078 480956996 381674999 530201373 55054359 238799217 407767722 298068744 520100387 421491559 912913009 424314205 874177170 564424074 97824888 339059827 991683152 534378392 778410992 92101432 282442198 923636464 455007081 458547704 64672457 199001593 853467572 670778922 681625214 459323126 252255967 56300764 490558951 553290522 191156817 541740459 349366928 529997536 676451185 531077190 104123447 488612047 38741103 736473424 68653397 564489279 666700846 167138374 630633310 258344801 955504437 345173893 296687630 818280125 166139074 62585187 650916551 665291642 480102149 644492034 25480360 125558563 565692452 841213305 594564579 997867789 293006472 977950985 15497312 976136831 599479580 794860083 816258966 969973798 825408646 824734878 741224553 727244990 67134764 984232712 331144617 533950016 792678693 113385268 807590042 588360918 337942659 641578606 37086113 807976669 83009057 129697667 928739147 879310584 159626640 57013468 708755846 38526790 602738868 788042179 236889975 633585571 338368466 130614439 139532503 613466099 947003143 150154718 805787948 9377227 9175114 342831477 499240790 797788530 689139393 247937029 603585529 962419269 707005406 248537281 918551724 825567805 333039772 22812180 704406188 996099836 28534758 761719676 378363660 93552022 391684642 519182620 565801739 865788724 482056127 276874060 686065352 676543846 443746438 86427264 66624483 44867844 913806423 939453036 383198917 450481514 397697337 226595581 553812310 979950667 423667440 128787414 383818186 685648570 172450877 20403889 76548063 155298443 609541420 339357365 656145335 677586210 714643757 890490980 810323605 658294022 601977216 163746087 694620165 105985385 293266050 56999034 126331343 698778752 325252589 903231259 758427525 628581531 189685851 366016980 683192003 872361762 625304372 122312110 656210629 388620769 822527704 83754448 640544809 75342887 148263897 829861029 270262936 645309011 3549231 348945356 181750933 191700122 274992399 314397757 394180581 935644532 623927876 814270744 510650676 86093900 990965359 598307864 450465843 241093304 797880065 939325100 369020824 669752412 254737507 949894724 976779888 261690961 940722520 690390663 745287222 58214403 656670515 924368251 998615062 998648014 597235629 839174098 456514213 795838656 148920242 22941481 384216545 951461667 577331086 388996534 101863113 430231720 757625753 101419944 143544077 475476869 831067668 682648876 1000 849341388 974449175 16906069 872707983 487835089 516649425 380624392 283759192 21289531 814265678 540454775 52230116 992648631 676757492 500184210 178118710 674630474 39975093 701366859 466098042 485286789 584014373 923713438 586659301 547701706 50692967 497771239 595149120 390284626 972430299 165361889 259886036 254620011 417052945 80242267 559775645 292220017 495617840 721032460 776645644 674211404 510602504 935798524 76086973 928498073 957113353 66866649 401154046 554708027 2786540 500623741 102446869 114078779 96304019 646320087 464681515 877426970 806030275 391605494 2583833 974563252 163441011 809341774 595698411 387295306 267288838 838907044 315359536 547825962 512882117 800129954 79916816 156675018 613302012 375587143 79358423 735916156 453349610 374613788 326073517 396659308 773637552 891822490 985842083 90576429 563127318 237302994 842728075 109696259 134178612 313519514 17105798 161603014 147295847 142019524 697136074 255519540 244166376 716705646 641075757 433537759 899926715 601564743 375002922 423218294 846476324 114231125 178163080 665312965 698810280 515378060 180850158 10285675 311826398 37154500 135641690 47157885 236273351 784508449 156964473 156536525 954688951 631145008 688399583 67002050 370361698 958730745 463382248 271553940 209764314 683781542 513647260 949782778 349430639 3348095 16415557 76842749 636806001 316394424 132358727 983860688 4753961 244165326 937024256 180405914 643525171 699352190 823448833 911508642 179108243 566002221 430534330 746453979 554603711 124616627 53163855 311594329 165099514 973530196 921555741 733168936 679081794 97296075 938399341 767097802 879732757 199801743 682996500 359358300 777428865 621129193 682000037 980237478 475033476 333636317 98054623 808482071 520497707 543896366 982570095 197129397 127791051 536955733 258160698 216250452 440616489 137177379 123786320 161378042 131204433 364559198 942619168 514317723 668848391 129235724 263917363 715328140 88843284 838111984 485027571 556722233 52430037 27679715 142703665 68230391 576902352 254008154 122866661 536776268 619098896 269372373 720170282 945424920 782112903 649588779 314077707 918677715 27293822 771401228 568593457 538716128 288979661 458669905 62161656 422835733 527907978 519768714 717195397 783443941 564807502 565025347 810929461 122713858 19445146 173502115 425404169 881990851 101608035 132715757 19995711 60201750 995185106 9439871 101063205 541983569 632160074 515356806 812561425 188394512 723242191 73952040 663843058 204764823 373819900 75685082 631086563 699025746 154262804 534912716 333735045 359322221 935041995 797015881 690871456 79197138 883161103 942129899 866016636 89976017 179282285 992425855 602699977 987174875 368174640 881529674 993742661 86157519 939447496 408397524 749584533 391761422 356481667 914206411 894709897 635342260 831523284 700950107 683476662 215306000 257315071 945239658 641963793 110291887 663582236 936034806 409219332 853585708 433470945 691407235 19020227 504088905 526955716 290112639 904269732 253160510 475587702 937795124 234827284 572206560 408961014 161883841 100111116 385590106 529462335 122025188 665822771 149373193 624432969 705973446 67973116 723052070 762588273 412586656 200981087 503897991 97166546 308463516 970138033 77859625 839870425 768308602 382758853 802852686 594156621 577802665 425082718 518108196 497485289 178096179 678356549 544363338 127341111 498548057 931401753 322633808 768563654 456535454 378136840 329229358 991265913 117727587 107611295 715770118 965790429 81205794 653703748 30096907 597565180 550530194 246995291 236112027 368482498 357160365 514678607 745402807 662204443 257311215 771637771 5423834 348014736 206040673 293432080 602076247 296844614 660266875 42295830 105309081 86748211 202958087 757381668 584581797 25985563 584887615 923597417 173290455 305611099 786819804 416130358 415021832 58744603 310981205 602364008 250459508 57230216 32707635 511398184 965250092 135813107 174025319 344246227 408207 541453845 569392040 112552037 399036230 762239536 635556972 280130255 492271333 707218920 780942642 319714913 628433088 546441257 727462285 951977561 12796174 66189404 318787039 940998662 466426929 841692386 234596449 208411296 426801669 869567701 264299308 978614451 383829449 142988934 173183785 166018497 381988353 34250164 74139492 12373448 98534217 726731445 855919052 305585776 323528986 894041427 146258457 995701096 286777024 591694566 430385014 131452894 899174116 706105619 207623772 104818937 728295001 934055136 879859783 20452537 719565592 637468505 895784312 93886531 67414038 259386381 914846725 464205842 435674341 121060632 997989789 976730883 13959292 297322420 186700708 620587112 316080542 115559055 755215407 514085141 516058201 748100060 164728059 447100046 492619602 61824921 698734974 245705549 795735311 755555374 173405677 360879092 13364912 547029893 901034736 401034293 46681900 753784252 547144774 709028611 494283256 715921180 767325304 140644244 638977201 203393082 940195497 214071616 277117176 100294390 946564358 365829589 269321035 922125997 609493255 541095050 859405019 670643291 762385950 270965228 954290363 503878827 611356752 514021645 279085497 102903633 31364050 463023716 173995806 124541521 673198464 140302572 574140869 207261043 532700681 5114567 42766991 58382304 766066089 372525331 215936739 80097785 962058273 318343747 609470130 89169025 498738294 357128198 769376866 676813979 748629748 59715391 63051741 79052457 381086532 19735759 50760654 954353907 683687095 46448228 813824716 259610431 368981697 435712098 984499365 542831828 573365311 774447999 928023065 175311659 553825547 930823125 286285016 5491981 437221906 542208597 441562288 659798407 569065556 14461604 943143126 313314345 5517422 496662867 478838831 361573358 945532181 545526869 84066054 136159254 813923626 629668902 956331527 311551212 305206044 839843163 546557079 570449080 128478269 11335142 966490288 256422860 854009266 416215919 960153099 645366079 865417680 470336477 930585276 361301636 79280469 58386541 431082272 684106768 244226830 6180286 150358922 408511559 274262270 694281868 330635644 634632544 106704706 929482492 881256812 400876838 467714081 525566226 648732381 512206262 417177509 19603593 193920459 801635874 64758789 369158829 901797116 212357583 513998884 395823522 859534343 25922416 127443151 765551442 627418140 16084553 66824422 799882876 629645626 920935244 827004168 80731172 998266616 900328239 361303786 672784913 43066425 718728416 549936096 191727510 28488259 350365017 844964179 95210900 103759170 635085330 307436070 55557305 752836265 103254563 438151302 659744834 76482854 603839179 359541829 365540963 890811065 677400315 706015024 194969512 989121727 394950579 409970826 41860675 721239465 45519558 196075961 47800903 631169369 457429230 489725988 359155128 786252891 892590853 363066235 248150335 39572831 583995654 524848633 61916516 290477006 78346687 51762613 670362778 408242130 136483495 580801137 238672411 66005595 658235961 883946430 84517824 219211742 547950117 116768841 818731665 138730507 78887819 7365716 365374131 514084851 24205884 465554351 641620866 775714485 898800162 892078260 233607427 44918856 321534869 944693092 513816215 512775063 899952704 611618177 520852303 152537703 891507890 780063034 474379046 428386960 206135418 94534853 40654534 741484996 234819854 565164359 944024651 211483215 768780156 330702246 110182663 834188602 419698328 85490379 11826518 197316395 475848049 272798162 99306280 554695869 481251391 951435751 132299663 230122679 299473276 837762132 304275225 39557700 534960792 439772442 590400454 268380832 986664995 433946037 479558860 49746959 498907706 118174973 843753555 811702140 309842114 587619520 538469314 257865556 788589920 433690001 454058410 894836963 572389257 655193811 715449648 927423046 398209287 265877695 331515732 921036094 686736625 418766892 316306237 763972912 435151712 43695957 107482429 243889102 800859860 966104913 697968317 802922118 134169265 342733995 44958030 196743997 357967868 236039376 575827235 143918238 641755602 326440656 396042765 656412906 965816500 963469793 444226291 66558355 798878858 453166855 126364313 229417659 509083259 290835195 424039641 331454703 979179245 857044049 569550419 555524059 472362712 193604835 664023665 480205473 404843283 417809399 803566807 562683323 670774709 239215406 774111136 885323931 392018617 841527060 584228669 297374642 170591264 998232449 433062738 87941917 537825005 584272673 162482384 994384959 722876746 226801761 652579391 737010557 241259637 715152615 791341665 519463913 579249312 253867598 731618362 806948181 399964775 64157805 274623978 971282409 781002111 360345262 125061710 777427824 163598483 611656469 44660138 30801256 181133229 642169544 830583616 706182533 224504015 976068321 166308275 731111418 742426525 593671548 574683895 469242415 250768472 560893371 843581907 418104863 526364492 908722106 805104661 129817811 163586638 634393891 181308050 111566410 655725876 319699026 209746422 637096907 822190607 311126767 962148808 654956043 783471810 29921343 792814461 952501857 143653825 50033139 667008836 744983504 946082781 155897678 42069661 160422159 260353121 545736767 103098696 567048222 487306940 672277113 735133597 38850957 542010254 108964511 84389152 379847535 158591486 120521274 606277410 77948439 687065073 797007879 377993413 669594915 55664088 278148431 56701144 117603660 32029887 590714669 609003501 63065473 768752745 10926935 555562947 530302118 553871261 413117442 334082490 12790316 480914518 93163409 864314345 179518172 485281155 558432402 610767847 774172150 425843195 573128088 743927382 778235677 988000214 925446814 705195327 665736981 5035559 6719174 858515210 163298259 70979018 755534664 6836266 195484773 729252442 922230402 92083954 711422602 823188486 474200441 801415455 874466536 743282708 662739297 585434743 908807854 360960166 296934024 13189393 1000 223965763 405032242 235925470 304084325 832462897 854354789 353328320 669719681 864411771 478994088 173694420 903647424 245169854 257642494 447365723 90790298 482969425 611177699 329206884 558862084 679246949 683270167 906023805 922098278 509138639 293252250 127371416 779613417 57910639 139903764 146095455 730668519 206577969 743315332 675573121 18224332 744385984 3877524 587324325 574681277 351608085 440180927 713162204 188010593 352321191 852674032 394497421 318559556 183297145 868502725 593383281 512281899 424359425 232537258 574012479 685799469 725523036 839155774 591951042 85947301 480220796 401322540 391611911 611284246 850040358 760361484 736667466 326438490 447756720 705771214 784674535 945339091 13524405 482606460 656134313 3372944 726792395 41675270 956984306 297947436 448588031 189010368 424168136 861885465 612916809 110526798 632437740 526142403 85870400 517816273 712510617 32243456 650972846 824801600 963008628 455580849 925888857 628463905 736125000 316205477 66031000 891250411 118146377 358146492 876454992 497900974 438147248 933740598 480559372 723653554 129378238 795958408 893172977 667434118 591502726 453036022 903414690 550777153 105757079 994334359 51896901 885787961 761519815 247635148 36517782 837874000 571635823 946953483 277515657 219879157 914547318 411236521 252802617 678068858 263627587 991742994 303409584 574704017 773303923 319148308 903573647 225996870 287275867 33675047 821912779 876418966 195459076 415064554 380621475 77217420 484642904 224274015 482282944 60913952 403309784 573042021 418034992 805251431 786460740 971213489 367485282 913098158 508999376 629490441 558561744 367898305 726949137 191473099 500525548 435680069 65888860 628016515 221540641 696880309 151749821 90055512 206421966 771013161 944211854 237691554 928545545 40373284 552697198 247777479 624713000 224146814 689154958 388372871 678164961 482588631 824491807 495937142 945866701 174110847 705928429 151756788 648430045 829928103 649333315 859787623 574823936 120232517 104191542 326590832 283399490 139911374 242077463 352206830 630196429 468825582 298424716 947177305 239473052 652667387 989874340 597369955 311135396 431513110 827322938 650961700 684419988 572070201 127679345 391261187 419593758 49678872 307449542 364331853 502866217 42968764 924152009 422321183 615638482 40710373 485379714 428048065 153423207 453652946 111858978 715370391 330719560 270451483 710674350 568607497 94700752 803342728 788292351 212539469 734277576 41459817 598462555 82776079 214414538 148321081 15945500 900619275 59838752 835425959 517301085 880062101 364032226 46174061 251699846 527658941 403517931 833272557 209095089 376159725 201881139 667301764 378457350 474104135 217529881 763005300 11563249 690688526 555563935 162985812 519759038 702625688 962318078 205342855 991526165 679234286 900748728 40088234 682382000 749531183 417414112 469064696 590816933 668654388 964772558 461442770 626204576 464955468 453649184 290856603 68469413 726405506 689301494 81898418 828364941 682524758 167771310 991855751 475314591 271664117 104101523 375302612 14613318 589867378 600243869 224622720 553515452 403884238 223284000 422942568 348448897 935636292 553543463 568550419 274970685 351834529 430581568 153948966 712855129 53873161 924578981 55033570 787804748 638579005 110012126 830655768 235346791 628195007 123147363 860996683 800011920 637931909 28506689 108533302 97185117 958225365 82567796 747572112 944611910 939682021 87422337 333612549 739398048 979804053 161137323 473046578 186515984 482616211 59040974 578352973 809159093 41894525 928827391 203527315 133824179 450340005 81693878 387111440 326852264 471010589 40757694 674930933 216619918 858187053 703595972 835238640 869811963 308463284 931187989 470893705 712083855 843009418 218629932 747264471 420212898 260166989 237689181 650123692 495338709 145130833 762641346 856701658 943265093 693390683 270219169 824337060 303243533 981114218 960297611 706729707 391237823 612417143 568532794 75793065 643121946 465171575 130617603 706072691 718586100 67418657 724267408 503627897 570848563 139946552 537132262 674582598 851275599 214431828 136635493 857918819 690418640 341192418 464120175 63605025 393202552 104554889 846855496 600453617 639542515 972690018 696801813 222916388 374445168 188671714 202983342 591868003 290791609 576896813 403007190 983986877 613198735 278109739 40503339 855002050 491812915 851932280 553982125 805353696 426350608 218478015 737704701 131792194 522790603 605093491 463715391 774086307 100706783 767308783 183443454 526004706 392222728 13947247 663708450 461053574 765730166 882912177 913628443 191843833 119507114 98784313 515931692 225327361 4210354 720801324 327100454 319880345 70723608 653250119 632358652 215798761 19153710 740635807 424575604 412731583 725523369 731639621 853101110 38944947 573503055 228061291 182371387 158657124 124157063 75505310 991231180 389778610 90421813 161538990 799070583 818114945 175779615 741391565 659964201 563578913 795909837 408698242 931119593 856333380 552263047 451096736 777884473 817256546 754701089 391599118 187533822 623803627 92973262 25881408 672672021 44609794 50794124 554495098 587244861 521810379 780340904 677567066 220457301 540971666 420949627 853401393 488852301 735494817 93933034 84153337 132448896 396389525 56674739 241468893 333993534 992676341 163222275 439900282 851961959 905714295 385085455 766150244 808354735 479384431 12259302 259972602 278157313 187676841 219205287 344510591 279855169 95441894 442641161 122350817 64183811 706158763 294913554 986198751 528801343 331601780 753531239 72841128 411005598 658671267 319139187 228140746 46618389 440907952 800543863 869729716 842891524 447165165 227977445 21620030 502638976 433798420 932703726 149030338 164452085 924046608 221951388 201585742 733380241 577655023 796515253 46346864 642059602 733858929 114782784 464679043 343365689 436009559 744500147 403175837 182450005 847148619 778777950 407292478 660492798 84160045 816272685 3371742 344396491 125689178 916631239 665301772 928259073 725999890 140256852 53467579 705497503 827312996 714322907 567840183 10802488 722702620 581624032 7301482 853074318 476973449 35001034 402026158 975091432 295611754 481875473 732317180 371690012 112545768 712519628 282970605 67552750 927659546 388769997 200110476 125127394 664740988 755392047 589596544 441763899 311318378 97039587 396050362 512982954 39295589 552013851 296941692 961070845 911293002 799801267 753855573 578050488 657391730 170726786 125143417 163776661 279862025 310898711 373874417 138540194 748046165 897930831 113347384 405336427 489590066 359629160 57647383 267267892 309200990 971620872 968509898 481093508 892245714 480872562 691376761 15636018 223780784 214108935 531784703 713195006 67943046 499786021 264971805 560917671 508219938 932109725 172759807 669888980 631937832 110832499 675461125 440353167 496900302 35650746 337700443 372446153 472595471 125625603 134373507 76407549 926523591 115838652 581760620 107836571 49137619 729653504 45877707 873140939 30989800 474842528 699475217 589211263 324458595 517780403 588091974 802976689 70792938 359293818 234015105 70100512 27551627 926296881 681806535 834520694 603668273 327915747 514867762 356029087 433791346 321500986 42367759 253901274 52535332 130434602 260295475 945137926 722897168 649690694 10683646 588733780 758021222 222754775 230281581 924955582 727816421 216507485 385091873 733396138 509794716 499894904 948958646 671216967 171333480 842994505 410046186 280884479 95803507 660576843 388741790 354610015 52323848 809007911 368883597 68915686 294831928 525396178 340179584 273391071 122206180 564843346 526079232 126012412 137720888 782449750 628223168 751729657 9023913 324386406 318375009 713399532 835978930 798904385 981660077 376611627 179635139 603141270 411722988 151436810 465420607 195040277 486514838 744337447 105973684 152801268 288386266 499101210 739480988 629844488 539114869 210101059 755645727 39114874 3685858 610966481 831996944 712270212 505628586 184572504 163624466 58849417 837237735 944007738 220783020 862400054 828134607 137723460 183236183 693943218 482336536 199936129 56393708 782507599 257227721 27642697 887982213 462729443 64240261 513233734 863070789 523283019 603901053 503102319 559976970 851632061 594875932 160700266 875441365 208462752 220194419 656499555 99195301 568960180 523855321 798691629 622148013 622363557 317884536 193603943 44562712 537614381 984262008 697703946 767112262 697042139 450522817 400765480 940399939 705359782 327050945 605257767 674511730 939701010 773030093 301639096 240412523 76219085 529137706 887659366 100479433 159566919 441886396 132060214 115583311 458609345 890857502 788284564 295054706 161162063 974378135 828951877 362091251 448849960 45943847 308657649 688739685 972551869 81769846 883643355 293199317 466559787 779636227 513847125 266318109 206151056 509221726 611174100 927392590 137363152 655297888 593168765 451238776 109787267 520828320 111411560 359598069 715170676 71824624 142620753 776329696 979613091 173797778 757494167 137893031 383588708 87635919 490491794 612052880 412004207 60750589 471985201 510783232 499623085 331570617 902044048 33005921 477562066 393719874 247553324 374520456 973057731 105479946 214292637 16803796 933481790 6015735 633745288 739638196 256095079 962261181 890679366 620204160 352039797 568157239 724075349 762264394 500428360 86643297 683586862 791804367 593502468 11022287 227699130 105456140 258305374 275535898 58815829 167132755 448635625 276452393 320809967 832399740 107382957 43099567 765645463 91986 907324669 911386395 312143596 95001516 67003427 593139290 404349341 673509190 928152803 575754897 358334754 665603910 681846563 140993693 476322567 253793214 134552764 85668864 622823110 630518603 699793600 739213180 550519459 699414244 326570140 556434187 729002244 317598612 343027623 164853338 322591511 948995986 644756894 33012941 1000 11711854 802640030 985448367 791393184 753003891 310051479 83077811 777334244 571032559 72954228 794689015 218862194 681536087 903683261 708457547 397519151 23570944 102501232 739244188 566456309 185953188 210581773 139639314 718083645 650268861 44123766 301393487 301746249 110861176 69035393 426554391 784164591 490117084 948995184 920585766 450086793 152467060 40737128 208948505 870335487 960643436 696614739 379450194 303152412 108209056 516311450 940694606 334187502 957033028 997211555 467503678 298063011 576060884 763319748 20030701 67959126 418103921 393523771 567641745 347550607 169039633 386018695 967522979 886764295 718823216 362136976 43878889 288643229 536078844 422770011 908024993 40850790 597508925 694771479 444483915 772103540 892921872 763297631 709750190 100693281 27620437 801932044 95337153 694515282 334698554 806506530 631426933 690679884 11506315 593525625 830986532 889968903 200595655 829236028 760040928 465211283 705189766 400918029 789276336 908785317 777460052 174293066 37841019 37306856 742712902 976365774 851053983 501917431 218413511 809521831 171961783 488243195 883856482 16583637 400969845 922366288 159994369 142929514 132370325 839435820 52801310 76825778 423960810 950549734 937742902 357992888 84746973 51857809 961470488 45486989 741290697 754860700 66445169 85638048 845077970 294201813 495566511 125566271 317944068 793781229 784479060 950344986 406534577 905483721 860882180 762565933 26642678 396573453 143484107 576801954 993127011 934636666 905970796 133804613 497351553 141688972 98162689 276815912 685298899 858005133 31564769 556567333 81647419 534725618 94562819 321546867 364331392 870322067 774728823 469963417 324022514 855460175 396927819 145381437 586664544 879601292 324110923 846865427 285802007 807265404 68683691 395696105 142160535 221600221 617344209 337676522 488801527 254475149 892797237 269161574 44808284 868356528 111839015 242430030 379662826 165899963 88179422 292591295 971907676 473858664 606755794 11535338 248210277 99857343 823951277 572512711 90904632 811805619 10725158 771506950 877680743 39298688 284130258 293112613 86808225 681567779 492813753 215747694 828962973 662463716 748860173 908211408 480174793 124496659 799335776 209827978 11663758 845037097 827479199 186201697 948137877 127931216 825844989 717664083 637227749 371546513 76411260 763756158 267954294 542469182 462967926 694763363 838007026 652654751 646001366 539254824 423389727 633695336 177403980 645552475 856104110 423316539 523285609 987116408 447892179 55323585 633647394 414182336 291959599 284055750 479734822 325006542 684457781 413612031 801966107 11894660 8266558 447622217 181616204 458101998 416791181 53981116 528185337 292011964 590437362 100700457 590613368 800466864 587781037 360942452 98212036 74169515 387966978 59093971 687437463 616548969 28318303 735825868 382763331 509198299 727859248 870993461 206964488 53551602 409997035 486979152 50399775 153971659 556085130 907199634 579419395 372381546 428631725 675052807 147964500 775031602 384926692 183498172 492028250 176759967 275876372 458686943 703886667 373600068 432305662 729328877 351110332 459730016 963886060 278174420 131990856 842413755 20681215 412928271 377910996 354518185 921041537 388933635 973490525 505297817 356005311 3064472 59150734 940366336 817983707 256574832 284427619 157708685 810432553 967233098 827540910 984511979 578566598 200228603 135747304 637181193 434963644 181457800 891194252 411669140 2029259 901732967 979076634 80716281 476631325 64312165 739597013 967594628 279621004 271454943 384605551 789243361 658449447 326072274 256053074 141729408 773165589 798814305 391279490 175336457 139517047 836309668 84983716 885343846 103101454 89876948 87921687 872294350 593996683 259724932 692369729 54165929 933821251 637837498 166026674 135448064 561140678 927852969 910660103 602758960 433835013 526300875 58375854 174794851 338525297 505083375 447091035 237555084 206793109 20746448 519568618 904048561 861613148 203956332 353837108 381684868 295705541 203342859 816606448 949540219 90581486 687726578 470164856 39674618 295813734 559727554 857312644 417170785 176362258 4653953 688861150 648166630 511017111 802722065 91142503 253490078 692689145 82938304 282709565 264603444 595491574 910968059 689075393 368316577 243240229 945466905 807802501 713581423 923167730 164164614 23856090 386140693 381376590 760008741 612146686 32122647 58963460 468277601 880969599 115221256 608431159 953054618 995611582 174606 670540766 734354999 76809137 317604614 66075945 876252202 800687692 946486651 122744883 273272413 625485266 298201377 534530090 770310225 756194574 148702192 20374063 109434995 35322166 958212333 475711709 579660748 175036794 867471925 947681704 525823100 431732193 536973886 566562235 669098005 491686004 444317443 45906027 614116748 562111445 800702402 420713732 657291221 246280540 310679305 301033143 90863138 120624111 899659849 337723205 837619315 864001686 623139910 358112054 797198263 953481712 50780186 406512316 384119985 964688677 829621265 28548757 870737402 436270999 475336122 732444210 366817674 741493101 521991485 953038728 5279802 5400260 197609495 655657912 78739520 226912975 494431223 548419091 275460947 402835283 46689611 680690570 720562896 87659238 400495278 467621790 457509800 394153245 33718563 493376121 582003754 81160429 18244337 433406275 793776524 545237188 146468609 580107216 158502129 240561912 22755233 241443200 702867729 756500589 748254208 366210148 718740801 187125737 440280422 391318177 313506451 940435479 691241446 571043921 135416052 26822869 830818636 166547816 703200266 953785514 786747377 140382675 521023605 136380453 957293241 170855918 428744940 684268225 963408285 86548281 975207634 461162761 686033461 908230447 11040050 416437842 357670452 466325276 730346607 619009495 654670570 696590708 655165183 868426152 507459188 12381718 126590790 31217124 313039057 14330321 449119000 412830084 220148110 623757552 945043742 351453714 442975775 49193123 301462753 53581125 937412720 692025461 758660142 536105374 666691016 208048840 766876157 215794781 929812222 343524241 324944247 522480441 901227909 119928038 966765939 72455183 809717086 563788476 108934702 932422948 584874034 487041560 756410268 183381885 282759512 541177558 804173479 170637967 754518632 772629255 21567026 707792249 297086607 644322153 968304431 139012259 55257238 843421990 9795827 808228609 745731441 265129939 705095436 11260501 85209563 84798385 151513633 386995169 904830647 291505281 828271186 817308656 131798179 914584081 872652154 323413101 554841942 403141897 118860252 17996716 54429739 479406414 146644007 102113973 761396108 539040383 97567031 403677100 842239875 216322892 505258615 151119470 43815327 338758908 608077557 733652464 657229988 127869125 639283668 2034375 97944643 972742906 9777971 56619811 240550780 966534154 692672975 65182345 887293217 986605990 585960318 485965949 317127128 983357749 243078420 449403674 36729286 61847682 65030788 265546494 948618423 129187917 506367819 641180680 393015039 209578391 541845479 256281348 189309454 365695112 15594464 330556421 889930912 992052602 52590010 958226993 38035700 143558076 65197906 120913477 88577228 614773130 988241446 780561237 475220069 928206302 753038978 332516903 266447603 258883900 905485566 989156932 818452249 118564131 100284628 601439554 275214523 817034789 584574728 402694922 343989582 596221918 892745521 362348613 483855481 123873376 712591923 929272687 70219500 127314724 70195350 286163993 488019150 269418801 900282818 15627860 782363825 304558468 608210991 144505831 173473820 798282713 468584697 833321169 573528030 912927280 307649772 29953982 53970474 267994894 432535711 201352635 77460761 541089940 534763983 15827224 595274657 495151430 273732608 948725419 829385149 957751273 220193683 654480567 219029820 797934758 284324258 15855758 978546503 256572528 151035482 882350620 865578863 927832795 135496165 830736832 704106304 568283016 369070934 452189597 707738771 307826645 498277277 519687858 254211669 923726893 983285693 82542081 125110733 996015226 521854459 425073576 729146079 970873481 731324892 654714652 446382588 46348564 466983764 674192457 617392483 106382434 909207004 530654327 753649255 501198104 844555205 591726562 578970594 597063075 474753028 773399133 773148889 556820514 652011420 298459235 217013303 717665122 22935332 871561822 934518749 247551528 295504845 328217102 485069140 87049307 381259757 676897415 601128225 995129140 573103803 358676866 410239366 78881972 679563141 203135013 35763410 130572746 801717873 291044473 305713398 590080940 906850520 277174227 328228050 389428840 531265178 565447815 227153566 67565383 753807539 853683456 119174187 880108856 319897058 397527818 249280988 159434849 805736891 851179285 425542340 154302827 643061217 784041804 795713835 577730774 112831059 692814809 270560029 608593025 802481145 472558187 501267854 134996312 435820745 42779010 279514173 609375370 49510146 423028527 6039194 19351430 3206312 382538550 816340990 497228924 112855991 162772630 311976540 604447258 908400510 89200897 609930788 147300760 86508360 107295786 834977762 273026183 35038120 188376549 281877569 974618687 549646735 165246859 512730801 207208693 70535289 412855558 104067545 514275432 973679656 187511890 730025209 363969819 844046217 955147861 101635491 55714292 808293079 759614103 750889858 113108942 850018227 932999657 534108729 420771181 87736246 891075554 35489218 703348892 435550744 969696859 98979348 893480301 181318980 826169734 479799701 857369048 104933608 537043940 475419732 494265873 471847851 94145524 385709491 55684068 497367909 238443609 725040352 574159397 334540530 117965372 360042542 639685755 512699118 147269228 654990940 966862074 396353192 928404208 64810937 853045732 488121784 928208603 708626605 492685185 323864162 919380978 585707091 608177706 161001940 1000 440304945 970672091 351775856 498938338 789384899 93069200 689883553 165275304 309416367 327653193 251588545 112007976 978416244 678595028 964331678 508760312 18571085 683002408 68785648 29470306 869033209 829455754 178876763 982628944 65355253 6420668 563637089 623118211 5316571 758651312 992812002 872572386 435762512 4407815 104935501 588121783 595369463 635016229 75790502 777862775 99515013 694886480 42618827 535699742 348624951 349503276 930786102 68967 68393600 35172560 288775964 39186280 824200700 445469178 997297112 680522167 27401677 830450713 434702385 352657878 685135894 731508430 888684572 980595232 12331698 491760688 143654819 101911803 532915964 417280235 869438121 525174899 771517483 135881092 398223245 199394140 81004370 28368066 664222111 434257746 304820838 177662816 859013836 302404356 27900858 113977727 94682928 963502229 888224066 275669570 229268763 91654633 773068426 468985920 572292071 8406098 142277509 250461882 578530311 306589587 890916771 145386040 194547889 803706401 452748445 475621059 273077834 25218207 676855456 433601176 69850172 420970257 268983750 957321770 410917310 567960561 607687158 717993561 547720439 234275107 218663364 23282573 983849317 836809871 982889394 54923933 90772269 340073665 28481848 8502848 656907434 99670014 713306211 704003643 770053643 614610090 96887119 621214539 598957915 738479900 3349377 660983226 167886517 90141426 999364155 985742957 434085517 77371972 571782394 78910350 221523067 695685812 161393531 993152920 971058104 264862136 131184504 639466698 386123567 313704170 213427418 354555092 235162919 867401282 429994504 115275608 840376603 764919683 202148304 368102949 671036538 909156172 703287400 813643058 290974883 859636606 17283976 938290349 379399773 273425605 25306410 839951035 390116118 788811625 250850643 974351458 911308836 452338488 62864531 747881619 218433973 184015052 581673940 333998561 972506805 650404855 799786508 359136335 530604958 553411671 73899328 174603937 815711229 682801973 143793086 397936331 271701568 27247099 840181859 780945434 837093958 327995064 971071465 644051091 216039023 587195983 814533326 858202893 123667446 95655592 772820914 842871646 800278489 699088819 372638507 738316802 55099555 666806007 245692956 282243861 651097739 707606817 936666356 277101753 648348521 913927301 17236870 744766240 997007680 544677375 331960610 504266683 643295807 705747449 602579472 155265770 761147774 569205899 691771353 64736035 494304806 73658150 477682252 303092150 545665567 455539890 414054843 469372321 856085857 385154322 981783289 493489687 743204245 590866410 162154700 304427335 737865203 797487324 647545344 87735625 863340820 76484320 304643000 881130271 353905441 941065604 587593411 150879050 153720917 495895078 393345167 936221672 828116150 410789027 484078874 961002522 147401342 449899408 484487938 21299706 890613523 402696709 206443206 193774853 379881034 353079490 368818504 165590282 568745604 239647301 94754457 138277748 805531428 608299682 682259496 422799946 282096576 128751725 506263878 213009043 417934208 30444137 109669421 30454445 892804704 829992960 977780453 122818295 7899423 508349354 970672622 298035791 208497404 120852080 868180108 725923946 259143478 253803843 908264978 971408325 804460352 321385834 838039131 473600612 526445165 289174287 122104235 293209957 748733988 780774462 576880923 343651593 597365631 123973469 766954238 258767898 206903223 307268528 848899698 7681666 609357890 813694091 666854294 130630837 786078713 300404163 470411706 992301319 709998977 930954814 514702933 97576642 769316458 76151190 190574809 447142661 871561756 352330353 984630969 510193108 542886997 484935432 94740717 347664949 508609360 70255530 166880890 997977685 653703218 843630798 582944516 115644767 211918936 450461227 951520087 331800801 339307544 116425974 493951179 225748248 398372858 724381726 6350212 396580703 324374824 772303222 399363681 547519179 168422841 552267193 968996147 217032253 823670124 633228735 11584201 752386729 37045307 408485564 48680397 232937413 85356625 13646752 886338666 662691221 593151056 46678023 679709804 407283707 749790219 775704771 720919130 562800395 294095548 75038402 243710824 11515235 206964790 961175385 662514588 382645075 671558966 540602652 543959014 904154923 121792436 815132865 230850190 609148289 751255916 75803245 514641227 81779326 624722804 351542798 506858991 905785395 214991028 183764286 12000441 280637640 587821717 149124580 348018283 125179176 250670611 647432115 812109483 136893658 215425832 789839013 58421045 139551603 229456372 964902097 141587391 720102109 378290315 59046111 36615851 155663512 997608730 60620400 311489025 905608661 966376426 233517286 205423091 845404791 343537302 70171483 449485124 134555103 138605928 814594993 286518956 935772127 739429602 39192046 558538958 330297415 352650761 491732402 967808000 919305574 11570841 938092358 633132167 912574599 250921361 864794358 669632133 125127064 541543634 313287230 818875596 96168511 140454463 680950315 407943884 421799282 23779055 911715866 143383681 498293990 839184513 766467395 74871244 870659481 946450307 782034892 61908329 143477128 75610124 495444 875212360 7707700 117726902 874432229 941766863 252411618 591178827 174662509 502270519 744443797 867678405 164509571 418935956 712831367 885710611 286164775 99498851 126046975 495947450 538230617 330452808 928903512 317356754 787041901 609663747 622941953 496254769 369313947 524924083 956957397 783232565 581047120 530277761 923334426 954765274 485778018 991037168 621404119 704756312 862126364 488646436 985270800 259004620 635813471 450077356 245242093 6740926 291350942 983558159 888470536 913179783 664228641 214962746 728966137 20643530 703978879 793972484 83130410 825072072 522052991 851783057 139997692 489279245 926346528 174778120 778560758 597222273 99884697 473758925 990427014 406100659 837278978 838290997 920132334 126951787 676129204 292386394 173029055 45247520 828830928 999857665 568513380 145898743 486850772 395691777 976274942 896738661 776962008 799741295 958195195 689679787 630552748 29996101 62632999 836259581 705121775 956304010 398912670 645015642 953044134 623772640 147470308 515585560 767518028 121783795 927955393 421958979 513503093 696095939 536811664 957432067 721084432 287338098 719727316 830049492 142346140 970499973 109311021 160670886 123607200 890664476 57192850 864016242 283008266 217835233 403453733 819613303 242729450 49205332 413658005 5276190 571313630 590490293 947701703 732072550 132718826 89285173 708681050 790268721 887745289 413546092 19350947 620964009 967772095 570225296 517751529 12072535 545184161 721577986 549102980 446264551 745936122 516519684 297194041 831307067 292266678 212747267 285575965 945806363 95049502 771844428 122969825 519409808 335899113 94276002 811799231 290161434 313764658 24709366 878953050 956394984 145730052 594588768 824117277 341668172 147715893 681746248 93167683 445658623 634053659 364187498 643178422 709671543 39974778 665011833 595938300 957271325 146784312 247575094 317022741 856216724 510341465 929650 662363097 221677396 149767563 538545808 832369735 72452317 29582826 959551291 942190599 236059980 543969471 425446880 773987850 411310747 410037011 674622129 369317989 290203309 863083614 61521021 57865218 716896153 234514487 821440628 354588824 775151935 664821550 1019398 442611267 818261490 367904205 508446928 65254795 395890464 798524358 704306073 390016162 225558066 373498545 358731833 808619379 383781594 372942320 99851523 452327891 832018970 858222182 866590060 522938629 681003668 26925496 157284276 98301981 529302476 333784421 78308846 845651129 676176503 626075217 473697701 767626721 956976313 411843351 603855140 888308276 14199777 774990838 84457410 758355799 160843431 770855318 359474529 472911969 598072766 59462641 693636934 241116792 25013574 502727067 805255057 831806067 136272236 68715779 873483141 561356034 489571446 407243796 56235136 852767514 449454994 460764445 381676481 991784969 805561222 707183881 686407595 75444628 530013853 969654831 551047678 273472176 690027619 729348848 132892285 794514127 70568655 1859015 329697936 412133665 561250428 71683014 689849576 142992472 468277343 6233065 575661667 24609564 442643573 873329549 218358127 36073204 883866281 47822280 34382684 281795788 383608015 46364569 593952441 467164513 824213465 259835099 564756684 206590239 686507445 48359203 808505274 888777003 450670693 434653476 258565991 144294295 334865946 81297074 701111125 486355329 140062245 170152398 729084447 368812898 471511572 652886360 79904121 406731948 206104127 294335844 121447303 457886150 405947073 321241435 563035406 105195520 344076251 254451083 471319529 519758697 148872541 272015858 285000731 572675462 655262523 808873378 832641366 745673165 837282380 840056232 482985450 305144584 905382950 116462667 844956672 678462060 984687159 111309199 667258316 134345443 682757284 682862513 65268422 100879924 404555436 92414823 345101528 575768273 82675476 888570219 562672732 150028478 184341743 196734491 272072044 4865720 484739536 647657784 276075837 887860920 490346975 633121283 939143651 260020616 879814334 772689624 864903847 811492259 444224808 583461588 475188007 380216631 707202170 952595547 181850041 877429538 554394483 588609044 664795846 724228071 685594968 608955007 122597987 206872932 785030731 546991003 857258780 521124891 523854266 862924656 67786130 507838969 25177442 286944883 791453245 95269103 131708165 334367917 687365177 726669749 161172741 372647289 541330859 54796103 700503754 323465599 269727854 915041690 402667942 582876665 681240732 556700850 36326189 446331671 466837102 738351472 818880744 103233318 39537027 231342356 234084789 927801020 880040696 137208388 765480093 992525800 66848766 573850762 105179438 15594087 54851485 643925903 388344490 394631634 549464748 105027453 318900241 121162428