mirror of
https://git.sb/baoshuo/OI-codes.git
synced 2024-11-27 23:36:32 +00:00
3 lines
1.6 MiB (Stored with Git LFS)
3 lines
1.6 MiB (Stored with Git LFS)
167495
|
|
799473761 669490931 822887994 565818989 600000538 153983861 847474810 648643547 185178531 978259750 166469471 460574542 534941996 442087059 592441268 393042747 209788618 282307298 793384108 555710321 20497547 586262529 144851386 360475767 245137004 276110194 681201989 188438892 22989012 855668527 586698305 909335209 148980165 607822198 339433920 235018190 150511511 771006880 529879557 691698711 493005607 464879003 478575169 328136898 998891013 940141201 303980398 197810820 978965339 336698815 348785138 361658507 920581559 928490207 902083372 918019534 80262930 360696745 324529669 590853931 773792684 68394700 501061863 518894882 81776996 172415274 385031551 934640167 675369737 156676497 354990033 385211705 76447981 715603923 19320480 132585633 885448015 754219446 59683439 858043093 390362201 84669804 676033111 515864928 910516873 599498604 671992024 124514039 29976452 889104010 24421670 852225355 801943675 71169938 610603079 420594170 648818817 797394527 765326441 944775062 627673647 637766113 937259027 607896613 9465691 345965614 401529824 328523053 433634188 220813962 540465566 371437398 202997843 77621866 613887012 538690300 809442659 2412244 145186919 693407565 133158967 855916899 271389986 90739128 867085663 228524104 346602563 686642454 462714688 340650192 49384965 453960182 822946833 181769582 650001623 494047956 176140905 64823193 878288034 144965986 917366168 112277661 62555289 355049663 321772168 794916463 578106659 541474958 290493073 666517434 485072734 383698038 447380623 646921113 545158126 39040407 449089962 717864092 601544427 456459210 972013773 242476008 493864234 958233742 696559852 327966989 64895659 6885290 247294102 253062738 986020803 82655294 595990997 786177012 973130926 654296329 148055487 79402698 164835185 669572645 855003827 241249946 369555743 576019990 570542053 943316926 231630312 207485915 459595093 902303942 528792934 201548033 603603993 91613545 858469344 949141521 495168926 328802533 909905223 716334998 626740637 22829565 477367634 252703884 480485194 802002012 483171094 263631926 253909440 134476255 485581659 134002600 910438892 421683119 196180731 182974794 773544502 465234313 64162372 386641926 716038935 481729654 582624178 470227593 630930264 932680995 173462007 227805339 950167355 22820845 662135358 411091193 524870446 557093560 196824611 671474406 111030588 106600300 585565505 993754476 560717682 913883885 82313788 901886847 666807919 851349078 978444038 812208080 293065444 651350198 914773861 734475176 117770989 456987639 414807885 659734511 413204193 97217985 670661665 967881826 380136242 14381492 439092150 913068731 611845029 650883610 761733669 751964231 325712263 192375465 100340602 127188758 264321407 799182633 423501782 264557733 410209920 699342754 541877459 749923315 622371487 114686213 629060288 589969577 217409693 637183230 811131878 439151893 31463472 225736730 523857367 599780875 902275949 330745601 586470703 97524381 520253678 320169621 965185316 973917714 97301610 215677598 927752454 78094730 204044803 255652203 582909624 977201023 748767164 967716571 390417953 356043114 891213169 434913976 381320494 33056890 879045385 504255786 977876744 113012635 751528976 805360360 631527689 666674847 348885778 956320730 5708340 725657902 487791788 564242886 656477277 805364481 651263870 462897637 416078039 976591007 322018283 681705812 15362584 457821750 979321938 933272517 938176284 484714121 197485570 802991747 911071463 782779677 598213043 382330420 679567992 309328242 177562005 135219620 693070418 602767332 334700278 653644116 585664213 180399745 729805379 562619228 769467108 655054589 641508914 49549847 407970081 689609189 20388138 394995534 644878482 367548563 590212429 703108320 782010665 794893467 912737458 339155947 740048361 182202573 212734360 530389618 264413587 848054913 169475649 264859913 633872812 788259558 716823153 91273009 784826277 352839831 585102160 103409976 629662947 328527888 567060210 136085861 109951514 272540020 360991943 554755829 562643931 370634180 976909690 657332894 312272152 606203166 676868442 321110627 494284452 794771694 778508534 124917630 145820623 893660141 229679937 984443047 578281279 320355952 362555399 420328572 888333518 203863055 528611005 341024373 815443577 667027916 445296044 765444146 220151592 17921241 713945480 26945103 33441616 183616812 947533768 212370777 652736575 15471377 450151808 459576639 606345539 213244965 421053809 931221153 723216643 157288222 634313269 48756207 346909071 134132905 141650588 887804044 799323024 139280346 322138852 698907493 891755053 245716530 774507817 907938420 198876651 416333300 4363191 619093238 245271105 939531825 196549127 507601682 682750100 930972258 102285463 176296620 786952086 826278565 460080891 305238790 981676985 871056726 990681498 587492658 454086442 94842085 281006003 936490147 307192513 748812025 194982337 310938963 450699635 820604015 520320073 178444315 439207023 862134875 251868486 941475260 656090418 538933664 631921616 993308508 334463092 745977296 868364463 225738562 905326130 10889868 5127350 558575959 536778988 567947463 772245215 323552973 74221970 396118634 281400966 995304860 364709124 486942991 43154475 454058343 516572249 291032374 326792708 278660174 972246587 77710171 511998946 474027285 928195483 789241924 853764743 451617644 815626984 954054684 110320525 310887684 268718981 162465158 927800278 745137224 521832643 392151143 455181723 909698177 11845561 188756572 50665241 525001621 504952164 588952015 419749589 408761271 61128040 262763888 308970512 752035680 544541819 66368977 863501514 95230828 749950524 182063910 913468936 710231182 454177527 598619258 983185346 352359646 490964319 246455089 86568282 617357103 353305849 453625520 16867223 184899781 520202226 830703745 69701067 2807350 578758138 771206636 510506190 987503891 985774256 21102669 114963839 927404859 847141148 259706526 133348245 735380128 368049435 416528916 67123131 980465255 924586297 274734186 58097180 163954049 822245199 514743226 174368559 536666111 346872628 12164 300789572 643716493 341345086 954407581 751287300 75975671 677807944 232053977 742147006 544043329 353122329 694449298 529398756 596039259 953853776 423877270 6678792 714854480 888283248 728936649 957629348 400324488 534270720 901757234 69403639 850678462 975764093 271128360 20925474 268527892 91629965 275509274 628320778 926355156 336480174 27892107 356714670 697543707 875581424 484635143 611124270 464853025 943819435 437956855 127427086 256660765 423554200 217899781 604658485 302859388 454108475 689610978 316088123 671679530 25472525 320197581 771840045 170881379 955290678 755751708 78786697 310811223 315163117 796188235 376970732 194546862 508646804 813736850 602342208 37213967 68567290 206919336 603959796 335438364 614978233 338315226 905300556 933353868 493747616 327495607 641860254 664434418 234822963 931509420 675559614 241700253 184148340 337371834 589347789 124786572 78090814 972278575 591737739 192202321 310389903 720977035 326212461 264370009 507754544 639243058 549653131 785385919 887332152 943016678 554770819 107033175 683664098 23756368 158317219 296466451 39761024 256073891 48653864 63070326 307407970 747320203 748163024 568967518 740127234 673140332 749294820 642243687 605510578 347520450 315466857 892445833 138642106 158114795 110967974 609573719 914890939 130343204 313561602 863761970 403342880 508524660 390586238 515955823 163414293 5497576 147500984 620222310 629964082 790460959 970176689 461209941 128060105 788856736 783302617 765015099 77690623 319550669 85222764 29454238 132039974 798764700 575154441 319139939 116341918 715512382 86797333 93666232 204590404 934848015 894590027 886733719 573767145 589715760 49849349 164488627 728573385 506727073 54609758 977025461 991319619 779197596 20758319 407985217 279129766 54380272 785284945 473956887 196889281 875257273 670655539 857444460 951684564 336982974 179081827 373082612 303268841 795479640 987736116 787294584 738378920 612733258 635080801 993171374 471414033 318095654 205919986 954530446 784274538 503136966 393238151 79743142 819432 794139315 543584976 923920769 866574437 944468505 337648266 764360592 194479076 534069210 594086900 703522436 367826960 751410023 584137005 764170621 175280344 901817574 344521924 613503178 220002269 642197411 665104024 887657952 562392732 204449288 693199906 40076351 285223770 140831539 482134111 472605284 700737297 804557669 741966482 954132288 884387762 700586740 205398090 977199402 226789425 673247957 230038498 778602873 427008375 191609396 915582214 933808093 789919262 813785954 405314465 390354500 404680184 668676532 901433571 974050840 241170924 416996467 547256734 560136577 158263004 571473531 724438839 687181856 875317134 631107305 302976671 806742058 569946547 642115637 420244881 39868786 854881026 363555552 972481257 474656621 752948149 663269828 729317205 945293504 767311988 893868238 221551148 768472422 713615607 296114643 901450488 383082020 559412027 243277148 650777021 614301571 13367046 279694984 882779772 373317219 893332887 561949453 847242202 297647352 2035125 2153983 970355663 879320179 716220191 406111519 469802712 391192105 778511770 540415747 56899023 792738734 618486973 241093257 472680508 297477054 374680883 954518905 721894581 893083227 12033892 871505147 230111253 126896147 68038584 552339643 427244067 858838519 693263260 191930010 964133124 833960876 80166231 303089484 820870241 467758818 418642286 20694030 319546642 457830730 155537978 362197469 685880064 888244901 98311860 663262328 827221558 341159537 712178420 498466111 314837101 379024642 835324057 691709318 391922010 693310753 852274716 410142041 654986380 741255547 288619854 992636183 133087012 28403569 32351172 256504819 550137892 443853927 768084062 9626148 745506055 741167511 571242197 38419083 393567549 130659429 271827616 250820683 930609814 587130113 708807019 237554002 25358402 840605015 367141372 795048178 907184111 910462578 775383004 936423227 284815493 272834121 411939528 407673203 756270438 865281100 607997849 291189952 632605126 62746340 394434668 531822705 55717215 388333250 590678175 828782634 985796193 747987029 583468450 867176977 210484452 565570704 120278399 346467543 192626968 958701478 324145646 9479229 342269029 769955240 207459379 168588457 295762814 460340832 702059038 155641443 162024467 523461363 851640858 952215834 53109510 842627713 987913438 845286263 129462123 312794629 245287312 325104318 412718294 84519795 985985523 90473250 301788576 179773243 478549848 650304581 965383383 221004995 43034532 169835476 57041101 637405406 890020398 719279336 233518488 437983139 149715148 844577535 148469001 352189459 700807883 170596407 226653570 65620577 79621101 866715927 189615768 155561365 357819935 680609084 4925383 690293958 639705103 509985872 488606580 672450872 917036391 526373190 79942261 647799219 425114391 619903812 952499589 513793648 994425875 943243593 785666501 236000974 44028390 569489206 711316734 291604146 350234311 781261282 156502371 456120463 892419520 429310974 598154299 102519955 857765955 70742208 710931558 497173729 959326642 212695497 523766581 795495225 914803960 194554653 357718893 669192122 157897485 545244077 671621864 766339662 848498816 890546309 144369869 919502643 295024013 860121529 490920090 911075056 929570025 352667300 145039672 491667566 943203673 209572640 123784940 648533979 862905481 900389554 452101501 963360713 431009010 97363778 785845006 412004857 89625065 429489244 801077775 698128197 812960847 356640598 939640195 132163066 758416969 101482725 215265190 465406941 801054743 244766008 488338250 733440099 955945036 328041320 656371474 781761590 339349808 523837149 361882050 743103178 415955918 545635569 471088623 115076787 685689344 239051271 331358289 387972323 370293866 765768355 772307931 471942864 902827175 691293916 707595167 459847872 891851130 113418533 828251728 899205936 449659775 34917740 815862068 514430308 371460620 892792013 586926095 328911627 86475860 942584086 784548247 175113132 145913554 102540248 57695661 86127345 735273213 462162120 269312416 992741580 509660519 89158551 597587029 461415627 979632764 183745598 52599535 976037733 969790164 600965695 48332701 156110959 861716782 53798923 940944819 235488520 876013012 328114670 635476402 951045817 616390624 824238270 698436354 83332778 573825410 294493227 91193295 803943493 55424348 953273713 58277939 129590692 828322405 412361678 737283146 261350715 470682649 830616523 264826073 819410472 195471549 993236722 122850923 97638571 426347716 683809496 997125936 402899022 417221842 136567861 664244987 991050002 678589569 825381079 948471804 215436842 832815655 721787503 959148235 966252615 136580471 825166325 590540525 748305093 9016019 690861515 147803173 647953016 770288153 606649606 283944132 523173845 458924280 328900082 712698998 357873621 79091652 139519968 200763766 498455455 638623452 545309946 956384300 559117218 494903124 440451274 114005713 631647644 997535503 888400694 784068901 74194021 488171789 816300105 338400278 836688517 73945130 171174301 840390057 403405994 3971078 198703676 318958693 511245168 290350484 958225666 49140594 39238756 81804381 777940506 163291811 220835361 791677582 990821347 833442068 130446563 586417883 743767267 599741460 686171051 189934023 959836027 526157577 699752061 785634051 130974081 164882008 875831694 259617852 990473154 169142346 127536174 774664776 831422061 142420117 571260547 689903843 667118983 100214088 325522079 960899574 261974535 689996189 338462286 83093967 235412646 447425103 431949926 998259438 897495494 401722252 203826453 724720068 140309728 898598377 726848319 870685748 652591648 11560067 48971016 199908393 95367976 648784686 876794450 889090422 768306695 653494191 146960024 190003944 447418213 814506437 987423265 817039197 54200200 194622187 280226975 564784334 759040726 630767844 83924071 446398942 74890771 388612934 587536942 229002678 795708219 443524946 236015201 973193652 501791938 570092586 233414705 519116031 984925116 598242358 438266033 899529272 551991065 770737298 561469546 176208367 245908043 945535448 99422032 306358659 333778633 6923085 75896832 693765041 534996208 111596441 464627020 983926641 385086268 201269949 726470453 892494836 609438584 26723070 791584540 366384506 485470645 955710629 572236233 44859627 711134973 821382117 648498917 608297976 899738907 871815281 671170741 758977871 633710872 878482254 200680535 576126745 976696732 649063390 477229367 788958835 573608838 705556216 874556691 5394683 512162086 484360751 495378544 438329116 820875835 455319573 35302243 824342713 360102698 345632370 487066412 739701968 604138624 614881062 974897429 633382183 291154007 863649010 462264676 205188536 168909549 125862545 730517155 55306454 566145582 898582095 452885605 537155811 88210581 62513119 122582396 92764630 863787046 787728312 764412466 919153865 472779352 876750912 414841205 563321403 171436291 285824167 137258328 801526792 80690927 554800816 113844656 994346749 268735949 54339973 943784835 976202354 735766524 819235110 330239832 637578699 731467183 111174046 505677472 871680132 116309086 311660309 940413306 638001481 42389729 502795015 398852907 402782729 687424610 798416883 426126055 647622437 855098622 964449921 916291480 687144598 723521799 364109519 327272871 653841162 154690112 348291661 896653137 448204217 844369048 454708432 320707028 436399468 350781989 546162568 592505979 478980593 735759355 178108650 419965585 470001537 335030968 408204714 91029376 653596077 242649323 497638961 880792908 411768153 178202286 55532829 887564797 313448405 824506987 549538062 451843744 376645553 169906741 98088395 766527656 911547551 643993010 67354379 531551809 711252751 828212409 836493915 421107857 627470523 159797248 759826847 445817834 803661886 338630567 932995158 780838089 473631503 504998162 409753917 198360254 749843492 778767706 251330569 372847914 522090061 946183721 551669679 817653826 391204802 785548678 874099206 607673653 824229164 481434416 130822355 743443814 806221435 477549309 51977929 474418364 622739577 586027040 296528088 3024179 27573557 502439076 82359111 396953117 185159174 463423094 637415280 382373486 202920922 535425034 749752177 964448018 815370410 141170451 403501996 940189767 438209038 875730367 877507726 861842977 201034162 202804376 735790046 677157790 112360746 467179623 858233193 701410819 255956163 276019305 842701214 460888161 258671117 619276690 833238642 232714849 627859597 553507875 272364824 512249727 154370907 21708803 512321756 425450225 833978532 789953687 654831533 179600694 976795365 925954727 617757731 622711230 672893803 745771251 354380281 181816712 634952974 425519665 362222830 460117561 704740694 157367978 206677114 500456439 916042742 42551005 67409997 688042102 742127226 693018379 435295379 213661518 926097836 630115938 554201197 375506089 631222362 459029190 894211526 352303148 401175704 636324196 399175591 180852347 680363981 445278190 57400012 233276982 90001163 411108525 286900902 168928725 148918893 690880245 316095226 417490680 843586285 12631836 910430073 542367302 790846507 40604321 162423395 936262356 760558725 738197995 272969498 543881252 338138561 26614185 74567990 400417885 5121011 36776140 855503374 602518354 637860490 633580037 707708412 282492673 959522810 959223921 86747989 774491697 491183858 482034544 289388872 909481363 929105171 511944853 623526142 494264932 838154354 490037748 95409032 889709242 605304833 292687815 801404587 585307975 444517632 919714799 923519607 124298051 75231172 83746473 542632543 410513939 866588962 78790349 104261140 818344320 714548555 898362335 857215236 146683157 73459391 761131683 141023990 360723945 242411341 726229077 152775886 343943616 399881434 334063043 59067770 597494048 559290865 488375651 89517841 133112018 277355585 722829392 215831048 836764684 16479709 612003441 802478529 187992427 278244324 305223362 164896201 64596435 512960275 647835081 348855244 842448223 827096567 98045717 391246177 600299637 199028023 533408424 383522791 505755240 345362211 606649062 102246925 262757137 118216460 816752625 578418071 862988297 281591277 54155232 451355396 21531802 50293691 783726935 571674355 414177107 340996758 696171451 269763170 398365201 836751417 481149197 708786494 491075615 251439061 133032748 502059753 918469290 519587716 652921771 741217926 211507952 943425466 914409900 823746209 647870179 992938841 49071775 458454149 552112301 892426553 306167974 794197368 801219199 520745564 700621166 229943998 594286051 853048661 165532845 719928587 573636459 311138668 678078503 228093062 490133461 629904694 68842490 610146942 652671840 715701464 415344091 747582440 902204645 404600658 864899484 489409684 768636504 803995512 924403101 432160467 384521968 441694041 374033010 685182385 708736589 210085324 535071100 392166043 692425515 565485901 25694081 688222869 780629078 705235400 263466592 837508009 832132658 353520756 803247826 934832592 209632256 933974658 236249345 794999061 798413399 295401715 60296731 75331003 899229933 523646684 124978538 889834937 545012583 671136855 616718929 119515048 279013062 746642345 904500500 726394217 335961489 982358738 410870202 912515129 377771161 549455594 502739729 205812202 628773933 679838655 782865343 221010933 319786398 680964567 929703154 853003003 231793132 579758742 272686014 205211972 432031925 552141946 283663952 384567682 374043970 930848596 261961780 640362476 702804791 869808177 48579219 471041139 817290938 655451946 231671222 262241971 567496016 920314158 293885791 888967137 41322599 837495922 844744208 107148529 905458492 206724286 897470643 187825105 274068690 968093260 161658931 681963940 539829967 159254627 234365622 22355317 633833637 793504954 73588212 768311428 457082323 338621611 787577579 667173243 323583198 835062485 494265811 661515180 32499581 859799029 662593303 262006141 901689762 926426272 843458653 266380761 128756816 893865625 692546359 752633750 890118369 743284064 665599496 65455045 841866625 144099587 700837898 754991155 37665988 525551846 980679692 927082714 314611159 188853462 6010996 750732406 169601458 302308158 454625561 43326167 368927046 181126132 589858251 402596974 917232166 742684431 214134611 31869858 995320373 99521690 207633879 198279234 728732254 954341986 684553012 69162871 59059322 825737551 803662306 347786100 302592144 362286358 349083028 85280161 427131635 974001249 847116161 555357766 365636658 945811200 332041180 835729076 89511080 577978932 212712123 517383294 269088135 37127326 945013177 337935445 296925827 88789989 209308578 17229062 958477020 830788564 629351260 325300231 481978156 446322341 946174570 793596775 280270645 546072473 430497980 417315133 284081426 460471207 864744934 535972773 163795110 488711721 17249445 649599168 444013824 179003200 698303148 345874096 50646349 741116553 199243448 650153172 968884647 870234703 814329436 990463020 351565781 842985557 966129851 853701402 658897255 351648805 865890964 366966667 309491465 541958686 857787651 569434827 211929512 786897034 327556569 768741902 530260228 440728 600253689 705831559 766926644 267054868 188557164 251688265 304040435 840699128 799016666 738963922 825438643 791393553 509084179 570976802 451021747 17141537 277904267 636247372 789093290 972297706 858075474 752539485 5157987 569232249 38896252 125534535 492260615 470158611 969334514 590409173 729195612 921934063 556466807 100275541 998069274 225125591 243211566 698604195 589078081 543670392 677926862 691775525 358951155 163329024 890438929 956217618 833699332 835534389 672471491 153536407 383050992 265910933 599949089 982375191 494981611 453821559 307873499 332564678 658460789 740190001 761475150 852732049 490024231 136418643 762592087 207078662 241594199 516923009 709792470 162498452 203565981 963037709 285637038 118890677 887613776 518789500 196645771 630413567 458786554 930887450 768352145 399025442 418906771 380448974 169516075 359042310 314397952 129184083 192002584 131911074 802712861 403882545 886828650 831740340 758545220 451387114 942927560 867141721 25870981 536375134 131980206 910107078 393527274 685301214 814216854 346400754 154476360 646679449 296635066 452356260 251019157 105736094 469937924 13147157 947331599 986782150 193149335 933290716 846497897 578231913 191235696 345847858 881559553 59823185 621570201 625674756 59008905 224812296 672636134 845989791 721694176 731712911 331917154 993538216 714626666 343303030 78947701 74058751 678588361 920467984 810451692 916919170 800668019 178417689 192293546 624578313 85526104 161910247 734973221 468426176 734956253 341750873 394526887 121618108 132608986 576746860 549319595 754599703 101373194 402509712 41149932 691954688 596487293 223020023 920517476 7097449 410424552 487960203 927838411 113892062 371797947 352315976 979002028 806989296 240096009 669524751 45784831 291770839 565021855 278535689 587885100 673375837 420472495 465402553 528986687 236803818 797973569 214757656 740891153 412481438 301060924 677346796 741270120 177737006 764599741 899456965 120577433 297434057 817929982 459633280 969021262 901088894 834317702 925281946 274249394 269858844 812087798 377859624 533433873 106106183 174038139 904173774 434716969 904599749 418627714 368380120 180807120 956909404 649021492 686768061 556422814 800757946 945708043 828795587 599103109 942359820 201737238 481646337 252770344 552239629 964336237 131105071 109501616 480256416 849270850 260830050 202183660 324409373 738196855 642760717 732347095 908233849 97846729 124020536 1718562 836186022 889566834 227533777 747805960 224387642 410834894 297746900 565417328 794489257 99478478 700528031 280717953 2234042 587763761 723752911 961812583 99292051 752169241 880292002 278364853 156822139 602538524 851150179 213469736 170207921 880739132 71656452 976286087 591691580 410221830 493986211 105612838 662629096 817849617 753592845 623765383 252208699 58020735 905625075 399767569 696374982 843454236 67904319 210066333 538330605 119835951 414594138 160474651 620604294 104069068 468566658 652450216 691513780 749302776 978423126 455464950 854771954 687638182 769220185 97508923 185691220 49613440 3798639 442007708 304084702 659487255 142925353 302930596 605410761 769570506 120348292 974471140 882170093 514403878 628591987 10001734 875279377 911168099 814774262 343786958 678295949 266939765 954523338 208002810 666457115 885199281 287345050 419152716 868966262 770129261 290575446 670345324 306391289 73041150 286026721 905299484 695613830 845253859 755666856 523809306 731309344 951878250 664721187 302197034 477119783 390542664 816018622 416682796 821448169 739130996 966553555 628630923 174450805 118498196 725327799 18452581 197172281 835577220 258629232 692657831 1203324 854784932 797091829 334334196 466830158 654365332 115564437 834683738 540168772 147968897 966554612 457026192 873052684 648811064 217112100 287511875 652139170 722797123 796730335 649193318 630086422 454392895 561204397 71283290 176779091 717989505 137321434 135323897 781196590 737318861 26395384 453112070 79500450 761532711 518608937 885646891 90277196 438343957 759568327 375861393 569792875 611473300 84947386 249389733 361622137 981304187 249442562 130016632 321717805 49131815 995268934 486647393 500500786 119285759 635820200 376984397 812369417 708328892 499544357 13728921 796535460 419146308 95669591 510493946 688760541 440068560 45100110 299944434 356682609 975428528 473026667 964586640 275334745 237599721 895456603 515510607 485397793 191592129 36560619 963993070 989011147 834508798 948886800 855696083 323467166 210161069 983522033 211817274 796688499 146238301 839009223 816131939 552367336 363372784 35317443 291077904 20217285 747134057 439182592 400663666 211720249 672666086 236329203 338825303 136428504 916659418 567224835 981326791 201014253 205229273 772377807 273067376 533121151 487686101 878968856 779465690 373559370 483200883 712113335 191685584 371374096 335016576 576979929 10922447 855441482 572950438 365263595 202328493 754234630 960694119 894454552 199966127 936030115 69453927 687101521 716763031 56998878 927013011 230495835 798908849 388752694 892338234 701904657 285405642 661403420 318968824 681081338 965824581 671239556 773169856 11117750 869650067 238647434 88014355 794334869 716362221 161786868 144510720 99500057 409352794 931065325 486805629 161519835 736954149 538154221 313691580 420707356 562545768 766293528 829989080 701903279 598022473 137599199 500710669 314043606 195504427 984839519 172829216 477214721 589307915 313731452 465510932 731161862 940581546 758848877 96044156 227750716 562990107 771857735 569479360 55275035 206028155 140707067 464560735 695596047 340269721 628421624 146597784 134113502 6807891 141517422 969050797 913322071 971458711 201483175 221702851 862414988 272789220 892318004 710537443 434046053 551814186 155979145 156146440 727321478 627280666 371928694 121889974 953179241 15868557 631149363 959039037 694643752 956394322 602296971 482018190 737833134 69517107 176828996 273482603 814842120 76388209 17385490 590311421 677863091 441651191 558373613 770988616 1876956 950607845 553061862 468898294 273698048 811087228 136996455 715954724 800868200 718851260 740307259 458762436 595391754 679122284 530012881 826258916 578008339 676731966 248086424 37593782 666621795 491087191 154207061 333539050 483934471 758901280 375234519 640751039 184056458 297411686 799199548 548946760 647526857 769373486 640783084 591580437 235800065 492416051 347120551 557360903 459564148 498666812 617460006 280380394 665612777 163472700 134626475 667136767 102108372 533544903 872431940 914254008 188262626 206214590 717532766 301181733 796397572 589634558 372398514 982800672 80216227 276556306 332699478 358320938 506532621 643472881 539471554 39130863 327160208 447125754 554595253 700230573 744465748 775910384 290425627 21792951 128297284 15958575 613600625 308403744 89333327 836218007 745950862 68413912 128456585 900623770 491863086 713477400 669559708 942973506 345130173 666399629 835682709 491239467 650679825 919658546 267195804 627226255 582147367 429017393 242102753 382049713 462738996 962266673 718177759 171934150 967400398 381418043 353275028 602377639 400010675 273104677 208688600 180498455 901488962 461761251 654121751 238204646 459983142 527908179 497976170 279940169 479017544 284606002 757993276 412650095 669083463 228097236 705421212 455647674 709612054 656376163 672710602 39595652 133017985 950243280 134850673 600918014 635598731 827109319 90961082 23130310 859277683 32550183 239076117 853108631 534368193 46515050 562372368 793847241 904095019 90435508 76541998 15325841 88710790 420480681 162786227 340877058 449040564 981285404 87889503 417753091 377227656 538502186 88417113 79056984 796963076 804520876 167762935 513640551 521204804 883764855 219419432 171796202 858262371 967356769 451916816 15937709 225474789 86517491 18930874 252903733 68368114 244910468 260490258 527549452 64752297 912885715 729437371 259908717 862521307 491620037 172609547 657294089 574832867 329591054 458138469 648467434 499659959 194678240 879746214 666240431 108735278 861638792 663342492 594664823 692413587 812920370 537090482 986719657 291316103 490975705 725216367 217602382 58272947 589687927 846828094 737785198 881139771 22185312 802790872 220492747 714008690 652703870 530937634 917599739 442254152 822728200 300732120 346747641 70417163 890507379 952321492 330268550 936686984 152121661 396211489 193915341 884530451 775314748 970263893 695733928 922813331 516179444 361533288 882851657 431569833 163916064 709217317 145241923 710330282 440885670 219736638 856791014 867511433 970071670 965201770 470237466 147755736 453212877 695971531 483179620 411672287 386799988 314707467 723057040 364743031 779755785 682873870 454906166 836349334 296027929 427390945 143837635 995348367 16717411 318909304 828763829 431443279 203082309 253067652 812394053 82167486 666756292 869240152 581318020 743548923 208422255 505314152 139119208 103662230 349540841 79477752 88428003 638563304 9591038 193575105 345750096 611260710 681631573 228739965 632677689 268554103 681821451 675512488 384292850 547819534 375246576 359553067 297356204 527775133 416551673 923239309 273550598 601763447 940138911 530158148 987609667 4619991 286274449 156166401 647226942 998122709 571681989 187081743 750093195 712961512 622048252 779150750 400253860 375038663 962804852 379937229 113783076 122988379 601344792 320252300 662449979 402430150 254613595 232336152 858566312 674675975 899810926 515349188 138549920 555832824 455230625 955696323 245350020 417193939 942159385 150372336 249038181 441350187 473241175 314350017 457683708 803196313 756649636 459364238 308357035 500799728 369462496 176926973 339658054 700600768 541546568 170704360 212208602 852775204 261461961 161456677 930952441 273104465 350650213 243749008 742238157 856990264 878585534 598925929 3854236 163199584 140523525 403184871 108978913 444203796 533188213 538771249 579172944 813773144 443777944 612931044 815913298 789686971 174428526 509313930 355998053 244185058 491276810 253288556 651770280 561611351 127561776 350239456 119909688 525656408 762570324 162416071 328514828 520114817 922240157 548328277 466106943 786448116 734858149 60200134 766745535 37419675 536695666 957148237 639069870 170121060 87030184 67335985 836533679 348275125 199569625 941350852 829905 455309254 483644454 726418924 767427157 106264177 477266425 556609818 904624526 921569020 654089272 66495020 717080268 434821975 326093520 984341840 724817477 72115441 392382442 37309998 986313383 188859404 518806433 264610440 928373676 621099574 902655177 126407741 675442798 292164107 551901191 235897704 970870991 659294972 494843746 159821100 383023900 512835773 234385402 617991933 674664660 771936071 925009666 655201874 549506854 580235683 872350099 733437750 687397527 915218203 63197095 912168404 686003962 238694870 371066983 723591989 34965280 826610600 289500303 202255006 626330735 407116811 956760557 255038133 243701990 955576576 282896512 42692502 203599697 229553229 385462994 673149925 244028516 340324162 744680297 127490620 157230411 186504833 456988838 120286118 475257981 577633026 579645892 413737379 497066471 103924316 290468601 522323960 674127768 482615205 223507336 443158028 331360095 599215582 328882978 86300599 337206329 988739201 203120398 812681129 900140445 50592404 982800120 455144412 262866443 353531722 806171941 965022784 337140076 837691587 634538919 143311767 140808924 623446282 246845992 86390648 633852470 468139766 834861549 605120300 295557210 107335863 254531273 893389704 738641527 936198151 110911302 413264359 968735244 866603425 164388945 101645694 452313011 94502824 104617192 686246399 231769954 453768704 322387767 830124846 551442637 411586124 607720537 128053350 71993353 440410050 975714771 57526968 116514342 782789405 628163614 439237110 368713234 51210156 278411595 264833308 271503837 590947665 120237998 857249811 943422605 626113788 554926422 176087861 887188237 319272068 341196744 35293804 811102874 360710459 280165506 565616110 6232445 288500630 909421975 333858440 279432955 664401270 863738427 539228412 559610477 288534531 18850988 740960913 567771036 555567561 839115487 593395644 884408549 690318475 734789959 913943142 58090029 191474164 942592803 307889518 304953092 526681513 872582640 238775746 318845135 105570076 497379567 970250627 798219034 553880278 495206877 597904502 689143360 223333131 466749317 292001982 984865121 469912569 920970375 63041552 688725669 524145514 927830757 453143902 469640551 11103247 790250053 138612349 537614504 466374424 50743373 465887637 606934786 796877605 110066698 280534873 101966997 552903954 55610306 395355861 204414668 796493169 691697414 394709269 257323184 774126053 837897332 722713410 842726930 396782756 841211606 429729829 243063066 160184027 561868678 792913798 207100441 211817327 336618058 14157222 491155706 541225409 730357822 827827340 734813809 141538532 836702723 718513021 479641689 726577637 10153361 161288535 830459929 543328185 329900910 376240492 762672824 984808085 501559122 991640320 630141865 621131118 933644029 348449112 681847955 940729256 453828471 611303721 772800604 628786537 583424438 28506806 573006318 672977485 779589677 144617553 748923329 707730535 680250365 780320083 972717897 364968278 336640666 122127433 598324186 215316755 184631028 572457282 434503333 545391454 807816792 345807520 543910403 54375126 986985833 951445499 889812729 526900338 13351799 445354938 379025176 462999404 988436924 223831078 716750458 288443902 70618375 770978470 537660521 531070639 711918585 132374549 615471500 26739885 441333327 117212523 769635525 554519405 48280517 592940006 785399656 193568074 202946180 469377215 226989664 608649284 904328428 996122910 786452730 941535540 482816116 506318198 637830198 354847090 818630494 279087713 621998030 711381733 655305531 321593285 632923159 448549681 424171366 421626194 317580215 811721408 545407946 992715192 978082356 166883001 67324904 156108349 645814272 723204923 237773234 218487620 509367988 145839679 421145849 815253548 645377861 21459823 834568886 299933131 131329586 837221256 148325747 140885507 627988110 422929694 19681645 941221569 725759035 856762413 294243422 910588960 997734514 222156005 536616711 63251132 512079287 395362902 38445949 98909555 922207642 475914997 879617901 897318892 437798929 287422053 817900595 325571887 272702441 497286925 977554879 337156661 612278221 457915861 280570340 715760658 336092920 136092289 40191669 239723948 661153352 936076000 175916689 79296845 933986540 595761732 785552608 16395973 801665560 692630881 383085381 975388262 831150067 283796116 577210560 962312213 686049883 115270877 663868058 692767945 834723652 242072425 702614428 10047823 852915201 264453805 986688398 968796853 171738825 509830737 561427086 110789904 546086686 849678644 935420725 231222633 853482079 702881102 515051983 777914239 140199255 374315260 773440537 528015104 908288053 264467583 880260249 65328657 663981440 4293843 825026736 995333920 329286565 851221657 675442926 133469771 906611584 383076224 868720639 588703550 576641878 663955007 408797073 391832211 927598263 78410682 811110047 519735119 836673695 269913888 831333944 968879664 785351713 134642515 244546856 241407195 81554236 626560808 796577041 863962359 655768540 803152392 691274179 905706926 628356884 277978984 458951014 645783189 385260258 854857073 811193607 840890043 113620775 172701263 697215820 185624990 963550849 486483722 358587656 951265381 224032993 805196624 507247089 570384940 18026827 548443617 707297441 963276831 901818614 353675332 5502560 841722689 929919929 439523425 607314711 249394985 646708075 448596121 877622070 967199466 128367789 538042917 429276802 37481476 567860754 107498224 124154474 296776673 167216616 808900566 729041051 650762298 361943735 788484474 60167561 624980295 693801605 761233446 980582301 170180343 768796919 636958921 743494231 248175656 386045043 526195027 780488812 808378300 613566609 146630326 553519306 634589164 146416027 847800668 691576609 482449645 50708507 704933083 725211368 146915560 469018172 147959480 917268990 293156658 217820594 954342036 333925556 7379217 414555412 912150713 892310964 645175941 307095485 410711168 701228744 786988504 917598664 774915219 188452377 689264224 291540733 77383751 487685651 676538636 138732140 298214839 735974204 920687370 521397909 649482575 753746172 81053248 613279983 905556986 319703155 531048530 289703752 725758853 940202996 828373519 174156406 624969357 36159933 186205455 331533480 333793041 30757345 359794087 483536286 303458103 42464297 588652986 948691712 512856203 730731746 791151708 660294305 785981169 382312503 331444100 196132538 640315458 954647159 558608878 309062045 668534983 10967514 207672204 307278315 712745062 247581318 509937632 697130454 528643360 810935231 789222476 938905594 408800325 341548764 215926612 15772904 115669136 378906371 36779820 510278091 838192311 324135255 497830962 703799031 184798817 760721355 942315452 627520138 652792501 776097605 923583929 17219057 402476528 597485122 261211009 621429721 211103005 127727213 135812783 442412548 461847082 916505636 588644286 893484056 865763967 167679864 534720973 310262718 410218916 679974955 340933968 372867763 23269642 960832551 727671383 496931067 190932211 475065429 823019385 776493675 464723054 89017054 944418484 458077476 45991206 283870907 863815577 163748299 499416132 997412620 455617354 348440485 466629228 869284512 731414848 79906771 747321855 786514855 11382385 34847004 428923045 790262086 152650126 986928540 849783839 550764416 164377213 106062400 515981673 621094600 924867913 15511160 363451121 670634055 753630081 323102951 864946588 114255793 70369342 127230937 6778328 934923998 105429460 1542920 143658381 905256049 659022458 704753498 350213805 384157465 45992452 846479615 219915372 694030069 680372149 242500859 135175766 311328309 664273167 724409629 432487182 27907720 629547329 693170696 42941551 742148826 25026432 39496264 473038940 611393250 237788359 864536148 683598245 674410913 261849648 656986505 91969903 345158928 864924017 519570991 993154600 852290331 653751040 423406763 25596620 609827202 774490873 182859426 680582465 990349816 412085976 178227051 226299794 418868608 686099920 266517658 424691136 223513625 802146761 93451563 629805356 135897418 546522916 39414814 532563529 495957379 659007978 425024802 852956378 310656818 539809583 706525633 187486963 338147554 839665879 420506092 318128715 168108175 432232407 816557429 595260964 429531750 113659975 897593851 895962052 947557585 711529002 502006659 842088430 933182988 461869179 44104751 385593680 288075209 470456592 751709639 73202634 287355622 575574988 879236255 845236603 986917448 490603965 287641404 787891828 160921399 129131045 521987442 580300324 944841318 984359037 756314349 988019814 964131455 763086589 670300822 632085327 102756232 828928001 654459194 664963815 112395718 417813845 860742745 464636568 228319637 614017473 772551013 534942504 297710750 835335698 704818688 515028280 837739513 408610213 641488603 506718166 173110497 133186903 298812200 602117625 888939125 813645458 344927549 970967350 44326165 67656190 259900085 174051882 687487469 58446965 69872718 51114761 902782578 729044540 903846592 889774666 97449511 403623643 317452856 470254788 446104619 43398801 565871241 273617406 823144025 709944418 210180670 793056166 274269215 907843017 9882694 168605198 953232742 278756697 7926520 437513701 70935189 561541080 850973735 452923850 173384594 330883642 641563072 891223170 871697453 603509592 661971 257056087 193473232 18714394 203329026 204699353 738063139 68310460 257695179 942049186 922259499 544124364 722274619 296397694 8930375 527770076 191841121 411490909 684104880 23826450 384233487 750773762 183163275 552705857 223712526 682482210 793145547 130505262 877339436 801581880 592166915 294114716 398126185 541631160 962122789 637112447 12351124 179134030 238167142 599839608 248565941 215956262 855273602 909962002 469361166 926629394 45192219 314267775 986243014 816421031 40559210 453535230 453707324 103430300 589436593 910048277 758605633 242148299 771788512 479464164 110631123 888120929 169634245 571435978 441869033 887842910 552495895 217658837 23264004 548483677 143864625 249684472 378780830 635450310 585734947 64144515 982101814 19681668 626322771 469633257 634675201 989187747 392442272 602831566 283284286 38201720 716095211 840851084 442127551 743265200 296132764 787394359 101447080 965179747 796989895 723940367 208144018 196709998 396236027 361054706 750879711 838168202 490664724 895938190 598871649 315927029 531037803 504598490 43064233 67746702 987005100 463738281 592567057 731404095 799040655 570544720 712871404 868031498 560810526 92203124 96974163 881861143 655581050 460930618 79311811 497550135 748207606 313787444 539093826 870491466 698734943 739482109 46453178 586206261 152899317 9896304 590225220 274560822 400319354 400572800 509976827 827787711 345335370 838774385 892663878 479872468 631457942 190450605 842890803 403802527 388710770 36817948 140905007 114016034 983463621 437448397 780841553 714193647 752505163 688703526 421195284 753342218 79904326 149645779 957729547 191141115 288399727 479275682 622080805 502664380 100263708 352316661 906920113 450345482 937231061 332119335 876984342 321044359 949994465 703511296 824172982 86750139 312886991 761011977 838083694 400104637 556592516 682479791 213915100 850492631 422870240 344355065 594270960 162081519 451934831 935940540 399093392 242323453 610625522 828164737 29368090 96610330 399597123 214323411 494628130 220036039 477932421 485164758 264849205 756840057 641031014 337523964 815074408 888889287 64135665 533142258 856670667 984813668 301686933 302433643 484741968 25214758 975191581 403423444 650182896 148939182 534392227 945686105 507287689 672211870 20609916 622389574 882725861 625674246 700604406 987710506 425193649 136222028 705875191 357738789 620717560 292418604 260670476 614734900 514450266 485498994 135402729 680801724 162215688 679748882 82813315 68909275 82855385 483121021 592211915 150239299 384095987 381329401 313406866 159293687 128655809 392399596 772554350 535572554 805421258 117556030 642690671 330015188 177363487 129656041 777971977 83927748 21099222 407188599 400144465 480560638 488256925 365876375 176596205 884929263 883930728 409494309 180185155 507044925 222562046 611190038 466925133 223239985 754606270 351462340 983448366 658294995 650486078 3380872 210429804 655983629 29707124 771078467 499550593 562511358 746691348 677245380 96927727 534663804 992162675 848201420 820232705 879953651 193737429 690622680 273889966 13547774 477657748 907066911 376807695 433902323 182728132 108244823 343520963 935918392 775670889 925719156 885979769 206847097 621017384 301056483 70015148 335059937 793504077 344049857 446781199 993545648 604814768 918141488 804162487 445491438 168421258 602479411 643922246 767456794 902494931 422492637 284225478 325619025 494841311 119033163 474013633 671316214 114903493 630596695 248539435 802760635 446163576 221833019 416866138 785345625 503856446 883321084 868254051 996648933 485311212 599231612 637939953 491137790 635033368 386791332 787166626 539050794 624082231 999797718 104182698 551896264 576404447 546386166 820909426 928553500 591280984 879643465 422924590 921358182 613968055 43176219 314572819 240776389 484321829 753436604 373705495 392563622 37276476 858800064 983329206 84865675 501846617 960999533 100795917 120276112 160376141 324867569 723299425 294539401 250240111 890082757 907298194 123050107 423518979 699169197 212508777 842343733 854556072 681091071 127403340 596992670 295175356 27659538 904967620 929521283 997999538 335811656 586981580 150901605 122083271 558570159 991277396 943626711 863434937 64282587 135070822 289229585 856484818 948532699 623045497 902337475 136888072 862275354 392897604 819193571 462555064 821681295 66873368 702434094 423504581 622580326 875046753 40435724 394027159 734487721 743900148 170536484 682076843 344645204 516574165 780484002 275014037 678735786 596625067 927348141 923548283 223230011 372983131 171987299 602778111 312925305 899037752 348386338 121468297 238881180 789444894 570950791 104224365 405434306 501590077 400735701 39056712 469268279 879775149 463741339 961760772 216204793 60776529 107131609 44155743 157929632 602646826 469699048 593756302 489209459 128502076 311521449 650246342 932298849 400036789 35985486 375813092 547336949 560129168 48555602 552818913 348509544 40123431 318852815 992443600 715057022 628408214 638148167 860466724 170263210 592509768 655422282 799877948 622115813 383874204 743268229 633988714 872743356 167310212 11532313 396324683 17813567 291802051 504259809 982305310 247357790 608886049 779820607 539340381 676479744 416144230 78909447 981449373 743627248 945528420 978387231 439231683 294546112 685734518 469300304 625718218 449726140 111674079 692699093 874710253 687941844 240247802 936064558 634055061 707519477 7214826 552957754 348986064 597205561 519488619 954160719 999706424 978209943 300576349 598243501 100830788 898819876 897732449 49116307 730140891 859180049 159919242 746714073 711979864 227387102 157122700 42256279 284015980 966189948 898894242 429941143 999615228 106833052 42741953 571873103 90461679 540044337 835627556 932405216 532887319 759951836 674374782 183923526 216682357 217268085 233513995 86137923 692738682 861462570 61749177 838882761 548486962 159704393 80703287 613601929 763954591 168009027 155744174 59297471 173714603 177536889 201815932 143545625 630461562 555754712 221473244 866110272 561842096 72569528 705305244 588970257 479336066 543954345 30790821 613256068 755580119 727009744 843712165 136383489 608405580 55767016 240979975 905973593 441798957 248436999 300688827 483525420 162179068 878685677 984721996 957692661 177590416 935741907 519252477 344181548 410413273 994752774 399052304 469476936 610044045 638902336 553210153 697520812 70377601 388670920 238720581 455578905 695061922 782267576 986875108 220257662 497423407 902782482 108624204 870896419 978136049 902060285 377911911 956379776 636409037 898311625 841258162 332246499 976465275 977720342 610032774 409362817 493868575 775417214 362355902 589776517 939091002 461335367 427910320 463044649 356368115 301577949 198363354 864222689 241449952 889605159 950199145 964484444 144958180 28407579 776216873 557468759 104518979 74946146 441143755 300730421 592948419 278002492 611233802 475490350 513992189 681219698 563984503 292098079 339426085 756449201 773840514 858721708 446017463 864652887 783587905 479963508 443378473 868795359 43460038 478227246 401285328 89415332 875871576 286224187 505052862 996781523 278493960 699633236 659837724 288936656 777453643 734950490 775623117 953225759 225659617 970156802 743600151 150947110 225927048 574105863 779735400 232227186 548204672 276104341 156382489 706963236 282519067 259841280 398506707 676656904 802684691 113421202 774553318 35172891 629907981 524630238 363191543 371039979 206460865 635469635 708705729 26824628 702016066 638538594 715602298 700820467 678523270 577654194 951391415 248115764 392428075 500932927 761266852 515279739 576144129 970618785 47799612 696125567 658226437 734065306 791782573 957571119 393249333 148137870 526876705 553364311 278787041 42036971 552926524 510872272 324456381 117690654 178447962 654890689 133662422 723774378 970240989 949133762 971258982 681616387 287903207 757445822 87692752 51432295 675873539 458968041 64191605 503928750 782818323 601482767 124207717 487577953 317231383 300974045 945855718 161945789 367227477 146304092 957115872 602484462 323010571 41731989 342302707 208714655 71123480 633229425 798430926 740119630 970372098 56058706 986187321 929985261 684015823 400801320 409060699 175045426 549550964 924791201 548958314 727778466 75157302 283354348 99330222 326843989 961310931 366661474 910327354 196451754 610762233 879026069 783965905 697124980 136663431 535999656 678898211 67086041 539633710 315338304 699234271 176251539 276729149 53855432 445111114 747475500 133892890 429417966 596873697 443572336 203598025 607589458 289845085 991760407 124933784 963567902 507848739 353050071 645697063 318340085 203535028 603343866 520709032 212977424 817042314 817024585 424591875 736255502 93451727 328366025 373842927 759605673 684214396 898688139 686618686 899532554 926682532 996029731 699761522 139003245 543849543 559514568 321755665 354895254 972047188 903332030 290268464 41474231 841370517 539728916 310152878 666216755 283556426 585373344 435961748 8973321 582776182 811438496 962859303 854268535 890202305 767556574 933836513 397984975 726434524 934715757 951685163 40449073 129867081 462049258 820351748 776400830 819659395 931347383 283530559 969414769 101579387 695265516 321566894 66721896 490594993 253540104 818682485 243813584 837426538 820364250 116016382 937899308 974737790 545080255 488891772 885272936 984129952 509522074 912599183 370340926 401709216 667208361 381238000 45693353 493310704 863335929 207674602 16845946 471528797 200478849 235117307 383541693 317615712 656171685 658569394 581798890 13095944 419563180 511668387 977317579 385927921 459764747 683723577 524729692 300723627 304797771 543788289 82625090 811063192 95875759 560823513 902945000 2128353 915687504 137956664 411974116 816651550 77730 786258297 155825899 974940922 24081503 981025212 356230402 712361769 714810657 519158521 116679988 338000476 439973617 606696026 840258368 541603572 587075739 963984818 82024874 395338709 53348236 512355180 181346940 856518282 883410427 244943690 485739204 79169453 865099120 357009960 805877041 487664265 850392235 1696067 485795056 55259139 725235968 930888068 592786743 727952754 336973524 81277987 298094201 304582700 951493957 338085276 750287029 122526242 462363793 188409976 532430982 143377058 435937530 822369544 172595833 362473070 783585160 141212442 485881521 800286188 782610874 635542727 992195047 618680292 892712054 365108450 326947786 914252063 798611237 23899957 929794039 580909108 677450584 133955694 697359905 643173642 102722819 279306898 801939038 703717856 770734744 854989833 632833996 298564049 566970193 633572467 914481574 649015694 719398716 997406797 151956356 255507831 314630536 373373718 631675752 592195614 65584032 367636668 890746850 399910495 566523657 115541455 755630407 824392427 218211117 14317488 825108982 560871507 79384005 237428754 235246134 337438649 821839059 752146139 738386228 880237256 866092398 186410155 662769987 552765506 104492040 953250644 836351561 384839330 101343485 457663215 742060615 131782584 605932456 723895058 656979561 176168189 826431414 704069158 896012891 437652126 985142512 876933042 862149934 920420550 756802343 682330652 310998499 912978704 355854184 678466452 56709134 334572906 591970814 521452685 188165163 259048579 446330851 133574212 847719469 267672443 39844663 556198988 932733368 754998422 893448594 926362330 40806503 344672442 473871416 219810269 5182870 424490282 886556527 252246967 408012771 758038627 615931552 853453423 403440567 691620138 367768130 395018055 343252203 52213 114047776 708521989 12543955 699730485 41419620 38483445 445601601 526591378 841945393 820175375 1526864 817569668 269321607 715358079 30858053 7332756 910062025 538519596 735580668 75085357 67721985 24308421 402770045 375653740 445463246 587457279 497979646 627699008 257570118 856434802 795685963 364143018 704018362 24275976 537972944 160185769 868212845 208212184 767342909 432310698 480461842 144334503 580711267 763696565 264483380 208838701 788273020 620442815 593251257 382177858 96546381 8218407 532184715 552929566 349495465 383274923 211025646 811467657 682033391 914923621 93373941 646664757 155252807 184342817 713129296 22556595 625868518 120611984 470405186 410132289 303722264 533277428 329804858 790621822 710480291 477293854 771316633 261736154 894504483 33124306 156835047 653184523 75220469 568545603 579597563 620853855 786306090 545173082 866507631 245301509 864240590 920312032 773728653 413768403 282625110 132351168 186198684 29760732 877232678 929600985 863666822 630324951 498135566 875922352 908705417 705426718 914000446 880367640 475545687 733508726 418254080 882441615 401982908 17524117 249613797 170251901 620049543 231830183 972568389 559833647 217769309 216850168 517934792 307134118 908675759 494224871 362382865 642094763 901319716 647331912 205914466 19718440 766224140 466274973 671638788 510141828 868135041 235409336 265011386 840589780 411121820 11474061 400539333 438560854 238773179 558526451 242634598 884708850 873003314 940789887 546018538 532089716 49118476 818371301 349977057 870823146 871555845 970331784 785159924 316127967 218679243 988581100 595439253 180226654 991991050 40863720 502132953 692539920 364244392 301025734 446019039 610746955 50331055 680363298 719994730 815205653 540440863 498972594 499422344 414846689 798302940 673964157 636323586 676283972 693120323 484357200 747316023 946388999 359182111 717852781 917725061 272441534 927265047 507607186 8892536 404408480 445354825 447041669 665656462 358598687 670725047 280500114 385713320 973793580 747210910 808786150 905727126 423863300 683441984 762214863 395200577 972596046 278660015 879314049 35282761 481720560 635370441 530229379 205833565 133388470 26805702 579747131 178803640 740503466 367591350 26518130 525699713 311017452 186443655 734338454 449161316 442245263 182510742 988677280 536008210 398408096 307263796 333545121 272376426 415958786 20455407 419252209 420104195 303428138 650452158 755052304 758579612 248833204 747787159 95433900 248375981 656960038 372156497 910891064 851778300 236526151 300003894 6998175 95398305 222808271 217140560 707996469 543481818 219820179 562680872 1309558 48373613 769196814 342916014 846370957 973025034 438116925 460804328 553636161 381577933 675937622 22833977 111386475 942179014 761419021 696198614 301659540 563206115 664793591 871662032 860905471 713390657 846998609 317770783 988656705 173190981 17817805 377223853 756695662 755748066 760132467 195403088 958015742 702761785 836448606 591905124 815094591 445150003 928636889 752285492 23484213 156681021 279439445 341676778 556790999 581194674 841905568 121511924 551002653 93176327 192275702 299852676 156839820 506309736 243584374 7137009 694424540 330030796 826800108 613571872 581097242 261670725 752844109 277246789 137265916 168963893 596777903 119409982 152277725 994770455 424337707 211996226 34480472 908846469 789120610 518553929 724505377 35182388 632998058 212849619 951394196 379025787 448348647 462446004 788639623 367244474 814279275 83183089 880024066 34034448 81096913 821787742 432241006 440724964 944531705 420262912 139622289 76672608 816426398 633594258 138041657 79645013 640366863 954005239 655159376 173064159 150318152 847852490 132030993 739243646 119984415 806113492 694458785 76634725 434166597 596209106 281683868 563378759 747194378 118020334 447460347 364668897 72369476 765151867 709956701 64807370 545094102 701241489 814150188 256562581 901193763 879171291 806325802 37741771 855947770 132195013 216238027 374897347 195933156 111302985 423436496 126252016 333509888 993333770 666991519 862152817 104029349 287287435 720930212 175438324 87066416 746518679 341142062 855840677 205771259 287653325 740667667 819765370 673011576 812859242 170109404 486666327 43699888 862778925 375320458 954309026 489079954 136710173 436668464 548413042 283377020 980792037 473265275 337635774 380848050 323269928 101578305 336700473 680830082 880720888 531892453 567902312 212836469 197710550 476756379 363511746 660436463 959693696 334382767 357866198 76802840 338731021 100180362 786338911 510920504 863859752 881534224 207153260 970237069 444211427 361895288 826536267 916007915 417205652 823495838 783809421 757536383 347028803 752089463 222937629 958760388 357443433 349270647 863185634 891953599 452556445 961018536 623272463 293296878 918352201 912802788 250206478 373265179 68049304 61239319 333324828 35372022 844996199 428752328 651925254 768106030 256824616 190959931 602133699 287239844 574577591 882114911 242293087 144035229 802374357 603697710 859098181 834853691 577515341 797965546 569813925 759670781 368062227 674628695 376702269 580665971 420987343 849975799 754668122 649177466 73259574 996357957 516272033 468565142 418463822 512336237 994143871 496118824 537460430 825353291 158898 604552482 570082452 838988649 442584101 576736502 901129707 29378570 414683415 50837826 490547859 328707543 178182622 731715181 202697309 830080145 351495343 279011229 994313745 311195501 997161068 338812409 640419913 805213129 127373310 512062549 663845865 85761387 55227855 740315508 373198885 707527813 841697444 116750393 966877872 409404086 199914210 798149038 619846930 539591582 25312057 414613062 983086527 214968378 557788942 745623162 479381039 643150460 765781843 475404350 696286992 756732083 937747869 66513473 428781437 692692197 889600759 999106891 684487936 38206810 178367963 880662665 450040584 730102720 341418046 560001006 723441751 239585684 317316191 302923653 452198471 127319179 306544871 498993048 145183972 11772121 251016996 535499566 45166936 1913502 317978960 141090740 687401761 486562536 380082040 723245100 716462886 136691452 258826115 69441371 885841045 170344976 842878169 98595175 754314890 898605931 272537454 752981844 459764607 330982229 952629324 33518956 704132638 810476185 625995293 832047323 736029459 890334657 647454064 455414748 666914914 380555410 70689683 332352395 515954960 855782433 630289912 411263480 198426861 858969110 589429769 268008746 971183849 843907117 966373372 827400820 121538816 941773545 847940588 215976472 95331918 643481782 880462005 111626272 769216820 449171437 516398351 220171009 82208358 506854979 688781759 651759433 38127010 548880157 432863596 744798623 249314662 847780027 802811011 759831197 344744711 64686072 375269742 669650646 91353263 7275719 72485935 155968929 462979907 699403164 496186899 285285395 402734770 393730325 221803736 813628381 952153948 911635501 135901176 322400467 91193227 776174141 941663920 408679479 326480214 520955838 370107616 878926270 505639767 365189041 523220376 796699410 937206674 187333016 80446118 164153479 527836966 395236834 859709726 700293070 599859452 878257365 418337695 2740545 389792748 691320878 745434351 959021816 207725869 855364809 330614849 435223854 376682549 143174216 597636732 46215249 699122582 880962640 153967509 765267964 212385173 235205910 258396291 981020946 387665519 186541251 936227797 527508804 501434733 607833959 474124700 19721149 491123995 389534121 475167776 970173949 864618193 172940525 714063519 28950825 328359347 491176260 109539138 371857171 55753234 376373668 275406719 406919977 293811247 842578986 27912824 406160670 863349053 556537451 582627861 770018141 494273380 105001434 179980704 728608143 48540523 81417510 965781616 958558016 508761982 689084651 315017923 1640890 49037475 466909383 300513803 674554779 433665385 636307793 44502273 498185574 833596466 423961248 877708184 820343904 801439583 975856785 689525301 77759085 155917401 65396412 696831438 515780890 533569831 80445187 203788289 600727390 660402743 725316104 657910649 350700617 384102705 271434905 700179222 24858036 858930252 847882657 514586063 370970653 572232864 39097798 220004544 937959440 451929728 32805215 224741007 300228778 831777692 269752903 291017954 83389973 620704633 337845332 258953609 190885807 441687735 52003176 349420581 425180680 761500952 678904367 881108650 779472533 881225476 144157157 290702041 683799152 192298332 597895950 536450542 956858972 434869253 982792653 925661652 179863392 442923226 249439868 554776120 182961354 923527657 196806652 914075506 532201333 339239793 532803158 85271802 297102058 717742387 727667523 129220083 248700151 204382896 224462761 570707987 683751817 367428293 215436320 75900928 38620924 524700642 376208420 664528803 710246600 8252586 811596157 165829432 411349304 508724950 841625590 788933115 132190897 943252047 349940758 974909007 635580453 580278115 395102363 586839124 810983483 31678433 231763056 863094604 609841225 657864646 702823719 176503863 262118430 407633369 45425281 410710823 606274106 711466846 570253441 896344442 451308634 772927677 268166771 237302255 689928203 537730807 201404624 115049037 290645780 280617589 418110940 985323221 206542439 407044172 405818595 662017789 399579552 806443846 726902438 453639832 206087407 835006772 478168059 64482658 689371776 416243963 322360318 180943518 883004345 358327960 577364713 987808690 807440647 47563495 220952116 253577081 829707184 81603735 751866559 878410737 305782874 489621443 22482610 869965424 325713169 816440103 554944076 494840762 461880564 349554764 159724577 858179958 812409912 806420220 256376368 298203074 235833093 227258707 845779298 702372751 93715733 924933784 33741932 483934635 272700586 552120306 206541075 638969130 554016990 551930335 364312401 154509547 500782548 461855551 479940847 751829764 13396428 20227362 332961653 727267006 208763256 744450346 719413314 317425776 398527276 374126364 211004892 255043920 132488003 396091030 260514944 846304607 987182498 488388683 912427686 342863193 384582964 838783152 489866213 885514809 965161955 659645607 652549753 49375277 624941099 156210809 90713030 540902365 721425422 89200286 580882067 143929324 225676433 289366113 603542290 309318202 371414929 832335855 437431015 277616402 10331746 959038481 627971350 620471101 829583352 262861406 792299335 426543371 744543121 844410885 872801050 585668526 328254420 617045214 667447347 786303070 829951369 806796468 890785808 6563470 537691556 279707697 954726642 607836631 814536706 53771720 450690252 901927985 234395911 281877999 544146604 414112615 508791453 951785029 338032221 775294652 150650375 482619778 863547976 233476148 747069949 391923428 396887814 39741543 164881663 767300740 32111672 102166154 260527150 661087109 382683659 536957287 482014334 865301480 790996490 853707094 409319809 643232757 511813000 127778297 992101663 308320773 786271945 509014971 917296294 223367582 76799547 847353472 511529223 716471032 347315194 839405333 957150871 824672789 280033544 77213280 566088682 358545127 78093896 117263553 975349435 956556444 487839664 720346728 220666035 129315628 621942876 313986785 579504250 64584305 262283657 17514000 855480771 474632230 738843818 899809622 164555853 967518108 902279967 169866069 632193188 163967246 237840116 158932141 331648057 72744734 677764895 875658880 917539006 318439315 175053125 201820914 315825577 26377773 463662833 471460077 917317620 301488229 535874914 825324272 80747857 815314863 776171965 567323771 717357800 119720155 686985605 760833962 985788322 504966587 646069377 60410388 786908032 675969411 96631821 771448233 155724332 260598795 148760672 23984910 940588043 771341008 291333639 332375302 666700280 962344951 653238506 27613770 15787494 85980549 850374012 339342607 654509316 694724639 248880162 778324503 406175386 973181765 990740021 735774248 92973665 575216841 282151914 17420438 337576346 659442559 962995306 104598324 727826456 967270181 457609506 258478817 122806162 612869483 415938710 194985214 458322641 313699904 660976658 66777089 95020336 189805047 641803254 480632834 579426927 193061404 873012187 950437741 621283844 913071551 812177343 104781017 695965853 182529714 532113861 41257785 157036375 139170671 984498651 127370341 9523050 519716647 702675435 467068715 319714786 912534044 86993673 421543037 953241485 462661489 23066182 480499308 647367863 92542259 381764667 968731481 433288363 991483055 969077462 413259943 113214239 138345821 712548827 316870179 802806979 371104768 826092990 357236183 212217920 726809919 685522590 25074900 791860359 449007803 410601307 644260751 56042081 70796663 794108314 575574505 872849144 573978900 410468788 972866051 981820321 172176954 459338238 889404779 322645022 556363418 236538597 357487795 529000832 470558156 945593375 246551993 565893562 288801786 287191437 251611896 111990900 603492476 934043387 708931842 536013742 356377103 77162379 461586298 37493241 249581422 712874879 434821551 757050933 555751556 191298386 690583043 621250357 42009959 334002234 199023026 546059139 746048400 219700613 16816941 775952508 277525399 928750347 187102803 942246999 480573130 296493260 499957079 934635231 527609418 944753325 549432766 297383791 290540958 10726548 77933900 377198959 664238466 632072025 117979245 808534886 176910346 882122867 749403615 40390988 892274496 401962164 711759039 342845425 611179723 336709628 568510373 734660602 121532154 866634142 94538036 669105114 793238615 576910091 78531911 786490473 526947784 305162721 884939161 901068165 580812053 745253706 951971973 746190667 335116926 485687513 500055173 402293015 742111892 869886970 64619206 764053151 928429063 232706492 685518037 58154371 156641372 751653332 91295774 970187731 75458550 196057818 532073989 852013273 942537286 903826640 50651531 435270744 847916000 762402661 525124659 433800837 631682856 65080778 615878226 910079572 912945187 408525551 535594857 176802260 240304458 827401697 154590114 693522793 326180055 856008031 523231235 770661007 632359723 954613014 87102271 186150219 426155757 546958748 637628306 666260426 550904663 963001458 229586496 859349094 435366447 858004987 844128239 408687962 750717570 903674397 92102214 892456313 776629360 698046185 533602 957843479 28833328 942231436 451711537 556657345 509958519 913515002 468057397 2645996 171609524 917716094 100856129 973453474 289264808 574829906 791663411 817227647 142175196 21110749 875226386 475634388 813567716 148136505 675946194 526839701 466743774 633089931 291955784 867947406 405800586 846477605 857639634 238224829 619638429 417662244 2185765 558325628 219598316 778933301 904561982 37440047 910727171 7004934 240725891 20807537 804589478 187014046 240043123 214583189 816847206 76626264 247331504 689202217 975281564 693199269 782003088 84273460 650872536 138354304 736187503 515686237 406521806 622456136 44030728 552602663 318237767 9973540 560954953 121702699 933884945 352405206 66851372 603897582 536612608 257928179 924826309 581831295 124812167 82896757 219103201 833624049 19156439 171584594 477387218 425916304 971431724 408838703 952900195 163415643 492259890 372604344 28949794 446554687 106770724 552542896 786265968 128844918 320312983 718241422 523198221 835386136 513751164 51104742 247559207 664120672 758602861 264932834 568916789 952364813 518640177 73892973 282909869 54083905 327807748 526443488 595578622 795003458 963531788 320578761 707045173 391676602 589256467 881664718 662105032 505818805 189523317 722213398 578318743 625726040 180084699 793640604 961518130 384414803 528334825 442365125 65827285 639949705 118083758 446688214 680876997 83778930 503628031 194130632 324243724 348304651 626701971 258236908 824873920 355801499 33106462 69932499 323725078 493062526 523817847 96141206 572495196 140075401 418333754 642733557 894496159 191607981 890793698 217013875 794661532 332689907 101065859 593332527 837465636 395220034 777677540 560479570 460532172 36484519 854876088 243098207 746489097 744423643 650276189 966558932 843370363 828202467 38945095 12173563 231314543 274439921 249420612 326434149 430457900 117329264 861415051 755741862 414045708 204969655 304570304 80804666 685659244 838913826 880174950 499456191 797488581 13782677 49344741 860248583 349726375 169071390 57929900 910548405 768057691 444063781 689380600 679994016 742341255 351678431 482061228 877810742 950937465 215064618 779100213 425997142 206678595 640869437 843756907 830448865 179275150 860640345 990813812 219942653 529843250 602255444 591646513 238636103 596250871 944306758 390654611 295129774 142271178 403711799 40033927 858366532 491183581 914677133 856240412 929473281 372559718 886283171 929269273 904797888 877582884 20434482 772763324 428322713 605998172 802281614 914129035 761841343 840115549 702831588 552263482 719818991 518736071 966712269 5166687 77575473 108667906 98944296 306831820 349330323 878302433 338150402 677318726 373775453 284238668 406367170 794520892 198188559 324821846 265479429 272874946 463590588 806696495 476075743 896680488 28666167 444944105 771763531 265731889 480839501 942945206 244000429 106745861 761514325 667302514 6255440 974656915 705329597 184772629 361665882 978335766 610736499 590971578 123386988 759356684 39110713 607937777 214385483 948221505 322475396 629855523 511214310 988601859 255158117 850925005 829302283 468196310 354969254 846041137 184977842 28972010 378838793 374049675 338250216 816188323 874981754 588207167 334162471 354122127 367843028 168212739 386910173 659065418 557088209 389360659 651010445 455923265 501041299 525387248 324641592 513144974 469139151 120766159 94715607 901653870 627268699 117760596 145348006 417093820 666395675 468327773 956761144 582421699 891137508 960118173 67278529 110270461 178451865 134767036 906321508 196751736 455737012 265843868 668562574 947230357 33926899 592245935 539621470 863489333 35400918 521714413 322139434 918056137 687712588 81264864 232916018 792339841 873404 189368339 259487827 773546525 921191453 127169734 460660087 176340414 229038136 76487004 854467759 260138480 790002234 419495677 851163451 714469522 703156309 609867583 454766882 947627439 206131260 349434109 573424380 506184110 593361279 778217175 229568674 338817507 133640891 660270613 578940953 188136410 770958844 102048849 768844610 803695146 2259722 580453966 594428180 338175245 49108980 596996845 317365261 42738102 562444709 689559014 73258268 32603468 976290142 232994011 598503666 412107685 798298567 584715694 675255728 626866435 872807149 972554915 987356643 894371639 139442111 935661345 261392791 162353196 657570595 179656342 27259734 441809556 826582584 360527061 888747666 26970015 341747027 418457406 588222291 659693013 100123609 158995722 402238070 61194867 474620683 453229465 711222495 591089322 269054000 865380094 357289993 776693380 883401283 839347517 294407703 229572769 431678472 966831366 513898179 477355330 149941328 391085935 180904347 944031862 106666479 226130279 790912487 837592575 653296435 444603434 1235315 132528274 310550863 515466343 944630300 464465620 295412649 734802955 973677034 466457223 318324570 404057445 308336621 229742545 988025968 268802560 748513431 3950550 232336543 157957738 665367893 43193867 380975891 894117290 98685883 355584479 991539960 24494754 892050670 508841852 540973981 921075671 847264138 383999432 565259052 285912844 908749652 236585551 596012568 883111113 476639060 427771201 24425479 519050191 841729562 389538158 5918379 626824982 683807496 191792442 911788734 668764666 824410855 111672884 616357786 321107320 909171878 246260174 754877120 417530454 891599361 778895479 661685564 702133525 713907103 738616566 357703497 740114870 321584152 35556819 566031658 922974903 119500319 184656642 958626013 562091364 901878711 83781556 249991611 8037687 617202620 47927027 17479571 282507413 925807316 549461928 473615596 123211609 813496478 202187166 543007081 811452832 505529265 915831537 20064457 307641813 175725754 509968582 181210746 434643084 259479590 499655929 133456525 188392187 703600021 768320561 287419481 131651520 545599949 862951214 834186990 509995825 21977270 979178007 815346718 241545042 418735515 3360350 903749149 147742269 783402824 574701790 507560952 886589971 238744181 10621550 788184500 228174305 477531182 49284749 761023758 127707340 915536990 705595694 259194942 598869632 880902081 224863575 236391768 614033603 939844354 631521886 268344951 747561058 921111875 111637423 974178739 93726738 834696725 538584015 108330638 324483759 994431043 248290744 839734870 285695389 914691585 908072795 710078380 320431049 515479189 379443275 199177406 674293564 636368301 716001038 420425879 130026235 137009406 674909847 547775499 196475995 642689282 141004787 113796753 630543603 591111980 545122582 585619333 623441946 911875935 541239006 522726283 129011842 813405273 761840936 520434787 995332903 502354248 863453202 409307165 146253817 544910036 14976880 147902120 467016351 953992407 282413298 846418829 641634833 927210438 865069906 20500353 574962298 153871372 904226009 106280335 881453511 510051272 894678680 540953268 453478321 411643093 392813890 691370237 614815802 989598398 829645867 696760259 844307501 67870354 400001187 642312753 29021934 214286487 507982761 344847480 666888517 639644291 846330103 468296626 252528958 512085051 452351180 406220751 874467577 910508700 688194779 82652966 323363040 373271634 917165281 909171088 170229933 770376687 992334336 984450015 722925297 380413892 902322903 192402578 602513895 923671148 699202722 854878750 267319796 757503939 580265637 537707924 600359739 368520013 596192497 724083302 717965365 485613861 836072667 476230395 459487487 905645180 593453441 299602996 758713838 186230532 162266406 652450565 874996302 312808715 105816784 929733516 396264450 35622114 798529489 262969382 713876272 265425917 173784961 231041589 326650038 798208518 177445211 893665502 390599403 673557066 181218724 891163331 37788276 869317547 351363103 167156372 863281105 347540023 729661454 811886577 622413292 49085483 360118413 183534709 894422223 469507173 220882764 301967101 338205255 478518086 841988552 217703697 452434796 265618893 865504875 518245138 283183833 9406116 149324845 372442926 39263585 179383591 829333534 177828987 634531181 281681326 47074088 714429818 902370619 676030215 683230361 561167764 893919443 140473611 752083440 141384832 87217999 159552090 600905166 365168824 240997773 686865332 972345219 881125625 645826119 588817900 142321507 582276725 492557785 175670167 145328175 644907123 348608837 711308733 425851306 651418443 232623217 13957930 928899426 45859038 164479566 248312742 256937731 92083256 754589880 896278370 535612286 45066998 337518588 942273241 450181791 293780452 717898221 687023544 626150905 954102781 209818895 104584321 118329014 155070043 535681921 515686989 696947535 211637078 998465274 134497476 395528511 844687613 664820403 438959701 56567078 8532495 380031473 491777032 671885987 240862508 889039763 492067233 626439353 787508979 645517631 473299517 599533129 413587466 881086508 459605332 276686128 974975196 323309010 933712181 817848893 622966215 623506090 387643150 175588594 647285249 949059354 990721920 242513238 910891467 28519343 332984938 561901806 481883664 828240531 250618411 115726284 63177575 389833608 133167563 741651533 129770478 60045515 929025836 110130756 861152914 361670905 627875609 14595387 288398063 470753859 428201817 314723758 673150118 715871039 870389910 87079834 727888478 657621461 853050698 950828117 625797775 457602119 900932449 953020809 171148407 201681027 305117 433781162 715535283 948590622 540992943 65296864 732920379 280475432 40708435 26900589 710964486 53085310 310326541 247666108 662011268 598963823 716534888 931514436 735202938 48386349 960830845 892163760 701839672 747655945 736699007 965160728 152451149 14358254 378987110 884140049 184433080 482112364 166815666 568144939 973473137 799607141 932359301 870705868 961850771 151025225 590401961 488014126 867249697 464509968 758272060 8169709 224213273 21514725 341144033 955384437 934570185 73431631 311872190 620612995 552626782 203133444 521515023 15523164 893425446 385404727 294963283 702351940 931766332 229875451 972970659 964683191 252335269 583302812 669893518 960775440 550688107 986230398 797309293 738434561 704981253 401768016 298195825 378564923 724889314 842564591 767503238 256127499 523992082 207294389 605492833 909931602 436213745 669014580 27822390 65069040 682063603 495065305 661267895 700092942 825057363 587121134 758405226 249786254 719582807 832543119 54733770 184047725 380558552 856333965 479249699 785931499 766578541 834026016 276061457 977479326 10724247 126667115 769584957 731228431 98246835 487880108 174938289 37786310 381720412 695946672 506738428 936856434 751047284 534944197 290288750 390977578 395355361 837665423 502245352 820974579 641063751 870766292 459230819 979963124 276361778 719994498 401395511 949998740 645780689 800118929 405109122 59171328 259690608 850560484 710740915 273632470 448543424 150652964 711697613 255179318 864673062 573636526 361891155 552599126 247623779 218238745 42624735 270929129 194314984 763140983 975765993 917041716 25712491 478552861 754929110 402824483 197099950 393577171 528415470 740328120 699149401 63627409 923364827 204908549 585917125 581320048 345482337 448221033 192008788 586737522 370605887 504817839 510430139 641972464 266860561 424948509 881833803 906535456 974340882 52461023 169088427 659811159 178227533 144078448 418337737 980697776 944400433 33934628 363080349 811447023 381911502 568059753 78670300 874936145 668978910 552380978 720016294 858293765 983503512 155572067 741434570 381103557 446120338 577795624 841429430 142395780 714332562 182630586 247967027 771469233 807598690 218396218 39960503 696817235 799182767 240728668 985906919 884540917 92897129 534603512 143852715 328336215 630981651 780363580 467775661 240974718 431209978 582760765 581029955 845697985 243809188 360325598 865064492 892857461 170385247 793391531 276819898 348513554 707395204 827038763 974859994 240918017 369024621 259549850 868477922 678616995 455851549 413057310 723151368 171644392 326237295 658074801 853494092 427675679 52971697 317005672 944501546 53766888 260727606 400775107 12134551 179818674 353634799 799067409 376996051 410453352 14766296 192790628 448159128 427588338 96839096 665271605 717343121 819321128 282690496 679275348 326737501 829700893 942021769 864544037 832331126 584141533 396986708 650882356 82957614 769175182 305414222 300436847 985568474 251486796 247562187 332449725 380175863 281420866 834396550 137626862 181968318 434614335 368761147 923421759 950923220 147086415 352203301 237041365 605858284 327542918 713148679 295989322 49112835 678199890 239199497 526860294 168674611 521251973 922450825 296931748 667569209 541834801 136258137 775798539 928810422 317524413 34963347 98601778 274067770 862519820 221908863 487207829 873523501 153456838 342170782 879961900 695203489 479893859 759589183 165285730 571450867 141893542 687025150 525797394 234638723 19085500 243796923 665498978 936553364 973277143 321906830 929733590 846791819 234786257 591701723 190841327 61195539 49270848 282539112 171893243 863326982 864645711 105957040 877448241 558065945 181313602 713827980 996737985 119841215 838642169 454576538 770968923 230839134 708091471 510338577 630578629 243352577 895432835 704361044 136541333 511418345 587915315 360397283 545944486 565589327 678176956 933208353 535540614 306489476 171623374 912035555 278405751 325536767 621153979 382767112 941350671 349276412 576638530 294133269 454919365 66752802 244147072 809458865 164940006 989152249 105985937 382376776 529661944 14191591 617436455 592023394 708339067 618738062 861048057 687935363 730421965 2639572 427603073 181336459 90273843 440689265 533586773 248210541 217759452 490499849 124519805 519819180 765201487 133721840 320475654 544293616 320465442 544986958 773183515 111813657 997689006 219800495 768164243 296688322 950903081 834014384 725663818 266917614 407851062 166953502 826614267 17569624 76636872 97494790 905910687 733125958 980942778 539520637 314766744 885318798 819808316 535861257 552096064 316040704 144146151 291920403 891019985 416983459 874774643 133122626 868006559 125304697 102196460 947582601 902987932 167193643 1539439 690032851 547748283 948666132 67283468 481707242 875979566 582941243 605536183 314302455 143641296 319283810 667511773 22565584 428006830 207555309 614705163 801377000 596040666 454680962 366114053 143152482 217943126 104673956 360451921 524025418 487997370 930814876 484389210 722714078 829721442 458173371 905775568 679585773 733249233 453773995 417064304 559361939 15351302 722968804 915630670 654677986 478774521 239110592 192871431 736340981 844349853 692225922 180519473 707705592 22194701 17255356 226095156 877845113 492506276 773541113 60477990 547323415 93959873 373145683 421859482 261543540 307600275 854042904 222559487 552242263 15046111 755870511 432371998 625453859 528793051 508838475 175690066 719680677 796904514 516081675 163134631 93653249 617637164 589060520 207662623 961517 978711301 160172760 526088731 711006546 850308708 380052859 465758959 221333776 399945892 27956196 371094558 429513118 351150036 364134325 311377212 600197938 244498253 622720483 773689705 175698789 689547882 618475281 991308461 737091782 820707413 838102076 469950337 902648864 854987807 653387092 417953485 446637511 945260423 583303290 728104722 745548572 619370547 49350903 758182831 661913908 972993397 578226954 388663905 749192615 1754643 507939343 586349455 673732875 737339304 513127307 808707323 740593951 994343966 903888341 553719771 369800110 845186557 819129643 12590959 584994099 990242321 240432762 677312904 535500635 558372290 973506560 956613737 9501920 48585336 171516495 771300340 502358965 893832946 998356404 686204434 42821062 460382301 924126087 405393435 856041144 139480648 598532796 339936817 726415924 228637224 36553643 725005333 755303788 995103455 634520460 390745193 15949953 894623306 873526064 693868371 600354073 18422897 436438875 71226625 709998540 317375588 893900175 468936883 437819921 732449516 885220488 19237145 858805458 368353621 307225959 513882316 282725146 491196562 958751096 221913111 104447404 864676943 818594955 240101363 944439409 902720140 946147890 46131736 834137747 440008321 815772355 783039569 779252859 130227752 51907275 24412267 867420362 753581618 900415227 717925959 679023147 106937234 934157434 606153335 329485646 343945403 328015000 145799323 392273055 115825354 287958389 873975724 962778175 105704638 517785242 998125101 790464349 117765308 483291457 583053370 894862541 944269241 786847148 295384631 894855592 925433118 848049329 261267052 40834119 527741069 655250853 722055232 784991982 352828207 448048645 255510149 56081576 218097239 912589770 648203534 834071290 337708501 58754914 147952336 994022068 825530093 963290918 192934128 507186598 752389266 598836814 885104298 123351114 555054036 611914825 454309977 888364438 107255451 183832295 871568171 671031069 574904897 533315813 840427872 486830666 294365878 421521941 655533156 604444090 476870979 365038355 529749384 22539260 230599746 934044292 733697686 122451412 998287346 413711677 289721354 923161590 714411777 318957765 131391309 11401896 227148428 481593579 184910536 234474580 330452349 489390807 103577602 766376213 441532849 661045977 982993127 321245786 436310110 239670695 329106967 825128735 798592327 240053317 88047678 255952710 676309450 864443052 580775241 345392717 758930328 453966696 811302813 719727687 54344918 85417683 279183679 617322229 468715279 550078517 934419883 769938219 426712672 78063271 228828805 790623177 254997538 317975923 119537954 639248355 770736673 789092783 66933482 542343086 849779528 825059716 85478438 835490363 542327476 698392138 934093002 197286271 878509672 968628489 170486697 445951505 267523877 299989257 532222346 346811807 757717961 713035846 306545785 611211221 235659337 571823318 812259956 139334220 690168427 484384794 401302209 501584099 831180163 493253911 696154299 757595083 720405898 655405176 692282087 106463835 910291486 435127012 714396528 233236143 980825866 813033720 718334401 587152753 997925269 157308772 500146681 812795709 875439912 720954312 548907102 929424665 59228908 925673930 432349974 339398915 349227595 336406369 131035537 512842807 113911512 417536983 548215261 386566228 817257672 826891284 325640575 872701638 759352710 252075338 170281029 729435799 926689520 589469933 763680654 570901984 679043297 776722821 960353672 32118197 699350793 201177615 24205044 895054621 121960015 610270650 330279286 116511653 319122283 581563873 861231212 781611165 80829345 711005922 922872364 771621810 23980778 159111697 428791414 33763759 650847457 684980635 535169764 344100943 845510775 258565634 572444577 799836481 999985532 955902968 635158103 942551062 937106295 339499608 178158790 616816587 326254781 275045965 381984418 132785743 907522706 601471096 656593979 121616880 900572881 607405458 792407026 585876512 477516659 249542225 539644161 999773149 512423210 222116422 607815006 248896571 987008368 88116846 349665877 157118973 588873052 581933109 253824960 694558102 164190285 559972019 178145178 580752881 950037760 48206173 30894361 208900037 594820690 343253013 177778738 355022185 254848242 389101877 292265552 902991409 936987402 339786375 420061007 126950299 833283939 940705300 496743286 249936975 455768387 514153026 157128800 214074011 535201593 972582179 769318196 326549009 148301953 590085044 18736932 476436054 523225851 402708073 598431052 531601630 620129958 316084646 350172893 546192169 187031539 764648343 392011190 657745685 673475685 459782995 626625861 611152146 516180596 850478918 976591352 115939082 969218125 425065685 752946866 476624490 905016712 930117000 279938730 997109867 752767927 421708270 712782293 141086687 645712497 599409293 135834814 230355702 710787269 472412293 644717958 940579300 827027654 51368294 322572039 822896850 480147356 102736577 893945589 222372629 789044232 371998575 587995454 422538101 442007174 483712311 594998259 668924250 674277879 395495007 785817351 114958837 62513854 868160997 387547360 991376728 215127690 322548155 740674024 808578868 988430145 578918610 45694123 449778280 794171128 518089783 733500609 630441101 589320756 448490948 83911482 93069295 438033744 515748677 967630429 603747394 805909582 27592639 225705403 24339837 283016373 447038944 396763811 247682057 413672958 54245043 929204484 57450819 276933586 178815474 519428025 524232108 805210486 799556154 458907734 388150348 676158860 486695620 369179008 363547077 150201363 964813533 607820833 418056017 779820898 277980568 76130082 620565790 312812722 710563227 70632784 300491923 735723499 11310027 901816637 354280251 60716287 1695946 189319553 983712307 95590655 309756589 610040511 245547596 361041691 769748729 598104078 86669036 482138813 60109044 510234771 821193291 589978612 927951892 182491551 661917929 316854894 984947610 856957929 10708728 259233393 676512738 832810343 229945284 505303912 251813504 615632772 687541878 687984541 913425753 852996181 390878502 543472671 58369729 400610053 198543799 629039653 210716844 464253432 660320278 383156289 70819318 708211059 256446246 434343242 190015326 344229377 740480894 61316760 859592445 915570613 725572250 550824066 942277681 328585258 160792652 694825521 402769324 141515466 652494821 756757678 121534730 89208520 375679758 781538874 292492108 787015635 557895420 500667068 295690540 709002164 212539529 765345337 546903783 224541441 611767024 350551689 964204076 725818885 359441477 668411669 606599219 363072625 424718166 123089045 827883665 246595908 439671935 189004988 809012134 912719 655625551 633727054 526391620 673431772 281097603 830375382 257022591 375931587 247476761 661328849 526884463 981497268 774589032 17447862 302837449 457815608 15129134 940068483 533966365 367881419 454719067 500513995 77633827 154394749 366167438 177812838 753671153 430938504 398628823 318314945 510624749 152894352 803229948 654070213 119176194 37218926 13020368 203858847 679847636 972026910 439929458 722499993 203901070 923347507 208947627 475230793 660025470 985519638 419300181 212249723 258247643 215195005 604292010 838183435 719608417 567331921 304235743 244591653 75350371 881608677 8091384 157531753 211784180 442531273 329439801 52089446 74969410 709698450 844187975 168484629 67310946 609539347 811425868 576779167 89135770 697236474 946964816 149452384 320321130 388545232 821208662 379090293 750576916 484744393 807178597 901998944 622692584 809458602 344022751 274527368 173249408 903507314 366470298 531747533 304844039 621574340 373279419 952366774 312377146 596884282 692373059 385901454 630653721 75452283 104148725 98950872 242838732 16080797 784345294 330106657 390569099 958746694 559209657 788721384 363753325 266713587 108338879 527286378 426744666 298535091 188082822 350644672 347402348 234942242 57897943 45845914 725482665 405899269 639189236 628260582 944438761 290335345 373113326 539613776 72507639 577994807 458542359 806172938 249864455 305938086 170952663 226820524 367400411 438524691 671760125 153628286 762668286 909967810 766622021 942582440 147534967 830907176 288536521 392318161 184252848 134239644 78710707 311621952 55092519 395139490 368302187 609866105 236278963 282494473 799164590 844222769 366364631 186452785 676579299 284811185 376641791 23608692 633237268 531048828 141144973 413389097 672767413 539328264 592085230 522617783 640766 150102089 882659423 923158105 47489996 341099115 241606731 21761799 813539179 282039143 495099570 449347546 212133473 496514196 685008742 136188850 197002171 40730834 887239172 50143255 615931746 76870431 626977607 151020734 749167305 747994907 105220341 915961935 813001894 136005475 129810342 207313898 916575408 350662880 944632118 863100851 128404005 958159511 239304214 503455218 531063300 169385156 968035948 11961335 526659786 411834692 651046252 516462943 510349278 406603871 85056840 186660733 426375516 146261803 154848334 764806215 350772723 541729620 264195343 262444815 828450278 711487447 978719773 886584825 142787558 702860632 710827796 793170514 757231399 170904329 28528472 28289860 706401560 184956777 56538479 242006475 574917591 39658728 273820683 338769527 374661805 372117670 172658954 773764274 835830742 822647680 523176497 940238463 510180832 951156857 85351712 10631237 228710919 150177891 544997012 149038209 238742547 30511380 54065518 669315249 517127073 403054827 515059716 840529188 536219938 960139391 130478223 819540881 716402138 289701477 566992713 435842531 120941111 684518472 258053517 241427389 983922489 595040817 423491654 527541529 528234780 233136015 633969000 192923144 523392588 481684745 184303079 172523865 434151491 412506071 465352984 51896128 228671305 966143930 753896305 17876184 344445285 756756983 196704096 633367303 210624374 804760902 241100059 644964136 178518130 273267409 181954020 801790420 769954158 439517652 55832759 277380151 93524988 598887541 122159984 730883915 560063551 784320772 594110849 121322515 75320996 742041301 258624447 675871015 772602800 191139348 575612235 240974217 320451408 514210150 844419432 11566942 136945740 745203362 869582914 543803788 585957864 21470850 688539330 377899295 909723105 107262473 31581269 423225110 600491465 733717414 417155852 610213184 382563700 153149531 508459473 488623163 613373917 964552685 4532262 820111545 265657143 110686279 584320192 604373337 314680287 900192362 393702973 464602234 180614763 145360590 857925844 406276738 891634300 333899606 933040509 661278231 247533479 929282392 807028900 765469608 120081229 20108452 738152034 568759271 403174645 825227124 909154148 629585389 767060251 779406823 697342650 925265308 2610873 499859397 577190322 855196030 205712157 309435648 286553155 639717569 296986686 298582751 222158574 418126107 739568451 871258645 784146014 946445841 717401103 402488496 652671098 152423621 246379601 355337375 945560789 984296231 621394866 982309798 174039086 576903610 153747888 244647758 381914775 628322009 403872179 606816524 190936709 569872262 241549260 16748490 7021609 719464564 661487926 283453281 241027288 718582787 134371315 692973550 640674853 27933552 436358970 654451413 814631280 619644356 444572562 548126455 862391548 519092842 627050035 577326810 813937814 851184525 725495388 912570870 549763113 57940817 968917573 478070026 544665762 497738565 164307296 85427970 658722673 13935351 672820332 904132616 647369979 700356000 904523069 650980324 811074389 412453731 856038609 381870943 245574644 987999642 231174762 570002941 58440032 775284744 587255814 195169111 72972202 802379893 474695776 237230971 336699176 787676099 370168725 112885814 957243169 945473133 283337495 268637711 913066242 758625005 722998475 691103960 126049257 108673637 372064474 782724653 490544162 339450676 173271125 168186873 362886984 474861886 774418404 301409501 522940424 118107268 81100950 396965971 396118646 867343357 950188178 802004748 418264634 924774949 684584817 290399515 555121128 706684366 622208071 472719758 144680998 705351223 615588965 202271546 562090554 688757077 522692174 904347517 766529316 65092454 276873656 384685897 800102981 180610482 896499135 958471597 930369556 634231437 674143352 996732016 737518899 161226585 410818932 712571584 672693085 780967269 291141495 40506804 30726187 993711208 188406089 564572999 519671289 809619991 456318718 944480368 614881603 155428506 877868350 514597091 635830126 557253583 714164849 479483011 899250384 692834402 317322807 63376980 714081789 528371974 45550695 448323113 254474525 884579330 249974143 201079911 630323159 83393961 643525915 160265811 908948071 809924751 697609095 406499761 2771827 177402777 444007204 449331391 189117328 853128668 681375322 483296910 207772761 472410873 263143857 531558462 346105098 272932600 596679139 381473298 485748186 847188217 17598561 904670034 224841643 488726884 732165401 612944576 918067761 896232585 527206287 129160221 719877297 663675868 128783096 233682511 617240219 804907389 693153473 286517458 127578207 466150972 845177437 902689033 221731884 734013433 56904016 669627118 822107972 187567671 249137411 35812418 704596036 133223045 194872063 6196601 871448579 47951744 852703348 87341214 859669562 487874383 230690749 84992181 579356697 481646601 359562715 686222537 735720077 340075295 831463085 9772546 605696489 761125017 584683982 301984373 381834027 273630868 829040818 877656876 694880251 10213466 983419718 975621742 973069538 358994966 690336667 208638725 393339443 190003982 454376543 772513171 743343290 459692916 844608451 854741493 639156166 606876396 46740679 109377662 372522785 30963949 934057317 58392603 137164 774491687 805386143 366022844 44264434 194432968 442814022 371088257 507033338 790734332 256741642 197234340 67489309 161686633 538323329 153684836 719190313 728030014 386960727 248581784 310855622 379506010 54177678 546298410 31687102 367915739 161029376 887529226 152173355 359610309 179050565 673294406 685437728 515324194 965866356 866078235 230292753 167009580 423056273 282377773 254842888 799278596 724549138 522496667 399456419 813398389 521415441 801918543 513674601 35882807 948563339 951300464 913891207 994263497 999743093 418971459 946554393 546195421 983452062 715283057 382395513 787397193 263938272 508902894 591264380 228627620 283564375 668616654 946205546 247749506 342202919 414410803 754755169 363097992 40926275 854517718 947178449 557070195 302470148 630171917 296798088 161891754 658357983 792243989 618049873 561649996 557943645 988831717 889381449 75367979 918343907 773341537 150328582 172566735 93305939 436613786 958605702 346775169 490830754 610456892 607215534 516520930 120289339 355552777 275943152 145105281 3675357 729481585 74043164 220705050 853388586 318419631 422500606 131479701 891696478 160811420 731281488 334163983 730148730 409024197 342877422 305826206 813351983 762561277 998378490 906256289 856154411 313808747 787814805 524794962 447796629 254383823 905134156 213903300 590217464 7344595 940643316 409811304 823504365 435565853 238333253 654350778 276738687 454351446 804153994 169996568 906254055 498247180 57120300 929933549 97290585 138103820 424195649 445991394 672068901 868619662 95003435 218375636 325397259 153802944 155695455 748741883 25939656 451925017 872496032 146685368 471991 578170109 308509644 747751244 407943456 517085312 560591749 561721551 18274060 187776765 667898377 502404399 530644546 607799341 92014579 858249732 438482657 333072899 329273483 472735692 683929219 254966137 164733509 53967128 994922001 575713381 100301227 771146976 603244266 435147769 163588905 653495608 365190589 809904799 506477084 373661042 620262900 865402489 453332136 158440035 279558751 317712097 925356803 342604810 182480643 152358884 497844990 224186526 180037987 201686057 212125641 371606893 366307797 24348634 66239974 377704579 160680792 334412335 363586805 712796562 682516072 438432381 71689689 481545137 377733562 249589350 756162440 508580270 851507255 170932202 250429580 468964660 195186822 494232750 813807224 407994743 436654929 718902358 810159335 576274794 826899407 316064212 439288475 136342435 845112369 922504196 899637749 85711522 629999097 426595684 958119823 953587724 133724170 765528478 645484164 695668786 805192724 132367497 882933796 261528115 824229822 212883086 136543121 769136310 681860429 55501787 428658786 795548929 302281917 814875729 839152290 846259478 878795436 352796336 560690799 341806202 251293152 607632973 777942619 481759165 421167812 601596899 700291092 441506126 671279458 695776265 960215160 157479493 408859879 14560041 194643731 157414643 885122599 31698754 999332707 927952540 719802600 322626598 320956058 36974739 972711569 624812655 424234577 664226294 324525182 807272648 139175444 457744669 920460188 22439444 822538911 32452786 82395147 440794127 126738577 839007318 960600838 375116580 667073277 77828030 935429726 525224153 128780385 738514724 808591793 779460044 360494744 514473279 73185325 571899807 240065852 759774285 941195304 377137809 12106599 873541907 93663009 584185883 474180345 80770404 67992417 54039687 230518221 832485052 35978278 783715930 672576968 866164799 70183240 26448521 863068964 913858133 485273965 715895287 4761699 671853722 437131348 417964266 212795919 941037396 935328427 63931121 39385206 64840661 402183094 155666 508200481 310409841 777856871 979426871 655554267 47584753 130483352 278104707 303551497 951139838 668061104 352688120 765665343 821581297 7777786 679615325 897516164 195863112 317416506 303705016 62335055 202819363 868965895 747348315 988519973 363228325 392910531 741647767 712768948 38049350 482943563 339768994 353361556 917357101 28894292 748307892 856432403 929636460 779511839 712740128 786554175 222929032 852015898 620998179 823630799 236260367 72995742 792455009 772095483 412821011 878291375 559452993 905325330 224904267 234579454 372689853 196878537 64398027 49914952 435975290 270502837 248958862 788011309 864821027 130093465 29556281 147549240 484381728 378200327 249608708 556538712 13619416 483104408 860903504 767706345 95156307 7429587 902799123 57398606 834973363 984805584 263368525 79971683 736080625 370702162 156379300 324350456 388291305 308497092 176542444 893435267 705604411 307127317 819637421 266915855 363169743 424127386 809971610 424398230 87870880 879965946 12909008 494692495 714058162 914211486 696380828 570779413 806510822 273816603 546814555 313304668 821105279 77007066 491913091 96621745 273824401 678836715 748195587 549944375 178347572 524446747 190156115 565814856 990056525 982089576 945914862 144093135 497068703 845962606 859750218 971557281 499419151 141486480 891001168 439087084 994553613 173669812 631213265 96473886 51058012 506995834 913596636 943991294 969381236 804964613 464045861 81539601 846993497 773811250 864319232 974167740 989037555 919547149 738924016 973253045 113452718 566970066 705385280 356470875 777497715 484493917 650669499 755219438 953948356 455826810 430728893 304950704 794294972 48464222 629942683 232724375 167310318 735162933 462323708 547900853 581052871 473736202 776748647 953440784 93113470 475039041 476650207 292182679 360674958 858005953 156172442 190990776 854039958 311462741 957152889 244363309 307300994 768379383 473994193 545740351 854736436 788785940 174286012 793801041 523723991 526482423 459459486 476209329 4456062 814630041 630167827 939710095 101911848 38136398 398034515 634745772 895638599 385936219 756635559 857484836 533285260 677700524 804231764 134533324 465959405 391768923 189666929 810910228 769323796 795882924 810584559 749070082 838791591 755475548 478800757 564211959 794193379 162577082 323504748 754088275 443051277 589437419 360805320 79894508 998932820 726967083 618491044 539952342 649609833 508223263 893602417 28713997 687054935 59808150 952413040 881583698 636075219 835177617 46154548 140541409 513566002 708280137 516809683 787650190 130835612 345590742 567112194 573783789 966005045 870708330 795447654 793726661 953642347 959039173 285233125 266435932 634059346 938082111 87184877 617144048 189691884 505233226 252108063 492792318 149278787 614721748 300318322 49836854 365844855 290217301 845399840 740308654 671337679 785774631 606764575 460525143 847733844 482191934 559937028 950295500 5267877 663614908 553009691 152450205 947283722 490134495 129411628 19275806 779921421 948705448 242456868 480941588 838398607 223716459 167135315 697988224 7293766 564180552 673383827 53156248 225108666 662302103 36689962 909561069 253194796 995602621 239430520 452948350 556617939 759908501 820764495 341291895 511011221 491822865 830114154 138264499 619782821 308518260 470004073 624970716 203514796 543021110 296590395 327922135 334000585 573609078 328986999 70610106 728865283 432731120 973178798 719504564 244278171 482785079 659993371 41144250 769984221 348225608 731783106 338324755 272598958 339529371 816878050 814114949 662606684 630944549 39479179 205829946 539541708 347080368 757809650 927361789 9417087 872646123 217546231 512097870 328382541 292050750 526013077 262745646 105483293 252724875 378030097 361725193 110881678 397239068 44633953 553328606 927972752 739721714 699029416 428255757 167843182 652449466 375851668 535385404 54354050 578640258 152044098 595424735 259687318 636847793 723920099 324778562 859246611 833863021 102324590 523136974 205416918 567366445 284773378 950333837 566145292 125066066 708712645 312478721 155515602 715956644 883600000 489141989 374757479 88366010 171636208 289314892 93435018 637744083 618555831 867459885 771140514 610336828 751975287 782214394 110980988 553771489 655878308 633825449 600113797 585543674 843827386 675595918 631748465 992138414 717919728 253642034 637238367 309697873 166751371 992881838 100728728 607780895 355947348 548194789 516502277 182462055 852438 751049969 317800328 218593867 532239948 625066045 125280395 459611767 509448586 257381803 595542429 516576641 833675471 195418929 391973715 554245172 191784544 392716807 910995586 322556988 387602875 458127163 401287485 639306199 655751755 756166232 482441069 773247323 82094025 260801757 864392099 554486741 590629537 23972055 534965995 846808654 295210196 894888157 781441138 65930549 145780071 112990812 871132570 672540786 548716707 509391641 484257747 528621408 769984441 68149194 38416813 264052217 252807414 770104235 633579125 268444999 317472676 530075986 706667987 112842887 434030152 912412264 460527014 866486374 387724987 830764794 252423999 468947406 570640895 70895434 191957508 406875776 585142158 61641000 172788098 901754418 300550513 608876456 771151180 960445251 277245465 94809450 854581911 784421124 868684971 848429106 358420224 590332382 952890772 519824067 124305713 745582877 150294174 991137369 183637297 388603037 453198828 804435879 880475518 166036699 851682634 755232595 164798940 152567444 579434576 443134412 700800858 920388232 829395 523716724 657590898 827197192 585738635 67275924 791577661 304361262 987389763 102470543 985600428 948325684 719146944 902759606 782750824 963821918 154086058 180487976 179184998 486511971 197425884 882947670 528221968 266096775 323463287 13743533 259893561 169785152 321874432 989415160 909510368 260770503 882636295 347393770 155476453 92940097 145197519 299918371 689623080 946047565 419431646 877604587 879590997 745387526 386312551 251791645 481835255 741323538 288173365 185112215 872352055 955354388 875166839 66090353 548626392 664277127 716423786 835493876 45914349 293717963 882862970 668590587 634322021 837569025 718213766 208642968 399098166 934641713 574340514 747722136 176428977 370467234 522589939 138517122 53119174 783696968 683526365 728880075 340382495 798590056 471813068 594360692 462724379 825194702 413270886 289431140 989971859 701974612 907654328 450276825 303504257 465694263 721294838 533304532 66177686 53494328 713452366 174266465 954274599 346296833 148556510 607519639 795322677 750983903 707179815 75927063 92868069 492005708 976718732 101921890 941089411 492653930 957364351 499291166 799518491 942788880 976567054 821782862 998041237 799272367 193607189 379144783 366441745 528135589 760035319 41573742 649299864 902514379 344587509 601542154 513949200 545191432 655699592 197344748 745118406 820178193 23533964 836446666 252338613 115431310 252257802 479940398 51112533 570180635 662824361 186715396 433140872 369910762 673021217 992655312 649993162 494989042 156499237 290323596 792670611 787651211 126927091 544778263 431275797 769078807 745856926 792853614 331034174 487731416 684021124 255393612 560803147 783670538 773224923 460422686 876789686 611751768 983359767 194353858 762176030 938309113 227984491 404746468 562852641 433448452 183387961 463269944 662502428 110799450 511690423 768199532 861882187 684937350 558075101 752174020 369838322 672857467 693722613 317209662 121527212 252658804 533832731 371783881 393203147 320612412 901211169 691360286 78813206 83408591 634532180 856747002 435535747 162100453 782799304 809958137 194147857 901358393 150110268 931808042 837467540 654049895 512408058 424356194 90388785 250160789 389440557 824088225 668204229 32502121 901536736 98812803 710867114 165164926 309101085 216046600 144969669 599171905 45434391 917577558 110869615 402184512 457882886 810182422 708300879 885213127 202217769 321199883 320386122 251389309 694564337 332654891 923678384 794954644 629025810 132446306 456549553 315218894 545063534 532069671 505355245 690557192 216591779 91125349 591418160 544121175 972852752 340130252 1583044 272462382 125690387 64941821 361875428 930997920 888010943 173999950 563331683 272949073 201085946 247999349 773215152 694968868 715488677 790643491 141287845 486920308 869437162 416621772 664854108 588850712 930477939 276158631 815270205 360410018 634325990 457367800 34549330 481070531 146574498 793133833 805505778 823388091 504421322 924530211 743542960 307999880 383208395 30260260 821894744 697779830 546360172 864112122 476962901 655592677 637856237 922829284 188661815 599888566 406637114 606202746 239470304 45423094 854227140 135337493 885551271 995052285 22631894 28447166 229211844 657229012 55365001 305763877 161855341 762934705 843819766 849141354 192252505 16109879 963828281 44595785 568127275 713775007 393011826 558388450 630725073 899862818 476565181 334364953 658442230 742129859 139527839 704064234 380771369 476074083 709799533 733395170 754903193 627424433 296158004 496215163 513522243 863719485 341052976 304808617 501690222 473965775 496964492 508388376 460885970 751023282 16224941 445066284 76715212 58285034 182753635 254142906 284823399 616208503 60801823 324330574 718896795 659764070 80625780 127691230 184162874 859299010 324482702 444492420 678909044 501032411 7656156 912734163 468242853 443145161 551364471 49673784 666787376 793618682 414939333 899566510 568074847 403183912 236278147 484360801 534990283 432547873 865139241 704151501 615192852 362626255 557582192 55151228 830714780 623087982 259388970 894347043 738139865 325180190 718940923 423957318 907498692 163208839 471175258 80833230 825571 209773695 787581715 524603146 396648283 718647190 432154205 126208730 783689836 695225111 586572885 189772955 736407115 73578113 16080528 797289571 919380004 527403045 211757578 751323936 834519157 369537182 184384527 583796207 270629639 874197386 185121628 182902221 176816497 588977673 437097204 278022969 569934462 340950188 474701351 406397089 613464601 601601542 172371242 215891943 249198136 793642899 122806460 344108310 316879715 35908504 103493481 535140067 899258115 574266614 156208429 849478711 323732653 666191410 148249375 383347387 93557720 406040455 215696356 745944912 927199058 39779753 513420534 522517308 893382830 133435711 305307807 315944808 274829977 726880154 579375826 475271557 668795332 374539317 268691403 882219764 694688614 189910045 889283727 895655577 914160603 941356965 315435502 448357406 338394934 754386635 692003249 364052708 270136970 811926977 785059215 907374595 816195819 468965977 426877337 97772911 631144189 520754652 424196246 711654947 153806814 246059989 750016430 313215101 37431056 299671087 338413073 797014162 20087846 640523449 983044534 955887865 180663372 364630822 691420051 807642492 281038504 332961134 730287291 843102917 86993210 498677967 577786748 929729609 410936303 705744323 465506895 851267016 534966765 992295828 82555911 332980048 985722039 48870419 812632735 686445474 83175898 105489239 365921321 895343362 918692940 499801404 667369399 51419045 890394600 448655040 585975919 485224905 819316213 33101417 513300982 984044053 952179839 607145633 533273505 166150411 747751140 859227970 497214915 44441711 162818327 430941888 946366884 373808577 665330558 357793966 179251923 999621221 139024690 281634761 460194542 712043019 959751223 557774741 21242941 434289267 24317286 400714482 137158000 484810561 486907114 685845145 347291044 73773286 666714913 942182337 304744348 204892338 76236912 754619332 8686349 732489199 359344259 556635282 6964718 799319316 679076677 381423346 603110553 121721598 547615492 702698757 120572716 529436249 302389484 840117258 214860807 981569812 447025039 225907783 548214210 47582186 826485542 895269753 736602807 710353312 154692035 823075771 365559280 615565347 424000584 830132350 352476278 165951188 413470590 536432546 545982945 317587461 526789505 744555363 861764779 994940734 968953273 751319340 784587703 343136214 999451728 745664659 199680439 994932598 779674669 705236627 451979060 925457602 707158627 368291722 538844043 441127994 506482246 785083367 171533059 738360990 322168155 310025495 865755858 858471300 919296540 930293921 603938528 111330879 817416556 369364008 198454887 417412520 550650607 931466942 690569058 658866052 175916823 593418316 154037929 689159597 881099393 456247217 841758362 211980921 524861735 522980656 83388327 328694435 303249063 270552596 515019263 415168758 784725858 651049449 856358613 759593293 571925493 302514759 257462407 652999411 468988755 118875412 81719182 125989163 975992949 514778192 601343183 63181503 162118082 518927835 796184810 983293718 747528038 363846739 525460497 202518950 886277763 798050506 274956312 478630054 768183893 758495462 510943037 76729104 1564524 279508448 311675057 259696510 280892909 707509652 497134979 130924002 283990295 74896118 666250644 928760018 945256109 962882077 662750017 587193326 602075380 249216252 517975308 661551250 225507708 35799490 831287211 204617815 187810597 623922407 547792879 354393445 851373281 81608673 366166330 111727356 858683955 347285679 582065520 314909004 561616781 677109880 405768538 838366407 346549147 80506254 603139638 880801811 525263222 850500949 932411424 930691489 382561452 761717958 734826843 725982162 420998228 810038560 155627072 547988645 153978035 851131001 672719698 119847006 190141681 765010720 282968088 157287809 849112331 219226584 359656923 939275092 460606059 723015856 813567682 441097143 10621121 631365030 409053345 112082626 894830986 631151159 367058198 288571296 110433878 991078914 445659424 258736345 19873959 909918184 529728757 703554497 773812468 406646570 249173407 710036004 180489957 279766224 794733056 581966107 649100714 919260198 412042522 685564417 525819070 460993453 532319443 609888393 974852488 197895287 903677544 426348869 539729573 719483640 480867564 13069260 639713187 394870033 30172434 726861036 313469607 699323543 182205681 39996625 903613409 968889650 518466840 919541245 419416136 616537426 719589036 779220488 717232320 193569537 64597689 16765834 362348844 917603981 638926580 652129411 881335433 684178021 940504691 689245035 965460458 8130390 333747395 267136509 60850552 686217773 380334846 474339528 87637523 455378547 319739372 499510041 192773304 53872699 11051425 154522566 426163109 957958909 235912741 919754630 773964167 310736380 443262667 834800859 720648837 780995073 238870729 639118140 962798306 785027241 781475911 453069390 970625875 990142892 603967888 215823704 963783488 619185117 922586743 501243428 414111372 947054876 319290383 913342548 383006288 233524304 690414243 188012190 865833464 219188753 727110466 417499659 958850491 436998010 72441332 233174604 135549708 856281640 884421603 107779595 198584307 470249845 348718557 626955792 995696551 976924058 479079159 951404783 288394080 188931032 224430604 730069985 152485072 914944952 547868901 417775118 595294115 727233134 995520817 44512193 400552784 872731907 585506363 833201107 110938057 971452886 919918238 517335222 903169149 596134737 899114821 798683491 848743484 457234151 300201071 8862651 339233302 615871385 454921446 879302571 259950202 622463489 518069992 499190855 442277057 488274897 266281367 418107686 829203485 809739985 995996829 214059813 898687629 430589988 842114953 243119699 818700352 968458034 385341554 668596251 64385144 800075889 687417334 672218784 409860547 142135526 816635994 83989144 548662043 992906267 520341139 798013053 809603909 247888327 547362638 630508033 450360279 227433361 756318548 726173266 798876918 943514597 983179322 786880751 541081956 202619288 899256090 531271872 823032689 368426669 214267853 199963345 551421786 209933212 314540814 353325419 318871561 126071107 938697044 934938346 575937094 740860846 315421726 382189212 385946074 496712362 177177216 646998180 256385176 236153954 863718586 865350694 856652560 199281611 162201562 933449650 544086389 344048722 90507583 536066676 37985664 767959345 512025503 533688975 798856189 225434506 884283895 644848679 326506675 717627844 267428124 455759495 638899677 757067952 805596344 599453413 5599294 721715949 658633286 188066232 393261413 39921205 752591620 817386341 189349694 378100138 26317669 565876788 295887165 80813883 270556190 634214772 906659881 420278898 979341512 546497332 627396180 720446366 79002747 942937701 16360870 9494213 822700568 781474132 464235884 134472019 667046972 408692725 786554091 111993012 798744896 54349343 144990265 913252507 649375237 2541341 248090711 270333124 351593465 910043061 452956754 445771299 617000596 853134445 516116604 232776382 7337527 190518030 506637990 761483231 640683153 685101627 996893652 824665391 568467664 390153530 968157468 23925502 769403763 162146678 722005819 339221178 74150791 66448317 268182472 815434280 390605909 857365595 98012605 886320456 141895545 273447183 116118453 120622938 101273712 698433892 874617114 375752304 149119576 870123286 570640789 711546272 615751511 7435410 923626184 925713626 836716889 348261213 621625450 511464285 126206698 962519950 773941407 771373913 937483070 942157577 934652223 143487473 704424891 839481858 269628957 560633792 582716922 490367175 698262418 658445922 734143830 201375440 140417325 439237084 477306373 22546988 82119488 26506725 608866984 272314136 532946971 713677911 775493090 576525423 435402311 515364189 60947527 404462963 631758416 419541287 148389321 16889277 342975614 205090700 29972736 646938759 338165554 746231988 606094612 935127236 955339742 332174925 908439878 419333756 445289559 341660658 294590695 416859290 527359854 833050854 931469332 524400869 291973332 757437466 836334812 14336301 565049879 424333346 49665894 563972789 611872961 503494945 794287311 88493171 865792288 312306012 809571482 69511857 97473915 440550028 495899032 576732802 355676606 518628026 101951800 224137878 160592505 792044056 529272758 476379930 670453347 211286162 620077833 870797635 350851306 269896322 336243825 955684432 27322715 71657613 851990938 947768188 511991160 837503835 895532054 635313796 784260973 270855711 889303389 73943543 426779884 630108296 691512580 337956738 652985678 38910884 822298609 460457254 894088902 401902267 925481100 64374475 540168525 935363189 667725570 917559810 910374127 359452073 357084154 653076852 361514610 188158867 356279115 56849413 825105096 931770250 321029360 8967650 897140572 543041950 690899542 682106894 977674653 568590741 543812565 829926520 826283935 567254420 235201940 376291598 754023570 933010437 467449981 553845938 563837007 191355718 108958098 347173554 990069932 818276439 891366248 326697619 704456117 209314469 304291303 504660210 556023113 197589710 687259840 599012108 80706092 926203905 532834757 888092476 53209768 358944755 960587418 500665340 88245815 274268124 340503179 554531832 73081758 760678222 56093805 306587575 753590532 382094455 507751258 251722795 91188331 744951400 922535896 963094699 269718038 451314857 424461683 866053670 93400666 529787530 807076709 402776010 496717967 688873593 121326394 933709476 715021108 741772976 75213245 674434411 258614780 181190065 368400168 982743770 503856141 91048299 134287365 384661287 330747984 155107562 801402493 123592489 207320322 267820084 809696359 421706517 610752950 975137847 126439989 116975170 257589118 302978581 233431912 358438483 514676004 729180004 791735008 767905608 75102949 439785755 415152150 164178038 260485215 708215096 927957974 642671523 760913065 435817680 774515 680881111 394568461 606652687 827891386 48880325 645899232 124300969 399299749 676473497 564163902 195079731 636115835 346795170 92309402 795108625 75442658 694839020 45413206 68176404 169724267 635299580 579500067 994822256 191763174 148032323 98553937 95134015 398315811 485975019 63280487 479720521 653249005 407667260 644933737 330463376 774709876 631000389 395944532 867264450 526205047 406678222 666925743 402445954 367756260 962214395 7489509 653178572 258511330 183945915 200253094 259509497 443920221 9451741 688315332 675508170 494880764 709690017 29691282 748528278 38790308 25341330 486877119 799506050 602176517 429802942 345027361 157225730 33050430 888228571 916539518 201576454 309258875 803550375 333372524 267168082 511978453 686217259 441866811 118100000 998147792 330466357 121406625 356773072 871019420 901319043 65016517 354692543 20273325 536161283 251847059 390933371 476334658 531170332 140913979 862043515 399668071 209202228 651926703 403605032 260227829 128765101 379938491 69733442 705927141 412454695 849948244 927026006 282592941 848632580 312244314 958172889 224441492 558084626 776099428 924255540 476832704 354647998 696138006 766874478 399289320 640299425 946345475 259389838 619421710 935036769 235693538 168050168 813884256 642001780 515179492 624561697 995960560 342043983 852390774 215765660 85166916 842596649 971616383 401852385 590262104 820643919 166942621 976597249 167815574 33190502 553105089 989401596 297302897 315727872 719062833 396287448 746854462 15631286 455022695 664990418 142007461 66390226 36263665 521554181 95975990 31674155 92198424 622533808 373325446 394917628 812188329 38004300 118702799 713877518 706480969 637270537 443667918 606469375 560649892 90139629 568748681 847045963 652575628 125623187 257965910 950019061 367934520 972511590 590309043 563543447 456950144 226210700 548358907 607982104 303873967 718883179 42416500 587965464 488203981 218592900 526828002 185629933 314393034 562164290 877399922 148231174 52992644 987592909 964562527 404841555 42601105 916709304 158652628 171787006 335566506 647252142 971702220 160710785 810250352 969744 378183446 932597042 895258505 373076664 405794066 39470454 50841039 331220571 623416152 379868066 493187988 167799770 175848304 258494632 791001056 845435115 879428684 985479704 652529138 814168747 155678154 740344062 85339077 488427095 458244338 357232848 733953701 157641283 257677122 528851175 822379648 740099341 571397359 746093434 73484986 476703300 36507933 454325426 833311259 868001550 368754454 115608719 551967048 72309078 201718462 747257802 914688528 489598092 584775443 465812643 954153024 60093255 539386701 478312560 458316511 183887487 333647977 588759293 989778214 297457772 62542206 404038431 683021940 420888405 149704419 468922954 668721697 55841659 314311181 924452266 744487462 979698493 997345985 982833827 289165238 237208743 503291275 912437965 590045267 192061554 324175306 697036177 786002161 178590219 423856389 913040383 494719530 375738271 242545284 763741355 789822701 222661028 912589626 701595049 351328604 490842316 859131270 602013124 831640785 377838490 854659171 836493062 687998506 474323694 758748881 943421727 106427386 188088942 259565388 687733964 25169373 136052416 888979330 461604149 884634144 615551825 421430993 81534549 704724012 364873991 529048139 68512803 650408248 845010011 371848404 107787785 645339883 984539693 159909836 730568814 506735462 520492188 584462913 292788880 327760169 916460390 36001227 233613711 696806863 932607842 251579144 616539575 349585943 511686440 400232934 741541875 305212107 148955858 978973592 453225633 891933020 184865838 524207594 897875420 379315972 643806191 238748474 712899003 898133657 659834959 265023077 613707229 145913994 550267296 445009425 126799800 392408307 709771703 787010567 209741520 488568324 969950786 468214949 639329539 233389251 12136919 799886456 674521368 159217697 99362859 6269522 304888730 903691188 613827858 812084783 210045085 891625380 481399892 635485747 418069299 877500264 945923244 466781401 770305946 748666473 324632699 17081705 244412170 887250100 799631824 500290257 751739804 972508753 232729547 492605146 106351529 612508177 968934331 376041861 553008587 467575988 559028411 27583255 256666636 511556158 543851629 464171573 866770902 860152444 170708900 377246765 364864343 131358042 423874524 108506297 175987155 942287630 221043717 447944380 833180309 210035226 897645705 546565158 538057701 554629077 28794482 83575773 758873374 338213960 558046631 670085238 602558859 724536035 304588921 466259891 582306522 393604279 582760579 919437237 192774476 101004914 480141625 709877341 342289258 756094225 535538125 966535563 432820932 925310710 348955452 479390450 226669201 602223756 746161755 91789802 868249157 906965410 176432055 227061012 5148658 644401226 519050680 576741651 230002771 784086388 609912234 85947208 118289765 881007515 494798711 79483527 74215143 377363320 911779865 53683292 916470444 398063987 787679625 784050397 789499896 539430631 658323959 280909647 116082186 395052517 248520434 702631868 803813001 42155175 232757957 872084781 376898118 108082156 797969702 717678638 972852342 234086657 411973282 889558566 585144053 291669533 981032994 915436767 94911422 284808625 579404701 925430405 712094988 989336453 986439946 412848168 155584364 538864743 819793858 683184481 87154625 434498607 54056561 638962515 635390011 788833372 893202668 974436580 873144787 369804089 406188101 212959156 893712259 849016434 339228022 339099174 418034997 806020855 836158375 476143406 573550512 977312376 608377050 310386704 896823523 96075823 56343261 523969416 228601236 207990152 355751085 113957714 702769529 388118168 884862742 441626894 394737053 642961376 672268192 307596204 332583510 680316094 144716386 942044493 81632102 616649807 570435532 368617136 691893506 521712164 727740750 741791897 42514902 479457540 492824134 370828337 77670544 632927764 931798732 510769627 584307094 150362270 366119999 655132866 470299862 402988855 742292653 124019445 705960666 199571728 295078253 908088625 804610098 2287193 874995374 581062110 764509348 456951978 753031658 538533383 58722013 871087708 4613962 127183068 996036894 763608433 117392324 445146276 478290161 245748560 259624807 50610806 926560220 618039403 453050879 145362592 248728040 355846556 921763829 99576941 149997811 17301038 343264691 536923996 288017909 973074739 295618311 110619515 514353828 133087014 129129239 445680949 27977724 146911876 532489155 850822112 694743396 193367823 178840858 267582545 390170428 316216220 693049884 755871000 505593517 652815433 89772913 96507396 312713912 515185913 433254320 82941419 704098325 670145969 188159872 282379511 905876860 540168473 917402629 966174620 646265441 147181957 339102927 381044479 62964541 225020205 124109445 680267656 95652938 633645913 167240098 697064514 312737028 156558177 617809379 765300290 999293938 330961768 678318140 340301879 723778224 198415592 955062072 188242505 190531355 920205565 494598212 345607606 37422588 890476175 858469610 55466291 661921280 924534237 225950236 627868097 106940401 407265701 711908684 400095033 425455104 433366161 133970546 902320924 167536252 887660837 137562850 520583253 758180158 823091035 485903978 399243788 919662241 861939864 995131595 882397304 62179178 587617328 345423514 749580501 720629266 273769167 154663830 180952879 661645564 357018923 383077654 556957467 762676520 281945854 167055099 953401471 330317720 265536329 196395041 663798661 873177829 696905904 538077182 692409128 961362842 827950407 826231550 404331203 51272668 937465423 273089340 121727751 472578755 687335733 16550469 825868177 446593877 806760396 21583124 986383503 354755567 127260206 14673387 581373105 509196885 856008161 475419873 256127093 257727101 579775742 345934030 103634379 305945569 768812690 780731192 501629464 465252480 841968021 789011548 157566998 303181362 672182300 623512493 367826214 607436768 886326872 625112903 638915385 301514159 143996601 657398563 440832651 886405930 107907154 304369338 446345147 383679930 542668920 131145046 198052273 966924264 386620533 163895731 739670818 628657532 722142010 987666730 277173634 663700266 302930474 786785420 781529756 410907302 252955352 160367371 497068078 639754201 24935454 768415170 436124491 817590388 520035691 541783805 642031412 66067985 325994582 442033354 116795285 288483566 412658431 367933599 918348679 783480331 869507765 428014357 525982906 910119472 885759715 300053249 964101525 82250977 881521791 148194919 803828280 619329072 176327400 56209101 328284570 315733470 694355644 334445999 591416007 162258510 173833757 455324588 304358339 489063116 288635137 350542915 75606793 615732601 863886983 137047547 883337816 23239489 80128870 456340018 385898379 113701358 650849424 490429389 452530181 289180584 957175773 422377653 568155517 125450375 293531872 61143491 19864790 324508281 6836647 244230468 267986841 447644328 540979303 866176007 761196808 450366372 348698262 925189504 733797633 326447968 143334339 939203247 162678902 191831058 737626183 853313332 85155706 31656083 760894876 268534280 876805603 661489787 269688760 340219549 294968893 502782964 777788307 366617913 461762802 459803589 949532664 232290411 848794558 325134001 22706132 232647146 179146983 179305443 657338869 418418812 372683888 889705850 6988991 367403294 5854494 113279432 594306693 171194569 731200442 326914171 609653065 930543895 154014022 74203996 719263308 768430943 631288336 732073572 548904708 384937234 528833397 453221718 667649909 820435445 814186108 766066119 443667404 373605033 59609977 312785441 736719625 638741269 54577495 226058424 554938865 929191413 265074297 278226655 980186756 711623261 767343164 566918100 105368904 288963726 600982411 764286060 349385409 102909335 559332921 846319590 126302033 721954097 636296028 883072823 699796704 460407001 922293964 996373463 58984118 723887132 71953415 773802251 214368414 631487222 90925756 4812967 719169345 45113301 131079263 859738525 466844493 16236431 971653613 358268874 322238068 555114072 941592252 584319377 419861846 439564875 894992792 984923358 596580974 270311171 8864603 600228602 421694494 790972398 226634771 677669929 920063793 200973009 323702453 878249377 984334419 968976073 470016564 747585092 75858247 591633752 982320055 113020574 430803252 709694796 710811093 929495509 431453342 762122451 128489127 221692827 37055284 404608958 896032902 876995916 293913643 140954840 253165538 426516789 461917051 700912288 908165003 868477885 448340072 697373856 205298698 597453879 584412524 438402093 114263181 553895575 263322937 842202080 431650513 657003686 580645853 351886190 157566798 836226307 945896465 830212944 820961578 100348978 510901617 368830965 926492307 777590991 730007222 874616058 134342332 908615477 49797112 162932372 894446015 617620725 122544140 35030193 742613372 976328871 668966311 374380648 875433705 995217335 583348954 812339402 524051584 95237515 220954636 118369395 866993268 879424115 765197974 47442473 707652067 218680338 567433767 708039453 826094744 877994757 931348450 792164658 112024949 692752388 890035891 124016507 444369992 270433019 609164956 353124427 377440477 244499167 967742371 451725281 245662253 341088861 176158648 488218147 584304433 33124761 564589809 594226840 160063713 125764089 799254308 90891985 25106574 63355070 164577936 890791356 912630221 23696502 755710541 62998292 591596244 7379909 447808465 865885148 538536444 849012994 755198981 520513019 77861302 129566921 789512171 637973794 729975311 440772272 254205580 422429274 563031635 48764559 712473183 413050239 173886561 234618828 602186925 416496872 113412998 162486437 529330515 590243349 175098162 28979051 683805510 520974841 734893598 10496666 102377690 243611996 363423033 266247901 138401508 772691661 125813380 327670718 458898484 263193027 423111823 785334059 968179431 571692337 938334486 456398721 439406137 387250517 420712192 561172015 995534472 412963499 108759768 142352321 792118435 942813755 647318992 350714768 484998083 726059820 646057473 483917396 88570158 676323659 794760216 247108966 373390858 249625084 720159364 229840100 125486664 451775720 34317234 122554489 693922271 145407902 482917151 318951239 276591305 486727608 9055153 741634800 12294148 604209944 965747136 895896565 452940509 3701327 989002074 188530444 538544020 598235554 956484673 664776611 696216883 65443632 131943200 521638071 943931931 324606745 779647589 629739763 34050816 532255374 573739025 989877937 618993957 163291371 678475240 686857915 546749252 813625697 970062623 318081742 427263790 523175694 231464058 320125639 446239433 315585123 845046001 725556133 641613780 376500092 336455791 409929966 639763191 908509826 512024911 137204411 848069463 104920756 502644141 852152636 459080443 572899077 848824291 812159620 877138362 971263338 630645467 894465096 218283713 556323586 852935077 890605699 421889896 535338047 478351109 399611202 335627064 847939261 138608640 568390290 999811637 616849922 355814620 26580738 716306785 443699335 406211708 673667595 195347374 251927423 876172202 605349616 499505038 584912853 953231978 268427234 614317480 940568855 475226080 432174109 950040852 119264319 305533002 291104349 292649119 136387865 463573740 353703992 41975158 827611002 180425798 302702322 554260467 701982503 131112640 271185111 280346931 236140262 704836482 562018083 969767296 119152974 512532411 108155931 527639194 76116471 512950159 705263252 926655827 971006502 150775077 921950182 581436228 834976762 728565755 878258512 501192476 541495402 945721477 825425757 769533562 653477786 108320148 755417976 874342504 938008013 705951790 26804626 175561514 352975796 914448192 278691242 334687255 632822962 924879133 261240572 145371555 386218914 251368703 235027867 175499742 451034690 433734950 676428330 927004333 297472742 989293536 22629739 90303468 128042230 156465472 538385959 274935913 8310619 684202740 688466693 740257111 366945749 162939867 260340829 137619410 374556609 419722854 806736886 4120134 553841608 942675295 139040923 57947669 895891214 507228587 544641147 887404741 682090452 418910184 691440957 254298371 892138448 91801590 444710354 363691807 18779772 364122911 2201404 906499123 718219388 733931778 178754574 327450475 840260413 386936801 480309202 132844096 513664403 340784229 468835816 619855772 425011268 69653410 627116266 114482035 952073378 923349949 933113494 731382135 251211219 663919382 993910263 474556041 417261920 680937550 131267517 485580387 606107752 464582223 816560553 405095947 774845785 379902857 433352040 831152328 907501065 577507330 166413761 787930407 616564009 881519782 912496890 441963693 59769189 558898289 654988700 839157854 687243527 728650403 608436124 250788766 120999387 737826634 704262904 952299550 594956178 239785867 107244151 180375137 19866184 336967334 543556288 599922812 31210800 501981584 587965059 334379010 720838752 705798383 261176671 644002919 209141870 501437609 139392351 907569392 416593499 268424770 577479506 247925840 481956437 271747033 336599032 451028761 696965760 150056999 636709894 327362441 329242552 558510546 915523731 354750332 734310458 272654430 830039406 547814271 851324705 433782312 355623919 528704569 235745176 270526261 819578968 522483463 351743843 783987674 2163484 131862317 909713725 11015303 408176707 308722984 455068790 475207187 566890254 987342876 563090337 991753014 440808532 224159150 864291182 809563109 565180704 765283970 309348528 752408876 58330136 379638088 509151078 147418850 454856879 284260642 538390926 283870754 975387975 776138387 349464267 876710891 998366552 393828601 520921613 981369213 206285223 418304172 597294661 116642646 694345916 547484321 105516762 452435957 332652137 78344333 780004512 11924569 553806288 2761166 213468163 386422449 376370977 579430166 579771581 367597376 27396255 95629997 248108770 780698015 316879043 463830597 310414915 990696938 613326664 897061419 133832858 708502754 17936497 994979167 821506368 567826313 532766912 231704033 22905182 185970405 350104227 705019710 33034660 603392937 287828670 5082011 176547836 897724657 255896852 179704689 414462924 26124356 692960789 746927051 384767759 263124167 366880275 334210045 246120497 139641332 473606952 993597651 908382854 450906295 439211440 231588322 667102793 800036389 77995579 664484656 878367675 142021891 99765614 312928101 955383930 138716009 900556743 912839546 809265791 661389187 679234476 549939767 921120843 621359980 166111532 266830006 492340154 933830442 128111406 993276870 741733713 893311456 433925707 716768082 442445122 186583845 560409770 261460403 40558391 434080506 942828597 139522240 779693794 829517296 382128592 572057045 698802163 970722715 286572560 35099922 353558667 717821497 994584623 826990000 220098377 636873444 61967629 766712207 229369340 436641248 999994108 732983933 654319405 170634691 527587274 738813292 388742979 394393202 326265341 160919896 852276915 412546146 402438037 129741772 883435301 283471999 583659151 348375038 588680539 342536774 733605625 547659118 608004927 248377084 217689663 31452606 249764944 495131671 212705159 712364923 354253283 773559235 430243954 924347321 906773549 345234734 163605156 735490520 619602199 436784963 830430092 533513118 268855556 945499231 933330380 178073134 842927770 811387986 64685751 359550765 986851049 751723230 370113531 442664 293930948 547070686 666056306 519952688 540676376 959681289 138869032 863517058 877503902 615460843 960262761 349867683 49825710 699491486 437885505 917661987 919347074 981810945 623313458 188402406 948655734 878450222 700941832 129986006 117135136 248317792 603742700 848478173 760617351 91999116 2295683 815888944 396217499 929925890 942051838 405851705 129600181 432118572 835596125 772685460 389383086 379036354 420421358 838964548 337911732 933771077 315811636 43056158 629393258 156215629 461515695 923364806 296159982 920590953 242238724 35515597 283549420 826643659 253924883 591405649 836161979 436329839 963931291 429920927 589711478 960528364 700951271 523890217 916620056 535625047 239759140 923251888 348053011 610940697 627787587 567456058 438396251 890383407 539866271 515071180 66177215 84278030 478466908 647758103 989624882 876969618 434363071 33785147 761811621 72662946 741702946 669556095 65907082 194768441 496217551 881677458 360931489 169693968 77982161 856182051 88674559 462074241 159050610 334285234 910780572 954331697 250742508 347045133 801751222 289256896 363982144 907366728 197242389 434151714 484917295 383942611 6215264 908547377 867407709 317800145 443386967 14402514 42053394 120334585 370943552 935529532 853592648 208136359 403721893 923857538 538821688 247472636 518465420 389193212 202768583 210895675 8459179 333758365 447824062 231009880 569665485 908890818 235946761 970219439 288216562 619565884 457216008 410272435 951279385 859909890 877185461 511209850 97573535 387646148 681328054 91738451 143461643 631471067 547814432 854856445 224727334 803324471 214197285 781911201 395994862 4310699 605469141 75861341 370987965 79045471 819433541 137048122 140535686 58894844 724719704 458957244 739697927 422576873 16596977 611680486 724607368 128156646 710766548 581852067 881694171 709658736 285014704 991896295 945780401 165424017 896538396 629272957 595151962 469631830 549749304 561101246 211803353 187291796 339949185 214208077 573521080 58838483 578238095 984345035 293545338 550754713 874001429 507074868 396828619 187925969 552910877 631624783 41544421 827807001 751355672 346557143 662073682 644413808 605347967 435723364 863807380 14751811 800878557 863937419 544113420 51277392 999790149 475140602 803861107 132954661 474680739 227101762 485024827 857906903 35632249 945019111 504291372 506907056 740274233 313851638 119987681 43262832 289249400 386436944 914791010 998523372 531631520 648011908 897925619 68852853 863856430 906665032 571644384 226164331 419030610 58085550 489415558 343061242 852043412 263293531 882198314 836712340 43597205 224130469 512302510 538487515 437750757 932524080 853608361 367620869 110272407 278304451 888485551 547652432 626250854 730955036 11815144 998741081 983797918 227271579 589245996 329490459 843816751 21743986 926299912 200754364 913700737 545455496 900606892 154515127 172306030 664054728 80036952 589422677 50869749 374067731 791291486 3473581 387707448 541453570 904548475 836674309 839404353 759683107 768559874 199372739 245958626 335368980 829442825 540497363 996022916 471496449 41025807 873059388 755481461 728350602 503399924 607682161 639052550 894895694 515652540 706617457 573013729 334455829 803167715 289067683 642059589 923253860 918536570 928854700 868834038 218130178 350346654 293278700 991788783 949171075 142591951 299864268 641210493 560649689 838426053 307958590 476593927 511568766 459868572 124785615 143955102 65625159 775555950 992571593 563910971 778586837 381149284 814872432 323647585 728262500 118599794 704207516 546124191 159929097 875639179 490312189 286917587 272176479 133363756 454477302 213518896 382617157 794205275 213461024 880772236 735645644 975220702 923960142 947533229 827795119 816025054 545858194 137274977 850066508 317450680 681253721 65914902 925041176 852861757 942175061 572286873 63338269 183700223 982175534 550855535 315919464 626566505 120542109 82329168 708956261 235032370 137798927 277920395 769398569 761882724 559247023 155513863 375127577 639842252 719091248 644571376 555703743 178931368 387273113 772197496 360915379 645823228 386286555 207501139 137732741 902616456 573760858 735413932 287231780 36007460 671313047 554440451 586069339 495280695 291150679 225532470 770675860 184075549 519770229 90926650 333324719 446634669 826815033 274685331 296154408 591832025 851267844 382076404 834362954 486367705 430497435 974199082 581891035 693062660 251298861 849330423 850865123 748476132 1671051 883775737 995183462 640728175 206795602 331616291 600840878 400457094 567990299 415871632 423962338 552889979 892735908 304045831 846997497 586637469 61252043 453274632 314270682 455405785 862620896 797535175 954709547 379597116 849923189 116013066 502400356 114897719 709468420 471891183 891181476 175506443 748906564 657693882 297244141 437414126 158495045 180121733 550046685 726697763 239820665 964370515 435543737 310740524 758178721 812526425 625757280 423645047 602329256 537970934 861285951 850025838 913090827 784150080 287346778 539231008 443915352 390510752 749525933 543410603 300978221 81077144 68952512 568115923 380065735 629493888 719863282 418061845 652960834 329292671 408937327 826024085 813715741 66790156 87381429 71292513 565448141 483898345 350514651 176442125 460251576 580442053 827611635 21064292 71568711 603425280 820190817 869844703 70148532 632979314 501892134 801561343 738106116 151761239 344853729 421130876 129340015 463614983 119059416 911571891 904208758 736178123 584892727 607702310 956005683 117663456 302565 879491000 243922498 180948235 66177479 126101492 964841315 60266223 216814591 895560650 734602110 67037816 921389602 884817119 249613854 832603368 502737801 670342149 962164005 732395961 583401437 23711880 326363687 177287908 993131413 749702343 196390362 696152742 618713266 563734830 956907270 262210659 329694748 258324648 478945111 631944985 358740179 528433663 933593181 839923690 57713881 188841116 234573663 395404153 746530170 655719826 558554126 862110354 875401801 430349585 85169216 309393383 775502413 666705893 113885002 108946364 913414036 673200894 783232382 165749765 676077733 821288308 367674361 676579521 284045598 616167407 389173442 370170784 626580928 765208004 453149878 517699738 74368175 9634826 431349775 144009213 141424672 851013293 800258209 702038944 524702891 361328558 415927791 652197807 976750018 913722224 200119604 764050831 204916063 283772066 532596651 443603817 741226305 743216191 91084988 164902577 906841043 554205340 863305249 972027553 621870672 695559201 20278318 692762580 847574191 904527173 46203194 930963268 224417788 67439339 408863851 698299493 113810704 669324705 244862413 108943148 13466425 306497776 958784603 62395602 79217734 609200595 293231253 704345252 827244777 179993618 182737641 261584077 657633919 761211380 270176067 657669345 997731668 951937732 387263762 205725125 844949068 482331600 749934082 536441829 522438413 413034803 605363466 338968517 607660992 307919665 959720935 6510811 657038371 601665451 396689107 298269964 146769168 462002175 345629529 454574398 382459577 59290063 414471224 635907442 951242100 68229892 606339799 392250563 475349667 61074190 752178023 53125275 696741529 239469537 73905819 696323318 375046024 658258309 362237628 476114556 117852859 887711934 641864128 916642065 18178808 598655301 120387861 29064411 943495285 184491337 592531767 833131488 375943561 17607269 952559234 971375847 90744584 430394524 202340534 874776053 759577154 646788795 96484309 157692368 66769625 714260607 703758905 395183216 943335765 511865154 104234836 415492643 784332630 316276642 123648376 58954345 316427387 972463434 100867214 195206105 847038198 406809866 575607393 474095329 98089154 296646322 120138195 974949265 474708608 286728610 325588691 414628572 407870031 174724896 116909887 984276253 423216919 557125890 687150961 481170917 505278731 725461901 561980915 338795358 102863981 370852237 583327849 243249124 203219904 95727094 294400417 765187612 660579319 885381909 602571733 756528524 959592473 967674187 654398194 891425437 205387731 212217617 133393976 709406600 340811668 857638799 603127562 990139785 783080507 470331897 632095302 834092131 179428702 184068784 810433172 245699294 852340563 580974782 657043480 670313992 243935759 856034732 776463328 518588574 960337546 598758127 3008789 355492771 560070103 132132119 518192574 557141598 996421293 752346247 389403413 709087505 592572741 953074324 625618503 905687829 38981608 9530335 510589820 559097051 161021798 290573437 829897628 302424247 362468402 741143756 670934789 777969214 525574598 859836414 565986473 373437174 229218000 799723977 359298528 855022811 329308797 587594345 469980265 766909483 553025452 828940567 963297089 206066343 423610625 781174063 138010016 563135727 853644871 660471210 692160314 473282719 793147534 292987002 142262561 563403659 943341294 187011575 687565852 89730668 58023812 263176748 355802860 250194645 163942896 909150090 130845534 787677700 626334877 650816379 196308232 511936540 712869623 169659057 952815580 909281981 821598399 678237535 709919204 967569871 184598910 147583749 7653573 194055768 492937841 393767274 844644479 691522715 135862482 655665763 391887806 843020208 229004898 966750005 830292104 440793376 118321293 885808058 733325371 88187973 923468442 200974221 712468058 830529509 559802472 385034500 366758929 570511572 688784640 121814586 30756538 212264338 848415838 814080596 591611533 656466891 898353421 354139738 803015887 899461347 891329932 903224720 47017524 968077208 223061269 637565898 191652259 153597757 281150585 387583161 977118585 762636589 840740472 433654428 145961724 520263503 467277243 792807257 744560769 258807779 848456277 572643845 543079845 23875298 454507136 759608060 948117158 558634297 243274650 397284323 988517252 9614813 220071874 33555020 332738909 358890867 810227786 404466095 345202278 27125120 91377385 154457386 528187712 791849895 284299986 546925426 464741364 557095033 837169950 940599031 794192045 361499368 52971942 938203689 531497201 649053515 465881938 536450710 623900431 149400925 252000155 909466643 405297104 5701378 765408909 138031877 803741731 296638990 971604379 493562413 428777633 452746602 127185494 615057536 318702522 568544442 404235159 226656797 814608930 749605906 362159243 155112149 634573741 116357256 223451740 879600957 604236009 235606150 238927849 368175200 939941267 938717397 144959231 633885071 630795164 430002777 458654795 42324029 3515563 276689496 986391562 151654755 617667952 873803609 213823000 677811566 899439351 643479456 208913086 909419186 450329784 129529016 903186402 765380608 598237329 657935350 36437936 318757411 238379530 697168526 414902619 626845747 965983064 966465955 743758546 77820571 889070176 427090698 673534325 524443814 790719220 474866659 340975833 809070876 660994590 187013770 30498417 93035563 83840044 31566170 140005913 411942237 794096027 260877305 557548680 622184479 856200096 56838454 657363931 476355574 372804018 589732982 879015933 254932590 368665200 639930175 489679333 728504865 347100665 504304602 930466277 512091742 300694477 152296242 836980427 337651276 373101735 32459559 941679199 124382199 154959417 729721246 335039555 462508657 726928054 128124798 830130184 264183883 664911146 463454651 843548704 517045962 781248586 951060713 881804359 284052688 809996113 307548597 722057696 903658455 791124643 449138775 308622051 233614659 57894877 207245855 272594144 611889588 72133519 151450495 136458712 246510688 970564453 336647992 333034744 701552239 903725426 649762670 666799234 636045410 232515510 455935652 765224866 709168173 70379868 144936622 514199833 917238045 396368292 184549601 962405422 195045673 307096829 944346395 753383224 643556009 213111332 737570024 952997078 895704917 886388121 727030687 740891671 145906643 374879956 527214656 816744724 575930858 124465885 97495587 52634088 841598214 359557236 252568406 825526291 36459726 249060702 469877892 455091910 757910641 85738500 144478395 220799259 975752443 471218492 610939556 198666931 598607615 370443877 421484164 869508947 662690273 307185255 452477512 649056710 14851247 251997281 926985394 121450181 430214693 159887245 93786189 856682014 366507430 334228481 481931631 513086918 568513024 582629726 227364447 585295945 890777882 799366054 727952562 549694279 378976688 574538439 326138766 900525764 543747293 363633664 470615658 342337244 845412010 834323518 177431690 310803864 15547178 40942138 173351327 560679810 279584655 129707266 263504927 190393304 66393125 137205508 897996744 634572495 478663907 295959263 829481043 119025395 772204796 547149795 132349100 828477992 321232903 997751201 637954462 213282225 45493381 852927117 926814472 525809720 480218079 358746211 124124482 175521946 5878855 958746602 831972823 832746117 898731448 429068912 1872764 846474267 298929862 357310469 421003525 567899821 651340327 320973622 546289986 692741050 139561406 9612048 652389464 792533589 204802208 156516719 169294109 846096751 786136693 408111251 487295611 941820932 755806268 709463282 315048907 891330651 980264097 7438737 752364742 810217959 88119618 528599893 11752627 129791788 287326447 161577708 707794452 829949499 74744956 365103779 685346206 621996921 302267039 637069608 684731460 264082271 95836137 125743691 235788944 15825166 731223762 827065908 772305589 552112091 727554925 641719901 735916840 205818101 776996959 731493422 23289919 387404310 818965405 883014320 736589632 430319768 905356975 868546878 599954664 426306537 777796687 927004620 224191495 947494100 527165805 286576518 24839038 906877840 329835738 751404689 152452568 17166571 856986020 175883387 997512384 972951670 795410907 257994122 367387420 475096265 128412775 885646094 754546811 397056389 448717590 372456670 652241320 747641108 346691015 304748424 487992758 937442753 338558831 948415497 600366609 619077204 903805789 711336998 150867215 174065758 231603615 122176707 70207628 129953777 426748264 853392952 396051484 415185526 785844232 466799050 826765130 371148682 755238148 231915537 681134584 235646106 363619330 175981108 425451863 613977929 749284489 79403594 242917752 889590433 21101543 884895518 147154402 221833285 205475014 890004380 789667642 166148573 211710440 140448281 104747816 780076580 61955505 742410440 551608675 426167715 329799848 182827990 388247446 338092508 909329556 867710385 339744588 811192886 364378169 266651942 734433057 822912374 172693429 846574177 662314878 284518773 272257804 741497802 524869218 977227097 636829730 619589394 402919520 580590191 536892536 272319370 582151650 461398803 749380078 629863145 587551705 773973954 707995121 162877227 555973301 372153654 234423907 288953311 780603132 90424262 613624481 420826412 574748857 163996963 127289920 387985030 560868766 710360771 78825375 822341786 762029288 351605689 929373837 872568711 39512927 965225366 572449341 715628432 753145238 149612651 53754898 217374328 295434024 604475782 633186249 83351343 542512521 513812142 786065093 862539836 713368332 357861900 544323553 190534517 196044544 516374776 182981153 529996047 366447456 573935719 495619654 47843545 154925951 395268404 995315195 303602011 686049584 799252008 295045886 684506319 314032158 768280448 381605284 492999550 337193686 768937533 471251022 135868050 811879441 568286160 297276886 458203153 814114838 365824350 738380106 712159557 896935794 71811385 83249489 575515353 616285432 190815589 888880108 391970449 458923204 559492289 723189635 732977796 898642336 989157377 909858234 240445392 661841467 203082494 641078350 770808057 260061412 987277119 910088688 450139120 607585758 444463371 360062208 646830410 647695292 319980616 906522435 447805631 374995267 742987669 162275637 635101621 625468179 189834373 489584702 220346260 173362322 551227670 25209700 877324566 988118435 818327127 343376002 754782168 720700238 110570779 489682675 914508468 818487392 272814105 780178321 703633370 670006500 439880658 607803568 270536508 875861463 178384882 209042724 32666983 992789520 208098921 72809081 153090971 676086906 898177330 624898811 496730852 973535448 807044769 955160186 315495454 123946152 543653852 560534442 351110433 326943366 996282074 563488936 921073232 726421776 790708233 341226939 440032074 879183024 438531064 809364320 54717130 7716521 965938867 588567672 454099777 817554699 382055470 139841993 844199589 687954798 592309875 886820590 437380233 815732057 962560438 694246454 224967832 618099184 572767255 90909535 714171262 339569349 222293242 210085123 197047589 9375134 393985212 277904037 26165909 842579597 607762571 706008693 682181568 280548207 408078719 846668990 171788708 872460316 226551869 214082959 409621674 897032807 296361138 35581319 7961293 223160822 413867829 285188897 294385709 700544194 297529911 145387683 134881187 496366420 583870717 491838636 559803351 211562966 903957684 123868399 289894325 257696502 337984831 787932106 723288755 874062261 233069405 700204424 669307849 486251730 824683849 872488399 522309140 711610070 518362507 101996976 394848310 239690035 331952996 728557958 545845889 116428986 44607384 711661983 36400890 661553880 206360675 644137764 719519302 165462866 535019126 755522124 228248535 294520164 791862917 277281347 789603729 123636875 409645877 51597272 510283406 567734815 395919939 708831518 703093946 439753350 509186531 933222575 888347110 945800964 353678080 592160270 470142277 198346372 100665445 240106733 527607170 630922449 392475229 365193403 672305338 816856021 915965689 368854599 338444748 195937076 78488955 754244185 267245316 924828840 667764740 938651568 535641648 513940219 841953163 660339011 377016726 92889000 520901770 273443832 768877279 980715678 239188805 734138554 609723504 419298851 401803142 562678585 282917491 525332433 245867386 166974948 858811857 240877112 679466547 225089371 181825676 579061309 572689768 472591056 824304972 418163968 892418788 132215856 237618849 150396575 762416136 331359891 752445353 222033088 277161658 843589496 345342769 235586121 989463311 354162197 490185931 887229275 889554889 107278262 926777994 692175422 48513483 32551796 345413163 884252520 440669984 460099942 520450204 268083396 867672644 767508338 928151735 88008286 621846107 305823055 106374527 482891343 756435939 56665055 806429252 747734954 883796237 873305908 483331424 480310679 152335849 352268963 191891673 954899004 9602590 314326752 617106614 342771006 518940781 679660307 521718766 263214362 350592837 456782589 266337328 832183829 320121010 373958934 849810309 982438591 453286851 44984511 648009383 113556744 170965360 68255117 254418252 503323852 528691241 684408673 590455419 384586888 692861898 939531961 367760752 702588024 896811095 655486063 749368210 757237726 153564943 34199943 956420113 825533211 774413246 112207983 60711690 464400725 836850895 402477181 364086299 403266274 893404689 164398616 236066727 50622639 187788008 506348587 960157447 831507494 538203359 202213159 302472094 967367342 394145554 319023307 475061719 182518610 244007825 278317911 644250287 497321941 142866250 432839819 682125759 840898023 246592180 242927775 62797999 983900990 536399843 693639621 716541025 962810882 606987335 185798856 984979876 529736069 574602760 700993271 847817357 635533169 302751728 867297276 983062203 539386129 698570355 799102462 347471058 162766031 928030206 984130506 130712805 714639290 509477838 583180947 614016470 373170283 378353676 157891342 847061729 756233093 84926922 451233255 722625096 105464369 903523208 818471592 115274154 435609391 353672591 916008038 657245391 270881932 12664927 830156995 912187240 201726623 927507112 295478859 603980828 366863882 404857843 335471028 307295447 754228712 2701023 223436124 241198369 60852666 86535187 427243065 958841725 28066331 587203184 260890413 651022580 283997265 797535695 976122663 862447460 228836519 241008298 862809378 429879220 400416408 588227468 104127714 800158266 432098963 941006231 637152482 56819504 268345624 273173331 378999503 786786106 713559784 865787270 291979585 850555420 200991822 563105641 212987243 661867602 602574738 589254190 297825526 491621796 555429385 389963852 261476492 477932045 948718787 25548281 785347547 150253348 847659835 700980003 39889069 91059017 499808006 146574694 251037562 72653217 229560010 555933397 304597605 504968048 281022708 851390858 2651327 85114070 685538423 459286594 876896076 122241346 381816779 318721160 83568250 950431579 527840701 70733979 79085937 172585266 770657973 306002287 120810807 71486210 375036528 306113161 936797631 236393734 841451847 285675605 671091201 469230875 815541853 240927633 145408867 374635315 720618755 331045954 440071651 127569169 932598569 534332023 208657272 940044091 5078982 50236172 911522354 432657383 956852899 818539440 633866349 723100380 301609235 233618118 754247540 67591641 281469508 624101114 214954946 300682434 587627189 344077536 656679419 584860504 994557712 455066807 906628488 435298409 861460227 321200058 444607200 48731381 517574180 4969449 230897448 140662399 445397441 642934233 217258650 753569628 655400371 940608712 485004901 5300461 513575451 342458867 292717110 775844092 589435375 911580620 907055252 747263062 873917307 628275883 326547678 915318030 410668978 989482299 964832008 434132060 775178844 743331755 561002599 345842020 869474522 514845270 67117866 31990507 365830444 726292700 66492910 685802116 35831644 876719708 55890142 471722441 959016733 503938490 808949379 531564996 533383239 754063648 931103458 48978197 449746416 244385054 480868948 277938576 724759553 999018485 772098111 989816345 327431678 866120560 605166093 357058262 711041111 271986219 480019936 478797596 503139852 242184524 446122506 432981472 758014778 618014814 458145514 460332332 542225133 881605238 587890094 629346712 491143040 30255412 144892449 534660177 760615204 795933588 236409075 78823832 563317071 469570376 326494744 100917487 273942265 527594452 800236294 902706309 538045108 407659978 743310868 130139269 785571794 3865948 175009638 586115534 172077331 901952231 412694391 945641186 53474122 658123849 215179327 807949223 818610051 275545598 117676411 419550679 422122548 987858642 332898875 189223318 570480133 769562492 978632691 941486438 606028953 779997065 879441756 312171962 486005607 27739529 596357224 418415575 220663689 905481683 900042877 572432911 809035133 27875129 358484853 428572632 776100077 199744190 686721157 515009717 98434244 234433602 751630484 670237205 570002622 441661020 120301703 32912948 312812386 608233189 884773720 27796128 31895419 456101819 903710009 718437623 31741048 979971455 310287692 322312722 980787685 956263450 840230789 773492756 44594657 840929937 145649603 30860982 639094478 611765401 245953145 650692985 358875302 353507735 734552553 834793017 471406950 142329254 817544954 118607090 458889550 233416141 319978160 527173298 34049866 539205560 811964619 554586833 491731312 846460844 445114629 668930816 799732533 159951001 438078350 991604057 165304915 293095638 644400826 407945456 807551262 113125923 378278158 766162254 172449975 365390478 165073760 553264538 604433344 441724359 919186757 636164436 812063786 246076426 625114121 777522386 888641869 219847770 107849668 142477528 552404774 535562730 4257265 439646386 430862699 469363732 611932535 677087077 895956255 160446959 263310305 156685471 376254537 37358049 266745039 48946808 742328953 680099913 518074981 315330318 927662092 931992584 957946418 998161417 322070963 972621794 832804745 788476694 345642197 868847595 255728531 242785343 482958585 209180427 49930588 476205965 347749687 430462010 593398214 499657303 406518757 57925713 563988481 673807847 150368475 267944654 562326324 914838884 245810502 652141045 33710761 76529269 982400706 537162911 284957238 249799277 521282979 606565955 911090185 259614643 603417699 721726068 398214717 251436364 680035549 746979220 785448946 705219679 491345499 197679044 357326645 199181831 917701314 458072033 436793457 880603346 962574640 210026777 236492685 897934407 618995003 126917605 586961502 487314368 780048243 998035679 968400495 649918549 203631203 258856809 447569016 550235566 164665939 192621116 850796078 245370392 204048167 232900984 122113429 397589607 422167518 84850944 310439468 705598911 728053190 78615116 934131179 859434197 642437384 367333360 666057389 517878926 250739710 918257954 143788739 540244650 684191068 754823586 404679330 9887513 283155840 313071643 470919244 996947779 921209018 14367839 233701008 427969745 77828500 906067011 378934548 658198145 580754419 285397290 641458436 936026112 641508891 186213419 196933832 574763578 939508609 492798005 605375393 298760193 605809787 344712797 335071716 919538044 253052573 358931183 120331890 845753365 436516189 940631882 840476433 557423184 392285896 687493778 350836128 339206939 476765491 631736933 705132860 575615893 577229773 648845296 612842817 472711437 467448442 214124369 49456994 54637936 933615944 22068130 967893364 188495912 725422890 416093519 625644576 209654733 722519371 564939835 640606551 320838482 868870887 851392047 632726053 666663755 326902608 403217743 198296129 312053743 19893375 144380874 332427996 443240130 207824020 449326912 343614915 158114612 908209693 594602507 313250375 169774143 571325849 751703091 344353327 104424823 405132635 688201328 428015557 566404118 652337057 185944654 333096514 559501323 316664385 995354169 825403630 285054981 235327619 588572478 398608346 549363946 103379356 271505207 893261607 735483934 68577579 494350119 368760152 138836225 600063516 433814521 586342998 673940612 31963153 742001365 642509867 549564051 315970306 690857851 436734884 35157037 872086362 115890701 748377124 535877341 282831747 184969953 567493056 893695373 457472808 205442513 449386782 915662744 788597853 90223354 971192737 245811119 194442893 648533537 379822472 14089925 273082095 696958455 484674083 210304142 493880328 449632853 725104278 13625565 192386041 274231628 652303010 959624888 581928499 276193696 850010729 176904936 136664785 992232876 187484719 506633419 694853398 87797976 907278444 101853317 603338413 971466060 583941071 693931125 500882323 993969704 602078603 421625781 145716837 399110079 951191054 464973008 153806430 600301662 923986886 114360233 271433179 863632213 795383079 230809232 476730724 535078311 122111006 80937440 781093461 392843837 904056315 349491407 729607371 797020002 614007009 648408907 669093209 539403759 557342359 741080396 206592773 338026486 610907774 537335134 718344927 376516403 987769368 343581781 392484692 140944438 688599746 687771943 486507639 602815463 658814923 466079436 329655095 280647216 928381994 530863060 282547024 337407474 274642346 532655391 474129215 552347991 745862948 570532811 397659083 593176658 323867302 618459537 494621521 222959366 536216197 721064426 623449986 280098396 352605452 554609619 776357309 710421998 226105669 517228991 428622021 592187054 231078863 779786681 426899305 346160471 304403665 813526936 411368853 426890080 348637774 312968141 676298345 124361674 394429855 213337867 840939881 543382096 572190178 815034689 801128070 904938859 774501362 10227106 15875270 47325092 372219604 24805334 987863872 776042786 140132776 168181935 920268111 54284602 426136722 780113699 562120485 106244994 329774613 299947341 225345509 919784538 564133303 391440826 628251498 179727931 489543268 610365463 609416293 577580193 696359488 49292134 724197878 543986590 134471084 215774216 35689015 151242871 508546690 314158809 415934652 638156076 317633514 730593877 860020017 834689258 28822981 78054445 757573184 123345793 452756292 652781367 85714275 566335441 512263059 845489858 337512089 234809916 108949672 723008864 139869472 856875527 393867630 471351827 833703000 172596127 186157691 302238846 322498048 464642151 1597937 517335113 734302977 858849372 725635562 469319342 717183065 637855047 255025659 100711094 4599059 709416272 491850741 607645751 786693644 580129165 890080744 951718867 450022109 43001029 80074282 959238021 589553476 79470095 534508305 21669883 403259780 26927031 794363804 848836871 835521496 594160653 805322331 440332975 822605251 350803804 314146853 762522104 641007499 406238787 750582504 972446720 151783757 367773971 897903667 578227976 380861736 559102106 843253770 968983297 815514189 612520427 276691611 447918899 689562694 736324625 759937001 404927566 630005005 558421521 913125314 920461345 126787986 874289814 892001856 767195473 983355089 799338575 35006447 393547465 207139080 301037259 496281033 77216717 792701977 662731997 217231550 864182615 1819267 973482936 437344281 742533849 888789840 434689674 821300834 107954456 786641366 230278256 143535402 82498186 906872267 120552717 210528526 648452308 992526801 109486095 196243386 43606874 195148866 655861423 239885671 128701372 590852840 815375949 149592096 955208304 501744582 761702028 739255599 787781038 669580759 405455070 510257622 106033053 20992991 791302312 190557597 41252601 5960994 674111677 265279755 359289529 300567700 515951433 419937967 30938150 295249481 594408729 995015158 975938205 980543069 67911812 926726269 58159175 415933203 929697875 793281570 406848249 729035208 640002088 61833767 215705968 349011922 937550589 704588458 611438379 329116635 327072158 466886965 688123006 505932971 551389915 586587998 789471905 168243369 484888902 983130337 984255304 146636584 240902379 539838617 754715213 484336011 986867373 532220829 494321381 556159392 516310058 101663825 643152338 417413976 49764901 582906917 535114175 150544402 279657095 410213364 114685466 909638137 510158416 626472869 368519781 114892643 749027415 974938869 289285074 606377163 801208608 671781318 191017200 699107214 849675877 709905336 479240888 384572717 320240096 164207923 210473715 720973754 109096884 646946832 568597298 727757137 925868498 824894687 224018890 497550860 688523997 205011578 954092549 269876444 186073208 320176791 767001296 14058627 177603535 395141546 423977716 16878978 365415864 8311545 69585711 490399026 674533480 970848477 29360118 599452845 292296549 154253188 383664763 656853150 317122195 641186223 658888445 194014831 664956268 413036574 90033249 768102530 862129054 899209414 309559221 840432718 62936250 734473 51144493 396192809 764595067 5787560 736654841 114261399 348800064 259950302 239919361 834710076 216983133 570114775 458037504 100100348 312565395 511354873 120214035 373470695 959694936 122154113 149697287 214415841 698068441 154725806 412677670 984725181 357477727 903746429 908540415 990116046 253082339 44296203 479060690 973541207 520879987 617157053 160356804 619438842 63597559 204828690 534612653 100100643 265334091 807284889 448354109 437757821 814102810 824329052 771635648 679285081 583784046 54846135 764638386 124730349 711518342 745407206 548599898 285846518 387500945 909454811 124770931 357313631 15287020 62248224 880282273 308604774 845078193 532267372 918439431 136303038 240967590 140554122 909855491 703426709 14126238 937694351 234891117 420132079 502210871 56869101 178836888 905422979 151557606 270266224 897147439 960287265 110171755 103491257 729821341 835580583 388017006 271038681 958984941 145171287 843293210 547884886 452268979 258603158 485866003 335900515 97600386 628462187 513800011 597459676 685399947 61823155 338958054 714145228 14799122 986644946 74328605 408824942 843491584 670636759 105800873 705450815 848961406 685120513 624413622 628593313 703287408 647200939 832033996 696402838 810142582 304381628 322993351 643977603 76079852 132776073 639948322 645757688 379227403 422676454 948494049 845809476 729492897 49147907 698684712 307938638 47269669 297256386 340561570 317752136 115517615 995875898 459981226 601493881 588265591 248393795 201337398 508560461 181978051 841565984 363582255 638303045 166197672 962548277 541226774 38871114 832250722 876906483 626537996 777707747 881458335 618890191 338493469 948156132 431372508 938367672 798192952 587245241 327492100 501742495 421217563 234798726 975879082 925062997 213825001 294480983 132815593 863430148 939569591 486319554 158732283 148874232 368005450 72141904 626326546 505517650 98203819 590864856 935484803 451975717 261893211 195947102 569310025 112974389 843828857 699461832 984980538 640881595 204596087 980651547 147224047 258072261 163654348 459251594 137184705 47671976 907337643 172725649 691733913 45065959 897101876 420040692 358590005 993101398 714604389 948719720 991850330 728266261 983596616 121879352 933053577 72558639 941145660 133665760 652719561 533010848 77411319 91793197 244377677 388076498 632117633 490575639 679770728 827332328 455318476 134978959 575991680 678322070 246415521 126803634 405903819 130345276 933897850 477396944 10332276 501468617 424705183 212851736 632653137 23649729 977490235 370710379 540282707 355666092 548204156 305117324 106957385 859608333 499028735 445606058 384504395 856504599 470520850 892715639 605895205 846192457 758493910 897916228 502961565 997947759 773790810 650561898 247309237 24982967 894788725 737601819 395333031 780254768 735045151 596390442 894929681 60270756 170349532 217479933 360723891 173725279 890482831 161650872 784292725 698740745 332820727 616695014 20978868 535769769 400335217 899906748 978108268 322452668 319777249 76821619 85672304 305521672 9258577 581925138 29427703 52443514 140928620 519462324 60310061 404779409 122952467 739878158 819940931 761136024 173227803 426472094 69186316 682687661 86879413 860984565 247232735 767086039 480646499 158471031 931159416 384118916 341488659 954802594 727629513 38914813 546991395 891579113 765778280 422921240 309132550 626608309 735184096 756837314 77777644 111105520 574831238 943919143 596863351 619748809 374480297 653334686 162053398 11775158 976301954 516971992 310163034 905210416 149462223 569688642 326384944 320156407 882824099 8692430 616448335 391004014 402462891 934723662 372964550 837757725 974679158 349197747 437225794 230447503 369549179 551974257 313617276 533411375 350859548 499190469 732082838 470609378 865878299 180418496 69506619 278552811 839133332 774067098 828353539 314089786 962978119 202645690 240659501 594688969 42311822 686416837 762220019 43599682 196369183 556498712 222665821 601289767 370959074 146424907 569342463 133352498 153763803 22326367 236700429 537107224 542720997 184428929 862798095 704738194 280483753 713031599 819373468 844258185 617082765 933362874 322643517 668974929 32011120 408594129 784414578 167199961 186458350 782920932 207498804 720322800 860266962 672592040 194487917 991827911 726283022 131714279 506115026 206202245 909697805 567972959 306121287 659783893 731505943 880723017 766198613 85052286 779749289 40756466 979966597 140489682 952318966 436218617 540529427 188482838 656174421 623938095 278440327 796824359 197962009 429001294 227218548 195473743 812108193 494465624 714009696 870868990 811994154 236065429 990880022 81365996 706448867 506556236 46962056 44875489 29503842 251902756 122685765 602812243 460222892 306120139 398649280 203537530 828700158 245695021 919735834 211816081 345231771 742159730 789084821 781416838 595734654 562342992 416555289 305639058 102836707 363094458 621703477 833450235 503044972 747655791 614220865 682097685 579687850 909534678 366901561 606627129 769204286 210026833 596437242 87884583 733117489 427646267 679867567 828551302 119590387 243952933 35657008 719170971 987027635 744131825 805903986 39104597 305356981 477641694 685609571 590391035 91363364 485712934 192197837 506620202 102354509 749990346 488770477 646701087 578254233 553698936 786210867 214533706 790732378 830457998 355846338 431236772 939552370 858283516 775245372 127179915 860957535 193224517 952638647 913258995 34274745 485295066 262145114 740092689 57756296 147584761 548182309 947271173 117590599 425609535 290859749 717016691 914109570 712459029 965452557 11787287 311987704 874869363 567885954 879688423 715049651 972728362 694843856 954346983 520864918 53948952 71918097 954028951 746271916 193663092 555341724 356780133 456051256 524466123 4372202 709855327 879890160 620542368 836319224 532231948 783838981 99414028 878846736 921818364 800180484 228952844 882520540 74848946 916115332 973150638 866767241 145958759 390496768 266824149 888158391 419788929 289318614 494844633 637790500 409485543 513298060 234645074 100579320 811144644 366135728 943126930 311331583 636668117 89293332 267251391 658844683 449737008 746388513 957128973 395832077 270475766 559162418 675104828 166267745 382313569 510719216 384048849 424733618 91901937 49759538 966868431 867171951 198523214 205174853 263367325 549685904 441678309 430479730 758515590 895869462 557058924 94260952 643076631 62481029 415245886 303959261 720605281 703961724 417249167 545062085 896917423 824710362 118247914 706136566 19830452 657442848 884540634 978836620 529477487 864192429 545022024 800501460 682085341 305778478 737816043 28367035 347185591 840501392 248161256 67197375 617730664 243601681 645031790 907909984 235017045 996531291 106664724 395866747 891177512 506589608 3442140 953487899 558278513 266341 423836415 275334212 409007805 718829417 35903165 469510609 692421692 10603248 200225273 370629772 110768131 423571980 963128462 325742658 565323619 797974083 582173251 463385413 458325347 417419457 113144989 849552559 689588389 765145269 252156872 775313542 118116752 176612083 518781913 523804217 234613833 585157087 872328137 6499272 385193815 974907244 842772205 148670877 596136519 250517362 783644168 371179799 213816118 207837352 305454734 608224470 884766521 732570092 612858119 982759667 204093670 301809194 825329271 406392477 275789723 339443050 746063491 677761648 292149316 822535467 857392010 132342066 740142763 876464862 214040090 418499576 6207949 672397140 731922327 518886314 241809706 371974141 390098185 36766852 358617043 612707722 694226665 41690954 951235103 186925569 403094347 558436803 440737887 565958324 852940039 88329010 725215602 264426047 970665879 959307472 772474563 268500864 871425748 858504659 719646302 616693095 469418137 848015309 653488036 132397822 84298972 933176242 59743945 417353183 542177634 967139291 995785481 697721790 553460862 345003569 241187542 322107194 107717499 822106601 215516462 54810462 315990352 775940274 269494103 962008137 519251463 825254735 555631369 928403694 834937385 545695050 871508947 595679056 643316193 63362192 416216044 111099462 474610917 674235325 182883385 665090472 663187544 963492087 742167857 833241724 209488267 865700003 559876627 39656379 867857342 111442995 954421663 210461125 659735882 554548797 792672946 409016520 383180246 346307563 343714591 501563841 995559180 782082902 58176558 171176691 907540454 447692453 468666600 357962180 615285796 99401881 25247722 116282808 466837699 592546209 197662768 498470756 117807281 964039960 424500542 110943849 633330570 703771038 601560268 158252868 448884791 20699132 41602679 959838206 633489483 831287462 5726804 418469316 247427077 911425029 545690815 424474253 118459482 840919309 997767234 992647334 689124411 711661895 129310943 885789340 585953320 521494395 664189003 850191516 502313699 680417773 463223251 493443022 726674550 866710850 299401319 324996432 25308599 690259618 63082887 147259755 689122661 100138177 185016989 989521504 789090003 538715061 627137663 907082009 822293607 187559311 245228915 296368501 350410293 49313791 475978165 14168243 670951471 6228142 656779717 349350098 479022450 503176154 246721238 548847767 98434255 355050230 733063447 607788741 943394009 936634635 437321891 971563983 352938490 645302120 38517075 83912800 843182957 573889331 750449155 251198296 190221511 601418405 760044578 518320651 7804920 150173958 505260995 313566010 756459230 730016184 178393505 664877336 316462654 456836343 591584090 780540348 759059838 30852515 199470575 418802519 776889183 231426741 238851204 5463100 500149078 492012994 403255011 624081566 697545755 850888600 449629192 932462244 239115748 648666046 706604923 502752566 546421080 365992143 525198328 268673139 414338484 565967463 234488937 400803849 183946775 714310659 470259723 867602737 571135371 43422981 12848219 124742896 573641789 643753323 810670719 327942396 739456834 402115067 586224865 540149688 726171362 179655444 265569109 878857612 67885314 946611852 474843041 853515013 957061453 980818880 49201257 161553587 423781971 58764537 867427463 229268435 128290914 153343292 996015825 676358278 378698939 400994900 844161081 275922284 614072530 478686969 498049412 988173719 218662752 601028137 47825176 920692972 25727788 629478144 71707834 264652756 777375891 952664460 708116979 135193711 97623595 437266456 839182001 875512110 533112033 78633016 43250733 169464317 737376829 255506483 830027340 258610388 338552824 102891607 685352556 101465550 902968707 911805969 875268186 859704694 460409256 238311035 837594581 355124589 750441655 486524751 198999083 213080561 585997681 37425955 475586228 620408248 90352131 73610926 979550963 801110200 562269463 530752371 999249221 73524835 706749127 440926345 957975243 729017789 350713080 545213837 130044827 319983795 739960469 808132690 616470969 213747368 150632501 407935681 416655613 883774304 710590019 537901785 946287578 223509164 661225162 698844627 889342660 702381573 308153806 131539711 115748631 229861322 629694282 785177430 314736952 416715740 922818025 908512679 701962715 815242512 269986107 532995070 499939003 437978322 612190356 97258891 245320935 489120107 223369174 423768969 743888195 515701138 843959148 289224246 430607140 268263043 242050602 639241220 218233244 307652131 600661297 268245902 141203659 159113178 427241076 543701848 311021683 842476775 405742288 423644063 48275145 430835343 470620005 547193881 419067437 875027513 50795496 8899854 724114558 895874390 911049768 59438280 355263658 919358726 195807341 845263444 254810742 275605711 930653173 679860187 571288886 919462062 335545616 10605720 352751756 741164534 616137110 528930312 486964151 686340487 150825636 788395617 898608355 527961014 804075684 610762657 14191251 720904380 766075477 79044070 420686663 790219317 107166900 983793142 955281399 901028837 596036582 984530774 200224629 913367661 229638762 343558549 818446738 511402357 819203328 705708997 461606188 440797196 924426987 58840485 986481973 353334824 472865642 761861608 90302306 292413560 59935739 937681360 402290725 172072884 416037838 266395113 594459990 168976861 819617660 473677239 314521646 472373542 287834777 916044192 905300619 866669186 893266641 803965138 190233864 737733169 849946525 682097228 554002147 827944821 199161891 739936334 276765864 257029130 869503682 925608996 646067386 982113979 846474296 23669389 399051084 456308209 667807097 835244480 280528288 258436491 982263312 212995695 510424471 470964500 329391392 914841985 578532619 304962305 748984084 619662648 227975468 770755999 881512280 972152259 693825724 237895706 107971845 996781672 874966110 469760054 438784398 502639045 435408267 358436148 130210917 362702021 190715970 280881676 932536683 515604693 635229760 434484035 168295540 121879065 654571572 559561088 896636014 784404904 242769377 634846450 296708145 13707346 616472413 806161280 609496568 789904229 440037596 645071367 712619403 312107264 955105901 840805601 180939114 173284857 246383991 188782712 768972014 127903078 780389280 518252434 866761238 224151140 388136450 983048294 669737810 204624492 47003574 473355079 921975669 40788315 584665099 877344237 640049756 636019593 604732492 298592470 388476752 866443808 398857815 956373349 735541226 414385441 702385858 487596889 62491900 255505909 838173868 775710864 390618757 419954616 886542277 431361708 91189884 54914972 876448775 723219509 764788591 868119372 630839337 226702259 85001955 453526992 98603547 404634363 267938849 71819472 221808837 832634426 574383415 903208902 77398109 438778016 511555877 723124129 281954576 471095284 458096886 644594868 781453240 39536711 66604876 122949234 676084709 661506446 906491236 806554582 859413522 918057741 432152660 583175439 599356555 202914987 710876758 500377864 252999409 361385925 634034492 234025695 181985634 38778360 166430785 108437964 612675377 876656397 48488693 176564610 728717135 144742663 634274458 65311479 486619944 599599431 129949321 945948219 910555284 824501106 141854137 869668381 756857608 942616117 936422634 74601067 40933087 357237582 936619898 234026187 941659748 592929908 144409779 847167259 826840886 573631602 170967793 490052881 9915146 99935309 795802452 336879641 511885281 626700807 508183812 997442406 714152189 689421930 707405094 93060573 482881519 282390393 3219106 13796073 915456095 172641668 381029290 800258301 421279989 472362677 147145922 24814635 243604693 399660457 193937181 560508814 48081823 389237964 656469973 126587581 852571037 2051937 448228122 871230130 183323361 264359824 869082317 51563163 404874715 344276732 501703655 884821367 447478802 574702106 678960425 703674636 39202271 385544313 118230664 943160676 553323715 98083923 281508819 224173563 379764090 909497676 778816952 836259399 265513305 342527709 53382747 633489612 104572720 161152383 286659132 436998578 168091103 315780971 33493885 217534799 756248590 703378839 754592283 121377290 203634094 146273988 814686929 389606908 364354879 213232457 993644101 305124121 573716337 348671976 132524953 702437538 312937160 970774161 638384710 276149051 797194802 185163310 825442171 724234366 856482983 849324782 304772052 127396829 13973308 785352060 494339786 368934110 530192719 302446478 870366103 553723839 887726022 513063590 575008436 366611318 288029402 824473444 663386859 401173600 276197980 568790580 456786037 173242447 462215280 538438309 584250844 808017498 955611821 896882840 241053897 631267563 112815385 568666476 734275644 669381078 160299644 459563474 18387318 980317029 738347299 352806519 286109407 138005668 31960451 439648439 807041164 363120192 150210107 839272400 700180741 608678801 57570969 142565841 305096065 248459593 372396857 929537439 335569760 274429248 31450515 667206529 410842659 819179803 324870689 643770720 122150299 370429858 17968983 249297280 584262614 445552927 948289551 659905001 39193159 515935448 393364425 951412199 356958780 995835598 98876781 692895105 422282113 487440873 559346821 646647058 440985206 136108833 314159261 249865006 135150093 551888735 896001413 631113837 81944249 322715041 238764790 155608280 933512549 10912284 331703591 484946049 764190431 489146698 386855160 593401771 801594541 708792609 965532869 474720444 906177267 739428825 291440631 977176634 602209916 798293101 999285688 175734594 542695396 269287155 661347429 351854939 804970864 988238641 152572750 52143093 232001298 752242438 689433435 4057052 113428286 924035692 473731954 891562619 677237644 791617447 414094257 189892533 572382347 341092071 732921168 52292292 699620982 110615399 39204568 48783157 852944101 126197029 845595551 863732392 163943265 278138995 787717473 932677075 309980052 917626664 190166518 941571802 653405538 848517115 198962198 129596077 714989772 418605239 301737383 213850739 659387560 782086075 7360682 527893596 159791416 8411001 127079827 34150267 486337804 558081943 74440077 943221510 975363448 199636501 841989416 381948247 539890404 992998095 928278477 333468400 182935381 637703392 392266783 545703462 128066057 845083556 565253480 981033920 346650210 232536845 52720645 220475045 542423466 792398962 619470938 891911433 901496469 610503421 630271187 962151439 734005280 576098396 567510923 805938897 183175514 845747271 400562117 142516769 584116207 192772978 132738745 123003819 193957847 463042009 761703041 369199257 811875422 522186579 4826117 419151553 702134438 345608396 502873404 485154422 804530424 936791253 574137828 932858942 106688540 170108243 746109522 427357303 191592130 931780951 13934971 733958631 460346528 341254727 250170834 150700809 195790224 718413991 185122771 489717197 134477201 286122221 492915022 531341876 908626593 436549446 748085020 584503089 814042328 416080909 582504222 610198097 748939072 321291774 937466152 785148469 41219608 471992109 96648769 583244966 11196214 49259671 264426728 432761260 213389540 437560560 105132645 781852343 483897860 747694129 958818352 981042724 484123930 431853653 553775731 80220460 405476816 142507214 263956336 335105914 858343033 710340330 493661205 224570671 976143927 28189315 265887384 433003122 168896187 201948317 947253441 287834327 577979428 749477567 282523172 692679505 829078762 477370201 571118410 598472721 514488998 856484107 342812757 146672563 112378635 191931011 293339254 722965604 644535806 179159607 700223537 39929503 931989714 599035908 858006407 226529365 840555586 142098141 866833339 929822622 656846466 236977755 723455155 67402630 122711460 467133620 845187701 710470216 92249704 857703394 897874069 871955927 528904146 948067068 950763968 981043566 89562651 283365451 796055172 759981679 239459324 967715639 246694362 75749666 59997 702029175 661877539 62166659 545662390 139199440 40887304 668096230 58850620 121561440 840982264 229602334 828492580 373118970 63406773 252348332 7150181 501817687 344466974 842723527 378319550 983613373 242394623 900981720 877583034 819711855 358118022 428399121 977232580 452340224 824475402 371543927 669589619 983628927 424064247 606121825 728331185 410903556 387007830 322001042 363271789 720565951 79346380 835156530 464685067 298577206 882129453 686478342 729797641 846813754 909869700 313914180 541729264 304933113 950375395 45124304 578359824 388050904 763904904 391256596 905753703 732522460 22851985 577133049 54657213 50314404 991599925 32920402 712090006 446677242 702804430 494995377 135122399 474535897 931363705 335360036 736264268 321532683 719076161 532398115 892235185 758876714 16017704 235295533 573255705 252137848 122115023 393083115 180130360 491560749 3801289 184425324 7778771 903191744 702179980 451153209 354454254 353527282 456348712 912130501 603237424 355272021 681986397 287519680 634651634 748253297 615226217 968662501 370679893 729937261 654116558 398137841 387390872 597322895 465794263 719882158 698902457 937316749 335499893 479120549 382280538 436315764 970850644 913497400 545030986 397638073 286049821 286677755 654795305 79284541 590618602 41721192 420250357 555978911 213113332 551947126 500244247 90046712 730722099 570441501 309329914 871122630 154896230 54150428 795747484 123328385 245005093 196085105 62942848 444735280 17476230 630288144 220234597 163139598 881085534 120423394 408754858 681841680 380950244 88758939 566681268 459019806 667719253 560373247 551395903 23489322 839441726 337013539 668815280 258234424 355102134 694552983 73397782 142123341 176258333 136146594 46812754 32305210 775205721 764759049 912027316 478226041 430627243 716510490 647612120 947143252 459218112 80451543 62673700 502322883 996171857 41465529 498560602 951181583 936847313 635952520 652422415 418834477 653410811 227886739 176844355 689577326 728427919 532861735 969648473 681755317 687042186 168502867 139472077 126055153 734073412 364844727 197789308 927018076 343551160 658448630 381246442 244815905 460549589 862288239 417105344 233583053 649060156 9968629 152741085 763501974 428327833 655878769 762102962 825929976 391204395 617326111 292541596 95529133 649531224 555635531 14343499 518610034 782374126 585446348 596258595 506555463 193565121 84879655 502563157 808115392 289529642 244151080 993075399 810262993 513399478 164507627 877705031 114344885 862870205 118828240 358785954 765074236 905641373 473361077 339823030 198753622 87922129 303326429 379882724 803849078 876448537 748402931 531400883 715614687 762480610 145427383 944338394 66708060 877801465 354904087 896034704 532805416 478332282 298361538 97175004 186947428 587616878 139309485 942660509 467572205 384509623 563460770 985356565 771068245 933494943 601373934 260761020 362206139 309289334 970832475 241988143 553205775 88297878 369321190 57961934 914652832 889015598 733523346 245073064 283328589 989919215 494225234 901267621 149455945 26525871 325360918 380765572 261390884 515908527 778108430 699275463 469890072 220920340 248523059 589562874 130418568 575271390 421069369 562883648 81526727 421167135 195354389 719064861 855071223 247371827 773878014 68568525 940611205 205778278 642650422 48062786 634200925 580200086 22053618 526534344 193929070 861238058 159875162 502978792 743886408 92730792 919771170 603476104 205884869 458502035 371270627 349928487 687868691 337091366 486474874 795360780 234719460 736325786 459833545 61265505 8483262 894038488 49623171 626756491 911339460 282967051 845884819 250789541 659026725 813710884 595163337 885815509 438403523 213129541 362194916 499191897 993677286 818809259 472870163 124239980 112669710 646876509 44521702 556635559 909284656 624469254 576486395 232740862 471828194 688240763 229582925 926576930 912290049 296062597 679920551 528902566 163392971 130565926 712182159 558496959 32745330 703722365 714236273 111080937 409260123 473442961 170140313 7509163 749190354 73292127 348346308 72692489 370666910 369284042 819760996 299082745 276974447 889604332 29710536 535523696 267547663 585468467 630515380 76976062 489639856 484250244 606042333 906913371 405577563 502660413 464737177 211619258 522011707 230314699 514887819 799044962 21282190 320523429 52176978 782849798 743578513 319852128 922526301 4600117 494275686 940853481 289667672 265580473 983287836 437759888 485351087 537772304 630904597 34100561 722720415 198080016 732193108 776799273 82204495 191307798 498229846 535351213 895884625 577891890 852046828 604849043 307392370 728475019 974792914 1586055 600788896 146483070 121950383 585545282 906983038 521279673 181768675 890020806 729304765 466610164 697598292 419379425 790637068 826696633 565767609 598117662 330587185 51268203 322611679 792305449 916616255 674064363 315110114 498596459 608373145 26199969 646657599 246897684 873598359 154830299 921187374 554146060 5060050 752096295 954233962 144942287 350996125 448884485 386886623 759719233 345121750 320079201 146198973 576107909 355553653 735078172 330876348 145895333 986175537 400594824 535447645 386644863 847874727 467971434 683481024 568016925 448615275 332814307 38432030 444208611 815259186 677478479 915961051 154860676 874677965 387230752 214982861 829714530 560084900 955772480 235979270 264893135 779228163 607606321 100428320 883912825 370874877 364400432 417611699 765636816 579317717 589934260 922545390 342616983 161943253 66182195 866916658 114573642 370811572 855493740 837278021 268130218 23307514 937910382 876616226 482385127 741932602 959226674 567160583 400716551 392254218 185507721 888625491 471964247 466619468 330526524 531540662 872232143 285215298 331921904 690910089 214478741 302035230 929137104 598409705 302846354 517965724 3002956 933415887 448662275 935259732 376733900 867384335 142215202 952551162 637595943 150257519 139093129 51033084 774671778 477912789 640132014 310125693 333685348 867961157 246454409 836192407 979806624 476454583 866897712 345850959 402809079 108582635 785754634 623919615 752944010 83168234 891288111 559067062 736393112 938919413 679810099 435729960 306034048 872514687 180481794 792089812 147116398 223353140 625622327 232791722 115906206 130225812 518331798 232397242 115474911 740231222 263606939 437063951 178570530 920162102 739691402 862189994 986943770 123306778 742911696 647390401 290037198 242996849 585250855 569723185 756176867 433863293 807515118 608739405 900420609 878853952 407372179 26659939 27925969 145144583 357575072 844196093 988895114 5877414 494661305 909311185 395036740 874504320 368894455 256686581 152382411 329114691 39437780 893628574 857892370 740455601 435632065 549374038 44119700 704499550 510558404 589283123 781420243 411641024 818503285 913358965 83418191 112363585 998103450 200902297 504632346 251242848 146740389 355240876 14806389 236940516 623897792 144992812 635779454 947216556 180748886 408090759 781748438 567333622 232520725 530203234 593847212 318653944 323064648 965159590 587176598 715511825 725168934 634453314 598844894 722810939 603301760 459026970 473536459 221459205 759748065 965174944 623025758 763305933 288411086 214222281 636460362 721245716 272269452 297722067 65303852 815176601 82747589 470541691 822436978 885869525 359796426 626906846 793353849 83149506 370749963 547360602 346709737 696807403 909411119 199291628 636200256 411936926 766662065 2887830 624641156 817259438 331345686 678716184 348727195 152104737 987682926 681423866 293819314 851860514 646393190 609002069 815490648 387161866 430254206 732069293 106029049 73307332 735222509 187951003 757956973 266120008 21764823 742201713 452253072 103341413 59137955 736991269 812106098 411630572 606641584 651814905 538251354 841825741 414529704 459893119 430984248 940408273 702766324 534936865 772190180 254229561 169339000 131308633 134340255 858913249 80689936 912916186 35848911 460555087 565494885 455872523 878532544 415288580 397767016 247819661 472550141 679665153 414498497 990322566 768998820 563659532 61561891 566176856 941296328 846598373 207889320 611409533 116301855 761499818 708051414 621138013 332263487 671254748 901309841 14434304 273695191 729264955 407947039 576736986 321187428 347350094 41882631 369441915 788175396 464465358 201289918 72503435 344019977 126812331 987405154 345777931 367978566 854390491 843072500 913257201 210124742 411798111 632696734 504082991 348987176 267831382 836212101 961330088 623071019 486629376 155588913 982030871 394800161 766944680 53210914 873272420 151333509 698171472 559153939 135036513 683321485 44257061 546556506 859216039 203686004 306093219 674316144 371723999 892686032 178920555 290149421 499955301 679976155 277060870 307275874 209166100 287686004 401299888 138705213 371469925 324517718 763264080 722960803 426393561 484655767 798969314 186174223 133151095 550685061 269277997 377912030 663460642 734153604 112374586 739141720 388580226 448558795 858750649 903723623 207443043 647360625 761082494 768284304 614555798 673750897 88559336 32138969 528060237 787900174 853582934 27063303 882390521 460668828 882920132 813780647 164637955 78753896 954483533 563804540 378211997 3142836 776641753 782741906 796002274 134965538 72840346 169839951 713264757 800109485 995597529 319180697 334635105 880789811 129141255 130850317 789574006 474024950 38713189 458618968 528099252 93151182 235711541 974299732 753140686 480050121 150091511 930588588 777212938 826382525 425967359 821782662 251183750 453691738 454664060 575717423 493016567 215928216 240708885 210292354 670014320 324841701 651258891 99544798 826136018 450363747 860241283 105913609 208234 880620080 538422672 40047284 155715298 216673324 332681615 430391770 909038897 630263983 877786565 894190259 757820626 136552609 734686764 314307016 353019324 606651094 480646430 361847685 294208034 717465704 214956490 3419331 235233682 82716615 477135811 428547372 741066940 695325249 260032510 293526483 280994725 542372372 99876453 989454479 871507148 308431153 385979867 194425798 305142057 644150173 848559555 593485201 371843297 695482425 473989446 255130224 287624497 303903417 524433862 249194917 329687202 385160562 703470536 652039996 570797116 193085915 946462113 690040815 892097361 250051295 405994023 805493054 958893452 468265413 626151414 43134182 907991329 403750902 759582084 366395534 792501570 821151166 606949199 265422790 503128716 874283940 579273029 751948236 331150027 563690766 771720201 637503675 746694831 49931512 682034390 949867628 295040431 118840512 849445317 559803412 393819264 482578792 41360026 614452789 945060270 63322571 740023616 120281705 995032133 263171812 915719115 870646245 561085671 90424461 86129522 825314540 472115932 118797623 783205949 193771764 127544982 95706941 618701119 415555773 971079462 821973592 807384024 221494573 366109653 905503503 355668443 35411340 274117653 974738865 974245152 496199973 102662598 573565138 717895607 414848528 119718732 825812126 738488996 107590207 506588137 410701420 274809760 494051618 236624661 430631071 346233818 829304975 76530323 110534494 592299940 635274509 775364519 598301978 528615967 422284026 526719822 32681764 955541543 489918146 410382421 744726864 911187791 11046356 512352425 209589723 132846216 482898738 888896620 180177868 530449203 686229538 158659010 806002654 730163984 362997224 935152383 138827636 438109665 646819541 708442597 455361865 197031154 19798411 995033141 364316216 893096729 829793669 320916975 831024325 184253479 645442940 18759808 594727622 549126262 689943009 974777184 796782139 570011571 915193786 375123865 12010063 161601476 492546160 725906837 998894492 437277848 980605467 760666298 239151829 162865268 910923800 655477050 250564582 500488597 716955962 478005967 309491695 463492169 378789122 42212111 390356032 798238815 140577106 281651407 179904031 767256987 591427113 368684209 221478416 228365317 834313258 183412814 470327695 780014404 822127282 383302365 687645845 986538786 147520635 488183539 299292165 658982313 745360946 96502717 895359720 986171580 770227576 716717699 992606501 776295196 718616386 129015112 88863037 432583843 70684797 802669554 375214779 399226250 472411390 212946640 905982678 382548853 891542212 206905239 71357303 88510224 596823803 132936633 24849313 778552519 329684476 678110547 587045795 648285348 466575321 791605222 11983967 722453321 486938066 529934406 726891392 909592610 281465471 579310739 916563180 531267437 30547688 54914962 297877416 480791249 118308130 32713252 278211404 865068781 104777022 535733870 822469673 608841458 377927229 382066994 837979243 128100826 97526563 623468935 814462711 107821692 94398596 173964518 412494661 303972638 815590997 422076420 956320198 716536009 551712503 614638394 265684576 485149173 194332912 470220172 997129983 269109678 633580851 663908481 12422804 946332234 768743574 89984618 413893751 193043172 922668265 653973215 862339633 360151938 680918963 802398850 96335539 993453824 446718259 444619916 917948634 98356175 762825100 448383403 610714091 414080206 765852653 787222343 111113376 384662111 426515681 567785005 592543865 743007424 260814861 50228125 726040219 240205831 316262661 536248567 52163749 926261197 304620059 721902879 673442209 281100905 748993721 687783086 704885150 710283751 930211790 188074131 155680599 505350356 573368516 861630379 196059413 22538249 544801247 400000872 982699316 33312314 216466034 67937041 962296955 525195434 160019487 809111814 376517554 606202421 178059791 157146961 621399916 696965394 567123832 906393919 206090374 489701451 410071498 966617619 411721110 779046478 384413571 688416629 609545405 485069396 565076621 379289458 40032303 241508006 268074675 575735810 457190056 16292847 447800162 632552328 279322358 293507142 933957162 530617681 688002589 594991889 617271993 271943692 250825351 996951124 692051289 285489987 797489402 142449775 772333899 757338493 200919867 938834133 990885976 174555867 592960552 417953422 674747510 4865504 899570176 27280991 436203372 671649662 502822356 253793345 849720987 49112965 731850390 150854626 517799476 23081615 155852610 785455086 336881858 925298514 882598825 404497566 156602359 739715494 117576884 48696589 662564790 512714101 634340523 106942118 718678972 106115061 468766293 768509466 811555470 775716697 958713712 296845120 222299267 282854865 780938597 510784352 831243129 530306888 450388658 35719307 461157836 515629606 303073259 10170499 80028160 810943910 414550352 291817700 350728806 362590739 785832706 596044735 373282029 742427392 449624463 235507716 663111916 544983964 881458168 717225126 677653397 157130560 716161676 674982419 160340902 205104158 493167995 225077603 285691504 365848275 286019221 774441142 986040550 704812466 20953448 733171750 535556145 464662764 728372758 345647552 714596168 243066189 412405664 513204529 79048509 543820091 445099156 118570184 649409512 123007050 499670187 751557598 84401683 617623919 126842326 709518413 653045447 366795778 88343470 390176939 134855598 743190047 482461352 390167353 980009946 847714349 146588987 220691738 315534832 242927806 310758739 543592484 10263029 782750370 733593439 256486862 73716999 597885287 10575154 961845020 342748868 599406179 484292749 596110025 434395226 847812281 590669720 301681710 850814873 216571775 950558152 602380749 567434146 522579413 389843918 281797015 794307322 26223348 632334291 36970638 507251709 814617555 892172385 609929330 568881394 355087292 65587678 461960960 543888774 264261569 107243674 771710401 542595240 179281677 459491687 853616979 75198146 559499756 757716175 548843385 822799919 456017503 914878561 267293991 619068015 487519668 349818082 461353696 877955800 960048210 395310012 716302256 578238266 85266402 748247972 210376593 998169449 917494681 991097354 387295819 907092461 996167918 454077416 951407620 509857007 133681618 991105518 677299255 519988851 860543334 725603020 849711251 624573866 613260071 899700719 101762157 696657163 384169425 311244745 611264576 669815775 923594340 791329095 775243248 446265233 368168341 121364334 342911895 87825997 599241000 490533572 612249341 416952279 341342027 190752139 773601915 703011331 327218190 335585003 567769024 461518639 496939296 954004230 50923927 194392165 582661662 47692937 892842480 865539827 389332644 380620767 238494676 924239070 288179947 960755226 273482581 535208773 457892946 53784620 896278672 374403098 190790829 879452008 582471865 878224023 958063786 904193499 394074777 437451107 718263826 313391992 633259330 596044181 476471262 770772169 49791981 447036231 689475370 219067948 999749931 553808699 631127803 56201972 172313914 116718002 834359092 788680237 696265408 808380062 982426100 514697313 533550562 704775805 692922082 722635166 517323621 335180786 656647948 464307219 484871591 900396207 813133473 372835150 269508478 484570949 890525415 261357742 534708079 594468390 124833942 462763685 589092628 964805798 630626795 924185377 279392094 358727572 90024404 625217987 923851052 838336355 896380463 812283534 621669392 211205941 5265455 368270936 132727647 121262108 622190431 765191118 728590763 727509305 19669616 399994404 118550172 255816920 365090101 119723220 894659255 852407410 197525772 458458022 960637210 319326332 755728815 38703725 467523125 480223346 883422904 153115634 785533868 341619334 450528975 97045222 839534208 551374962 98291763 671898134 716206412 362495528 529827961 671868981 683974829 30456144 389212980 551712861 93214005 914143064 145469888 262767685 570631618 264186942 15850482 534811410 153023691 909315957 96000454 972145240 202864112 734422248 53722101 304668665 238822608 214091086 133766545 579125755 838755472 806865700 787676803 118331137 625148235 46875651 905406501 208626377 266137963 806674811 122158774 580234139 822006452 981415805 640944609 308776971 388751036 415322343 112870772 679116876 192914591 308092895 654475369 977862164 841140815 252313619 414863984 458402573 108405028 664824319 696935691 707987942 447126618 376922434 880536752 304037272 996334977 530745152 631711578 425943309 783443457 60041974 645988332 256888595 543296708 513991693 191470199 49423463 17294312 531788602 331611907 355136891 695329645 713087597 481447845 252176573 444602390 113695904 704747531 490833402 491866251 468987609 659793910 326062052 878858655 605137250 5633428 749899323 211233786 812239419 157588108 615554252 122313122 331927651 403415257 750294187 692108906 954801531 85916034 309040352 533754079 317159886 866642801 579280754 858424288 254789710 393734792 779315819 480995300 781309635 795057162 319370253 47499484 700214946 288204730 920782337 934707676 980986267 642492444 828209277 402879907 213252487 683717419 107408154 132927632 433125357 183426308 587872775 358053847 921166230 332984911 537762989 421009551 279765271 659822153 755797212 411078488 930952190 20725920 993455465 210303823 28811738 824330905 789729162 453930951 355773756 41367155 659633510 376272745 963558757 275243611 378542476 131619625 324998022 844657655 320154167 407285400 132531863 565690439 254512410 94563892 215695696 652695861 374529157 284534003 101832275 564014321 819602799 48714780 781578464 146403168 887598110 860674832 127576383 576919637 659589473 750006108 196572845 506829361 805301171 915385528 930674721 869436357 22165662 860564144 763893928 830522579 668669978 46629972 919743279 40711290 813551960 312746529 859452336 162751037 51198134 254431034 853349216 461860107 782839426 598160582 576823808 946472920 897111210 954704470 61094752 637212966 793273221 213564673 530401462 451855849 336624428 389871557 429941751 240042859 574588183 374286877 534338657 614246283 488385241 966152906 850049225 871456443 761105034 451056462 999598138 997916347 662878962 381975897 462340578 501102271 861141494 256069255 196880967 38400405 455501802 377201727 801489417 946206272 853291682 196873711 412166459 421265276 311126214 553562772 341898000 683438519 45993042 756463987 422513148 408283451 504727342 822689280 589812419 835261888 39133671 652893432 75080182 446597321 802530758 413375561 231681928 825640671 261164246 140271313 679786898 822676976 977830059 694682020 337235569 191549973 504663090 625261394 354841811 740622352 348674151 462562393 5891942 59263975 306875926 590785372 612787887 428064917 133064539 39681529 470359931 175301151 460665928 248989520 421671444 284319099 931242985 822636914 652125597 79969602 29194124 568024772 532154242 673007598 837799011 381943677 646299123 415203767 132199442 226489751 951745002 566887495 510911345 302795219 786496490 331603748 522342623 840823903 75408158 550358461 949704461 304227979 818851277 966623905 761985951 946097609 877886045 258337175 246955064 232547645 348045128 65477532 378889248 38497613 710741073 600166482 4196282 466716045 489580080 664556388 859670513 118365592 677577653 507245118 420826863 603326255 589250730 99282908 784672830 388946276 12697437 694216835 314162714 106490148 328183837 675435720 282750363 557771601 648621043 118492777 229063966 325169719 453394230 420822301 428460683 38426224 788659357 961181977 797581134 300478424 177020661 213713294 110655927 569116322 907641437 944535880 950613947 508712756 839016114 886305084 865456375 986969837 201225801 533541909 852266127 609639520 493546433 442529159 617849810 204069641 714361572 10390796 547643620 232431494 126827154 109265233 995788886 512994821 123039296 468644258 891196463 372426825 821722299 825066822 462248205 250508709 450923000 183838913 981415687 746524850 416750740 10252243 439500915 869780964 157559121 427771941 128652089 85732514 313262224 523119499 818783798 293868387 69887079 590133548 559392105 258155965 914369205 212100160 938389351 190673837 12755578 835341291 368851406 753515144 598587353 198122519 959262996 20811430 774983167 500886552 483412669 822915217 821321772 621671773 537366315 387320426 31159484 355766617 199201537 437386405 452355280 390098504 831265189 898474912 689654215 109685480 112361522 629238180 693573444 827542631 719340646 132146333 606596189 117048410 765229362 403649898 67836324 12577918 312971316 837239128 940007712 939150009 9472267 658762723 740852736 694580602 488265109 309404351 477232322 979410700 293430008 986762521 980795637 326095976 229097810 72553890 512556789 752349907 241445178 701644831 691092350 340554984 377176501 474717586 534556211 255403595 411026563 712958952 680359857 598545133 70274846 507715243 61714413 715236925 914652006 279564071 216456817 90323258 292695842 303981705 246243217 555328204 731182837 932269692 145741290 651079354 905892086 222853158 741100308 773216729 158167759 340244928 70106064 442454363 321013407 439050910 184714712 508027434 929797547 841154530 352303537 609715058 946392591 153342361 857036548 898886532 280493122 104101541 326017787 588949106 374002700 362898045 266395827 543097263 652060990 349505585 325461190 883221945 13189640 294720215 288017542 594812599 71257980 623905265 706425510 990842427 785769235 112267106 440878551 691527708 10955234 581507943 156482812 611835046 491098535 89562385 317686817 346158079 566017398 218770602 212645657 928895119 696996771 605242305 267538053 352214492 635056529 932760062 944066026 75359230 289484671 675508055 801044261 89395314 698200039 181620932 535711808 127109965 451840876 689089751 758874411 330200072 148952099 665847876 497169226 727786657 904640068 912149780 759298806 343865328 939607092 927896092 416881180 891152786 406133025 858813126 773561183 694328905 787464385 60996555 768792917 348119091 419446785 673853181 180783021 204236745 293435702 465082413 538816393 579015231 899763072 241971527 165020240 18698105 510893583 205826645 700734761 554666495 159932919 279564312 273498955 649922429 598972215 558077983 434824902 506207820 104376843 458673931 727745657 713082777 329455031 301987913 808413093 149307691 247804177 7802781 674518961 933584916 194391628 439461178 915295162 355227009 908440727 154099752 973431696 372332558 666260344 632617877 150988644 154104855 134728904 168446061 400231624 191961777 54368681 603766094 858102373 639735785 153737338 762269605 344569905 707950253 903774587 75810402 343731565 751677785 98949800 922996364 38163 179978477 993622006 615546275 592738579 750627220 815311991 758497683 203042207 246177452 431691614 584760039 280139226 57482074 655302426 563705654 614529667 996110076 75807198 17117305 598886049 492539130 275242413 92559143 385899021 281491537 284242754 291434829 415462339 279371957 721534615 218213826 323367164 718040606 412606663 986333006 134840946 68397899 45120057 472658244 373272626 124107873 186962620 915270767 977253900 645076915 746376652 12681214 939296889 936652046 836346172 681492583 839837095 778807746 428504033 667532551 982257752 758075315 109885162 221011207 628043300 378027102 83130398 751089374 464713874 562545528 270844006 681177351 947634705 698652179 378571521 184144787 698253701 516701110 753124644 8086510 802089016 444602240 746195169 335366238 207157532 105329180 842037554 330904197 708043178 469254715 275478450 938683523 461522293 240173906 939103773 722175635 704087570 393434473 427865659 661175950 997781221 38228482 175593827 142615455 912292575 567256093 915742526 920127354 1631143 870985933 733445297 647948722 248127330 814760369 738005436 156387137 453983890 772048615 257764369 60379882 441611585 49099195 134114424 136912087 896808981 550372022 714834072 140408158 881878187 331143167 111990165 267311359 281005760 382649307 622275161 759315016 618626787 897364346 126137724 684036365 604682144 202051137 288267349 806407325 335648629 385136954 750414638 721630643 663124061 917199667 891589252 945251703 378676894 913862011 68665365 393471107 156379925 232024572 170436537 584625880 43629605 497262679 817584243 136617909 86844313 803360096 651153822 28272384 598524783 82936114 879253561 658322879 958133956 928941530 769727982 650195083 599503619 167529047 623182064 5982868 793758966 465726350 294098413 487685605 96700323 323713920 312911493 791731276 137246707 534452342 504402538 687109853 571556954 279678654 762233559 466703507 580392759 169494117 682792271 310242308 166693549 418128584 668459777 40808347 292365642 919364288 46480088 209795260 778834739 820319845 609336619 563476914 359433703 911808032 317404768 404779690 89288469 656490024 289583734 22259974 187005823 481294124 497380001 746391521 158093556 814832209 136444523 102647211 820775498 760937481 160720398 124136257 176092957 281379300 460077483 630597836 928532043 957547300 931862967 466757205 257400871 761200226 132936051 728419894 242004059 278630694 500837892 180453796 360765054 9672628 699249224 490987591 869946072 399498740 630294594 789242426 8212057 786559429 266941810 75499070 352673351 285031212 140941986 918433219 203151279 768538988 436487382 96355136 466534162 956878084 800031986 653239416 352607807 270526843 453403427 597899649 43246598 779910583 772019178 225855859 859023651 783042327 128654057 249591939 867981290 471239754 826180857 372516021 982201918 152441345 708532274 76230159 983666724 873526954 888186862 484577343 610809310 931879256 534300367 466769162 819528347 817206301 969347073 996200670 911322432 813545966 761781926 229346373 631667052 441184128 972239040 336899029 126576880 905427833 922770745 347286062 392224113 166482188 968704610 781740570 770537648 333658323 367343346 162850097 756532879 862456432 231135507 394831659 195213076 717144692 42458631 643779206 249126782 93869689 479727445 277953578 807415321 207688980 605832587 422477875 555426055 652444119 944681102 287929129 863293308 515288788 901402111 453441174 739943006 244685770 957492216 804393210 459987194 478290054 746956858 313127308 835178324 165163208 967282242 638147218 43016375 581792192 227771216 804906363 644530952 484606950 880531963 967668656 672269650 946338192 299181071 624039558 720860203 300992083 660141189 206994342 929018085 171323124 935329939 889588103 379022699 899611927 113086694 480998606 627250772 605996752 370876010 81965884 486054435 998858402 598878564 869062627 331475634 535248416 255758912 514949114 931352368 510359129 919750490 468797133 989871622 379716485 888711413 80430786 557240533 268128465 437067984 431964428 276362404 611184031 801913844 559767842 15503065 886631282 280775631 729283734 362896532 651122033 26283623 815121392 38434144 423423923 811829638 671302601 594781652 13383284 721942271 103069188 956232806 503292428 506766080 554578026 498623261 304102905 133743267 724712426 775652978 818507349 883285926 470105424 808606612 663254354 997861327 956127347 179298193 385293458 371562358 997543699 331989275 570999459 68209602 736055041 257117264 273921022 402492481 227991705 749292440 744837628 877972999 173148269 201130537 941001352 131893401 229389562 95338842 128781035 155486429 933456728 706502246 839780510 610938912 169637443 487747573 745794410 589266602 813601328 779624535 97087701 207016160 124372552 615522080 839189737 874966569 60301327 752085226 588692050 181592209 330485290 113518511 875951452 40251857 91193833 169594701 268626246 360141411 542939542 190506618 657766604 792687785 85519178 607095532 371351355 49915853 93291660 158729608 871001328 266495880 934978572 434824699 347401662 368088311 502034406 231320623 496796528 287182098 943197555 729310931 549639494 641877213 820044984 67641959 110974628 457676106 180975780 293891711 521295216 998060080 25105722 252575777 327571288 922501196 472959083 370015469 416030504 764847819 318139760 279384753 640532780 72614627 899826626 446674717 465175820 528710028 712506289 157150523 800589658 669649364 403541136 630010366 710238020 185496567 959229577 341349814 754263069 829229439 382486100 760767185 600790125 834757205 345013775 837846054 466691148 739638159 85082833 674666139 249018887 264087342 123598906 466815110 859657229 722426769 575902753 252291985 735894816 477992879 659769020 44152931 490376951 591669018 313712671 245406518 280023289 256378093 725375678 717100129 230645644 374260827 29186387 134425232 922027462 867745699 401158391 676155257 439586503 14188732 114392160 729480887 626821435 404853061 173881412 18198028 872974044 308305192 535705776 894217021 834177818 306315237 68099086 350291674 11281426 432252203 997487580 14579848 798439861 446123055 655395945 570912555 324511652 548553034 747125826 972537576 439175193 422723242 125990165 54518255 285786834 87549577 832445023 441139145 511275892 906861333 44581908 901390195 230255678 791711106 870175865 705374510 387393800 628568370 784358467 727776166 777329252 564442532 676611951 775953669 673349984 707906047 494120500 761248933 586789370 809815025 289923563 356031136 56296724 745657100 110050251 239979949 228844877 381845691 59853302 347327224 623069440 431269475 153949822 180297420 290347991 458885032 507183042 466031405 747151921 758121649 494937557 292336655 316549822 71886307 20140492 182352011 935825032 698682358 691336504 99908203 208514348 376747613 871736602 37375960 249582471 661875145 52554355 47969776 188752770 137527133 66879378 602591730 596353062 373406072 414535869 736094331 650018610 659668788 696411869 906517190 50815563 142628520 933723856 23203793 3425776 515849348 950912956 824097705 962459632 523426633 602489916 880221507 440958580 587108617 13243868 349537994 876447510 526231513 738671173 516446756 753962878 64325990 143616535 25171425 816766383 625884127 106919678 908469114 799149718 620998505 698931168 676582503 956230686 372153051 95617224 159092096 28182179 906221096 164513324 831825167 489385848 547493942 383406682 279685343 626116906 294893655 278584470 344386335 672503529 59536990 492514508 896417871 412770003 219110371 76891605 829401477 324438110 282968767 164743498 5471050 534049685 789600582 759256028 102186350 239955121 410181807 89053763 26833603 250648833 790456734 242429021 562294895 741228439 777060900 814311466 571018974 826500505 805145146 967898453 242546102 745075082 550081762 117160423 759478748 669686384 561873755 849294619 409749903 768095939 309695652 717371091 920931226 622800120 22082112 829343960 704869534 21664258 554650104 916860897 307886922 870170037 979350699 78979733 805214195 878564580 230792036 754883951 417699327 874007044 482013452 309792093 393030184 457267030 629755442 110423645 924063327 916520094 304234919 165456657 365498245 999738631 523054420 460823061 444186173 526416619 372869159 404762319 651277700 648249585 105204427 324973246 861396948 138844836 980144521 216404561 88920660 587204409 236572950 336181253 459708431 358202894 25645522 206063371 830766036 138469999 125925929 414843152 782667778 874229298 414570915 312385146 777788310 504081205 436588051 749403143 731313753 600444248 352851872 135356360 97787102 628593482 684654783 922555864 188476994 648250802 606875638 641756291 771264149 332840869 28513596 80654006 865748310 500765506 474213806 763414717 24912001 474283846 850691985 225394992 966975834 474789077 604046799 374338931 54136084 219000451 149145450 265703697 592201499 465453337 59583287 179447298 884852405 564937217 883400847 614651132 964030189 970239010 158643000 392261890 42217804 897413298 41947845 108023142 840394093 200401517 11616399 972727343 180870431 171331600 701654584 385855576 991038312 304989135 569693770 188764189 538801186 391209787 196122846 130992839 852008604 913383050 363843162 826135203 494754140 983725154 689274164 527413215 918093272 673286989 840813768 59167438 983017945 703480786 316655135 992425111 325067543 473394225 8357188 116938328 634289482 350396021 984524711 746420820 88732860 907143993 407640050 655761011 160507849 292659255 979349433 383494577 906601882 311161429 282809970 822409551 907046791 624793539 275846127 627187289 19847780 263256923 314642471 974758080 864316644 690543825 967253248 79921522 69864235 502091730 128616586 931733570 893028254 812914957 412751223 61742945 952416394 809056819 380348822 468521662 876574073 681493560 83092517 376159059 748831246 657300556 573418848 695896592 881842999 358605488 38668597 42998853 323314730 594751077 522932625 761058275 953710716 61044412 943235683 264759195 240910791 442927118 406831271 578461331 929894605 140143149 920369315 629338160 479417072 82366530 985479002 180674124 663515476 587265846 436581949 811069772 68114638 128617379 881322826 152952112 23908690 691128708 854079180 905825767 685019046 301045014 564429096 539220904 77687106 465528375 112149579 848090861 648314220 521423982 78937697 339852689 59405502 170331466 600474508 645996020 763194906 34105060 841202123 713757975 691909536 155800891 656254174 233472107 787116967 589406982 83673202 499406454 210376282 648656489 645124195 281845575 866116391 516613757 269572474 114345828 53184810 326789578 264405830 432647016 665178319 679288861 416431586 711827237 17125919 777842259 682192305 490473876 567145357 393821548 454852645 136915736 166456529 37293368 487331514 974887800 266540421 822965985 820757651 260977773 205181603 852237222 136588623 89012785 235538717 708294849 529018203 154022697 81520193 652490867 542421038 917535963 427350832 821900656 564058689 637208511 662963226 394103830 392571745 916729919 197263740 495711647 846663323 110652117 588406943 64573136 867261392 628533084 32781355 205808482 979174000 540891363 113420706 37219469 843441186 86564023 576606854 46171869 732698335 891581497 532099843 573333141 912711909 858118076 661683166 136701014 455107249 258356851 164514904 728825432 857581040 370758018 992290256 30094705 287340291 64927489 843059279 182697018 242630252 735867649 402326475 768789403 88624183 953809101 318672758 417758703 280018510 453050594 144775443 400670317 724086913 683444233 7208073 149557980 539710922 317392666 27691250 312717266 127053004 422677294 858984317 936649563 609663528 796869215 928843948 499869797 141859775 229469225 986518119 696904733 983000872 88290071 804482166 492896590 754654139 593699084 180011404 326335706 417251996 408478261 838970211 442321218 18474069 52465288 55592747 656427456 470267542 754520441 336904309 576479061 173831183 488613581 873321901 356702942 847337853 220875691 959731333 138227553 145616543 766483630 779257296 689653428 588164708 172009046 66748092 850493914 31025263 619108220 956576708 508898962 374253207 513380161 757584713 389412009 425337045 147038081 206947163 776568823 581569725 277448085 325658149 865143234 877160830 456457169 664235537 749699172 177154060 592008152 220831721 719722890 471417957 295909484 422508450 700849710 731985115 450479671 832661622 651756743 7205883 659229001 562239147 380516475 967625868 998996478 787422791 924440578 262847047 603013276 735826030 800627096 396866896 143043553 164422808 16091725 423088829 766064697 127241426 290201949 633945430 148402330 441268110 180286962 25366303 961896045 987860966 367707550 103129061 915909626 412956853 512730068 938073201 408083316 859868458 73132791 471345323 209538051 244147289 882170383 221920039 67897977 392135137 911456746 294138311 960398415 972187280 552924169 608702953 157105993 770804937 601337994 822972002 887969237 169390441 799232430 145348377 336670578 626617807 993389173 80628819 496320763 789991528 348227478 136675413 289763978 123082871 298797808 496857992 147799720 210512824 603514371 69725765 546837809 367913067 525700701 845770981 947872810 186028845 426245786 94814569 432735905 207660568 390117132 178569029 588519140 883256285 629002336 706480191 262105133 815642169 870115970 889938778 554860710 656576199 860843035 986295270 247613204 140807904 416093034 932825768 545922096 805316804 781952986 70177134 112078672 729719252 545357316 203689950 679596196 493526001 308573967 551891537 565413993 834889911 93538224 442107132 880828506 333988837 260919280 672056723 250861009 752920745 489786841 463188518 810295714 813181278 99392450 975745350 734597574 749351610 404237641 240027987 243004143 422787296 994056237 179977867 635772429 20455046 463584139 732232777 789582528 221803814 976115274 711835437 515754721 201856406 396316500 561117862 938159609 443831591 498512573 934459958 83542680 716998013 346683391 120120248 800863325 639825845 409565712 33610817 380524792 885450084 545582973 376774 715470341 196061224 704235940 970416216 255391964 688398242 401805667 147283933 592538832 619138466 621223829 570351665 404414345 316945390 304990240 560491729 897790956 760100135 515859921 32078766 477965515 854522514 89444398 581287962 221922726 386663157 659083063 851556285 633623274 42404414 335647260 596613529 510474152 775651731 736668499 100358425 477341581 471747705 58740610 663040361 576830922 157147589 570381935 766648993 195143788 187753808 911272693 740050660 133759201 59682245 127417753 573006867 489829201 117159457 127142664 168637737 67487451 297793550 77618183 73052696 230570679 341180390 474875753 880012800 961586444 92175879 249047866 408190413 752540526 128551752 107066867 526766590 969541221 895501325 639247307 376144947 452018028 288525848 351938631 449932645 138861727 367345660 802638950 996445367 81822059 786852650 727868096 319375029 362244991 362193229 964520732 658875290 115046821 588094311 635007594 618144825 491664220 135883706 668685466 147546355 483009473 179137317 860202872 977788902 744166142 308915763 319978391 886555877 956647638 599663199 812343505 865352137 519845909 536746810 237975817 238232466 249087206 756470490 862856759 138583631 969217220 440539471 924352339 714445668 26928490 780296270 45197341 603184729 749378941 329398692 511382759 952301909 638029706 714707773 9932770 504507885 545802317 26331915 663382776 280104976 874282485 155487499 674986340 853967301 564178843 307112152 479426987 856448735 590468722 906516085 731844379 198149091 557901857 686945994 846033559 317147280 426145552 199487218 119685736 231364010 949315148 119123049 274094796 367078910 729102808 796576521 731178203 592225040 59570415 944282566 546582687 46816631 443270361 217579969 420119595 256889743 5245057 717511609 704413401 377851167 870722404 42372865 1952460 562391735 607319224 334521946 625046844 572339884 565367346 126569020 324611408 776666288 764565816 960129274 467041671 342994974 465285936 403175751 184474575 656283837 965437282 104781322 612396602 230474998 952265503 250521034 115870193 783748486 572498757 762440922 494167431 217390919 811419011 630660837 666809284 929470199 443817828 668419644 632581604 864044623 417027899 628785625 367898989 662127265 949503448 16086995 592053363 222955851 539130253 168834670 22791824 926355230 805871905 658880163 223572270 803056406 812826097 893046353 573493306 936876323 718503791 164364499 248772362 598869325 966692421 112978365 169673217 845812558 942896605 431065956 604953846 584241296 20244802 89453568 358658368 458605987 632733803 152115477 26131958 276540460 232375895 92732833 17946142 952109109 250390713 164060635 413437464 715935866 918669807 838549300 794336300 506782203 939741964 857722117 596368917 372652543 121053416 292261526 66634955 580240360 877774513 731105592 608141669 799846921 408596998 224756104 366407566 837344844 427123783 467108393 46362909 308254009 57426839 166372204 866070210 698377821 790007863 736172029 116165216 518514660 252743778 984093542 954359702 745234258 76929835 784700522 445897302 736689808 344994463 837225697 105517602 610427712 569734669 79901908 800983167 27290618 210917753 637689620 986830843 909171946 467420108 227041420 574085525 350024751 588694267 800077493 516896378 532862151 624314335 30664965 295179519 58426808 467416090 223078532 122137405 490739661 282780020 651337559 910123601 774350632 765883474 988776585 86803965 745634943 38827161 442391238 633752664 335356130 934525903 85756905 837080905 866212961 628209867 128134930 766269926 882966917 292157970 527270333 396287150 80288641 48476595 919132867 822114827 772148135 166764825 388470395 223790724 519616914 270943059 911006010 937861867 995904427 217014070 674348190 524896463 573107690 153470938 41817518 173493047 357385700 768818799 619236922 384207604 998539361 946367108 10765466 573651600 602523302 443180481 251049917 301409538 438411582 676416023 258545606 842272740 683924282 887084571 212459509 597759438 268623834 460881852 347212814 832233537 827901531 17361062 38713915 470894676 418905828 306263580 34368711 474406651 760697305 715628619 946498276 328568071 549867045 385974766 334646366 47958729 951730830 322094720 148401767 233297692 229143950 256017522 258287183 505349541 143580848 44003399 110221583 617255400 149251627 977031087 69666003 345544401 396393950 342866809 40897306 86823547 490704381 360011878 571908700 843706990 846524678 493213580 656041314 615664445 718594918 11309479 865917672 766194764 630627277 861629816 941550358 194817106 349383533 608921202 407475514 416388712 202644534 3883727 233448286 362071070 810888455 291834625 574866960 330487430 346170769 876729085 343377183 264067459 393894297 696738188 620498209 455894031 587598988 210027402 72167745 18773565 772997575 281557501 963889865 956564493 812923983 597416319 173897934 667161814 250099936 939822625 861309022 985782695 345320701 515875735 234655674 312615385 537492246 872408095 88670025 588255086 519228403 357429943 83311806 229144421 922261681 858554978 603574473 171808843 334447279 201359233 487398116 76954840 78022651 104150877 435109504 925920969 108709441 421211858 911919771 219025354 175487498 992621300 972734587 867984743 433994756 584688951 149477643 249147282 979050832 344111168 169073504 256003862 953728299 632383983 197811914 156772939 126655273 247365144 612042887 376843162 622216527 830847389 926874968 874772765 979194591 548774008 127865993 751015801 854374437 664571268 223978943 292410437 665475950 302684189 980337992 614487569 132678644 734620271 599186135 589795987 43517501 380040610 549347999 217948282 20581902 929492594 660721302 417583393 88968161 6130526 43194336 761971547 411625326 136040853 634705201 672564327 102815821 413940770 728191067 136580559 680265157 933381648 209311372 630641532 795508612 382158248 935203904 676183374 201452598 325674211 139065494 631314681 557843409 192302886 32437839 129840358 362803551 52206185 920688036 546585864 833872302 796322691 509799925 397315154 548205527 78060340 562886022 294874517 365902137 287433410 109610502 44798139 577248 468530908 350972614 175921804 640114813 39636131 624659750 305247515 752378845 64267665 724010958 990140045 275675884 194008547 927229935 350263432 249051946 52253768 136650602 585155184 778042828 684149383 603639833 937172057 63679823 843148783 990720485 740813937 271746278 440666118 652236473 813387069 434867929 591540898 897898436 279040683 129672867 586293937 621851844 264142085 675935365 331118689 590736302 333901978 896438791 467109644 62406837 164814924 223915547 37963346 656918165 820897119 697550197 172738849 73948634 301183976 973898643 324972847 928411014 736490056 292375682 154546406 940135104 103867394 151907309 190095731 868182633 218826335 211271189 139301682 656922951 539672866 467868491 682505304 357973436 804077310 191598831 512340264 494015438 985834851 182897047 414231351 149944722 123737381 361606880 239507407 405706451 732343549 151578612 248060246 992392718 368086550 580825501 408426628 809226931 597841666 913239301 815815121 971479814 8742652 558332990 703731114 149102336 250206905 702800810 278039271 318919228 864941400 907690882 576139157 24123349 211966196 473980180 264300185 943944366 853905446 613988430 524516951 198120424 389955656 732990661 125194741 931409738 173879227 685721419 181423449 643415852 500186303 757411599 247585313 328198548 933534508 147582513 803988372 942526246 653368853 161151257 516587225 402854960 635491728 251905388 89277831 630304796 277159465 301233174 397289845 523650922 896896564 437023780 504186648 560435712 726626852 73645895 901349667 882754273 99352785 243915576 205794450 240997475 462505583 670925119 189751921 446949058 48083925 159135297 10443968 714155819 689148831 681507584 297073202 677095566 322873615 882651567 388093970 337718551 800213882 580549049 977340843 775044261 855271751 66613144 169883288 271743784 457277569 339424399 3989367 128086650 657251179 904822669 251774710 653716142 880104626 235128046 869564388 322340229 529015425 886953978 493937804 703156124 770668996 719898429 294202819 107234793 136347006 605795666 724632888 528472261 167433943 667058722 589516855 585279856 1561066 202486146 381409173 443754906 639836218 494276284 627184832 267793626 36019503 297907497 15613927 879497453 475576293 902287520 214479974 187929289 825968125 521382926 52507409 112834309 604348328 172612488 411099005 854641013 116617184 78953575 80094832 713571484 325607605 384807818 412053425 78918204 273396740 179042740 375122655 726591376 152156805 418778891 16019103 129955424 724414486 15773488 78458060 436839203 767381296 874876067 481240859 748230569 652287396 234551852 660798946 381619167 931939064 852598201 193061676 194148369 905010610 227961101 295587123 928720520 761902417 324131431 667668446 645027748 126640291 861044035 849917128 745496063 281675345 93584713 876037198 486099300 232836913 484990637 70967196 409001805 1003437 941696302 708495534 49757820 296155172 171089998 728105736 54497432 500719183 214455126 744892948 658654361 558996465 826969511 572873991 962749234 345374849 39652827 828963548 930705722 286922876 403960629 236114781 578801851 518032894 378971292 498392857 768876656 948689946 409805016 231434644 171262606 706201460 274491546 974417666 416524035 512585222 513677912 670795912 364291924 909091576 347539507 764178875 503499754 845456238 613205396 618940672 302457883 485243027 398694852 978103371 735916799 114770975 198833529 274975946 322773310 199782558 259136584 346951606 957204575 872398683 801947805 220119068 245217863 606256821 302006818 422948082 358265478 985561968 18150135 175534322 307680739 277811650 887799709 14282834 741142989 411997284 681208743 621638254 825353183 589312403 313741688 474838252 300285283 978412055 370794207 240483033 119147393 543636879 637555133 170629656 316696250 790397991 271748323 45791787 679522082 325162094 997803984 940674322 713855366 83212126 447929651 45728612 258764167 417927148 813072525 238994942 633676916 482960063 116612248 686561305 436198854 892642400 985613301 491636937 11081207 716195559 654831874 258719672 301248695 620489646 666055550 816402808 913125771 885204754 953621070 604227294 493333244 75118203 687535506 682221065 138112335 901889318 225121834 129138627 127349210 469098284 95716914 240158240 451180042 581805832 353230696 361148229 603406935 683163935 702532340 67298439 232565119 87837329 863101872 604355873 836644496 414263276 291212014 637249125 901986349 337952509 89826382 834900607 940888126 124420029 584868754 781710261 486953673 783015209 383852725 339950474 563601420 307725382 99856090 419865425 875726084 523278361 168591250 272726709 287688253 423912933 837469898 290298557 492655937 101570031 241437256 152855032 154491300 257098781 639131331 844231062 481565783 845111344 456647299 9717394 402677904 111013583 4818439 178234028 366821674 665430254 810405500 760957297 73535913 624411491 244276769 30694805 483254085 278279548 407352498 738528335 176659459 374200010 195486347 702381687 537207126 74758010 284900991 783750054 777550554 831891512 418513027 160295730 883544454 821712588 433080781 2324350 191264379 898299152 554232371 989183655 948692059 593096148 428325751 728016813 670816357 735657718 294034741 75047456 534050843 509648855 26422479 320452934 950493383 170611740 857850785 848423421 201455085 288682965 808485545 956948373 727404137 988468526 362313275 486723066 246394480 599572378 794576665 380486890 453731620 718463513 958765439 754679185 963914766 818461212 222770615 752849469 635360327 337370733 577991118 483958399 949611920 537520562 18316913 189547657 981208365 580390858 905561484 659453049 281597099 400626644 990509240 82175195 839837791 490878835 863038101 572714253 656267018 61563572 253189514 790422708 990638626 681368809 752097271 643026561 439078141 322024266 43505031 258040653 705371040 746647008 52248745 667573913 637778340 684151662 683474389 651475275 993826298 170279985 816349785 955557690 972057951 876319450 689081029 413756652 724502150 317678457 853678229 548160994 411815205 787533784 778697718 638229973 490105236 451389806 609312491 140258494 462308921 636837729 159297706 354722032 631446752 811271433 330938368 607306243 975629564 133336006 852569603 625643305 466198973 35269479 468059546 319272530 40324602 237789894 786898803 443936358 746422096 27764767 467447659 906450458 635385012 35180934 721316594 92585862 437757225 239102343 974971288 82394491 870024635 473124315 694223303 502020849 705478929 624741433 509825942 89746571 148278760 393119672 644899698 923222490 86268456 380503417 902487799 11316464 905816177 796266488 310850807 834966571 457639425 215836101 757328560 178475514 25417424 373072670 329148855 902735849 118740329 556774690 989486408 392125582 499505836 139421783 789133513 739820076 396788417 806501326 126423572 282361783 179257725 617485742 478569226 847312140 536717230 195800837 677724056 488957065 561265339 850362785 747548397 965615616 570732076 122469168 871518668 695477575 743289707 469882571 410134943 700668135 737332924 344113775 264100903 492664935 663816304 250906536 816412503 407171445 324828294 181096162 742752489 350200463 174828022 526531295 184800687 251451342 388480369 358755143 631039239 70406606 25591679 491797563 145167291 599444465 917380387 884919165 10145036 263204580 398021166 530107594 371278089 492605864 18075165 782674026 661708900 585546473 591368931 639487262 958440765 568250516 404935236 249589963 379309338 162041649 690965711 799254436 243391871 850225160 324630898 918220075 129593449 185168908 631915542 594329380 379077046 548359192 456177038 613136326 970082199 200982648 799003302 801542025 821521321 643029840 62028454 580652347 253612707 668269 750320462 232326185 360845020 893333993 291859304 494123072 642194950 100373414 696638409 986089068 453311859 525220947 787793409 171408390 115251545 925399611 381462999 742269343 324242471 789282187 207464449 535848798 775831048 229873224 6007462 492797980 876000535 298691312 579391352 850803914 125459489 809629105 11551608 626400044 539917617 585599649 779627723 582654311 972698310 756545886 849885540 884216928 46912253 754867717 892506235 24807041 141522107 809221703 808003489 953576981 837275880 197099224 33446115 617776801 158903407 364850783 114069030 552343450 3913210 681686159 65920678 850594449 680231574 826667387 732884506 188590963 602527861 90408712 939367222 166561833 949916299 414849870 246969508 871111883 603867416 499442018 561170745 997385631 781357101 520295120 250484706 460991432 355160075 709803882 990076088 594634067 297255127 72440012 557844867 325140323 369089854 892330882 213041328 695977155 731285341 606421554 212253783 566914519 634628711 759116302 313825019 796170117 325406616 623289827 452902739 213555542 593228461 710870644 927031208 209457152 316335250 211547953 608370860 587803367 820419280 849736796 504536176 913164742 529767094 680175838 219769464 769119934 651148245 246856593 3452466 556477906 138322926 389923697 650473964 249091535 216793053 733572639 772013923 456744120 554193094 439035299 694720771 109478677 474555357 782888314 193652702 609003983 360209065 720944940 266882186 417686124 751788394 127458220 453829997 563385824 898533815 794075874 582828279 191198426 328220440 434761585 952930646 69489648 675569348 118267144 141515972 599199802 218964161 932566623 713245223 844338927 692042212 681912504 777945626 589964139 993542388 224646278 590682872 757635404 782472682 492640850 483212400 472995429 105694506 614529711 890177723 719181319 297141301 351727463 82542265 905706124 802254282 688686288 796318605 124063927 414688208 887724105 29062399 963654867 685925347 272181331 653693082 161981571 407577511 137772237 543309717 434585455 9278013 610148551 486169377 958117158 113813159 490760646 584886777 729608374 214145790 326168923 500470137 779205276 648988001 325995283 226852848 339756698 392363519 31578809 812705165 795004741 65249603 201871647 592464818 504428245 661126060 24793809 579405022 218197188 576929284 537983837 365574171 188510552 787058239 167881989 870308311 393716624 818967755 476354845 627234926 739748554 778076274 535897509 705361245 27345299 465283216 40995101 491260217 127519374 677784431 455604789 95311023 198639268 158931996 496866770 90540751 269424765 37794932 344789494 242310913 888925469 690385031 474478625 813820422 879728316 467933032 522051667 167037885 122196511 814058601 754978157 476948584 822796772 444037827 210539482 526297750 683078965 592635697 994320744 111781552 644948785 711547859 635391283 991822343 106789932 600542077 311231435 572221649 61770831 879736773 264310728 151221075 486760623 989688830 129019818 387196007 714456960 999319637 770587247 569058160 3334311 489511372 135625626 141257521 48968603 240229898 66762057 559262963 34687823 37957305 579328474 868062320 80720874 790305367 62691774 643277492 384352405 686130090 643844790 705500337 446395834 48076203 826751462 777281835 138699469 745604967 117648685 832772754 363804012 647443981 145243303 40727707 387351856 317913424 59731791 155167445 133488046 507717388 735986691 57603971 685709997 849765768 928441448 141899258 456300192 684127163 444413650 327740893 315328449 542422231 51016761 64911129 336136577 458133794 673947275 766586560 383667714 424425223 401694873 788110009 82555323 252670684 271213352 604406358 215344057 618099110 854366459 205182439 149260164 27054325 3254042 355042339 964688316 505142771 180214324 555041110 48585892 697809717 333218971 274547707 232803975 644395804 437744087 206166595 889090649 308995088 146463948 560425765 382060497 164781744 442926559 556197418 580271523 963290123 796334197 259153548 295485495 520988379 420948020 992242300 506484317 35377170 49581833 897266076 505118 476559599 698368238 1354906 693655042 144348274 471097690 659669875 534460708 286403164 328312559 92805321 421751559 853878397 391415691 354585258 267534304 63150040 840526137 999709212 610284775 113723125 773597891 895346405 507738420 369350618 460259924 714987393 379905596 908843914 334389278 58244419 310092623 69211739 361098151 623559648 851349867 487423004 557386985 22981566 298704281 94068935 726569067 564260327 662567223 500220946 584933643 511024626 736256320 431737592 572994737 822011776 64557987 698366150 96794619 736513433 984636694 175609433 327026692 889879466 135574221 218984407 619983169 869248631 278689549 470075889 126677575 947899123 973695118 733552474 259197054 781418343 723495718 716436099 416726939 851404016 327484070 895136012 859830598 320891337 117058033 175223363 887074819 615832618 962686937 560447495 915700329 411180111 87292400 741579910 490683888 75844777 471789850 727289980 304059544 878675531 793646063 41418091 14279773 660113930 118303993 108573059 875563377 981272814 99337763 637623596 994581364 885598770 140574210 535527742 841993343 797582652 162214403 714445958 587709992 329360853 476069468 29998102 382727723 208029274 470711735 21546163 747961016 203213592 527117786 734650873 628806018 540510897 361238642 64655990 156643108 884148818 124153060 117501009 575931064 400078299 924632535 835326252 132506846 858389775 390803690 775333312 362918377 313788521 21222760 542694411 639894860 573283054 331649680 477814642 91695153 788719962 811239004 327550986 113940245 214259612 778223182 246799174 674683770 342762106 801711843 98803357 678943826 803862094 943301498 455322036 10169432 817296351 609855916 551455421 267945836 101274162 102060559 770471179 784820168 865781675 566628261 353079534 20057947 571833009 859257863 24695459 549299206 19471490 700303238 836810747 245996403 533208676 37039321 424028891 298090918 451746729 653423198 57987390 935606363 497607885 681906846 19170723 918020781 445310504 511347463 466826996 252659556 958230885 798185864 979134667 46268624 408096819 884713078 329453902 570090881 614853837 879376189 842496974 599795540 442620758 452234520 743551407 456848565 115844397 480380242 789249015 737467548 854850740 529665672 849652672 795483963 419314327 536175267 882762395 782592642 381057299 439520101 960053388 232161663 216977943 465982286 216746201 127955687 694812665 161304561 364475864 830180137 868694708 5847474 718186633 863030186 326415339 567028663 145061496 938980290 148833603 486649188 649099193 391474384 939779469 775758332 634546462 180258656 458132442 995079820 946529470 38622900 768060230 262810103 565095328 905700069 178642404 508783999 911387868 159182671 473432679 130416232 81535023 198663990 626196953 838639466 94475471 4382262 505906846 144631930 413226046 863402085 308443315 602521978 615171048 837925707 404851918 94824905 725763470 690498105 688403753 905706349 150806763 660825255 958096214 90234224 393413467 703896156 92249697 633212784 772946065 61087883 77322642 316313518 136017619 716644591 113733064 535216062 119431080 391953524 253389959 263755055 566871280 600796137 907768258 307243780 681281961 295550621 303109441 965575688 729090307 307856819 119598379 765432195 238774607 806664242 206902404 262838200 931359978 230165215 181121575 446206008 875891072 687378694 730636277 120897278 905245440 156846958 629768873 934493514 175484866 346064030 190718554 656598360 148852163 925351755 617471656 297540412 682805369 182821504 656355536 810464353 201318548 774113813 694367043 513443385 513641760 551557389 782185516 277204706 351118945 26757527 725841485 854505322 954461482 847438413 371526846 124731047 968525307 184778548 957982334 44470965 420341025 510667302 653504009 360193582 527832626 248835684 197667376 429992065 44207739 799002187 939330709 126970800 299847632 834138155 224928155 550635743 813032583 317039881 321415687 749716582 859904174 976083729 147087517 958852722 848100018 501907123 660581388 643443179 283592021 995730765 710203856 823998810 356182278 831067940 612265836 90193791 336312694 692613574 783930359 961494969 966975388 704386138 854695283 723794000 690434841 844326011 475360888 770359949 569913147 551826555 648431354 223907444 577018155 350766243 173309672 872947733 281009913 571039632 658033538 258437630 920659524 195965239 647905777 244516731 547498077 468692207 467069569 723051510 348708736 851175565 222649812 790291003 822592945 115178248 388699246 251688766 2230891 988759227 733813706 787240157 492836729 55456838 758102225 992504568 39961223 47502650 146731259 198007985 986233863 526143024 330352736 162566856 574618656 651812777 782124424 655690407 904985794 708584240 285659931 161816004 755292133 727936956 498968193 722572282 463801003 624452235 670358809 37063128 689723300 906999863 505341017 75815808 358969682 212712493 228859400 107547400 321580286 368628744 467917738 413306468 869260407 218799648 602670786 40770725 485646205 812121696 110312177 308230794 953871862 275105242 482142856 409349089 580802413 808954892 547610105 217512113 179789632 275084896 223387583 526134683 10182264 897176697 778379287 532797809 562364302 481422945 98173251 257968972 927277850 152687700 289920885 755419255 25223220 636928588 641291612 795596997 272184579 775936973 307110103 279559747 432249660 104373775 358394566 611115209 658509923 51014720 969400470 312484655 102731232 974613181 876979786 400319036 991095187 384160814 584095587 950709652 466267042 946980946 534824204 675748879 715970902 314348635 843356740 858547750 939279395 684151913 957987124 47749799 270752629 349917950 173637650 413261275 611178517 612793363 738849476 128428640 360022287 326691347 496583738 94016024 417592019 498774338 869727938 18651719 525367443 37333944 94610866 107325513 545565343 567170561 377808201 129357639 565378741 314456377 650511447 855992143 990344431 742114408 833057562 356314933 181925966 31035643 266940744 675735730 869516681 808123392 755089319 254622402 737402818 734507035 209701292 161457662 202094610 139224574 297406284 717772894 78178932 22048242 379022235 140885380 190665661 740714333 226982093 762791356 441201874 456531875 986644554 116855420 310394625 573851720 639749637 574711201 884357569 673539794 612164143 157402957 417307610 702835474 993417357 687148552 352793902 929727646 336675186 72046829 249419039 141012215 671321118 682233336 617426037 154092926 95046349 751892590 564346591 743693742 158866454 612249128 776587397 954826625 509420931 803545082 513896461 770608078 326178407 734465255 228521776 53965577 161966606 380745855 77365117 975645203 896865281 789484700 356176499 161510980 100380848 777712469 533228158 75832150 635437301 354283209 796432334 669119727 132244949 411317675 822346173 180148245 5181275 310109209 82211686 774797704 322180134 290982344 992398039 593876545 608404020 543232629 288164843 640879545 480411139 164769914 308022110 122101951 260459094 357978921 430537748 61343306 983273988 394042776 552978112 135380182 915623177 379402474 699379789 321090834 854478802 15786610 166914236 256965520 274017701 473838974 973977096 161318178 466296615 290356071 528892327 49799400 533261123 57502297 126830733 966397493 11239050 500118655 169791261 800889437 732837049 576651242 444910001 54627592 710078483 930947873 714296960 747526363 789649274 610557279 706624255 220306289 584737671 555692312 158585453 164446883 511914667 265858398 127153647 320424903 996256281 616442171 255190613 103586634 309853905 944526227 27757899 812035031 238561388 609922513 38480153 775537019 380251745 620160870 416427984 527708423 826735439 12248631 63189085 464989188 823182713 411092652 728044779 972501340 458846968 813685922 317334506 763995771 839065815 745441901 893482992 190675610 138880232 382141033 476948173 850813920 465104763 187161811 915688986 542789400 281536101 309682467 619169701 458503401 469576275 690510566 2356077 838867311 75239459 583285853 699424539 550445101 982460166 679973862 758748798 186044431 352708739 358488958 152123789 25681105 622635593 635451599 697959218 985974346 837817245 976727732 618106585 228472232 964422202 353046810 256354115 772145096 81637342 653112800 29853900 759841382 370358685 292016517 662373655 914267434 426038789 271478660 274531085 810152151 157556605 681626105 524217434 268633912 94930458 437113840 850415858 655057908 241170496 519543699 754816847 601293917 206133103 676821966 345161372 899105948 845858190 244039990 466271284 664366933 88276566 774113493 212194098 945014034 417747036 653068892 839816337 548025167 652105433 743602444 75283673 929431780 770488220 284186563 846831452 296543893 918850241 911844139 187900056 853592028 131750017 601024018 770320759 393793398 662963528 333025790 957413092 548136600 103693691 963066709 235063726 678269982 324542528 39945942 743650406 806366759 660465577 79627380 649378138 107491999 454618706 924345196 616393844 231469547 504689311 551258165 928076299 797048725 214396278 756724771 434426358 765197583 143598580 924036794 327114909 772725670 280143023 455674282 376461233 379827145 165701032 409080728 517511869 998359992 336180687 22036470 561315063 450646818 977577269 689933168 705872491 737326223 286069171 38395678 285169824 188834577 972089376 884109136 249008429 726912650 531073487 896521290 109051210 793222717 417500870 237185217 442944608 471492789 625865105 340896037 45770884 785429424 715173300 440209440 133166533 752598062 123136617 973806033 290890323 149401533 137015603 354484821 689925206 713658638 993173733 99504134 989777359 992671036 552767586 371684954 902186774 599620133 178943883 268298617 677861746 226694428 545797058 601739248 79139538 986517068 800013599 850944147 719739691 351859860 759127871 46193974 687106873 100191661 284166112 939558058 78878484 267471574 495904385 387851777 588023016 29946282 599404912 179422657 985224791 577340839 618530280 914014356 510955354 703606268 617005460 337480175 247312576 727051673 252120312 844797884 701555595 953156421 9461018 585900893 965436926 524431462 240241389 193332844 755737322 541138464 388674041 477671313 441061840 902878653 917382370 921720156 476954193 843582652 365722386 381838554 272228112 863756310 236005581 941173115 587574320 580886731 405630480 787142131 849898116 566484896 594535109 280839889 16743864 539459333 297517490 796059380 81647796 897181682 851326754 685138311 158867486 824920363 468785044 813647015 647647009 320334588 668060874 563933870 741070703 167748702 860426635 174900701 45512237 758994638 602362325 516634848 185824234 378984472 412326803 93023217 512711157 447740410 969782207 113490168 166219905 440084573 474966474 11660960 884284068 57101117 25890376 895025258 686509510 827540901 405653460 683019663 452655919 253082149 375053698 28037100 97512392 488454612 159405667 63994837 247119237 594249735 137839262 320108354 831939238 360162809 344760390 12171681 966648457 772090554 138824601 977581943 497108857 61999773 101017831 102410433 910000478 600031422 391500686 734792879 897010425 175183420 116103203 747977285 596813405 447543288 39443695 385648518 925444211 492143766 303903433 333897538 493915847 64208705 776408773 450778917 58274592 290205687 282593304 549423700 379543996 747751305 242127008 538943533 95402567 879774938 152337952 482010880 201579573 327310802 78305338 505393460 328043669 2659875 897166201 216790632 283501302 957545234 975702857 469198397 414970549 566041198 525863923 349655548 841789911 390630537 886245473 785701567 967326369 534282910 775980908 829560941 712686500 488264948 882748474 124620149 307651308 698164958 101421284 674788188 650120776 49990541 291169546 175506067 78677869 371734377 97669890 103550295 135098047 88690052 959110591 726537106 808623447 503337523 651259837 699696161 125473462 265310684 127238130 258725372 36885661 764530340 291692086 781340337 53476943 515273871 836176914 643965543 148813830 16217381 151423140 342810549 326264755 290196889 857315839 882551964 116731975 241403312 990226490 376231199 203322219 54071020 264732987 792841866 904005602 575769875 400715488 891698925 413217868 669956837 926738509 968828032 908639662 250902459 678821933 609796051 489502832 1940531 594317920 230095841 7325099 975447509 161584815 163223740 919426190 105470 140322290 966533788 862224460 82250344 193971751 193295105 795730152 258608009 653354782 107156981 386450245 184724797 769524856 910649377 471941541 564860370 70138102 244220589 959361464 571629525 815193029 338990875 86881837 15128873 247205643 414227303 459347780 369481178 627208023 629295559 264079143 400853022 223533859 475741309 660388786 769611226 293113595 921760094 547218932 965355811 175625586 990546936 356251933 855046136 68686501 851504339 580375600 783304213 962373031 211422237 321017059 54478184 68477097 463587014 893419342 438989272 842904143 579732399 136661674 801645097 484711194 776330429 620449560 961331423 168833490 219326780 998890524 853314941 734836564 536997960 644992250 317672100 199448470 290594574 300981682 889805974 773929081 957014850 62167689 45386585 718190844 77643322 302093694 773556153 82114319 477542110 429206752 928452484 560647739 953724159 584214499 25829098 157287180 555788202 105695093 684043558 423182270 597061426 801325977 201388919 321298796 654473448 57212289 93311867 828142106 171505843 11584976 959669089 3333867 311713229 834727225 185441323 456356439 202383851 483588099 33012606 260191642 587010645 716070169 261376885 7312075 690119877 682149539 814968929 136314151 61865630 628171751 761978283 991807913 104960169 601007114 980383498 688266625 980352657 363929470 748474109 557345032 541987257 852485775 617905161 276045045 808045865 481493055 481296002 372985200 477624136 660144267 907453839 553786139 55790208 640283941 678272512 181426401 824828678 891048735 970594702 770120447 207404015 678449421 388493771 717817157 342642737 984332053 926070595 869842784 812078984 553768751 685610466 498090582 661786830 152157477 788817239 867355129 304540169 489001083 690780025 900787644 651342753 897273058 513888142 49074485 348028933 596648160 171902683 276635860 305549605 62835651 128901613 614670870 678443168 844680519 880275909 843783706 819215160 177746465 568723780 57458832 841583428 915801375 105936850 119762744 298835735 94919276 928174497 144819732 15921461 281218289 909360763 38970339 347011060 244292311 191876986 878287976 264754466 483771520 624997142 266158041 916431466 243994229 3147588 600453834 108855547 767928387 911006002 225125438 981982391 162026858 127791077 248108864 739602255 271631574 298142659 518179613 909525299 604665534 505626475 718158149 500097970 760874865 242446725 929087308 128390989 485467694 755631352 856853144 245434761 118329248 571577475 22142258 794547715 896092552 85497771 869846766 297512798 401549446 608574003 79905198 905013976 693231511 904740503 589107500 409856524 253324335 924184686 885158271 519367044 555528140 843555278 607398917 908677229 221989053 501636556 959102033 558644072 871951733 592305678 746262374 432686436 438284137 916906190 878820310 938801344 294891597 379625242 294937098 108302177 999079511 545252069 761632262 534419726 454275117 26802188 699942527 289010625 48732999 339466561 218444310 207638870 809868485 494964473 914931619 766278050 420188580 406421398 55884687 695252842 652687034 290735084 373701805 316369191 301076539 18796418 779120175 756295271 296176886 156655348 362509418 162072359 169386100 904312356 864867406 617237099 317895618 113496960 368347467 393530800 33013751 356433563 909159172 963479146 716546995 13899981 282820748 380698517 478261073 992509160 566030804 902666226 270399013 943532003 724984069 626028093 776660628 836032000 931460958 814720931 451316511 199958690 341422468 460353788 943632198 689648534 782503601 718046579 305396460 366146287 149858508 958986331 583746256 685570369 232019602 374563684 932767643 281903358 116641709 718835934 79717554 91956542 174642256 282923303 491238515 164389336 130008195 965388959 880129177 496059522 664564635 169258556 564747274 114999024 769107264 65116884 333558447 594023930 208916758 586733739 725255503 456388321 409598821 614123531 403281445 694060038 786598961 799366124 487365458 915615943 794679719 243145604 851594109 183277442 718623881 887412126 20667614 889144488 287624812 142995143 906968776 17666978 715729075 262439401 556157092 276191934 509516205 944533968 243597533 860656260 182495402 936168160 867724720 925154674 453161677 861219581 951211108 994812648 499042277 111895275 444854568 528910020 333469126 465496366 133804958 288687025 270249474 643304893 29600114 925293866 748652179 542521998 308343278 824083074 719827919 487758603 682849062 808969493 66061687 578580534 582000608 47675326 472773309 362362467 331192752 376681223 582431223 15898277 563895499 522743706 473766652 806261627 550378463 217057446 152566179 581969675 844767432 582134762 552793182 577961472 687663985 812812858 850622511 687042803 705810461 708696084 70796044 387426932 426764559 212186120 586031101 639497447 273580335 611947093 921439087 444176124 83143717 631515449 762910227 815775317 184319620 512317456 460991508 574032373 745076748 792495984 813684123 144654457 916003821 379159341 662041491 281775816 188728744 695681664 16413903 911574744 925147759 661184205 93372969 215121541 210740992 136906314 900005098 280864619 164802638 371514252 838150665 163697807 649442998 976650697 497352192 673739172 691518954 904018596 185691334 332766372 981156517 695159006 762269294 975553470 397466121 318547003 522214811 371828843 401816320 155026133 695300155 832379972 486873185 297486817 818686741 383271419 646226766 737476706 207996370 309615779 727820402 854948797 717819498 183192289 985245013 941193432 375757678 891718201 650803753 382785129 876028580 911066621 884578288 334308968 137726099 308101464 304656622 296166749 584683604 4683000 477260234 4836446 67929482 358968088 706545215 143395989 970619004 307788164 802225605 470609665 259128697 338060379 295202040 293836380 830182256 325444800 432636962 712782278 473747673 276274994 449943406 496649431 756310443 119142267 927731357 628736323 710216251 941242940 829179719 693487145 91595021 871875133 920917124 161809367 92145290 666230705 26391357 411607105 890222835 843628885 25247863 512733946 296475532 383321971 184336092 646631140 152792637 392921572 27071100 619835295 114798406 556622730 658995939 967470313 548579299 150933914 30382253 791448117 380134837 980785972 280542503 407514597 967397032 188014288 347551461 210606480 823557611 895542801 376483183 320850500 540399544 730623692 707329842 1577836 616331545 593132692 432369985 557243323 267435842 871254557 545280118 52732678 229263916 161145933 218055117 326325584 514368169 434156082 883965107 988732896 849702343 18084081 707719288 995173724 619244067 492765013 602741374 502731158 764395475 277121526 927718116 12597648 338595731 43992430 728385466 982608883 30332823 646526928 829049332 384993187 505394769 132290977 614036133 983747405 134776981 403985958 503976007 467652717 531341750 142796433 169430047 842474388 360272497 78038720 820797945 902796884 66402975 886613046 994352726 55243814 394332788 630499171 383436353 614634504 253512598 928979271 476901400 828553988 646438104 919356011 321303175 615168390 635342072 835838541 303445090 312332410 31044562 802728013 849174176 613966093 258436533 586002186 909250481 560201919 923577893 717479029 965831359 947260934 772783972 434530043 590560560 594855760 85852743 957934733 342338935 428972768 697314028 756950207 38375299 235393371 797410865 580157579 129773291 864742832 361055743 88366121 90611570 59236984 661495654 22677308 13279720 84264978 734915065 206359529 696249100 475974337 330158203 740454337 89741765 148814910 477012253 626063928 592342884 84129892 75755176 309548486 984373956 332726603 182299367 381677907 153056136 757311468 526030425 974619014 229904359 252550050 234892942 224732441 799705249 726394570 337026857 293022311 363904987 560478493 746507365 842139881 250489767 146402981 200541263 914054729 49664732 237955032 47390224 135094315 781135674 507952896 432665553 849623258 660457894 298024082 738084740 924804112 589103713 429446811 452071579 782392026 849074935 707197915 84966655 96836651 923227020 626720085 710413225 911625710 285773753 186218936 602277549 28006171 845965398 538070466 292358052 843611760 475709357 569844039 840854196 971707694 501316981 342292409 231277833 573227977 298042657 272222728 399288160 504286656 27584988 242471989 968327610 143952574 996586757 390398729 442592404 134972680 651297531 901066707 725883537 520742257 663683782 707209903 646071198 84187425 361299328 796909954 104262586 21159649 621344636 265374634 78502999 783299776 83567467 435077108 103148692 87519055 306388817 505365797 764499575 754868706 951125240 159659113 529620265 802993038 62540611 661797299 556094244 110968309 69289710 591399367 381937634 85063886 265365818 256622728 841600540 606211269 76591128 712344991 513772359 367649240 658790968 975733259 952936646 736934232 464151810 911836337 132330874 237647481 773500955 926446994 929642113 812228937 750745548 755739385 939717385 146381174 625294846 72734684 910976770 889354960 963768684 816578949 357348973 650232470 642205128 18814202 976189655 262889840 994349727 340137368 270603501 249822305 842148974 108742112 64443233 720332084 357591071 422163372 804597666 715175691 432606791 17337841 374764722 910666359 708578808 995660802 245991421 631380820 435651578 519749701 897168516 466310495 781057808 438397843 654292067 959263177 655284756 991871726 634379842 572943625 648716885 21533336 800863230 689295712 840889513 114726225 729027513 183332352 504143083 840557043 454518844 605620206 371735706 889645452 860283528 74642883 894948917 209930450 336791567 382600885 348914707 646356217 194081205 985292930 884546398 901212426 354850636 2709748 570835551 240261653 850363112 102948061 720957101 539882863 468338295 538509146 406271298 97920432 98985179 150704879 388280731 333120456 650644733 363871823 273532188 787111571 367625064 770756414 589492507 923652818 36428143 615240264 976402702 953618169 783476141 875358908 592285552 219991748 457030496 804118527 908335218 782489951 685700250 472391016 624790558 427671235 994221616 994141049 520966918 804305177 420183827 404527231 492741980 288099782 358217997 823118622 408371701 868620950 460713732 782828107 993470815 859535866 87152534 228457211 316766062 479589023 937171870 933829467 257433886 986440196 655900533 233491191 873731038 553778412 183835700 611151951 40316662 925060162 125575490 450218152 187730007 207445573 804396050 415208645 591491989 370612127 775222360 836852870 951704275 234809619 580847028 313510772 632007594 180999573 131968790 779845983 432194223 116590442 358731451 523062372 955470718 425318513 102972986 5502146 951372457 332726868 751911476 887031314 695462782 916589178 516906287 14589419 234916353 213214032 448562473 139829610 572307174 238874849 76383261 36064202 113787816 46248967 374403117 895922325 787860695 595508414 25034019 452841899 983033210 981864481 322209084 328454874 434477757 470316556 408549991 623206647 379626428 515053736 540182408 171035277 80695747 168809296 753846731 399420648 445917961 285965798 342321560 905158822 427845950 21414786 858873339 222716424 549333753 851765484 836507912 44927794 214517686 903492979 222808542 690360486 119012335 200476881 491861912 529683978 433762695 122630112 613470627 643698000 83397108 170144991 962858179 414459717 579822276 437084213 873768594 720550253 875694206 348919103 272517608 272697274 627468964 59647979 370378550 334843422 16606243 681736120 465793790 839588305 680011279 988177485 546131312 3650923 24569253 390765038 62166211 680368679 541697602 450609222 513348572 239536529 322873299 160440969 446028756 396408603 290868526 369880749 460382212 15694660 588883546 975853418 42542620 73232941 16738696 941126706 628683153 235183812 415849857 861061110 960080543 546510501 102394679 932707490 860918725 510122036 916851323 866195977 903901454 84790742 567968981 605067265 510741224 197142816 721846750 334313546 39574564 399506603 146299810 10632337 747165170 932698870 178916767 530419259 255160499 470007596 508371622 47261464 994966681 506718970 532381935 625808563 655461957 396386349 285071635 96304409 184102771 502429477 409977259 204271724 368622603 556343090 148902431 656578815 359864672 171704021 782490839 951231992 507394178 49803507 535854859 122537243 219282380 773375532 611535554 163974481 741759416 233973992 509800503 725633162 702905862 796384533 395960268 909608817 800418647 450687390 502429088 330748544 94362251 359693927 753718401 437736083 27341102 324806263 141638173 739465353 864849477 8022435 284916607 238813128 774148862 89815334 565065815 965269619 927043961 126307681 512715338 72651133 34852723 81130349 962874773 107588147 570489659 730231896 492743889 953145166 162947064 911016660 935676742 589481870 1606744 703737776 165521405 265066814 270304325 996307284 233311737 446428662 230088888 511353460 530075624 411742000 557107674 662653338 496846393 54270547 230724836 371461397 784591387 25712565 116086253 497675992 281270995 534028106 658540577 422638946 477533277 429593934 123876341 647666699 726594051 12503174 693407018 224794087 286745823 35548611 595006217 635384833 520012969 315635567 644233205 106259498 517351319 776092097 428725695 833677920 218367171 807401297 820901343 655548643 725863073 369167309 148930718 443401540 207387550 762679839 555222504 396860884 649639592 132254386 407401277 279413484 662382040 456754165 676630119 812188760 331385777 381883661 290985182 386300018 994836792 452438707 608449608 845179619 575996551 884802398 589797217 627778800 762883740 45924832 147006006 354278992 450685100 761153429 120838460 553373224 543767312 945793914 661441326 674483070 459759890 520509307 144569572 80081914 917161537 446048612 313732674 503047896 596616740 107813717 755073519 102806371 519928434 944730708 461732620 441459801 187395317 44675714 948123456 826839554 838161967 728633257 362654965 145121192 221437502 798072229 169113104 721686903 682382765 597830829 521979419 163857267 92821443 771342062 742810809 562571283 974706714 78458724 3772015 30888671 358467949 46220104 408313840 992986816 975124365 664915172 568472158 408882205 192439255 23919186 515760395 997402034 917383884 321987026 180421071 47038882 167616993 698501231 592452214 879048588 537161364 108855406 579948248 245938138 313588795 611554051 504712040 61235481 455769270 507782330 520538283 805358677 124345619 890608862 266755404 130326039 927982174 695613896 273225797 75854305 4011695 226825299 152811878 279835105 331556436 955191694 379641556 420143208 896981445 862007642 822015850 322538283 787679918 593841815 572079410 83397376 322333143 109133304 483265463 74935918 599476093 360349806 182589819 763425055 699036759 395272165 108684354 123702057 163051462 969901002 243634258 943636062 418707234 307146803 74482046 363613233 51066861 162309686 504863922 252484637 892625877 223451079 485895004 456608816 349943076 218286411 905072305 916448496 239482125 131361273 685215246 997050067 721723411 335199359 79007192 756790461 909762432 680818881 122255542 665582274 731857670 577407281 766903240 904955449 380414259 299689047 350656850 451247585 975427097 192592512 971252784 578722682 483493374 525568342 964182656 470657347 66160023 296348524 802627214 540128306 318217840 309143275 28221372 457019802 557506165 45870823 749736588 412677803 66844152 300089055 435413255 940581372 766804704 752518044 542439884 136742259 935604445 410560120 45886378 292243840 220221533 277200394 706928914 703856433 209764870 493491608 629373812 688236286 385788724 342573246 858973060 486167688 305957952 648992301 723535248 325804215 369642442 401782478 440842985 312509212 478233466 714972533 276644817 399379246 153888981 889858958 186823488 494152352 115877715 820327105 363053009 444139665 490652896 988757618 564104594 681615598 599351591 72283482 945501120 523456489 101802302 656705091 793370900 109368231 292988980 348926367 478659550 985711782 440660071 756474712 622245321 244130858 178446441 43006962 212386656 659015067 916224835 818103590 117490893 226289451 304286949 499135771 672235396 487981778 10606105 274857803 949050572 572019674 80361408 523540905 749103158 164444538 788564578 519422672 945967377 479162027 590283032 789204383 560388900 248750474 671887451 437286878 438697625 3115809 403413032 802480178 768563908 372476521 298461977 443157542 910440056 428527110 636550850 679248697 287997472 278787489 347129398 614991680 984616790 498154728 245781071 179134137 75594203 60527358 417591647 165048787 323952767 234197140 378354713 825290984 559558558 295736911 644469889 676116972 54289917 681532942 33781508 896375110 754566864 887819983 929271566 25394490 628102534 931386389 773927387 465826861 521155529 597451141 619615137 280472600 329242311 531488711 216469839 672801408 642881557 95007276 195487715 696901103 968785960 395072076 390621444 79252951 604240324 752572100 952286379 696793492 831859973 653115548 2659663 311639414 582871541 679080366 451314980 993374256 458655363 26470702 360243672 666899259 613800819 884783268 875362209 301967579 739874163 925362901 761578765 577918586 66323000 37642504 843836852 527096687 564411171 456688853 953629858 949611534 402107005 247499484 6931870 686090096 977960442 155186222 985752289 132985790 444986933 328389405 80702886 640162523 232913321 278777829 204389968 136205702 328380325 431408906 162453165 600132599 567864879 256485888 42083850 177758145 412053188 709820216 883636656 651673394 704843110 684375240 30390832 936511437 351131531 608343958 964788340 348728016 51484666 512850416 260703665 381332664 171065362 570167691 345335612 264710830 967648380 492729894 680267140 958019069 359011203 335639017 699943843 317854351 332832261 366661043 628771930 22882983 360742488 887559680 14368316 59604132 797255978 448010199 475872501 929125942 515317354 22993928 339456985 793400057 136038725 311369174 635346548 23543895 326188258 167129561 756995875 421482756 633852410 549932044 196017997 570886162 984070522 666353881 163859065 59133357 230792594 271497182 405259936 448517430 151038554 809533287 773992255 416977901 291549513 931034633 907477036 307802523 532073724 268373261 967005775 587187105 4207537 241295640 256059076 924486621 903799451 171134438 228648139 878861721 47094853 541960900 384015628 714618017 514774387 786035111 378245205 470604271 958984419 260321431 810315002 888799024 862283784 426793874 492845018 597146555 500872419 683116150 885268781 294427303 210911390 48062755 409160230 494652163 307913809 530400643 192218517 975801376 784810344 17028245 36902051 93298829 756491931 596362700 645757687 572042530 486768013 448060788 624371227 823466651 705260846 949899183 371447195 783882044 772777498 689856472 398946555 743433915 411942581 736355567 573926283 767735717 973867612 370595110 75296422 287378786 642006986 124997555 573780225 566502105 261510914 376170998 681577802 442668510 104499064 706888784 420710360 668070984 779312926 100377824 133800068 924042245 15482650 503432029 602451002 617519557 895114506 67440685 873375830 204929932 931337814 441628113 577846962 443819282 119429177 563471790 708983615 734117007 315823215 507018230 128059277 410187001 464870632 12913195 754241678 78574805 829002414 130272196 815178933 208601342 778871374 688743980 499398277 197847306 63872486 580806378 608660219 836003842 590178300 967477215 909628191 387062910 703134588 66509856 487912283 477084132 83446667 843338646 216340514 522843312 814578282 563445972 324525110 261417517 32614891 382953381 880568969 214632177 397801789 590538400 809298529 778019658 325585306 618425676 525724286 878695104 218623186 546524762 148229608 901212029 684523865 822697092 777374161 626551809 401347655 218886005 836974827 242058831 894269008 331565336 6070752 463233288 876448132 557587919 876805523 373937016 308474286 744855772 434934651 501215124 366589109 305837676 921428247 572139645 153195926 563195327 794060859 780643762 980670346 396104628 673193455 37997447 993964229 852278068 476894790 874827026 342131248 450558520 780791671 424747640 376796429 522552193 644895156 425396735 744471829 519816860 759511996 264550790 999714212 768594385 237187127 973378463 251817647 809308463 586991198 744146849 271615584 479182131 389287830 56792546 69290538 751140334 440929091 777522410 523642007 994774244 569518662 841967382 713147032 625593371 503996151 664359573 688040439 615256056 558135001 690632371 672135989 300970787 419535297 42461719 363860720 758381161 676347463 211075258 606815336 488700188 416159592 771744766 984336336 395673783 361655875 983823516 919989789 800257472 329867074 721057592 713139057 212163024 576639797 421253611 394951449 925762753 427813227 837180229 926171559 563577877 376259865 585364295 226524926 880738798 147228872 124509234 66413677 791783262 162855059 257265707 407055355 81804612 990993280 530812167 512123646 622036580 430712567 193073615 969238517 741886258 659976551 295325262 867016095 182335697 843324626 22396381 575050052 28848608 20440506 49010786 414994100 817014413 709581591 782382252 391654315 460015008 980545488 364133916 730569993 278385290 303076842 925703768 248373654 470541523 48551148 835473507 85050133 540817594 410415648 504950901 13571173 789445182 24309145 102925211 844206714 872603651 307232069 728012386 468618810 599763177 841764463 992092996 533350857 219745305 876311912 276089870 664261442 937792187 562880347 26201535 332492688 604072554 299368077 582370682 196184039 245491001 160963352 740276129 653527294 984531698 650986615 348967514 844438395 706339553 528314540 978151339 240589265 606226542 236061904 248813881 652081747 273138656 163788183 156426470 626236187 315140001 688582783 368367880 330026937 9538698 775506869 955261808 222068891 632287345 992444210 230509399 735198511 92838703 984597346 200759731 992217961 778451712 958455715 334386354 651539034 985959647 590382212 144870185 662013991 633087462 25299391 805389306 450240384 583985383 708850119 446315009 361092762 856567720 574807557 363631819 905184451 660979733 553613250 726545534 966433930 472220537 447230934 164061527 33440702 822216357 159925038 867512132 825462696 195001382 84594931 914744400 188811569 94435796 933412767 46075964 570983931 639533526 235470117 409229572 252705162 317319707 194809982 22061786 777632480 548630309 224007457 886927744 924788366 651071943 326996379 739106837 801993104 799356995 456787764 229290796 66184889 458424762 653286258 605992945 787509024 374388473 285126059 467155847 741572003 281707172 189868185 9930204 13990651 301054952 330909372 382352011 828589861 705857043 728626875 723371769 920165265 553579594 14846665 999426094 54953272 794017636 513928558 300465374 166896138 227803331 12529088 20727575 464076652 12798918 360101540 451056067 804548868 666970899 927205358 435409132 903914488 693155955 79641294 238990236 972278689 252412549 785616911 765702876 645079217 57410232 143946670 552648801 983666418 645349109 852773693 563727775 63104196 969295447 100856126 93553847 590443189 502085713 748515371 72965050 920898798 597481989 990465562 581472715 667435930 921633229 998436850 407343108 315987964 62833346 144537621 702757757 218556041 197918846 998654522 925033435 930738379 686311171 403887209 212867585 309720463 732457337 778262687 968998488 8549092 644137993 350886917 862158583 102759093 289017571 238272368 615759459 159086571 19928755 82110529 162524661 381173224 961913925 397298061 284521501 517888933 969905848 577563980 410758250 983734962 401872154 732118621 521330419 577260319 613943387 207946333 802291115 283731023 81321935 520905773 830845877 329901305 842504783 987630818 38586526 897601342 3988284 655127185 248882448 884208975 647716972 372202479 855772829 786139711 482710561 334988570 969246927 83750025 956051550 545276622 215714704 866053997 414518110 877430533 339359170 612865052 515206497 791555155 790702919 975730534 795611472 543909141 448618494 408760709 268608766 603611043 364311092 522190655 356498146 194199500 53469208 744354300 808531931 417543747 554967262 680928846 927825941 458506829 548298572 324875887 7776890 410905797 621340808 346556278 76771838 628682364 26074905 496871605 305169777 312649067 789069947 173111511 174647389 88416220 63588292 339266543 752039435 698211554 750999862 917685013 725012109 378606025 586560285 509278498 514282079 607203045 383276310 331246364 263089106 100302856 468088584 447835309 801066230 844813998 122408390 496877732 858308995 635444629 110592861 901187671 668423981 390313239 777777740 610632338 911843565 131750953 469858683 125306833 386526145 794950707 880935060 535823195 913470204 804783386 95397778 34187722 726456958 376132080 936630384 643671273 394897067 702814900 641538136 676712945 837563553 713647874 114366020 248485869 789747391 207328152 745562568 336769112 494859861 995863302 32606335 836198364 932044644 27143158 210369014 370118841 735461061 252959842 789150628 303457011 428948100 930785393 861159613 430061322 930026219 392057401 881302051 808501955 234858484 769691107 190047489 750407446 286057041 28618109 892969431 817820054 986182407 534792071 287760263 544573176 838963935 641812471 639284184 651626079 559061071 831128870 824984993 884435569 842806355 310958978 14917003 571430320 696407217 898270926 908751109 83385788 561745589 496865603 340999636 943524227 259355574 199921692 657906270 529513857 546667671 318768536 812886134 236143585 16519796 507569081 572434114 507673583 730983238 534262704 353235613 774393145 127513710 167224912 632671060 102982153 894363208 963132413 890764772 149263896 311913905 465797302 802507251 267326875 540888667 934620743 349671287 534652253 930066772 105241688 586787217 514920603 663401347 672720864 297389796 804148932 844997361 613154265 487625348 465024000 716693008 261987686 47904545 672041327 927367891 308842700 884929877 421601227 932806806 412119875 58525239 881345319 269797351 162063451 974300049 695124498 893166526 167844214 886728160 339753993 91740001 716808682 112473546 316975467 80615580 714625570 361049610 850386841 967257459 672915481 107659065 935829874 636056738 160209344 834430653 482254433 902783547 306138644 740513322 322546792 511343700 931949056 409760170 665972518 57092072 390232240 141561126 76020186 75233226 816062107 831961492 181671346 955670323 847622315 881038991 977662529 843749096 270836528 511892094 864531289 15514597 733349223 324068937 744469812 983205294 31462434 230442757 799006963 981472572 193876885 140303040 886280031 859686047 694092705 646391107 152119328 977851510 444347127 92418113 792276952 510796397 434533273 794021087 406367168 162940494 122741913 12444386 944802357 644322571 990034773 116727707 570094227 131331774 249385058 56686275 484611659 544044926 600999241 591602316 846572069 613858854 107260931 484033904 552742033 131891056 701172499 805361375 883532465 554366500 540215075 56860797 907907591 336559208 899798288 228287601 336209413 265588856 413224727 451186968 364969601 55018639 13252559 676099847 999067388 892058848 533603749 703118746 522325607 504214299 980092109 774166223 893380944 911227552 55073094 768749503 21735380 420478891 108068995 43631360 518229609 34686297 504770006 10207784 69151446 247111171 525603277 718238864 966687183 884814589 58198805 735613327 837344007 736588170 632351813 27714313 771527767 558475492 211222807 25304486 387076658 479347811 382096211 162267062 973014537 86552372 46452274 942538959 826398326 113964144 18228366 749250054 684791795 674740336 720906498 425298668 834222069 290328695 608350677 558386345 847660530 904357405 644354530 6213704 174380819 401836098 253181496 463882942 852611379 424711056 526852897 202708898 295992558 542502981 426923740 111322480 305518827 595605786 301639466 145169582 143698963 684088705 559373922 821887892 196619240 480959850 221631487 326915080 508764144 180347659 740184641 45493537 191961265 597189857 77097546 691395894 269636230 638052795 837832156 195424752 711073352 947433606 209139858 457849497 342699513 74779061 419923855 759931115 748000974 101320401 285363896 401815437 81444418 341497587 714297251 834056501 145724599 187959942 550842972 704742912 965425289 893775787 275252615 867096670 810177142 885888121 591198406 364519142 195145201 235953364 185243049 692622701 847640356 849560290 476016558 84577481 82681851 722939977 358224276 325042588 256262992 581635304 643826187 292514753 298469138 14634299 284619744 272947592 129465469 738044637 501049570 466247887 712793968 129473432 928383036 299723919 247205900 238814718 865486716 682049506 663580597 889056421 668825902 495756485 986371817 666178945 510189123 168938739 689279180 265055672 927787853 235356329 133951925 946514439 830818235 367831961 89946932 565264035 856823541 753827155 434240752 630257815 838826299 798856670 28150481 997501243 351558996 208453780 161123884 789943295 633733127 114254150 436762161 668237250 640963311 353901244 817848076 230277681 513098416 181192199 634707131 691258051 39629043 518739959 147293502 617073594 430264100 533293722 856091357 944442522 477501834 884313132 509027973 473538446 163586767 323438155 777699122 523958748 749028062 175331803 141939431 967590990 130205174 211898216 876486789 994032361 656825366 512646154 761094057 415816755 587939686 250015830 984022929 927957340 284098875 852334004 135973386 737480890 277064704 289200869 696646288 563901721 652952696 169789710 839309233 411971378 199990408 544235532 145746291 925844195 890102248 207280141 761028134 232126226 793422189 933545508 464751935 662090926 856507985 523749303 26380689 807605654 355702347 512703836 589358440 57042911 606252193 344475147 608709068 794152069 663798432 968417181 543097028 924932064 878258779 344381985 481791768 634617565 634807396 270698068 491344520 121997339 182091782 308296823 229052334 509236950 359020803 341213338 581283792 985366789 825374848 656143596 821832383 121714641 343716631 801526550 70469869 888790184 348344016 719687335 502489385 636238444 311355959 465378844 689521520 28783304 758655073 655035289 218338665 302315758 510572569 182220939 262357174 297437149 676704820 843410673 834191105 577707814 22276584 99925095 338007237 603901642 869508345 889462994 610989111 825505858 669527324 202134438 730422427 638729925 152246865 920216476 840519054 266956385 800210033 537485808 996656341 412637814 742174809 486099443 300560587 158499519 77765645 457017313 906437765 406864059 872157783 41938230 257783745 157785924 830420707 378897498 426477044 652626874 300747640 926615452 848835695 640786070 709120386 443829763 325019102 76912551 467634937 750540467 780938280 349813972 654999629 892350093 573460726 191613250 984784236 731313457 80414678 349337011 93884170 792853311 410240001 622871793 676203506 603298077 357393931 538248172 864301671 530225241 179178823 923633657 973432391 407570674 726235318 449729225 717044535 447440499 807488505 771312481 240900881 428844053 71850591 57419457 878385454 849314202 719914913 154550 962909433 33784661 104987132 81513422 716192922 329884842 744683987 283877788 887729417 528766426 638155519 525377342 192943317 754851486 809098478 653951218 475156656 60527782 544596976 593301549 854948949 142371056 992389891 732854874 832880749 502652189 84283761 121214620 111495530 668641705 464385413 885503079 151678075 505319944 302249979 494095758 798132023 989394764 281378586 445840654 481679278 826885511 393595905 526114953 462849647 357693529 875287966 127902347 417273076 662362393 383059894 456683242 199821575 653180868 136669675 226613253 998029669 566941903 190168478 746783356 751926240 750999205 893904295 950627583 758895452 182554407 116519754 620765457 429588762 843971477 736092197 529032271 837948848 604321852 894442064 312035785 774999685 420366827 793820236 860138473 428883013 241971174 620977524 344529059 529601855 909942208 379286277 504620108 886301101 894825143 890708980 170664051 293602383 952784466 654635362 149518630 877795039 533286806 221164845 850743026 829440033 735868927 412507717 612863666 420520778 697518302 184259298 677016143 990959541 451206872 206891938 499235170 328618789 439254509 332287419 681489797 649475375 426173680 723244600 682732927 791643551 982815088 273557306 396235578 434712167 787148443 992863621 682132317 221180896 233375562 118579591 997070047 560239749 930297013 892794919 229252504 127975542 152334143 137725510 740636712 587765223 982487879 313599249 469162790 479482794 274029580 346240465 92076829 702879101 330576445 662518025 632985626 101182466 880860063 277342639 252350914 311819459 514739123 231472859 419651581 477751009 312519450 407268730 980795847 502265795 626160172 957396347 967492649 505654061 937263133 747820719 922592778 989026019 449268937 958181998 489199605 643380905 743346116 441663760 508204169 301326370 815976871 955249065 9671444 977998169 584238968 715061491 210749477 113714159 589669734 533742024 651818103 626369746 468991858 235203566 90481181 598838305 230799506 203736133 223537065 482299758 937523525 746566346 31191416 793238865 480826368 912021990 880647073 339816745 898671755 148049474 581497109 449604831 980753354 715996088 920085135 180670018 881430681 267228092 935481868 853887528 397561083 8877206 31891955 375224274 914965676 30075920 302757855 957845346 166862576 992210316 232321382 149987825 960585883 37761798 567389558 138725144 805558523 399234984 110935388 135956994 484649206 985532815 543914792 151710315 576402094 164874188 786964575 622436185 273137646 468277584 611576645 328171923 906353938 438611397 794431414 844643446 267231899 159032874 219043070 635491320 691798606 632297494 962628196 209808057 866860896 831397911 731127958 505918699 616987328 165366769 371520366 839760489 572049033 217001443 110823379 127724629 787939454 418799429 15489361 27545570 62254583 274295784 858917157 802909 282981748 640367940 809631608 752835429 7781976 284843848 308161267 82636684 690369400 221828167 336203207 137717896 954757370 806862153 586978144 987015760 143467239 296406368 61361211 763884646 177019948 153148901 761287479 610990962 618999401 900883857 985447034 904875699 871132957 242952596 812676501 496857323 539791056 622064969 13465756 851685076 29943929 512532619 12178866 379186817 994007175 870759624 624982182 783118302 200939083 987884111 915140972 509276422 320939652 195395075 573673442 273210367 919627988 607818399 283543771 339540919 460387737 70952796 769261091 532424453 722237504 480234201 793175938 698110393 318441501 141113394 954600479 681354518 940216925 106885483 689708964 635377029 127479852 202738457 713403530 326570132 907906005 481158988 871252995 708828345 125683773 402925119 71488812 547684090 198217056 892037089 56804579 439619373 314955687 224671828 686475439 232853696 489620131 537987875 42873819 193426857 829940934 952778641 167483706 557985832 236409889 262181037 483601475 767235610 671966592 586392693 651916020 635724787 436306108 217906244 369409071 240887124 793212103 479823979 447062107 574393220 107949068 488294450 699954591 792680824 81063606 218030271 314581815 277342712 293260556 776640205 340987472 196754390 271644103 204260323 29291315 725357778 718560155 927614448 118736595 389761464 981985809 965197187 921395871 853469942 765888526 136229768 585821684 913331185 385465167 986657851 678337806 725700398 773751199 785808301 601892196 84578008 29739001 403308019 247195861 393236036 833157302 129205267 970846117 504642652 425591445 27489762 287194554 621670415 392594377 392870673 30739561 814560417 480435283 334371929 825376742 566165960 503758553 820916258 165320173 97133435 832542257 756208860 324233534 872132883 648918003 506139306 34188055 98341082 968760426 245029679 698650966 869287050 120270745 991758857 114282962 539317457 340213309 741588779 503758769 737703937 620430620 695575408 256491358 671899303 347294092 644680657 510897339 123539239 530100990 335705022 222874690 791249507 277504544 648971223 869801467 5956474 927045279 48166922 889387823 349975576 544205323 878081032 486732036 145173386 987246392 467327718 195145396 793745964 11097507 130076475 259880048 921682220 942001465 71189076 472493574 756018797 253985256 996094737 293815088 791467086 653590085 354431889 736063106 871704488 149819945 247798889 588112067 76431321 635713567 642256993 330169524 241465142 371557216 75473117 821450539 153034665 402161272 582749555 49904054 309383945 835637423 802761157 488753674 620408529 19687149 390440685 668739945 79566007 305770474 744502443 506325693 331069655 785972151 496535965 298606087 484724188 641557777 732009127 231321482 747525512 569002603 74399769 681159991 447584659 934440472 804718582 492657387 26079829 671061017 530722585 747933214 926412126 64011394 205623621 960604068 792930180 532060942 818746999 263374025 268170550 296132232 973635404 450199719 985820284 540105127 409970158 66329923 306570161 583538320 761517938 772051141 619420603 545027222 980192826 692795681 379160641 433457837 465488496 371776185 623846440 463117216 463670791 460065067 524186975 930627343 791292697 669340143 483932304 918064967 906078289 535239154 257003490 934302432 802033133 27260695 837249517 139907059 910351661 1851762 160870304 424883036 637343940 855019894 733379849 330867710 548315208 425127621 850284045 828349204 237754912 666435106 538067715 56590883 53348904 98324617 504964235 458161000 911189172 938457269 736641171 781137172 745127566 72808607 247330129 419585640 125768560 21347182 584034709 447010046 160040402 877886520 756808462 494906434 286170052 90645860 71586905 591817998 784942871 148093189 527184979 22396379 16235939 209549483 286112071 276771535 160632899 177597263 457335620 645071836 7757545 618111882 660453074 485320015 83344323 573713938 376255908 690192265 835756244 912084329 622440417 272139290 384975906 798864510 315073369 637945394 191961097 391005158 265298064 907995802 610255737 229465830 857417066 377407596 113474781 345489980 819126138 649344359 171000849 415632946 669570301 215699560 253581878 676074438 528799012 710035361 591177949 698086445 869619926 209938318 307865159 496582804 334954951 132993171 66586099 725548678 899342417 490763226 78150699 508714300 118054077 984004762 5198116 788862287 424718002 135641580 972464250 410869762 89355659 684734045 472346867 890648125 969032190 711075635 301587759 423456503 262661086 652722947 158058291 272865415 851933322 558921110 426726197 237732253 114439651 296464476 901491739 889612140 105190040 837520957 56092997 901168585 492964236 260170480 234116041 864144483 116721433 34710777 900717872 721288327 350867450 982709140 298429235 410327246 551273059 560825432 827591715 968481730 303382674 808007826 135318526 834755327 501608775 792945247 10707846 729491953 430546859 104322098 733271714 279821327 912641047 239163009 638592189 342319389 586866420 647173867 471920486 782412905 697856166 180231571 54134528 25858015 174310805 10054650 250840318 181367305 69183464 148585817 558019478 711794479 664714066 566933598 92713517 155480989 781742102 557883669 717110185 872402365 725236387 268013839 794870514 98258067 549965307 58938229 922418590 319022978 267187675 272976691 697562892 153948489 685354188 747096266 829541921 78699559 885112833 853789419 260814455 224113410 93051418 150957017 337759079 880971855 145887122 291725494 78353602 299846835 294683348 576606598 335127077 829517662 645527054 342532428 896858680 425730156 290125949 228746501 936547189 884719513 529703097 314835870 331292044 373078792 158218486 301807639 187439209 770443860 208614592 532865840 76135887 998418240 13925615 106550069 831353979 851398476 46119225 726528016 271543257 2848987 289048462 843673169 224941805 407914349 451550820 999289289 485329011 210348984 192410037 581784507 49019530 47625264 79185082 568065977 582156807 813985129 422227197 425927130 824123185 150038915 946150236 317060315 43272675 178059150 574896700 385748658 237374128 735435711 330554612 816610731 244806098 799661506 680318993 368553043 48254019 769892893 219795092 114526213 703187651 920235117 527827741 934844488 20827451 254403864 582585454 52528619 168603045 124462412 537712892 888181356 480230718 849220702 578846146 766723043 945495400 697544928 425990417 936321133 664023913 343014961 237162763 675635662 353426945 357836158 767668381 689192435 120556901 511555369 823160788 643080949 756100971 904453432 627123119 780039675 26896867 578342997 155427347 290177717 915842746 58583075 896817861 131305562 520192778 206564301 730846489 596233736 42147624 231339742 456896291 351459320 989377317 296346906 607270849 211371812 8796700 516729970 535225042 833041994 808772606 693598607 907988919 235129112 592680648 545581483 942440945 331550579 665006182 465018712 761366769 126466698 589619892 971732719 79308926 517710051 601974569 367743783 448809434 30206653 867027670 488895713 584221242 271156175 761401159 670354998 277701963 234546353 157831362 973239060 514375821 917046263 732721751 317485603 867719673 961555365 259780801 308685082 879992265 395080182 510499093 941308696 829310188 837434245 747788413 865354908 77036193 907005846 618824760 423898437 528122310 948290891 215736081 643090236 988421717 360272971 748224244 58212037 590602643 174650798 650300036 561929746 383746362 567821919 329631496 805626897 25961672 88230894 15703529 644136124 352822206 115788504 682743997 778539605 246721122 284423130 289255418 281366177 99314691 741919459 323909958 473414314 437487215 353074147 297709227 894469108 426929831 149634958 50394588 768703798 822437490 55612923 513682628 275383225 613926182 659154271 714242163 830042795 47877223 114696494 149409543 766576087 843675239 440250510 520357356 771681990 1035423 958931435 720722411 667502466 332797838 759364690 917874753 247842419 340608497 605626380 956467891 384760433 142686247 657612739 371374548 856662873 644430738 715747592 320756298 380893144 935997171 825467089 20105345 124345048 148395994 509178729 384497980 623691955 888632913 730393051 828107814 936116635 107197263 575429984 563912327 261179243 947487949 775848053 876642255 665551391 890030214 429379141 10340927 136244163 729294871 905150000 996595648 395924571 240153538 702007128 820418011 495768704 840537512 838614380 594126796 251155283 37822922 616826866 252466359 185122938 808970274 880890517 616328717 158517228 170767116 157064717 792843256 446393862 696922493 983948534 791304369 892669305 802337428 956538438 549436039 281755920 279132031 553797368 45510097 956238588 437385265 346904256 171234313 746890892 444952431 199389411 547379988 185181035 152733204 429931788 349281731 611468592 435565676 516888028 905093006 310111311 253071017 356198849 150193049 186757941 886001391 238328528 411018174 199651586 728816462 917571844 237179543 948595647 148484706 532431345 720227220 53256377 587614552 117220994 14974424 53702589 153765610 834054575 806106153 723771275 343908406 449246639 617466715 731911988 661700822 729391441 674655885 792465574 130409521 258112297 80586939 655725823 885702701 143133237 924565913 16604842 461623792 164461399 135107005 262497386 152193453 795423565 22270641 840337929 162910430 331418485 141457435 724507118 393806965 113470505 892298883 612240212 560003932 660204562 887529843 845292539 133683617 168657691 905796867 863466275 74429541 773726374 331960086 124410474 913669393 457979329 393517471 685138595 328191872 610150912 246402308 868269820 264045666 83852141 131639944 14342109 832341603 968434604 223996848 186985940 541166260 824722075 89167056 857760016 904261769 194481634 817543954 456846054 844390959 322564552 733136611 894172744 815121293 939163849 885917194 588485982 420006578 796523112 205270618 85211447 836701116 127511126 466743241 152750670 729707188 99323756 339732349 724297143 491506752 665621427 417532498 788620267 941091515 370271314 642017832 433962440 803369723 795523840 122388198 25583840 177110519 64955721 836922784 826013584 887365190 207400931 173185516 288981436 140628094 204181766 906949831 625096917 787506700 797271128 47454804 547726907 797506597 44395611 732664242 246545627 975349808 568970040 52503869 660598718 768307972 6785817 297455503 813869991 101122138 416576217 752378521 370006956 379258069 247992251 311635740 444301355 834059584 313497387 521212187 235923499 77305140 311411871 523232565 763335610 716341599 540637931 669386393 517260183 597777889 302417187 881438625 639400460 847050118 654253966 211421453 801930560 553600878 270662169 839455438 877218124 859874242 311219091 117600195 740024335 370109656 159628507 174970556 222998149 845976388 991565695 234514801 553456775 467334128 379786014 296671087 974696671 317097949 498468075 14086262 325028895 839006466 945253414 999275728 871467291 269991175 996673851 277330608 57792507 253921850 776260930 380370566 830284492 333511935 40933339 390776043 194322097 202892563 122529666 759394665 21585118 699444925 652887128 930638954 196336176 409069558 177435433 117394314 968879326 88654084 846258014 300411340 965289395 634209052 855983152 529164040 723866188 802857712 720474872 96068196 449907469 593145838 255009628 596081247 541711266 156057252 26509435 923115504 929590247 427181277 133784256 190323269 924415364 296989683 628951783 922810289 804799306 625653535 574541508 108679529 262223900 899292753 54529683 195647559 337496354 39192806 562886317 851395864 52846826 13211574 173035316 581175726 900375327 125229870 924895713 774686329 206563182 721943984 737689857 192123142 950317598 637285147 560561479 609836095 648009670 472573803 909804031 88696860 132817572 601833847 7195346 140911677 75252038 932326647 714334379 830221317 885137377 359696644 387135771 557040271 865574912 83009519 971513260 474674052 918566959 829528044 850776900 512155516 170221063 675235157 246669167 707658579 824733594 607313637 410129687 244544865 804772063 394545775 282696702 839768188 108102052 215670560 780862208 917991587 781405814 43790290 907688319 468425477 168229889 276714393 518871246 544295529 669459012 859622710 991168632 557238420 641404147 353405360 293251608 199283787 749454217 142360587 65756925 979342092 910201901 591084894 610307000 702764058 383450334 800377761 556584797 605193455 35852918 74460515 688209888 59756410 855719728 527566221 284500093 646785468 273374641 151348034 513125074 121007523 17349253 108849889 27636420 760910164 986758801 361633529 206682270 898264957 952077650 883673707 776683362 743482435 719374869 551342860 626560795 959777565 438852584 181202685 825657792 197239010 78788352 635674781 83136902 863389569 454300213 786780424 859375916 248837811 480160313 460867938 873551763 847976317 887066875 392451597 293670221 771656674 538567327 130863676 278008550 995652005 795244248 421399493 220106435 863873864 777459205 738681342 821596043 963443497 725141696 142638038 777526227 884910743 478077067 155081439 389626517 703285245 623224552 919064664 10461966 797548733 464668073 30018453 826944424 573137636 320983711 760111573 220177258 454441771 324015715 680888505 775197243 553130783 528987907 521069677 414680445 99921097 616750994 131330978 370115890 566206237 144065233 73049994 166206803 187210819 927440125 630678019 290154024 91044080 508541777 149264231 297234810 993411039 972444826 296228044 415886651 22891824 908939115 397016658 72916231 914364554 728933097 131728748 672940312 310740283 294803177 136671346 990099519 593005682 396481034 112628924 897088510 716749944 579875540 824291749 575322375 535628495 963289711 349905741 945947995 623943459 459267314 204370333 524515949 995501106 838321757 730752912 436266991 68253116 795880218 289604867 130806756 718512460 451946681 952425358 144345627 678711297 800056726 732901329 537062432 443929668 297727243 816374797 299592761 408303162 299515826 358063019 66063039 87520682 514492037 630102286 104069240 708183216 21786358 54081902 421182508 986754361 848742451 408179323 441218576 382102429 254795396 377434454 181766739 562563107 999956273 560096778 217060318 262878476 414463477 271323464 355606338 737324179 176964588 676442025 467605385 818981191 397830941 108379854 786466359 987868318 697403341 354052299 361177377 345703178 383467895 384095053 308721547 418719217 337469562 475130075 632242270 754703292 48079085 521522359 501081050 171529376 436127933 497862998 254548269 420366529 834377958 247078434 597065172 971260290 836933182 948337784 896688281 706949396 492774588 324535540 872100446 178831536 854868613 422263960 468782098 719015553 463177018 601367228 760073217 29480324 953895439 764303398 546242106 833535005 688803744 117086256 509142657 7064713 175917335 124877110 890855715 545676261 323580421 236470633 958250965 718300302 287466317 609339728 55912233 437520138 461840669 67492853 316749706 161251185 850151406 115430881 346154930 480557039 535570955 862117146 342291264 31173245 76203694 554700360 532639374 875303273 418335424 274765046 45434518 311977331 292582185 103323352 88751758 917418506 140743295 780083268 477001829 52785897 96886180 557030150 437122303 930831273 986570969 864578027 273414135 521431254 100034394 86645747 173028066 417047508 341905500 406238966 443602985 111355730 985904147 823766709 169343083 662308554 868689546 395879933 392752097 510876692 99436788 367859164 107318277 701094568 80402279 458202266 483777911 461720221 842437954 54687098 305351191 90491134 330839738 592546188 204172066 862472739 612763151 526514387 13542362 139339003 215080975 239241800 140485554 675728112 40289926 739756955 530196768 328955182 570251092 194772910 669714905 84184644 541698137 244508870 672129508 121610640 904125340 698207701 514569477 371408663 153821729 722345872 801213716 568214904 258503648 705852017 208931784 625639626 86916217 89234050 1345782 10113327 96282975 76994709 907582176 77195801 954846916 887879009 312384351 400754226 259074885 884223937 280516655 820091620 337450278 847193076 356172759 755480420 238459220 373829842 706843900 228052713 954815123 676873166 147209240 402114885 608917099 418751175 177672154 834795594 275836928 691970528 865227384 293596486 837111518 265096665 779541934 897672175 707879715 633091311 629288145 232009682 334711744 59176361 623082865 436671551 335063423 474246593 604409462 58848341 354965103 239579594 1795747 571412346 458987963 284958891 725376959 746395841 333147483 783615670 404024442 626682944 571091722 178962101 86073809 980784701 635836122 381289646 622929793 478851228 963428378 190133238 406867752 273742174 80971566 116052478 844580027 547170152 676142518 524668084 322510360 864663518 578092776 77646781 768918047 165130800 763184343 976531132 170110330 230160125 419929088 932279452 770320456 15397447 558480787 908941899 764318611 903167825 462697981 798710611 164323386 731396653 960219517 814035979 495944314 477223629 485604793 281849520 96017235 59747680 427149962 642654644 557138621 427417196 725907010 21735404 578680647 294597178 707300065 527692641 209107962 921196953 440129107 874176139 922367972 193754235 412358823 778161710 872792069 712173185 32424774 771442940 17735506 561049537 327835032 435474823 616579834 853832167 713193435 604430325 254855105 189507559 681918892 179109065 434769111 228567657 661289715 95439383 694809627 824267474 544562307 933541946 11582193 500976230 296483355 92571947 256434376 765129232 355011420 680795422 126102647 212748571 692419667 705437419 38606610 795594277 45131683 281011402 378280512 470642222 789187295 421160155 850635496 962942231 207060613 52711637 985994570 229428082 40457681 640844259 523780263 192752975 149321689 439052414 805650871 86426973 670391173 201218145 132583332 665273611 594370000 436664057 977841829 174545397 662407876 579496756 441376324 735069100 186057160 475010788 412976989 344631930 198324526 916372210 548116633 630345534 710908760 435927600 946349283 812675366 340742673 88280761 900853880 932901928 18504610 147618433 414785658 28995045 657974897 648933846 861109552 370108713 168427409 636249993 399885395 991078798 730230105 670281826 157778803 682406188 605239650 928879832 308342652 885666089 270380703 534076727 799948591 2268815 482850356 380569159 844960265 409901291 139315160 247460363 264976526 345176034 787229259 808323563 589712248 808424139 245314033 208246832 722134504 879292839 417316201 57867267 575875341 716309894 785980596 573893430 500952310 275332544 931050964 630030217 825172620 513607280 822966063 947621041 286216626 371243881 590911886 276732105 77005393 811647788 431352813 66282790 553589629 744809060 646668506 381826443 535108316 824633548 70511171 930310936 616485153 245571741 297099917 982792128 368154348 440140737 748232587 637593788 116702470 56363710 45054906 67183205 611647035 798281491 689326105 955923849 703810689 279706280 618709026 811727653 31987587 418638106 952893268 654441403 741975689 510597851 203701450 93545481 28947501 63193205 982960716 189885378 650881596 716760838 797630918 862032081 699943878 405603782 23129282 451772085 362328807 761031355 407774267 816751123 945835855 972967006 62386435 907145306 894657837 831286547 107230266 217507986 95961278 949445680 569195992 884253207 808844797 544258474 468211662 180176431 300448438 582444900 147017049 160363880 177468041 438413167 765178112 835788140 537442490 543847370 916268521 369446139 637542161 110117646 678573079 641431189 491223578 942276824 288653257 89194681 791275415 624506606 355883893 757273484 493272357 476177970 999251031 639591978 125959490 209648976 345445482 984857869 175267021 686615387 622363199 107648499 262956747 144847051 69523896 883468788 916604454 49892662 674537400 852411119 1198110 477504727 601683565 66290503 516012979 785314717 815948523 364790578 476964695 446767574 995280018 609446855 15919778 671387575 783789885 390001516 5066089 199051225 367727516 498840659 884673236 69966074 449667269 652420594 137324930 567838820 445520949 81168844 28206944 625808365 597884296 566455965 827538753 122084196 782825839 805816109 858893239 843157668 617923520 578973241 156701853 515953857 862091752 319623937 72066016 906749315 799892140 466782017 959559023 313159424 422673138 656060122 952798321 522992153 116773298 680394583 540508596 178625800 183637616 801232782 476358776 945930733 272551192 880684755 239212832 657320195 901357456 900111569 714907955 15254109 579063546 786165245 636654261 985987090 635972447 627773036 260107850 508363454 592681725 150406595 65783099 563029830 800914829 466150629 944780355 354266684 754448079 161184254 962525878 703325046 611754869 465496362 107636591 264843660 633681710 159318057 505713948 383756588 982102712 768597430 812507433 938000201 167276028 493821268 951212500 429809999 446704267 115417659 800521277 72313456 903785261 517009283 920567337 31044378 57729432 587329337 620365311 565413830 318851073 571603399 283585608 6803668 2855315 276075461 865914081 423812868 672961508 957048370 428706185 245251350 28181393 327982220 445018152 985279352 177349562 236881650 966011699 653908064 770393153 216156472 166869287 936127344 861617847 488620717 45596112 466548497 819094311 268680550 907720863 113713777 856047312 642017485 114837616 217814235 831433451 217389856 982592539 758010428 421547844 772504064 943649687 790484661 216116015 981940801 592152081 153193131 414528164 575885687 893703711 676139711 723797866 275670896 948133090 242653164 682675738 127069101 247624315 109000881 617771699 854725375 83131443 817911149 463474054 40340350 879469509 27024909 774131444 568904136 135422923 952757507 747142013 761536733 79052702 787856092 850418328 393510724 636557062 118496232 201121061 128044865 932307530 73725585 785670380 658304711 755768073 543981387 978354520 278274211 862065872 727695939 423967488 442788466 691682236 605503892 805214354 952669976 760557262 645557881 814091801 760455223 94753480 738274904 23267949 96458453 966389609 757251094 587043868 192010834 614401460 625291254 982843686 755078206 900428215 620122636 641221693 433034245 143391523 673487735 648677454 903374659 985030605 959507068 678585793 518699515 30955157 679400634 793132995 333883465 820528335 591042739 169871391 798003128 409946078 99880299 987117261 174075288 84223624 495491570 698010088 338604890 274821506 177523084 113267505 641233112 303884119 158002284 993824409 335760438 13451898 807431485 320292104 596080648 236475723 16365268 83638517 896878513 211696551 570201302 536658490 555641046 966357765 53250742 997963667 35910519 826753146 141701439 12913783 504053404 846877746 108444705 26316238 290602556 692553567 550641924 777924034 363316308 158352038 187773677 34727676 821598577 763669083 168077086 472383635 253629550 563428028 846834145 712190753 740483124 572524114 564274490 179735551 870210334 133330493 679047221 145870129 971228839 613049891 531440774 226711614 433827843 873937735 62591338 735594372 83775584 878273283 578257046 572031406 316233459 461306445 437841576 408970618 650066981 557790434 452513159 762662258 532145525 579320363 775415211 478999546 259020486 462404399 808862488 691801856 300467740 944108120 698894607 279797434 636063907 87006317 370067029 678179857 891359858 861104122 701981820 665143199 439960299 572106138 759920135 541205887 171237649 23227180 838102330 570028931 473768968 643216248 879392087 134751179 433809349 540326431 572224951 753946035 285610552 92753992 361186958 891159692 357774950 855009716 242596114 762118924 236968777 899994800 519813719 888605701 839449747 734774322 105442970 831454840 143328708 327318316 860188993 515848849 506790544 84691424 928747100 532189804 834258025 274989568 964271361 116561856 671681471 62526809 567817912 4221874 95512832 953653551 516062149 438760207 538920971 778079992 671948307 634560478 83087137 987261116 732821420 548100509 576259189 763150078 41661887 852114514 272589694 212064276 896721457 866111773 688849310 668212448 251405468 184364003 309985015 965526352 230623673 918759600 471968651 566625665 558668132 525472427 235460798 956085794 820798062 879868809 46444883 570006536 596867407 28884263 867299530 239483304 849749554 974259030 825516378 97728261 819730186 534716589 812768584 436818370 52284463 645433734 874677487 637765087 488808940 516874695 480098899 905290404 771526852 72545760 770738839 657982570 266117520 390328705 942378269 909400987 597074117 576810233 342756214 932204627 684765235 381111413 122053531 400464563 501809546 913998321 351856041 523238220 671497656 459280361 759225867 695142118 552197000 883812283 488502317 702024047 935321160 419990566 218018811 779249273 808273211 278261351 469241537 479542236 576707885 839686088 986938782 575211686 808801367 652593141 926195813 717656008 421307022 254686716 573621390 723625586 393991070 562482664 807726348 410882962 130566820 326968317 173085286 117609243 620267140 38850576 422483134 403594746 880577405 811902771 643942282 707707784 539309970 802834908 872181022 463724168 493892876 165220598 233723666 797759707 913716357 116430386 179632009 387989938 397112990 440239079 503887918 71493586 684964110 926052870 491897482 182073732 502886534 684481064 8707006 582991185 294455421 546285317 628252413 610268005 227127285 366422868 496499773 513110566 384693775 201864814 12233851 251773287 763166999 167010953 974051192 829047135 498200002 593987849 548603508 638259437 263400319 563827538 416890299 355347152 59405571 514027406 212734592 426422983 125323869 119525914 272135329 360538762 643712611 507764462 94600428 509878418 225181162 134325977 981818587 272842378 480438717 886326958 722190237 265068012 363040087 849731184 646518460 363125874 561966753 887724718 494900481 627155354 861510099 368537991 61135559 632250122 245904787 561072372 175576089 571882752 85350851 907800733 91845055 796078476 858491230 135469813 328513808 606955347 811554224 296244575 177938572 844759074 580803119 650751678 290493310 99415360 855033970 273784766 226603707 619497977 635046681 907470861 287937995 185858206 137802784 998697325 376759044 171673751 690787673 794800145 889302970 180114503 895910896 865611978 746821427 326954849 717545084 711460409 76415161 19510592 604968000 819095686 318737668 558932768 864667016 974583060 761607874 333132160 513186780 496068379 849710755 673273288 242531228 714276969 613353767 830263150 888334246 101022195 975120205 428388675 20350845 638771266 987397505 388420757 140864934 901465999 563735704 710454090 782627570 429121650 220732910 651051181 723880765 296566439 496556164 785417451 333699879 205020496 899876941 955358926 878264622 20558146 83101081 576141635 920552736 665222056 242479076 487309762 497496815 623638985 462920886 134133133 121228836 696854224 589041564 621343447 701090056 41076690 750933740 638304994 879151673 135610824 787535766 860284316 713411138 730877903 729012177 688083924 98961763 772814534 465022846 567473644 793041547 875516624 871530492 403901662 812723022 727140630 843618929 151028906 593295124 161225549 774008084 168513419 84315858 92538747 492544004 585024799 195266590 515635030 148502046 135013742 784323847 751064822 567770761 141239948 59134089 367993054 399766985 766915192 825801909 502080367 988484400 862986228 126813205 375259422 243476056 20693387 650880623 256674976 493293470 949720352 245222914 282651173 328582560 198276982 86570709 671695038 635884577 191886649 754629773 539605064 334049817 566320051 327681210 7746597 524990297 271039742 390200745 314950810 164524330 970393249 23007179 632675959 756509058 52362902 685445645 181879509 984676615 380328740 362269037 186614290 173274342 989677363 287509795 872002754 912320479 618025415 419633391 221315663 709865158 670916917 546113415 677983645 56539315 137902299 235069245 439927588 171199206 345788172 183262524 141456594 876584360 71917869 335709248 620986786 678714140 477395954 79075529 151662884 817290285 116533664 493486488 443953583 106473721 280636493 225642143 946471312 681907907 840125584 634151023 808796206 942933 249116979 59050627 232314097 124756593 286360671 563719054 199504606 462700345 697981873 550032903 799775254 36337203 596610828 903752433 541583243 611680775 381144341 869433528 799937750 554510873 166915476 25563734 92191944 571736162 967825842 16265830 91698718 242180119 154156565 678576836 108056341 767669093 454779342 971326998 374542841 783956171 543589913 30845502 875109310 181091757 469624060 733605311 724386524 448332705 455752695 983659378 961068892 304681423 716967910 199559859 523761174 627478805 267816641 10408475 617415830 776725466 72719169 855726287 573716219 507405849 786293710 141929620 784277713 140399635 222175913 725093083 642790009 551096384 663524601 567219008 110641025 945290758 85740543 313921970 353628644 933150963 90471562 536633613 919070675 837599711 133518532 278859347 160209236 86345046 819871380 539339749 317253857 654904011 684365561 25340641 171536333 487257758 289711952 633832483 649787237 490253659 769033912 945672738 77748593 923302358 193587546 726395225 874787790 847152436 74443922 146798622 309769742 908339226 796739599 501325446 279966072 714506428 162063589 713817908 240533903 216491626 682001675 655727587 858500406 678023646 276201165 78752943 250797771 885527839 457567708 460323565 247165708 591655092 97983214 186092442 57364398 441770766 917289269 892178560 624032478 585140788 110417872 446369646 490518947 239793410 763323037 589272546 464475361 992482395 949197308 345738222 404712573 182613219 105335872 119325257 179842614 878589163 207315196 120938 596845526 650051142 75132252 651475182 667872897 994113679 807111169 744707446 148449118 246733377 817770946 904643565 744647853 679562960 828211959 98963650 630501021 503166498 68416607 219684693 37659137 840171826 207228981 624291540 447373681 932728368 782835784 961899524 503935711 608133022 21267648 424448289 603094702 376679206 661812579 329591825 312864236 691731023 933755240 170043212 448515634 820673455 114945690 7432326 873396590 865447473 749690223 365429336 787016947 804900063 683856820 899627078 826940751 610474606 695435699 940612004 822524413 549503846 729189277 706620749 991122422 85885420 19437922 674892666 601740354 655213544 783424708 37583135 339644495 70636456 250347858 838085716 655852818 579410364 811427345 475515103 121866803 844572798 164574648 311017553 77586480 661991662 937437472 876975549 32559321 715620360 378136975 298156747 773275193 15168058 177793944 761733452 211299982 504648939 914669482 995566168 198146717 962846909 708405337 998286871 171381462 492542242 884506516 93858931 750613865 625860857 900810786 549207618 657102089 17965431 583643317 788829531 26266228 423156597 114589438 14771762 719778998 747788537 701196155 410863914 98228380 873943602 475543777 855140354 735331951 453916126 416170293 36598023 917466281 172719161 427196167 783063771 590716810 518746959 773263851 682850628 349492245 901220241 925424344 110729794 688120763 160743725 436155569 799252544 329712704 98483968 67818547 300591358 779713082 936468386 408803479 199706331 671510626 572574706 13475810 575279332 21034393 200236502 139560912 183680489 647995321 729024730 674987271 965026612 321140871 858998921 536374605 696737710 76246120 690363680 456947671 726604921 610798641 408258621 148882278 90544204 752169157 133774146 135389259 909796913 833217854 607334771 189673884 101960041 432771337 433725424 134264006 39074119 813244910 349844648 14204529 805579933 211155893 795672748 937893507 410376900 502232572 960271531 815921789 765458600 350677423 470580361 182628835 619421349 359891335 282518237 629950327 340939631 73537120 449407694 904963741 345448918 736951677 846353147 155012099 555151095 915617000 399226791 599717569 151313472 108629200 459359936 735607915 689841469 192256899 920825204 852023668 311390298 91203790 841497960 932601608 610913761 390260194 815958116 327049470 992480292 342653615 51472388 350186644 144280913 687033403 344562196 212647268 132947267 776717818 489005809 330652197 822573869 119861021 866780937 107336356 820835168 135442207 463802911 773200805 420523799 530932286 551070192 601509269 768561094 16490790 587751649 447884838 71374080 554872149 863387881 680897263 240612658 946296820 118201501 119316020 397273364 868621406 458040330 417243116 646093165 627469316 363915096 322297291 152795847 348902361 595188313 567058845 590738316 852850918 45558709 588879635 299826280 263496819 101105107 106777785 308872218 80179400 983016970 74881309 488189635 758515841 626834829 544311961 108334027 182987860 951150145 274174730 257288491 708321795 450897457 883431477 749772593 382926288 330884805 818140826 60961438 193396314 584447415 638711518 365422776 527624892 581157815 955129 830170615 159243019 191521625 649509721 794914293 179596450 577907331 569859134 258316131 507313052 766941465 468430805 90005587 690561290 405140962 865137582 704280388 791974384 280571393 216385963 782430809 705400887 189222844 167395551 356246361 957519335 647403729 587991767 721225948 766628415 880001589 590116647 201444599 550698702 895627047 739010974 736765132 953170670 916516326 407762780 894073450 123095330 283241610 349217977 72354767 571018624 289751157 468464847 730404513 591310812 234741006 388292276 834801388 832839931 150399848 601063334 383040289 981758843 396174138 919164454 856554449 695205852 136129921 833981643 141375515 7562067 65468271 670673307 689625820 593912338 179241046 227768920 346709994 61727658 757979269 813757296 969052880 961628899 506471272 639755376 610277764 889371840 435081748 13320308 590654818 558477843 198354893 811024932 385073705 973486639 984832911 517585121 950095287 75002552 302026590 861106511 448886716 40639260 346520464 609262571 535224244 990090695 623628817 455409152 130127449 755301246 39067626 108596643 809594026 80590655 317921117 318934200 855160717 45415196 321737146 463055195 32762778 119445328 810426471 383701235 833356588 298587847 899718723 290862554 498808136 1395881 335967232 90959062 485276125 59894502 28138259 945286772 585313316 186321971 837251203 858850099 520045898 538728920 786718376 644234561 668869458 426982111 297825639 261097597 760718480 947429142 191293393 381809773 478395944 679888801 809597272 662752224 759292688 416379473 664776700 818991073 542869896 165146597 198019162 508234082 192499951 817295727 563744610 484646955 254699994 567880542 349848055 222702943 848440416 154038267 804668525 518374457 217288851 488776144 727153037 674329687 70610604 274924526 876675025 871093180 53018144 334960069 102634421 63060638 523248274 590315496 926759584 158102798 559038494 472534197 509884515 506138338 714983600 64973157 640507067 262729872 844673732 48553440 125425788 910913500 544070339 117757091 789868891 736355163 356059956 533844837 803608671 594879390 365377202 576438483 448546238 734276175 20500093 70462807 172216689 4940121 6322989 669154941 120328630 173161621 99893225 892186689 384860230 885320336 507942257 642235473 566390371 556777650 622833264 760883406 329522439 278859613 87433923 590075312 149414958 912482160 477644816 133401017 927288566 799942178 46662098 696815942 52500840 4450780 313243792 58674447 316315912 359040782 419798341 100604083 366619984 424781494 945693581 491835171 434393126 23785180 489422772 250881289 176412944 906284007 206043064 224090689 759225983 138500562 380803757 978736640 341174353 702262569 892799902 741731981 295886281 471289081 342575910 514400246 771056520 772014675 817217691 714004543 985915485 722331335 786437052 52703816 775311521 551095181 89061080 821119109 398586807 363577391 590328922 808994075 596959070 520389832 719136681 977209118 453222153 226001232 962256270 79760444 897818347 747305337 873413177 731497347 678253151 300334109 622335716 578119834 502319207 880779467 155181135 364068330 826978489 505763041 203898887 989594357 532462248 302118079 631418882 865243800 279489739 716126085 144270268 175154997 263023298 896498087 262534070 557380578 847907183 6422183 825913205 233030661 2264500 683461036 721299924 992757573 88510004 155382071 738518913 545275066 687902685 535304768 149262679 607187931 221963327 388670159 299110439 672754582 832160961 601257589 755916223 335137774 411787237 411514838 302474467 940730726 104471561 245394197 341109853 798567405 674355345 978266268 279755513 131130900 819112985 899479498 727227734 121274533 372713909 395783893 915996950 876682114 536420664 596500781 350186493 405577855 836796754 175872863 947880928 123136299 399518726 317348198 385484256 184486027 630375781 472341644 933491919 832142847 645589800 752342781 787091482 8703859 116599897 95253659 227000053 567446487 920501937 751399669 114189840 847489060 697110654 904475582 87347803 909953658 33248238 211781502 417957471 459475409 100320221 776486096 71984614 377615560 317704465 921571553 376672331 161615326 341756374 135380166 789983994 100586973 735790720 281448351 467815183 860691599 842847801 123408161 980642342 102133571 503988999 48151757 924877897 61416162 476328416 934162578 654496690 300811300 718814554 612200439 738928818 926400344 728659687 571874545 335755966 263531722 988589489 605516002 658326841 990747114 770688249 226698180 215913713 902746125 813289129 500707977 255775490 30054897 179996714 735734696 184309440 383755394 962197512 151701539 852133145 795235164 592106216 197852904 557805708 40666354 284506956 520855885 870946352 786309985 555192539 272557502 948483815 356240135 253936795 564975874 580115455 719948003 614702661 716612146 477737888 599704323 977001680 771861473 731595459 833005026 821335762 681845303 991008818 88751371 881650797 488944970 306310905 367988116 280605053 279052642 177241787 80222010 498862665 395527579 706545375 286336526 223072871 859661070 886894447 14760069 426910077 142611517 594028775 26825842 728403886 772682971 399785884 664231574 835907522 582741458 511052769 593042699 312930787 210978232 231346562 786962084 730830185 23488002 294854875 744943035 456952404 514006309 675385954 149661480 328917369 252832368 353743226 126760193 323086545 410664086 292137874 651700885 816303076 24437704 639706408 899630398 749319863 907456710 758271688 629729478 413480672 303851222 282936140 47317185 694982423 932660791 459223482 249057045 503468853 864165885 358409907 467733443 232636588 57322271 733741014 961014509 582136218 658172808 608825308 896834617 539347705 364071364 489625644 831107246 66512338 339987852 809591204 103671362 417278420 988618910 965644290 433378745 820588115 404921790 702962371 7514537 77933122 371955655 626018784 472243316 657581253 43062745 589016449 256943811 563845891 425454489 629048707 198063873 137706600 786341155 13056641 533768279 407549713 70911199 349298212 836720822 982555497 378052553 825149695 139002884 223480238 2263854 303680518 90918711 899627072 676506451 181279391 172059986 783861733 137815670 444745882 320066687 759885723 647237095 519118233 171732621 13139563 707089710 850860883 690642533 498792068 354131711 309584277 884261425 275280133 443822203 64716839 412598197 658504647 953516084 473307105 193351645 320406160 360352448 392272312 11598982 326981352 369658953 619789470 132357122 466164498 5961213 26534601 493824043 595138446 261939086 838535275 318328041 705613327 58184800 17919170 228031384 983161324 605245266 55848729 824857208 307115228 355152084 146018050 128562354 828603617 769307459 953826692 554949055 593055378 586754495 670256446 552142853 363384426 364856071 285621270 182509196 719425994 628408271 293413943 901412043 118389825 837308064 608413857 967309218 873918405 614925094 793088622 551891863 90337292 855037667 934181870 841638156 610328056 372818783 843766827 52099546 955096254 606942417 542122606 674210374 503443333 812206744 853707004 464029204 130377393 857617873 831555784 263023733 411886387 146295593 58435042 803931989 785797454 414828193 718267291 739758085 350271845 719950779 206695693 732786840 63005435 478463845 777362059 317870978 420052354 732859915 465588855 284637489 154484498 457350149 203505934 151728762 74302038 167162867 864241120 430154367 470286753 428762587 694889877 131463206 428111793 394689251 669829336 837812138 515893579 182410400 708428906 682828238 268948984 899536579 466132977 166235492 910174141 268814813 201645798 293642813 109311254 677447695 367543199 777004517 257530863 785367366 918548274 37099822 334124208 588624435 693470968 73862613 105949542 717796903 109712464 411034778 607430099 887620850 966004355 147330789 902860306 695168092 56839153 497573730 491156793 839251683 875151662 102158768 990740749 442142023 243282616 371163982 926566038 380688059 794864016 799518470 219014135 932126041 20355522 916518353 638762684 343555270 454108753 635136741 977689778 380451340 715774516 173773426 603143680 449811443 508034640 716848563 650035205 983712913 894181888 56723403 283356226 701455063 326899360 824479574 964118233 407260442 707702200 666991274 581218633 103568025 525132443 568190916 476571604 314143777 797641150 921093958 879531000 562524180 962424848 259765289 107596324 215869591 944831043 780092681 86990425 391117537 85053074 594404344 471692314 297531503 773588413 368359787 743070121 827262077 682759592 319830470 613590350 847933257 979613050 597587438 497369325 732242206 480065294 244562819 287975819 35561647 371225285 368328684 716993172 141692911 974530062 86361508 274750667 449632465 395136577 57365999 999514820 963367791 910579180 69618215 221918353 18258256 251656272 860800535 121423507 1561178 158665391 566045564 967976868 880098522 465471220 637350898 602605314 188789937 168351289 717466886 960821881 139535232 434204841 406303969 193984109 729224035 709850106 68920877 502296854 288193911 268851849 660406834 887938364 353047571 387678573 428060286 514132 156060876 182640325 633368772 321216798 740049041 385385606 736271394 369960439 501932543 596853610 4210479 513078330 69462315 834120447 851929726 406305611 591116071 200839873 934612980 709231027 278125241 597971854 378609977 899323768 301950440 727653369 900404347 637012525 876684639 841256854 775536606 932267581 454767147 985883540 183123071 615500015 560375989 677432768 390564951 93005621 160558527 452667161 86258375 193796467 863997233 551927236 498654291 340556168 441351062 194901879 908049642 286265374 240954589 353259029 480553648 864525821 958636009 507068754 32501460 818291032 622090035 634737337 390412983 221084432 845052241 468248061 806353841 116914332 262817004 393322041 902970578 582491907 423092235 863823273 212027911 626967143 96556055 802598096 804551891 934106286 987442338 8581937 155450092 715866573 456450964 579986156 728399132 700757739 348072178 764420000 708772222 216787485 67373507 500541752 845324196 55076982 395716027 736078749 686078025 328021252 599708213 885963867 869115357 700346332 828731753 241500959 515115425 611866717 275234225 29303882 54401767 18733788 562097673 951003511 33915798 49341881 6663670 972828334 250651534 765833674 106065831 194528476 971357349 171156911 790180988 612769863 952745546 893950894 26307551 304256631 814074056 71759074 736176742 879596398 857250899 75380983 537249051 829019741 387625578 615069171 929284711 595912735 709519327 213587485 3420280 65504060 869897956 934355460 516845306 671896104 977620879 438866669 513145481 820542418 872048846 158190849 59810322 892815140 36072466 237370985 506689654 474884599 503716234 76356231 104568547 340562229 700772993 123882378 138295478 133849636 384209898 230300786 472470637 227812308 325681894 744975951 697577112 15033542 270076823 966933284 528532201 404758892 825530019 751603019 990658467 937372599 303856682 501782658 935877288 507971271 785607980 596563322 354100699 319550042 597564913 302625772 183252135 227837409 394257693 19262157 458568213 327894628 654338110 647255417 752751828 471026882 653151788 660851163 925590181 993885961 433848844 615286922 839839205 156210142 701970007 504818342 515952956 577719515 845192252 781966461 179895153 245668142 39367236 990579408 158125276 668081825 241381099 810654489 685750645 498998421 831965453 540595794 722307038 633270532 501651761 642980241 365656561 641442406 179994019 980285521 107224306 351660022 888730052 463409318 700270106 103641119 74951735 409678154 731925854 162048823 569770884 627463972 937231258 75997997 8543360 670304722 177749895 80146871 390918185 685464016 51006755 573971308 200737989 115825326 750011925 638999681 502380101 451768917 663109459 641619147 959695628 37311919 494910840 201323162 774823957 992734826 164018798 164954836 954147105 585041653 642861524 414791403 395018507 902874532 760288793 634455307 537486643 75861275 232254438 533673766 347933546 951284554 209760320 54759331 133047966 25381621 942986405 282602320 185163061 189665619 829693658 795336657 535255516 561287120 589886190 671147486 689533056 217026847 589026841 348291373 277936680 972637965 623872023 583731601 774659181 688169767 604945653 901526547 468476659 95566687 785797322 403975852 126072687 462275035 242713617 728902912 985929084 715547926 49389724 520400394 36977640 376663589 53295529 206238889 122779929 583889971 510954905 17604558 933264102 462111593 180305116 86538673 756559942 800868896 798816340 737568596 607805594 870820080 209577452 852579287 440874381 473039735 871752534 250589537 934701404 374623359 181313903 824610499 844711651 793057810 230158654 873390480 989732652 695396443 951398860 258837398 190737049 293076560 604217814 409191069 578436026 638975426 625350821 716745802 703373583 86216265 508058598 433482887 989816323 705452403 595956908 468881267 654981929 251144322 764995941 188107997 231780044 178529743 497495632 165429014 667033478 822645934 545104349 884202169 440582112 847491289 400420604 209786851 236987613 606451878 273329741 4456064 525380918 482817448 958650685 605516173 965241265 514316331 773424787 811112743 56055425 277812108 175340890 332326869 387910479 125434371 441969443 771388920 3951469 389489040 219572837 182201606 196137800 214292812 330503641 342948821 861890695 366017627 933242931 919407398 529801316 636198095 526318028 129651893 46700113 267346069 716421682 727918168 128546431 467591916 372946936 975571278 474600969 522302175 581125534 442526165 238512886 695220433 772961548 916067601 154280732 822891453 748457329 34250273 566042829 766518768 967688891 918104586 649058987 914439605 833845205 350043854 236928292 516454329 883197050 429078079 162402462 985105544 408866243 874325331 597806139 492125562 391326683 282695084 524031842 487833155 975164825 380480350 651371601 952955959 731097395 945991723 885626200 185385114 873823071 795277436 463413774 219678268 690683911 13499907 245614559 252475491 52898155 122825512 137537797 619296215 249580752 345693315 807209639 963319925 813192607 414930764 124959906 974810534 465671563 979226273 18987485 715907270 862379424 514003053 678779554 320947382 567574832 866599494 898431808 175308141 855013728 876687564 304098727 292646920 786579985 816200271 715409825 819299309 901325780 813592390 280108388 75984590 331547721 624179596 777652555 541495804 252797819 502024277 776130515 121490381 206738385 705844293 960263336 121953126 72583801 685995986 788825657 585226970 187979309 788536592 44032035 291311608 199135504 995636014 890607446 555509997 774297492 780011701 388796922 932096035 866752631 268979269 578273951 915769328 504562755 570161965 233278619 380391155 651688378 706454088 613132331 153700059 636877245 491695695 795810006 759262751 806745424 435383076 108448694 549965112 67773364 586414849 836349757 65619122 725893189 259916965 12504179 915973247 143932490 316915856 316144726 982752171 403427478 579371115 14590455 693954844 452295277 802519603 709005483 781189363 595105731 929964383 81773017 249938717 79005192 317288046 522452885 302075230 941810876 893229666 355520758 616993811 939316425 398760997 276337254 381936339 47205598 36531820 192111527 309079973 978414563 958983517 924349632 484181958 272974273 434403447 819972705 209613107 982450852 124588444 466856413 5875332 915535479 664038925 540472630 340853798 278424054 691110865 93739917 271729590 788259918 165868262 463516220 966987104 357212999 27139398 295826042 890996425 229573586 136252555 452309116 777277861 723062507 804573419 756426197 232215515 903074701 602351279 297676337 680999840 96862140 288280471 261080766 769277908 748147157 156327898 352601632 150796789 685750547 984484156 905118609 419220095 479076262 911260032 891333574 904236629 82484319 605308649 621917290 289157726 797769075 791283476 888038028 2386678 85345342 863304336 798593468 600115434 467956881 69566577 858926089 74739427 344648354 507420197 635080640 141565321 448602692 153913603 902390544 815065494 977459008 262657827 448125254 551517421 736371865 191880536 391091591 818453079 122678319 547823811 720473902 820082927 173110226 540337882 122044888 306532369 871125040 358144949 568856699 938469065 870155944 107179706 82362591 655628378 826920317 815454595 142031432 221601320 493578968 166228343 922693987 507721990 808532914 291574902 47432647 254833595 818679771 821419693 601264287 414929251 383806608 691420989 998259459 233124660 980313795 162235767 446232539 586586014 481247466 270461095 321171479 908417036 787937381 91349721 728444459 281868384 996822491 46672182 970247845 29536652 451248889 87334955 952928825 682502816 902180694 31511142 206623775 513813322 638894044 379082534 770888449 754541767 847116148 492428329 949059258 316361463 877496025 827452310 425907759 180764809 873583933 642583278 228802915 786325283 285162547 657718609 582517315 374614435 827459100 479826090 408861125 835277883 562804313 160343134 705274656 524936769 25016756 307674490 681625545 377058149 307643245 333884729 447128174 808692574 813092494 622772437 779385248 154994407 551765672 233091296 821307250 318499304 361463133 597990512 430207892 801411028 538928189 656261636 694045745 505218708 691923519 299658749 135320621 113835367 913430668 431641673 326570079 738424918 594672158 576318058 144697230 58986117 417187212 534013323 607649744 414310333 978136240 48334159 17601224 560556252 647437737 857578112 901996199 655808727 20760505 205563511 766842541 53127239 160494655 56493581 754416149 18638326 379266691 698065441 377963308 289758023 758552836 759455176 338221237 735689313 324440305 301981597 712304931 504663799 365374398 690354363 977723735 423372558 417375425 935902541 882386248 943183779 408589248 568307369 188709710 504106107 780741050 249643076 951817980 583351796 748596978 948659485 83801572 14782965 29431772 549774963 596945888 522515435 682688581 118584830 783565757 300411677 228154135 345814431 191808643 652571755 462378895 20916313 115849722 386448563 191772611 128343790 870948342 784000837 556505922 883950460 549255906 494678893 683391347 352434431 747145800 70526705 988653887 660787854 490002738 836439354 578118701 844317840 38363136 735617566 623709604 594677090 993548470 974571473 82900221 549457021 1688813 73162409 372792568 979372105 325793557 708998243 156104267 813840871 288508809 508967408 924926498 987704410 281163493 309546657 127238583 447718890 684998603 751377766 336035301 593551014 636753586 126082248 567316404 216769521 849463975 207965577 100169664 229028457 308828785 61176197 140999935 249717710 939327251 833732612 158564698 803605387 222807599 913905238 183146469 71437120 538708764 482309283 718504673 645400387 583099231 477455948 874897545 960308242 561210519 254916879 894289348 385504146 142361562 265487609 875941572 46822604 456815620 889057065 975698976 57785398 769934896 720840926 998737782 325345296 422887727 273015115 318001467 333447190 610684370 178294699 959210488 432940605 629546215 534524214 429106343 848371428 330988220 453963972 239288781 928516740 748835127 455617523 728941640 382388156 872053838 397013686 701888159 456781969 794643502 705467981 671012550 419326347 267956826 993231498 326321780 232426983 617169779 702213561 64399235 145116471 332315051 157944557 887525027 130902827 571170120 470968642 554259221 615463873 378643176 273788366 821373799 95789487 35969382 323849990 569409287 397845467 450927214 930099180 106589366 844840598 446637512 212187132 576847845 667846392 547445624 869397744 603991098 10239047 30849104 998776285 315905491 174268005 475477476 854024250 667339714 234969240 85883467 876606629 568161712 848545003 74046871 872286659 921190608 992040840 774047959 273578798 740789380 443079401 324646921 200387450 115370388 384215980 809673747 973478529 732926570 311910897 361420142 152919343 628055685 495814227 72540872 481314322 601445070 810088726 829052879 765326488 253543251 231045333 241436280 744899048 13184479 40654565 701197739 227232915 681675675 47781419 81302818 453238449 126303201 793170764 421076894 443198552 222148413 529446120 393264414 633349229 598464851 250980698 612867902 965498060 79087080 715675231 390928764 13120962 838816173 457718646 677866142 518735888 480466947 255096449 153292643 504841810 805924441 832496140 613320173 947713247 430660592 831351560 723885008 156609141 901734138 759859800 931404161 668118097 702494687 107525809 187738016 149363668 601410441 499201962 170179546 354033251 517876572 917674001 760908914 140250616 53213740 154887851 991236136 97105389 744012329 151271668 431038630 947980559 484192040 445576277 658469828 336813433 682304924 927834392 96750888 759000861 110443633 412681199 787463975 845966269 508062561 27622683 908177039 396154073 519055394 631158694 310256438 75573628 988887551 628829313 851718491 542397133 289860459 174130316 971304745 925285656 124375354 968489867 305968245 377672137 575124164 773734633 170169033 140910531 554333425 892458109 604110572 870175080 127015603 623899061 255662458 395697650 98400767 391695368 532405359 840824912 733992463 195174322 286448171 959853471 436666209 712593775 652217021 980691601 645384973 403613305 317783176 986154081 305960102 160272543 578491476 575388881 755929750 34905450 848309140 781691887 142469320 866767733 997619413 410031092 519510034 529636976 729837656 439668324 191712729 16486912 539282643 515178289 476856585 739900523 408633745 428206463 222838884 22532757 267847055 197219378 19778930 226382371 222193910 890138174 226120519 463033495 443267323 999488909 143712 173534379 979606515 815376504 864059055 774516152 835181611 747698577 404521198 708195328 401451155 267612334 846572263 930067761 360417036 817746527 154177620 668979994 61195896 965468579 563508356 724377121 173034806 117486308 413223489 109463041 790819150 258358919 44980691 218859774 877280422 861478776 297565583 481194713 524847639 53846787 556265614 569158332 695289454 172279619 990630824 66247390 277228795 878934335 988567302 254998493 410387031 617469186 735468254 225913437 819005781 989162425 49114781 759269702 354893776 808706 242550716 104699029 99400710 689656645 823159150 40443576 539800920 452375957 547101322 944229412 630130747 713288801 578917252 346424563 906470208 990120323 433854408 955767569 15263852 948126155 392181415 899366690 805863667 108199539 492391771 239774758 230981415 926228265 267640177 480220116 344008180 987429198 841319484 882147839 836477679 363059029 799592342 385512509 433460287 690740753 700896163 584649275 300259080 50402952 803273937 233028928 904701307 942466084 182604818 727162888 302443 908092661 591504056 30295992 182206777 643162248 311823324 818934534 527031353 466611656 679174585 265658329 410589157 396894060 700368601 517887008 226023810 63396568 226996216 871944393 575429457 999184413 639026781 719371582 209794269 786295372 746752398 68161871 508013062 281225686 335336928 891549040 283953783 245372153 285118926 365464779 209783861 366636674 448002932 220509109 721710461 243553953 132975729 370819406 910577489 604513589 504699857 47034462 623472215 72745616 923621907 989579513 489310577 327340727 412847065 719282994 910748604 485425839 913555509 787328220 36040702 240607205 93886097 470401022 760135789 582754028 992809993 564468773 716722807 525441270 571123760 841119416 772206071 957949502 317726008 942877552 717222259 659927871 941527684 337081751 37200862 785427713 656464686 781220954 444821902 724688341 149769824 232027409 980997734 747973605 716331869 674754810 349196657 537699262 734469148 799296271 198549484 159519152 631704488 140151116 458899704 796679990 252552058 375181225 255518184 502402856 622588218 801383246 256552160 153255220 814921910 554842899 184086712 183175953 742907499 728265720 392521270 696934196 288638020 296386943 587074863 916120092 940389143 87452100 309142929 368349998 525065475 69478961 83627896 770338914 963421729 76066273 606460494 671357830 280025740 736665001 338588772 712352949 266363438 897455121 217851074 461560388 471685240 617232391 5847325 448532816 813454764 879422175 159712302 638762018 341289172 650223093 398679488 84462986 369609746 784641961 506346327 202091028 580907296 378824247 476855334 582259669 225308874 56209043 941303479 912280687 939116515 718683926 832483453 548968033 825107877 297045316 301788225 445669271 897585661 174311075 697358840 79453163 752526686 760518939 617226338 725309512 273001950 82565695 613295739 188906882 418275858 270536782 244750514 745661938 844030435 207534153 66173068 320809287 605767707 116215726 246665295 739359006 964319554 474425458 20915811 241766628 169784869 805325287 816553467 283750680 512241094 732730722 805103782 488656625 338527446 197877133 52531136 116779196 411312417 719487101 287940623 187098812 101997461 557516664 13449705 634410099 641887744 128083368 272950841 427924670 16318269 725140921 822141306 961205375 232247845 278099926 815835431 87114852 452131512 301969355 31272176 894219722 389363319 438125921 966292541 995344921 993109114 298602337 595929811 331396660 559405538 180647330 535033404 853381568 395230768 656371933 125697478 903288269 353721105 572774617 901952690 501163596 334158886 144725356 779491379 702951738 430739626 609254864 123400586 21827400 470393038 326697366 454035630 603197794 291568004 429261801 911221045 297712922 985123731 923572471 175666925 718024186 130892429 618048153 127944521 842224356 278533269 106652315 786570236 561621663 672109733 273617163 502562446 784640466 468340612 891886488 249189114 399139812 695071646 649419051 175958009 23234360 459024992 606632026 960611691 639830194 339351866 480807690 321577060 688778190 541273635 391507304 597985076 526598505 755302193 492768299 609831562 373698858 312733563 617356175 244789197 178260871 213626197 442456642 797536553 41551563 298796864 596587701 309418571 308866880 805298694 790823982 929623048 875304190 35180650 727700900 555114359 394106958 47715665 484781853 20326067 455891171 41313096 254037474 110043952 963583614 129116160 31498154 596052832 358448619 925986733 861495387 949334136 967761246 453330260 506567016 964939758 935646565 560302681 49244464 781147051 319414096 841317245 575651512 829902389 988664796 751840803 646691214 650414686 817380388 142084739 801566228 771429089 235213452 904520870 7934914 835809562 695207515 347512130 842286613 148294751 637390890 198734681 811689461 175503866 162973750 200835271 223686361 584687180 978501482 635934342 812343985 837626576 605138410 555613246 85225257 934619441 129564795 106055856 892121105 58400821 550722583 303874903 11246636 417601075 926304383 562311308 954258967 348936232 551189976 366290290 423163166 491062882 718781298 632548328 464307360 997027466 292026567 786529780 170163788 815744888 859294876 401629529 934254643 4406284 630014909 2051593 453893192 879705102 371877616 906625446 813100742 892714780 660387258 321048859 299564122 347579614 306176236 220540046 200998415 882763116 502775388 703787895 720830565 224885402 166996343 245499663 588118652 853563014 314516365 427939624 371706937 65562876 285283724 735077586 856925124 154264748 472816177 469915559 257916075 357477450 54293895 410224268 275023816 715883029 738192836 443933734 522513506 38157179 282430234 147915246 482422172 472192108 813719981 525272905 681704326 888936419 164150884 552980780 178877342 759344371 104350154 793459703 836942913 189127537 739808357 800987220 142716682 863027056 132068823 974145446 404712452 496192148 21380936 171724639 170764893 993651914 480821868 72891691 289160151 139398629 700867992 402454678 122874407 952468287 41132567 137363744 445342340 600261642 337210399 249326143 159253074 648924726 610691150 950779284 464504513 374063051 395595069 758533917 913285224 933200780 441506409 479375799 975391071 261251448 742764030 748027170 651733215 434585017 899752045 489331260 484051719 855681665 332801827 949243810 525016389 43361928 977339733 640932381 26634201 536517496 146176471 370531494 375222206 958573519 12932769 404300071 499419370 79846038 106633409 582410218 952611556 108366630 79284845 855514641 589768752 862274075 846533593 925834603 614011681 147421374 61815232 571935309 81969407 46733602 918444774 225650272 982208652 160033733 478445400 836218615 247197901 109739915 776752800 355756217 818224860 608571491 985313341 82299376 47720390 399334021 772129439 297291752 736571349 981035163 694984234 395655050 660966168 356965155 917493160 819407345 988886612 166566964 757414125 77991817 512487167 482268121 564310592 451876416 636563684 735259126 439376796 194597516 427119498 296706433 692220662 854504061 861329142 443189519 491388425 238737438 259140930 608607524 77419777 422742497 735429864 983491592 535281843 440062779 407853245 978464374 328131577 666981611 110162530 484508147 247952671 910575840 270193435 279819301 786803055 535232731 940429240 499157517 657095268 609854693 260085271 740565082 697344799 33069133 813012004 263614184 910608979 427096311 38567475 166767410 311496379 914725849 36335536 315247431 509735332 372574563 198777772 240011266 716328969 374393125 489475375 948596745 131589562 742183713 727420423 97165719 892588197 947333466 153017135 532226914 632569503 651798926 79551978 993341254 221775391 375647768 857524328 650264617 189240096 73855149 857559856 251673790 947115920 424990247 546711276 37062888 713690106 816405077 422515107 104249405 634591683 964629168 476439320 551557787 738583297 628639443 234782618 408019982 749929758 138598944 223837433 663533966 412458319 387958109 859069272 115226392 940294185 822120997 701494053 397872276 242723856 822834021 472616357 372227703 894660198 618323137 291636961 166900657 865540018 302935326 279592074 665573394 73335714 803180712 342159032 776658142 382472277 123246294 759138822 153964880 240395549 724253765 595858953 228446650 338025338 454219586 555218777 124538014 475892245 805904351 309751655 800689548 689922307 149144970 867404016 553803057 346042599 443018874 291229717 271545484 374412690 36176139 16771878 78845803 551160327 734945163 886739756 106780877 242377692 246501527 780002534 212771534 282424439 638930498 719021481 89575072 463265631 642870683 811040749 138853309 474837189 84771140 24767541 345533005 973979766 463241706 157481806 755789186 253710900 710548156 336325367 306271892 837604483 150457447 635692425 882556823 331427298 424211083 416605289 514749639 224244814 217229778 603273745 334357571 710328 20506226 408980307 638333855 679977459 280613945 677922679 63782634 905619340 716735041 710200148 804882108 814310894 912547863 232210754 960090900 280952359 871567745 613821375 569248577 162648001 133810607 488559104 546742258 575011405 293459391 292581947 268193602 624220348 481220172 297700424 671443343 581744749 223437560 701404132 68114517 871573319 281440037 25260220 587168127 312131194 540371096 619435582 526073001 375805418 725870319 514067877 516001556 665257139 770584418 500176673 285622193 946381311 413287663 890413743 551714769 730275602 542897967 138615009 547148305 702710829 148626993 472977287 653498298 99393112 686358813 816164221 984287461 142699 12020510 337212870 794464134 905937895 116119860 339658910 113842259 144540175 22337033 895359703 768233328 913322937 290726804 863489882 945273544 240214880 268808514 39219403 874721436 723520160 110794557 148254874 292286735 80186495 345799356 941422722 707839010 664278242 420466395 551737592 493978224 710015399 38950247 983548542 552088538 58903769 882359281 425775539 338005193 934883337 675909812 215930118 716758861 771719408 670373885 341079854 56931343 984941977 923577175 430362339 886034426 311888784 569987531 766353389 416898960 765346821 289319937 797987459 584980751 520623931 275319574 223699110 78142144 239918053 283238281 924196681 900407577 673826847 441838341 541372996 332379631 655050248 681922682 221581214 944283087 859262570 544507798 511386658 162949399 209204389 534178902 57274737 864007448 273890926 398730965 174428400 147312174 385499152 959748423 363800661 713984540 594291392 303466755 300026878 2673256 868859166 249458205 427254063 191734348 523102626 305270146 448868684 35416497 136902382 619714796 747618794 590463771 511965383 467676537 317805146 122552804 270341235 929033829 451655834 497608105 208211561 892496118 498165434 815184251 564129478 211341397 379626674 553481788 674800102 723452431 290610066 546852656 758573906 631812786 212720676 343060026 516352852 937373296 152540990 306815197 784991588 169158212 466803133 998093452 199713924 983280422 475519634 95865270 125044942 478992845 22522485 87045348 405898657 172125630 442570734 729404717 375604888 28279824 396328837 785405379 828729899 59918170 462802702 623523633 466276806 49973065 296745511 527352523 536163716 621858152 66910352 256747877 60770240 336619630 221452703 665791130 641170955 410400296 270591929 675333895 922762773 911213743 622661727 439418964 825623902 340075520 951042133 391622333 868133331 626380505 11682072 493902383 207006230 798726020 837999708 569190385 508667460 10968901 70497525 728665503 240953298 373253866 129579618 281932250 30331462 303409292 925931476 604110779 107920707 757195450 110429778 6580949 899136434 629554668 744290873 92456967 587456848 655511925 874534099 650575934 104791861 12834997 821508467 581707071 122535365 473204132 587113498 956566475 404389283 424314794 78802140 126656164 385934764 403511275 298619886 445313372 267583254 223634571 421110912 64721450 48896336 329098481 540976910 4011839 231860161 675547687 959463547 401619495 776927751 430261131 998752071 562486622 98401426 727577348 533970028 293982604 94803416 805854380 607319848 417373990 103665494 367106605 371592092 289019594 815011358 279727547 530642882 87756075 319855319 742405756 249081678 169597546 349535927 482993294 125205748 853797621 13295996 852644656 221395699 496281921 836269675 710250941 824014685 838158321 248788171 1948756 160471337 535100922 89573404 111768404 389871271 995277469 801753601 774347980 40646161 394551454 416273660 347789423 205436096 907731629 473866958 108881339 952960923 880554239 321004707 178552881 184291167 913392910 880215337 805123189 722830455 989116354 758262417 15174863 684137543 474615532 704549965 161471093 360257028 967593035 232234981 392448901 196593010 931031616 879024706 421046762 997715716 349391223 678601925 652756545 438570121 618327718 69034801 632180333 587763828 622919208 580644792 506779475 406363513 515650835 1846444 580570095 577897131 403153236 139077220 566957889 274412726 762075807 467129251 216585408 770312143 46711238 141145300 433594200 927154179 320420738 410613205 432547219 99638654 405769216 742851260 860396347 289895325 668880352 408434900 96474338 227165908 971539927 651256969 347569799 611145529 495614553 626321238 857124929 669795018 349695036 788336724 287530373 140229779 13808525 248421021 438755691 3999881 290646548 910826425 584204295 767607403 357801372 740666741 509223285 141104180 984351024 698864212 211963178 603886955 65875410 321511575 663824062 345115728 216891074 681377717 426258807 512080751 758393170 714239092 493697695 115898489 898879786 440420832 890015353 438135194 577123458 214155990 374191768 110144921 988890967 650404832 821637597 585304418 231837300 86498615 299056628 110354905 186529994 904699617 469543437 382796455 259559421 778507827 713065575 722488110 435308461 566712858 55250881 381512308 207361222 176731278 184920411 491453568 701948000 639097371 795098687 384569427 788577772 141620321 611516834 478383038 268300265 341958185 436508826 763382227 372897961 425915656 568353750 945084146 729004595 120061657 213966347 623963972 828513133 547417068 901659674 774895172 405299897 934199709 432390490 505632252 860152956 45365629 185760995 793386862 604458657 250846033 885207671 849817074 603907430 377795310 298864148 211496004 229368850 345176979 127624370 31040518 244056263 465654739 693410849 415317624 95859909 614510222 932906026 701630750 894484496 513746648 235067924 861691621 610700409 657589264 356492404 222859702 667177569 24879794 278352652 298719725 268526548 968635078 460914998 719343109 368269608 618466349 278254901 606742052 435419181 640402409 63755581 938535343 517513728 355451984 572898154 241941622 720830219 44520742 983246665 200925602 464008304 547083789 450585490 333253906 138977714 303893394 131697339 517780195 430240576 15767821 900111282 76694147 163215842 520000476 94863212 908435836 534943823 428712022 646573815 101811713 284954762 526482739 403002986 470644191 918235603 44123573 359195916 217615419 218446276 631180586 664767689 738323587 787241232 85374558 991139804 830626875 135742469 78572526 707304611 663118236 804797390 408963718 545854785 483783803 380254516 170511599 27472426 850483510 894284129 314137327 674977907 352939769 620572550 42414825 649619125 936119963 649410191 215567428 264107645 706518279 775737872 340238831 32407622 423438337 457005514 336064319 136185202 938461131 777557724 367619525 964448493 414740209 213709600 702035117 814693415 710903757 794007946 730378088 28432901 119152188 434873178 977224895 966563124 346284047 186119451 213336287 605819715 763737012 175473388 911602472 981657184 641237617 756594219 806560179 793152814 22815975 655473924 251134517 937900849 231544135 118946211 466718950 111845444 292519482 215828045 455158873 382753807 871709609 219233640 166590611 2010953 978401428 439028658 273019590 167429783 140108427 775439791 784937210 440961135 428912410 264078838 650002084 225009169 134241489 795382330 491547485 460185479 323388177 798590151 8901648 593868435 831901918 444015817 674408238 690821479 519046320 188228975 233150307 28320747 205581044 976599933 110408016 614861478 384628010 487771684 614249584 718575092 999280773 504279662 588452796 670700617 552735767 664740649 840542046 624398852 590337085 499572315 805328319 593295683 66837654 556799416 305877047 112252923 946194046 959613445 957026949 338094714 235089449 62284785 523158878 328832980 547652784 107034460 253007613 451797196 710719496 574687559 325168451 457760821 820432143 128667579 307800108 919516843 148625321 852681704 433150150 194634491 957446973 818857544 652863443 479452439 163034625 771430616 70648342 354209369 896668475 493497237 114786598 152071524 76341178 464445936 354873917 356757857 13308729 569081212 586040820 304752672 80883713 399978066 410321199 425451025 678207481 191691544 924716013 4967412 319372589 947346006 253961275 647569885 489924395 505972424 741978407 360287989 440509530 788251637 296881997 573323819 999727758 448830029 758697749 822236404 750461359 761049981 199672606 174678967 444410398 495707514 73659594 693339021 658468811 371521852 801977223 251121977 247665171 334683635 410759810 91814811 399597480 671729760 869901256 952727301 290821419 384101942 542669488 827096480 612268227 389944293 393150393 178394650 972848576 558945956 962869587 425689468 773501491 997607499 362292098 659914237 835828121 687037441 581334658 148282518 726417318 578923794 820105817 783548958 853625733 940725455 378849978 331695580 500881240 628112756 734221968 338016361 397320001 181403883 887886549 581289151 333823064 964275067 365900166 665033366 565465792 972615234 806027019 282288685 242987319 471838753 927873807 859193403 903313906 34080334 337825705 4704022 776053424 729642839 694144349 478006035 750960043 27738771 434183610 717899207 220889917 246140454 961375933 30988735 538630535 401282621 333263216 386196175 711302016 517910298 136549672 595957100 277188127 702616276 82606377 109742760 653181662 651921686 192253914 581851396 6608169 644917109 584253717 907438481 788827734 107179615 371372095 867617097 226331730 839148022 526059666 384678451 304566386 952540869 869883122 230845138 393081218 665347634 705193521 15166520 108868573 332293435 565716697 131914918 928402353 389774491 651775443 976329281 934812814 676043450 365404130 638477026 172823064 742951419 693476936 585943421 461283465 485461542 850352003 843801331 645290755 561612867 354544552 642213367 695401119 502096792 739951846 408738815 422079965 639461415 395710960 900646532 258875909 790641957 693534333 174860448 266508809 956802859 8994537 368239022 803610725 380401083 219923955 54137567 183993152 973084436 518290613 839611589 957442114 804992589 364214547 56810304 993675229 458865396 655461648 475966856 376184484 897842547 376459440 112264649 537901469 924488946 605349352 198954471 913476514 54431195 950064419 483161070 270214112 864042668 946336923 327196458 562616366 421540433 422022106 384653278 323764835 145948393 455518130 720032631 491088365 770569541 235529689 770079591 479778450 581653384 332765783 763949002 120605915 54911914 659868171 649649488 116248999 480108628 786445125 726801798 777138578 42299727 232875013 728329535 15763721 90782023 975104297 739517302 817662867 609382694 680326158 671040549 729071669 135207843 903293466 790243369 605757554 993017154 553081584 123627393 798603137 543741138 391492339 214326173 480602052 658127090 524683737 823731413 92881460 488020302 701089064 954207366 618222749 993331854 103466942 737337475 466719419 517376705 529881163 473849053 626263861 753886724 595412119 879633578 696547520 705296249 105008800 160560262 60105037 582347387 694391754 84960097 424234265 471403856 719517831 905644638 91749300 266044520 850409465 911437225 822652713 44803605 387230442 591920857 537692994 922383445 329638370 855344609 777747149 808538598 671081721 121722158 965509136 371770932 14479979 685821969 419316132 540016281 689780750 823308038 383239504 505733250 95775081 579846791 733816704 882154845 384433653 343110986 58412539 927767281 105007542 423401905 960855863 841543295 499704387 321158167 775533692 377761185 299986454 709655533 594209691 333935480 727153497 243557964 695255699 388372408 824825336 213301327 16470030 376999382 921902090 331846128 494989724 381913054 557475177 236750336 882767456 377599081 8106293 986827082 106730132 588650325 835276086 543981517 861045174 691070303 416065087 357643521 321299728 896344226 115877793 834363622 470627931 372102461 378665670 414104736 482835208 104184758 87432769 196931077 340572758 705483218 747373516 752941699 758147388 245896530 331309051 531506263 496087229 312862537 511557415 876914792 797071186 894585266 525430737 506939403 695971764 811840767 811590316 878551670 521816391 782447183 231858235 142742894 784715471 990467955 427574229 586107842 644433770 561155154 92431197 846053533 459476493 53342886 682136209 35147193 75502968 252379640 461462169 348831142 739510870 788129215 987919862 943441677 9696200 206549725 189918377 911058983 144775503 58415438 633506815 27966849 870637059 63930824 655482067 522069099 147355639 959685636 945340313 168480034 146557509 687057140 64273959 384069286 544449637 848667991 56035722 705313135 253288590 977651151 616888330 32909335 727051220 583941899 264468681 563332189 112468900 688852932 813065321 146813386 207008924 860009181 585895547 501680924 138709766 414327756 819483401 901958926 34320726 275065083 186267814 435626872 660914146 603982333 101845774 52604414 601213822 808848652 64511165 95147471 629397139 842947629 982052953 616696710 401365872 337968342 516343534 846988166 24026908 810840905 750573978 15805962 218385632 992792150 524515635 70681420 149040526 441001897 340090703 297315928 502808961 917213410 912174703 908943960 244494064 270476497 214372494 293459267 38764537 367283290 327093003 608473069 448947089 717523825 84141279 786744362 408878498 404893983 780820427 32724558 137062074 682315501 314353220 361776932 173398420 367266929 387205967 139149475 993107846 104696840 208403610 46755794 450262702 138142242 202242394 978691848 781819204 604776736 851784948 110538822 318297631 433246100 264316328 49282341 555988175 78551798 113650613 162753299 260115293 965583868 908050275 447092827 691890208 250141598 607006039 405668429 955266117 862905586 757826462 792281948 766075393 883239595 405448602 52516666 359047567 858599538 677232362 256448530 236031468 202835467 76435533 392965521 365095280 833523255 550989512 770207390 275728173 884305932 666036696 783715720 273194898 604228411 706493853 407066552 377636743 260405845 643640608 793923179 615991671 127215396 48344076 629151118 882126915 853589519 838860431 51832239 990633822 343361134 381281095 107377724 218669481 383360471 526527608 433231865 981138798 325598152 209069870 91980773 42642079 152404578 951725066 749533080 674077021 909281703 739478408 601327739 827359740 371573105 71312862 884062389 136270487 547182984 736930450 731758905 913044065 112854098 155855155 658722452 873654254 789623270 350946517 839383906 327086734 462832631 517962322 981159229 804062386 871631178 486021496 653576367 478597352 120228555 810177254 40950231 802629945 687249609 982205338 701027478 987214255 357761168 883450155 997663469 689979825 488964901 823451560 858676600 936240380 986702315 819955016 25702023 792816720 257656425 604773330 72740259 667851109 714413917 917212976 524564482 947578228 976330192 683795281 353352976 666532232 579087988 175871961 733052833 550534863 142717155 967457224 669309674 789604924 41295060 156886014 783943148 512212054 889276063 142917738 912509969 51801818 135115066 171386113 362417626 464461294 939207160 605056264 493836211 906054630 577359582 295693676 819142050 44478569 511789914 218575586 879096876 63646441 321601207 590054603 622442804 715456308 625806770 215824636 947635237 431903153 485991266 713104446 857637186 649708920 417144976 55554704 210648721 964413262 375478965 605955387 490229323 547423453 544946493 657910051 750254701 534531186 650047407 783956007 370816373 685855263 909936045 705706382 946262809 314420004 481906585 902451622 548862840 338997414 380840363 403147757 407625565 138402796 43263932 528972897 159952966 768624575 178770958 227365701 723839385 292377672 48666590 283850697 321789301 77230072 781581071 766921394 811154452 69472852 866563413 107451655 423245549 470751255 839767587 424639277 665937215 322779213 89737046 219775336 568449202 134200677 875061950 399521187 183924908 808820166 19427908 712106770 275396442 995732267 412077495 347466565 518032063 893236575 586109164 450186829 475495524 642710351 567262005 219921412 608815324 824153562 387198741 135234793 862597477 884956428 879135631 105264293 461659302 125353087 345792610 893706724 251691004 590593012 363601383 32560004 122108421 468805626 424316261 932595938 506277562 486999557 234607493 118086032 831695374 985303767 111856425 305355234 733593899 310075030 227829861 883834148 169301269 125343447 522722513 604425022 343852221 589108760 160532625 259490955 274006765 77037808 363612370 589093119 751197584 775877006 223681622 159647902 255529772 773543105 847000918 107521058 917313545 753162210 64361587 750934193 830407600 270342552 873622153 899213603 346689286 473365677 860780838 620253717 889891050 921264089 451563603 244000612 868074163 193800871 162763806 159083866 130832041 528968943 619971706 583863730 616779727 1972236 352398108 67276753 378481131 941236277 961168593 773852703 613872866 767075717 311361508 146906868 565019394 609565023 938334973 507466777 943540088 461881467 25992151 428012131 498520913 254913153 755542530 78942957 291553863 522277509 810380422 166165972 262214720 144561681 128955136 779406248 165319535 117720776 510457250 111394546 628769391 796540186 615478637 694176324 772719914 503376088 952246261 991368404 948065209 275748037 430264990 165250535 57584548 650498126 878782259 272181626 114904957 571493496 862048751 366854412 491041483 116083121 624015246 197497692 329179397 183521586 758261499 266140073 829107926 364100038 596548406 974073538 22388140 143412651 284470056 734644612 152174733 750796343 737739143 513775470 101090647 220669975 809362418 348274176 948088602 161496604 475733937 681613186 711074928 719137078 883200866 425325991 672593405 79246490 717086208 80535156 555778766 863239519 548468663 957990133 943646958 217869607 247395693 141458939 928752677 292316800 309959889 187286689 421868389 723990282 890812949 53918149 46831120 193616124 789622294 164387386 445082866 730050297 48994576 408308842 178672109 257052673 457112829 207402557 969290103 670667448 631047582 781510528 366546408 699787229 564538242 797665250 746200151 373495641 718674982 126302017 831889190 895395566 298963111 699404973 890389210 316153077 233332606 29868209 380621125 90993562 487176494 695664248 99692978 725212039 203605273 565379231 520941008 196782056 329175019 117327556 427749345 904533108 855961306 172294336 48903178 115903992 212160234 110354409 518003583 28617 428519615 669283516 951756954 336090149 350094138 852050125 140033367 633387685 557864597 335321328 500282978 39541404 23462437 450539631 47392997 911744628 977570484 332966583 834622734 604582521 524733558 694868087 204120002 227091063 59650662 213908311 442558926 402139425 250201114 407787570 967416049 904201564 42432077 439255151 670432462 37879751 469935132 503698018 882240022 41137248 261078718 750393523 101309344 933221940 526067568 695491521 18638898 789608544 26581202 759238466 147439212 673738312 690160711 350049853 158802589 581702415 399622219 576501797 405545169 23636242 341253244 692785830 713776590 965654513 998956431 602156436 664823121 56428164 588432563 208663088 374256263 874979693 571752462 952974336 271546308 567727510 953660870 349190366 726194502 989123514 5627725 523248630 665623918 49052985 145433361 210028919 41522248 334580513 89793494 379939037 491674815 168031379 854662229 500762132 58783183 566422672 292054285 344765151 486808309 70179826 269397550 721712931 236615171 425228778 464884960 559687606 911445415 218833234 678695435 230835150 951988391 458745141 835342794 336447530 877883803 18182984 316616059 942598878 80702114 776614016 286015753 526737862 453915373 263293042 905369012 769134215 639209566 518347515 126524654 875876376 701951009 863422264 374135338 307012447 179967334 942100254 706699454 219657144 349862466 119406318 867377145 121366460 391862888 979672898 90451089 787180753 476885871 314306944 697129358 432540534 587471952 288672016 878525657 690999396 112756574 639881236 847506774 994557214 937140612 197187847 558492814 226092499 46164955 905075940 495693980 973467413 690104877 120587528 920632714 878885962 204759824 565070690 82099942 62644063 402599358 811620880 32604637 907169757 763498830 150320694 188803209 934874813 17965730 91777565 165474668 387125588 695070041 875505186 342643975 326883575 141948352 546324918 488397358 604876031 481264827 863485431 445037166 44040409 650790364 960029202 330211953 62689157 457348249 538802571 446599528 153488071 545826813 148564222 948538662 32822696 856728416 661231730 108920217 349288139 612641918 311216609 182999722 908263912 614309227 250810615 645513078 627594819 395465225 268677023 501112400 948111884 986650880 126301532 531821405 832852081 373781838 886543080 97600978 756072376 607966765 827409180 350701524 934924759 676529077 758382695 34166722 270616759 247680182 930631596 667619481 445733113 681187977 675154807 62880236 899674464 738991351 100883872 533308402 137555653 685365918 683312341 801634947 16967056 632870269 453665250 447429912 389759230 718124685 677930418 590977058 306736122 298806267 969422622 23999673 970334472 74607983 298756180 305830074 317966125 704030353 422614927 391725386 32407393 329347863 787993402 88748866 183639076 22586471 201560227 907147603 409451349 543553164 198429613 811676115 38730270 524322263 289892795 165330058 61614112 917895112 603330547 45733258 235109431 620556346 774537859 591013774 914430937 421719980 27294799 28010165 175007661 926188446 283764392 924617716 253429623 296139512 754705276 724516120 867241645 189605128 252925974 271967538 129917743 192065312 988220008 459326673 821883327 539923454 798308705 844670695 285604085 366681348 596031051 9039725 290135363 318919265 371578175 793837254 923882338 648256595 700523881 811839687 54245088 948036579 17443126 934179765 466777710 400925262 209839169 866659091 986876673 856286389 318506201 248495847 238799159 127472304 470770915 312969704 275967705 709092792 972620541 8306554 269497214 219757059 426784297 165843843 581065490 205861728 436068553 136108841 419495640 554030886 703982405 173345977 434910128 855435862 816925711 196736392 539900909 798923957 395549479 136127447 239832082 351781870 324006151 709537317 880122371 636183813 862172483 620580115 190710069 240864612 282001211 19567455 859970645 419861230 986647968 279360821 944276723 183110339 851819331 433335653 26773143 831120532 363844398 792560286 941760814 775144468 119028654 723523079 127879818 881661015 625647693 379285364 890988593 63244555 552556851 824937753 42376466 929318994 791274189 731018471 176700363 665742759 169260003 374143097 59556510 493843308 6145680 984573328 168325570 820174132 229761135 563255795 242106361 513386092 281794864 485404860 846354333 114657404 645911143 394382184 838425681 6444256 988332236 6433712 220473770 226626689 424465739 158789013 17056192 66413515 256231221 162582617 429076838 108270233 58360524 583022833 255091328 979638967 572617417 237928393 489660547 928538561 662875592 685055045 23745056 703404500 318706105 614706815 202507808 549944034 955322367 732002740 58145589 432800027 790873300 579360199 838874728 247750072 70371065 605919851 202682674 248562305 18832917 529398012 733848443 26540896 422291166 164163436 141500727 435204282 135960620 803157594 911978779 432698982 278913804 172851554 283678296 407502913 808116250 474356545 650162840 57252117 315360504 474861209 460825741 956509530 966203189 618377786 718674387 297419598 862568432 178201105 419930326 498625947 561920717 217792820 257802668 451140207 855390032 350900095 99918226 531049237 58970426 517929025 524328989 756181242 282158704 469398645 846311167 526302935 706002184 829907730 18725157 141097501 634891030 561892735 67461312 480572916 385149648 140643383 394384651 218274262 173115019 56244164 826107207 154153702 415292467 830928540 888117247 672184812 402801427 34756267 427385707 136055078 838127812 199466125 954026414 185544750 983806101 782178971 455296410 87882121 510494729 341448007 576551753 636462222 632424368 601808811 381017305 608943522 112333946 695157329 347607082 471713577 683625700 867632055 195301274 899488234 352100375 185643859 644016041 685150885 569117128 828767370 61130151 536714149 639011407 24551302 841057799 814224603 891706209 577643212 38960341 526355500 570127229 181831069 199244144 444282612 74285965 576599785 507884048 347437508 164887095 890449256 384303101 860281270 96918358 737918079 914874995 955120153 736357384 956957690 299860695 412086273 364179348 472130199 180639196 387552071 849721579 589317966 377146709 631176583 597517434 174601020 497922025 971307555 982826522 55050828 975227673 28157665 413241745 653109149 736347369 714714875 711952800 735276318 583524336 680251217 341967578 610869924 705869543 203580167 75793258 169782840 796867638 737210583 848928579 900915891 860896508 568476386 527580203 115474014 746530113 438073335 114650025 940824596 162490242 355557117 427766816 575505425 479916519 515616604 261257150 666728145 949868491 975033011 393263354 321585752 449200910 575876429 357058325 581889951 493111307 865745086 84640119 496318117 546272113 682353410 512525508 120033082 517133665 807141193 786542504 689716622 676160044 48168317 383368 492785211 409106066 882268397 493837818 813742773 898294521 814395087 585176252 551742693 619150209 775563479 769931112 876214505 584782451 997304143 368023842 628491961 842083258 455605184 285042091 312164491 89408117 425272153 24587168 483416428 585674566 602934651 524391489 242640330 212070255 219152395 600647883 931459807 549958389 923928278 728127683 730481538 13902122 243004296 901028682 494439797 946801490 157645042 501590003 762602188 394103355 122677054 41874893 993382884 568373131 418062644 871281984 918543902 648698024 733407545 199427209 747113950 35321132 744969094 503928447 324139348 556062928 172490968 885765824 902987313 278303686 875405170 217060113 595670806 288698588 42752846 736600904 190787826 127298068 292584858 239335065 510319331 985473441 772062850 583177237 919051820 886137352 938312735 520947903 895625208 507424259 676160308 204405609 594428968 832056277 562868951 129073669 198817329 27855989 666609380 681584916 745875606 162392670 722135325 692150765 115613919 565658124 146892570 215227736 898853955 379887160 806533938 447979224 206705986 861542507 813587414 951680151 907113029 367388337 710302649 521170857 807228988 269805802 891611360 175847804 904984325 211080255 752965560 128898415 620172014 456803288 746130922 83307749 370774805 378458924 266766429 773150457 100068917 51422762 118641489 28462747 157980070 316771484 442389738 849704435 863243992 854179134 351087143 916652950 666875208 757130306 177123424 881292767 770928302 46858718 168794076 464468352 559836900 635352212 637050110 589651798 838712458 598396757 484978468 964779317 869573458 885061985 431789088 80995363 692921327 702893664 455624264 31611 404910652 828046336 301620495 669879461 630370727 20612973 545759684 796004702 918596639 701403770 427963438 988616333 615156554 726125931 75344948 802127487 571593591 862184962 807482996 299470977 735941098 775317699 499474767 67313713 788975702 630158034 844213486 702706223 229568689 96070701 614710907 207100858 832439886 545770165 136048800 976216612 322748844 311330893 310955327 835214218 628992037 867357686 982298156 490889436 80047785 417129335 600030127 28276500 294144003 71148903 227285438 819693084 307679768 530677887 928375542 605823031 978320594 728670550 414493933 97805178 903196144 836680699 695351295 213563367 280976161 448061922 254353491 231878596 57871872 527269226 946719161 391738273 903667249 827065428 917330376 987235447 580416516 594214860 690319893 886392150 344320571 120451487 780850802 769900848 681853269 10004217 917540333 289125574 650216547 257604826 45479402 888826215 792483922 729151101 184718410 958603432 180697919 601843771 41418754 424421864 703357568 850017162 885518562 302207362 659070577 572130378 410043954 332640413 824636682 632213290 238877369 107528221 777469756 677965257 50227251 617099394 808480117 263714498 774285271 428994581 155971961 637139831 910692462 439282978 478705514 928856605 201740605 103739584 613839504 977591858 563414313 151262043 870963058 4360064 464978589 376336995 10056761 565024175 250982454 335735801 207646550 940433482 148862226 801915099 682196215 218535112 321792071 247750624 380970952 608692177 903587993 585405763 163931384 60077213 653934940 349380399 861593869 182153474 858960646 778069586 947469329 127849800 116874797 812342856 629211725 767548894 858429013 902247015 23326854 878480644 879362045 137753560 326395151 138702670 207426014 981742872 219588020 674462948 733322942 871248207 871120044 353353561 516779398 752437148 607111570 326375645 26488212 558390787 156048864 32026050 234904282 78006193 313595355 399735109 904911442 715452427 380702428 291708155 331081302 986312643 848693116 593726996 498307154 493323610 938396874 36542105 699115325 908419621 551436928 884328249 375454662 966418268 331647422 436816584 808921711 688426395 651119989 509089714 54527053 310116237 375262907 742965886 197015710 907895220 454661734 134073917 733690860 72242266 235850435 738078124 526505205 162935096 701891335 277300230 294139375 409808349 698481394 164463847 600743805 298863239 129556104 237893304 686826693 403968781 106144154 889693225 421140990 362103072 366234259 144439867 665426564 255647625 374472276 888845309 816356850 173649060 949290851 390374436 179909787 478767420 259833283 198288085 233317360 413237418 948245303 761218840 664009053 101851960 672249094 255146220 517983719 357660639 19676148 582695019 278759806 918294579 52709512 710465364 895368986 830882385 219082151 532461993 315802937 218485711 602097499 767946842 439077878 878908289 657039043 355478040 968770862 63193246 720022986 841695907 536548768 670340787 38996828 956948662 648924738 107474972 806257874 691920883 891670082 311762809 357733630 742920659 924882377 433219964 841576389 22223587 395407886 838145242 671942442 793160704 586827 968649523 264997917 827999324 593110231 595326921 836639992 969442171 876796476 293948408 101996128 171160149 658489116 913052092 351161889 10650601 412408698 581020357 518048549 858332930 834742902 71843164 272575115 846827705 425468775 601748051 3422755 341371312 313698847 897050849 572173647 663101120 223385095 824389053 909966568 543048715 719424137 609556030 95181647 13964931 743128407 456841446 454621930 63328196 409734501 304813913 945508499 166044905 325608381 137772893 37674147 810954388 483275438 99860368 331198372 888337779 627384830 504706311 598661467 580367264 281968300 602976222 705472896 31712108 207270182 248937180 894155997 102032029 347497499 987144176 226264920 701058737 609723878 399518719 641814066 105943792 810437063 869804377 71041057 986969896 231670529 118929501 78365493 451066309 328655238 684074072 601405305 233413838 262180703 486828177 696522178 348185013 182393029 158013439 506704516 434577199 697080995 691244378 54449160 481181481 557781589 731852791 54517155 113853295 815569068 295860202 213153582 953779423 196542153 514464180 595887774 870850105 681956241 538702898 851642805 741444101 495945297 29160463 507207125 63219832 350628960 60076628 483225012 846477711 805713027 447337082 281626612 512693830 569487973 229758416 785224010 698461768 681065627 352954802 267390219 116916758 280046383 107738250 190361816 813236005 177285563 189943871 895897794 644862488 731885757 463221074 380601927 325607304 335242221 578681434 572660011 140590849 461903771 680224823 884215048 958945123 136351841 570493285 868917100 943753616 758786408 380622723 628190993 380044160 259457356 991767149 997564226 591139051 457794805 224698720 4361091 640200657 805317689 717210420 44891360 572065231 353940895 587801801 977822967 772016582 874360373 817813428 16010526 232671566 273617706 763053139 818111540 112061079 275907955 927965077 335385719 559261977 632930101 41458190 662011536 412279363 283251052 852746021 287614477 96993082 461664582 236708849 620596670 554137167 529320512 208050359 81906995 641968530 982428315 401007668 84852356 697508443 84919681 197264590 269076668 337940458 870076666 808576085 531760920 457134612 269195807 36632720 240368849 223428435 531315866 199262338 809326254 563423676 836713598 516172851 588210801 570977667 804193763 219262001 702905604 510559859 89068049 608421204 589465406 848282733 698974758 776427447 415720880 488275872 430358367 280865146 443968121 591897183 923200932 881102211 462141603 590990863 654710135 641545563 647471208 248049920 600638400 736314760 940853592 333961223 83519715 438285885 33047470 73344275 102788915 234151565 172982967 138077256 185669241 508962057 711467549 950347841 878188672 934279837 977895173 92258736 764675843 573553570 255273879 234308124 170991701 91981619 965191411 868607818 231981118 397730633 469170622 140529827 909495656 114769064 767559189 592752878 640758332 117970951 548408154 394455684 752236519 74192824 121890381 468915994 211483324 931975483 590290332 469221176 557364819 823314947 618432038 239146242 993344164 158727985 24074381 882380994 233767265 700109794 527562802 96079225 818637124 995029601 342361849 977830758 581795544 257461573 949239979 726769263 96681545 437421071 288696596 929562039 81943371 686882904 46095923 228253380 272549373 738852502 415337698 570961470 736265195 384825156 185551566 364953233 963278965 829825819 932854510 409379520 276441733 874045413 574473149 48041724 37442043 444666374 668936985 994027276 138684798 33196685 698640718 68045880 766901601 481888633 78888990 765729889 428368783 343994302 494573389 144308957 736963685 344732002 492243031 111556766 442229978 113608779 533028500 820864943 351976149 584084777 629396859 605187040 617201834 570530444 534691076 887999057 563063978 87551267 39510151 193152778 143462200 949426756 58633820 715949641 469884390 759539692 156619538 676045253 455090008 480677161 374682099 663527484 163009226 898884956 775235206 307898753 775200843 384911690 59365841 811909902 900816921 329868539 85865824 508183730 756072132 582943907 971908157 290901252 398888709 871549622 4759081 772327974 270152836 976796576 532002380 695198736 511427326 646425345 262115779 780888394 754824078 889640346 427836814 869069016 465440951 493362661 768132689 999214547 251998118 948575527 692850455 990099852 628146622 724488776 315652857 37784088 270447810 268488493 467616474 195946517 740560273 214714565 203256647 89494544 325267412 847508674 93804105 595149003 729501584 219552899 107255783 182309062 370564393 360437601 39193812 455278706 780636116 576370331 887277983 892015678 975641058 830586694 972641627 288951660 888006087 528275245 356090712 399309022 547725131 92243215 850028288 949760986 538030477 64528 231864457 873498646 716450742 656475136 225356194 446856717 11059344 85125522 659184324 414144090 134614480 93571328 978739341 616449291 428089344 98266432 692647589 578773085 870996707 23803899 245619383 302328706 587547843 222123469 511524301 998658306 220086906 706839787 262405857 245551334 917008159 256728381 896991952 131212492 58661320 430682828 579382418 173139748 860476705 86322395 174076322 948797819 134559628 951009212 63193050 655361877 272963971 544521358 842763750 85394892 939068022 205935906 535016813 953545572 875928594 918670254 981096269 557294115 56250675 844331400 810938439 385285696 955112252 963804309 659679495 761512209 801593982 661288769 34685347 322855232 775540126 53257525 800363172 619902701 90243443 245803088 398733944 431306693 632572468 178038016 741794325 30111050 229230272 451745270 866409005 194292835 397843884 590006670 953712714 545840088 423568387 783536095 171551053 638172972 25884455 977786173 801707029 101468135 423275170 879836448 56891012 982089922 763033807 982810963 805450211 396795404 406523851 83502645 831635986 534818963 535843904 57541747 511766482 495793422 385304737 241174840 986402438 521499001 769492040 940184602 298619764 605228404 300314195 437014413 511182198 675948804 92139821 921412329 98261075 360695996 535384404 165757567 172019270 344044445 424401939 3065805 751617921 681759536 815807843 542859670 61923128 58438582 135494576 279888518 910967576 973634416 283111562 918510744 726380440 169398643 973378908 680385682 340491319 778317965 562601976 726702210 455966014 824663341 949828389 403283397 161461330 601034603 978687630 730422104 196414865 186276713 867236833 807400040 790007208 141834489 659048098 799738178 92694292 324464896 369047979 366780324 618333177 901536111 947029412 916347599 791538963 96049378 838087634 496175184 593057819 364003457 119549010 80736158 940488310 67799118 580946980 69960089 444191835 327379841 72156708 357934832 451790376 676107162 165045006 989590864 927765633 181315548 191287072 617014990 608045852 220157131 184248382 414031263 517021498 982392319 935286223 528499341 468138563 566720089 335980493 134260157 128188655 361932685 709748945 168693941 574547216 360925566 372190827 251256810 879360190 950500966 729734024 875914016 164721276 556858135 781310528 660864177 115198138 67907084 134303 950507196 867790059 959187441 23674007 407143548 845757045 36166121 264656812 459720759 948925288 175133376 298805982 106161641 401904934 987056149 510897439 839565310 121978873 607909998 561276891 866848600 442146860 135943489 919260691 327656050 759818540 599674581 658492255 331104507 54563283 910949560 899241793 627585374 71419355 957522846 806695194 212304674 330216512 202885071 265454821 437656593 869969877 752835900 700303275 504978590 186724908 593123282 438013379 146452802 277027625 483924864 889203871 397074214 506539877 660787028 461911901 276356081 705091109 855001441 362560151 648919060 656690309 637766573 190556363 739001348 203271722 419763699 488215777 899359655 76727206 92852730 743546520 335163266 771901230 344014282 823986593 735603590 254728967 814599696 636520258 815035448 574572769 709606582 678002223 579181144 725892198 85397418 273278889 69417847 879464427 547791330 925153331 926594953 110898722 509204514 654648391 874069809 87870097 632502487 90947942 353951761 827998943 754691432 36655404 93721763 675850835 595495159 182618621 671888896 68507348 232645947 396428836 272080749 3570797 95725708 396923169 251067699 903084231 824828319 997289295 608334773 557399394 824061742 5368295 110645043 430235097 429163687 349083876 789300065 439556412 282906769 33274784 347393427 526160281 107130841 202897893 486734852 270748533 190139796 131055652 846723306 61450740 432367951 586546071 693423508 558506527 532185206 492177658 122008201 158693573 100433917 535286779 31553670 282902457 156256893 101738917 320900091 409466286 671150179 905143226 968434810 649453734 975056817 744193415 170091325 587101872 664891411 51159219 944541275 136538618 598361945 807309532 170947907 84376412 43145817 288342829 456579607 685461055 906764589 224643158 459460004 231805999 196199534 889166061 873544637 641870060 959081624 236086212 256136271 11143208 258408440 110987340 882201334 895201342 223535362 915333848 351504853 849818444 4991763 706673938 602689170 583251961 524827958 323958449 843336169 717603650 958992665 545605674 795978805 6023945 408296739 990391919 426773506 557357778 549533469 568664065 923012074 282625718 169687211 983340487 606270662 672155918 182387763 739588680 416932916 984308971 572950607 253988564 728941646 182373916 581634070 800117646 92790509 214389105 893035574 302938974 698661536 56228538 833924198 662462300 495981974 288080099 47138552 359672715 988102892 221916188 903316370 525458698 145579255 197617872 9956242 885481825 823509541 719033877 165891645 201005872 388737019 495998024 192453039 588860017 660387079 14154561 512899517 475751807 45837684 215034813 861347557 212550218 843121637 183486010 657889296 591668701 331030719 840945041 156082327 657844839 439442414 624910216 726508435 920080863 667462749 165296985 285131105 191601068 780829421 798546108 319430676 427523252 490968190 766970883 251746401 166267681 490963748 165356109 904193973 67200340 512153142 248595004 668580654 306602614 219329908 103351630 427872568 274727944 895854728 402596673 196442309 671029401 877515869 17170038 590416654 264807669 963700869 580342903 124834022 228894792 182996785 607296128 689343035 103711550 863366191 360778112 275493217 520050449 370636043 417241406 95633614 988689895 979174000 394809387 481180997 278451130 586731456 572894774 617525611 27425614 179595254 829828547 453855047 842957761 935631980 213721999 784146704 401453817 993794755 267670662 930222600 121432381 942947684 549548581 874855803 180839561 549741223 514144152 621868525 493825067 934105217 441098987 527726702 863961067 842456701 791401681 339639510 30397114 941172068 956987886 364092009 868198348 613439584 564928967 846139917 312456117 873768933 516592641 956626857 161125879 231999767 338226698 670909783 53238574 152648045 785518464 771009995 25613016 764683035 392809204 209043796 442579928 617340742 563199272 482423507 889989985 265996927 786421786 691194861 132145343 248887388 647746036 780705765 833630357 929792459 133221944 248031907 491067231 758850686 841840312 355655818 550210703 815795290 735114839 280179374 937544273 894074925 259412752 881544355 239507456 581337942 898756615 146535506 207406535 188185730 532712715 809562496 500289825 631318008 725623248 300354955 916182443 493829625 954816356 614663583 334820961 986941522 160690036 662416240 598877006 784815612 494030163 384304733 755986103 52125241 344809450 492173320 913688786 83903777 799610853 847694916 173257830 184296824 405493207 827735536 262208795 347926202 353569162 191569607 703727668 805551773 419774404 848882712 81488353 149897098 301142560 339301492 809006418 381716985 594546576 898296444 481458667 469687150 828774780 39474449 420976673 959354817 706708807 683192870 261312809 22008682 245671635 872456450 738748969 347762364 793576247 709701448 752267354 128143967 517142792 879391511 787177516 139061072 706238879 677088058 945802116 51393299 889509224 564375854 656316629 37786529 570422974 563063504 488250664 522498490 897834437 142148649 638361453 223036201 446000278 750253488 161300578 871774780 233463768 74039249 242366035 605503279 931982926 47036028 866703514 948155883 615143988 267846041 804293842 914570240 786480920 979673283 890134201 527195401 549158248 522998041 807539165 265400751 179864167 659611314 372574739 793746810 275091831 231502286 263943409 127340223 879052130 124760559 748834787 47256083 301590810 232448893 685156853 607782203 535876826 974542987 175886081 663039964 891909126 29434497 76759874 930752849 203948566 796141750 329303517 149028931 671603376 372412558 796303804 453553718 930877815 668161006 651794693 117654722 146214396 924012966 316033670 887965950 787791691 369791139 763512044 315826543 270276497 708758764 906933790 699752658 20622123 153331810 632976905 8261638 903496398 708797643 141862397 443587126 310703439 132281511 41293453 47603075 144564063 607780350 761583295 755026966 357677852 182001743 254769623 167835530 290871822 927001988 848484627 467203697 576415200 482120827 352157145 472595229 114360817 260290805 752622921 568115493 382036580 375471198 450015481 279140465 448746254 15859114 545696266 381030086 287741370 418742076 598104874 944584272 405215850 399356304 863006639 295297066 454180971 636233122 188374499 564963597 208997937 394194026 175253205 479952065 479957123 362613369 298428509 779789336 928313782 720503312 244812768 715051785 221050296 214970402 537018198 451288285 230664881 288536677 397475456 943726336 469696241 465669833 507220011 527628892 725000020 901648444 781237901 408604550 247641037 945245993 885092112 554064224 520444356 895182453 590771494 455704901 792264686 324165097 359438246 838202827 121675261 73066676 106426488 495063740 13888897 657120793 598435311 725712128 291737625 152691724 84983351 697769212 576066993 372517673 53330858 22368416 355057845 487635905 57977316 678423373 619067486 358828808 221946694 399887219 971644954 476704295 206007242 670931757 222601029 385922353 536403483 822424792 527288258 305939584 135109412 758352613 187926251 599390829 384151887 962992200 48941015 147007977 196904249 292169263 166328393 461881998 92000350 528679079 919694120 323141455 605707655 540217227 71885568 577528895 210150309 341225448 24703985 508546256 562866214 134899002 14964735 58746486 174376580 54472393 659813391 80033993 573991964 759617715 28418433 501725081 442029372 601479244 858160482 784292650 737811219 145520807 150072201 193576367 700118277 337359209 553651265 470213178 376496781 599741509 291585250 215889707 123122469 294512621 328970324 289709696 566747349 879889151 168307963 745539043 648683847 355216121 767675117 401837916 944205820 345906033 534647271 791980 5263564 456519541 980535148 794828695 932018871 113065462 306446984 979597887 597959694 315074277 410515503 274739407 993658174 382718749 542649364 426523506 82999969 43579761 956366670 728980844 132505767 831097219 555347562 980887710 756810924 600391555 184228052 110907767 985831977 584485204 531482935 571258803 355851483 689801477 886147050 296286768 381951004 323962726 852916198 810614718 174677331 816417671 33552179 91874487 987881156 977586955 672973487 71167517 144168783 766996909 74794499 703790879 40468227 511884791 857037102 606239723 478696925 907826676 108983991 831536939 920474140 707310595 37382618 560614514 204581457 785636556 368988503 89503443 187266899 188750434 322506383 639898117 790453542 408970218 241264077 846217314 285722245 561541404 300422701 577116701 909659807 419110266 829271345 73949133 710481604 602009528 887010197 627585612 602135461 531834688 349090278 891395393 600420816 546819821 175951706 875165372 67872930 439226449 452016961 657626623 734518652 877306950 93647236 844550623 925934347 915994406 472834298 72315860 182599480 401830458 626529871 923744816 310420871 271204652 381930262 780361086 364442615 631297697 427592647 153556861 18654391 460313830 82283352 680968778 431991859 202401014 236452895 665875593 260575725 217605669 977090333 160879516 89831182 956732335 171844843 243325963 201581279 824298416 949013667 841881860 688092580 80859490 356324312 612934866 286823473 396699897 694399778 519214018 646094006 434263081 809586682 888042929 630578134 975825861 220960760 771446246 594966935 999398524 920861385 400306540 681942832 514291075 733794786 210206841 635324415 977993187 883750925 284726052 208584260 131236051 942623710 320431715 826413339 294284501 706265723 377629085 889689234 911628849 847083876 682449016 442983640 920080554 327023027 225416069 112433058 6172250 382617657 824335989 490506978 739981047 768749496 859343187 258079427 227271662 715381174 377839288 596697697 515086174 405432662 621421478 163780834 349110827 751728933 432506867 699039029 204848089 811600483 331968917 971399733 259800968 484263040 618000682 598146612 964443120 735232329 535259530 942151505 108151350 659614581 256321333 351998061 30158342 600607052 290697710 272816888 222508147 561629885 774083820 606035439 980129 646690872 278200692 258571400 894900769 9017103 326788309 169597676 958030532 807612064 307126697 154332296 126905101 828364627 22425174 956586742 44493155 974032176 574257703 414121982 213126927 194768064 54467145 576018675 200828486 566184774 353474939 79693575 16934490 951938800 351593770 612297309 288072238 285925897 540474189 365734391 701923855 43804271 394510806 624998010 38899145 813113519 189222963 466905733 9932604 391772824 696042186 905129640 732470838 255692655 55595957 953789752 827169493 991886208 518047278 898947107 980525192 309220509 756566280 313255829 909259087 580200387 351484736 75418509 496118840 929635707 517158259 50062096 160161536 161121030 740593881 977093228 622814001 608226161 575729003 99372765 314832817 503606575 351420555 316414249 867231273 198464490 595188581 933634744 284556988 171820873 615588266 717185904 244233058 313831032 806363096 750151018 53704874 512905269 936862288 902654963 794572039 260635996 282770775 630555264 464265743 776198541 608921656 587184756 804089223 834826330 974192720 288531495 453152319 444925095 326553412 110244665 599197333 464570140 956023702 342828288 569882788 422676368 100842079 247457550 118027420 812560978 299685593 407237419 121069472 438074267 94033093 58728832 174482481 456167405 386044570 329355197 212669356 603131252 201694880 420121669 6523192 971535877 653494919 80725362 953540286 917850050 844514443 782611585 70791471 691300337 430279385 783057371 207113273 234446578 465365062 582181850 493283468 182599384 696567048 402644865 90047466 517072685 391630669 578897652 751292341 384051472 525823658 345964905 513982706 437297113 11217248 909179321 563214151 475475738 934317607 138188745 846505446 77918068 4963232 907393182 924777000 493997756 165447581 901262762 398719687 635938216 703631420 2085240 883902004 13146073 213812863 505599974 539456538 506531823 947922476 623992349 436009282 549965346 841171352 719861563 909534809 219921457 448215789 301183991 654169736 457123599 547715553 779366900 532372849 332528291 61497208 882613833 438511902 632642493 210253946 427875699 802136930 460218889 113577229 407490714 124157894 366604706 993692459 492241475 554622133 969166981 691384015 477980855 424261473 545864210 521089841 416154224 6839665 548452295 674434578 623886129 833481028 104090976 679495133 717976335 189673714 248347046 56306695 114896566 789165280 394889821 753388747 591851461 310173430 210501781 265481470 504945935 25314330 613772134 876346241 194969911 712656253 121020527 185770141 195530039 294239431 559470404 831708527 39064839 132478822 34441895 131703536 860794476 479550008 743651154 868518548 920857701 976701429 29555646 751910533 575953750 487839442 534601656 687014635 161607115 96382684 462907927 152937816 406102056 27736390 670124964 572156879 143557979 178274049 827463837 605807457 538539721 968114699 972868886 926642616 710331964 158307248 977951660 621926407 774088958 376344464 896121489 397683810 286343832 11263407 741992186 744259335 516845417 508430145 443675711 353618272 778906241 189196430 514982882 776862381 635743401 336804269 372511284 486706693 161329475 84307028 978847219 819847183 917668316 423483301 41457580 469235769 99565263 958282684 206848508 197645266 125800620 525044417 617410909 635029955 752524644 883449658 485728384 940471827 700088678 462506880 425711579 319998439 606078766 172964042 646504127 105989020 561443053 827028964 241400435 276807233 793389580 467336772 525197671 976502179 947960694 851142411 747431261 126308313 690555912 32374749 979434088 480115938 546966583 592611584 991207178 858897439 417723299 96832499 885047646 486686549 957882176 125187561 987426013 688560744 246787158 585480846 135903741 655976418 340726382 847826641 333705103 45041219 507734199 742537511 111915133 424889385 880726268 622883371 218089479 739500970 618011593 208669435 115105945 649332017 521712694 768461058 461931272 664658986 577081873 768970230 770708906 220315288 216621550 588367569 792159215 152592889 190244081 893853827 449554882 279229443 820677334 825347652 783842204 384650771 558876415 181125032 602860585 935808677 887149997 405311731 810767709 32118050 120163126 593834123 126415283 238342407 121578482 816508698 598050927 897579923 874548912 434155845 926932479 454003394 479353516 805916754 507533464 447584809 336372800 813203972 191360615 867078877 454106245 513739710 690256947 957254587 214085830 195352848 899579505 648639360 462889701 914842785 145135525 953756654 54194874 393538231 864489482 492841117 687305713 408998036 674791737 303533389 385663043 882360398 893933450 811693063 951518479 525665242 579108111 155170671 717829507 752675327 828572945 991540010 716253033 679254857 121407665 875733536 144398234 301929452 600191043 925211139 376151204 497737667 664530464 482642342 422933898 939768237 586199796 887040622 773592168 440988246 387915875 386414738 162847095 586194711 529303531 326358646 865554751 397759563 68353137 676052081 137326601 320876484 570519580 221325150 273076741 116722157 918345604 826981825 896819121 544583916 541161982 556828023 322350034 321737668 215844558 999287421 273784204 907438940 83423262 863512694 254901312 321932638 407536537 833268007 294922054 729693517 592610979 314394268 359161693 344516722 50723376 524642849 215330109 537213214 630338830 272555089 830335997 242491181 147778000 773868716 670800004 443957055 740832315 782228507 850362093 344278799 184575301 587756753 148954054 645124133 905022146 965785371 256625743 564439375 574667476 338241432 713975118 608408535 592505242 808210012 973868010 600691111 728197229 881660271 458191547 85014038 226208762 275269932 672943718 299267299 742267731 71185637 992471261 65243999 746468678 557360862 739590894 303548723 230986684 113649647 896897006 289870071 997891758 640019947 414988202 721126478 641321260 977032546 61500441 409667550 206157670 99100807 810053681 206301450 437856474 673809568 219885236 633501429 593232384 817383622 863261489 413063777 467857079 728496654 798207850 617382706 623063318 951937110 610592936 38143562 683061179 232766102 754244377 843994910 450486223 134117968 590026790 779906804 104190184 568042189 615355365 6521511 18199268 752314659 986458534 606937531 650408459 65379074 694792347 732637237 91407665 962280323 306701429 828670204 896536152 85689668 463480559 420079044 606190926 486867893 159142284 738803251 927946573 590827628 412236189 548722918 980127604 455794418 221177248 515233284 157567843 614866333 114594790 788977094 710924714 605569632 886240788 423222972 584676423 669363432 500084881 717810458 896104599 117758399 734103042 658910474 875984240 183299276 273293121 578516062 657727686 715780800 890254667 413587123 535160534 777587130 650737934 318814512 64072466 289879620 364785296 502437927 196612754 767450622 662591574 732608569 575272273 126214546 719692616 522967768 222818437 55448136 382829066 536374686 2941379 890094502 212379713 422913340 71531831 531694103 295671962 177807868 607532263 474289670 405617589 931386490 883074533 589537191 3680898 123868027 987620528 757079849 40148116 358037122 75458110 887279689 143879491 89002473 124240406 870717992 528581831 417664694 551196052 510735585 150028850 901016404 722682625 691302234 730180837 489548457 47840358 869942744 356931699 859504459 522298936 160910848 19695783 927886612 30976581 516372617 72287632 198431659 743515325 411170646 247338518 179801189 807532727 769723902 465488640 342600799 488296743 969557271 72814691 143991886 979611880 840091361 943708210 471199222 941509020 882121632 979542169 708399114 664175594 698047801 133237730 328507172 805346775 672505100 17579415 682303218 829565636 698670686 961234749 651677290 951297523 431728738 390515095 146199776 650681459 446935624 218446122 703428090 776741132 619263893 987453343 931181387 466342691 504725741 936455057 539673874 232680343 240910435 587359464 309892838 291555861 106866475 144998094 202871813 323486216 875045548 12565172 995893235 691331778 760784523 11428288 282109379 805416172 925447461 716247509 364533262 10273986 946172135 425071916 504558725 498424870 278491087 332976166 256504886 407100307 87251944 255732471 296389173 249032820 662604374 898519422 347172027 240188521 450923549 163137232 424260296 97889147 737054724 614494622 223118442 573949944 150605992 323459892 493763119 165541835 927658397 695491035 688961337 119369173 745461868 416982875 142111258 701177928 314698808 248808077 979354918 515423245 103757322 949099344 71266239 627172723 997856716 255877819 399450200 621917576 696942877 701046855 13131987 835771487 829315251 223300553 517925524 69495897 677586158 831723599 714672312 856461899 719648742 656183291 73740718 83728026 942613166 754858438 889681616 844040907 726923611 505423450 98248807 273214818 805133 467832185 529778006 150718259 916650418 194776646 518712289 941624431 469699798 777732715 759792946 169560312 68878501 491913362 939071937 516806959 131286902 356829689 428174283 375133588 15078225 489785403 699844515 452071271 972033116 671415552 117444865 523739093 130221355 280543930 237199693 555963301 157377127 424595536 23693906 671904539 627472842 524610010 274057323 22892881 885042795 648310264 360519968 151348202 910656405 286358973 469859493 855166538 695934863 775559930 814693427 463824487 917347501 288026416 958515254 660924450 587443473 276397510 449905470 752688291 931026550 562158149 812794815 545701011 24977583 415777751 842037033 480678997 352414826 94444357 876908409 794586344 102176297 341638896 803384106 189988757 376017147 947121406 816337496 360449253 816069942 425091431 289259277 54136580 657396032 661733077 893225344 752498837 879465821 880570628 273956462 53340614 114220223 264206585 907181797 946918298 753281038 213687117 843728814 405562282 49783118 697219140 238290961 888856113 714891744 845284885 427402237 265390710 707553161 12970396 850880559 965737165 206632357 189191198 793934419 936808391 204634360 471582649 80793936 884651963 990422100 202597379 432428599 517475331 297498636 729925330 555809152 51655578 852290393 818547735 35387697 542505808 820794418 287343560 103891341 475974194 763592182 702527662 479104754 545468313 736991786 658375845 112806989 192947216 501696474 797470105 107781368 382031570 763214714 474402992 660769633 838839439 445139665 96390129 1565339 338018101 125751971 174628851 50731646 503710235 996572679 613579966 672836663 828584063 945087880 154092090 849715570 466200448 724067072 979836884 388186528 984105103 948198682 349234609 784500145 811611306 121639116 11466395 913212900 50869590 801240333 412553127 801265708 80194016 544561616 183226761 619836386 771524139 542775056 490310883 624175364 135520510 192133436 12671236 423413003 979098245 227840251 44160688 202608354 300398908 410486201 337945616 485751592 707767971 359616990 997926501 942843042 813898066 84703593 754111871 387772049 713514543 102182655 295681719 692041651 217621917 674975117 638775015 751662296 971111102 710611705 912916628 958083291 603308113 244034900 800128294 604530859 499849259 93047314 152422644 200404355 787744369 279433560 969809973 452877557 680887363 449368632 685339353 214962655 918985715 267126360 506550519 757423500 603531856 840582365 612463572 211808094 630405084 669243663 469894502 488198924 874788074 324816923 857932327 844227034 184828449 467841907 481848495 881460112 270996657 787854558 763653341 129161582 324483303 362191695 987096112 724748172 387070478 395999152 708618457 772058324 414519620 571505993 434449892 214572403 372017657 686457807 417842316 978089403 607964080 122613196 8663885 562939578 577717962 602478647 357933216 978074836 277596178 128343238 89885115 377198071 401812543 649927673 457659403 53797900 511126569 964238495 265566139 283225046 526831751 278894837 25571096 645018849 104723798 653823932 377745179 369132411 950527041 702559527 429575659 310693513 749244859 502386306 280345147 935278393 862141159 255002502 306946644 363267674 926742622 532340349 280780282 516887939 321310084 346151717 864169534 903391205 272677801 625198581 872420321 471169276 868104393 528455637 538055989 181267984 56803312 3550627 563775982 42882588 163975934 840322304 339242079 853117302 926631052 678932193 638253180 816282214 806266534 604649024 699367703 552401892 684751269 291286958 286819575 642504122 189205641 13061841 503566931 54723652 465252438 371188001 243512967 965925614 803226962 807189698 912711030 574286615 497142564 508846633 198903490 858581552 769937448 567712931 273502986 326225384 854792966 519558727 169663867 119325037 585478558 895990037 357737318 498415696 998490781 796123207 423251554 623367642 853533512 39010097 932965390 435273797 956902361 898621396 867805341 173774221 759698032 620592427 956951558 703306235 179727585 107900919 676601231 89214682 993767769 950578405 549221598 607277311 598195714 180379918 854014490 818123154 994233 829124503 184046484 847461133 383304802 79930934 358848696 539877718 620229780 529333413 427258130 787559395 908679508 965826788 827116476 285927306 982279286 84363784 727282085 975424248 491481432 575061273 687526426 30327194 985604659 436868960 206574911 356941000 400536347 612056790 489723682 468435978 207349690 944303664 61241740 529582881 65358799 762794778 462108424 250000302 597903416 886892101 579100303 322515521 358735263 276697027 25384902 589855342 968511375 870698292 128612651 779271094 299818903 537674963 1162544 923708145 774824369 284998201 736950807 725478827 642953963 976105605 309325821 435870189 21031960 828583935 188316377 437011593 9917976 23257385 738824434 352902943 232809622 701893819 386024334 792667963 920102594 673550933 497000455 908773879 643010781 604556185 325220973 347864216 934763748 865974361 992027222 119500980 415283409 614785752 694757575 835666392 391648769 523343357 360128004 199460162 272799075 215338052 996142201 974751956 707132548 770361634 194863693 796819099 220278417 721940995 14789203 259572316 72415249 973812404 329451805 231605554 364487451 177634641 293176668 23271330 318763484 448887046 90085969 959907775 930552306 264430015 474484711 972181715 849997637 532956820 550558521 204982622 704435718 628291467 499352069 865932830 454979592 577038522 173113023 925951258 953064182 802867925 203718235 915237073 401714294 51903281 324552372 761630373 569120089 5294250 614367040 926877061 617637594 166336166 769323381 808635664 942963830 429540631 862012542 999150242 911725802 266159396 341399338 5807220 585567263 984726335 266018771 982332737 859459573 188474149 35240712 214490634 796392704 444214050 411548472 370166214 886033137 61447601 350944749 334704606 650988739 345990894 348397463 421112382 772014968 692517392 293682834 583490174 266646802 382679057 636431724 399419842 452492622 319651626 555566135 571814652 391357099 506007630 841827666 474799449 208327927 601506503 986631945 143820068 20542212 991511356 248255098 648288787 683559158 45231195 372983775 385375711 416860005 660864642 117769893 352416367 217474255 631137474 863803335 771046229 676479771 191716991 767047690 439561283 131914598 845891826 838678009 834016733 979450735 22123269 907436384 281625245 923130236 459825357 70845808 997873079 748094201 941651407 304896558 96005277 996968115 305910238 571679510 662620589 144705539 888313857 847861075 486666557 686832584 674429070 810064037 654487866 101387222 851256353 617039071 645665950 422926937 597936021 618558208 288614835 482073153 606177932 849202572 589596960 698278919 74898829 543796589 912733275 957745441 998708611 521078479 421742094 268354313 393148993 950692128 52895498 871124570 862619452 763118957 801870763 322813117 832898734 191821176 455033584 666558232 57618135 317261733 965747092 932440657 498271712 936905048 407472826 404159552 85294001 25349456 335968342 957204013 852305266 33908548 708653314 962685559 465651674 994683765 145677764 180016965 875431927 257458661 372229028 500447462 503610029 550341407 362128692 970626713 348257391 938371294 24151452 115194542 467008011 318489010 276990740 817128123 814753351 802610371 834742707 157700569 253228592 875462569 903806283 795645029 467214282 658886213 919019135 138934434 816117259 770443399 475105952 981722476 750212255 677259771 265841130 539125991 81780635 71981256 101317834 758558449 516075295 608419048 386024702 807251150 548990565 823605506 10171067 772582003 988573386 471106988 643084773 868471627 287332963 716058749 731938567 866841793 235794472 487007375 396084320 133430757 491253257 761382696 439743926 909973108 191596503 632018435 578857851 244216309 306146597 523899586 242451745 364428734 484750367 314645939 414848602 163322751 19426360 80636667 376309747 588007701 414437617 668655778 119026174 651687497 97018996 91546912 713249356 573249740 969739031 11903594 689541032 479340041 862489599 976514670 269883870 173016688 721337845 684198570 265826978 497938382 542169661 22763577 920237133 41797384 402949238 643695575 997666215 712847809 145678760 917377015 723544456 746969370 692972572 303073435 179794085 189473333 749189107 857787991 127176329 553806663 845868883 678589598 213421462 653722383 106471531 458054452 609069592 61022847 809412366 167681712 136177277 675018815 953242137 843294047 18746009 21343755 981937962 592175043 677401503 45663494 11793949 237226704 96304070 414261311 685379254 658873043 891520903 740095458 549004675 350748472 102104353 838090919 704933747 203586455 124336047 449555984 159597214 567529963 918350932 111726235 833112246 879445601 791229190 833493252 647618664 874223541 2827317 211942105 321121942 947532452 74128106 641031314 525544165 202309210 828922032 878370868 83459555 840800239 488616815 705394167 301927354 138665752 862192012 589766592 696108879 50547563 323727302 38253787 950841862 767462443 210286067 22265634 933725851 459956940 646133031 124616357 500525537 546008266 86420427 277893082 803115130 832519693 84027577 613103867 418103942 314674138 185796860 178376143 874607678 783015323 378642711 897872516 67786778 440013259 275955430 785618787 547427452 168929241 893680555 878235620 529256945 104602220 991996741 667759900 698009448 480997793 643186472 875203119 45943157 210277516 468662598 759942741 19928338 528722688 614311185 598502552 535388267 786676208 56633713 310990190 779850336 513238191 817912575 964689039 845551265 957348954 217160718 30324533 869986822 212014803 90528987 502446747 976059751 991150649 309583382 998401272 33838825 385493552 750549533 637361110 80050573 770519110 640831439 840965718 108293400 896465786 599528586 922616887 293272083 482325885 316229150 523393442 778445174 578876588 14216110 678539893 800974603 420054759 206112160 440834646 879914383 951555768 380295092 256418230 613541701 263107960 239992990 706392035 777800572 328660395 711925508 558128828 528106361 899623564 444077171 143089164 233922496 652439997 680188172 702479549 63734166 24135693 951323765 590883290 498284666 389633967 989757909 342426920 735778367 866889528 806578647 71951880 823543539 270569109 629354623 117967125 722806177 234119618 400596889 539462756 546248615 639992149 964141929 546801498 958227189 755421566 99026019 190554771 600412635 25548392 779102693 852896524 323022405 840465523 805246193 898036436 757955437 420802637 973995278 750152794 775723155 608724032 574358431 825580199 350965362 241736330 720046312 745017746 836835818 768124184 948558370 112126010 396055241 437904817 857074225 703249826 953247684 833065804 550777895 12224043 805091413 223912937 510891678 665724812 248876114 264632584 729537236 310473039 548580654 322880883 754638167 353012628 287661474 800545965 144053159 292269606 505872814 982295479 702615627 535996988 419251005 295277345 658719376 896454528 871147534 628170063 129684836 287974580 80273865 839621816 941391315 299436421 875402898 994584867 176312724 546735046 491980852 929277749 322707403 604449743 537716443 428047030 2871420 280819713 965183677 534078490 737886402 948544238 89898481 294086106 124596384 480665533 135313237 229568101 354210585 503249768 145756567 212259348 169868200 868250390 994135376 143344897 210836837 374377764 261565459 452297397 291568696 498938152 906941175 393130189 305439659 173631371 479560450 313853701 703892860 933598765 476686503 63904809 161734084 23252823 685194132 661924770 898127558 145638275 499443902 445103191 821797647 689989175 558199990 621264760 821516721 251185737 809854672 2314002 941568537 429633711 777360474 560989899 137532492 429126355 980812342 30519804 297016440 123065937 90317895 403136240 191792079 380229188 985626944 156564348 504477286 919985280 334578023 637496920 199586327 897125413 204425952 306319180 242751404 298783775 861462488 400151636 807272345 703227297 806283237 154007784 176482515 788966395 699783072 566739145 26743469 789210777 474947401 722634524 993075328 894127244 755581796 163046079 710710896 429735425 404478622 321399305 913833920 736374703 770347819 797401388 379743347 409781223 332177264 172450175 681983030 894088348 760647416 937665101 44775002 69966382 370867803 333213534 303303246 55552006 486507302 572040627 623486276 698200780 273465684 260805100 534389779 146575801 48707275 684192009 25062605 652118312 294281567 982321962 245949140 767283489 576648507 862886687 105367066 599149880 856101808 701499370 823741290 39783855 536605004 228512868 906270509 960751711 353512851 681269051 382009222 33082473 563157122 974268419 115439729 226583548 963618777 520707867 428165578 339681419 480732690 549126001 453047602 556214499 589150974 339462523 20625971 967822335 654108828 111986446 820357498 501894387 825057091 531980697 786397185 675143339 130569518 243515675 162097404 528358951 633668767 264962998 412517202 792602371 823245646 789160564 87649290 922063066 786769685 763902846 580236733 734966751 638944481 552490942 552685054 568300370 935147289 174782777 66477641 433130610 285666193 454937943 460064886 632195146 882437016 949772200 75176450 883463972 731711805 610593127 89627657 818352597 640973904 649731748 720323404 447658433 489770869 676288298 907903893 625602466 363700607 622734860 205170664 497229050 314432224 17531263 915666033 296782590 492369661 52789614 115216692 551859501 797868605 952531281 917753377 695193941 306050054 513719512 8000001 854616136 885391337 846843063 820082374 879915503 7271794 183685344 604459932 787942088 873918776 249001553 394025391 249862423 834747701 227537255 71067627 737023501 949574149 280460961 548436641 252197090 147451409 96781218 409413454 200167460 485861948 758814631 596880213 429043462 554931096 84618063 443819139 120069416 485068798 283736942 883784878 677007137 422047104 617732823 512013269 923378570 803839380 772272309 766101621 808803518 991101985 817426212 218783224 346089981 582025395 429408925 569821473 693569470 511559826 99966847 457787939 921643671 19915730 974026878 526844012 29704132 694106718 286122657 903458013 829384564 181121340 257875672 337431235 934886547 492558820 777625291 321881261 756649309 249100936 415620575 213458824 773725182 197469715 945830680 324115137 226560761 324814211 83320569 945907942 343838141 225125613 383464291 494491739 557337842 975503904 254420271 328908365 289765512 269831437 654082455 732545534 897470753 195830966 480522329 305947103 963076077 450605064 831165604 45112238 66316460 699550837 889968363 19108994 777374817 795335024 780467144 346539323 875553785 665013605 248023219 821130 717783559 388296066 834884826 261539686 380091373 139278338 998342556 522105220 321030539 964826821 811756525 211211233 489791320 183735540 49029118 737647071 808071148 256435322 652807185 404370606 300018385 817789481 410088907 910150990 509167811 758706010 979217150 603133524 680241475 795939889 599022609 944041871 5102269 958169933 588633893 927047918 271872456 874675968 703703306 154809617 286709158 446268298 60410827 461431281 911330934 924226549 120628495 78504048 486160693 678250561 172742793 907695209 353406707 889308419 638653064 602628710 127627402 633463427 830988748 249327258 805629246 341506440 806796384 297565835 616689131 692381013 276899210 295997516 272421807 859691234 224654714 600159273 617518274 74128098 962130730 427720138 203904938 575354642 656727510 303527412 429467495 893898916 6435221 61986293 541678260 296893396 510788632 882463277 33864489 917080372 127018840 702014456 715840720 858859133 924501222 904721727 754823983 600409272 358478483 815346772 194761371 492228165 2678296 394992052 333028897 236719327 578314910 685087220 954574599 434168030 918419788 902317720 69963671 331479860 956221696 79115432 565664426 795456031 597854685 702331713 292303954 403604779 889278936 954335312 874800629 696798071 413470769 193464544 618001575 726955971 181452235 164755407 539035733 695184999 563109465 888289800 677877044 295179410 799080452 454713047 385517140 441596395 941696550 492440656 628569514 76902975 302776875 797079026 330304049 579395955 616595271 188589706 922087469 420992666 866365796 849574418 414688031 816981381 913204776 122529443 108335139 590336663 643676955 355520458 990787691 801174279 658207241 879995327 583137939 544676868 265661884 521459658 735502684 39447471 753672989 833208915 978074296 953269914 993670574 755744980 229253714 973996317 480264744 690522383 493660924 980063844 843091631 101468774 775910972 344977264 121777163 497162903 385721656 11805218 565517428 938996101 420876819 198166451 61805938 12203262 932234285 696852082 421381430 127935870 882616072 670517832 155879984 52890786 958879748 292076967 352272935 199817538 453575560 62417733 477801147 22925122 579247948 332738025 857381558 747556033 323897792 780421699 316848751 448592308 683627893 67106490 477318112 94379553 596898387 853112339 393550558 128252947 721446141 536451141 198418719 752277391 852412208 543478176 439646731 216571808 18810991 516015788 993082082 456829176 53063469 918352622 108520618 439747904 334188374 59374738 882556882 308008917 295757549 281245294 209843497 177791135 451676723 879764499 762768940 934681191 808751708 972876943 76666811 56683396 117811938 141307403 135880144 764276134 267712540 852494826 466088908 136760188 720383306 304866402 374510686 634128327 719800792 104903463 902628626 267465680 358241017 421066691 441023930 236207547 331729695 433474331 842377758 964356708 845321867 460569066 832139042 379863946 379115765 937764221 651487325 522625985 564536157 432229729 927633307 668687307 977716155 301847750 571391417 561047090 807459864 271583257 380465454 332082958 989320921 392443248 365375405 576200307 543360989 854652812 457031258 661817805 956715229 952095532 234875239 124781133 679181608 255922332 707358415 958987654 559516641 439695066 239520030 481443762 454680988 884924479 959730531 867716145 768208167 452253985 780346132 577624021 921005315 686459507 725617007 696101934 528063903 500958964 490656398 67537962 897530457 730578423 358814874 821872775 910166298 620781146 711752630 75396537 654758742 18192390 861087747 371937157 409737919 284772182 217722963 164266644 381301273 886034261 639497474 697775905 575502733 502343732 981970710 168990406 783799805 912996364 356119082 981139125 244793681 387051080 252523973 589595753 610360877 487239664 159935454 714834575 662009049 999044740 136993247 348049721 442840491 580695229 270581809 145740561 634977504 12742455 316673777 601094889 651564450 584702344 273435231 808140276 854946599 400055721 121535411 817074399 796615725 655364735 922606070 246172288 850431858 197914662 370729581 901652762 384920176 827308016 187996169 335833454 768904370 977526796 157566867 750015926 994256406 866368040 841948599 193194273 94063530 370416036 170046172 432702926 942165766 935551689 845029711 540569643 706115909 748163136 644273078 968162935 229001930 962711874 241682681 16305195 266634214 990496217 833408952 370790033 169993084 213034627 893431783 163872877 479108566 241043765 580453228 689642867 604255833 978100526 684802837 59530926 171915648 677020001 496492776 770373923 563869185 157868795 82235627 121782912 259523596 882379165 780817586 369817788 490630717 436541301 118960862 453700344 380979687 886890542 83588827 553369471 140377092 204857166 971518037 29974975 193358179 348653156 748971389 700135374 472458679 225291975 581331614 140739860 941730588 676796427 203476890 442299154 638013312 802486168 609911134 553489157 401821235 208387306 909739488 278487869 393343777 491847082 296612234 330983711 364635051 413684351 760232269 355733928 565946531 215841067 110162579 557385672 38527602 745196345 309472191 244586020 323197330 613960848 468644084 674157479 329156105 669086685 132093445 120013625 849514014 693201662 417911189 458471767 677299170 505428744 172317296 235971572 647668434 740379458 781529695 514251203 535189681 823803975 519385369 709113359 140052070 137092509 748865328 174172195 410573429 219871608 513663191 153780546 401697324 790325832 316318426 678605618 578030378 399799299 510608607 643394714 531887992 721128797 5766142 506004607 743210967 469711036 901331704 500260163 72851809 609451425 808943596 579615856 277924975 220339058 699271270 927206987 629084011 144596647 689824913 698206614 427360363 543783876 6047186 353653199 198358317 704413850 972541365 514215153 639077600 537151098 170190205 211397356 963235601 416586271 550100245 233022470 235742803 281790370 84007835 697736795 948967635 642036064 858146237 82613511 343392136 148427096 245714052 165944023 221770066 198828384 560318671 848702801 900150917 782646154 392326613 199534433 98340608 733983489 975805040 727805707 654159987 346941027 320119142 491809025 164876364 287171444 682271573 41053822 800258817 892674117 713133875 977837993 953163076 338861663 156222091 970823674 557422384 389766854 635631894 162398342 778558 185912818 115208223 725563906 283587616 939038566 106582833 47953930 719546205 100289671 932504540 613522089 865388662 568734370 993710536 324154874 526177997 73333213 754802263 69324927 165952401 505308114 864976310 236343914 517518536 353881843 140073535 939921594 328550068 846150571 46071489 946497622 299649550 978910262 561664637 650174704 337559626 593308201 369395394 593660275 357280096 323556359 893321387 264750090 770875471 623916733 833278443 942851778 109346827 623664474 374018258 254367472 888335446 686742846 998723409 426742962 118671329 936743738 383583048 273534518 258559800 329328366 840141555 885777112 448132679 437513437 537295619 759851323 702843761 85962721 507160590 512495007 408432115 405137491 727455125 639798946 523049305 761692354 38368876 471096995 839418381 678131763 968753912 178033314 699618217 823583701 695321533 90604751 479747536 577208926 887212526 408735171 540211311 731668796 213002367 865903476 541391091 352423647 210122684 853709781 161557528 992925018 601556633 754343887 972171972 887143220 561980545 596137174 206740783 701968624 546448277 146911672 737470542 899772690 406438566 974728088 247786376 884310241 398624545 190455314 735591542 789288450 643408536 515461921 385759550 34622517 880260346 232934176 491077323 632083739 133813619 854486616 652595550 715669870 974765887 198205132 334243996 602934717 740446707 331917962 413683609 449878262 841568449 952502808 207168251 719923283 745732533 65471918 58068278 399762033 908147462 850282460 566847209 430723041 719899877 267226906 400579706 631622554 706123966 762008353 594211948 532751537 181750815 750281513 683874597 834168330 411976390 214644313 493969654 478201999 587669280 543630156 217362482 615838623 341114914 372900374 252117050 578125839 328478403 205509444 503772625 348743583 486094754 674014097 66043530 546928150 556832451 75895183 68491613 589629676 848901941 479919315 957522506 100250890 888574983 602679410 911882973 770262328 10462477 851421664 203990137 868457791 550605012 43342741 192273580 7374116 161794614 116395217 572748141 163148385 339958823 17298421 898639078 511249139 321821081 287984525 250816971 357698630 529192183 896381481 991734377 156012567 827900950 154077605 619365767 611890062 102684434 391345029 856009382 448466143 227354693 614073573 154664089 459675855 638023273 647299872 97418320 827678179 651378828 90132922 905204268 348440271 711676420 607274396 740556451 241357088 51707842 20565377 55350278 629710348 155038411 795280373 143058030 551471997 198167817 700426828 121544650 653345253 694623771 408836468 708915627 790651281 58894167 423647055 427227873 150636886 53600295 656241468 712243753 69852917 524834021 262556120 847424639 633206416 110885885 673787473 38947389 875091228 668347304 698140076 368297915 818067424 83604508 267076198 207725437 917761193 429652622 742210560 357246901 447983443 627731371 266250972 117209056 775246203 487210380 585311457 86082488 767085476 992119021 932608937 370229422 517098706 362588962 541843796 139686299 407348273 752213823 250679933 915089440 684568774 49189561 727627597 616680157 668440152 889848248 290477655 66122524 417847079 781342419 762899391 575258858 977802654 740138927 273079506 359843375 653235390 47221620 128276962 236437008 890969104 130686416 593314245 544509867 823573287 911242155 645165862 943395475 367518663 529736051 756364218 620943926 317082081 941554717 615556796 649482865 535801084 835403366 139670812 989257769 143387533 885821847 766202493 318934966 380388509 225137144 426663567 424658650 485284528 717309653 23653637 749744946 604082551 66750095 439074661 345996301 586913131 224652818 398978518 21475762 678521422 569617874 666408437 90391300 265471703 547457501 897085599 942913245 906814102 355187235 527275294 936394121 407290230 286710801 675418824 205255135 930599900 511755380 18578411 905177435 95161396 846745892 518039381 165147456 215101981 913062786 665372142 82034457 178364166 822082209 255677107 885684299 266098494 800243259 705232076 391133532 829366473 938512313 271601741 979726289 121493787 915667444 916910691 206246139 921080955 130093892 689149745 499752479 165114751 901235144 923101732 70842224 428979461 693091134 823402633 805601056 719028441 449865043 836524734 615943075 365355035 419376017 437159047 743862775 493420600 598093217 472864870 749430098 649348525 184995334 350417892 575738450 671804288 803847552 362017271 154901219 93390185 857542765 698983075 518108273 509162877 184557695 241695550 372113219 162285792 828561825 137766523 769061396 493911812 195937689 974689655 790548659 358265090 773560235 142444072 709297818 572066579 878032013 981104822 792487000 459218159 852847110 198643251 800472787 805303097 613680613 897377881 499734108 906850179 899845737 409108571 1338689 845692663 836889339 910010836 389900288 57595045 601560004 31396114 405935275 531338694 534482591 340346181 900449118 967780034 906232609 806043186 787594438 734027606 737748201 592901849 987555690 817899582 643530456 150260590 737347327 686648550 338933416 973971520 522572324 23627385 424697750 895953307 479211279 714746131 474756032 638692860 147477480 186239390 231897546 196295483 533830580 52109027 811449161 739391290 142340544 802871557 668399103 403460265 675837475 42490789 519631932 731227666 338841358 332945402 883709469 875300400 54634426 133653351 535666350 548671558 58595608 437184146 725825221 50557817 691224336 977055184 793390030 618567959 996309232 239844871 213097092 266399516 732367052 93943915 245636724 921550474 70470782 811215203 896679992 432905055 250922184 958782091 823173663 806740812 56087925 260510780 417459891 343620233 964910189 804360073 603892420 827963259 804957650 7413629 243253609 71511010 594042698 908789665 989848679 580079599 359259571 174821289 125906893 688012581 366175428 731592650 774731958 411922700 760713359 766446651 26944577 690002893 259725857 302378565 414594126 456009467 9404049 853646482 863283000 775297723 373818941 353494750 830235497 88709471 351569233 829918165 332381969 671940677 189799741 575545336 800179038 358939810 681635252 210319042 424447423 933438625 609439505 840931834 901080270 537781285 315750819 799416756 849767720 952428618 534441889 503634712 496614603 436388135 938844695 607010009 597145578 631139397 3019760 711639674 23609523 161209444 13949328 865884504 649195876 555731984 349185356 550804362 372725514 886665691 558716514 800781968 836685723 341939336 31652690 483495221 607750118 521803047 108229307 94115991 33653015 724491025 2906407 301119643 198404882 551306050 694149475 194254579 558109016 360544627 489328135 652986148 301040767 804607385 547458262 733608406 67872015 413471533 340786228 794032446 695371329 236935007 790839407 544185223 660676660 858021356 229331423 72433706 994201554 18407714 221200388 945520063 444162232 753375695 995202938 208901199 273553301 353062604 373744512 326485893 382375411 119933995 179094709 617995112 903883700 360783823 133417203 843348331 573775530 356155507 578394952 868382964 279662075 108541168 333500557 12064477 600463782 96259440 503295485 972992560 911793063 220230843 849006384 926687525 429893541 613280109 856308793 441138618 364166809 121162701 313628324 152552879 374799284 892972910 940156765 523951351 505649674 967119482 583907582 981041938 786500884 750660909 45477076 845365088 264025220 389730464 289661746 980586913 176585653 271261606 80637684 300348837 156824165 69423456 959741639 800537046 667574675 53390450 111290875 408669689 40084254 552693678 665508506 560593407 830212288 597365004 540592938 397199571 59712136 988940395 119072680 813690922 464042791 723215549 747741476 824330454 822312296 631878661 531181497 567087119 867314175 682702413 603326456 352196828 471736555 927146021 613538719 784048928 520898308 564873798 14000829 417068379 455240724 569048943 158906907 430163308 756871406 499489907 275443551 707818619 831340241 867062369 35428371 752213166 916560216 515422806 632180635 761998928 372610007 944176012 894942651 15589463 570465418 380510510 100826642 693096651 977947144 467308453 519013025 421660639 874391633 753166302 856844850 684452445 979821935 38144466 220875117 111741566 377020592 156341617 469079830 782026958 174062652 41579967 891894352 26395065 967143657 315303893 231223421 734196067 27594339 262879069 103557605 801212587 616885675 499077350 558212763 359921713 149009579 370540559 709639774 797359099 130577284 605490716 207360511 29673900 46582770 827931039 52718194 446628969 835186108 949786896 899066322 771687248 66500556 797565325 558349213 677725558 25070827 854301646 476789822 983409086 720667720 923318778 217352039 721140039 613978339 846557757 346330887 893384974 200050673 975035544 480372542 303677857 559660217 507514733 986011218 633032618 489727878 313763372 958203069 899592163 522763272 160216497 544260810 64906555 91848251 578471857 988760750 209434062 442157255 641361701 173331767 401659100 451397369 259720680 378852108 672188620 732626891 622393726 460503292 53757045 257517101 538882784 973901808 66755803 192582395 453146101 417624351 931547063 32967715 823939017 779284644 953980985 328760788 745301408 235999823 67270675 498834303 359611651 83442336 466191714 708949205 394975852 943203040 662791050 561034515 970483961 604054283 372622126 302980202 798829429 794667733 170172485 558518059 686179831 959826653 222509074 398534201 271183099 536111743 710053219 539414060 132599832 132092427 463637567 578630874 186165236 14059819 579104300 694955355 820389465 973717617 501551999 212970011 287500244 8370841 544317653 467451933 990100484 330573849 558557984 441773262 497597366 227740021 40990672 847700724 439889647 952990777 746904112 820216972 952515103 967693667 349895371 338354733 867155745 196977557 842716935 78123456 178180587 333687216 666647932 932881447 174961615 568658105 244991755 814040774 781165188 244080358 487802881 755451998 127751334 5173203 188003528 430536520 466865756 839272981 152927606 841155361 402474313 677063574 433427488 910904635 143653320 812641475 374606095 641919625 507341530 901792977 848029745 395546216 74659578 958763145 442089074 540641975 5886129 745297620 879649772 268525912 506534563 611637956 29109594 217271457 632270851 205212070 184906455 835917382 158057617 557723321 915024379 271984228 644987081 959274429 656486911 874452843 946218333 972766570 219514769 7814007 757600234 178964588 126554253 658742761 844856962 552328392 987971326 198166010 752364743 944577525 37823688 703594614 565955590 21347621 309001983 29968232 626842665 716637225 982776332 4873171 551981748 299800928 446004254 936178615 261193815 512760220 67043190 131947103 705133235 331092036 245913477 737155600 155355355 54174957 487499398 375068615 865700154 339073254 678163725 612850557 813933276 274636827 22122809 49010610 283980918 941514912 866220034 703676772 144196322 546586047 963972111 833885196 785447927 335373178 666558459 522112081 463133117 388713554 904323293 560122201 799905254 559575038 851145781 898990361 626115222 47757113 868779270 983477643 318396726 980900689 900919472 494652639 603495371 673344170 160929337 743079416 922890840 112090139 872941039 163456934 822492270 267557558 537797196 634405370 236365468 533592273 754684722 130487846 609442513 193130402 812286987 58677610 535686522 796957175 13741858 983418498 844491349 777694066 609457723 18094127 907542044 513510631 447901723 404405391 486029960 178689763 308791164 395665400 916501912 258694919 738970707 934478897 767948258 115548665 65946985 199407732 89557543 590953902 323493802 377746992 937985323 151777465 791489685 523551725 241980949 812636276 930957633 612603019 485430893 339602343 600086680 784827242 332004116 376365807 752830960 95326450 861470826 580196733 898384867 748912214 940005976 835963924 817509488 605577421 174717313 917331332 377994339 457599343 51505114 510216300 253391196 973888686 684657766 944364295 440144584 513957184 990764297 89180665 218433576 749152893 461672048 109540833 937408913 345073136 313165627 363519556 280946065 338979580 251302724 318906323 306511009 272869953 285619643 179650542 614282804 212706324 201854785 161868813 953511112 611887283 247619012 149249036 587785492 588294989 656724237 446897502 491296775 740254186 855499209 447069181 213622201 232406873 779458931 678817727 1502121 614669385 701717715 894487690 367700235 888343137 499308629 742941265 842028398 274204205 971016129 142092179 332836990 852614089 569297102 256107331 980989751 222674658 546143402 330434286 187303729 938118568 465951062 350207654 630954027 12898327 640762033 769811222 865452156 692905746 899657509 842169978 692014495 257290290 363541643 909678658 598020039 228231887 317080680 173189305 468951855 321844735 239315190 207299803 851576175 247912709 868084495 419566799 188057192 895817996 802596765 72544567 437775102 144331279 206232990 817964220 271916312 50460608 483556747 588629033 919617200 536247477 18032264 543340320 703246823 750056453 428656955 946023778 318424698 363818797 556538808 830448300 325388365 34758323 322833503 96768447 367422716 873612451 599277708 942372521 198425124 188368078 830673002 79689472 639875309 835001217 125645219 420076534 775454252 639909708 189117472 417227789 80116721 724449304 511939114 676580236 7042526 300863307 857959653 290285043 998957273 240849052 193759936 888782440 679778448 156873538 946536460 252872705 200353997 117211849 327618600 177407234 805486353 153118971 297377923 453154003 485796300 382070402 551551172 878067093 530626805 763241652 569369438 998046828 376749932 384622178 670352713 2629311 357948031 321632347 122550643 974712308 303732252 183151753 651694820 391513074 987571124 640025170 539128900 465174654 488834803 357025562 233658841 702805836 539375692 128443678 523928579 893899783 383053377 681814264 365505559 727724739 387657290 29453181 646778335 53248170 635770367 945122658 106646690 579188801 12800815 191292766 363827791 286198385 911769542 414897900 67068994 131010436 264545205 228397362 983706100 197038656 635090134 105146795 900819829 760043359 700721768 417942653 939806903 446389294 991479640 171018532 300548284 797529271 637869890 745956573 341607192 479945454 94855149 407822708 852603132 621218837 482584043 355149758 569057699 604253929 81741385 331426646 567649062 923606179 983252353 169661376 413617142 478009864 318910776 953368094 78116457 238446298 83136835 327288752 16964783 407657448 620173325 563059792 633112399 714004001 282042789 286951011 141840285 420153487 659978191 511364679 603081449 790499600 505746346 395856949 391595966 187317840 808284210 49304026 923124171 283528598 913423458 909047194 824820665 608503796 751959720 531283636 451695489 451399752 711404259 259515749 792975873 64680449 71452210 871708688 10280501 904053683 276192865 757976272 660621334 793675975 165890506 426187945 780838324 830434031 345045793 820123732 175105005 515542906 333384461 804533249 193315968 193275154 90104907 182258256 849172804 473737676 10848680 425824357 915168831 583275936 28505401 322744483 96089696 85004202 1593147 54146697 704461654 990046626 194658665 274767677 906137074 749934182 890690868 742826213 340148562 428298014 384767800 227392061 781772092 833557989 457803082 951446303 165031430 70349739 496147550 552422810 408582586 45056248 882154838 400031874 997801343 802514764 723526696 891639908 862254972 986101759 304267806 13136480 463572025 39702626 435988920 907747105 393344501 882284944 362233220 846670408 301342917 381096533 508530975 221602687 130283569 625067652 483800269 352242779 842659273 459149353 504020923 437313731 527808349 915007966 609977950 800908600 335731746 428185174 503457879 377245989 492406792 765944653 482193514 120808466 442006056 763488720 911399881 661710542 308179091 850196878 956774763 367039784 434814241 49092147 277536272 500331999 410767947 290932394 207405282 618622957 698314176 346199536 395491244 809156343 482620778 708545890 667302961 376553208 678240885 219985879 566319864 820954087 854833892 497444158 816053869 264976828 562391157 490633128 652592656 760499205 145908431 733990426 946810486 256162457 950081032 850634456 924892365 421537691 357506727 957472846 992687886 357431056 457256725 413822231 652102776 626185037 111701560 60714011 960495587 196882981 117403236 455244706 829506099 339358275 523194365 221258808 113022517 345978599 104145548 973642203 857624007 404370985 424749955 775889475 873297136 333417410 736691120 441774848 598194420 109475670 520551595 56081456 259247620 957146081 762894662 422915423 107654664 831972457 946637488 596908410 347339356 840156796 787986263 792549818 806851803 236249438 127724882 3912927 464397879 879057453 895245412 935846921 840831587 907345979 128013771 652958330 415420784 154794014 534447846 473085174 874197233 447514630 51533568 205586609 437916841 707505695 279860487 515171130 864153940 311826157 847249812 204469335 668830351 93929005 686877586 386806749 843025921 252745738 462629234 945703937 187623301 46508780 810655324 516434702 745291706 177755405 473436911 989970784 560021818 824671349 179565056 349445378 695798978 399250664 680706412 163527284 350980538 408788117 757811516 823605702 77190671 296206359 284737488 858865960 582107057 892340301 314904215 863820807 431216385 741311912 330540405 147598848 774579001 474002082 983813682 557988736 482059326 573954596 142673939 173965805 594784325 740182142 669494552 65435033 810523942 600891751 495401515 494155534 299176336 791719721 136741686 609796907 340994976 688008841 945034682 792098306 561229207 192452425 498922073 506701347 558785038 227754088 622921990 267354623 449806824 890601741 474992383 831558711 823095864 72573585 890591991 851277624 39266645 171901138 447703638 964007206 235016183 881140529 215319391 844010201 33465668 505886098 713179781 677523986 981802850 174590842 775124458 105163742 932825501 351456093 229427689 795162583 350746588 582566110 776278070 403682677 822030134 158543055 556979815 100472132 454849549 533956248 845827769 49324901 942595610 262235480 941099765 324240160 116052662 826060980 9992116 858498211 524219313 791617145 729431333 115242072 994288476 571700882 328495656 686212603 819279427 945361117 39231558 17017918 513072336 774555777 175282341 40008825 215987647 270260687 694999735 134193144 531133532 304379623 825631519 674340599 196644570 427386513 45309178 715807348 340847339 208896324 824345349 817794539 106863975 304952994 723128153 460490448 491854814 888461871 528159245 750016407 920658815 922993427 305613128 800054844 674890688 431929643 713280497 854496535 647776842 626822500 630944661 827815661 437362037 72710715 731418728 509778654 904959906 169398600 630335850 539031926 726246098 440347573 203492256 943786269 44197540 67836656 64153069 184753987 624839192 68443619 18464882 389893023 88290430 687803090 169534839 556450771 586008566 381619664 186832923 61618554 694429061 364745560 252896862 751002910 787440036 293642890 979374978 207399438 186645753 668079869 794904488 22084179 574912018 179125117 501753894 810868710 321735849 639757869 306233668 640607733 431817466 369441247 571440954 493127429 897442458 6877538 582127582 474287490 288667877 468365877 997856655 566230131 764199232 476185655 256105035 269018701 487904392 136886686 931039441 871489705 820853273 466465718 54429188 513615555 163965580 46955588 701968876 238960989 599378781 142431853 977235482 406495340 85146692 322132496 259372120 501823814 594029566 930679409 499889110 87762444 108171644 660773553 474094494 838393519 972473212 745775311 335217968 647958404 721089946 596306526 928919966 888641914 158912268 573271993 948905339 259230602 731869399 668353439 294001584 756249997 269199217 677868629 212248989 184062904 77892367 943580938 93479260 333606774 484820172 362975397 310715433 416050425 483839836 699569572 499145556 318270617 229354732 462888090 503282914 808760946 652900776 549175354 399884441 529975605 94031047 251244941 616946510 336948764 266051237 707328172 626481621 413841188 337362655 810290229 924304804 493648333 540753660 741237874 101238559 621552552 151146277 760202126 531110838 178793668 910619491 3572671 885377097 146241582 911867759 978699074 942264001 195795234 327108073 230982442 399157446 306441883 63835192 194574786 495297731 567692211 292857776 146904166 428214966 947660886 156219579 810999032 971862491 269449272 295943954 331664558 934057730 350435579 253658696 246000739 490681240 104613318 136151360 676146760 785481267 871282505 832053777 659905413 857965247 273822135 210372793 844440885 772585404 629516781 564160317 711745656 60252153 723352510 169178361 388491603 704251605 542593216 127369925 531450845 501623721 210860895 122521032 569481953 505964419 964038278 738347789 352639086 59833025 463869067 227231582 864874309 889561950 393435801 757921456 149779171 384765161 980879027 398037526 570013661 399428235 927662864 340193094 182545180 97847951 605632446 766280294 759320650 825450907 656446416 108329195 595129035 376300646 696579991 399425106 823030586 117013329 499586854 952800561 273763679 910834891 94224094 174124233 12361350 169629864 421991221 886126819 28192530 50513173 265497675 131896739 88241314 218430896 625016057 591520604 619413456 322666480 286046329 7678605 715221095 556156006 348742370 63039092 32810411 111930050 133667410 905294794 309641574 987484157 842317495 272165024 836479908 932140973 574854442 888572475 679429877 380967171 406883214 955132287 790345769 794468309 601373703 498714514 799894635 591714755 70739380 751628037 83462787 191645849 797496536 100797749 424333239 758317716 925692472 790714537 614111203 421163151 390305762 696248127 249800545 234229558 633064307 458615670 197704594 375186384 851540744 582728536 2291134 874902872 802041902 307798355 582919962 54488890 902682823 951511508 706864492 390583834 274856453 339482651 859184338 646009580 56387055 862452782 832517319 409235097 912195757 846714837 245387781 34489653 540159535 553191598 34052458 114362555 920456511 648122462 729954832 985407636 98138221 329751725 471448651 486985071 514743791 76341185 878915836 630277667 500505931 249112477 997072158 601805250 521726972 643551198 308161455 995179611 987210033 141125340 572691749 461504338 786496875 121446569 140647796 364471638 749649148 605853004 473781913 702984542 168843124 831143180 236811111 643521093 700918912 847913018 137748121 961462297 598692486 855236927 783845419 58171554 960081401 741750573 985209277 372561779 605338833 460628108 292026128 318580538 884842520 287736796 923864910 8378518 215745225 90228940 800531294 111471455 176829308 875319181 964160889 680843300 627400068 602273172 851278729 971255061 519426910 334716988 664730163 447753879 134369076 31568633 193883147 500306530 881435542 211623276 947439929 265784760 509109735 70413042 613746333 562327352 549541632 887628574 388157290 59745585 495176544 488163434 99924176 921124697 504153572 643882630 957615751 839648116 636697833 940644257 203713390 851735968 797169187 652272413 494379242 554017049 807943781 404252665 667967430 183053539 825987722 51956269 620302857 410156010 564538125 115567873 92478156 827669551 883182803 179465832 41550557 866662913 616402178 71731851 992984851 259086322 783268909 440043915 384598858 374767340 566639052 324202881 150432427 850789044 152135277 45960000 633746843 218615835 847483494 418090466 168550041 287882677 65933960 483568327 463049326 880314467 73297871 377955398 997835468 234594572 722361798 736390218 977308118 652353463 330169627 747431086 778770923 133127777 300684954 538062175 132325670 292600751 173646161 33652421 790766356 922318777 932681805 786018604 380020412 172361577 130733583 648978436 992202556 96666689 96738005 328882434 511909747 757557260 600946506 243956506 336610938 337900792 384801432 514983986 438979241 163677374 960345289 792130544 794000926 876834805 565479040 462112095 700559575 745207560 711944528 227862860 392415102 579577589 766649624 618340596 63225951 661792068 160090367 625176271 470586187 671672356 908496675 375602332 590610732 980602634 766137646 942060658 900023840 542939189 696842435 658878694 352682796 509391219 919083215 264985049 253305024 620928495 899061638 965297155 634048099 237498557 970043927 406501732 794032601 273803520 566485365 190816531 756498303 183023522 915850724 899811407 400779466 235804143 113129420 321186848 818383014 415751201 30009537 597853100 913388068 634766353 98521952 309396190 922468083 705834039 662432157 696531938 129981774 222044399 200251436 1412348 477493086 838360846 185954655 6209369 541454324 449036476 469220126 296697110 440406727 756271707 960627320 663098274 785732658 218280725 860719056 133690131 200256376 612082650 860175307 696749108 11304736 574556236 660419683 997173253 973162281 261932329 760186863 246833673 623685377 70246935 588801032 683687306 4147437 294564790 925120544 214391303 98765408 166439499 864370571 346686438 523517089 854940006 100387747 124164371 249894289 994913847 616463858 601367459 738491064 463439787 845132542 844761183 103727070 229347376 403896738 108951062 91259220 584143846 297170351 350023123 890582230 547633747 553980475 276093719 228847210 448033101 783597448 965959349 382593364 865057772 644939753 878758193 69324457 284942653 19388054 463215858 161861506 616643603 621145079 291448837 905166275 648890091 533634837 626785455 68724676 324834602 402019859 464156570 635516377 726560131 245910514 411126748 389513552 120011718 85371418 549703824 185358569 95073700 702490902 176375611 362208080 916754824 455104537 130250652 281809955 149104533 16518804 742009158 888362685 988253113 330625345 312974938 66419157 137815746 586482007 811238483 379163967 206967981 436403890 839734489 206975412 567497880 866545701 186103855 617070875 420889890 15516647 625395316 834842248 124730655 500630964 780318508 255891857 979040866 793283101 603193943 389058377 129234222 910571962 118010036 952641250 454300895 291208970 269047992 368658833 425216962 481922621 688358608 556091538 401901179 468434388 76703492 120013856 402224580 119892737 596958442 145140074 591449333 386182195 265209324 216146350 603831220 672996433 346546207 368087328 340780457 750363001 362851192 85349934 982371033 393404979 720405360 72357337 326745084 367640597 717231873 508618673 611104652 548535168 541136393 323469275 284016210 165616666 332706851 72795808 287887605 623047780 158741270 868129768 64153370 187206792 623169469 732774554 905443519 413525151 564596313 106045911 265260813 996563866 290544407 170117515 66611818 425095633 704403447 268748534 712558909 255165102 609644245 150117446 714797091 391693770 7875021 83996131 246456457 430398326 974676347 33395376 653260502 39368368 2432378 368298244 793565829 798465557 187206032 895882364 306198663 508638725 700168754 446075584 798208067 345063947 582788610 37974929 577428574 277735174 158843201 351647934 299525626 48257292 434232194 115852850 123784189 826649168 36227115 695065179 984522169 716474883 393354625 939602441 418611937 183509298 431192707 986911146 437072323 409606967 713685707 949811139 746001621 709354030 103431789 202437656 99616838 778146044 859741015 558996888 390174679 225924218 586898821 195531666 271052793 168772992 116340480 363972341 640005294 62300989 56094709 193765801 366554644 950038991 702579431 565334639 702696898 849017634 587551670 541425981 742068557 514671191 247477509 824829469 998628374 640876909 55616938 860965420 83789457 471494161 239847923 355765969 979782870 163472937 263293065 732819740 997936722 796092296 330509905 179236581 867797771 694214340 855538567 437054565 555965958 449387997 120377301 604322000 473236360 741770153 329980410 80048623 763878374 739592114 48942573 6840339 341299314 46698179 281304444 613515998 716333464 497782007 979410560 975117582 232654245 17108969 9750331 495677973 146344083 644967982 599913082 482544912 583753612 704600468 767884027 681036483 747457132 550415576 611597561 835355815 808066902 183878961 960639799 401506759 359048420 154995503 502815724 961050765 841056283 292856362 270334896 292265777 219671539 479224355 879911163 190793433 41539482 276855345 965217315 677855058 552522178 995737215 303722612 833814602 114235223 876474866 675882203 305782058 275521848 512143776 571648065 744737249 697920130 863593067 195065802 38401109 378179963 800351636 350775216 487333028 837023337 610314169 160174024 298584056 820301514 42157610 253264999 401611072 194476100 787481174 468558242 613467271 454518753 556071315 65724040 332588822 291415668 549784859 859086561 349707014 604904763 874708786 690214879 322614433 182296170 938867561 521297542 939206829 939240281 181048423 318054476 487753987 851129866 50940499 344722126 399747780 140578734 236152152 453510550 968697571 308438189 566835193 631317769 377108064 327459497 518030622 873734624 164808115 550565513 461928424 617869899 465070417 936956256 9299963 71728834 87683658 130971056 253914618 238248146 490891947 192045123 626058554 979870866 405277782 833745445 314755845 907158143 477667788 356520249 965797228 753435694 399934703 32790471 72904030 156716455 539994445 296704042 468260890 636336435 916476710 538045477 488779488 792781670 486709242 956292805 216107668 973349901 320522027 325808825 171284504 58452693 559941541 735676097 671881985 377057453 657588739 17614529 489805551 403049921 910778059 174196212 29504086 14997000 247703423 55734310 156794230 978113656 871154514 126355630 369733642 905860672 888692707 623680896 592930475 447273194 728341552 328586710 481787523 672969521 348715759 168849792 512518089 574373547 249911535 508484265 495969480 597588165 826945794 23751017 715021181 5511052 44370177 725855079 85703861 436057049 371466977 559293700 829509126 150803875 725162680 973054244 986380358 239168027 457055028 327169494 904048782 7020739 627591133 229176796 761830963 210413107 805862780 835474164 563627029 906424725 56197508 25034586 456078541 177743311 344874999 875988251 642905509 340025108 394497720 365817042 321960597 530673703 878616364 420396913 585181286 770445659 555319865 5222055 630701400 80112262 197177323 446262085 39114308 188418234 950131683 914078552 711753419 793319795 831971954 616144921 669226416 450198422 898350489 656388631 187358402 992880207 132979076 871768753 569348178 868294926 789319227 705620151 369904975 221361528 168869294 364745045 621438226 295540332 115092921 107427991 441580410 696962848 730819494 390997889 58125413 350689321 502931824 133852839 481870998 483642956 50136207 512295916 864324390 402809768 177130076 281487694 317976762 243432689 190513200 740568472 53692438 26959857 436980753 109835291 727072037 978345033 370788757 810241938 142470820 482029510 589630426 927163421 922841486 463199713 901173727 569349788 655014249 426973976 763189255 639251377 443846037 412581167 982545730 26471361 110202695 220332550 800940248 618237878 973840276 47565263 255707910 526257547 319048400 246637863 339512588 18806545 527010021 349803937 815319493 486035914 407843805 243858394 323547071 604771080 456376311 269539157 140309690 651884141 612871416 492178864 919314299 705608542 400293658 795944614 29566964 405119296 896416248 789644641 139007459 287462257 449479736 641177849 391490097 316882772 872906998 824491054 29285496 987792886 383241583 459430738 799750844 787537051 227212602 284357437 220919206 178514773 609813024 809231431 199200439 257317414 954520921 533153600 524459328 336659016 418594561 113829036 9178941 366186163 762018193 128399776 882544958 37220782 79131 607488232 41302441 908278581 156666351 270563742 961504692 92323121 944830708 602112797 202961746 621286993 502977320 681505297 753521347 112616868 365660053 497543658 858143446 976387059 425692028 711367572 954986246 203227913 381702796 588945520 100126146 808630095 597081618 626073029 132707197 503623916 215500693 859469723 995091237 934965672 767719028 108646755 747558264 139887097 843918694 317367032 232314590 788807035 288518959 168772978 797040205 672068627 678879572 701944595 958657473 330424779 709552949 925557315 536760118 457842713 143275973 832959129 303682568 975675622 551595091 141482489 475572280 665551563 696047564 15429919 680293518 826246911 978302999 958823631 941572478 693272417 255214338 516039216 896844142 401850792 863958601 819877672 464701152 199671253 880669575 534676494 242571232 772266352 141967025 624520757 507687663 45422473 53443250 25916916 934337010 195205642 419794483 338715072 235512053 855707834 372054915 165886064 293989919 605303575 301029957 193640576 920139853 368555002 935912779 883027198 618152149 410766119 900097516 223863001 650939888 590988736 614277020 43658548 213160706 802620272 174169025 933545790 470876053 714299260 624417306 400465173 557307330 651638898 672618141 286395315 903246327 17294820 764997126 191305315 860453918 923889537 477374075 340531698 886078603 999284721 719160159 303399591 788578177 459626771 466793908 630157825 237138078 892753344 387482198 471826411 470574591 55518228 713970252 343599776 638178382 552403997 94869579 767231691 583665534 651905092 202764784 545364012 428977469 95753761 41834741 906023160 498400863 734298325 288563637 843311326 134991334 251896620 439231382 785971152 999879769 183310309 678474619 394564658 643465845 918560227 179395788 200600413 851142341 642772722 60210171 363947537 103115291 287088338 750066093 807270959 330317848 632826309 576153284 401970898 561075182 228949464 699921626 204428715 236128884 119540802 359702703 230590185 412773297 512237765 114115946 377233885 461540285 921155243 114811898 908279252 450403781 675648380 166228871 470557627 101109387 247633765 577360891 437154988 886461974 392140567 785310989 711051857 887073670 517062629 800666782 336332556 142247193 823585585 760075595 57151803 335870549 807692153 959422028 648935292 429208821 70287245 450648958 615189517 462865331 476912133 709803619 272943267 438730370 818618261 148314692 523401216 551674892 339387149 667969522 386722705 703267855 837980870 958519171 79187981 389373795 969432720 783222079 430071521 74399206 798641229 351450146 344883507 464148186 784179882 98340807 101445483 90803630 987932194 27361322 759942857 368278851 352627779 499998534 208617406 89570784 167096948 603820888 808392230 572450590 584695910 363946356 696636016 148498131 32443010 199900115 189814420 859131499 269494741 587412340 619321623 211559794 608243918 187873645 633710135 491958635 38951509 378097755 881706775 589402174 811948368 797116570 237573719 309917835 154762101 845376736 853382288 348791787 52737863 556839981 450918573 836765784 469998329 736210388 34183845 711173562 77627945 927367465 801351973 695071356 764070255 164111031 69402880 656881377 17809205 699915136 97959406 670988084 36125680 202027663 828485632 235232966 152840991 273019150 486041714 672892413 40669956 967417306 738318024 748207386 368454487 278555475 222142290 917367545 867143274 46208207 244331069 234798636 450686252 272105637 606103720 496059685 726265447 964950199 491945935 324576560 973249196 712854317 373492659 958770794 794236670 481921751 954531683 649371258 151679251 162225569 129599762 433389235 272582382 78893667 383916524 863418324 909009658 378072193 755624533 867692351 604884147 970594628 946654522 764700764 18997236 989421411 924950163 580195349 452569692 27174344 549799808 182640357 400848519 78146764 470614633 571756403 725290559 934187662 728606800 570613480 295467919 981888974 624171393 918322885 429398478 671075183 20725750 71372584 170147766 169968831 925271154 138385308 44514956 334157560 239094260 572404038 887550920 602989599 123332136 446531679 163641972 742212654 561661271 923857298 788003819 329942643 855669208 827944759 258981684 874257431 620585157 849836519 181117320 71337170 820579689 20086612 204609507 897000259 823374365 665875477 353105451 959692267 599542309 308183773 779588150 659079443 497768262 87332108 859494065 106788956 314702236 146529566 526020545 135426020 847403482 658244534 479601945 816027129 130229018 709885360 80923111 26597821 651298490 422602979 474432916 956568861 115763052 561539674 630588555 326241274 619036448 209840061 288916255 822312312 426065186 104968636 540699465 708264533 753575006 480488040 906424552 42260045 372711208 872612988 673400961 168215585 963978065 251511612 963268531 935276950 280432627 322865054 484628943 595136366 220571580 345038518 349587931 953074678 603828240 262220582 70584202 435617546 699626877 932171684 987853998 205730732 745414026 100501654 832458003 396985094 813265555 332643069 859981058 451920516 665663658 373316194 333351002 946012560 830041581 154897974 435802337 280294496 497604143 103441941 895871325 294317521 658664021 996166137 879178430 961936794 574934334 557379724 525570737 564924281 962913442 816689446 949066568 554268495 714608824 524179991 553209891 780789721 241072618 640231453 375282862 127010241 3132685 498519385 370720197 275626304 746333386 826898863 420514704 264091242 261246693 789121703 940823808 723040257 192926444 141518251 519469979 621429974 200658985 599890751 419934047 520430948 229928248 980457654 540398797 402047149 565487749 930033575 781213134 245559115 652818421 286572349 930196376 950704562 514797685 489996541 313941986 4167209 931036786 961404067 623154973 817364499 994592225 878685852 124617365 986859957 543618626 846931882 815985563 595689066 578873389 708330740 757627430 266271728 508350714 740079234 693904882 273850129 983486100 58119672 360427183 700629061 168289568 52438883 528113897 412408528 413888600 537561947 614108504 584655354 910266158 706231199 718191812 594959146 913426280 330488188 492928678 235733461 188894250 375904000 309597448 306162977 742498824 373175785 208199627 255018781 167901573 631255674 98523277 504375058 921445849 192589423 620082136 710312106 550580775 219992576 628297711 314852165 797471774 877205265 745326796 789887795 145532479 627228197 289299793 158040731 891292078 428280074 322770405 971060278 200623501 334704601 990337751 50740883 417299894 763349105 562684079 134288350 343242259 752725978 781187602 445512705 93444174 710045462 716486918 605887219 285609171 11870330 584774125 290106745 972505470 673218836 660887494 396781332 309678526 908693338 221694756 527277029 664965372 238391175 246164002 574107621 724227864 144862981 797966200 163843280 195887941 81567309 997069962 296455315 533869126 508104699 946706280 479866496 11094585 934009488 141756050 974949677 638560587 995499612 579447332 14636519 479655165 318566210 569830858 672791103 73913020 295522941 746378799 179354883 294796289 939847831 472233584 898324742 732237373 325860110 332202721 845468534 167759928 731458721 987932419 498774977 544037634 939099189 913391941 277088270 529157211 393177115 226796374 849579195 101174178 566738037 619832023 775998259 663123540 946309066 459367715 313675757 990325311 751859789 163693077 204030966 968862841 531496410 579360301 108444136 613289643 353070900 984791648 592716338 799231697 506222538 394196466 56759218 485034192 150352214 950308289 411846331 934673631 268741173 787101195 269433745 172479508 694676989 730503882 238973654 248957882 788212507 779096854 612459654 298001547 988915100 690286479 524151450 525853474 556008199 845735273 951773080 312932939 716396951 360678682 570902122 346778229 375374250 968249121 533366636 688973714 889880017 686589212 103631594 171342292 388967229 581771619 90016580 210011530 226054764 605403887 300682342 442210675 359705507 348213056 778569843 204653806 42711062 914479154 828669221 571508825 148338011 242517697 886671190 154880141 183767392 142273785 532959435 375953344 353035014 985598080 454750798 355307583 794007757 808248381 312525581 45063238 301910895 822700905 882688304 19829240 332918905 570299065 675458013 304647954 503082968 671490769 678020495 59813196 754979611 366034597 319678475 32996844 917471763 649825109 463970282 325198212 721376396 895944457 940410647 57566280 142736092 575957016 842796948 613998378 590844257 735997799 356818908 327544932 309343575 43640558 597669132 228544552 31175373 704595650 19845228 95994469 916560763 115062742 23618311 376504830 218500239 696031876 359547221 490868316 666609880 480246007 962189674 590233397 651923784 504164269 286646681 690837562 621145673 740458585 365842928 822515084 571214000 260991051 223276124 904568484 933960178 913222681 542784264 967944657 975961667 204748400 308591174 773948986 243619702 306044664 818501771 888551815 45165193 340947898 898117328 393964528 502475291 751908983 746360232 353379911 80667149 460120036 790983512 56084512 723247401 494873129 804540706 606116272 256325312 659926959 888479113 894846346 576529607 684452312 782520677 106606757 285551732 623266243 224786093 431139679 657864038 697835289 248918819 346184470 972949615 693033883 204147882 680125944 320304022 784707321 735065243 20190802 852671829 282082813 920578341 520770836 525579004 692649756 124638349 671069666 654648967 688312449 711988052 759849451 516547882 247899587 872614311 255617024 757841425 625782494 934822488 381078402 336959540 254277542 541057829 276824134 297438177 916178348 597564294 883089872 947675559 812453197 931586171 784810566 320146194 257378756 580810071 877411274 344732763 804970566 968535161 93986747 957244704 871786437 349833150 586671567 89598230 972171159 222670238 717118002 143648799 157106548 312709338 424309142 788168305 530818828 761619376 683719884 320553750 507426814 885599243 910657150 512627169 182444745 759489198 527444213 266895762 946830478 632126273 57514947 372243773 349364931 229706306 287448023 643374775 672274531 821315106 756910981 818146261 613155426 817288918 905407183 374431424 720369345 53524207 509628470 333775629 811953648 973494445 846705991 233882997 383588553 181451152 463083079 283247233 598646153 452705233 570576132 716723869 191650106 310323499 22828457 932705658 835029779 940654610 590704649 994565715 142391972 280154380 871322328 322787146 546345068 894838293 459872249 217864221 585605831 407128513 966354671 159077897 246398486 850769129 606797020 459296995 309738926 470591918 123129684 737312236 549226729 119342854 682962026 859808878 268493043 613920530 262210820 296332012 32983443 21319175 35573134 245050252 928706997 415981268 645622488 214207721 656813317 541606964 274555425 262751623 858493587 258348770 700630908 819795798 128616499 995057076 55680157 161922095 331450317 533475736 15946098 211938946 569315066 571039709 271814586 447799492 530144669 34470663 530441288 919302792 199526182 887577344 459593113 281898865 950724300 389609195 651968359 535272105 571091219 772482501 881388778 889256581 623089175 418007058 109479069 810548616 544830643 721653982 580832961 359041180 737508277 444256381 626475281 898413308 960885755 970057508 422695418 962953391 892679706 852649620 290972480 293929188 791747016 135519658 927521275 80198916 4353147 146369936 437475252 570544747 101497643 263999374 837155038 517116539 913356109 473328984 686441058 276622316 620293231 712397190 529055895 205340932 791279543 704664517 16001056 295558869 562542066 166680872 229494886 430098078 105379882 173189142 95272915 901817125 656046509 406321084 978501519 206559471 86323200 650986122 446600385 32985477 27467378 649587431 949604724 331821220 513999532 316550761 907350455 74438294 179107268 396904931 846437849 584193876 172768406 534455808 713152149 245444692 605998507 566639921 914694995 675736597 852633555 338012508 727788749 407790198 304037716 384652799 490319285 559477314 170137112 489791704 136885916 552472796 34655277 725876794 579785259 625846209 958339884 980195912 400348357 704171144 890686205 891063016 377748796 982783307 689406338 43210330 916112421 39085212 93561150 424273714 985027025 133542131 349344663 719739165 859681664 78680435 666935682 660234879 313170404 870254707 786551708 936294722 448187896 320697568 400147983 342163265 743095796 111758917 374853866 229433033 655427360 141091634 411531334 88143821 735802358 641602753 402823377 112520808 544922179 442393223 953335162 492823032 732674655 852644688 122043220 947792968 683398775 325067638 981867560 457837849 769332284 118437179 140801569 603773142 475926737 807158359 530057265 665502710 948203999 715202208 642535197 878428131 596989782 194522683 380113459 874922524 840239257 650242012 788050424 793917270 827628057 972932127 491906086 418491488 563031556 948128151 618223102 918234927 10352762 803932541 298722679 493788954 356238463 388642499 471207408 687830588 181991897 730285701 247204061 188322868 788216421 840290310 76568369 352792352 597030919 593063287 470829524 255393526 157669957 765085947 617255602 283020941 412471172 884985565 100820085 404019048 498581861 985790617 686659187 644336556 793943865 334355211 49323882 208025978 5109613 508226980 797078041 979860703 221201540 500774460 180932372 629985544 849658119 274281364 321497325 354956154 446943653 416359941 256342734 643207980 407423079 878690435 637514313 626298126 570970370 154219883 92107387 918365133 291717246 461876980 453822522 321326824 931838998 892010411 188208061 683989960 670458791 202694639 516853048 168324275 813179209 650486204 523355794 433422411 123658538 167278810 679998781 8631740 807657229 350501585 524027088 265813353 905898740 952256381 55808444 203028433 491554094 414143708 388965415 238944807 183523248 191464972 750466187 899622462 916518700 762278993 422039378 33279777 756208809 191447647 358515404 939125805 180822486 392528637 399187657 695090891 497327622 859781651 414971491 612842705 503880575 386284862 149088486 801651497 923116240 531709214 229063604 706717729 107836733 983962204 705537532 316158182 276151430 286656508 921460012 596926997 331147940 392901756 423787622 255847447 612823985 338932754 330771415 24649994 27178075 112628106 137257462 829400456 660097685 625194978 342660388 588356455 871808152 499429943 521905428 971317889 401203197 775806560 86505814 618422282 374002206 364212681 385002305 162718471 167112982 427570013 123016360 758302514 281364643 581081069 357957606 232718234 488734664 512810767 253074056 14604166 268675681 266088154 562472839 859402131 221452176 698195461 495844563 267231750 893998487 992024148 995310190 327853090 104058026 443365577 463346992 613102666 837380419 781679377 581598732 779647716 918512751 501503967 916414944 75709765 3464806 12902008 326805849 760846770 726597135 886526227 69153669 903701470 391345980 557990912 243186898 832092512 925298857 390126855 888313184 65599606 728499045 128291119 426088485 128559243 82808971 653081734 839406570 678159982 42100997 947865935 122396796 804250548 518940042 216428472 54240406 307798606 512580615 87781011 94632280 319772585 144215692 940469431 79656550 729409155 297527240 739211477 354211167 52731397 70859367 257019252 204349708 939254119 955612253 276877627 346255045 148547563 209757395 291678009 888094420 474805060 875087599 109915792 743905820 819356382 622743466 271839136 662579308 979878913 920357922 777389211 141799966 967186455 835841269 261936209 53411374 203778184 372317282 425701398 906996343 353485771 442038355 228934447 265446842 655510110 144713190 53117516 348374823 660420325 192470071 676023532 994616883 149493171 71156431 629193074 398869374 564130312 844818180 525481595 783317454 38058549 465442933 386212308 923615788 324412657 895579881 144897305 899873232 780148994 557038922 958920202 711717013 632191462 8982301 551036785 687117817 266071002 556536926 777236732 278932256 205287875 746214815 232602012 295537452 390601083 462598223 703053297 103257867 457734752 719380136 840083679 357710058 867004485 70763954 356121141 508915268 35817083 234582866 317031777 542551666 783203168 629853780 76466516 198659374 776075310 39563667 733381450 386588852 251397072 494355849 15110719 286543785 433013640 47179839 945392537 622960755 892186615 329252061 620039776 491633507 864173400 418297042 727584767 669250487 286534766 713400381 274145312 119208644 110234602 311717972 785870961 58810310 163141622 566991910 759272730 526951989 598390062 844150835 457367199 898943508 545381019 121147849 26983106 397132960 121098495 488897709 39049584 583436688 894379190 219932328 737307957 564638163 597193078 195297286 156303492 239392320 647256775 919676388 487485072 362677113 548998669 564283200 7530529 490278382 248440892 384446735 721839827 963783088 825120711 656044775 683502093 987840065 318841341 702357317 195879883 617360783 648332688 829665252 282540678 784767115 633722750 153248350 720014397 978628297 784943645 679960892 813989439 156600945 731410683 573597756 11428115 440702646 574789347 370337675 208023018 812275376 194872288 405190908 543397627 686791452 997102333 138673940 223975569 415059659 853206347 62160311 222641110 595520584 225833028 469394265 923787946 898955912 843808170 648375241 644370376 412631198 507323510 985957162 246972946 581603993 33806014 214198254 539153309 246537289 325599780 558284876 558130882 56651373 207097289 606544430 227266367 50429606 341831212 568933218 67185525 26361400 108025819 92978100 370398310 179398939 176448782 261877190 931125803 476916471 477010700 119464063 829674390 799142259 684552857 350534022 648015507 324348253 958526726 682946148 972693569 374784002 974621874 618305966 748013362 247974344 804437246 404445756 986716202 395545798 694498507 283736978 430627552 722948049 408106818 980368567 804217555 281837636 661675545 691699687 797165140 325784487 647127347 360353250 938990103 364178607 306674583 929892588 646544332 533167612 45034562 202824218 354276098 137815138 155608086 791658335 375938980 878876352 951604393 447856676 926076090 56085963 242761887 553266972 173505429 888970624 479143877 964282508 52582650 16859866 487157025 352925480 15249122 239513320 654606487 944306626 78342296 737340378 815049774 792648401 48006459 651481556 759522084 750332690 890198123 557501075 684155614 386932094 657742241 918952870 330313241 366054791 891114996 582510995 763945067 800624468 28682730 856262189 446762441 715553825 589762882 599594886 607724335 172657181 536126131 170802393 648114764 31392794 223829066 688243517 974827205 487771146 641421105 350206947 531452630 657393361 753661698 997159478 841467832 242936850 202781211 819559305 38512189 264097776 165422368 743079478 28055957 850745624 719308457 188201600 820533143 36573420 372046629 777569445 723439277 631235925 499122248 643737733 643142219 375386948 879154585 973905008 656502018 3837575 147914831 322219835 683516638 713753207 398844954 431380812 312083096 681642362 413940600 995803386 138159179 502628135 208672033 171225212 525486122 388372968 12698802 772885753 390555700 92274182 680494863 647584941 432619151 586136936 12752901 208502957 168921789 554742777 432519224 399907991 792080544 719921046 345411108 593592265 194541998 870856854 879221202 176074346 536696000 182935350 250553432 67333633 566599693 975361164 453079513 981725093 773742436 353780963 743034634 25301401 678575556 879206065 606574173 579666909 450685191 550227898 98511178 440234147 173151424 956710722 297995315 668717125 724420253 647973925 868337716 469173981 7613167 55936959 927166682 669677415 77552975 610737625 344193248 805256221 361918482 895038089 494652685 762889563 273886659 332509691 372101641 572260504 913095458 641494255 670662889 786817862 390271597 933272513 174470371 109051257 8216308 600264238 394146612 356809674 381284324 967802964 606634719 803369927 291673556 360861942 481288442 517908979 352962472 57905719 506070951 436129601 987077264 420783974 657471890 823482701 213758777 533803397 887315609 691713180 375765498 953996437 963202552 512567469 807657839 131382796 34837368 141005602 946731072 453457091 833244490 44353590 305068813 530374094 654797658 493306829 676908851 682666904 303205849 839866771 12730324 19127528 551921713 41305723 91611352 782778770 952793224 975561134 864301982 958502441 820578185 341287722 850526778 516103740 62603787 683031308 736498423 212044429 372956032 712650616 396374650 719640277 164111284 807379008 221165606 20415679 842880705 778614076 558039022 902245407 901340343 646375250 901147327 366254841 99972135 748396928 2520510 794422623 571473250 458799212 89461325 793439130 720614734 68463730 481043772 62136866 554495647 909802662 194683969 122489770 522582099 692737092 8713390 680200197 683182555 839825285 116102515 384033650 797871279 735895377 883522462 110280970 526359078 132620708 395562759 159427429 834230876 550183437 611738367 731527511 911742887 892425703 31536141 782883731 771234136 70000424 300218049 804781419 564482940 715325562 532053203 320810895 504072471 93210372 613715043 310717047 962364778 461985092 46807439 460236258 366524849 440149249 62952073 324370949 26301790 826083098 801797066 125593827 598662744 452364905 802373202 138092597 356729144 343406881 536920889 381802722 971204228 990887420 844323746 286347931 755475678 146673110 497012610 866437215 572858992 34551933 330897814 766333469 357488716 47761208 95811888 410980858 680844437 686152115 148308838 504257449 766197890 65338634 552144670 349380011 7563394 826814303 460725680 58049080 969711778 334728315 605328445 706217499 573350693 786698584 294803345 674716671 566621506 473128812 531698173 953726160 150139584 950806524 185505979 512621496 873014526 662377531 734728891 445646022 760400682 556778652 350773268 202069229 532401358 308869554 526750930 764059159 203681713 236989378 556061067 281352719 65941225 219771164 290570464 426338307 536825117 309672145 50384479 566531920 567617807 917815441 28571197 46527969 632118179 905046556 342244344 713733938 527551390 922596258 867626593 342968532 404382211 327469570 121699944 116254732 427507699 42255033 823908911 63853068 520558893 315965425 220806240 715258885 591358678 157306375 445158819 577350726 925523178 25195171 904274518 686620151 352439291 332056950 576587882 302082009 755247962 172041619 206584576 882156123 955012396 629979312 951875568 542737613 457219443 261151484 218592416 844813970 358836832 44650719 554125833 25531971 270056052 254706483 51616149 170895242 149830306 582232781 983205504 716545149 960596279 559897338 635406745 917074243 660740459 880044203 142183509 567089651 483126296 209768941 748132445 232462055 302427367 974828936 141060113 495558611 476702873 339138208 264932101 33475245 924114681 659640463 814483266 784273717 603997067 167256753 56865193 744059634 432770655 68989209 658404814 36886461 972427582 764590064 210543010 923775984 834401265 211998850 650331823 41422987 18849166 686965989 155336181 357920108 799400574 606799987 606712901 581806703 562976759 223687815 785040024 66553718 424397410 947862288 453793914 468825403 564623239 820713133 52323240 365455943 424109150 96628649 977380032 208557056 768113213 93101286 884782886 560643370 222241318 905708981 631950611 21751245 75714131 586257944 273411741 130166952 998500456 506408359 376388696 666064936 551782258 328460626 186618259 25187882 562850601 559689246 933387356 899555254 963043529 33782040 330292783 255605396 474543617 672524469 331116880 352497280 648524218 301515153 130008167 54929715 119809105 678171564 451120714 716901315 352360709 124616933 940373962 664811687 990903901 787555380 622163731 223042498 967840265 32806169 600721188 707108507 22128989 63213117 6447038 369929057 860477862 483240018 624241543 541533347 953319475 150472309 796459146 439389039 28152546 295944260 943325002 561129025 897671619 822763689 511633402 864829042 633720401 115901092 356549209 452542423 709545643 212587163 525721777 870572900 31256122 664550872 319629315 881547750 62713443 521602186 837103105 36931206 674770932 84421188 385720305 918248503 146423441 433711394 381687960 395131313 27031731 496260782 928284451 65318530 958258470 304689511 693872852 846013594 921725215 150378209 822092332 792976419 91026155 164277266 96440451 601825641 711959214 343221720 38884440 337329525 283805116 444534077 383652959 969237066 758919300 263732803 582819258 553631072 726384636 951025847 347078209 381551939 404781048 793996840 381741999 905766652 920319913 31730034 90716841 905337753 315801555 154480160 828661100 972892598 42769300 474921958 100800836 958204648 166982627 897000503 726537855 35085938 484327860 103723266 407517281 510086262 138844 529280193 821422950 923323446 552677008 662010583 214211620 713486270 204558500 889335884 650908695 203666256 103328860 527885193 695080904 910927421 770619403 418103977 598398834 500102924 47404203 851054060 134866482 180474540 700515316 690010085 819979772 322676473 182822153 466276893 557703291 588499689 410205617 83905979 793128142 697117166 604022301 712692837 185645610 811668572 24612852 189230508 665416745 432405548 491116930 813018247 622847654 112566904 451512183 820570141 169773034 886860024 978871103 905608462 713794958 530396936 719904265 286360423 96686962 465289780 936380446 746566377 881926587 174642776 480542056 221965588 529291086 537531233 481800656 578313329 355158903 756597628 134558376 298979611 676690370 296957924 23482594 233918886 530998808 881816225 113408193 982523633 380705439 813284742 431373533 893767280 674573733 605035538 766632985 62973572 148846160 754417989 170404682 473663134 496684111 683709345 857088550 763702574 775913472 952368732 618281343 598503967 146619258 118836803 770144173 75037234 376356449 105179122 895089471 615107187 451212841 232391907 325484771 108031359 538672952 251411881 210532409 535178068 194383209 960104538 123125171 476452001 851513364 311856980 815614691 574192889 88987775 392586437 108956016 514718693 759085574 387984835 180218433 441959145 565310329 235297495 581307611 321481231 173535168 927116366 173116097 552840721 328794081 564574973 755995165 211270608 628200768 69739171 617220181 473078497 439653495 335442129 141234927 283226172 32030059 658718601 355389793 529399165 4591512 163473146 360246585 424287054 263732891 101683358 682925656 28541094 786547217 929746623 937780818 109736081 748727184 667752333 565348109 123124965 355269177 243269830 201240624 514742308 736538681 937631010 128838177 44145894 477241143 416692958 258833629 739333708 593637850 188283216 170713757 857141917 206135621 162280327 237374913 405616656 663833582 151609602 856336373 727996478 402943369 466612321 320649734 665425061 575535707 454955557 95410483 623818065 8840396 706812783 629711238 47354495 767576909 281982853 189280377 738879758 529451443 586946238 648115284 147604877 128092354 200742685 904798224 5565542 720434568 488327138 531829204 750473068 684713704 386596000 857757394 531857902 992265231 202507215 250747172 275878442 944234628 877989240 376554174 419664909 477665288 41842374 304588642 381204648 118823345 535293767 800833182 907665300 842279775 797559921 255461148 928335252 461161981 223948659 732562918 434214340 155796894 218278518 663635046 81856783 594870365 75966813 159868079 726950918 308718544 116049857 106778923 163288976 640481741 236009267 442195692 372959631 563972353 895020429 395005097 549961776 848501836 683406098 200460298 140093846 508793338 501956317 888304124 284759079 270204459 38795551 18304620 60316786 655280721 637359231 436015476 189063220 646530142 867113176 975218180 605651801 536220545 929650552 540564582 790581609 743612803 866532797 458115454 476427755 686440204 196676980 262590026 22075098 651347676 198141579 881745829 546367697 265472074 189462350 623184340 665677070 51406505 869271454 739360453 377970507 718280885 487660442 142074525 433003742 727096678 817435101 483938950 581660774 775828861 689621038 416642183 485051491 870170981 610406372 712459959 999499223 420076338 250103144 469422074 101933800 911831450 148614149 294163417 219620733 736261670 334414104 182272284 901216639 722950772 740171785 230639321 59770628 104270460 784008330 464212632 111123912 417747721 634624419 240876549 655112628 597412543 387789699 591701858 936588322 413160577 60234655 183282800 879448107 392839974 136800675 383100169 267492687 666577249 915941941 300406276 484609012 496261256 253767054 338135504 338837744 745628392 444218714 736527102 697551665 331503310 345378358 695456756 972376456 274369155 981241839 379504624 243649064 913486650 24753592 850040932 926879172 658972370 62756006 953959108 382941647 527834659 650162850 511542381 821527255 461560101 71594135 785958208 259636214 164735461 725787294 724508116 64033184 594301968 455181947 828845557 271593158 266691671 609634360 731870798 822312993 17521739 59529490 378880421 478556770 537353546 72877975 663428594 720428241 795325041 104458088 485296841 340991596 28568352 919533271 681719144 991369493 535192505 461691224 305738620 108336786 951084357 616571111 557938466 732515570 201430611 218092105 621421854 689986089 308917219 100847882 500847817 470110660 24625804 162334620 211533193 288992978 389036303 752598083 568712914 794176662 642837810 27105544 803677993 992143831 765400239 725040054 115006971 81095824 691291607 41432700 47530437 708574354 488063587 779655783 432690197 241880659 522408277 723662246 99747512 639911130 851016097 228241839 251596842 386866931 159916410 209862067 838143272 200290376 348060672 746417578 788260914 889925756 533985919 174731061 703336490 445440786 697692687 109112357 115878710 113343793 3613094 268041367 810266709 547087821 559540209 475928553 783449514 342282090 431676169 427883326 434545759 307599618 193800150 399845080 661270137 969311286 63186436 115815928 232140601 774962777 407151661 243283978 21238573 450358031 357616358 640972649 565672568 290024609 665171021 300154790 561602182 682590499 912708777 995747770 411090225 937565930 748372825 855331876 164366621 353024312 516041472 293268726 407414329 107370732 284183433 247606474 638277270 983295140 136806619 548697206 110728383 690978210 913439360 518828775 813746862 969185520 921346810 554267653 481518993 29174533 707178419 59003541 237510750 799923246 804009212 848207960 63553188 798296508 677325816 848001104 110185667 534751294 871524666 951290956 28443181 34521252 993607936 353612980 914534616 328409473 533934815 43895100 503921929 744240989 763300081 442028763 338667355 200818239 818227535 592784617 847010529 416276027 74041776 725310864 716153749 576192846 672761395 427910856 469130024 801503951 650219385 285656778 601802786 59636331 224124587 113405989 142199246 530269693 790545548 50239611 993237837 299041216 437874601 673118925 280590667 615253923 585722840 150789899 739360339 402989358 266620741 568858349 460247498 780745367 211987830 655834330 754265073 151280752 779861748 974964004 546406838 7856481 166748383 766355214 717948715 857252273 180830483 76942859 551614604 567558352 277911479 781715385 602219044 514546378 418543980 839127273 350039682 762896206 167948788 840799056 178640959 185564408 26963307 853689842 621925044 177437329 639946277 327997505 711116055 458502808 653690925 928544365 60753627 865747180 555753650 710273295 422114587 537091378 352718854 92614509 212493065 402105013 2188260 935969186 85407949 390221858 531006541 238069087 692662785 338871922 264319335 343928227 62527675 589899888 42602391 230791797 991433538 58542974 5135032 364039019 52527283 603040997 803426140 80677887 676198994 991544578 70745000 591659117 746093233 169378177 413499103 933413487 424570259 336019604 468802249 775517770 995558768 786927952 945582736 96588282 888204085 449076351 49744241 421425383 597700070 415640774 902117037 699171495 235502310 350936593 716032631 836293922 938495722 50922548 291333476 489082826 978553081 488633944 387320074 577344972 275115064 760643761 712600253 372187795 806346320 887077469 642960707 876171582 683762015 451363441 23692923 92463177 220986630 159493587 942263787 391304734 858290178 753900107 530886371 578212333 566274725 442605422 706547128 486116312 649183283 124330720 650301750 130782284 883903875 622387158 527047521 491621713 71124427 68173288 654762132 915079920 66129632 48425 925604853 341716568 376808441 694333225 951793899 90766580 849159806 882030827 209717654 667471035 334208095 197396200 457758224 400305850 573165215 89494647 350305955 691565305 713903143 984573910 907065920 239524586 33291065 332989327 567847869 116127177 436071014 115294124 381426576 609668797 161057409 30136041 425580109 662419054 668684664 991032113 918634985 614019548 989342120 395830437 782022145 402185448 532479088 245518393 988520741 965021485 551714983 918788210 167357679 82419220 175929739 853568482 397086087 637696378 642015272 921978087 298942224 66336043 259427813 750034603 319659334 202924192 949244318 44217284 721147697 587273773 822621991 481603220 235878120 943240297 30015995 773778401 327678171 848465312 44314406 946110839 836853969 653674243 141038739 124711044 360280127 406624166 544987870 38736694 656136148 491716184 249621050 962720231 61338879 989167139 645520424 249001387 224409742 898807753 784500518 753616537 977179351 445197665 272529402 263453228 694901677 223170498 230567216 864580654 664506266 644540943 460442873 679147359 438789941 22395677 771525291 327416138 478825497 123955119 861141520 562578880 675504087 727160812 274183962 637093330 242646358 460518382 661544916 477845430 173197552 284447237 155855703 900529130 661878990 357312579 283268688 735032933 748747850 259947199 17824084 801879413 618108076 744012685 944802796 916859219 826410964 745437850 408868097 490180996 626422971 103472502 241385670 344214992 927953459 60090004 175863270 966390921 733006842 87612921 87735221 350528805 499445144 356073734 115708682 207624809 18850120 729769464 623175090 220603191 857341 566254715 241326624 9673060 579342331 862149013 804136041 224262140 877800993 963062492 517205650 700528662 709245979 478935862 86319269 519355080 791004256 336750162 473040112 311284741 567777124 563977736 169789163 902490354 457019317 481778157 836001937 645694732 731062116 235411159 736126420 314560490 744860285 580741971 103958586 216241699 928381636 643065763 803792342 734902219 384702909 291713606 250328300 73111635 576879110 680460479 843379647 615908509 612347513 99442219 154032593 867379186 569323202 304403471 936870100 58506281 173289758 733786451 867567192 880342681 372206998 597802945 813140409 381569160 58124664 884090320 188640978 169933480 496442570 844114781 812529662 258981008 467627934 341673467 98732044 611037699 529890046 650786423 77088434 427779836 332065451 377106448 358375409 861632397 886189568 943513132 834593631 809531046 570427739 6315115 873319641 458896351 316544974 167804972 821573317 526874287 277840091 87562882 627670387 729608866 980695412 880718505 656371518 557004318 201754179 803889136 228886127 621178144 302636843 60394636 525444535 271773541 849501608 1666583 398730850 316503334 250211000 137767195 649463732 678206888 787446250 517947531 240049419 417505542 509743749 80354053 618021657 177373730 557073421 702837992 850920850 739494192 138538262 524778730 3163697 986302218 795768421 934629961 510552316 504907494 11831967 239727534 618325639 156848513 214696433 385149346 8701382 779819628 336327667 197913896 144650200 895836607 967970911 871514930 201267964 889493079 528564849 715718203 316311496 542436625 438473178 498138257 239277009 451349366 191481802 814084611 305589397 114939303 251089985 211823648 811708418 327462796 287203045 669920328 558850775 71676626 436326725 386806749 44088843 151168722 584791943 675991150 590631050 933459716 732081370 912399040 916634250 474076286 244143204 990953029 892253385 766142753 440121340 147587266 222001188 255667602 419790854 292934277 972290731 586083445 331897602 532469817 475302274 684836200 788673148 410059705 219835507 282707936 481563160 911411820 997987773 295300733 587515751 116657333 532429045 868555087 850948439 70100708 527382413 214494913 279031240 846266231 35057457 209705598 73781189 855047141 254119431 414743603 689777229 918220889 623717884 971509851 402743725 75096635 994556067 946217437 892542675 663613866 60081756 681431119 853149389 684765153 318578565 38765766 42705638 403830023 825234447 134874624 470110796 577235045 293934301 620064420 709725575 408107599 335370359 809899672 507259872 815451220 354433464 133930770 424230506 710702447 983431329 361170936 623413399 550288672 942244445 426913959 37727161 314234599 161553245 967409915 541765138 941241187 892511808 618293980 577086029 570230002 122298969 254169591 809430705 566650894 135823933 553299538 568427232 464394721 17375027 40209398 105288537 994582091 647447461 921356836 849225157 129378457 843393754 983900258 737570164 538397014 964075771 613428371 326917219 336607461 380384561 447992659 513379508 765820445 796486395 618328464 889640115 424244561 779869866 618743262 433030292 377323834 444286896 847751678 925058345 597470936 694729284 306590510 635262647 171159315 710242483 690980028 400812288 439445728 198949861 658196429 379968668 821384817 300780249 749512797 207312820 267291335 276299565 387748735 319124925 673445357 39378567 420710783 143273326 647731932 335684779 601533584 193242531 413153382 557315205 189293913 168697727 624435435 769859788 176922641 243036067 432811369 163770878 50547327 616927147 609022216 740464754 691931728 466513354 996532979 276501639 452571809 502546907 70077871 179062613 464821851 995544810 408795868 788221859 209087584 495929940 688199536 146978319 827225920 600906901 721305662 673216458 257450926 198254651 878775359 227302854 317805282 327797559 166127037 536972059 124604172 768517635 141266209 507377540 515893987 129635242 347144589 233427780 338517381 802538849 355163413 189607860 116008486 321374942 891623708 994579176 187836557 608833153 332139646 487782229 347827482 610306112 341746779 238264841 432536075 646026412 745140393 70008943 948996207 232207803 285818890 584797036 894037468 731921296 937881726 238095048 651759193 320045622 432753291 34474514 917716832 116852520 158436879 41115622 214268209 924276255 710901930 856123991 592618241 235806525 354780980 213550575 852960179 782614027 314441334 844276844 347719387 523927533 577101204 815334896 57425194 442195263 677830110 747258894 149306762 483532045 665044692 944169957 310526473 685753308 153339880 80973641 636936198 929637147 843710597 132872756 738272739 998820771 949817390 676281744 870475258 66081852 753848891 53617102 877535189 67902509 152485156 112101667 261336539 780936045 762912877 660821859 491770609 412030539 185983039 26392772 331492477 990079724 219648331 773076375 802049329 780133328 215715913 277719334 67744941 844366337 802376346 374646011 156546173 551508051 891974729 297099170 958942384 441823506 545186759 615130813 926334716 688225473 145264419 85317748 146282044 794828358 195244210 734179585 369343294 231107433 952151445 694352087 574595597 656965999 801601911 821483676 407396055 176177149 97421168 218495188 239354709 827635074 230910608 590242467 929188957 650794449 600624480 284717792 996704318 675535351 844018877 31824784 265862333 436279253 471917056 631970306 590503481 603798817 545512715 329496051 424033921 14952719 3668704 457449927 480083990 810644942 510162284 905918468 576629937 999414768 966057998 223368933 72528331 983437929 167800710 27815496 799399016 878847100 744232578 578277358 843821443 777583503 975875511 757560762 96735419 799106760 615540706 111274626 840461803 478668959 617494848 358380542 917421790 574719316 603622687 533583929 285971467 291998554 282944039 672756791 601502132 861612488 288981288 298168563 364376873 796021653 947415712 939178740 374663590 251637880 390125713 69009092 796758734 412874031 78706828 479207648 129115859 586361875 927983283 37040877 103716788 248027874 214163637 336391020 277916249 796416457 497463095 462301413 578448589 30590645 486375265 859340974 151627471 180227980 121872685 737146069 549769448 80674495 248758917 987695502 832050702 505316712 706837941 432712178 55060803 30864620 855430753 732022028 741270939 802151437 641232281 753324827 515014670 685699759 261578840 183330032 131598705 638905301 877667111 985874216 520126982 831701620 763266854 907674203 272015079 502012900 228909627 33694779 276090938 403681672 100861302 572267049 193416653 332517942 486096617 567953573 397487703 21951915 848674620 469346135 544619800 926590741 640118604 471544271 639433045 401880920 735643877 358669555 362437603 763110135 893407454 8849647 175846618 972118779 227825402 282353551 322226309 506974391 5593590 543180758 375583439 164653977 204774194 996175834 616962391 184987700 392910060 218166188 3387179 615607287 732982370 22682536 938279925 56730557 504660155 684287103 275104065 680033188 674228598 623205015 547409186 154722655 33328788 857675009 893119004 578570087 333572096 588004836 815959568 155908526 916423579 977933970 220799062 85954740 322002838 703027542 277970268 882958336 104064855 854904223 816252718 935418605 389778803 959452230 385433213 273265169 423007466 357203287 431267004 676612816 379394121 582697170 532211756 218750030 96475206 572314545 217436513 174914468 373805387 17327415 493856842 962136039 425205299 258129124 518028477 443708843 346793439 886401018 490318595 592788661 23779624 487520994 442501362 845234885 442000689 416225394 185922852 328551144 730507774 952383799 99223701 695978875 631936145 868525857 21073808 54078443 548827890 511232078 344892687 80876058 147435181 665437492 722720561 235684744 321283310 891063593 390207441 140143769 514917325 399547718 431668290 62499257 369332657 24982519 355536851 10902633 22677021 975572486 778634614 906236396 382838616 98183418 484702952 514392412 38591686 312932827 687255585 648686253 445541939 21153206 90752972 237130185 44471863 130993511 279050800 386230530 885271458 303457038 683297120 173838541 196681207 690183062 53019631 546233247 782015160 313407754 623216208 531168123 718499415 944423418 73872746 112206360 799662250 553713258 190561032 640078010 698767420 478321743 124935848 255203545 238411042 233990697 286874532 670111857 526374961 904592257 45246556 155389385 855077570 870301963 289265662 154944310 634147555 624679089 602140229 198867405 268229072 889490585 762301460 276719241 973618321 267984374 851147220 891168332 435479777 688019944 921587652 321692643 938666496 113446172 669358799 305780411 655004643 244315328 708238550 514318530 335835313 262894124 226350902 205057697 874616626 604560244 722377692 482777894 705245836 640466053 490038702 58991158 602320452 850597811 708168403 759114026 232226160 393747629 515785221 486786066 433097965 44236767 854691823 769856434 971116292 777940174 77651798 170056080 258017030 108923410 816423465 898572855 291159842 590263350 90262940 218593194 77609735 288944108 715715752 49502859 72228499 638992067 574084102 687165731 630566407 685908749 818905077 818092883 220314768 908541498 659256573 111422465 442418642 813338524 536757512 860948701 96513339 242105332 259770159 616594682 174535360 150378794 654548894 64347513 721242333 327384438 311214016 558949761 605108184 660769687 594301959 117726082 856750240 198560139 223745944 191517439 481485600 512839217 620072950 697974641 915124676 715682689 850589942 835569168 472185453 279786063 710493961 684846752 654783022 117030174 962196415 491049310 693440140 770691574 458633215 799870116 799484771 657823079 660951218 105071260 666440215 486310173 890488422 256770835 946918243 103071504 277797375 999251341 613690940 83993538 923530583 308723531 22699781 133488640 369949598 432261327 275311200 323816985 571083827 319781681 378190092 218483057 235104248 435671045 109796835 676884695 121663654 44913287 648919456 873009025 618809550 925696400 47558383 57003867 451515919 981989886 278613658 587534749 428227857 342242438 354002756 3502779 675112376 52018583 834928080 383097583 992933115 710427159 641467374 12710650 526307344 856577982 640739218 877759600 574540291 832773122 731824163 390828033 219017164 284044588 518958287 732369287 655197321 600235227 888807896 792482903 230187601 630709757 345382784 64482756 560963886 636549342 363324084 83190230 629801521 571498739 168541520 93983166 509700940 739791917 213491488 911526612 790581700 848859890 12745634 905821553 584588564 828814313 214131922 67569691 638350786 663611973 133776525 911681594 742175223 638380335 367588687 589402499 310978552 945128753 738371366 159311460 540350859 298907484 692742766 479372287 124806269 429061248 386448311 257629513 362858590 346529909 550400369 530452896 883812585 50104216 266196441 971587161 352319162 39196423 220217689 430097443 618867530 845519077 654566919 714944143 203980300 505565485 673851247 360525995 628153930 623041266 336987753 424492726 749239087 137700675 961131108 458378285 304154101 311176674 298829168 174200341 981318987 363327774 559255101 280060239 962207715 352374903 413475454 91833649 519285755 209476694 415442364 616275703 573915254 596396356 752529119 922588167 82004513 403579654 936149902 336030855 104992954 765871847 943800338 676294923 386092510 304141941 885236907 770610428 864186378 769159948 25415467 771706151 531792782 159108816 18533133 697859870 781680998 298341549 170279846 977904796 466428196 255516782 763951289 703879545 458608915 868072650 247797497 372691861 561252355 514057449 603376079 740885785 197640008 485788663 510617752 62546486 392648064 948394759 465682616 114633057 67072085 567690924 920898933 800326628 319047426 196994058 36377512 987892419 885303904 85824061 395708344 31066730 682651913 339169418 339385116 800068471 817024044 873723584 63247553 247022237 44502916 983611501 819864243 976170073 704558309 224506933 931365981 366939563 464643263 920866051 187115200 979834261 47719546 382531527 487920537 291087606 311724043 129201352 889278192 497003334 870258920 127892705 636096144 877673476 827341567 307877699 731251563 535121476 563042513 238033115 60330080 187545206 479020048 961804833 243147001 249626457 554939373 871533938 321827238 880073567 624691498 419873375 159140860 876503366 233312619 886345203 821048383 527454352 967565706 891560982 327215474 241221397 685731816 692084437 915489864 860333550 724634996 642561626 866441638 788335944 319457041 17718627 956842662 777020712 973019381 366151995 542547797 313096365 743904945 762967648 408084647 542341427 484708039 993723383 694833941 179129244 321382068 950657684 894971120 960150355 485638631 122114223 188709289 709351655 597659307 554278766 895538647 460547191 335663925 647000805 819033722 813942448 882651035 259629034 598465635 765184828 655828153 598641559 618753549 333380177 214117265 969911202 893536522 226116048 146070598 986306748 158960313 75872529 689475441 507294846 867506932 302051634 390688064 973070473 489065910 574669320 135055460 112975185 643696727 802027953 40994745 141232730 506295637 190580286 197722721 86805638 779127486 843988869 959234609 980241696 407515053 108551890 7907012 321120688 732677043 436520260 947944263 637900135 448209922 950370639 334666868 93708596 574783189 962492269 372779697 743763513 708001904 431748715 801716622 354813822 601957850 118337422 942796636 855725900 483690509 928195403 65117747 963590291 718163925 335644766 503781380 335000571 882962393 843410485 891782995 498335818 318238617 902807299 101768393 130793599 71806667 20582943 105533144 892483530 117637552 92651756 264904490 373898502 823997760 361962124 552442160 104270440 18138863 695880464 726174909 524022318 843230008 450417384 711566753 605305636 900031990 8800863 601780531 674716237 710127826 229330858 751684957 558559396 501320310 407571684 358651707 229600219 538926153 590581343 434006314 981787050 229853569 889686168 900364577 279302338 890088059 237057387 748644805 764861236 33355492 854854498 767618521 617260277 234155880 625391349 392402490 509273033 657738632 46660550 553854367 410045523 308261328 247653354 945608640 952183007 421150769 648652651 502146595 150628386 609952110 718467187 206292813 104988214 368612536 12707995 439840178 738143020 183041056 218869192 448645054 358712334 893840298 5337006 182149709 89176131 986757012 806780768 797414128 957624653 110264803 485117053 583278860 955324670 416611887 571039639 887111022 677787926 155284444 192231834 120379028 669624193 844304476 231369595 222292097 785058314 862052605 26741048 257746485 151245321 351190262 350387074 924736767 821431768 736452993 232947135 628855784 470684064 880508905 964217558 868091203 70153057 70024294 960309670 182780608 798463659 125500505 708323960 356494571 908510739 584463464 863807825 932335905 70759704 389096124 320228828 183080695 845400294 631011111 595655507 984203009 732057923 595454860 628189435 145572256 42348545 246980709 586559611 269132927 185382067 581603393 600093700 737546427 107574048 740753238 887733051 710875012 311918871 152485740 973081174 777276592 41109960 510208531 674002431 937396885 397324887 877086831 783166959 489906909 381786395 216639553 865423749 55580779 233897070 738804833 503065336 282154646 526942419 460577225 954571564 803606911 401702564 445418472 112432000 628262630 846498129 278416561 813974862 592360222 339204573 113478385 988078461 17926031 791945611 874281414 931799135 926553450 6595343 202152561 179983612 966728278 218163507 15074583 179289949 834532370 71519163 890732680 164296660 538744256 62479608 87321651 44953275 321769674 427226962 707259382 688234221 532070484 512359510 192617350 889550282 919981986 286150810 394848790 366420765 287699244 50590833 554905952 583933664 989496083 400218162 679773705 570797225 959504695 22722900 365535285 325110756 487832473 296652636 716292516 658229384 252485637 181152656 286389886 7448397 403713601 207294818 849320945 337327873 60798448 786435907 59038679 261215409 944390148 712452889 104487641 910070446 304678688 822128694 406137985 144584973 271007410 910374770 802384038 29733562 674897265 538150026 741556430 7925290 621539753 502340523 642013672 184425709 249812133 927871867 287086253 469080227 54647697 33586577 690697731 210046498 863349394 143161780 106609709 628511224 998030216 671603275 425845708 762428784 854125087 651728523 420908001 546525059 550577937 264339903 116487484 616300100 89130914 830726816 402761509 369663739 198729991 61795784 309617524 306419841 469620354 616302487 742423565 695887902 32698617 176061800 500909981 3336680 647528900 293854558 152478864 64184065 250962001 638237126 191195250 759178112 153147721 165791148 65502372 85798307 93220970 164696123 982119433 642531707 352797824 54115652 644815692 237145891 108092616 725410668 57990245 479950537 925124991 947219576 799877511 859987699 742696780 74585386 193090958 219774219 205451644 118127472 715131134 635407446 180393549 153288776 318768693 243592099 532885548 149995476 571089709 967132936 338745698 687985454 719646383 256491845 37291849 980519946 68063208 563965229 525254786 860184921 620616570 405546451 517403131 972824455 544903920 510936064 896981207 515125093 968719537 572862568 607781449 444164119 358805292 661849648 289272648 59627316 198753967 743366602 736882026 292291481 398213467 633886322 88468236 593413966 921180377 767785773 909828274 871351635 411699902 832820151 640591224 434262189 543114135 54515182 635770749 186831268 6756031 701952050 27371348 441105588 174932085 792263846 518795697 144836026 777525510 663658162 62752976 809405963 852456613 370070170 521160208 938061498 634636103 587303091 944743704 327438499 246233092 942185163 753396140 150676642 849765247 865959707 204043795 288607682 572024521 559449794 407382464 229952582 141090201 753958010 245186683 43025554 143088893 949216885 546812578 345774262 785287693 650828187 433373286 713172366 778743470 109339269 48151413 97862471 747338065 565224448 219779958 694705694 663955227 679171811 730727128 263752230 469412950 155454937 673243009 82403622 56053368 408883465 232625511 768028330 428743169 668260492 402575171 420300141 540295609 356210329 584348666 513912630 160032403 214085675 546651446 572151525 637432167 587429848 136446601 631562819 589778234 776778501 113438185 237670359 592240413 203919490 251555017 545901324 516158145 307090198 893990788 140377500 798031835 980146560 257351985 427811979 709244803 268844710 105607352 969437696 533049256 435292414 165237722 457207017 911046843 639899794 355342384 848936996 248081858 427144045 688547867 667644992 619430624 721526212 130473226 635883136 672153364 119824251 57088799 738329343 988710646 515997608 264752467 281643636 324294732 391878113 353471423 531622014 790137116 901307991 810847140 920361126 461708472 38814132 149935292 759472873 264826966 59131910 678518968 408107016 971384478 35140224 32512156 620662976 441160741 98957718 484972165 247739851 989854861 565466159 371668181 860201587 53268427 379477091 255044120 223058453 514748167 930916796 140717669 970511947 335034503 159579002 748176429 867902818 108074345 5919481 185715661 943255535 177432766 294127556 315889708 810825893 443495514 436569940 850578996 800901098 968988784 221244056 488660274 782705068 170454610 715899750 574425746 884879614 857450142 875934737 180779154 736305622 442792242 739412284 105301970 153805294 411278091 341325507 122244308 440013628 497383165 716604239 24666416 822288163 857525392 451208751 885052926 940281173 567378657 315937967 713375491 465002271 612624182 289924204 59773994 28417434 634266563 292178122 597077049 857469485 521517165 175199776 687187475 585017629 496827792 945116774 592324841 101482504 134052523 201467370 50519930 990182603 94512335 554467002 248240349 123511143 856687284 641411142 879803743 187289875 612319824 868663922 57086865 950528518 407694099 330595324 25083457 956394383 332980112 21498019 26455578 507630670 233417574 595794444 392138444 337360960 5042045 405261648 709528447 70350062 655078042 869571393 253223766 218029301 696930054 236953963 879300977 643351768 729840758 380146000 142286154 658814571 356251156 988868335 168542055 320776675 467378846 958731664 163693598 505668294 598759115 241127831 770876916 853216701 658645156 688346267 309990653 364553280 785973392 470893972 552704119 269278745 345665608 15708103 299277645 308671117 739469738 206611522 316459651 599371995 527786459 712559234 990367024 119739863 602126417 123474328 451259815 393104458 689415035 852085876 603506547 646678200 717760918 490589800 529442870 82523937 520421573 928038770 566485496 746605 203130867 763486550 525764584 114309231 528905213 447314872 846996075 116402786 650936667 624841777 127211205 373820709 278247342 184302747 428906357 440779689 752203122 778781931 314831891 193895098 355342652 802050331 677495964 902710341 579837175 294230507 344424747 987049788 236961111 414282279 902520928 394794901 94749605 433803318 118818392 826840148 787431675 661414944 350436154 450383402 776596245 114521382 618591332 799300433 777073720 475783973 864077997 593800603 600944732 130174158 279374725 508406857 232731354 34680354 438465496 538116597 478971944 42395028 632671108 127624359 703263426 703689084 628863655 361080927 512520951 131042308 149048931 977930198 358504117 782489318 779438490 70879399 527781712 773913368 822063376 607144739 37381891 737642055 180284977 815967960 939924133 44780419 178781330 651071180 419694447 935909189 243027963 994318705 463005548 366387551 467466370 433400863 704680053 767019499 380719787 132460189 333945537 629365407 159780423 434292579 277355064 30719035 294316112 874297306 134028428 587412524 768954679 131054095 823771856 443313023 495565558 445787665 767500223 544479508 6255099 774526730 460963753 219242409 923496039 690200145 322182923 320397642 128237136 462284976 604927819 147366356 374014106 625048811 82349021 634986242 11906555 259671621 145601850 31483473 144799359 84496509 840351440 278457419 332426980 150324005 370090563 209704781 99063829 446206862 528709387 838105514 175219963 539109609 33413696 653424819 143409649 712996000 115884631 62408231 62825622 970097732 504699280 393571139 741768516 589143496 734770113 795303532 370613429 526613235 811344118 893159848 7772022 991789895 721128370 102965532 787045724 369663407 430003481 408539940 804703646 96780579 659942225 698334309 596381843 664026331 770654520 169239255 250328567 409130858 892176058 321677621 748616450 450901808 979963296 58935602 37049816 44194660 631521735 740772121 762255824 626711870 161612306 548423197 406694932 545660632 93098618 951455520 439554285 267398680 930063456 148721080 601906144 994767528 632390083 420385119 142130727 26351249 935503639 961808203 584242268 336050289 373620815 973988819 955610803 406009335 461217567 560162749 506460444 304312956 687857592 480879087 89708017 350491449 409621405 593964538 563719096 758873286 200772067 814210071 586239024 641178810 791499558 598083966 896841810 702731649 593874736 96681193 163602894 310072750 538963062 760876289 435458795 135886794 130493209 650960968 157278721 475766832 614151109 516757636 434749651 836375842 784913343 208679191 122084059 430763748 863298772 838998810 599744975 710403725 222291755 338746755 136823411 557826602 159106045 705291448 762474899 799191274 814735778 213069106 843097152 104183223 768619596 830003864 681963916 407435976 215132511 916492311 873437607 155628926 961680756 662527803 133926950 795138996 246231368 318813820 320404306 741298198 263738074 121454991 441066513 632558143 194017617 128927040 597654400 861761388 720927907 605411241 389454177 812929524 140380487 636649268 686585689 845090609 627466745 763937844 549527293 792219020 557254458 6022562 277022076 159598460 361838628 997600928 373785816 106358445 415502087 124607000 1342608 352447614 39197750 661077813 368400197 189313150 308551893 419563848 265503003 11827471 908743163 398684461 284759118 72879524 640913565 515131703 647156981 274576043 515033261 934036060 198829096 989678531 805818313 543079204 427419902 469092683 976731946 342959777 647804412 554507206 255164359 109716017 579527380 44368330 804343567 959613790 673460892 554518914 493598377 929921723 722036760 212111943 992214306 629656648 952194388 768781218 220930413 703731507 355258439 219076860 653577097 481278392 458570408 455106122 365366043 54596822 142602145 371841220 491163165 123938975 147757777 508896568 12978957 447895822 890493258 781309960 986964804 445000229 461174426 829825626 542402892 703318428 303921626 196027830 446838808 872346326 950036405 998316549 257885866 537920512 457631410 388373560 162292775 836687236 896719105 866751015 247402232 105708807 779879007 121823117 768354371 735739521 877222728 109942123 332022885 81536267 366561464 560572066 940884307 452860293 42427462 466404545 764479059 368844829 428219189 369548963 492993485 780274034 632384919 483331949 89485279 697599188 657878429 427691645 304534866 315592497 275782521 260918558 583548919 221107823 562462623 887011038 661074959 996785359 8450191 122189061 516582894 855446223 738203701 223328973 537104033 946731697 498245521 979481605 457872612 699830302 808678541 229241513 594732879 161667160 232582507 112382238 789444552 632322510 884222113 529842187 795500665 348414396 549687717 888037232 424809728 859899104 179424150 810479891 236933018 923919887 412589186 870190218 365320083 352907536 250735057 9677026 862893166 759298984 674063288 107266027 490915964 440545053 629645596 429188350 545214321 799180216 627827408 973872466 586075063 498833761 366179228 548394761 331678298 844064853 146540532 112342186 239285142 488276127 830544440 630518446 713629350 204836687 998859620 37838608 808548249 802623 795561561 449948270 834824729 519848969 972228986 231027876 576774543 989632141 708214727 662847393 689732120 204730628 655395195 875216 490243811 469690991 24586133 983226408 603382424 664690872 921605097 351771738 369520988 779766946 468433882 459322901 455396381 236459581 971761775 124191957 962224260 105004061 37053646 780488761 985579475 998762055 871441756 903930554 250490326 987691440 821280577 527190109 716596053 272568693 884145094 547849084 416967228 334893606 515174899 396052379 102769106 818520670 38410327 528313294 163822880 259857098 354561702 617324118 990130689 499988060 138191817 80110629 800664808 115187014 78246579 12776769 430310535 187486828 568211633 971708177 4229723 127182766 398362485 584893278 210805717 158397371 944578560 828605945 983675966 724604246 564278498 855933158 485451394 817001670 430524393 670687128 912326354 885054227 610639743 706356504 519408578 689893193 618438330 854840478 648496103 460855742 293684193 14368840 517800057 122580004 592191447 693515894 737707785 882793006 584165821 475082132 169397956 619241283 281942611 407095946 364486004 719811890 68988549 368863162 382195205 834082728 220702125 716603170 947821408 364579982 211317655 194184014 418512685 25512321 51295459 533188334 252764231 103225241 794286635 376864099 604556234 777878472 557858307 38383553 216687946 557271283 447440223 615814419 699778016 549548498 744274840 758277580 153518963 630018194 77210481 932621487 996585271 720237720 609578425 162785530 145879478 993474351 825248854 119234216 497577258 149932307 495579212 847812957 723221458 518234280 72448741 195459352 622297536 183182354 455796546 48658341 212349738 210634049 667562908 649575369 9045484 247535180 662360901 264609894 251500093 628912651 76337708 487477775 183119455 817683047 264784983 774882160 301193016 940260492 510286736 744859372 761205720 885913840 263739260 36867863 634740171 162791830 625381085 712070239 272481610 719684881 193708863 931942275 560888980 222461119 688311056 680052091 689567720 562770967 317788620 348340304 723106423 909451310 244058570 536738399 683885189 395395203 906003512 448290543 637671060 451790555 505243736 919319800 13650094 216285319 628855774 928045035 406988834 660592180 730341249 981293022 192847714 429558110 794484652 161738293 30795496 480389627 11296861 241298087 895421080 92836261 840574629 953752680 434767326 240660923 364623712 757789418 520312849 562187573 550230565 323039696 30972701 568950634 700536333 330593732 324210649 3833496 148908928 423472215 875902183 129344714 809138630 359126674 819790569 149824919 380461032 121076629 353270565 543984469 909950960 691893132 867445867 656425848 562228954 230505188 520416004 297973547 500064914 171814755 951690734 2171457 25220967 708824398 11598129 614035260 81942568 910394124 984373668 939635053 158827459 64741915 584340526 648903850 503119985 134719478 600274934 267098263 707063075 137069093 419046221 516804765 343108981 879165690 836144340 454177120 162277496 922671312 465383382 154004075 260222690 416413895 131678617 75492959 968571818 303033049 977327823 794062838 128956205 40398954 918816214 190154306 500581810 19216407 800938104 604991559 187063247 764046625 628010860 461827089 870675023 965525471 41407921 945801496 966535829 58269301 418544451 512697525 730350576 155304164 709347745 570823678 188914049 271590996 607854566 820995772 180030978 205980047 609440567 658390527 717796838 362234271 514450229 509875903 810981239 378758974 553418857 403579105 143999661 1065143 54045460 502824152 109605897 98590327 38222020 682934469 34940670 705178865 105704803 938137056 957920089 31545854 691129301 101469200 690889540 373738698 364317419 187300863 913182899 939512704 671224755 809324765 412209901 230616138 159811592 433587328 619494537 148627038 457995260 29371907 301324039 75196729 146908055 691319416 212626135 827553851 31911142 114997535 933267110 39314259 468365523 239594191 283029930 103667556 185102088 903523960 129925193 469841582 130575070 913605083 52002729 133267212 911076033 99090469 277931475 403117806 185907279 294742895 92545246 501744181 154560091 480507174 453276662 727448778 934958272 732146525 146617811 489125554 649840107 388257365 211289866 462927550 226607660 612650553 590804627 550046796 418166057 807324047 852880639 701804464 346602397 608732988 241666113 103691232 737907117 492507515 170917649 659981942 258426066 28360943 432915310 994479323 633117774 39418879 614882387 472304836 171512024 210595456 919246472 555184229 555278197 554039608 857692862 776426158 203101976 723077073 843611328 748920649 242474623 807060863 995044299 83823265 119762538 946660121 607952095 101429808 554181169 937862400 74547091 527003173 138137513 847155160 234024785 69749868 810232393 428274021 824503512 834194314 773588730 518755382 179081080 841729111 634722213 38448340 811541609 563090073 68763288 578403143 764501183 332615591 484237199 951004844 220466857 899614610 380006330 198792920 929523128 412284824 582283215 488536600 824285122 899055166 689566369 601536408 762756482 937204532 390976150 937810472 67370742 31883633 971270637 895531363 951168600 16901242 610511360 60126103 993458995 421801363 728746033 755069393 378087983 847237578 155317252 709933828 430497529 978887218 93648049 20170212 348945533 364737585 739957530 816386678 622400589 260811069 348278140 971903730 903050307 224166799 264416335 542466322 86639787 956140732 411079267 271897788 886122679 976839555 76916909 16329040 73946599 178142571 554262489 844561113 34992873 991772132 214108978 70668592 163962189 691588705 970257150 6290448 783032993 147180061 591872890 452045305 560544839 802621962 822332492 611074850 205252859 583726942 540678593 482804265 507497127 339918757 640619821 607001264 207322568 744280411 49133914 654338061 992646514 130438513 536670052 371620449 673364528 664886406 315721337 871250014 740829645 561975284 951795698 304837059 938633109 885277370 653860039 531145894 565111676 550095494 747725150 242680278 318106182 863777950 366807768 161314545 361971667 912468847 998759876 51605213 618396669 409784843 541891823 695729380 963752037 795130390 469099834 825826228 681579595 835003968 920921802 127447974 282026580 802448833 427748743 853650564 446524710 674646860 531327806 885548269 719864638 243538767 670807818 772825740 736618972 833687737 280291121 151324104 289597604 261433258 872936889 804633589 115922492 224238025 620333405 80987057 717486857 868060530 544342442 642076842 932974310 749391864 165925566 88694301 323132056 489864849 510983040 945531697 989520033 727758837 497294945 66543207 320777878 661387089 95235072 566789678 133425479 172801764 695095980 515789343 359745523 476016049 980285531 662211577 735268144 317027467 22277388 284800449 581128886 473946301 773431565 7307492 553071604 440944935 667313915 436229969 158711749 925521672 787899067 207767230 581962348 808548007 928631888 65854138 869856054 896291426 568666841 404193680 122298879 411431370 933663975 25629694 214524822 697874906 229821740 100163416 804774097 135070784 967313420 469918147 110419155 844703419 321815897 279858172 247951183 318367636 875332972 495221028 543429195 303985408 125523236 238850163 566041171 879092513 405228072 530191302 891955348 47572093 246434023 126767774 71595903 881167708 235156596 413651445 4818527 202165441 381315174 834476042 715242255 457758459 168288111 783813191 589023580 832446288 151406764 765092632 622354368 281221966 912986223 120254562 59060744 203577901 310942118 671923763 244892307 856381585 980653195 215392854 532008873 601707731 934023345 427012863 201485898 122124132 977853777 637817128 595469482 976003005 658661290 611900208 667503342 286446410 375193003 787162192 167756994 343145909 471951825 428321184 621966122 595949601 336536208 421598786 788530246 439300083 629789160 552899332 767104511 527486294 891818870 702420431 272291771 371605269 528721511 700061722 784733147 234640541 438762034 312812395 492134681 775838566 873806169 779187001 680505762 759400040 549253455 726521582 870953704 146436685 993014714 617339204 686863437 299828195 96498260 482605121 229997770 455823115 116109343 484572698 299764306 177344029 221443816 646176471 515317482 194768424 755750351 742045152 714775102 808639719 342737624 574246297 766475222 392175100 321610812 868073231 912275979 307740262 159806939 234176948 332607054 137596791 410264710 52028099 40558971 5989640 204651501 198766461 644311938 152567533 941152358 352415091 838852861 159336543 478914926 321903734 139463791 651847632 995328706 972623631 286011971 634200902 441657281 519120227 215837786 823366449 700917380 497569646 727075074 32790061 123178256 649204083 258201280 177193651 165978529 988088740 878336454 572858421 954585538 365780704 949662756 287140102 149617292 464881689 246768210 498467009 951569455 787657195 850696164 395076848 559186551 815359697 718224496 475414359 939460751 887570396 140988145 962874437 464649597 676274107 371259748 678982320 57945558 647401908 373539518 495432541 529108027 861518850 287176591 811136351 302129759 1336326 500644711 606581809 606016746 894117660 211925872 820205906 554433658 869384807 705238820 960743985 818532780 416978952 833684182 381159675 411919909 956867092 437928042 927245227 151720243 660129263 275002741 220587129 16360677 384597090 782594426 548761555 4553481 952961415 392302128 487389781 407076003 744448472 841159375 317326082 911742329 601563964 814995950 554917454 578488866 596922316 944168577 707618535 154280948 301104816 722091752 279578707 25514299 743625069 507246820 64403356 109203477 820707238 392648748 691311574 219519490 57990272 66165533 867473850 5610151 564878350 315729218 23373230 213522599 656162545 916256290 289859936 519101914 707589399 314440338 652646622 297641804 222843973 712004504 138981233 612239858 322787825 106285494 620681847 43092595 906746224 73916515 902031182 325769811 434280923 544814670 327925396 955432806 725530075 760586148 141669713 90022834 337912746 550078957 739692900 311578127 525443038 993763465 998739546 533336733 623469005 86504720 363167012 165453602 73076331 879421903 810762771 733815575 234851503 243654083 952061160 12422922 646661775 118108768 731079459 123630578 404521389 29122227 482125826 174905626 130998229 287240518 660639419 109714476 325821792 350940314 774886817 656378432 955382427 149657899 562459744 973689742 188475827 502333185 280500346 849797035 83509120 361701622 916132322 863252723 203328029 521131496 129649547 398381769 625946417 547192650 114245308 49690734 487355027 407734702 440558490 892371994 792242417 962460720 682425369 617909277 827615954 527643519 557780545 911379282 455954262 647828748 378654121 552267340 645219321 782038 856094529 822654535 970832659 542848979 923846597 524169130 474799522 168042515 153829336 740479384 67625798 977467566 336286631 184241612 149894275 763560523 659070617 313308094 987541533 346979434 600634218 861955893 940751736 356269245 253857175 641374648 640765124 349391291 613166436 767604661 23862722 34457642 240773469 17907736 185872825 786311966 24595928 847964543 846044582 562380275 689355492 127379796 872445955 423970458 50321946 342345541 513552659 965086014 508300284 521648448 674472717 256684494 725429912 498487557 109206408 783797237 468708500 522941809 841503922 63949098 192256991 606217254 862804699 186305696 73648524 126297953 229629431 523771258 492686096 862958676 531315599 130417514 538275263 34233299 823676979 498978545 131708180 466751381 892369091 970003119 170563217 384810245 137264806 177024863 412228172 649691687 107330900 651798747 740470416 776430185 258986981 715966208 409683162 690368435 333904978 12576636 923263190 521689652 264019969 262061282 500403551 623844600 276166747 731664864 431551876 747411847 496734184 425619629 947689587 609228426 364598510 658877656 886742764 863549118 406984291 557653031 395575085 116410196 289245253 859712103 984824089 862958637 211365694 248238318 244600718 968716185 105354032 145514102 921062379 643877911 744664301 605330185 813430519 742770486 926458829 248568371 622468480 742010145 853626942 282399363 465500594 523502339 871861720 599985515 922588373 748687838 83972004 306010844 7116382 371261796 288730844 913650987 624866401 374253231 365649358 671760313 646548103 932312092 17207984 107954172 528747100 422303651 211105997 898371157 60524658 761594682 392880006 550853223 184914577 170182047 373601074 767870670 126656287 457213902 959745085 193288993 197266268 366801748 46239006 768421216 346270575 40804708 654313240 169147606 572130193 172867341 458954932 496816744 836070880 938888846 804661633 225655251 990089499 683005729 81999431 426279318 906744724 395414524 711212153 566355489 272221813 385157396 353223346 349908064 787065299 910060137 533934365 951074827 795183371 343862174 810679057 296857606 869507833 467515976 723911295 789468486 437809821 637029867 367032456 18900790 285304650 499756182 659391573 681052347 603215468 619624227 54884763 149696682 174001912 481026442 475838550 793539942 926031458 598469612 556596539 981160715 724222422 192206275 230894456 585942388 597558439 279018973 977481711 781624831 541766108 122449179 784892685 340161070 21026445 532794465 455927790 721642200 414293718 943238986 565882386 992199166 5750079 804942809 343493640 415683531 710150209 48259635 990716651 478681532 374382991 526443565 154603679 234513780 851847592 34501276 936118854 843948556 701363270 632629230 291521094 24126995 819041579 261039085 307803291 318878074 368812336 120796963 63694125 307103848 592655421 539444074 720312062 655510913 561133851 465788565 666410288 433826650 389388863 569014471 699860255 322809398 358317921 381120042 268235501 949360654 147064704 755340960 870452599 956167952 467448547 368559351 562391864 653784826 433959131 584725246 95554925 929961428 466552983 797877391 921645862 965694053 490929257 675683513 959665802 607923819 789386045 978700161 862477593 950916775 767236411 736580912 79228515 257241650 545446789 554061345 412397257 283663839 94300253 77533313 555309130 796150224 605190828 129709542 58535055 827432336 209266888 70017537 914425606 517135195 495362600 275391985 552600495 532361364 975479167 919605303 494487317 22282325 529462393 95231060 413725287 884516806 865823038 907597903 712052752 960915106 900642942 193891902 759997652 851345947 132935844 963754541 7484435 253219003 562233090 308267897 203956687 977101865 865775464 306889587 482939582 121631891 693981590 198154531 582037944 176459111 763223111 905168853 962796868 687794110 452696898 617147069 213743992 592433986 721832098 938866008 20252920 989483269 709022346 516350169 3592608 394679059 109773928 252570958 658342410 604452796 760396875 993247716 786835319 503259961 177616558 93642555 280648059 398058802 750914767 320383830 712263356 56965890 950999517 931583514 247021718 294400238 151750175 91773406 51324911 671535905 402818231 234654578 976773780 201461424 587650198 848957 236436960 465123818 465455779 95488340 279797756 902697330 186351279 239213791 784109724 158310101 432443788 716884002 90927393 36191061 696234106 958716821 343968506 318712522 705723374 14738159 637577923 860598835 384090230 455605611 318881482 393578187 309162336 61534733 372318794 776957067 858160773 89801946 887482086 422277657 258066183 817207878 255256731 644900397 54299697 951950884 592174578 307778174 148343463 60646908 440733694 990062418 74589299 533063132 461299857 327749184 734419160 739190451 999156385 732157462 999502676 292000102 119914883 666963849 657320346 311512526 918530466 92866441 951531204 974602532 271579494 781552748 317716364 920023491 999969426 354196149 31693596 136374435 266219538 601350258 815599976 693580864 244436366 580533386 954962439 253625593 941224552 222283579 79026059 183783396 587634182 538687455 337409669 854871561 717238560 533327489 922663736 368593574 992805064 919838615 292839529 993454672 758380354 629153895 396559795 34583436 469784661 239963593 775253235 437276373 781316094 736205424 147070458 333595450 787806913 687388305 654181792 35071603 263712698 437216621 881913808 725755915 313222132 215419104 260475794 736350846 801398216 540546487 329760094 171825422 225698697 509686039 34805418 439312074 952282199 710648370 362323311 901053437 465783413 372641205 1656638 723537350 114204923 127173994 226752906 114392716 959108906 138459470 972623999 581394701 430663839 546065247 75391418 460764133 755335253 167806235 662641504 885659637 554119854 784854006 988084001 174806380 678439534 347563402 78335698 568166707 955741911 113240673 772335257 510775931 854712545 945898125 780199671 551964392 995950313 552694235 398058906 165152654 451067561 658832578 373276013 118399217 364238816 698311694 956781851 14643636 139042779 178955039 860546974 310945918 968599642 404528267 846836669 353776509 211142734 521058634 434873233 779260400 47541300 125335896 914036404 588568891 309973808 47819042 20239241 164767961 362326888 930701470 616680782 187344169 105527526 323752248 893931837 684355543 386093493 269921361 353456852 672671896 39908277 364803435 486580797 449073053 77792139 296911032 884660238 57670135 692883417 666063647 800326240 699290133 338245492 294613118 342021578 678698164 825780590 725167596 636535975 398296058 812300542 627522721 304485928 945185762 30129701 549632379 17915271 577454954 985628747 886482893 447393741 368450477 487869144 524901236 932591780 327241929 484351534 598535025 128660182 325909624 457697038 144641442 409592799 375872401 204533157 660781961 441570050 291987978 401692736 763021335 747089142 15916140 561378036 696379356 740198397 472582897 711578937 453023163 136560225 191927016 593088585 13391056 901170228 212185386 498979439 243569476 208503664 493132852 895576877 467327732 675088658 378810431 501638954 522232769 454480519 543130276 809008681 391457850 340782065 994792336 504317560 573111708 932449438 395449907 370500291 870690240 526847405 693022183 983496760 895303037 124879704 343027528 194493896 732619146 619037923 612334210 739954604 302237464 647535879 875421175 260093381 646813090 807784106 155041814 584433622 549874929 622084192 262116616 341109578 441016638 119130089 288231643 776199797 295834790 874133738 185819749 819458279 405220096 224982380 21214814 358105594 374824475 503202539 306759819 656673182 267644786 20435503 393791374 659712100 186290590 511436883 336995832 59087487 805761704 325816131 777070883 924335244 677044272 423008866 814793712 815139825 489918963 929395566 62181108 919834707 860872797 390960575 166337856 710990053 95235313 567373988 137767812 717081341 613786116 802620708 131353582 869167983 223129032 806834356 478293828 756385886 375327423 259789145 67075701 773445559 753600685 933601769 129778644 352167017 917978020 997086531 474947340 195006266 325053158 254371145 790111240 348409338 712141487 860631477 802993339 70621693 834820234 142710865 44653256 865241888 40449591 243800798 41926456 309395550 744773585 498912074 919300712 886448308 529147457 698339166 604614649 219506345 249605447 774996405 313650339 290408688 892526012 196774265 365846998 27922946 941381275 486721071 912837554 185633788 639966098 648155253 604235859 735642122 963132390 809803685 157304226 677964135 783610172 522787354 563605641 444697713 931990493 887445648 226902027 171650625 447687499 615898622 271782626 681944033 412460725 860215853 626881569 121164327 625859029 963263549 959388577 377739198 62436352 190674456 953898135 134245441 278410043 841928508 219198189 918455104 448809035 597942085 213487872 220197001 346995378 697723041 169229201 618302207 447104841 453106741 336116826 370861476 193713077 342572951 472489529 19230879 117069356 227647097 268065005 806884335 602960877 284400691 516908901 230392288 173264886 927639942 966577861 586521880 368314600 993491372 767232457 765470371 518082213 267562874 480062965 157131212 499528325 346664253 24291295 721528864 651789532 515539780 234627182 881281236 85146560 369059016 969961503 626881895 325004204 135386887 615914424 722957664 786391585 285297691 401945192 711376975 502040462 111034332 35467681 862363998 35885561 974401859 396201664 193321383 288923123 509366046 183389416 196678 423221527 73196336 962125806 207700537 474091111 804715447 88974585 664153422 851445659 198451143 683081282 248392321 124005805 468510586 309916924 610996489 451247690 438856727 372355229 290318647 856168709 108172130 36499471 525087575 498606514 162152553 568607288 87887655 442961968 116512572 863361443 427192137 601377667 431784323 192985722 166005892 441231462 879894799 216708193 500491239 213150656 243837457 299931066 171227102 160636729 57013477 282287240 109971687 632385253 818607284 432400 80293123 191917371 476991526 437603334 854325069 768669208 731379910 240425344 353512660 320228747 130363174 767384019 689172075 922886364 114828723 954879343 410110711 989183 178212481 152585714 316780324 417229553 845592363 998869255 895723573 628049145 330949362 421692136 219974689 930483355 473502622 302177275 718993150 902446385 944882592 763944826 114530012 406976733 810328372 931496100 266821369 75463521 217519144 619920469 68221536 1208304 623768480 204987054 815229729 914273119 374321118 680470953 604658063 210762233 504853809 676714361 141954260 816758446 960146373 106929279 33840112 978303769 983033487 497385053 978674144 88186883 221602721 982115329 913506457 840023457 615659715 327344489 836593445 419248823 700945134 285733206 55062985 798073876 352328296 701623919 889770448 334693596 119278506 733289295 460325347 252550647 809759422 53521974 818427146 457404181 794942368 262490752 312303329 459917818 238140047 849780027 513888076 641614670 427102757 367735367 400557806 593342727 999636756 488479185 236850968 166905689 585223928 816565224 255438689 226695448 203034708 788051138 464437727 164734208 817324107 296099061 711094219 834434121 12946198 769998818 593648644 88463329 77754839 414885085 562041191 633908986 858746505 118019189 70902408 918693592 6240893 931976521 336461411 445398455 210880234 427667014 377453567 228403679 282334142 292346237 675966943 403308839 191871326 428207775 374025270 170506203 687831963 428666916 545238228 917311550 67036188 841249159 81334971 707153513 57056706 778139967 781167784 768214189 764919944 353906727 675273843 271385802 152700248 429045289 228767582 659504593 846335337 778381648 295877785 361851388 790860168 86485088 178064168 769798093 634542916 768312208 90610474 190797653 626446203 885451919 73697343 889048454 786725090 906447768 123817186 539871500 158404806 820009641 881550900 972081070 986103783 799748446 920035032 886857837 829326600 680112551 656616580 191795578 249866888 849598628 479164096 660179476 325638881 769305775 590582108 451382887 876174106 126960840 677937239 726868607 495750578 639361104 229466921 280534623 425430357 626286304 737652886 906856360 373917168 956115226 11925596 51423002 322505345 123539777 654166150 909342760 955788815 470967078 477251119 1394689 279664985 733251556 575154154 3199471 790153233 681834241 15902909 593396777 188026664 467887568 494514398 797834622 483817879 183594896 858372699 272669393 635948118 125141396 867523903 962549829 857257901 335523350 426187434 458103821 75489247 271752854 688292437 842240904 175710048 28576 459904367 917019794 846491322 861934198 920495530 407675900 165454638 162104663 899818626 638542681 860773759 122611169 14015488 756686494 266588101 38469457 694967777 515981005 827189788 195221736 40268065 869569755 340345534 351666702 430990238 597810329 395585631 937305132 681603394 245713051 168876489 335034427 422667555 846678302 948023532 716607272 183014253 95443208 734020464 658126134 543768867 656720897 908848484 669915779 347803708 873430010 683915776 656870606 936896185 588283951 887479560 984934818 424865945 516828645 172791633 358296660 205315685 113275492 7713122 768873631 450096765 88279433 826362178 949153843 735298589 468229275 720382512 473961165 47054003 23676080 695349255 47553132 353697393 888956715 627037766 12945172 999208622 972271162 703484102 758256079 288855935 204470309 97383873 128408414 426802147 542809858 879671366 686100685 348570788 914193656 284627542 240585771 472551092 418327534 37430075 137535685 347203503 183851462 262857956 327567195 725046209 605791452 894222688 525135154 884415162 855449607 490045136 183109178 185484579 774296289 26153411 620781154 831298431 319600076 688838631 242857368 249056531 180662987 563551878 357906083 318142122 300669318 977546939 44876497 748285278 917384834 11884504 184541499 78852216 112906695 177790613 135324758 389493371 860005640 930451561 328540468 540986794 334230555 167336377 978525670 803596683 145941215 633618885 942022677 242269720 183118884 821019212 447360864 837541539 708070025 791640560 454501407 787586164 448017393 288324142 906752597 921988077 514939538 701491718 671655648 563452158 44909340 118494652 12026093 261978236 951147583 195864434 714016550 110399599 309976144 722329508 153394017 893889775 604540166 348221224 447907451 944343571 487532375 369089707 756987953 188534919 866894449 24206693 283446351 259734380 422404703 656356638 650792142 976520984 83640296 890108258 811251772 564544576 441444290 443455246 214534119 975046971 273597720 773951279 895807152 324762707 826191210 813759827 974999063 922237460 690464520 916707856 692689629 554752401 127964462 19014015 314901508 927065268 132659059 265950635 180907944 50676196 218119777 634345367 917154715 547079114 836369763 980199529 846274966 166208777 993350749 900502363 377767082 522561005 479127575 519840133 947134276 713125993 976459501 268754460 296294082 368137736 784490273 122517870 779353640 562007175 240710178 517657053 536740149 820961281 180314554 937987403 859496816 571865591 344162752 941721934 349975462 151391928 817410547 651141070 428216769 495101995 749302175 707212544 675404994 188650997 47114185 916765493 681287745 679453807 321094356 608542697 117452546 217052688 946749521 414459223 685220240 65783203 846810317 694884298 202983494 102868983 108987607 718597717 89876143 520004638 473469159 995026435 486619319 260423727 132485432 591596705 708458889 123732190 720013611 993621566 551558480 263084287 748852449 232589617 882332439 856445249 699710859 104394176 303764254 106663491 127200688 921911929 792620020 704375065 46801303 266371456 293009373 48283870 378744996 706283578 351213363 672434033 448115685 249951299 525387640 708545687 614387943 517293945 872719968 472334321 439836228 607564726 158817753 685349065 446872383 701649795 718744922 652973294 921449420 722379242 661767347 501709333 395042284 687796962 687229412 116630252 162028012 151491021 885898709 309795900 511399693 990965282 933310126 406527584 516816098 375758208 224225714 499623629 288739943 792248519 66130755 806645339 236489302 755769101 277115157 108428469 388136410 636074692 481592286 392409813 754368391 983944996 997412029 24501115 619368243 935436571 826350692 92205972 273803672 37607101 642795207 977926113 161496855 85760827 3460788 58052327 880260569 36861685 19687193 950057088 238909607 34194990 766702232 356100040 144739268 337816989 882966877 272183865 12783714 73678437 4486940 20746226 778626262 362651244 146526744 652073423 514498543 715565476 347523013 498107407 598385679 257471886 258883066 862124907 431920405 775689520 462525808 234513107 276832200 692490899 960884427 355559151 632966521 931151580 473846335 795254783 144554402 721861502 784359935 746055249 483118226 761181533 834585899 212287904 479187267 176285377 886458647 977072491 882190496 646667821 905153876 273217405 484195005 458189021 63503396 783968665 915813870 944768277 183293062 923213963 790438672 628346840 909081211 510869798 334693096 213852490 729663748 924960000 198927107 123207102 345138784 46034808 341499951 747018008 506687882 914363256 929101722 347260829 926851397 470920031 525059976 886499447 124980623 169586187 15312751 958739670 767332197 839794638 123756589 494249972 408481957 42639578 214033603 635594760 770435746 469806949 795127025 226253148 310198690 798696400 533595139 340023830 846388835 228272498 69851936 305056615 163859937 367380673 651701666 190859080 259324504 500306897 106988236 505866667 451568358 774568506 841689310 540408796 366819690 978385146 777408802 329997105 181791514 571486530 610043598 987453583 963657571 110240498 315732502 161937618 839763585 887329909 288597721 699040425 56868230 70661800 568631028 364060475 864582664 62846175 662631820 348269803 308089237 215642946 157216938 488490233 586188381 143628666 915239215 387681341 170538220 913524553 401363414 255708659 218280941 777410971 124888372 470292664 882516395 563493584 389421929 989404554 334446015 637431869 959914252 51344114 689599968 966945381 871512700 916436918 432400553 405666826 487586035 220157403 892505166 830923227 218868892 705297818 978102027 486777352 392064827 30384759 260145114 700169345 288485141 461159461 323748031 121092134 84445312 129276718 952677355 76168901 587614313 452739906 9743175 255394711 235562453 256016240 1440249 345893236 27614703 974027665 587468027 861857315 165358132 790572501 943225708 428908982 211903425 692885632 441285792 267107940 482161381 237813770 582837574 304980978 868824301 604229473 425788815 21789474 393356746 275853706 88477866 556225647 323909505 636076510 916101436 748610888 818650242 438804391 562040679 534013556 197879931 857029462 309181619 734157277 163595940 761882142 675794171 112776772 542244081 662084135 9356170 676627274 617794474 533178425 520626700 318154635 258257511 986619221 592347820 719515266 903058781 556662457 220820655 372670866 500695470 635838718 19404945 770209195 551764014 415472625 339489674 848176100 544419946 527618471 330706347 476479101 523317515 563478878 999975003 95494853 696706001 997109460 28998273 942078442 904154273 586850705 253333400 318842846 204854568 701738321 851356297 667183136 109334891 669835278 489066056 106747820 590992873 350068872 341828223 162100317 945337523 363864327 366039066 141743464 558603143 896213342 273506426 535384849 150710485 425889121 109395343 476536842 549270782 526148428 801731216 596257508 975047758 584037837 427337363 166000752 674264294 527910636 192893621 93858485 483295416 903464611 766921148 580329778 795765191 403391971 493190305 406784399 322005890 804575362 280879563 228390203 410453857 638909796 346045018 281420573 146448295 657255875 627018034 224011643 53950655 737259128 67951560 527664556 382043649 38384562 501949175 390601201 562882192 123953180 622958339 967530953 279670824 821963914 698600041 354555165 303992658 806785740 330470375 129520616 698544989 980127011 663128606 432916277 826258560 594786342 979552678 600389431 902175942 167715539 731459359 819528112 451020558 157679472 406393915 721929430 929044409 36318288 580327757 335320854 138670006 428627435 987786838 992757543 59028343 495474636 43987729 366465436 452822422 567202206 660115225 355964942 473678690 221069691 51134339 366685837 883584261 328266185 914232402 215734867 431838307 420744961 560169304 139394700 799308108 804040975 390224672 284915801 491766925 449851986 669566690 622260712 115191709 648860789 623949726 74104685 348064715 732180255 839800239 505893419 704725517 944565452 873948533 780356036 371256366 618274156 744028722 749273408 632741884 844117968 973414461 344469288 54996302 348462702 16584475 917875361 587604294 829392681 377296486 708636711 747930541 769603890 671317792 742492735 471063859 953773215 619329469 757930821 929189943 788087937 210401950 351257621 370362201 564403889 446970193 998808966 63529313 625266061 797340908 791840375 125391424 219723713 65629785 681985311 198882723 290965774 847443263 415695 915538366 144644373 750501619 36742396 442831705 390946939 482197816 28687576 67046809 476551922 729125874 319981006 740810952 712602768 789648274 594981198 362994140 280703358 992210208 278606156 859213431 731125653 200929811 626460205 240505260 733362968 782847915 614956785 858177799 450577361 643678588 424394604 431029477 410995899 712130347 984046001 224576044 894460800 39488828 738583052 396388333 756566062 506542989 401001367 147820065 852338984 141661068 642185887 975105742 489343849 170663967 281868029 455592637 489287101 235997328 397188445 828235051 434682674 175548313 284266571 813007050 390935395 621478931 628083654 613564097 411451256 776121182 389880495 534498272 154943254 130524209 732447105 97807900 336325142 647895410 550180593 378245505 838092743 177549950 283346974 89194163 344560169 534266022 65472656 412933977 180446692 986822012 369376782 865018638 558454318 526000463 581953181 929928685 23108536 469304934 367501882 212130019 637025275 999263649 786907482 247868858 33543934 217120639 414509777 491569272 777763521 712964160 171777687 288462048 640986566 714433860 126266343 532117209 888188836 773166921 934741839 663711056 254154831 115739709 452114245 716824707 432383515 175435636 785685191 996550670 241005883 373818496 508718617 398857867 64382144 762492472 9679443 277247530 159191135 436841484 338761205 631796796 804717549 46202674 266427804 574930525 4560078 641486726 701839468 352131673 186218248 7746789 291889226 209703782 400031375 715394789 781821864 405131782 322923309 593555823 137586804 963183827 685733377 411636213 327934248 426390197 817993545 381224450 160517683 20406220 49131075 558738633 639436699 367488756 802994092 981565506 259955055 772553744 924571566 982121847 679775389 913048288 15230702 11029652 725868236 732097391 12799858 324990528 517087849 523399348 146638047 309936320 263324000 854679806 357936546 755333599 784847945 779452787 29229893 542224432 303691466 54555881 429757579 593851352 797846357 293164737 131941595 191722502 118931866 881950595 751189864 414564233 80775725 325493481 219225003 199639379 385952126 883436554 796413763 758767619 432238467 883694069 804347699 153978843 416994528 139863229 691314159 3721964 977742969 291557464 576956270 769336345 395446041 515626286 602628490 819587722 238814204 241516985 96803273 792174570 23817260 432345632 799761164 242823782 575722396 238040181 617033405 469917766 643091695 931088045 749159253 900623485 764220507 822836689 144672718 853144318 873068059 927400235 27381301 331994482 76847874 336294680 161255451 382717414 85946913 937003614 272326158 464207531 775945233 248635568 643896323 581095515 379162434 213950049 637041737 612649422 764259563 402831674 323219676 823660483 984121882 824530303 747157306 62681382 441115337 738466124 830148294 337001499 218043272 115321020 747935335 894213927 777422906 213046417 649128554 439635953 467171834 815896828 925111511 180735419 930656971 82551496 424229716 88420525 473797817 10458769 382030294 502736209 418028595 526983758 819524414 188397273 857804093 106648667 227220607 34027398 5886755 749928995 717044368 19400411 157493579 535188623 799787795 328876910 284922003 232335160 898786499 304669474 594337056 468088787 100910722 442249366 502140751 903102624 95420718 131453845 516545585 168622245 512028217 850337525 856230465 486136612 568568072 943131923 145992450 753524593 925769869 593508195 622529188 353661622 548892467 173408430 162085604 751681579 923476084 719058371 449375142 84366988 30022069 193945944 926412373 288311677 818839056 677087177 474561133 386004060 816085415 720735246 743497304 935182814 806515840 88326815 169192624 879207250 615227086 495160785 390009672 498678036 82163800 49211309 957812918 34600202 661598731 760403020 14484100 284493988 417649665 384015383 356854626 774166089 779593180 150877241 331702088 983154870 775411391 826615984 403922957 731737851 493771017 590426798 682009013 349043831 15622109 274438797 267124630 194805146 731253611 731827775 77335657 82564881 475061030 320050159 674236215 854952199 529874425 462640510 26582928 800224152 155612145 441053806 219818297 546415126 58046211 247264774 606850024 375167316 310476336 858984506 925756830 40132354 234159217 440183814 595692427 88979369 504183065 176418807 111863050 469153232 566544389 605331264 336860 271708015 6362158 19233165 957024463 767875064 873890630 766143332 185320411 973318819 407758180 413990037 604951892 252999897 116961652 696009155 831526035 778703095 591561304 189864418 231114408 962516731 863949988 208978389 872894703 884330276 90490783 830113156 86547263 547154436 187292706 253461655 627605633 641086395 698878387 629791980 189361489 460425011 23139604 868073679 416283729 6266676 62220058 779017354 400743958 550347328 684875685 608276703 729849252 842932996 835146808 4597492 274325975 16175606 211042177 385436260 149215317 657850105 521100897 643688645 90386614 626029792 377697651 55852410 13503452 300154852 939888682 458120638 931295685 448628933 466164672 797596361 436156707 181380459 416857178 947777416 199413693 180464328 401287413 824371359 920776144 816623291 125814731 448030907 647359463 929643397 474743866 652878954 224427980 304018045 585323169 119288016 480490151 297931532 68855494 643296728 742660068 330286336 104188356 980446842 525801575 242079642 208881023 701615156 959868429 396103604 798784682 491613577 56089609 585312657 81455184 918377176 141427452 67046397 297764685 947906915 129082469 515335550 296826457 305197061 688321838 544940274 180552194 746843214 837725077 325925381 421543555 290916427 63413992 160081454 662657615 248652654 95501594 174091068 674405522 74183223 144369873 568538117 878311936 958572477 339363967 649625630 657266686 406606632 651925735 450608286 450793688 180659536 628040824 226539356 452317572 286257481 884794829 95187270 877543410 338898978 288400324 689902524 869258850 447016040 774968616 994945930 422586190 239380343 142977475 634659208 718289920 228169599 865120853 661029110 243787673 231210919 316932458 382337458 308567128 252325590 502467461 513271777 107606111 324749033 724946674 426098662 508377198 173124005 556524554 772521191 88689915 743751271 383814101 819124472 511646739 560769609 960070079 899216850 180698013 995905841 317699351 957178044 991540538 535074412 841393148 276507109 486102370 647927848 213793302 777330718 119389036 852836462 880646175 884292362 168334095 376543703 943660092 317137639 458373488 463997241 657462401 717756900 28737371 210087126 620903289 614699182 248452379 360573048 426555545 144435516 740804145 482148493 869771352 760297571 594237483 209657071 299206862 817855118 601107372 164179282 705705632 12984140 963902007 772170283 903137659 661644918 874204927 125785083 447388931 947164271 98134931 606783381 670657316 283155891 519318269 291907263 691337459 999546971 875564588 674188224 168290018 119540498 615976293 117334070 326851425 618486262 809447303 172690564 585225493 523594000 141438757 199266651 635333140 216558810 985334616 233077654 617184242 416971595 594421874 697263832 902212615 694731048 484455686 474577314 442736919 799104912 515952233 909975940 767765940 972962874 174567891 907137058 920684759 253935587 681922332 867609036 654306705 628020301 975117036 10268795 862884646 372556818 323339369 24901059 248744602 499874032 933190745 533465888 419237973 465055513 488488793 897066667 478563165 975416219 473354032 888757971 369101922 296741336 251502989 879596665 48568478 443033508 437079259 592234581 209324319 816117745 25552795 298348269 281813608 385956779 704948875 433173338 210770428 737411434 970061029 943317528 200387299 330313081 740823635 851158991 322925917 119153710 983933611 989333690 623305613 63636817 993496864 953058378 29270496 611235321 880347029 67233409 74521883 925082556 648869642 4946358 954134072 938753743 557805606 475941232 711911683 35402115 973376754 391165895 612283695 114496088 490581691 508468777 188691389 636419433 865162838 380502135 625790564 901940646 303311631 656824499 966026125 915155444 986176159 730937773 937716037 538135723 58676581 815322107 382499035 223857479 630985917 300510436 593840911 147826227 16116967 208902020 14883441 379240688 820514079 62494054 527250806 941312772 425170905 446549280 782596223 889591380 913502835 724970119 534645456 671395963 373763140 841985550 611855202 10596218 718787000 662451378 736450200 166985529 318374852 954462356 393123235 292601308 946205662 949511919 908130071 531094765 272992722 92235251 49019381 808130286 841810524 99023614 936306037 668936745 500757658 273786924 735215294 509544804 275493506 438964342 987851574 472006242 342072565 601170642 138909080 74408035 70937968 571242017 817409240 432716913 523710842 28879016 343603274 748810022 703846213 152637632 350417363 735233939 733226886 645764885 209958668 619139399 856453163 680721431 210276162 585233213 809585845 606366879 926519252 721740744 241475948 429074046 100231482 955592468 695828993 467968654 710330707 294235188 617721818 331185845 291022373 244717907 770375847 310480604 498101858 277955730 712722863 290317278 452740180 139476038 227896047 165573368 168439955 541823726 747239368 63010941 966997990 308207089 890686895 240980356 219565726 351796857 487557541 959491907 692930722 108283972 535781026 213656680 990010126 519778898 885640647 400179213 49378508 139149969 26455777 124116500 289747445 125604382 44580206 974842424 890753228 552279136 327925225 251163941 829311813 192994463 819537040 296364601 313669697 599921018 131318354 28268884 164125579 147576717 346021286 557743089 365736169 906121833 261780646 237807631 232984613 457851439 415394687 449733989 806069957 198096930 125080347 66012921 463625075 707796886 986062323 495305005 747182215 562412142 760538809 632304470 728771786 101235067 182929733 281431426 394627399 535208606 904876715 884235560 891957128 518428419 776051230 742471997 765497854 388258527 465721923 109571954 574417949 337941902 521536361 940732704 531082892 986196156 15974316 266417773 524744388 242845453 877174121 282787031 408975134 930892938 26565657 490876254 436118623 399737439 502700899 19593127 564027822 114666243 416657574 707920747 127342318 665319739 749984421 366487622 41600738 282985195 370778143 72914372 473233669 315300677 379242410 516893539 221775995 605563091 860500943 286105888 31712401 972729369 181862352 729764442 198472390 200587479 695678947 409451299 742859622 457204225 243363286 345416520 996703358 339560486 753770829 56004246 191072862 987777591 661660347 913015268 398152523 432506598 682522192 566216712 177299104 395739664 51857044 242310915 776923689 337473006 145379413 255807675 407663609 82727146 796363463 323813973 685891999 198540972 528559501 247496659 63954147 530615334 628925794 619286293 823659312 578372343 559971079 975784355 962730402 919630966 501541529 499627388 449528627 111971201 5741338 8776371 480005332 293596243 48087200 820408316 918772926 689997170 961565991 957914944 189651364 331795419 895973671 70496712 968343339 769592598 233629046 430542608 819202077 650066744 71465263 864940200 676215320 281580390 384656062 172978076 722930414 943417396 698043673 59668937 722033118 786357513 962854363 655507190 8168366 365528519 293331736 86277705 891541294 860958472 457067413 191449490 8787047 602712737 301716595 669376381 777241233 446353560 300032109 819957727 869764024 678544949 114843765 678603393 591636628 833337723 977439716 737093909 100185889 534359776 960234239 895537143 703028880 453221349 373631540 276859153 114278309 965777963 103299560 525720339 397570178 553210056 304474499 425610794 621451599 680668822 72317447 695075879 635226377 276062716 691694298 295786046 491792619 119018216 365963089 743517182 607577805 235608241 363914524 595862100 396976962 826104204 533936574 458224601 286815166 301666815 830070009 857781248 954955381 74066178 3815640 204300533 926832850 734223623 491395583 518212083 814180877 390056908 614937688 697646793 796987111 142448365 923439374 126922367 608932196 538334335 818243336 184495481 417040674 581509198 966013931 754438911 342666519 691656221 987091222 223960335 119705050 724427405 607172310 667197832 46098781 68811753 962522120 662346644 819387711 203185566 433493498 356098178 511794472 893675016 432841416 87211050 655855262 640614584 425230770 721207444 239627487 69477431 529422359 280414868 93822447 528895538 706634532 450853340 57641150 426048215 588986027 273249974 742999545 6625764 643482027 383300226 861696852 387783463 744909616 535995255 7041294 831617198 292920378 889818854 45569307 677045736 488079430 947976015 444617529 394080295 968975047 829838298 816188924 730822338 133746492 880172621 628656188 373535732 536836068 162994744 850253772 459282213 816268143 245858510 92783916 313733066 80989965 995462792 68327333 925582977 886877932 457615429 870930066 233630445 896432286 478079750 737611592 939279477 807235002 2814067 544392953 360405219 617802162 694951289 105930265 260696958 578880697 700314775 389377559 845839933 780978191 513509959 509174106 273584160 433925478 415212324 445177169 684923719 770796556 59123739 776107906 14950479 956166004 114283266 299269136 28189873 130071547 51833619 51525644 888815428 282540931 460761214 274577953 506767421 558599010 211449926 447989412 691889332 341538589 451271182 110875009 763000984 464552229 449177760 565426588 918377273 108731306 602581847 359657889 439166258 28319464 116064919 688528758 684977563 561013063 986076458 691101228 976057368 965557684 537475499 422621626 33182517 332634613 100338763 933781761 935498272 494928748 289625702 880488978 43821638 834537670 864969514 726103369 423110035 708982689 69046909 585871600 36649276 409168312 296828927 705833113 649916893 490657762 446754020 303191798 762826617 445255537 999798579 307283612 667395030 748935707 598154219 736059242 210390837 616211630 74129894 181769486 527685933 363554187 425136131 320594537 185206758 538244116 879971745 523917122 760259404 337733410 195890554 719817971 981220857 486761629 889330752 26887901 770918408 339267912 167925886 941789718 326945384 398208879 877646912 861138441 468777694 538550 768894724 65591360 703192597 745117522 8941234 507962103 58584853 250821337 878553636 29594427 840591929 940251320 776296982 314197009 248487974 541397505 905110435 189558481 371342095 978986548 916459283 541404443 749009470 105511695 47502384 48328888 539782124 218668741 359177841 916680602 247661884 697057159 392452451 716243259 93207973 943958598 294208352 287951536 801294346 531912308 483614195 105177366 66958027 562439292 231603137 192268282 979554430 231621549 618303886 370695150 352011414 523239995 821650048 957707123 358624076 236605613 728277340 582601188 980323919 94263194 427347093 424748753 653339843 259643188 19526981 535096547 379120318 853425129 795723434 488175186 39446715 948579593 159500030 818970509 311189577 290646926 773463774 793656699 962095095 930469466 974017472 38164586 81449626 743469506 52393014 632865870 804115423 625829625 472303984 596002311 702829178 173668093 567235798 712022664 570461400 499324213 719330665 899293342 864966821 371931024 897669214 911250707 145739348 835339412 923920228 43521072 711319763 39746594 886560339 251079963 34365228 460825509 365096996 608792088 986254366 962214357 165663123 760166927 164462973 615913847 57087608 880054710 607538274 182670255 301207379 144491406 209843737 471929698 425687187 22143254 721467293 196999458 622404446 948078204 14104690 185566567 824755181 816429521 585654006 385229202 379534666 480149772 469162429 146362633 502069804 977385984 84915727 942430729 461537592 273090596 749958756 687600311 829518410 38590260 358802461 585009991 117569190 560006252 579953883 891879259 128609012 147073386 54532072 10628317 437810786 675559436 233240841 209045439 764684989 866070435 473007796 174532428 82827412 387067479 318049205 897460475 318233779 365337808 345498006 221114875 627318666 94914752 479259005 597161464 973798090 555191708 250652703 608685781 644476155 414822239 731518404 69209793 50220645 483495272 534237999 840694040 77910224 352412242 380056830 35607167 286772197 958932246 756296109 947902678 57072095 435635171 603083428 606313914 615997278 883696984 462529463 196397189 485637280 295256057 660556005 291295255 727917330 218093091 464698223 288842265 615089431 597594845 177274520 942166232 334201686 70266412 157829444 834954165 832747101 436370027 138190762 538997443 801147665 451193995 64318365 892506038 13098096 209852035 371639580 591033477 456059210 549953495 879287955 461559268 960073150 45748788 343280005 40869282 518509593 907696943 105831611 261138155 215689992 208954400 395037851 631913579 287995872 451407890 104873272 764656693 931848288 711348658 79551782 945756308 382134398 474148373 726246673 243580194 2964869 13096343 674206804 900671896 921950656 447893726 16320430 378879748 270693962 14039364 442386447 942176552 745945781 380641681 669310056 66672943 723635288 512929784 723147148 902742235 367570148 325453257 953579922 137258409 328607058 796209637 255369193 166544566 469484321 445674180 351157956 374844569 900067661 361497872 903956912 396756446 612643407 340855803 881974101 70805960 664520612 5324542 941821798 98314204 379234159 119901793 543039399 389049893 826827434 115323465 162229090 718794424 187698987 480825723 757923619 11787210 502339966 863402837 918759 13686992 808534849 255438439 998894553 567474000 462833201 352669330 177635576 671332211 947385320 564423874 622849533 865159261 791734478 491846072 644419604 868687951 838095947 315839040 43312974 470257022 570837493 419504310 555702129 556345093 967915132 87062610 509893721 708603029 215857832 550027415 813126263 850367772 939257838 886678204 208756646 298196466 502747006 838742608 893748559 917779215 853573925 83509940 759451344 50832483 324609874 596684212 274457669 72556319 303196688 264095234 88965192 14616602 233341090 741621867 550682807 930126638 714787195 283748546 709226490 724652846 929912732 975275884 766370006 501278348 927112330 218630535 790159973 57614141 336158550 745911966 700386212 235226774 272776072 10004469 458493213 47544973 306646494 926543586 788768231 78903251 45219030 178404108 767538074 548575775 193733816 706716906 133818022 629864089 426189691 20309480 605977158 496597726 150622602 679115240 188837404 208363194 736982833 137178806 603666836 160190495 224258588 221409740 908375088 262094307 598820116 646367307 3312847 459827943 973642279 133048307 366924736 94334119 248736161 640093775 382846379 883593499 61554360 150451060 923931926 676286508 4364772 591667351 842345486 327575463 858359061 205237731 103038597 754975176 702967802 771952508 806156139 300189616 853174688 300555607 915815004 465138089 185199968 412942545 526830578 130437957 616046624 129685968 543778391 200364201 330311037 404613935 445993435 660796574 474624644 496363727 968288979 397653034 249459913 146027632 246115330 968513540 795482526 400589154 425024423 359798576 988130501 713042414 453327374 563666429 171132405 617659582 753069629 316970495 367047443 707944859 42841007 426960389 713706231 429421972 711885513 488788336 218922542 117612997 338014664 703737495 825355238 431582306 203781218 723987978 367958112 523047855 795258068 384495873 149218526 731426566 804561638 348592864 181316932 231616353 152709464 93748983 375864224 123724953 204621583 443492247 322830239 857526519 145545300 9906347 433509254 542284733 106910453 244627920 830818201 545009730 70617038 8480456 40301499 372990952 297387162 844185950 309817091 380287169 263345337 380084416 321549084 747038754 307301360 1447565 161953018 326626060 364371053 786940960 176977445 316237995 302528072 232778038 218822130 814882004 752313403 994576392 935443129 696161730 449045083 521650158 802513947 495613001 295420507 283841794 44276316 414944555 35941915 887172752 942809274 765638418 871112629 574735936 484497351 771745874 236993385 848781844 33451847 61090825 963095061 442260398 200456901 919472450 616051834 702560366 67855728 797639520 213875001 189398895 623595460 664432188 953838116 744109168 446758035 314704173 532378910 220157016 785285109 621868337 44080638 835872185 104510766 950766686 162301076 514037160 67040081 955794010 115157081 778998342 822938495 85894059 902956484 221298004 432437402 909115651 53831513 823909245 165367061 224431747 396706620 533369966 210940967 716950462 540285755 260641910 396705923 789632820 424815930 285869544 664899764 540658699 471391133 87414273 501535200 957862954 48089316 730612439 352101584 905166100 689607852 860323843 875066856 761014435 958777070 649226412 960194921 969710654 535180381 808178426 872934207 330287918 382153748 754978811 587845949 848327720 601440864 727403713 755430756 373088983 718247479 806030721 265862276 483307358 305445779 563066447 816068426 878602524 407704517 298026799 867818826 819912181 956875178 916042501 675464821 474055861 937360510 216803361 673855779 845037957 84596729 655396427 843398349 177181851 408860912 524008293 633971852 137441051 572349042 505044752 468281199 691962647 716629643 851939219 604819649 948435060 45608402 367065622 170190402 720216305 93387890 196176124 948624913 346072875 196978972 32158946 327235254 921078645 861707712 628652117 243423762 392032317 870455836 283488912 969506452 294291313 150047054 639379040 939175241 101601057 617970322 74356966 611037502 505910089 327422689 282670247 288826880 133423070 792936779 830287912 904624025 382230336 819459421 823425223 646786925 723003054 442868104 963736365 835481271 86030557 188540645 138469498 7328269 78155945 956853167 406246980 361909821 916271310 521966434 96353362 925183453 740690583 315833899 727096227 64591541 8112519 980534338 124540143 514228004 493045001 15740942 655997833 922412726 790348788 542921955 638403926 554593385 930161941 207926215 717900355 243570146 562821486 644203864 731244637 712546258 268735756 635365490 940268052 1302601 999961016 463855390 96004690 763273735 323450649 397403370 882026060 535254072 891484193 675977831 411411519 817422285 819521232 757358826 628533492 17756328 497774478 972151404 934181943 771505668 819559812 691434274 40141865 615592279 437895263 769229565 226283709 756249786 617463493 270044334 900629094 276989515 579990147 970048509 932280548 368820967 282378577 659622001 134096286 864294595 323643851 206381972 540303631 834680231 227282572 521467748 291861049 190806006 327782245 926665601 729526478 434795305 924844513 294121948 353862846 696021884 202469928 860057971 160449413 84912363 299622270 255155808 848955376 660733142 782349641 645308933 526672470 275474958 497927662 98745449 916430499 50389985 516959789 950778103 366171313 493392073 889222969 782384616 256890808 292577648 789468546 160002432 776473218 391796888 98869758 925591138 457606831 900855939 217345211 292956290 306807998 644210515 78240775 196787265 472343938 397486499 810399441 648408097 25074040 186068643 587456106 555691194 525366258 927198558 732604460 401863750 835765078 771917203 160216669 928453340 909444786 522796579 651965097 730546286 240126984 28534157 333305823 220154056 47299017 503054421 247892786 157140654 148229500 47007308 379505017 361424790 452380744 685280553 400995694 31693957 655522941 410572933 595578538 149281364 690385532 206241573 164091900 148830540 999130809 304015331 526940287 323878124 750745754 774181300 88399561 32858698 786952213 774917870 76583945 668997822 613255046 57022640 666918451 603035443 730630535 538003071 726625517 378008757 953414648 920154200 757304329 46547469 247074757 43868271 4998875 648276502 861088805 238929198 361492778 434220791 152601082 387227650 744619779 415910811 469566155 422365398 575358722 430761581 399258918 985652873 898904164 754819812 380914100 827298830 347429962 452725717 281792108 761514755 911219673 170322233 182054892 279024917 7756407 257324221 144220474 497375179 948033562 289265865 463016362 426551997 878073380 705066490 646287160 429418150 667634287 704164627 527156548 640356404 963077452 251991683 873610906 995279543 629668450 522616555 150818961 922727105 279092392 215288016 268448151 243548783 522706975 962257326 464855577 865027845 187852072 728664979 695464288 656797491 339741397 70577054 471967086 23159322 389789986 654951218 543126377 317686064 855876532 583301888 639271158 107478541 672943135 106754548 429257309 871627708 20537155 835657038 309670125 749347970 81947998 320279598 211671629 594805204 653094556 267604322 506251112 640718644 894590713 670257294 9372683 319682713 778066799 797603984 18950675 925484998 684965691 290660051 731755925 409490428 599796463 859111406 247909475 328298867 104411725 575614290 293149475 227012293 946570043 948799526 347004548 457145162 606574232 597142732 644767638 175914372 696600347 312312287 555611283 851668542 483217760 432321642 481379544 209793389 471272186 299947607 474832967 321436734 855844361 366203568 634865254 454588608 164807836 80322028 841745550 844216058 303522795 593603647 681796009 339895663 24259460 44233991 421557684 174640056 666629917 899727855 592809877 970058453 667924389 274450577 738879418 383298170 471135668 386798508 66733611 259093129 677191705 436892303 444336074 698979033 264907752 604156340 444016929 908522736 947317309 802005052 533642244 588794069 404931207 40011703 248633266 877877111 926227447 238230852 928008653 672402210 926197440 180607675 721418415 563787716 548620189 830564220 532615422 956035593 622913071 519695703 146307994 847095179 981729101 951913014 592429109 62669807 3227660 927412486 189418402 536156855 277340480 210504685 268996134 606843115 993009844 608090503 77571219 848660793 47555009 863138219 813315578 429625003 401770952 764289036 772171596 710430709 202800269 154648787 654217113 35453719 960018809 88480310 582983480 127860169 547422729 145967241 439928493 340423215 151091885 573814189 617505486 473825728 202560064 543566727 665302981 609107017 930543004 448385596 430400819 308338101 870352295 911292430 606305109 95858026 343936651 576657082 333413342 468864764 746727160 356178479 919222976 142826206 571410910 118297259 700535363 879628450 453882622 393418777 279537589 162553092 375278437 258572261 213505770 39184914 63842292 970227116 977526251 762413105 562635981 422977448 523122481 693198882 922098138 32577104 129215201 647037618 202360792 386888605 442470696 622300142 995157461 604569377 378809725 689755192 639847089 681205401 837075202 26142478 768950259 548594471 45732553 863724232 231520950 712465085 614542279 636594882 621599160 109448684 522421650 213927752 876652907 409893217 533129038 963359481 2999890 185728158 630334306 279759353 79548252 732254886 649423034 714255295 573842921 405079014 381904070 655031476 160828207 441551090 782597922 957817234 494308395 118583171 64338356 952392766 13882189 678760360 990548955 945330552 321751362 108725962 265140472 21255907 381034794 876443682 33629969 694447179 583103673 511559712 231438517 101311285 198516750 835966070 794267359 61834363 195466138 245473639 855101792 417143473 815493675 809795369 543995924 882152287 276423412 365256388 366952440 355981694 714632856 640559747 910281450 802391822 836965933 526952701 688721105 380483306 272164877 205731047 642725219 428956696 484528762 672516879 615609421 56849351 424176045 769183306 250021079 600590736 989190963 98010542 949779312 75479887 374816749 781651466 154076242 138235211 671448915 570389463 67836153 393440347 495642199 543389722 409946001 885282723 897886807 924529898 676552388 170338005 349497798 333958456 272407424 181416485 74039460 7102828 763556139 602090746 553709399 871526132 414217388 451776580 353842884 357449829 344511909 451832161 455378095 377974022 294701221 269446475 200475611 634721689 938636731 219733410 457311435 495155632 668750069 135267157 355231478 757412461 652921749 894341977 393047902 806230004 632292620 636994497 114966828 647426964 884466226 158338561 132590583 932403102 140549302 872180855 351665082 907872550 610624883 823774034 406500449 188932172 730173102 113710188 957502120 920268215 633588589 577027715 295536426 689880169 155374636 657546088 936808384 986177571 328183110 265621136 302720436 331384725 502151866 133615866 201809643 232243724 608097118 31673049 669275183 992825787 633302398 293544184 159354257 471845600 150913817 252523853 765932583 841939726 755078572 904144187 965838563 560091911 965510255 746465167 36463213 34607522 170698704 470028166 725708159 219269058 524293169 483910369 47829768 615480550 630412409 741136367 27323070 270846340 889399854 739285383 862946720 232558143 230197810 593063289 223923947 691647280 341124990 6149570 621489122 847102731 563697089 142904520 154385886 768468197 931140818 291195306 842134509 135170293 709025450 633933675 454125411 844368185 124548116 358763503 206110565 290797740 627104987 169316722 301662913 557311358 925456918 436829898 881546944 589407819 131465665 440593773 572636871 295711840 251742833 685542734 928225153 833187752 763104398 790169624 660881940 935532803 579566598 862239044 889590128 227298927 241249868 294309717 12132294 867639478 964836041 242746333 527022473 607826725 911292939 480095712 332879059 632954228 670467077 108694089 929884616 188781390 800992725 725419092 138866842 581269938 401388276 387682433 101592058 204321262 277391445 218617122 281535103 946162778 973884871 974800985 394296655 636917179 748000909 658064778 873609442 885511959 119654040 71680786 69407723 859774912 441143999 545598909 146003416 5281100 682645590 804126452 767556834 957468643 870737561 301367224 53035806 338928809 270699537 871852931 926140109 977187996 900733924 976699122 653235324 305355983 155852548 318429707 205096412 965273768 776408691 901149644 393469028 766078631 251695267 969673146 71493046 563295388 305208000 9076753 910670334 33678162 140948643 2837882 949010638 809318315 715032634 654524822 564551660 997478473 258490648 166335627 222885522 770376428 464990877 338059229 7508793 673145824 337672143 638409294 904385535 185686750 191497955 73985559 8806637 863968694 983571409 989358500 39261700 367428029 837233088 474999021 185095054 389444166 297291482 695420556 441921451 701623782 821280949 257550246 450689353 176749037 209808468 401554594 557847874 728810827 814925797 870785472 61133735 798998232 669877813 892584289 753967099 668688560 726422505 876728564 599078265 488705265 319088017 207110958 257532860 427239424 121414298 533259658 895394866 684066887 73633524 771435286 526694805 170716105 342147990 138266122 227846243 103330517 588497093 406544421 595467532 149683445 197410428 75039724 51237240 999349398 287528140 730836767 900479563 934947765 720211033 413933236 864099111 994164487 159934688 41065229 429961697 149618200 665947382 51801228 527324729 64784278 852940868 327379356 824825342 97312701 409510984 832017913 484382626 933564341 351062212 123971674 341362319 28606840 468908986 891056851 494392387 122238690 810599967 442731535 256639435 170151969 516187172 227870342 870530861 25471426 673271755 571762241 958405983 760150979 154289556 612218046 176839599 671221279 485472660 500255281 213862732 726183901 52503557 220828425 845485790 135133838 77232217 843726027 695330023 360424394 528982097 747406195 634588403 871643116 9945488 447423639 729158124 305385667 601893557 730120229 809996716 61367281 540800309 390674687 541213463 908324209 726970024 229328628 75159697 770162683 281304400 919406393 145928893 888615591 182867121 495976187 891555606 798464143 166204088 704189250 902428756 293930089 58788678 124046810 744513563 64105711 950016033 413325158 231146169 700767016 1456006 345384840 395346359 513088283 387136728 160474616 213866739 892897748 462760365 193452998 339494936 429359884 535525947 44191430 355402314 673139503 624313644 68051979 904110192 874333791 796988294 586208165 882962110 920839976 31165 828623323 773485382 7310491 594282810 16798047 911573290 760493748 881833975 936029601 192587618 905961222 598027996 89894647 437548257 564411796 392442451 174036490 877367603 983323332 160094926 109302939 770168627 427350747 687722142 98380614 243249475 367788891 472464744 668549176 483954175 517383678 352452563 165575772 797103958 967129374 870635908 10476471 389397131 775842580 947776071 281273131 138620782 188989009 603844031 188528964 403857152 559968756 527716094 447095258 762993817 261932748 483852715 506500365 635830699 197847386 947354454 536598511 767309391 953565496 813548101 2977853 954094981 978048931 977629224 991643876 339616514 603211247 242196972 247313166 688702632 3375691 389390856 61312022 220934187 536251636 115650123 875576811 87545543 953654402 97572907 954368926 761256399 127521974 608408456 522691614 772739312 318477601 143524623 315778220 341961471 39669555 673271321 691997727 899753716 579508834 457364282 700049987 676001888 737756231 536391479 271164103 337433066 398859916 247094928 635590096 716878047 199454081 845786224 430482375 751805790 859011476 35629699 448873236 359047446 140222342 449750987 608978169 350315197 365466429 584112812 402427373 111673316 665883994 149204749 741232152 545795874 632234179 429928538 260628992 222703539 983990469 48402312 585581703 388561562 772262662 817776510 588523771 761312098 992764570 72011301 240278879 571420679 544271931 872617438 611680684 299324408 834395907 924930214 625993958 547906917 394529972 190282732 418892662 703718127 78681847 334673349 276618144 7529963 35762587 771858891 914253179 949760984 701318594 341851529 221600959 894846009 786907520 374550200 15029676 792242674 401375270 714034154 373010611 338433626 728606944 307319694 101654144 670858780 176335077 703503917 416036534 530769581 241282054 299103934 865805564 144559368 15799316 972610916 89934830 442805722 911068440 989286549 939281716 675179123 280792633 406619039 194584167 489723881 77932907 652161189 299146783 669853794 710113372 806349227 201407330 396251217 28317086 518646078 578557907 198892975 360813476 681952551 131794336 783793337 531746369 51810199 422315327 482173411 3175532 751857332 498233087 526807981 254493721 824024116 239518001 165562681 931313627 513600025 73880329 753021980 55136408 702269384 72004179 792941078 29282182 954674074 524895459 534191240 986901240 79975194 90112264 29164603 95298201 125165416 468502849 206766181 573946197 970416902 608304792 213526359 573311686 850810177 639073724 941690092 121268263 868244787 592778710 122750811 26774719 548515074 270081388 970915944 610828012 365675828 508461473 893892196 808990237 390685778 514012417 117959692 238701928 862014102 56438892 85595135 395251147 594119852 625040890 643982426 821834368 636122995 458308988 902308663 741206275 856527005 571994990 538134299 263372132 643579484 979308651 779394448 583730589 840224924 523311347 679435621 588032300 906960685 696595291 113918270 161912580 20632278 137867186 824342644 391793523 49892455 897787250 681312213 790605290 992876718 923327122 25898723 75224026 585270568 335494685 453502366 712588777 27368686 632783184 116744714 649964707 229409491 325105133 200452567 795423700 222739268 346348756 689164147 543830984 330261896 840771995 954036128 171909990 735675971 741814959 31162207 357761336 999149629 529268890 638750145 99135336 565058834 447399640 954463284 32187168 904308430 56532783 174833035 267172193 190646945 22038735 164619619 739861511 483985391 632673481 773387187 81719576 217259238 818586630 848314056 727490056 562698991 374059684 590060655 761716454 503830799 808788397 171190911 238143611 737036181 617752189 934831664 296041512 726989465 604236327 462525334 448716162 838169539 79811863 776296745 955010078 136640271 798745291 691096162 110586535 922000974 480953293 326050063 639183042 699501880 484231254 485056225 111975990 607078146 367190130 222679290 322059182 760022380 558921639 736450731 975813050 31325412 612545687 496044063 986128880 559822808 878413510 72943375 17002678 620729194 689815255 67775763 610677669 293995521 560444879 848671941 19288870 54015046 570557107 505373797 214636569 485587343 116768265 213135827 871779718 372414254 875972368 949048947 917785823 896755778 38477288 779496469 366702529 730511692 637416216 91464566 755804704 637275366 573543766 477927668 831840320 918292814 147357019 160023856 437909876 630206442 805917857 215366444 448612287 357562185 234945907 567504350 63536177 587335056 402512436 468942327 377277937 664234890 345616294 961135136 760033631 69807987 963749942 499124963 980925932 243826654 514996298 177388280 595640875 856654256 667933514 18824671 368821858 935732717 687992987 11268082 459779339 439484703 752074551 852216037 524194883 973917160 654263926 126966513 261932637 90598335 269654287 452685172 6051407 480224943 453632865 873780804 728190019 950896492 776745292 213910300 766388318 340819992 142630026 685711963 255600902 91735034 512055364 383854629 207965509 930440486 559327172 991515393 94104191 614876778 910066523 513994669 489780604 195288547 23766466 443872803 446028930 360232323 536014886 423802734 550681587 813898567 802433742 850052956 336213653 970194483 704834298 794250060 953682720 798261440 729733217 418558753 646245769 270208037 419214116 959282278 632118128 564669419 365272802 301499362 115706628 933716822 779571567 596787475 512005564 841860847 697779633 843370252 93198729 419505814 831056859 754508580 245785152 158570323 565000979 56926780 431755099 948316515 219096271 276400342 214331382 650921298 334176097 508682935 274123746 747412741 533897429 194120215 109855815 96809556 755802175 19863778 788413619 891789101 446413955 205238033 796137401 403046286 552935475 382048779 736820324 310785502 856482433 430904552 554311486 924053636 293367601 861806785 867786765 576618943 830143794 131197354 540879293 332956898 426196782 902942783 212249834 704340021 699744694 610877217 864903098 968994050 882535818 620350124 53668145 403262326 326254330 363011567 388973303 334866859 496491364 548782967 535106035 703953743 766722909 249521691 23723492 918585075 483397566 425794627 566269014 688248639 916587128 344475936 129281987 702974254 491513037 621794268 468099521 849025779 152381865 998816325 714598041 612136330 865689298 13390926 698259931 475337991 297710450 480064321 742219743 558034809 52288799 509667296 634108063 122518503 735181722 596649833 923441107 108139215 31275797 911268799 687289713 10410063 519803844 54910291 920181655 951892481 577760307 621992 348134496 64204568 527628785 475037507 789439533 940715055 581878828 168247728 754838851 642238580 278938946 241136009 260065769 671302894 230572676 742796349 124573339 56174213 916579141 195896285 943896689 56551781 195515558 534550276 433506977 248645048 870399399 442000479 3335494 12515587 972242020 710834303 164014719 555830204 918921966 833255658 863298144 70888795 294518868 348939542 216507127 533555597 551643640 984332901 454389507 845751192 790313577 315644868 177461651 617879396 89003756 436267543 71944444 718894330 550277052 598160624 18691903 738850028 374156596 890198027 876941693 665211195 33295250 644045710 892910314 884917258 487293281 231621225 221713620 473384806 623941494 520851329 651415632 669442814 985662777 72202296 789124573 946070112 937286821 602675263 860805494 531051775 928446604 946643195 122555678 809518301 769204067 554159388 889178980 939315007 807551386 757093310 746769430 270164910 218954219 394868871 770651007 496791042 138433478 639723280 662127420 289073179 795723174 394642264 832626903 439807721 839458602 473104966 79586207 669372246 840075828 562038500 590565404 753960175 500570818 819638728 324295024 45857739 955228933 656614617 158761068 691056516 363628463 350971879 732688753 569556570 465296402 82440101 84376097 765378652 29417751 449336714 744273356 194477063 949626826 560090960 507846263 540695578 893087607 133474463 81873054 281884158 559758397 855574038 471446850 346235404 247669526 864690510 615686519 973992333 124532056 487281952 742695551 882236971 114029893 685275427 848379117 399080162 554918036 897402707 874550643 881773402 756352454 500764955 361435707 319626712 191467550 863882057 228912499 99212746 588543060 487211837 282040438 340671271 783555192 915862225 777091341 200864936 883079504 569863438 571308115 142287929 785455121 96004672 362178427 89106260 796620604 27252069 447178331 97734603 780614356 615302074 831793427 726153022 57745586 218402144 594195529 122644507 374656127 443652140 346104175 995044404 68488166 934822964 253177776 610648125 640720818 886093123 72214373 906309459 762020414 731199571 423862840 658218273 445804953 125290110 178976782 11423398 385033258 954306652 778618707 496497208 351944619 884203269 556559157 481588783 11657455 604150438 377818146 596329488 117844554 934848232 905054 639353177 824050797 636252671 322366447 183600146 26862161 718667827 767469118 937124654 340748153 123812110 407093953 656475355 603595385 645173268 878459418 94589619 297748316 243570995 669483908 349017024 431693130 161427042 520384284 129471016 762781881 53468170 361770315 685950147 761498386 591397009 988587200 282685783 517807386 593482316 56869811 380531195 138861085 921800618 305175883 503274251 659747081 58137957 473632936 400137742 400122406 38735976 20647245 530919621 813550312 343486943 96704188 570004178 255344289 50118143 563537592 407864490 906869408 16723295 241655066 53920273 252081313 758801690 561997872 200444479 536892823 130474908 157577517 607560908 324322032 452158094 512477137 144485260 805255883 579759311 483589855 218889235 497946128 17055426 250743146 559513486 866380385 643009317 605533635 963028985 491073102 74864373 42808905 522695797 56540237 305978597 699229641 163748377 169399153 308721803 741765111 669798438 549660157 582970460 927122085 857735282 252506794 512145148 935290580 258138843 275643368 33829436 169312196 707330233 418487337 762993335 897589581 292191254 170210429 424636301 345187501 45144684 678067337 666717274 876108501 774520072 747076155 657651238 801033213 298567831 562818484 488422769 289911966 532366462 150371622 12965175 545435569 82882556 135248192 395388014 979891557 433869413 520228347 603258627 270394322 637055623 163923164 705852605 451270113 353123252 728026009 72173063 659443384 818444734 438682408 13073433 57604799 84662623 662607260 268998445 659813671 706049126 64091617 596865895 293283572 848899352 549264427 886509212 451480590 219617482 675838922 606974012 192499599 649184201 630842707 49167684 376584959 532055326 988426504 664428797 224626869 641994167 725525131 60017792 631675195 263092913 601562876 732688943 763793361 128213006 669750103 671091080 881470435 637754962 743103638 15241840 749577275 174013270 590783404 92965926 543668820 649621793 740416534 454615686 327402304 792033350 84457758 172587560 261049198 597716295 485469184 543127885 772922144 558057245 878572986 96434805 921859770 397746862 456842156 878830570 559597503 451810922 40763938 112157981 102314807 873175137 994402728 703656648 779111355 237563153 889080268 88595867 489184798 70281852 100002743 678548021 400927950 867751931 498181726 658426522 606580145 156748309 228688145 403589824 31855703 639043555 578417301 520769267 358729862 425551795 420898444 548703853 955543118 536394238 135329547 202217507 454988689 223353999 283621819 117198948 166808598 502451198 152419349 865303087 877440274 912288556 1052318 942375253 884158828 420015039 103304024 24893486 980700745 730018961 268078731 529340584 606024664 841455905 419390104 883014283 209783291 648215051 670548306 22624873 468761933 507323856 655805430 152239401 178405642 163280321 530246481 796168685 613531328 778751714 745137289 258168968 721395675 754320124 621418074 946988436 855062086 621156322 824808411 621885492 486090097 541273819 723962554 447895968 608320502 969068305 933444895 902901452 555629352 25145835 684848381 856354392 666498475 555807225 277338858 781008226 745940078 685021783 571694737 695913144 77408020 302698153 930152717 950128556 856837636 979172400 446157907 678150307 554786261 171534113 452834907 763978160 407736249 450000755 524424908 682188808 216671624 644667997 299850389 884401941 142032038 344847096 454880033 442780780 810973905 577143671 513504625 590726060 891745225 668552367 399244667 253924587 783866111 160339862 274424282 922577206 738877509 252249526 894335733 925100609 527203685 981359591 454998932 39637894 135391389 409548963 15627707 18851873 419084037 664840840 235635910 708803610 220543851 658149221 650244586 626089727 448719994 897698622 85037742 833506519 475379208 710347560 433599982 81561549 674909745 202431030 355168392 757075657 437840577 889265386 656261011 718378142 684073086 971666280 264383243 834276795 418573443 162949800 480865211 882829240 421228668 740523594 390861058 968945599 768054537 16654542 272124033 27853086 847376952 997663715 564756656 43019427 850019057 334983846 396861297 626354600 326510684 335507891 353600819 272347744 102367050 147682965 224391401 577059214 455718181 604041641 9091885 847034134 100059586 70460735 484432685 506590985 101872897 154840074 860852377 19619544 566541601 635593195 549009918 653620514 201361446 949338158 169849492 597887588 563060576 30810611 660021112 273537830 879553818 980372909 104593849 820029703 509259439 229962570 651968593 336364799 901448043 330364456 796426681 51785736 23104016 611508863 791345675 622699118 531269645 77506108 914376159 671452494 629628070 990358313 657093799 124682043 487370637 743053323 985879042 327780213 948404297 578628167 357255584 436732097 773094604 251667968 325531128 377151713 441289712 536173288 48962763 543715019 756127016 83179626 831754127 342983458 912887739 980010263 940234853 333910322 704791800 355726437 138160570 442043560 202440276 122031117 791154642 649453405 175570350 681341345 379574752 520431697 37448807 857352597 10237121 575500391 991837518 559063768 355206227 31628338 596191766 5871194 285413180 739778691 899074478 512027294 528533350 757304856 189114418 353232239 238403741 342947843 996083946 893335163 648739376 8937495 182820578 596236628 409199670 937758496 366215717 17364395 269817919 637311481 780122606 371147528 997308186 691673451 339585233 530779219 315718974 738371776 995517504 184161798 321783412 49893268 788791397 556329466 136359657 38885540 141952643 107387529 515009180 797546605 554259541 411959575 615854023 361582197 846729753 764402833 611980940 972221773 73997247 111427708 107779973 858246808 481898698 442992905 102551462 115400469 946623130 552207110 963475170 629436075 90612780 768580876 197702268 127739138 435048711 959210258 615879224 380116782 423995811 58347697 349582898 316883403 867237607 697407779 570419306 471041480 995155313 489069236 525469475 265232798 708932643 814841980 917135961 515400347 325587291 967454568 70719748 520295875 912241295 735536218 396629683 451767495 80260349 822113878 311296825 971839229 866909575 828329172 446824016 407631307 22317512 668014115 714364131 595123893 837610503 663196971 820176824 663978609 697269241 389659923 35125024 719133990 64683723 946478378 780002339 56041664 767773957 570083879 669324050 885388239 228345936 303327371 987599057 682906948 802846774 80257408 120057193 838158160 953398224 845570085 887530150 291030922 591438259 415787744 434745532 559683220 628541563 150418341 636415271 276887313 962448828 431736708 781403642 775120292 544084304 679945765 720203689 10035322 965170774 362460186 764372356 579232614 522518996 32996617 807058626 415031699 457237054 376493634 3280084 173400146 763730162 429997800 816899367 880226370 645243941 266793798 223476079 918248404 623923374 218035751 604402303 376786883 911318241 702966420 56477895 434510300 86241987 331096376 417526435 374277129 182102447 252318392 227252793 76176125 717057042 517908403 787814268 476170038 935468372 363847694 721075911 412569921 11795881 953365419 970421403 630426515 279422262 788234854 934891403 732888346 568504818 31442084 145956749 350871684 14834654 628111098 729147389 853060017 73854694 405269632 94567658 175897203 582836615 360381613 203246878 943460057 166793259 540749698 410533564 573705246 323458333 182243435 600688376 756601555 392851869 896130879 268233385 624465667 662104436 692000501 307887175 917180748 300903557 135634134 862899457 957156508 944995191 229537813 460148311 603292620 273636953 388619549 840375435 842944608 872496044 742209899 340875946 965394070 878333445 168568060 651072324 954786399 406255669 576668072 600438618 118048368 114658883 205187323 893142720 69269381 776940918 849735119 980802902 539650968 671143092 20968687 470305057 429722203 943070204 996918113 821764897 515312321 107466993 821077304 75173552 141449874 955438776 205859494 324134628 834934370 664100362 315370897 661836246 593208000 399822368 878435538 681106588 780746681 200077706 789360022 337743681 579607989 262305463 88028194 570172756 655494971 50597264 556630227 753768879 415699570 7526023 588281265 152134162 598547032 212115426 403884323 105342351 174990504 271368727 552106031 670791904 318726854 990338227 999179067 773665696 762335873 27601066 285012892 898155827 47002184 465054094 283452554 10584601 21928124 600120662 625078736 709552203 147792042 70091434 217706970 687747514 318521959 98972259 854445879 24287274 210065491 538908782 134444526 461127828 771217729 573189793 149568623 398525525 487556728 683569207 115882191 563840334 453390541 696453264 120119291 218245700 309983959 611711827 557412917 271863504 117431070 15874672 522347554 693448465 359689586 755891333 569791335 235081907 501341314 660111012 279206420 966484421 566895778 433846098 837122370 657096757 923396178 439241959 716495635 408350063 270600648 457444854 739302785 697723063 904418143 428419593 55943964 717521258 449955684 861654173 680508712 929536913 667097279 930776986 792258653 422444579 684585581 988896236 398289962 932782016 331400922 383583607 918733571 491225060 742119706 131592644 604047459 979197971 64306211 61420358 844813631 917083872 524279242 906857250 622165987 132553901 13996942 223293111 862561145 16742984 111785039 937276434 11193268 879620278 995563649 525831450 734004810 716460878 737871388 354672199 632349432 417194306 570519182 658465283 180842683 339259768 656936757 398832291 693724867 935306343 839631425 969985856 590579867 676962309 417731484 81535983 459568203 470624207 1180516 166385913 961129056 285274305 121982711 193233512 857455806 250692675 232662625 455400786 256928067 979208111 849276663 530089785 914081285 6624359 377971845 243581856 71973176 385008173 304447126 145343736 371154834 736498392 146740216 987787560 147706099 564497361 357134498 874822626 921408551 538643606 113732202 735682430 274416113 881703165 759361559 160883148 966836456 609538665 94511130 530153997 843734859 15848774 457049546 404816305 347249796 531205474 792183098 372710975 779510028 584972533 531371895 322580079 473810016 944843829 94823626 693250724 715422784 294235306 581734900 131342466 196086097 161798057 70688674 46274328 254489811 263968264 188445332 342851665 342477852 979455924 713527691 605242591 602714406 194415720 873130969 765776361 894334952 605598345 953080496 441350836 999788480 381374690 149998962 99039614 709606897 561538318 534746950 96454657 977259178 996838005 458352855 37840019 115442143 353589532 503345665 901458316 830222333 573868453 963882438 496558142 40210972 410729572 251084898 849750334 400546719 904174929 2169077 475388336 983886245 32305646 75672995 713276495 807318945 710184872 179416134 611579392 660506935 553884965 265974293 178730483 460767285 810143233 991232351 960233376 840371719 121433710 168129162 52976883 163373107 13594706 881747779 425180881 130176910 218916546 218662676 567640040 44480187 549600471 544521144 248242388 446712267 29404447 493092 413555604 889441221 578254983 282956812 997643049 394852335 925590997 526384992 452936987 583448969 985466566 308115344 638131657 514710452 785598951 800042273 628133130 244076141 471763615 394717097 480496548 151556520 425228420 723923551 994415731 113489754 387399220 378469783 803551607 713106152 264336164 740077030 244164994 283903021 613487069 494551701 665705814 495261980 740803010 788628372 631669115 874175853 113245439 210599066 717495680 799680151 772425821 462911204 919929522 446088685 492437201 724321406 200730934 610487981 866665134 847746489 835490947 530912672 634271643 571532740 645989019 508038056 939095466 576980435 973828901 602676851 914038917 55918401 416155179 170579796 948792270 292906870 553710736 262344877 702649433 103391798 714160885 416930371 382124570 602510741 50466680 800117479 691313071 483443959 688155899 395101653 317723363 345931607 365752281 365156801 10529624 874137350 272519779 792925945 480805421 95166664 38374963 101404862 31542683 166054870 309001821 286013205 117987502 300257800 553734977 638292731 505012686 557039320 450320992 333225298 492487256 515695667 756666641 659318039 85112162 933967987 816197835 348282581 267026291 937778706 207904986 872593273 361613319 223930789 326054379 893496597 566054548 156676785 553333534 526689962 808236131 762865363 500053266 859552119 933463744 52358078 640670684 683336445 353404006 626612642 553664059 54001721 837489819 843630906 316182134 25941312 676550781 480754461 865155843 542248478 188911208 355543095 791186716 9056382 55715179 110017781 209325931 564463352 349112712 330589184 817839529 501020888 312762048 888407847 81405172 253826505 931873083 563668318 316523319 657570862 909411637 291168300 300109411 67863751 605016905 808748575 771710648 455284989 613458741 967660493 748949913 496814547 129912592 984230490 2221480 508694670 661843466 358962769 921905646 293900852 916594753 923563336 209109659 978801987 126962706 830022059 277503145 68014259 498714901 54461627 130245045 630930236 514679207 251738498 798274015 130773088 223642564 626356383 912385598 836426277 838171347 844811745 534132124 308963676 128246693 329276292 799072401 439359372 731256057 653665213 909148114 531915421 973523399 776489391 158905051 974509688 808842531 204530265 839302430 827624732 784802996 172293368 356894902 402312810 561364860 302988335 151225248 922754963 791565829 324727656 721482421 308912136 844213053 665803233 573295956 323438312 230379575 557202991 998344014 540865662 206318891 728862645 341266298 792343774 8343242 23813350 439427918 652248111 45737591 876160122 489680491 443272534 378855944 532329573 510486241 365438615 139002989 794600539 308865925 647040039 43854429 749346137 454258662 274300556 235697503 269982039 193155466 355314518 428309018 655559593 935183025 539366894 215265056 992465666 569417431 65598621 909964722 488259184 442648141 194614294 498890209 985986764 802573521 312989620 190296856 716761692 497922061 692438035 382221625 826026263 196289659 884019670 677739594 714901266 87863717 273728736 791693867 762603088 351907495 201784916 810696434 454789915 863297802 257182282 964541511 80240689 827624734 342516617 783012595 309935961 992249497 744689977 65233394 930547672 184776072 623838212 667702388 519687144 710623509 657053418 25670924 148068703 966167742 289364269 233810256 922572002 407227839 377315176 407932291 434393789 817025394 839003743 263958109 768419851 13650688 487023585 606891586 926528554 207864261 329090391 947765018 480305422 660653880 105898198 17298748 560354590 500274833 827348748 130703691 795908369 843107073 916698499 757642258 497959212 828703362 692118692 335381332 229635373 85573910 551517525 895934084 671325680 673868214 126505673 553780074 868063372 844159995 765113713 246173816 689313494 480190638 805800515 177324945 492970363 652291983 698748490 442329858 708877804 788564136 130745176 408278599 558306698 316486256 117076554 87804102 57527292 726302020 978460403 50390803 688237811 261746795 243262877 643827387 223860845 682572056 717047993 555687785 304825275 421875678 557618886 435548301 900645877 98584396 900939071 522697101 317974480 835669141 496415073 404096029 71912407 741132823 542393521 508389233 302110500 473007025 659768115 833779927 7798512 301407903 192009091 489022921 88576839 547441784 999851112 324971078 209135066 269158229 89618609 746779129 520012000 239154442 27809827 172904935 178413893 73106515 833269056 853068380 68379635 999388225 71401123 498340376 939807805 855132175 937720581 993135083 473443547 211281835 163103460 65131228 543742873 473713490 307973542 716775737 363570751 644439964 920025171 294395649 213489297 288564921 493319515 25166850 93408064 937027873 231286269 11007875 116235421 554119966 985397758 519268437 444518766 665295737 961062599 261492996 662658533 720553039 190121035 535115189 802442195 661700306 752299972 121045925 486283425 11351965 320734447 77143273 766399845 774958463 495889411 937688501 294802984 351578225 420406624 97709811 558671934 476367199 446077704 949526800 433235027 171284937 827041115 25017733 966046301 523588553 201150564 564201168 601035913 434735071 355329521 968722956 651136328 740330930 782336718 322030310 541824086 137009342 647081038 806585763 853142088 917961772 888926973 295282704 49941181 845494300 283781070 235592360 501495770 485318788 630855495 364006881 575329641 201991401 572048704 312167477 909071347 715471856 462452870 671890638 233569652 772173314 279235635 303492480 984708977 341767012 504308130 668788115 651126609 124026807 235367131 309040137 897423636 202748711 450133831 545336419 469136220 603108462 967186102 487495851 728371870 775419290 598992068 382886918 416785444 217465407 430204930 11957146 370456924 187868716 905100890 317763506 339334864 216696589 214649915 587803952 845296955 751842309 697929282 962685115 881734526 349894408 595545913 846976116 898935197 478058463 453146103 305798223 860280692 403153223 429072168 945317017 545151754 136905118 884111132 870500392 920409766 210474149 845793931 915482390 461282736 869472021 805630303 50900208 32565995 822349992 899453138 854387400 167452820 11832961 366135566 396696710 676961819 501689228 992104143 189318694 579643362 833756611 863128511 392051412 877199876 422483916 728552402 486986683 960998327 325635909 566271859 946626844 261020544 817029709 39243523 871176568 29003694 673214769 382791927 469702046 478205883 11851735 686086247 782152336 181721386 577753425 657497385 283450844 260054568 98243706 863347343 204621609 144710351 134148397 964977963 57778140 585114802 259367585 637036407 315796380 312138838 518686151 982075457 363785688 316534187 898428054 778371739 778268279 280068635 886900635 80976420 917703912 676681302 845350864 691619335 171445891 684180511 533927104 915238883 416287783 154031797 141410003 910631031 414444844 594122448 171906399 862525690 511807175 911837888 841075418 910557932 277254823 163887980 53593599 265192213 91944186 774162119 887198782 171107238 173501133 771691082 979289766 826831993 216313568 2524882 468944269 758773933 95087148 93651075 839143576 690891303 487742369 861401543 636356332 780242025 436742324 827580404 430642355 637911805 211992823 768666176 793459143 167276400 2577675 160526691 490326837 230072067 629896587 264844050 528366061 727540058 172071270 968562421 605564107 916962199 788372563 641694360 553398471 107732643 738948117 581624090 316429673 994276199 170087161 416539458 129461309 604058076 163751966 860015211 879955916 471654158 136330895 881660710 118452429 305396509 279972879 735660069 433655049 599024060 161373941 236179098 843729737 990825369 719615059 563481892 210453664 965314650 592104664 70196356 871460163 643962292 267493499 334500932 140831173 284741503 549156141 891331613 109623544 340080529 870671112 537452767 819135550 467843726 913734840 909030122 264685900 607336355 42962095 439360596 790961180 532727634 397895246 943262179 726074763 690789094 101829717 265446214 226406555 907969694 323402665 748086712 31865237 98983037 258669386 164421239 249431054 326253236 705856987 627479574 171588828 833401736 717184490 473160479 687786277 73880729 696053836 375241818 156267987 438211227 714371907 227397069 363122989 3442343 746588894 296491064 82454575 295638997 325119165 81783929 743119458 754478202 824640493 709436454 819026383 874596056 711521874 962074203 544150842 543579594 698067311 35378657 700888382 170342071 339586755 819964212 333838292 950039906 346068255 664565121 170991341 478181822 946508098 361187404 970575294 238911226 933032678 564317979 819890700 43049003 787195741 942582063 125363293 135115899 156538797 648770443 426728246 17815351 922041721 252948160 723120612 569351765 638693724 687421716 670955606 992741293 224883173 298419879 134028181 562508980 915121726 837134733 218995811 681307956 848016305 185130197 963290926 473574067 938198391 389577246 211553323 930865936 739772637 380943249 750908028 965242305 209826663 268575950 205400304 618013857 431985406 463316984 239674718 798511823 587241500 942035747 157989713 351515606 483842997 26630970 448408184 20459557 576308294 228314656 517561943 615592426 893148119 528826961 112646257 171524085 593729802 599776349 335573677 222432201 700299632 869295958 339402673 509640963 91710752 761648302 3927664 206028687 235012239 560971130 271322492 159996215 133730386 320626171 682197083 308474643 393637131 387153981 387398974 241852144 235041526 262615447 552669743 979871358 296064305 252067205 383242741 63489999 464791715 395850708 324552820 199019720 351069467 592063473 613847881 759639410 78548638 559048369 516166581 142170949 245421282 5291753 899782769 65798599 709468738 402946167 535209082 787354750 994513024 913984599 503000768 667521751 815584307 281027379 767469696 61316670 628575791 414220619 960763199 519029284 269018563 184818741 998159327 389546463 148548006 407383692 215461150 129747421 720345535 873364451 904171798 432552251 519208110 529536520 284322692 99071603 656792612 354088402 184000263 58761418 576041027 667826519 335711247 197979827 157953774 4968423 199602072 617712284 738895861 339514718 233654551 991303854 358323819 529269405 662574069 239475314 106729877 440422181 497986259 257289123 470433414 209572730 279471755 918207469 689739828 221996306 65735819 738399157 127449588 564469203 758665006 293746644 498039603 645922116 312500928 102568741 843258279 775952157 852776822 33142335 655885818 169251099 488316873 511800171 975862254 454732313 63038483 138794710 944724849 501129394 224082465 526913 692654600 656509575 640032953 227556319 142748980 936879790 768113798 711373839 171738610 119174562 24911384 295828476 438192743 964064272 281044495 322503003 946250929 41329040 678016388 626377879 127433737 53388899 57262728 984291720 668919475 14601906 483823248 900979937 509669549 789786624 365975723 901352950 372333015 36637795 983982563 811301958 373125163 428415749 288659929 609796606 25767024 147190395 298120193 191333067 71183255 43071059 177133851 826255029 946819700 652856102 422169977 612216104 401377682 178223105 481439262 839775125 652701838 192100273 58879190 906353969 432755984 37728181 796719705 421498699 406671614 402971622 600492367 421684193 784737317 672975204 835423490 478797224 145135825 538557994 527721177 572060123 105735218 892901335 44917884 954524477 157921059 720907242 237496856 898711959 580283524 380981438 792624116 111820621 41372501 612695173 131666931 352805257 878485538 611178560 590481128 293982276 296182011 295736853 8794817 786160164 977795109 245118880 483652931 669712241 129308319 384041036 634429470 897484732 666402892 457202833 575124079 823418603 880308898 671347785 312742866 110147366 740753338 155638583 190618377 858072844 726466202 1354763 121068958 329225305 690216686 919919892 391840342 19232054 941671985 147822210 900524634 534503414 434926901 811139289 100392063 448725940 748155843 16835841 749234432 125690523 829444742 246957037 304973720 106299245 11813016 813474509 986096989 900160387 415217520 539738509 770453134 57875645 962767676 162306866 290007407 752623853 461384154 393591654 403795927 48721260 468960832 698359796 66797732 49472303 379719706 529292258 783094145 99605657 409970175 115723921 488266568 743256367 133938624 568120348 864244368 738888579 15795945 213157266 68282559 216684712 641893648 307681697 953467471 44625094 383591440 746813144 752295292 78708661 141735105 129873142 766028065 765623633 839383830 214503965 69552254 123809033 72234524 434566830 797598099 892380979 427506629 511830649 586719014 913025054 299359576 220360371 153012341 12599043 732756428 348032988 282451266 652093924 179216638 364624808 196717732 714915375 899617594 690221976 673587502 139537720 281949064 272508587 600423200 828172786 634122212 242226056 570894496 781786374 437181368 636561175 19701578 305259867 84300697 796352769 660546654 513286586 55936516 962475098 196664526 883336328 94336129 293451645 702390802 811848763 450796383 408757025 210605463 971691663 207483727 631077834 373676915 753977019 576812747 110628201 910710853 351431395 613081137 431117714 897643013 63791472 812226839 356582278 970232826 701148478 448490836 659126055 86985436 351393599 800241559 631565468 384429385 520472297 636790872 213047614 212175540 977610603 648041240 974477497 129210518 758728269 755925634 686766697 939348748 5657585 27842015 451050214 774856546 965165205 496601730 925982133 133374841 862590277 441708449 883010015 963407895 90962668 506882915 453159129 453274355 662124922 334366902 454597221 903372005 368276046 65538038 105434369 657309114 416831826 6637591 376185142 279195072 366827405 627274435 969173267 695154115 394876417 636716629 315220413 156744988 906343948 315271550 303718838 145467558 929296433 894834484 745705212 962309969 133913406 947288102 59812914 514081030 392428654 96223464 893362802 355505075 986244290 135192094 882863982 474571489 739568572 52642294 918031885 847210337 720830169 431252073 734385639 337940763 77369688 647457204 240815474 718919557 843121746 353353628 655927629 738135662 669651139 48023955 998435569 356504184 755024123 195140829 894671107 497469412 334569968 119009667 37312030 487507654 717811078 750362668 816982286 64855664 784684539 490201797 437988452 582971996 526173380 126569442 576730056 12510358 121641391 502730421 270523547 787062830 981148256 653581212 337167908 220820383 819764827 643549900 220876502 948841113 316414457 860439469 683813390 291971938 262108448 844003143 735290633 802914867 522751637 123044574 259673836 812108104 34012833 201754767 424288148 763300199 477804701 680545730 411637672 718789958 898897705 724888097 665917929 598633146 721138507 67151886 912438307 623147187 818035605 618094061 772393697 614273754 939905333 559260424 928382725 152254918 250158951 565349768 26529011 340101431 845253908 806526869 33128980 900820629 349215613 46834116 61805419 579156577 735619969 188644648 669821737 90145002 865790777 320550954 696602800 973138894 648604174 758619073 949588091 262156368 607657299 572759025 389634040 89250017 589499511 770315222 9522276 559504794 930199910 420605752 237644591 25984560 523497613 242076666 837887459 529727950 425691525 539932752 160575235 293359510 64225894 816368211 291284569 184743954 658716756 647376096 276887313 602682679 544598470 181928494 537021727 447450944 885783804 268440331 87942814 334893564 245309454 96260564 228775094 306135976 727079338 374319714 838888833 173117160 864155375 821299261 361994673 911976610 86723571 210982436 463747953 926647478 979642750 250757465 159910560 315689239 101481841 280278242 962724645 674109290 707183146 91222708 876708770 936267904 162730198 609921683 948612594 784373486 423940169 657958894 355883287 114163627 600305284 403994445 792852260 174562580 203659527 361431307 889435950 563055887 384998253 937881463 96609508 213452192 578907441 745263425 366926336 654352237 357030299 735837437 970092819 839903881 199725511 385872857 370208549 368515562 433480725 654864479 453825405 940215013 187833855 611804077 950993608 426781587 995395015 849963398 814601488 722530491 126111756 385928033 246823569 117359907 164237387 983669084 107528844 11239183 981823468 871737085 274458502 408766192 77018590 745737918 882911082 643872360 445264248 820130736 134629640 572310186 948258609 947425305 346856173 79049384 122728626 926168890 256373571 982143509 879167858 620397342 549758627 484722383 94046668 526332125 606569467 802245085 924996469 136019032 388281680 311552835 786844484 55295023 360394043 701104037 43285546 283818296 63506060 996197766 23836772 472147277 179287679 970010140 389982976 427771934 448392336 621930070 711085157 967321014 204161240 375663164 596410763 221060111 205545746 857436899 146879679 600471589 541198309 66032127 456172567 437970922 127021049 530528988 457822082 434306143 877166628 394278058 119268665 687231404 165803542 328736006 631778281 522847785 998366624 341182456 414309110 226580073 166131735 808221009 330420605 377398881 566288274 442304098 863926233 701930957 206141572 898900818 593705390 638221679 362133230 993979125 305276801 66624485 292298683 840045167 211472389 578535581 723954679 161695996 768043880 898645424 57411467 12096285 90303567 828018269 816193896 827208324 350601124 864499239 325184097 901793340 285000976 885560095 250133752 290493662 320749356 271156461 942650358 561126266 572703023 892034280 59263391 155771803 967003080 898283576 654357580 916750018 157975019 866599034 235323574 358122740 74563779 340277870 799045841 108695752 379612249 789300099 425512030 663566364 909408011 278187456 309267252 800287411 738437963 36958600 759308612 956663373 302467128 207979025 256211316 964528881 526437865 464342394 742838391 932793611 163288898 228475145 9712934 154678568 633001247 682301767 48965668 978530441 748826936 347733057 771411230 694583251 190502316 928618437 527119335 956460515 27503449 78638294 538345705 365540890 327812573 309628158 171977611 908389840 882672638 474856380 912057827 479627014 191352084 544961232 215378149 130125810 928284694 728008724 563584976 525125455 927949451 995122472 182549513 452006623 905612948 760641649 601070050 693198126 972391458 695100301 807187292 59218025 3293199 992137988 412673357 263971852 813296910 235802942 904710830 865647177 532583751 840148802 23610993 415519494 425894624 886790892 515377569 448099252 557740354 819971923 453972165 113162140 435154850 880854856 780469482 223401924 444964893 275509329 16128727 870706496 430898372 571950819 964306872 74676702 338199382 495475776 610818830 749396990 144969854 70491677 194805993 647319384 51530132 376954083 152884571 554739152 245106333 778951887 643953799 957697154 449730933 669813846 300147982 382322136 306438506 429266007 960867795 863858388 392050639 570915252 395931885 824519656 547603842 404047665 170244327 43768383 958635466 755802624 942173909 861978181 498054888 754465030 897863911 11253811 877315272 447030292 804674745 698170850 584652551 716228827 155163236 671968192 811179539 746491364 843243636 954786102 716777393 104902466 240106077 712901083 12029967 740368306 646495710 577298557 798099603 867695833 917836873 332137025 789016710 158618929 862018091 947354863 607470985 974352994 877160861 180296599 217058780 605028505 755540422 118542526 140452523 860765019 644998497 76725185 346705309 193598703 788118898 435470031 413930228 351913863 604553471 950636616 515175255 267454663 10208776 565480434 535886707 664507884 598506639 958617094 162262672 903101843 892402237 677265150 684235644 915213071 334433914 774723419 35982964 737536451 264750188 394292319 609706398 362337156 555898396 917107555 438012201 563416637 302961754 871365595 416847039 237137511 43209880 263523051 100929343 907796428 593466531 528522577 263254751 918039148 160547796 268326944 992017207 864896215 833601054 936755702 933111627 73568771 31424073 368062670 539177582 404838831 261065538 883889586 4130067 566338037 776816794 769126574 822840851 134570635 459161634 832665836 818277 672986478 327535375 985160421 802758475 86129885 128787195 868124004 743462455 242725075 44614242 215026581 871257340 110976713 542440990 549438103 942079982 885222503 175450182 224498990 842025685 290776754 727500337 56681979 170827081 715225462 925605412 298024792 209710895 894966213 372506346 759027451 639612697 119550649 384590356 132118856 961744872 882690813 396789849 869555531 189969803 994176537 355440971 693908650 545742418 547896862 844378956 704842472 518649372 603821375 822599474 72326515 873656569 572347477 781084592 739592176 961685322 103099359 178853298 939704987 258102803 834473816 377236949 61079292 177967523 978734079 49140085 80669880 513562497 711649125 162535752 936181076 764888462 872388949 372054177 128381022 557176118 307336400 649093917 747555116 369310731 201034201 751619099 756074815 250024473 904790136 172549125 986861669 197387145 418223211 118177565 11146939 462472391 132167941 356420299 1975591 374400474 155894546 695419640 346175877 728419347 897829575 643735557 331299351 462314055 852533113 399418494 520191877 967597195 192618363 684573598 309830829 908760316 86453 202566920 845842073 920777431 686330621 896072144 798318473 40129292 542598443 674919105 773862251 837393208 892241297 226702683 238910562 364572129 402162277 553981416 875489482 108809376 122108654 583369741 497158822 376807783 641357609 672449320 214432660 904276242 300563800 295376671 436424667 571307698 24904006 963426703 48733197 482807350 567406295 83843625 358852644 678786838 317974433 366718271 325633670 369521165 762069078 405682933 215187768 470331844 101807855 64133014 35509492 184696330 881185231 821936320 160303487 746736679 599848040 639823044 372497633 118574621 804994811 154769940 777761773 232334748 489694513 788408517 384242115 300710456 967467061 593392479 200569465 614660582 525944908 348957011 817740010 203810697 802749093 840889342 292742965 18146317 309565221 283170365 991355255 908650740 40729760 436782835 190444745 68612363 924932257 430932606 303943060 594956745 219361532 575180451 699221040 881924664 12481809 993082614 611606867 175241292 508048247 46518390 701340012 738484250 24554488 54949449 99793590 623305130 765313410 902459830 553649061 601994471 608969276 115142185 675654033 4203182 714809687 169946273 759007471 170621135 414200827 560405994 649397662 608664624 77369013 352722708 638089133 375522305 159469441 544907588 232351988 166076873 289858693 719388725 515488417 629173687 116710740 345689393 801175693 243872095 24057976 53704505 578380200 382620954 574008046 511629354 847029151 235775138 303839730 732719850 716611 567387511 152075802 648207668 537214675 298881448 147388523 121815273 792945179 629294148 528396445 835087767 111564377 6574943 276666589 930033198 937680306 664013037 407894385 410479020 218697616 678026438 751834256 997972902 631743679 184171725 674890628 45164645 579984634 995184003 152900309 102349582 380848879 236907281 764801970 799222427 630785423 474717146 818714420 31228152 461718966 562469288 635876460 795363236 172488666 352785278 471904246 905089864 423184966 466510725 531212633 171267707 773392815 418557097 887097169 76920649 618690646 435072224 183795450 298001355 10899413 116195468 559014272 529166373 380588113 836186902 811129129 894290722 10859762 785369054 258988645 244733164 862541310 295986538 169718911 141072495 842074964 895727985 626027210 89405992 929689558 672404577 816240359 425756393 895919847 721539040 171108698 860544981 239390264 366385813 135844765 615645086 515495279 168158723 162420835 480737490 611345213 112908366 277352502 943394779 98664451 126755614 361285019 13880251 669468616 853879571 369531716 321877476 796933151 294704264 517887210 721004112 872694125 580325654 156167265 353016218 314307001 132418499 725618632 717574247 516021622 521801783 36434667 25516277 396120988 999440834 952313500 14358629 985112596 856842063 398507623 866609131 781501187 993882932 259340860 621980864 938207405 198903298 581105486 957476360 436427736 873289966 30738420 369180519 999122627 790917356 716601039 86852789 466043015 382482633 164013678 402994153 1674886 489295532 903701839 109229723 54779806 352149061 915664206 715236590 802763418 331211543 872295072 417539036 61429830 131264297 508077088 345322910 472296405 131601514 128324144 834793855 846331189 494067755 783966795 575693341 93724344 980230068 992637413 687408724 438572299 434650448 345735212 560643880 340019086 279156650 857433830 644198210 338567889 961935813 965345650 554965899 418067085 124299016 918708071 541974805 116259437 267838298 935723320 222538854 683898112 206447831 615807755 870317892 464681902 847575947 78190933 453235591 936145033 603769056 311150429 456180302 455143739 301620034 453900887 384731553 523552331 324433100 555240990 565374701 899067921 9635080 562217351 67087783 782589275 290278542 627149335 7077218 229790701 422032115 224689133 573972791 942263470 520952368 780142463 405711122 540344379 288671253 480458443 580400762 772149654 696094984 694672517 916332033 258512551 707398336 880853051 602210438 106706625 987472087 605022857 761929590 56087223 106616856 374642613 10874172 376876240 753624875 656306984 449980398 99039969 381608885 335811653 686126334 834245844 760335976 403765642 194857079 656834777 801204307 914247436 99509136 885051905 860455420 910941339 202447664 556371241 601835038 358253856 750986541 762058271 227078992 357847868 646213663 585638979 989505117 339129371 349232093 716832338 6672024 374286919 331820006 988171210 389529455 232223524 389662778 633005830 234495179 195398243 896625830 568442586 995969212 970874708 216496061 173707917 658980589 494896762 166229816 767773202 176647906 17905355 236791810 872239462 946373224 348800400 978799372 726511724 57288464 6064223 656222355 881411672 37622016 642974899 602478275 682361460 176951152 683803021 839891368 954872614 208242150 452296 838938191 963449932 903396799 614919430 871002845 656085390 361071952 721962077 548822397 621908750 698886317 741123454 320931250 878281103 853728238 662668956 95984979 776662799 241635968 355426138 190223651 996519034 373769690 682146982 473347360 614473558 520617053 798115214 912927805 580393065 763819612 714802237 1920466 39181380 220892728 706582046 520746440 414421955 74688243 396957715 85770699 102086423 320097029 520391415 100415681 244340798 924357764 35309436 333801894 431891518 130961400 781100511 257477049 97685246 810267350 458923629 720734568 846655286 866445055 982128006 804315923 307930701 631563274 84571348 963335341 138302675 957557323 743356662 455754453 215699793 204568229 75868659 53486914 872973240 335916863 649011386 9361768 896673860 117004396 591079429 495371242 920451988 683108819 152354415 991944235 855187912 394872688 513956956 937509699 524272498 338476551 758829691 704929922 85195534 287821520 593287359 64386602 286754953 293617897 185282835 737124080 706833119 634043934 226591370 221581114 696167234 48333827 975054176 851443205 236542860 980244298 131572543 84584575 300027839 521006912 9471088 139649261 996602620 299292435 53995204 496299798 328034002 753203587 187553032 451177507 65255429 504370042 331139259 327327616 310219975 62964143 768480904 65769852 601495606 835418626 126705186 934377089 4650585 92577885 361077444 398503887 518845282 548394119 272174176 165519664 500024578 287052736 277651377 458109956 291455169 272621999 516691528 454446496 519682174 498463832 935575623 767714222 742306694 913003614 953629993 891099700 129729305 140166300 554824119 276361969 566950342 719027197 205178547 95624039 768647653 251503365 958892057 256010377 203406650 344199754 709137417 770610839 985691170 236532965 824601415 110826545 1205121 333819357 503436081 172731381 19054880 82371787 793512416 309195997 565002819 405752769 214481308 653995345 163009877 533461899 64011688 527541415 96802581 784785238 671023192 704689974 798164403 61620132 794337820 504349394 312485600 747612815 209591276 822779704 173683778 82807304 436350056 58475982 173244442 719131564 769247736 697104619 816529526 944898157 233184357 673764659 933409270 124407643 617402202 378495570 845514931 392519556 818868585 25809606 954476511 471926423 284780770 795509748 186878830 608982681 233302393 490001963 171624912 633896921 999125597 863291130 553660883 756425414 604850965 405605848 159499721 732764686 701997479 237151880 838283 852066124 932973219 47189382 594002944 999259750 162818534 128237089 371801746 737987055 122818185 412421774 761070261 639764268 231455187 699265421 393308518 938425026 377278861 444733911 276160587 457218704 683682603 222961692 184905303 434176098 465963365 110812845 106916234 588079988 840065307 105317535 132190198 405797331 982510883 627140872 921972472 557258224 500817205 659191426 491372235 972217424 978932349 195785717 89036303 94920182 902494201 920059522 704694810 546166483 675363853 449455440 638771690 467484923 8359623 806779143 606562944 545443916 85191930 248761796 940649851 212508617 248738261 521440284 751919280 743499571 874372093 432963520 187896854 716472677 157756197 927569079 591232690 958011897 798719113 77473480 515932975 431698688 470962918 776632533 263693675 574685808 536443685 391951873 344867639 791982699 734187844 87062164 388217683 544508755 314329910 688620957 336601970 828158749 113458756 655730289 732517971 592556297 265835891 701605622 611421577 517379008 67746515 865815661 387191544 36184613 613033190 711167969 442138637 564023854 559991898 164830692 350699145 933457998 563817913 870319895 736212601 959536435 74468791 402143822 129334029 744612322 249016522 462217557 466119120 376095562 836505004 93274908 730591291 321131525 813842610 321245311 966127816 26230582 129146861 136474388 673888120 716493906 244150137 338937087 168614534 819949683 890610756 523366677 520380138 493404302 580275439 471091986 807407200 493548370 729861304 912876665 686616915 550958697 542054747 449441283 730000651 923454890 334228780 435766084 736285945 426600813 714326207 775230900 694711217 453717186 928484270 296179580 288938459 492337512 377793349 832330092 796486685 40120728 117047841 827461626 746563999 791167076 373169035 560648815 472429907 417245021 238089215 505648662 79782704 605012783 524635470 238084883 544490375 451791594 976574256 141801481 845889542 380740140 294154995 135169800 762801237 322579008 256307408 401190394 164851256 926761355 858232482 990965052 371019293 180997738 376235748 612494578 686170794 791852315 925053159 418559039 586805170 343672265 600212041 503461266 613548242 493288868 767549647 649308191 749728999 880240237 516998943 384846118 26001576 680642891 788398019 969930553 835952613 579800121 164274058 886345448 526649190 594220785 500244805 126979615 94983362 529240952 53438096 383442129 628260038 461259400 866094783 442764613 834677871 153426674 99496090 874112839 318324514 515694312 769084656 739512218 470486683 575957844 47135047 858184112 976115220 945604753 838391014 635743060 526005218 839383808 253149006 759159619 240177530 636780845 902315493 516646 265717038 650809833 81309857 359564095 724769511 685708762 403047383 381598704 483083841 744362957 295309761 943356321 22657475 670517161 124210435 58532677 316976941 607832795 651914118 7249585 59849698 742633801 674059358 97383058 691946544 58757838 638251769 537403010 563663905 249961055 573897963 71209451 274986931 319479310 298380435 51747123 33338844 244182230 784510175 3117380 613086369 93436804 607433120 430542457 142017855 775014686 917233148 207641379 440542855 356062111 642453036 133414373 808192335 218164797 900290924 452893275 238804006 696376983 664664265 878955722 95865284 125726528 299831178 945186388 310822313 884363729 218740274 440309530 203308509 868102090 811698471 368455601 575508842 898434384 48600329 456237460 284180639 718234715 834759753 896860373 367642911 873394564 837804795 376132848 830549454 158883776 295329782 361028950 613116136 655851734 30767865 612616120 770161140 509882259 772980340 251751053 344336798 530300975 266878471 538238170 203040086 685495356 909388026 290109657 769870281 56501064 894301700 648339909 549984130 383512015 183612963 239937759 620033097 241576689 465917739 420541124 994269066 137663895 659980384 594979890 964637023 455581627 749866520 147079282 201181169 567339336 967041247 489661247 743049045 390338879 933387470 840015064 278698893 355128078 515953231 116497018 564569510 304779560 951033001 777579065 368314799 108197281 19280735 93170511 908987166 805040200 963052520 652708363 953405205 826754603 23924266 299043307 314161656 239918285 809410655 184522450 143706513 220142095 78904623 268904853 567554812 760678990 775728572 372816829 929749801 60080913 193583016 544815916 52815360 711881402 150192256 865593075 872651589 897127901 987524161 901948880 928923009 299249173 825565422 676589705 884585415 710109914 477202548 143918145 879475217 824111472 992665608 4293574 238378715 637209461 853832898 603475096 892880841 602237360 894565075 842811033 134575322 358256365 894614911 904064626 296311199 388870803 958426839 168303171 201685567 389355795 225844676 777678211 132584758 562407941 113370820 262513718 254136863 995345965 658538135 126858347 647913872 51463409 751222803 391900301 155344205 9353021 359565315 38205728 503407348 880979753 555573794 586452474 597286354 355910747 541393457 149631923 739123186 177641219 601105639 564776564 975732055 64534216 84355447 355864624 315301473 393467434 503796212 247089323 165028653 148438879 992983813 504892115 935954786 140397323 834051221 91124750 810215520 40425825 652779146 462324940 102950645 210808178 981613956 925099237 801903591 293589229 79830352 937956715 206416480 662535052 803442859 50735444 442510244 380140836 614510191 896665111 533443954 685351818 726374159 514292778 855971579 522963237 690165507 978360948 706638286 307540843 404243019 503351816 96865603 676751632 567535346 300646322 21430762 718070081 966292193 143754658 928446266 928003226 590415232 197546964 182617002 557486390 958571794 679478868 420132117 269301358 662334481 102690872 426766208 210225995 771692895 244579054 588350773 773442561 859066801 428088764 463376412 947434715 50595868 566205320 119482896 526750953 534848631 864067998 865420077 179992255 332273746 967856845 334420850 661422025 959328736 937846072 646814019 758148628 498371379 971913072 82479694 895873788 576141106 108968500 865876451 87341302 610617510 813539954 690377671 233099592 695759991 121131046 213175023 788917826 460563882 913259238 523257221 470135496 187554275 372777315 371970678 477635014 120193240 416489764 753824340 441058679 361785880 603129631 998206798 988925218 156466614 117055985 814833933 882118511 474055099 981891221 713461530 822312774 4059019 562699588 415887103 711167228 717007214 367996012 580513190 485226660 614764589 60814411 399979412 219282328 304126051 250391318 46456841 717825725 246481273 308577563 532793834 385987371 277821319 69895237 894418276 115171923 885896962 617291029 165759280 210179283 216697607 922706462 714132834 688181952 497111331 164928082 274021560 865836169 207006497 397405398 359331870 140101744 38138198 365305727 525277006 754931829 613800551 581149161 111072242 327174615 570695900 451988061 474571486 774587884 247947409 409431008 108168427 716206961 564955434 60980190 209181255 488177592 589138964 321592054 710215967 298472782 752028218 134061621 669514514 740871315 872307156 289443447 572741801 98501757 777287167 432420199 406468773 333391986 109510417 396970924 306463414 46617636 508962867 832329835 988971420 19726469 319961056 304221775 564915279 189249370 741162227 2984151 803520646 523883791 412435143 684785797 781123192 897044219 827133388 817115603 978845857 559897248 812859946 571669996 194002395 144489926 302958410 935566544 840333120 290011857 673645829 878430328 76368326 722127843 430169694 405429172 451223341 465711205 771845112 831800400 631804088 365712986 90554412 33553878 981688346 818994850 469051414 839763127 234433980 748001518 283766614 689053954 160978488 825503213 878254922 615695852 668777927 188973615 300850294 337568001 71125750 533830305 190916728 278587489 982739960 218333060 692629643 917543880 512335240 626341548 974440163 456284586 408712637 890956263 241799470 246592459 545734435 383642634 295814105 568395433 485523597 208614558 338697217 507794635 706052210 267202143 923001553 903648864 329950412 501421417 635975296 436964501 698933063 761759422 664498028 639293755 445757475 355734894 302587328 219361249 986923454 847275492 227905429 40385288 454533703 955225897 85908475 538877578 12101559 962948612 834233780 712285765 666569334 404809932 46599192 265845915 179367613 656822859 845647583 975414014 731465954 561134322 773303761 830389958 102454105 984547240 692451278 810982985 951464429 143440747 655416102 71987304 614979942 689321354 17450714 71445079 227354300 107409362 493943722 427810764 869275174 534109690 613983602 690510931 306070002 999336723 355417188 495602518 438879545 872273633 67849586 243838176 141808650 979035184 280571073 184397990 441064208 779145619 750603063 990747056 174488948 650007248 459132248 889207776 101411286 860711112 479296054 715225541 110342755 77088519 931870061 699189808 887272065 771563401 320477285 957181284 421280675 908406031 666049449 747692984 469302328 193652034 368381567 704027761 908545835 555675068 658748175 845800483 370976780 993951876 999557094 223888326 104889202 424536923 804417031 911597977 579918349 391289897 126001197 514306958 421548159 323466074 595325717 296617517 527455675 294409217 694600572 648574660 434249806 851793167 888116891 459508797 652834818 428382501 479600638 711330445 787756497 728882189 543890941 895942278 930755821 336308448 717427323 182602763 844149345 285323861 508712176 932662131 845031378 856019809 572603655 400491372 895997140 42884486 926291372 402124190 30772752 666918346 924729776 233161300 941343126 761928855 959461063 35419979 459358731 683048422 183376112 570376791 831073315 487912226 468589928 254973158 330552888 700742642 784309069 656827503 416230902 398270852 690536660 780488422 565736892 872830729 873556211 796558378 19492936 487380375 44465213 338368586 947499586 626565141 61895480 587813823 335761948 347646173 454453884 249186162 527235761 606909494 719390237 427521405 544241427 311589780 786789317 390340172 308293212 727176972 996195359 88087924 865733062 474745453 776297425 882041272 505111472 461352890 171989112 132308016 656883242 13743694 52221280 526002974 944231000 170665461 830010048 334017534 528223708 539014397 821529680 257603504 261035919 32501188 990100856 8518657 438647099 332949393 201546866 817782181 731911657 972020737 182676955 596775635 579431436 372752904 647103083 107495822 412522998 505660701 197244316 670068256 593874836 421127908 488878599 288022621 250135677 280646370 178690343 898999091 807357127 730571096 381167436 311485120 102730761 109885863 846278545 207553669 808718428 315300938 675259172 273383464 794659785 788351206 978809980 452886471 719865902 943177341 353446310 661530608 910285177 140711649 940763640 696710783 739131955 146510617 615846624 665611003 850562319 757444159 54700913 606459280 100867713 488953178 376093650 322361778 7984840 979611024 594155882 910434854 435553726 454839816 134665778 669769456 425256377 144062881 103332962 451873644 221006019 560038814 988235705 703329791 320608164 917365270 269817778 950873539 570906242 538799148 380116435 140490915 912064447 196757303 65965641 543136705 388082914 271865106 62215322 459593517 544508288 143861809 421779890 409383128 218558779 26760637 106273570 588972246 765650897 86513342 94854582 780586806 908145399 24937411 265209571 379312456 483117674 540710183 466701222 219340851 741895224 556377276 800582395 790646280 7874181 169996107 551260187 460584140 638602710 858020158 718432711 575303225 696457425 161329937 451265532 491493370 302263652 160423184 695281374 864792504 967233864 299954768 731726166 541249017 506368348 751545458 352199684 703882343 381752909 344993245 156095862 905101914 23531591 222584556 843894969 206126643 912536330 365095034 559643916 798780050 823905228 322696244 140606766 988772870 868451937 976350232 721407287 43491037 871418097 762320013 10321945 379649881 939112885 437909228 363527435 679522313 42749765 324779429 193980392 417812963 568574938 286229230 275473482 74295187 448133158 159285581 966280011 431956813 388801457 386508714 425175949 260260743 704074658 748303630 303820132 81475168 620873701 780382154 852488674 924512180 479289121 190677907 902965171 492100997 275511677 538881183 669114854 370961949 157932238 785211542 183071240 404223858 115902360 984640424 71227850 981716773 712717433 264836962 924197320 308949142 78187019 606382168 46591746 670101825 379675915 341495359 473475245 598626400 402048557 478170315 547439355 180908778 932392006 707429266 695896153 168190984 664267191 491482205 380167311 958481460 375232336 103533357 496048136 260455702 876765746 241899569 206833993 190839642 623665666 602296674 809780954 521666201 610766874 720727825 942149998 702551745 154684063 364318963 181589440 527889553 73600850 365324645 113104165 219183418 623699485 698974958 336059530 521884186 879474179 12250168 879199298 66441053 63986093 554942769 874665238 290747410 535579197 853060703 891349033 324854118 414773990 377254304 237037030 2398863 308010595 580822354 366618624 835779916 487630168 707596819 593076506 369418951 14874161 411163837 990310402 347151415 575767210 298287046 176305349 487517181 793043181 311633559 54067366 29971040 426757139 341669460 103484337 716748293 562275972 947408755 461278745 999745274 731130755 844418394 251567634 114986861 69052524 884113992 167563415 252582773 890208136 675086900 645063949 576024064 613130337 937143138 883247858 355649410 248591509 330831185 856120544 59786729 988965978 292647388 946553234 547340139 906960356 934780537 500712481 519810586 790734993 387319356 380215479 808848572 134386506 39897443 973162815 666617096 999196747 471468146 84160752 649483673 111258037 708489434 42845380 540536002 503085504 4534411 968054224 231695971 36476058 112680896 729319152 119088157 789923692 905957607 899489781 445770557 184324492 663821952 827298942 834007064 717913504 693626838 484611056 213446339 816920352 666838803 457177310 361937819 466287933 443113570 755121663 161218791 972919582 38575428 76771626 800800449 61120319 873692791 851427712 171096945 842933005 364359433 899827255 441782869 77057551 134394524 589407738 726587731 622037308 433119712 333049453 98430054 768951080 82992512 450970037 965310651 869011710 498282120 105004021 62360336 933948592 449288908 852288219 811995627 837604624 797590622 650217819 949977265 312557903 870699711 72436660 677449485 100922573 369138999 693531944 570520317 514758430 420545383 557701800 998934425 217688951 610810739 60019271 594828881 573352200 693337904 918322335 855139421 838984347 846879663 604869084 811408231 197043522 821959780 472172609 796586303 825715866 279875021 231988418 440824673 353047221 484111542 268063747 84802942 328745488 166652595 460227118 36190113 368376739 670790247 168935806 561192676 608970634 128916100 493513107 768645554 652616067 72240879 474031989 384773748 453976391 843461926 949382742 149143285 140121746 146445875 228848026 783337944 892645898 537525216 938482631 453078907 138538424 819688739 23618504 935531458 64973570 306719225 955640081 528146102 917070686 471205414 359831886 770620171 395704746 462253986 358420494 686792163 108298373 176432518 232775344 955848634 631459984 962846952 790585213 489006757 139520653 111585765 696657917 328432784 945977058 551049949 683570927 891133896 84358481 528249736 982736898 72909557 991400106 615699190 603665885 209202751 388624489 763063687 633961294 580441753 828608219 266567667 85857417 836227566 703228931 69062697 236999083 702587414 474655369 615560983 847048 229165188 876926271 704718609 552944643 734086266 237893951 460045643 449280226 149745193 441684212 206842477 533070830 865749529 244827368 854393764 855112614 178270012 233890068 552592215 225658618 825017234 355927399 143605810 172936121 710991435 71253058 550586518 212067424 917586054 404705712 22828011 20321637 208786647 381565728 313724579 671088148 414505046 319093425 358955939 620543575 81722675 680867472 31811956 267308738 287632366 802461507 602499526 806829420 328967383 492606526 104655461 836804064 616810554 293451556 41417372 187641324 82318139 651641956 85085321 968295601 11785028 346601218 999801428 392537455 296949563 272233548 337462057 315052645 973582352 473478565 836300330 786965372 108496794 321508718 3756507 217062895 754407822 900569607 921999164 253769153 18113489 271148371 179380274 402199436 205582083 381363132 109474973 983545261 228929520 576379314 495577176 296413327 55591468 189780162 190372904 96225609 195898700 643370198 207200291 868790923 495016186 775262020 894075942 591649369 245905153 367408440 718788676 121136347 128175721 590927338 766411773 461884931 987122530 752886077 379753575 823309457 832110608 447746407 613597255 998178273 587055220 571385109 268343526 21801867 55287612 461439007 766222518 197364852 632783584 129527609 601694034 838090075 239690562 726078943 251951057 203868999 283418157 787163202 974033632 400086631 226528086 411342078 218998674 244868575 302090016 1359789 497339452 288593121 553521635 707431792 108161454 378293106 480221617 944302580 746112293 819675223 575065179 837125572 542506592 135303343 356946301 338224875 365322808 522618020 356489820 106772524 558314896 469304219 802541397 929387566 944220671 70600854 392538790 760177563 355403744 511381496 734474168 818125469 608938385 639702579 187759672 696539852 688102527 443699717 889012516 281489491 7488136 796468339 27060343 359003284 836634169 115827554 141373345 287951645 97790994 404977058 655037932 520077620 741528838 394610181 962673428 549466090 426351688 511446639 341048570 744976707 629341594 151927715 944042667 484855719 184317599 784419784 74050999 170429252 117842968 712530945 404929656 120154726 800707027 508453654 137839168 22307169 283385181 821483245 785707046 51810993 82246311 795370468 850541313 558698460 580241297 175877095 274537215 854115460 441027544 636661471 142650755 210696334 888385976 84216862 5512803 91984612 261274645 280618196 567934154 977726685 32759030 525477337 496998525 443432888 268848125 1866507 345892379 159865494 26041857 546740150 338039972 914264044 123840553 475328107 848613878 670225206 186798932 94269326 336781866 175401274 557393801 439575414 315877826 782702371 226832073 351617874 348270145 59367351 668946895 931483295 416240952 824388086 974802477 530002682 795304163 952160643 981723027 417172327 487985223 872108230 679049503 161358763 442108452 539570302 495513190 137284135 365342724 320708301 300237054 377328195 551115053 510205559 859429522 922996606 176500865 389820595 441767397 539723997 657555212 587231192 794174844 941351292 837577917 10490085 978504463 748897488 721654424 58559172 730196050 946253412 573596961 764543025 998640408 964465107 990158557 658396617 828719040 532248630 283746884 402042982 825029504 340715690 66240126 149419990 535144254 734731432 948330733 957984540 482859620 531219388 837764531 3303141 77235713 473253193 401681815 867301085 536048709 182729674 217452401 272400266 167632547 563688364 199173975 876368276 633316399 516914525 410879385 481435283 530563655 781926043 270884617 343713311 213585335 423456633 522618469 457062363 751550115 790769239 623873160 352498108 28813881 398454139 272135446 873724678 583846932 247961859 26018099 13530467 311308307 77486425 452194043 961592858 905899872 675245053 617104793 540073473 980182261 595852360 382571160 905145008 247925264 740878518 671315170 199666433 999744371 119729545 528753127 953457530 590522156 166601955 356583605 149327350 835527232 196595934 254834130 911998244 491481755 650393242 563082036 744103955 475995830 40193357 383944238 575517892 900262770 445103569 889482317 60734941 372374135 341264574 891285148 828492068 267913376 892620459 48366220 132055210 799897067 368382958 652953507 453915026 90786367 815512927 398606980 290117909 353105664 393046468 338432854 328544205 290875835 534439910 190031808 39935914 186928117 385826811 178031766 945725832 475718224 50389999 686324015 969800893 414846554 77401178 172042605 610771946 128873607 768765618 425722220 820107268 671131175 410086077 662602467 522480881 545883800 944159599 940135478 957100694 52506076 769482640 762885070 835851852 487672714 766065797 678779135 522303680 305816225 546062738 414919248 970296262 39882063 30280211 386189118 495536864 387924281 314680498 679305423 299613652 315142833 222014693 201751004 235732740 946572566 99672888 89343098 617554621 826405435 597303279 835674760 795294753 350200523 982306538 230643769 982942434 187494283 520532439 480278179 304371346 624990163 569116867 974411420 493162872 138057247 809190611 98133288 50004031 185429687 397046968 295792805 919344267 843451557 270248608 574510365 287117990 226792269 553364203 90673895 78549913 52066350 242462875 82502551 337386017 577245192 797070193 631351248 628218488 822028298 958605186 947662705 180589042 899305011 419653612 466085343 718208834 617624058 927263811 836848110 922483739 726603625 721227024 626325792 194877328 57032659 797155492 702620028 540505347 751374265 299806902 818632551 803765981 923632113 709899682 778603685 24691165 903036569 156561776 775914965 691782299 769773009 421752088 915328410 152257355 750557003 280425735 574457059 199292805 27954573 527059393 182107214 47661015 636914406 526172211 165817181 916384753 665853471 314029066 265963745 642339471 705168993 185752808 266457196 686019810 85616925 4614659 971141336 842338363 811556250 190979857 579070965 405327850 545780166 927362023 959180566 313680127 410817618 893451062 570239899 487283871 506401914 441176979 892214808 127945081 67251033 29278197 48746949 379384401 132919616 988632182 18573847 48949946 364520549 748801104 845536930 306914006 450717967 238261753 332707526 458560306 368347430 194337595 659412399 9367581 410691050 413903807 535700392 352296425 205436619 407298701 588278033 912776995 804098130 471595380 153302777 67198936 335247427 491677506 642276105 135252481 52763409 189421279 659333433 148237860 418423477 939197892 548622440 106830915 556431968 547844036 99675925 441975382 254483030 658100887 345071509 910771303 772569677 298834109 598786506 998033683 976742618 921406736 596332215 615820737 227040902 323906434 24160999 802567024 837626926 823108665 266530746 268436491 420868611 362874605 248752465 741586950 295859038 752716805 359798593 709577268 789138732 119801995 826973055 774962118 402613453 479428488 298667742 354860586 376254878 795344650 555637312 873408788 426974725 118326053 489173480 734583386 210934497 345391950 643839002 934783363 440148451 383646858 943428122 85560604 578150445 368371864 225310911 282422018 157127519 836979442 35294500 369789312 204491200 946266133 257198000 29490753 579078841 844645898 844596518 453370612 168530201 594091757 302002943 118947501 421699629 83148960 245984050 110622875 29422380 563893116 249085321 672468081 793009476 689887491 80826072 917871771 549102391 935815637 422665542 394091831 695852337 696362575 291080376 143431701 803942293 968159965 198592094 536271129 507566754 640383187 141806148 80848221 456054812 812564038 679022520 78378520 937871082 819183244 639076863 638976919 774485996 997406701 882430366 81743015 525320688 598680841 627176538 168633529 390700352 495265382 42384861 191722661 440873362 255360934 666574493 654919799 689334155 760619761 591434478 912490424 821139618 848173227 2191123 669497205 649162390 319145843 359336611 102432817 931056602 506026731 433873635 548041073 110150418 250987291 992622946 427313400 757104228 692928427 866854790 698984354 472331072 839793747 511713042 103654184 514414789 958343903 67217338 547798605 982670339 880405542 96556179 425442348 518287916 431327760 788501681 17093372 66369749 868795079 914214736 912142303 25894952 356413501 689268197 182563490 20319443 432075786 126978995 394015754 409633778 969326034 530589229 203695102 740789071 134912461 463857531 13329907 845250782 727626828 44939892 716931987 234708498 709725632 806431240 907607996 502008128 926534740 816237100 366838602 254098428 340159781 645696268 480894985 764374506 651792053 228479081 318647917 51446297 435110390 712356578 355251356 665475642 217318376 945435905 225509168 867512140 530151786 370828554 539811323 750458970 925657395 292063471 758572910 698046830 655391630 743388708 458661922 375576301 127491892 250817769 809618873 513094607 948994214 674447799 416142750 905354157 631447784 617088673 220789983 69383901 331695070 593966749 81610414 898302265 68351517 571674356 784500206 491775682 659233303 19368840 278957911 702155151 615916912 808442244 372789907 692520775 394533361 637763768 317518229 244147644 978979487 414756493 562879856 179614340 284542138 890544722 688245965 791425823 468276432 709005730 897110768 94336212 733913202 394123137 544502979 23197669 749362445 116018782 681672531 212777501 672178015 253389759 616700074 48132287 330018696 707107980 394533921 824069202 559756610 588249203 477223500 42665285 945486162 127085251 74349787 133401201 662212880 377421381 631830991 880884543 726786776 352659001 499184994 256664190 149062937 466247858 855581437 575907138 965890793 489930347 354519958 369766514 841386857 469757745 911003692 295049029 581932296 921874185 566629594 278363304 180381581 770482364 344347940 651243571 438156316 636306587 330624659 245354563 101971885 925927271 791181477 523336761 489465655 666044598 863329500 212323901 637189790 881122439 802353656 80154276 53882675 282288479 328038740 324660389 20633272 623181310 209793365 164507686 321178485 628784630 928304553 350326407 807272667 235152381 533608221 997851167 76763111 37482897 244643861 542158759 989889571 440421124 925485982 999951027 28670252 759292280 196729190 798603111 32434997 708665928 417899341 403373147 817031243 62041324 651656004 851344280 201322876 187829787 424632000 769758924 592640089 779751397 807659779 608719983 827379709 820140840 416687015 344751452 888372764 429632802 464635477 166483814 920260710 959738537 906359172 227261222 765475183 717464231 750129073 520692312 636112563 890100208 812976882 292145352 387269364 3732681 431162278 183652369 13877930 75697310 217555607 115302090 415431534 246312116 185253009 418273670 373556059 983602981 754684386 916900966 866556089 778937889 923708164 506952320 510945154 298903230 881099025 47959858 198217005 400739173 977909449 446579829 237131113 183940706 160896252 759549039 374835474 239379584 934937679 953376716 571521337 446719437 212228059 951240915 984548879 86249256 523360709 571301319 117870948 721568982 25557670 859711581 207373455 460304098 758114043 491335966 36310623 167022446 149734136 530022133 658490260 541124530 544659434 100977452 364553601 10661876 284275703 780765099 561979794 804443644 801026809 883027344 809047566 891117634 375652521 728288686 264677749 721770870 348342503 652211805 655587821 595606525 327454192 403816044 767899203 629724517 549561495 253327328 62395306 462035230 931786273 86782767 378892110 420421368 637380867 706345945 959230633 59611373 480694312 463831799 185466112 469417443 127178442 268220212 609224872 101395014 79269588 389512223 963430886 988044862 582042714 695451766 766347112 603363612 805420792 518141311 709803495 453214366 366737951 641999716 357951387 682126913 267020099 102723287 719932620 282475117 547829235 425171228 438971588 498504330 763777153 551889493 508602885 929298377 280796815 900110376 158993264 152929595 351931971 149670772 620514961 457786951 442517955 895321873 963631617 678802987 424255840 660845580 186427290 843530024 428933565 642537409 576302458 673951672 444570356 289627776 325824948 531975786 205670212 294305893 457590680 957578271 525311005 146674460 624596747 601495774 616451413 495208828 142199154 95559361 222888901 55832358 363306865 819310660 931564394 24217475 720016067 140243287 127127592 541934939 470535120 127205775 963283967 899430496 92032250 906372487 419025421 596026342 262233162 230165441 918126546 807017798 402888299 580433382 70043040 678002352 141688618 551211193 633727371 535642352 558394692 321543815 353252928 126089342 260754282 915673940 314528196 556417758 741668593 282627629 321894682 475905282 458628816 604632750 704394923 133599657 786310446 519123098 963054079 92255808 231538850 874312801 735667273 80673814 806744527 364018757 159155946 295178438 150765519 962184351 342347064 475902316 416712082 464581971 826875862 593709150 857820447 601764211 727073734 322879688 955516154 262655851 550942770 989848951 921848445 14196358 862719804 545758283 257648837 760976728 52576004 229515734 695713707 702742360 959696598 573933131 490619993 8453274 826798481 169767135 235583347 820168640 112178805 880242996 257121358 185788461 481611530 398947562 216644405 286472030 106354996 747890705 598004307 610414660 669231760 594497469 908835796 845557530 647556754 851691258 692480987 706359026 660982733 903054151 95751465 414216851 556623740 857674506 152559663 652359162 876533021 870021795 222184833 17982126 26608507 136333647 156545533 441984261 964385595 719470146 278338361 242561143 931545366 340346178 775211169 107125912 911406208 793990007 760075559 738043880 327628811 105753624 895687456 289624031 453068973 259316960 392760198 426135562 719779867 582885168 915972333 99389534 438968407 608597207 471553451 932030444 241406678 156838490 937222597 892155159 52346863 594698516 542885680 146623860 197028537 666456761 938968851 583893609 133188654 116994827 579690766 192986324 240532941 112778348 156924616 47658290 665740351 503096060 177463900 39191899 912715580 112006615 763819940 723101685 909742959 652702773 472849909 121162708 163137374 505329512 923935506 979254470 387651659 614054947 753540926 741610268 877668479 395694795 845356121 305547408 964966697 28350432 114416761 783133971 518444910 488920030 714107437 602325583 279404498 489786541 207001997 593258225 902529215 417379073 88740223 721983907 850952630 559953267 769860466 230050939 390751777 774686882 572562644 34878954 703628026 706670854 373366158 610608772 643646988 696065727 123385814 640890256 8050391 662640201 705047268 802823875 516691842 95451418 724740701 443454837 92209519 774481779 676104183 307583225 986868335 483005064 119422579 470461063 35094673 75889843 406955992 873334374 363477241 100114389 517265042 294424472 430449119 567773315 549662489 84242474 330934528 150972004 694766764 663193695 259122153 155510048 243566019 311143854 68442452 37111081 236323645 386131812 715969058 526385358 573850213 933811833 582231887 730154618 733522686 728632829 704029773 163225299 696753591 232785868 562442311 573539411 175064865 119895324 559690187 682369415 839174239 328979888 99102478 557596591 659650146 409517732 504089490 207473988 789745713 644320668 285099938 900394662 806348985 151255708 163150536 724098403 127608588 502849020 309933683 524397647 978676377 18200077 210180352 481734305 465364783 877255734 100974328 848528699 886205380 301386252 788974610 658594369 578468941 964228362 160524245 375699980 92889394 493527647 497708311 887406130 132452321 537200012 283341597 440969040 651554003 518463736 256148878 33558774 640255828 712650995 413964638 940474374 635538943 835113901 684472529 390219351 699451171 664482652 940775684 500481700 109062670 716665811 108275453 850622248 273735024 242944274 822997086 498294569 97264519 624935723 213200201 214293651 772129856 186791705 77111644 186447279 259033089 543838779 232724490 89622770 525049560 308819907 204004397 312461691 959706098 933459983 917893067 999244104 999193659 544065592 198881213 45339930 540424648 675977311 789756325 334545318 728934271 899512604 256732315 649213001 929465895 439024433 230407049 47392327 128146457 845582146 661938476 907919701 696916181 647479693 60335650 150607809 771547927 235267990 253775675 944750855 922642547 347615014 393413953 349320157 675270314 520655385 199977650 632247487 983837311 755417766 379021280 740976619 460812223 699107910 659055938 540512404 933418245 832827390 385207414 421681971 902524760 403171574 617225605 257082448 631182377 171586988 895098432 47003449 139491536 454951348 593914571 569145827 534607245 117562884 219471200 314830014 641730976 752363458 710206701 275960007 815636051 400894285 121338115 954323448 904129002 759825348 764849224 597614746 201637246 25356172 682850400 422226750 148027440 898305970 223393019 103822745 88854201 932559432 631850155 296525361 583032227 736960934 191317531 795429319 824163833 658452058 113447671 943511473 728316651 471171497 925419473 326072927 251907270 313135698 319587198 272879758 493895409 255324067 104181257 99125104 368407237 949168667 455750973 192298661 420492873 270234451 685218249 987814047 756415136 226831337 19177191 264574139 142180631 369185417 522092389 124884873 805777002 987880917 741787788 183159837 125130055 334417717 715107846 481949093 259780644 917519884 33899263 435619544 953572421 787687422 275222000 245153294 677353595 760557837 963534010 345485965 365537555 258900648 517393222 865755176 342100115 534835023 485506535 264632478 736867482 599514299 266009312 542284453 29235811 898432565 375697205 515469027 758168953 526053295 664919527 525370512 586448977 96736236 406261824 926279536 452251205 792786942 872300838 874007867 506245548 17325022 504946476 930606468 579641718 748930954 526452500 212415920 861931027 218584760 568346814 313991062 102868601 602806938 698992963 80059926 348222916 256249286 85513820 730998395 88043008 945855202 708226197 115381431 705032094 315865130 592526666 103324601 637855793 180294688 160693123 649108408 394017579 326032419 681122518 211190328 547630903 989564728 214150479 13131172 267052325 830492792 297817798 238511880 483347317 397929361 709447400 228168417 47898275 494376746 843882202 446291165 893658594 854838248 181969631 252052038 776245199 174392427 777508304 40774527 777538079 236975114 787120899 865535284 513164576 81419756 513458281 625910920 887817281 426464671 176535471 837405845 914092546 495239427 718268611 846312015 332775261 144981703 166354919 511066455 459029449 392739787 466397727 187315352 59299179 797161083 607780009 246162078 154777206 738267341 914056192 888781633 821713826 775652114 468733275 927548247 349496288 939104127 293385512 819574213 225662341 363482178 439633540 721211402 605844825 701360041 277195745 750933776 181695099 836254089 483812938 419782842 553211011 975957739 569007960 951116009 342176205 553745268 36808041 873776800 221280368 152915428 682724267 663404572 870733773 29582605 124587538 292797301 385153333 798188664 113711328 230344680 193701633 728374199 441816450 568410733 222602785 521757677 542679641 64954688 973808030 639452069 579179756 902879407 531423785 287119211 434399326 827742495 972449692 678349857 895938418 925307378 782812713 141533461 651782544 609545966 104654887 165598565 430642600 901481420 462079852 259790601 520298611 948220145 339429596 309180958 218030932 79579693 431021718 264829038 702969071 924116711 227064547 630956118 115922629 638027286 936843774 40378093 990795230 93933409 433212333 208339274 258147438 672628348 308529999 635071878 327543264 24020454 9503278 309039751 640322182 500697024 172631746 676400649 557073529 774602582 746964989 573623517 491788478 934314200 698540708 375663043 446370133 949442224 358291027 2583632 217842974 86039498 393471568 273098026 50110660 766625408 653587120 117915131 179891551 774639350 903442540 742101298 142138028 468316410 64129116 667071043 542461859 9350338 88431197 397153873 355945174 335697158 643865479 365560826 285953998 47285789 561204760 181805655 528174937 917905158 106367995 549526969 619581012 882743050 704526832 623431755 962292319 175464637 576028503 953148711 944198376 807300853 582868386 760093320 337634579 237529691 177674325 422254008 46794560 782002401 946613560 2094210 879286582 724158616 368390222 680380458 102223373 477600165 371705330 806726865 815790306 482860325 695024443 999683321 697981925 639563218 282363895 1776533 861761690 669335365 626583072 369769896 871661018 975049539 923543243 186357039 199490472 296904213 555912878 433689506 529209108 706819240 214576308 275858636 797686699 196240730 509729004 806414681 892845615 656142966 116791781 653529174 536644225 205242242 652536237 385000899 586360778 273008412 948188410 170398640 58304377 269812330 513431608 489637461 40920199 349896916 228926215 850489401 428662410 326730898 277124093 108274236 736213589 591942898 361878292 30856135 249417224 723019732 581377199 309896853 739070640 317370990 401930884 379150363 865644714 142569995 407399726 490957392 976680978 870057356 326577415 374356058 829375562 868057435 323018511 407693753 420427357 57875589 685342865 406906854 110586818 342821977 721179691 735744632 626834965 709282004 152859718 152200754 169028441 608182813 315211282 49382648 354465113 293794709 575136558 579704196 935988902 510281801 100993785 73849219 390376401 818166444 9679227 875694737 644139319 338424523 176205560 867842171 48782189 792541685 665020806 190613950 655205892 528411310 485398149 68259278 384431757 303357945 805018162 584406114 741699138 146257862 8312444 734586554 645497883 148550528 452796536 806313142 525677297 757409200 481882765 708179791 114290541 489457146 869921462 821050707 119495489 211963551 39599887 253063967 407125114 577914468 745412038 98144380 72709785 657091170 6691353 999833777 920198331 99051112 132105943 486734085 112936980 514302174 962768111 446129146 787169049 694679384 316194331 167174173 52523432 4839068 160331108 763140552 490769553 455286457 548166304 738959175 160551404 501012490 724718214 192669929 654810304 218103826 849233090 502282918 843991875 896996512 80449077 688154092 112799332 251478832 910179593 69243315 574039925 642580103 83205875 834470238 124959138 452741228 839952041 877781611 693131415 336210009 354930860 265270237 568146152 686197346 321098387 861831661 153166282 780188659 295229577 256180131 968503277 577427414 423125486 563316023 663689581 791480431 406790920 274612876 722586097 197053230 501047475 725889636 682190859 943401801 992492915 636135807 242703993 122846654 314796160 983354001 307520354 519319685 684541030 970196812 527842575 29498176 948236468 497634293 143707968 773755177 96240392 473235427 122624238 758288974 488140205 800774922 824830691 757884060 244406244 131978251 204905238 190387742 632574115 278574159 834796972 419074590 200922140 183789045 484003247 362738528 566884101 44726019 437756971 111374730 947215463 741701554 830555076 830671025 136820689 601530345 117690244 991096926 87331940 764013597 325079943 133660549 326181396 265239471 882892613 623869777 711079663 675752797 208151270 744887275 394270705 473116728 659680533 192380607 546114652 22046297 939245279 123439671 404576490 403895680 243947925 243504412 979201242 484216559 257488914 178664565 664530834 114822510 640881630 126006824 109050561 460543089 931275944 115803146 533273518 661124606 579662076 630774442 588863843 299167621 527475920 158166950 340819967 875309121 825469338 592070256 926129048 242015248 519004207 648836980 125246358 747812790 330749335 535029532 90671748 745757022 845306506 131138289 140683482 774903748 279125944 487000042 423190718 380938726 351812270 685501800 598789667 387012701 365261348 959102965 721899298 678902193 781479213 134666932 255809478 162947949 914978720 42340250 926692265 508219891 115933759 732981127 957552923 865499115 398280629 155372947 527534007 432088642 334702710 748910819 952973292 144238188 638363269 216664596 666591524 331882016 413376962 858967622 34516959 604000779 244487791 721190005 618518906 548578416 973589283 745935345 376551979 859199227 613842838 116147753 427870442 146463813 297136718 523761934 114913260 185680464 508026014 846994391 36833247 482383217 90351614 988746014 660498100 435706390 190004902 830890999 862050695 954258413 943303763 264964517 978383798 268773510 994625840 804997745 947180154 224238201 844218061 936886472 865697034 858182846 846850715 669452802 488079474 342227654 562719996 864075281 868394978 552184732 633778822 204979178 131421634 259113395 987227536 17839579 87092673 73158681 262489396 367404879 80839396 94601854 403382063 115180550 186192662 628151433 105889884 750461797 400042709 333159336 348400336 85769567 208703770 569737463 222661868 650436717 861244656 741402148 789508793 757104666 546749145 914301882 945073814 988305275 780210870 214749845 753786306 284276889 816913685 217833725 163910024 782097786 376177179 181702705 544489119 766018866 138156493 881565597 586196903 335297716 461533341 890885711 445064902 61197648 247328761 536495501 340187407 13280451 645813924 498515414 477159135 658734550 518572558 679482477 780941685 219041786 892288631 857200944 380576051 500643839 810119292 191249083 79811993 888833733 370792787 224836043 346363714 589893925 990564442 254002821 746200827 778002860 170168704 713184528 953481504 459394103 533718458 21356989 586046745 997811659 129552531 458497630 551425696 874447507 413049280 289284095 21984368 242567731 161212431 386462907 145036520 616444038 595470261 81614110 288397411 55987849 909908694 443020164 119841375 784460955 607170790 879504376 371221423 509593618 567773607 755432331 195834238 319152885 707707613 520710997 868709285 431002678 196481872 420901714 818724415 819375775 83748468 780612038 370105676 759596807 151450777 235093316 199493204 436005060 585453298 744982229 252467527 51008837 138610717 247267938 351008169 956366487 60952724 933348193 862582273 617982187 410048029 455149943 388044144 341350074 897421481 25725833 828608720 66774082 702457355 741735086 583224998 76408965 651646875 601664804 59551638 707538647 838249145 347165393 476347013 144879801 154124161 70996980 179341250 530148528 680212347 433940490 236391275 991778686 848117614 714701432 541660776 779452963 476513315 991529981 430121810 460514257 253012585 431909194 306552741 665379844 594414255 447174080 83434807 606702329 409359231 370946051 469679050 2485676 188472972 586642726 546680924 446196433 132591602 337746995 504004621 54183195 814095452 519412872 302404576 21402160 907740922 648963042 742578729 142059777 952068353 41053583 291840252 397132315 799418699 497835732 472605893 441994290 989401710 802183046 497971118 612302099 427549177 617773776 442914642 703301839 248381393 290069399 907952966 824988280 871384046 584491005 625236885 780307515 762665549 331446813 89918620 778158098 573365295 331356415 619647493 317271029 846728578 793803308 564962801 231139034 442117054 901866990 311290627 536973417 890857801 615762558 874556371 467098626 594166620 996686843 109980936 900223133 362335358 688200381 194760084 563801309 194371508 947029665 304266749 397776352 773753816 14863081 299521284 310884084 13294709 466766283 52432661 320380185 255119711 659245385 935287405 791342951 90570989 840396631 774441957 988249771 205744642 426755263 534342283 236077621 620026744 116168178 975318131 747673868 147982799 255979900 162503090 319214618 878209861 138388834 500452628 121389955 330686652 772151830 527253391 646962840 641280313 661877163 338434975 293920928 488377055 493607271 623035477 750570669 35293214 278660614 196881383 498752953 848744647 623733317 275093008 980624805 362171715 528950532 987925816 135073829 397159741 4929875 43315580 990450617 25925042 535098689 341842149 77292466 961837323 530814595 923889841 973394694 499026502 408944896 888751362 572433703 501733805 877487128 558826569 170467676 686718975 504670250 55933383 843289380 779032584 326656067 739220688 776412700 647920538 945913437 480953304 625309831 522219149 280988367 282146002 940172551 65631043 900487471 519056746 910296938 727396332 107138214 315746619 559770075 560915353 475701505 700739699 797092202 996622006 748674631 188889174 411399401 945596090 891817053 498686148 231280629 676039706 469372819 390238038 394365669 225585408 269875986 732648393 590317887 852571302 376147015 753699602 401137720 561350788 798081842 619532501 548610532 98528 74932075 802888134 246612860 297526390 526794607 565253826 418518541 645703179 968635965 223140792 977658577 975550467 756536206 720801928 253729803 929537985 759255700 187049000 738326469 888978376 787075264 687212493 400830753 490162814 701107553 355696968 828995999 855462975 420611650 576747034 922114788 429289661 140113113 599791847 968458834 327834360 508944026 169075312 453543815 469817911 603676470 803674578 68772960 42769589 71075835 457648387 382638932 665898572 683333668 166686811 713353854 387155707 96990155 819230029 223180409 695053676 500558077 86963052 685561483 915182898 78748968 964295595 175869270 739224929 426481943 308125664 106065788 538858945 530028709 955376824 985422033 135971016 178441026 604476256 501076403 656130459 124107085 65786022 217579969 124382623 948994413 92588350 474107895 394009804 257394233 969019679 152409736 331372977 741597480 332252959 751377670 74719173 654921353 37094553 679375190 149022108 847962286 286642517 394239703 529755114 292301382 856895496 910684866 335912061 520391042 76286453 935869276 863807340 666507919 23551815 368148251 778621250 767098513 297510662 163083532 646518268 160255486 548429542 265313566 102968766 718806009 942913010 417556788 992000153 210645845 647795578 458707353 992739318 692898387 911167518 737571769 585957018 898616281 615431281 552694189 314180405 895051582 483829584 91498357 238349954 261718964 46092975 616967625 491127514 547973569 833668613 882674957 806976596 339895789 107780268 205920982 642228251 354284965 312967762 454573421 404347857 986486705 139645450 477128000 369028154 959891411 811107936 396219010 939929983 163750331 286326758 150317261 488576790 766870944 296600142 698660498 782761360 173704705 225497370 210973211 785242961 192212482 830654794 921111203 580547453 257864682 954954079 271656154 299860284 227414197 802491045 341976299 552273033 685240996 939234278 425215902 957129575 128502168 253786958 669580818 420227164 804465858 361011747 996274953 803218730 464358453 851731675 128440006 363001546 405651026 429064300 496580302 395891758 281735105 356608765 110054497 398646581 273741899 527131620 185816378 401444426 775407821 696835758 926464642 115465988 639793812 961496106 296046859 907768502 38753599 488363468 559425773 475367596 631151434 313290029 173704008 887320023 34423701 116650985 861119782 366113161 532433676 211732779 765930272 588540672 81705758 497239708 680741602 937372774 512834074 83042644 549177670 244921369 61825194 488331535 859705933 777398364 116721621 871710366 231511618 441470578 328903970 476914995 272536842 40626024 764543286 447075758 968939015 445845180 610040092 411273966 302445246 606956016 937717702 178699691 325171630 54628255 325333148 426681920 231660411 720140054 613414168 913582699 457778779 174661326 993050370 223294043 581195091 42198358 925002496 558211750 555913808 839920954 50566101 775682926 670769485 313348849 677551270 222098763 564579661 439291430 546249872 575038894 455425409 971814768 742965484 422377096 242100469 38670766 238279810 74439899 683521725 225536147 179084857 381794693 173570408 50900052 431677039 455048535 171733220 346152177 767525910 896094765 245994441 300728337 657947085 207457993 14625539 922916181 475634711 737877 898530193 79264286 433620608 761651577 624264156 868404844 304229861 356445289 79945476 538875408 210833036 68593239 221200444 243144722 28244026 718070279 613041416 384267817 249927904 617268228 346559935 552939565 853066138 83931930 56543409 105246970 612535209 997300068 874406066 216726742 112646689 799801172 138885449 888448832 451252058 931830961 825182375 638015396 444742501 442447130 650629797 667646764 818834834 711988974 525049985 106374490 634995423 211686231 482364588 434324606 567965863 224367211 254473067 895971479 933260309 665332375 566296821 278289028 487332201 160394123 520391833 355002357 337998486 557915756 577856839 182832941 701785581 996379805 623815087 399318641 26650321 557265166 162257464 924062948 923280562 989873426 159947738 467542443 290793516 533392282 744802669 644237185 924344840 999757505 918370615 124597503 738696083 311158352 288369890 673027959 478573063 24029190 92530185 547744767 28223050 728835898 406773124 318251698 493843719 726054247 690334153 529649889 723240290 814403240 20394670 855491071 231981229 417996 162699259 163447031 610772589 595429643 605365784 649256323 501244755 978226739 626086055 476287347 305318241 169699366 410436405 264031605 448468427 124142865 138224175 991934428 536470974 287457259 838604033 767888239 105455666 650345568 172364075 57831954 964444425 314750348 677261247 53274124 827842182 792751537 897697163 41922079 825608594 330175403 200223751 290437193 833305345 66772429 953459044 232033501 407530837 148254190 424956872 788399555 367831922 813514259 237066045 712996439 863213338 449687922 491104133 686734081 741980184 686061546 670042791 382190613 386314584 324698217 818650320 679815129 917954070 83875514 285115330 736583745 311321267 753626925 209934372 706296442 733245716 956384954 605135379 185360213 252446771 382815567 174803719 854797515 224157491 951253449 510424642 599079627 625381669 46897413 938911437 800133200 863066117 915233984 707463100 83615828 104046323 47287378 751851917 460522583 814118836 446658692 904996255 385641773 608176160 177326600 206498745 141490707 518181839 940816248 830698626 646958128 97795514 433955437 111439183 477465857 699049498 896910379 162633290 299983053 436420834 587535239 124257902 597168606 947781139 63867896 144373980 58625212 769517194 422387363 369135830 425415360 351109964 848394291 819080925 729060133 141835145 423424596 771895776 611300159 518604256 888989776 361114655 231217052 841065748 113059776 123559655 411987090 353792059 147225829 61555092 949784456 871301512 696737552 854259495 730408817 143517078 595211205 394570491 73015672 501806168 217235689 442640943 975087038 69102129 858364092 854357004 735864459 721627129 550754608 552260479 890597064 758182904 185987893 886892038 937604779 973836810 649641122 618072330 168960751 575070643 947391894 873154973 831457318 893106733 632660206 108780423 977881020 327310534 356537499 710614943 358818261 390830888 175464571 31064491 316618243 293721381 860216919 497287314 282693632 650898419 807021081 845247812 4956176 752933645 195730185 366795555 757091438 384066319 372062565 197716877 748732784 621665699 384998333 395889972 38726742 987429623 176213904 516817628 728834218 920379806 331020404 531016649 814405620 651763208 639202957 329666528 14309732 20085463 36477488 779066976 172041788 677936901 201887582 423477195 635613511 769120914 782247077 437881591 313363586 41464271 217247792 950550056 439287884 460177872 33344784 895890440 784505435 484832259 223377942 433976027 825301805 649076951 733949775 38228484 940941054 427608091 593537011 687024038 300597137 210340868 10749423 781957181 511070741 811657134 635032254 536875607 397433761 51601810 612178462 907783341 85875443 396899794 161283852 467786415 327953050 804634391 424876059 87711627 299143325 395486897 552349619 155561345 166267353 49847518 775718541 230214654 741203518 544123014 520215141 911072928 763405574 963324213 117902410 708900394 823609056 60187620 365719775 122533851 723686717 644918760 904468211 202965866 637739935 412323647 618632347 734956911 891028149 258526877 545870991 53203635 591905473 561176513 406879057 60172343 9807986 956754163 28866635 436460321 762602441 947349844 638144578 979699452 10574328 355882645 693174434 889351284 159851681 419267828 102548005 89427191 395524826 454992575 294924363 333096666 550504370 437686047 696627542 265663675 36291426 359703761 244266381 396228999 144569594 315542625 706729107 385823988 108064075 850068983 508479444 492049184 801385293 1245138 286770460 800427736 623525965 447786367 210155399 822612869 938587165 186105076 995695913 584498832 343249463 21316020 749451057 826291413 982647695 734347672 6814582 15038946 119790379 827415432 120061584 196811241 879863600 174858951 762070151 799501288 527881171 516537408 149550561 90867845 407809003 537339509 568058409 732470080 776444876 819478837 506616983 509243657 640468493 249237005 462407945 903158599 651353957 884806714 145897916 600473135 26183004 68716955 785764326 222553353 898996125 805617437 231012721 903897303 213833690 230407979 33739731 205279957 242804656 626929548 151326927 788429852 820174998 710768912 258709111 367635965 813378165 384617981 284157973 576058241 495281374 963220792 575736958 87044675 780138784 928461630 194614029 49853893 561425693 225842927 877679131 416251464 91261451 338858491 954076205 217703363 540897643 681466818 258753939 897506818 393594295 35902182 4973041 746494829 715442571 313733230 888565916 23426585 348345555 39053427 439582437 275064312 360962323 688197659 50240831 264932066 906077238 99720225 11246640 202781923 93611815 766783159 74011024 512711036 206164463 422416950 733810796 174235306 632986870 176159316 189078027 270077178 877295910 285247942 657252347 419006904 339036548 665936876 72189997 236017241 554423560 317719587 76661012 717735776 470568417 843893372 457311159 484862517 504041392 139237198 571553057 655344550 98809885 17954420 181455252 328559296 713419667 735719317 560194142 107316390 877363241 946695685 37019499 241653268 508828133 833342434 619457593 491059351 98664904 104157820 152593288 22406679 596742924 341307738 280196662 318464856 701823450 134529512 227355089 245564910 802528927 350941928 283612177 317723123 145953583 17763487 772692755 278001666 873638265 582396342 520179585 162451130 486323203 904455474 249150573 709947108 299289814 100658851 452750318 524809553 266092157 531335639 441248420 382652244 220379767 951759659 632609146 942605852 374125618 100788436 453587024 855198192 960129951 918414064 263849426 361579937 818150410 510429261 245200222 555743892 222556508 837370575 635360105 25107278 800496171 499097909 371161243 886768160 892952190 858913485 806519620 35212843 608069813 692839891 180376159 347259327 459356295 157021797 289157632 960326210 237320270 468378467 797464405 919020556 941767588 657301612 719082225 57286288 881579792 327535026 760089202 427849036 349622043 174787451 237208428 478565297 414035673 465795533 793545019 653227643 183475136 528054676 505888612 971408708 904586917 226975615 101216040 770202469 931409718 325795869 625447466 288843388 625766700 918434596 832460444 11903404 640917889 500589162 836667313 274887006 854444228 411352315 789373238 887241529 851306040 761827238 761518258 596041303 749781657 897027724 266351413 632718395 192955347 649272847 279448293 408298116 881879763 933989290 205503341 848740342 523282350 999751536 43249735 174167030 958394130 500023327 43478422 426491526 22846546 669072115 390502147 210174609 54528652 465791057 87464462 460149068 426510073 253481799 161659170 55881128 209658246 985844547 964288566 256797167 670408795 954990497 623503773 278480149 942402616 964291111 978887592 622148956 871329006 550860949 107189752 461237090 31095953 459791753 148119280 814464932 358651564 761342255 427166055 837855845 163849557 878106847 774764047 374224002 237764257 942936903 540973093 37993496 98701934 595085872 339615865 518406576 165385999 816909868 885640037 510305357 768072469 761447669 318681869 882842318 308909811 9824521 52048658 446783197 145359199 695547520 352297835 280324780 653194262 832886686 568736457 766249488 209303518 969330459 480782219 685567081 351757230 76716231 418200252 319445788 46416022 342711338 492534767 982402175 911414996 57326581 218568890 737904963 140536754 457500524 46860498 768178034 177360344 958023835 733523534 669692708 426035007 818542375 710314840 506053193 120322539 423730595 618966810 750670600 129822212 634312614 57963299 913358931 717024128 228538492 970743459 493301698 79464114 93146363 988732866 975228581 534566471 27595079 127670924 138502163 2417599 607037355 407661757 174117901 549705528 499982745 906357255 427812602 23001445 762664719 541897739 606376228 787923393 862855664 398346304 267798272 103584486 924337348 77242501 448912605 859876549 46289685 712850097 791482961 644160396 429237950 201004781 667339684 995237161 796877764 345208830 545451952 941890005 348460489 874282196 67029909 868739410 536755962 56480810 722788618 43611138 419850690 950964140 30112231 555540154 600559150 489351021 145352832 125883702 64270105 182046904 838753195 435414669 104091463 740076401 40927801 409636377 687774486 299297220 284520791 789112801 665678194 347927232 839013438 455253433 351863294 502233804 941275702 188468242 451723131 539411096 534005746 872791390 868844606 724650300 927628984 484246047 560675354 370465020 33974586 153267813 731590088 269369004 840593095 498963356 480285254 243095950 32095269 153137176 194111503 541930890 230617030 76195121 231291242 522040339 843220025 514996709 295765308 629115274 891929617 413391951 592186080 155931126 331562566 366448385 729665655 373503946 671846239 47854928 664581530 191421529 773901100 980606781 355697925 1847803 456417652 743332999 597374274 780512980 732040111 118836571 497242844 801312172 353487097 223190472 595745605 984200844 639141373 657963786 679796289 60325337 341546707 127859850 202687022 794397718 474454920 69438917 520288963 168767074 782477867 349747500 737994766 241152213 800354857 463230626 294184568 803747781 171883450 653102805 279294422 629779767 356431996 733530621 293495022 531467665 780759287 794155422 867616547 235564216 117868180 876544218 661579528 913528674 30593571 621352720 434442119 88059219 611830996 860876936 725028854 710740027 239099262 113398950 37738820 875019868 800341111 360144737 98286884 450266385 543836458 381883766 681237396 667971810 981367634 611413753 208483365 607253944 393249901 168582736 393443360 597568845 706595372 115844828 321650690 158378469 843873922 36093724 218028938 958858828 200014078 131993504 255908301 562030296 588966248 137612146 647904520 126804250 20822950 599826123 206363598 853315149 664589440 999489573 653308270 966786392 21520792 516929475 191966300 217010698 750535953 681026568 723748809 583353790 301070301 165406980 548851870 556236778 549266960 276023534 813374699 405282001 665101412 369731499 834894700 2372606 828135721 394846499 713889311 180951149 353068230 893942816 300265567 695002173 552237184 196017333 7469042 815835174 150501096 283183708 899175883 94924596 872950145 804976579 433784639 107242750 311077418 610628537 4166442 575811332 315346231 355109793 759162094 20911153 365983579 580477300 625168915 215734691 66925478 51994029 957834622 330167502 472611632 937799014 147269785 981979865 67369769 667724774 387132724 911027624 855938733 594774278 903830714 181171960 428324725 485919855 187870449 999306914 780398244 910965318 295940675 576241137 474477132 784474913 1468096 990357086 720100773 186906763 792779914 858137342 927751167 925472415 4842938 982596202 970756435 494176577 678602109 618618374 368486509 235582142 502484271 546269679 588743561 660390685 236609938 70683328 649540237 617207569 570856996 587852676 787229255 517097451 496943241 101772602 255269796 457115424 122350380 285012675 29196940 620069305 643356999 350054073 124151212 674142027 163585037 7950986 675592315 74229452 22099463 386997591 364933954 154724984 518762752 736457992 229208873 78346373 221562693 695516333 603676541 123667191 143728075 84223777 74232918 175356697 497753356 973161540 200928892 971344641 13160140 299170867 916489681 88359897 20277267 556211675 511137575 258468764 876791827 414053875 699090923 587420577 341789369 353069333 294339342 985961284 966275524 496360243 634118098 172447088 252982593 401344691 988173406 492917575 221295863 393383332 799124938 372959980 846970465 155114621 253259087 620374981 172599901 905090177 370484032 757562379 912052022 759684436 995566386 704126459 902961584 5482423 392739758 226580114 505740884 716509822 881674738 479908999 817428861 915317709 265457492 567438765 750866554 441899817 558391837 679492299 892529640 125944629 410610951 896303343 715232750 608514732 945490373 672327611 638849621 569611552 841637572 421056898 545141276 485554627 515732053 570711239 289616809 126759259 242454916 964288296 236225997 765127375 348704085 516494273 169095498 287537070 591297258 423887257 198212973 575271249 172130838 848683839 7034880 107504566 379817696 910814813 908733534 766567726 388489723 765157623 483281283 952629301 645268801 581918354 158446344 175886610 437586181 146138921 477027375 30372931 417617622 619097445 604173560 753774548 735900816 936342550 988613779 742535570 799371619 631843111 560429621 431512802 484992879 250481497 262806708 761729510 756236073 590057879 490330693 904495523 112807229 739266243 674413725 363447685 720134124 429119042 760773253 922636415 297484449 151935341 97172512 658805175 295023720 155471890 880852118 409509663 825154531 191076122 451154730 6781476 747615205 653086092 667648402 129015163 976572633 991106014 635593430 321383410 514703741 726851614 656538321 712152156 665638590 183267666 932274433 931740824 405221094 700381104 763830508 424646943 126965541 433832337 696644541 468810315 625435194 206376289 335484156 270519970 555591720 82142052 410931725 815456359 448519607 586710479 371455234 149701251 243248596 365634233 750829473 812909721 771272801 953745246 367131232 269373984 241173952 689584783 190272267 548826024 805549395 294973160 545590072 479835876 222499799 187377272 399410590 409325410 441155454 897856288 117054245 268909827 512087045 98294798 726279335 521170016 70564160 346049304 907098168 612006595 392775854 980110278 896953324 686423721 449923026 442070371 548502329 522876385 328935602 941688921 242270619 316084289 999279339 575820496 323453796 486202148 369036476 304902541 178500616 333146256 18209787 810162038 99103349 256220597 787540983 514692359 729292216 470775160 767898850 161534055 266271554 823645845 993571320 749038635 197008320 3385780 113203225 437353672 573647904 982513659 718204018 883211263 97868159 521839964 679887452 713389926 826734911 952048911 839085490 89471161 268913185 419865798 230248539 997352693 880269469 228101007 14858350 885903429 485115925 97010740 665447860 458304291 469132745 68909038 770753247 724047033 5700314 637133041 158220144 962582884 804643208 527837075 18055367 940169652 494867610 45637001 410003687 363452443 550851985 646701838 97139015 102241318 683621520 605271855 340326970 479352946 297296491 909663951 757340875 637135407 71137662 253590893 674580187 513762282 435209077 776796284 577888360 259612311 159399181 107320677 815920047 875200131 850968284 906413470 181870931 651506317 601516731 591847066 938881439 292495350 336949302 212247318 448761529 701521700 150706921 110889251 449431789 476597658 401841866 909884275 970831220 67872843 121570863 479636190 869721312 816944805 374086599 447568958 192743153 90552292 84233631 26623878 80466566 894253186 874781204 753170006 476605852 602777172 235618147 423341693 529832684 888165557 653898294 681304071 283724836 110223214 345435900 609871072 526926474 53926512 198537474 33932732 814991397 869911588 180157885 101989193 568571580 439211295 622391933 100110709 451405295 539602401 605917849 606926035 605610716 636631680 661371146 29876531 588875482 150169569 865437459 9775225 454790060 994650002 201402318 674406186 550570533 472121778 967765632 667237052 666964559 279390585 119033022 813965811 34255141 336136024 583399978 112095920 207900496 243582708 276220294 860258004 216163698 538316994 820236817 433924263 576558474 989505374 489532441 299134394 305209914 593946899 397793855 210218149 336571942 812324006 222331014 327288307 553044473 859952248 568942433 667104799 631247853 516660060 142979277 417915692 863407787 169420848 110841761 455340223 694183314 453676249 370610261 183782075 577729276 933550369 751714874 458377202 615026531 517862104 656704534 941054203 209507684 923456510 272657264 253881063 345261651 27560013 998597858 773123950 384812522 78855950 249915456 996958821 730547989 751365443 681441735 509461331 88308694 654224194 961929067 481079013 905799869 938811960 84787171 214140835 399521376 489045795 845986147 601782724 998896943 235370399 721072323 513906038 310853284 416938302 32474327 592321738 657441074 274761130 229604259 470148438 601776153 933258183 361110960 559197417 444694454 734668393 238421682 316755046 250952141 945183188 641178449 15770060 525206539 406386696 305060852 467483832 664745702 880705301 220556247 848464194 307951888 620393558 717908796 106190154 683500235 980373790 977752396 262894926 351617436 834009708 891186902 713573871 157564849 132249675 521074751 494019235 428793129 887929128 87988080 269450464 338319406 508068716 885903737 276013062 110758227 61353232 311604864 252170859 578072272 463486129 691151164 442366846 637417450 855409843 2522804 355310108 350632494 748309793 161882437 604643193 105482487 803091557 603512226 663751390 946999622 454229382 571958014 835864974 994468449 509950757 16044365 495901974 74903182 825159138 360072679 219822727 281042649 453765538 559571261 411865211 77131185 286451974 358679050 601387950 306031351 668493835 110036547 837837223 511500399 925442735 556808803 400625187 132322653 955920180 676591778 542037502 61345341 357895831 127657427 359666889 271907938 264925846 447470420 55538260 20061382 829947259 564037046 668396609 721679292 474957959 730245637 568886987 422487317 675903000 343380833 504701499 310701166 921892059 612873981 719230846 572182322 791201695 493616330 102499711 151058273 553536505 306051867 782459981 946742322 346001661 300703129 990426858 975436793 570231510 420400530 533557927 349644587 795856609 212524461 200097468 491699712 559712429 573855310 243000975 60515520 558347733 202757379 263229772 627122316 639204130 591630940 908566848 962267237 931163311 600251722 312122842 756380632 378038692 775677105 222997686 143518383 788037476 351605011 323840380 619200625 136215273 265282129 537870147 317648999 170796132 321817406 465699027 31051748 219953105 357963137 644372171 317408970 145382986 743788660 740063909 882680354 963386573 636523749 73992313 722843864 643763494 587134211 592900505 704946218 670261485 88553207 489161855 565971269 112902107 573877612 525218434 591890711 549514402 839867986 581169997 459132014 26447268 292888329 400043460 346285065 36533604 292259997 781287579 624403870 390765805 860597657 141798862 462461504 463640515 740562679 471516743 121347096 462990026 871154768 572335354 221711114 50820014 526800703 525429341 457503438 572227163 547781410 952724315 887035840 196418566 458715409 898188292 224649911 483265579 786959257 681311753 558965944 872982987 233185913 309972126 472864216 181385118 933012750 542074279 572701588 611325532 381278954 939678844 661562938 782474172 343716864 91461104 833890660 981817253 160410579 688835727 494136269 302515186 342439967 671425084 230166406 559491349 452238036 167574122 99479523 90573100 746959057 795389593 456201419 851085079 943366248 655061509 159175460 913402746 246798962 336662383 212599539 443706960 259727662 725611270 596335190 170784249 335347315 97085018 250769064 589248775 210544065 983890634 275053160 977850262 164448028 754666342 385904335 912257541 738249356 302378001 682734315 62967408 348965957 611199388 111709933 943559238 90357254 371301142 878429632 730819163 623435066 616446380 622665920 229829480 521779522 548806895 575815241 938856444 643529465 820268376 63954589 236849846 958645912 638485088 406169370 921715298 158600757 148413533 397128390 312516647 507334961 935035904 394973875 341329694 425899984 765658857 545014221 316812091 379887655 255736162 63204528 535147652 546398269 784527761 234780992 135240740 462902157 822456523 930821485 195265515 103072631 784080949 768740020 104247803 32619805 852596888 556936816 58589355 917371471 368080886 635994744 920554666 421176859 18387138 951316763 205002434 156778601 765574467 226977169 221767657 570957712 428639562 402665680 883405287 683946168 261174803 364773126 716627120 793853311 841226530 539901759 479483305 123619487 624769269 712336195 336416238 636977585 344006684 104860485 975926915 426628818 572625461 794684608 143149105 237586405 349998567 457581920 859223101 882689371 89510603 983524829 310900993 893474561 896201556 505716162 11388692 638024578 202038982 482068720 9779290 807560812 278971631 8160444 74710812 646329113 708799290 986347233 462021057 720137613 217438527 580374788 466433406 268764083 795625346 649716451 743898720 759335741 328836960 489614993 412503749 728722737 106506229 878534831 651404053 718183202 919227568 621212140 485491977 782339830 463847190 485285739 469385535 771427658 983191090 541448477 269106269 41120140 323203302 183631055 479872991 340427145 923512777 211698398 303354483 808820368 392037306 293226869 84690001 960496719 846248506 822057533 712827844 191657796 220427212 559114112 713266290 417220900 179965632 439817126 436397483 930745348 864252307 995840208 8865254 780158467 478450357 531344533 97433472 981599135 938103173 108709278 351803599 871621229 113792917 72122134 396835556 219957376 236152498 722870944 398747797 594997039 603766071 682343179 583382898 663156000 35333759 331178345 727188661 225749233 386501217 729627119 399221496 997772622 12855609 439243998 266849393 95196115 158813896 62561391 730157700 678477873 80467475 815454063 170357241 579022249 544403702 852486719 242016561 929466359 410072637 666723365 366290740 810405682 478837992 862336396 513123464 845849075 933142480 821820845 954738315 139243312 939946270 456066906 810128787 335079050 443356525 432766401 679829786 679349688 403793977 897865618 601301193 897332080 24391240 728970353 541791012 214527437 624384567 856076541 447064779 292420081 124141826 967610344 765647884 146373997 797679560 163259318 145972284 781043269 989921161 790549731 168343464 237385017 115718745 170244884 779476305 900218704 342556635 906405652 454917016 619203104 73746597 594786874 547507418 530667071 282097433 176509217 581921754 161783872 498015323 586680155 37127698 696594988 595060202 243402769 640676282 712645997 323512163 774428573 782990914 538770738 249599702 879047462 703082038 172458855 21665067 923576491 815167777 945204111 967812576 337257263 683413017 959618919 167848429 184945433 923817288 324043835 931466190 955799910 194369458 828525030 88146100 831219016 524010618 641443594 565584511 825814798 951465673 602900458 424933597 129958678 427554382 577956460 480074891 775065726 698954035 686068574 147392041 678394330 63438266 804045972 873302848 156956752 593408710 516686767 388057400 457415019 432215295 399279257 849607622 435402417 320390169 167989000 206729673 12831721 962331341 855817230 772485770 948800700 531635835 666648591 900786654 515441918 698599272 366032853 854863258 924663811 266626992 751479964 678361426 664068454 302210446 497006102 277396736 586773911 65415039 601922600 854749058 290642073 111837136 248025641 598649270 332801588 879137442 846876291 35372013 353059997 704397703 589791910 647502784 553732309 423258641 978978896 576516893 297144860 778204219 65329264 973568154 403028200 644729906 762838678 504361133 755284034 608697723 170508815 280133926 520858505 793552296 121724364 48679728 778503247 770363439 857545209 272568034 565785369 260459180 599889677 825464103 279438838 72903967 793605327 831991282 131949951 855239801 925264690 421527146 298797592 604789993 479781894 180275603 309530619 335279434 813184043 140793355 474536977 47927287 226583710 619526379 157473882 402532817 439664086 604877093 113941198 819269314 689049589 296025690 575822265 806658965 867297180 712859751 605788415 607761852 419948239 512150488 432786226 226819229 827458808 518952006 462075714 120563112 640689769 251127292 475506264 96582743 842882798 974091696 162225569 295539084 647786980 952182206 842299512 274719527 869230527 817026541 519590762 985954894 557018466 320038373 913615898 397399347 523546751 382237764 524975343 707734679 662719269 85015040 782793676 721124528 807261600 954727035 188345780 789514103 745781994 557166515 848084137 796442759 159023149 519806261 732354483 376251976 600143022 799173203 90464128 903674075 633779617 918851492 334616636 188559453 222930488 675109699 909108216 925914025 999521619 444526719 439409841 908046036 706668536 446630164 62093811 236631725 29378330 127915538 335306725 95012310 129673361 579375918 577598779 992971256 715731235 84448503 134595246 168967108 421454369 282530474 966896578 509412837 984471289 509452471 119957223 869811598 245243649 437556893 854051112 997007521 950774270 671983441 57764384 403589513 800094014 796783011 726607634 437370346 771839437 218497222 404089436 647911720 585402782 205906850 57050524 374738551 523760876 546037374 712352825 219237648 720912751 66713483 569581540 591646536 702137421 590908863 28265634 772749460 375234154 739607018 135322624 132710468 793760813 385431995 955701356 21473272 513416218 102860208 29778258 545029857 117720369 900959342 162406581 718577701 781222889 320510173 316457221 641763053 728692575 604754083 504710272 21871068 97421263 183578053 172915252 573700025 62703723 749235382 736492926 283346722 578741779 99084240 732267199 722004897 191799973 244324980 431013707 19153902 797966755 821665566 480921063 927688215 873898873 380637755 130469014 667261242 5054795 543260762 523091765 869154532 383706146 863842981 169001315 495645280 702324766 223828421 734805926 434530993 397902638 120233930 573767043 837977072 214977675 967927331 36981861 283285535 497913253 518925645 890309386 803661048 477285788 585914519 302248983 272182648 267921806 677084181 992044007 769258927 814038021 973490356 604356496 548097465 615149368 191846548 518078222 765555521 921346258 328881468 783730422 128030637 157913814 426711121 176129367 688518701 538737463 39892282 45262225 155134301 381907820 385518691 42376240 990054564 220756587 607087881 50148490 296669351 59030042 89259312 389243597 275405831 326557501 171406851 224926130 906477635 681384009 178764308 400539583 410923644 605042996 573270308 126149385 947718319 565755870 698124596 430757764 402742743 227580023 667125993 463833479 244450916 266871951 670593669 172013465 996891324 644929472 856373190 962426814 377666738 183534793 691937555 417414684 912380583 725966117 998691399 527890973 658753915 303812711 761331219 713986325 941118843 860566845 997349667 966164715 148723516 339943676 261337210 827393892 676370066 109857343 414552856 117467961 600638473 961918555 51314965 456995218 406666881 908237827 576576691 361963675 891743980 797356721 75483562 584664446 696330108 776583185 326476590 580069374 679856778 658215012 889958757 426080702 412862765 469725495 679588641 842268618 377504771 66055507 102581193 432735901 890080368 390559295 888196632 882357812 982185694 331119677 209883658 537945274 871084189 586225074 997758890 440366116 649270914 752006863 811196109 582457045 349525476 668709494 119181181 915707462 646821757 174825832 444533975 573875119 576066913 64391409 975078986 464029109 644122475 558297063 305011670 678649365 502057592 959247355 48922584 221934276 971795038 346174262 452819234 587489384 389129691 499533478 365441251 406420972 834587119 137512010 602390607 61193169 728991731 274934277 430172080 550259819 659871783 444556504 834368228 666843990 190429906 525239582 274169033 447483599 352136484 622945713 609628748 686363821 738198677 366702339 624454421 544083051 56047231 248973787 554063447 648728155 262509474 549987383 286989998 574284462 371413589 95528383 953380629 198454904 514638580 485236066 720316127 32343022 97701975 207989053 523461427 773338770 299722931 943203880 911525724 918788099 573178321 122028232 229800629 443515590 352063647 996047905 83087106 666067400 518765843 300021307 226554672 452164726 429180290 427206750 337386064 257113678 134102235 134859815 387454974 446586787 398794535 996233367 731134188 634456038 28455348 754770695 401281390 698693394 649992320 691542990 697424840 843251661 845188246 939162974 219782681 160450352 615714525 72281828 463805378 133401592 120544341 132125363 861047388 529973290 443518929 582330035 926582829 639734013 468185614 462480333 934804612 889384011 929673500 860498086 630697254 272850316 43879340 396543978 926739195 342279974 933006358 523258405 930742731 968303388 168721164 488628657 266908497 980083291 915857669 870252013 806482617 844771446 474229429 449825910 25074431 803144059 875425664 993047454 289284487 342809586 859043403 302517788 930012606 399512258 442509029 869494697 513080829 513620379 697286584 954604833 445306392 520398428 736725148 689074650 553482121 546468412 603969800 741148010 716245554 510721582 659773737 341361318 355795135 885735075 10369731 307120089 775040311 710641169 483667160 440295207 815324533 366907101 344358616 82367295 167984685 896636125 848806682 860357043 163441198 972470892 618777772 972766240 406623760 883503831 688302397 269361127 196601396 329934052 936406987 881181482 576868370 664217816 48397902 545790256 836113974 257147713 21978149 368334552 200393992 579818822 402265218 179364538 580143039 602823948 734737146 543308085 640881600 672427766 621653882 716410322 274948631 694084253 987684400 774568501 992196917 970715145 427877774 881808080 826062017 928488666 198696881 898086026 273324817 288377863 832542114 759444289 583569214 538309521 872386646 364322439 930985191 945445519 251138307 52360762 905152224 332812260 318441624 235714231 442089497 730284044 720498610 823092628 520150516 334248918 882880082 517780881 372999658 750150516 315310071 978345209 270181365 197962887 752736729 801263085 681848790 915871342 924538523 107180746 117932390 364976324 167244048 168190552 941306573 217003263 918120481 957310476 879941751 12499971 76731391 791192508 633054556 282982801 14152085 517994328 656178899 207373063 678587171 808534066 124229244 802802937 878724263 728913061 471089513 595669541 563786147 200286403 19679873 510357247 535969390 754576659 306630725 283655916 101433932 919173629 518573039 259111485 382083932 483746367 202623225 804087752 109692775 685629292 721670002 150089101 370930977 90908756 762309589 298753566 663257547 861795263 925693501 265891138 8685008 411941089 579012361 106919029 644771309 432365705 819369913 113845241 838937177 412603645 796269297 56052015 472574511 946144603 456210535 652591324 835373402 7762252 847257765 900479192 654930697 143159984 88813539 926560177 655382204 906518654 745202578 912704790 325044674 55728485 594541582 324128712 363287690 506626112 661072502 30581457 342003268 851497155 539725317 515300919 71580086 783987601 810231161 440573719 942829154 105715237 368421126 612808717 878561027 866355321 916127649 425986593 418361659 566538261 53352426 693913467 287373907 565294287 853188541 688903716 800731212 490493653 343809462 5989813 91016305 893115455 403722194 441841798 180290956 59839911 200824350 585803627 148211269 612070724 810787644 44887771 209927945 848592715 337861572 847426733 220608724 292449162 385068921 747847993 720888885 354328571 202433909 882722646 402820790 409612122 306848605 267533133 258741185 302390575 170935625 230703003 850085222 587205494 599252457 724538552 489321212 843271720 772435545 603746628 919919202 951236113 508092640 967754468 115159474 589259686 940739792 106530666 486570666 822061898 177562179 717375075 692973824 616093847 395544452 941122376 772645679 128930337 645072581 254044454 224733592 698855038 722845186 9054000 155682192 256722915 651649057 569777257 740647937 6194987 299158309 898796793 752067243 544898835 223664931 899427258 410215453 938693003 40914767 928327882 262932529 378208537 496722480 879044059 293751052 966431996 841554974 867238498 210464727 33391640 171583407 650056570 316895485 539249438 651353724 868307694 578066631 798956609 447137852 480260259 767021725 9182651 537092135 575664759 477732043 907453094 651482669 33704469 833713143 509804384 456712803 796899991 266876415 982765296 421635721 473520352 397862372 278101426 822272728 787927439 315545764 748452393 953553837 869700935 388636247 901578904 685367494 504218725 285676314 779391546 169074283 190453652 845645158 328122850 296009515 362274784 983366216 566708668 15639335 571957758 239922246 553838632 95440585 664764396 869390781 604447643 86727815 327594822 67958665 75327555 850860211 229183200 396694253 453693223 776531071 609574452 704408929 258255973 697461110 229615487 910754966 984499930 13895703 803743556 420969426 509590481 207878585 150016827 684418294 563050603 570288477 180952792 749309207 311243901 489800012 847383832 589214236 898326122 55414276 197285247 475568512 242500627 462285239 183460406 912228845 455225613 550245779 659913983 689033258 975061048 134631500 670245937 633365767 659012041 490095208 689060121 374093178 317755850 595817015 223248907 496201040 495662589 375105166 32538322 903722497 518865485 510460620 370581238 961422078 972779518 179565798 296156734 831099714 523424181 314877056 24919569 783946330 797013668 662526883 112509477 42895586 687962436 665518791 216964087 334571728 517057966 690038431 428000140 10078394 666120155 904490425 854236130 410851290 880533358 672351861 742167058 352823132 701842342 159884281 407223103 596848869 638924290 768976732 750774493 247940826 976895264 357217166 894013108 654585802 201100716 239890118 663014949 772580987 440919496 97685050 396573052 413125175 808378650 138234981 697048222 651668231 559694240 596790556 315293495 876844240 342267595 964671857 283421177 832435958 987246168 492656986 760513882 136911994 707117835 48763129 574751325 682535630 218687510 579704266 533575487 205370131 217084750 771349376 249747034 38292202 95791171 329652755 995446388 648940127 66083119 539358924 603987489 800190729 825378064 568392259 42862578 21276212 821987896 105082805 34472482 742218180 123618242 135817756 81257847 768411885 53957268 278044048 501332686 643918679 551093487 470466478 385744772 826836628 819118061 628916791 489281896 35471249 69998577 389085332 230857680 812410671 311697223 819392742 833446141 927255191 769185522 237675717 5168716 956513216 338757920 80464606 743570561 159082529 396821550 585184950 670213635 589904039 443795827 821619296 21854375 960388984 875445456 683457717 599628352 502759749 119801100 410168760 221245943 610147984 452946085 857962769 947023441 34060241 13860322 988930876 257289314 317042655 473076581 794211596 255625861 669315620 105487539 247340120 143466208 134546405 945584282 338564099 137124274 490747061 819612479 292788251 232086042 435373621 783419451 412591795 14801121 167627267 2033662 994667042 285529105 757856468 852003122 480803756 910903938 109961238 751472928 617901993 882701831 204418284 194790811 766845349 742308165 312898071 877489812 344385591 536487590 961956799 411637406 348084285 721505427 131163550 338952861 472618854 797818403 645691578 488390703 699440608 964431211 531168659 898240104 546128385 314035294 769838375 75419513 647167093 798873540 943890171 130793742 335769653 71347051 121862316 8899780 440199941 773999632 166026839 495334548 939732437 949904093 197712517 906824520 552478314 45523111 520743581 446252575 432304193 458013396 497529508 292501462 902084268 596393502 486251863 302734898 40787839 55349520 909017846 432308506 935332010 806478928 470151453 932657536 218122827 756328813 497923097 616972452 435336606 354216066 919588964 422137244 338917333 105099708 278178923 129485642 982224590 821162683 623199890 750233901 134223557 740547650 221022516 135985923 437712920 65745965 398568368 615364201 721562328 724685314 117099941 704072336 33820358 390301321 227743714 5721180 848095158 311028033 2312368 739677942 461759927 41684320 945538629 898485796 498556728 422410961 721000723 197208433 227256966 464317239 642772080 741093853 660801328 669063926 943636800 702360423 39275377 5849962 762521139 304443747 270875931 201567995 13358479 950282640 604366627 143861213 384246225 561291137 923099442 929193877 912682909 580454937 66717579 534500163 444796275 174901961 88166640 366808374 814785971 42127848 989268066 907063190 479858975 804597679 934684993 14814391 967137867 463970586 676869097 861057133 460482478 604791036 511292766 648558414 293623191 216697567 785748798 999515273 842620770 214681613 400935466 850592193 272104244 123649485 531344104 632550040 295256654 253094077 297532654 477642218 855066860 190784971 827039023 965847310 419859778 738970958 93775314 651040653 373319541 648733806 353773131 504585050 663254501 378749964 14092535 241563421 918354608 228683653 296107717 443447960 909399375 702197008 450164505 898754647 194516891 818567575 665546549 784511826 840254423 358390365 854670381 621287111 741756225 267964507 196724259 466224449 22518719 403944012 749106771 35652386 625302570 250381861 495084035 680128112 943813693 328779187 851862606 455948584 185147352 493741456 786614496 787231755 681611946 13175563 816926720 942649156 350895621 408225178 178290136 461653320 144480750 345231343 623767374 237237888 398489019 325979906 854235569 696143087 30591000 314106394 22711033 377484111 779919523 177596044 126800408 910966427 792448346 458128949 171313105 910644129 868836754 627571505 407547000 740523717 795804423 904176353 465779613 256295414 966616125 784993429 515240341 114469586 728789526 493838630 215176855 721231469 462221623 369231233 366548398 568653717 281531387 82403170 904322163 839894249 169885793 214252900 764671522 502904855 803833750 368883482 129204424 683657693 277079658 39288868 80799767 672082781 358742938 143717834 284605627 142321764 512269343 342136162 68979193 834494836 975837537 60434152 910984016 406293134 643503306 624809804 790261514 29729686 902991066 562222206 902900013 111214212 381595786 90327985 315460687 763335171 195958565 810357995 769545264 675129429 457306981 95488716 680155251 481891285 396851461 137067784 33188561 253915642 306962456 975400173 871784920 749806082 474679586 76593604 967702273 65779953 815487555 815509824 352529848 197781526 673673441 463125575 501720193 590857108 453716764 665342586 45633203 411294462 223223850 730690695 297499968 95572634 679926702 508711787 448314396 960093616 863585221 763178807 51133371 998903453 980349448 155517301 405062285 316344273 646124590 109120162 205423105 34330991 191431224 722720983 122176696 433813277 809454014 131506806 782764655 752334721 299302530 205640349 263980794 364482084 650698664 522528562 625827756 902741778 715974371 733852851 98538835 467020610 274011022 718943662 404179482 597578651 510780684 396083834 128343356 242786761 921926978 524642151 477303048 307745081 404326550 990047902 65870607 925086731 392542384 971013099 974009698 269834488 291373269 797182411 801551122 998385753 937061518 416495606 541314953 961738152 281087957 437672959 937225090 641780589 7387860 85700386 159088511 301989125 252392458 504918328 666072501 980020563 318756526 131586231 86009719 146117464 620482619 462921406 754291644 503101855 113228480 368045114 37391246 39821768 351132611 450472000 798637979 256342589 490074697 464577097 508250825 317645045 906356646 620665299 129940079 602102708 824633616 473674738 463885840 358497807 462215030 856091785 47386080 378474113 33177497 45414733 674351324 963621167 90740164 385618112 620420206 796088979 607113735 357278909 391763117 88083133 594684598 942789333 503555382 728155958 259806241 382954608 763378791 251760644 461646232 20245318 890660111 554550893 586956644 382736462 476665171 845801596 920400066 695023295 836963352 390564588 637390834 739676089 685569696 56526967 5768437 551741073 512482285 534851525 827624076 126002234 298052614 945859037 646958014 954921700 381571410 690898803 633532184 466255621 141637340 74666200 533276981 642094346 754311357 831515222 67340504 304602110 162014733 311907562 654715885 231527649 265755189 590605988 707344186 747982986 228895389 28592631 304035277 503906146 481987229 118390756 971075218 787855752 470615892 221964120 838507336 10584355 262158235 478497333 503690920 845853077 175112111 369252504 313179294 763320566 273044831 828070533 755309493 352311005 279620034 434876166 380228176 498993942 238715116 528693764 81023091 576992508 172274361 908552036 889618473 236750076 290617892 852668509 934533856 612236024 328206410 541950918 761224450 90360077 118134439 401513340 724772492 711991639 720508354 830744839 584373807 946210177 447835396 80092244 102726484 9740110 157502464 594172207 628766127 123478711 191982451 172232964 979103037 968673875 765905125 334805509 795035977 590851061 921864369 763383411 259216801 926736133 811810952 579315972 403337402 234624969 161030771 339026873 661215605 691127641 703624965 34753210 810994348 508965119 246885045 645647653 387207249 503034606 387885952 850399334 619222018 276247592 898494948 561293249 595513586 884971449 918777705 900412090 761034588 506476062 90167482 773728406 750760182 250728896 547033171 31641311 381918797 740785047 896912922 190985623 937504510 710654861 301695811 146996583 562360563 924181789 343724986 341431281 640341208 699898461 58310973 425839067 871560337 87263843 760316745 332637394 146404888 605758863 486018377 653415073 819297595 138456970 837618611 677931000 746048473 439239687 157992799 392389439 468184398 224544336 26405595 192648761 453383180 727463514 767274238 814599931 965602836 968929200 241452470 227990292 759843426 262002094 116862145 506191934 49239021 915533934 27433153 531382647 781067371 960205670 733145356 526674391 284911104 29595140 29907656 198819901 162926880 433683802 891238633 798943632 676149627 460447421 421112882 923077288 297309454 77017198 937721690 763098973 426612824 478779721 640867364 578871450 753424812 759906704 487349628 194967657 508155249 867944637 481416818 247564727 88328809 638188797 250199581 982403764 477569941 558673268 585556821 909093118 983966273 516190414 184907726 871295966 786115245 465865980 505422652 995697570 915781793 627504779 57439540 467754814 26808545 128419564 911486086 626681258 291932774 117524777 192599974 950162057 570179613 831747129 466662625 960886350 520531337 933447413 92731699 762603468 23135154 569009796 566032884 321536726 481988059 514038720 362086099 358337589 690929630 352025260 501684534 511422606 371204828 835678982 446450013 602070827 774528549 293924198 155080344 404144024 609320923 494779469 245917814 437607126 660348536 247632458 221428195 830437188 918301112 504893428 505555973 660259529 560829063 228085511 994426848 938983237 320381496 333016866 882125707 33302245 861806875 278501507 345957256 86174451 975333534 252341479 453868023 188490251 87641688 227489149 859473503 177359967 826209640 365520182 885609728 382988418 272477658 875424240 41027267 377671045 572152232 931550693 77065276 47011074 378973124 287754359 656115011 702505180 249263227 849453375 979975111 895013656 485542728 179521500 38754387 714770914 222975869 318087502 213035861 548604303 275849991 168083590 967249569 218754696 356983731 968697424 657108016 862987726 353545321 165511782 24007972 139881553 434039070 319053443 737646929 447286000 540508014 812508592 395603956 231252281 301834518 185884350 840584913 346371272 662414269 952487537 449770691 571593414 98500553 950705616 258872428 18464953 829485943 456439110 110926841 38645516 353442767 677917360 43162069 165788361 583417191 828910113 250427165 725055029 877343959 155117343 53059660 987014651 418676708 474417848 671194006 580251669 739007103 692929313 3645358 690846612 507165994 171734928 742217016 420516075 350843781 603672246 335393005 427260585 127821811 907505540 123752165 303798028 264025120 222847458 943635732 767440081 758752386 429107068 837426614 477560736 468997324 355646378 169808588 347498611 322219879 859728817 983870491 842688423 167416922 538681504 129858289 394588622 709183313 434993259 69988497 223911792 31849488 179139621 122308096 623453012 405709841 656101662 605975403 91726774 96119416 54726246 615469102 764398735 422683235 699523635 12529353 439812847 664138401 362674479 245612799 105099619 904174124 976856645 467251996 565448766 106004232 636104826 684463659 644981080 661630409 648592528 854385252 796425508 79177439 589717881 390235768 782565222 735500630 102025502 293616759 314995208 699283043 401710335 384229488 503951537 819749845 365458924 19408975 657550970 170477431 530918254 137667133 810439180 536397539 985648792 560237680 768493095 991045948 964880210 981092783 243798252 608619132 914198431 980457076 540026939 125701477 245558512 848469034 369312606 927122794 395614954 179663988 779591336 345720346 386830509 348115343 608727470 128807934 429330974 664044404 587982650 416802295 328471124 565610329 795199380 387783056 810382828 224647007 735931285 732649545 746163444 750154701 789758421 142459016 284081540 193071890 165477171 899000394 377070496 129748958 910011347 503261819 129507157 79583675 120871214 149119887 68095834 700109178 989850779 294276505 480171677 548114392 453285721 141145481 146892168 218008182 324160788 380148439 365817162 778737450 261471643 98699063 170004458 428550937 144278667 908511715 654718615 903393198 571724365 241446602 374850203 280705358 791057343 445227778 718869489 812968866 671733723 348586989 330955412 980917282 39461364 451864027 889925620 610388071 253916403 715819502 35550751 598799077 308448114 600233769 445532995 358526461 498082204 680267506 96377861 165008997 695958281 534343336 61197626 836614993 335403798 887225534 71747154 16404145 360932535 641599925 392698207 957110318 753639132 262152078 664962661 321224432 812233203 30170705 834475392 933206357 231040497 45664800 756450714 198267430 515052561 701378971 227639121 957262192 905111526 472996662 622719600 24092244 449350978 376279023 562400880 753511439 472856360 36497984 666541098 606912407 283279872 571532880 109409204 777958162 990332485 572819378 861486862 219667209 759817667 966067430 115569683 16283577 694429378 444707308 237274991 540939842 620890088 944527918 678727640 767588799 173433258 354103934 683371686 683946899 618132745 961006538 11926420 513993372 626806144 871639627 404466471 43050194 386915415 204663909 761105515 768264382 374045320 359038650 732905208 72264674 550545840 468722762 791544572 852371622 748265791 220700452 19680301 618076149 510475710 706457892 453697393 306997804 524052257 660357266 140844521 446310170 170766097 535856508 58054622 644868964 164615254 427283502 715873509 31648708 475727615 34428625 913369890 59505346 732192268 461895092 410967910 361171284 772690380 283280111 443499653 964813112 124383186 126034172 806300689 748768269 756547352 120334908 99163076 134004212 439164422 53972194 795002330 666107333 142138535 558885276 108149768 768076604 382303427 368074586 269446778 255453906 718155445 348429307 777770597 613643711 24764735 313963001 32423608 961297809 248779079 537705229 322198020 927666653 846719617 896994811 736142442 124964864 253203492 304341019 253306155 926437151 565053682 32775968 934530088 914656591 944899931 230807324 521690908 651674200 223980229 372209103 759364980 623922918 802124742 257107481 560881330 830391518 273341514 58815268 159113855 31297478 136349630 877433166 161461487 974720196 650817872 746497475 229267967 510979728 900157985 485918343 450703415 168186229 111474343 86276572 282740979 494960229 285434141 196376313 633738352 384580451 988229027 259961103 892042638 963293872 811947079 226588328 550406640 746234919 893470679 450047429 38948583 267206130 742549631 801577923 717102081 151398847 755637929 747093012 565687342 162041471 534756094 177548237 368747499 363486663 777371609 981661681 66033168 131277945 963451314 478125417 380710357 546623678 594031387 514766726 899281282 891207394 736183851 587442648 688460581 128019351 488462007 164246657 948259769 303984675 72901399 134027696 424794456 341568271 248353502 56253771 541207494 909372554 251353170 348572371 727639304 48250107 905356764 676040185 779488114 15474304 656502600 883325278 259789857 533912731 437129386 159654716 3586271 128245850 690369011 136680885 335910796 329375757 400821237 312987366 4234105 565489166 454933941 624204541 754975680 446265908 175970935 101438283 591812442 729637106 145970092 244256213 389917748 351011132 661807191 631157350 434117821 180993301 808485026 688821291 657718102 342013906 32329629 881508287 181641108 362370504 262036402 245435626 821343789 492485461 87869571 48721750 391919405 404552953 942021549 713810159 330138285 843876823 313783962 845106080 976420387 801835314 488095747 160740110 494390768 743113552 190074256 651039671 912272868 433420132 935325181 819080082 380315800 194376604 350204825 805150169 736926284 14900102 844060892 428345642 412055298 13995333 405768130 557756151 105910739 232078691 871527462 273658835 795637269 47033141 941365791 50376411 461364184 714778646 402666425 707591501 47306204 575631908 2841518 9266561 705955724 511650617 940282745 629872898 342193687 889167507 745356133 247275447 93441806 409932178 874433677 828504580 510572418 410486351 989523027 91081069 654398746 710448483 928990973 982848075 37217420 514572696 210912347 185462259 382195233 385747578 36541493 331937270 374016820 289570237 768172478 903961290 516312839 545685377 563077468 793942554 135542895 174616541 350799567 95278489 162106854 782573501 712181942 409247163 805068421 343833474 545555952 652532296 923812574 193779087 944856845 473074159 353435610 260442775 342803974 164439093 783096938 134996926 377545526 107122165 387678940 256920454 897559243 658134868 751575702 765544036 344522150 198101748 419158840 654664651 623587370 790425206 278379105 833014364 677817026 218935617 299556086 274429739 304177335 884134111 368948698 966674405 637418068 517087583 235659273 416463751 898497279 873298155 920825285 224447281 635108375 43187829 520834654 447863968 42943294 524140279 532028798 165308814 215280372 701630761 704282231 853282965 103584669 14245264 687050377 325240604 645955517 682060602 174461050 699157788 663795062 735142446 465470419 913074590 562457723 169048270 630802793 476867772 247690695 991375364 387456611 867399695 686837225 247604919 345421411 716164168 213718816 424349814 778902738 566143260 788224756 108342817 36528052 579668974 2744803 508194178 467327849 967143014 197881039 785695054 380381888 599840891 559629133 826103399 656208623 442161525 843567072 301371527 909818757 958555433 233202687 914161413 352721601 308131568 205494223 689958632 741590397 393914311 867543423 57268074 512806956 952446187 286437186 724651494 576681701 242944575 889772789 225213864 192380784 760777443 712447634 235735874 983785946 804746660 469865360 527352205 108683202 141511991 838623861 385958107 764527570 600230240 853163000 663700677 434476764 901872783 305156092 940853509 325237585 180282513 251513611 25163844 77365951 837740240 256520492 114769860 698021364 727062898 203466738 254303979 476403155 245148376 86644082 220073584 432837800 390397878 401405410 628224237 289871667 648599915 155875223 167433269 36714709 319358171 260094642 509253578 755665370 415674070 50238972 762720471 172448574 128347123 101955954 497682324 917786248 303655848 49602259 311043339 23537453 319100130 590621548 62356679 636365818 550252239 278339158 710607406 165969221 277005657 698753406 288976835 339351345 954817242 463766650 400703186 852044604 5688675 868465687 894860829 544893145 538251733 899392658 19006658 287468058 592905810 286655641 526070498 86538380 342820225 598558569 699396612 10424758 791861474 449088317 728002961 726199600 81640876 186888957 33623776 508076345 863724193 646723754 600469003 175055321 43808214 400444264 35484373 957888514 622758387 129312045 351347426 618160512 575527960 810107933 630663646 502903879 719818087 687314382 513907134 942386804 752875463 971549158 650038662 572754823 110622297 312124228 167566023 326335813 349366002 383648539 880600182 984301081 343528293 193412621 495209163 524798923 734937138 292940537 770400498 496075474 956092376 542133293 930752490 139931082 793188577 781437382 393828933 426226958 620482579 358253772 933276109 264735979 376531444 101530545 382095950 897421495 573462217 363178397 87174890 754557602 605603161 844740364 772113403 560193521 600704040 699507853 397906599 517171645 370108089 345908761 665088471 43831751 608754528 631333793 256902846 731897082 949184981 507063818 357087648 625799766 628551178 264559928 779065386 559120468 97280184 567711214 656774546 37239079 709213753 234677193 501039775 227809812 43758637 654155644 265015970 263478675 499899808 926028399 79505402 958132077 773470611 737178896 538846386 48373889 994342468 525820313 820561698 813882668 40626745 679116578 779845784 14579464 154131811 842587498 160161369 336794510 672640278 166648418 669164116 491482086 150260940 56860249 895238114 382163172 724497710 872077456 265316276 576325997 637988304 372327402 478215623 277882815 373930543 192073473 885118635 699997391 112851712 873319026 167428833 763331402 254115465 51145271 438489076 111913998 844379907 931345734 144036767 461256992 308145451 823104816 194048662 172730589 928719787 50923088 371007691 401900635 612480183 311037596 89403401 504561300 258019444 606014682 297069224 3671201 861237302 691257795 761244919 10562683 204921664 493149417 797621900 587396315 126173622 426993208 388260043 953490096 152212639 400754155 907962673 668185781 899655115 916235819 544711903 230003121 982863707 294524068 258227251 634175362 256245702 417939785 502332238 653436960 953456263 361457739 478854031 830227956 85879798 259704321 262034753 94829178 904449518 167444452 104208920 970259545 570197246 520402641 205175890 379937498 611749471 475225944 828713936 104265367 466351434 929982436 462338266 108800148 966777212 47710566 318008282 725723294 177998482 83791078 715249599 501681599 315472555 918394273 447166758 613442523 116678081 671439209 763117196 104054145 122364490 620334994 334789990 910304272 882765052 738215132 712564863 962243500 530533044 955592404 386564039 729261431 433485766 650845181 709587092 618081608 306907142 473049128 100103736 859170994 451392514 441090583 608648530 243304405 887874191 808380920 897917778 656793616 121452229 821851816 154393497 174545969 916030182 73715347 54843066 284876923 162720178 66019321 209093337 340831488 400641814 160398692 937105361 70739471 283589322 515034772 178439650 463779272 890717071 893916839 587004460 167410820 20003445 555776860 996852789 570093565 651842513 575204295 322763845 964427042 194555224 865678607 262623638 198587565 23985868 213971191 692346268 903424803 328494433 12423507 182656894 549741511 829642442 938616975 60508699 291835029 859459065 652363804 101479271 952685716 14509972 898057671 968509596 832684248 258606806 65107121 49917941 587205901 394538887 454235265 156436738 61806684 522124282 739298723 968914901 254267608 79902833 747897030 820764726 870429779 427701671 136306532 810657579 138461778 16094669 300485739 910497133 71660691 735527047 139128734 938638015 351983449 174316106 314141082 246356784 424871933 252970755 70401001 789812782 62916854 845998913 160022461 139198602 17653998 711128849 750143405 996093973 58641664 267343222 786402099 660986261 949522625 393660588 571123965 579727863 593034236 693191719 272686903 941313638 294091319 843742013 15637592 597403418 978020669 769404206 640530656 895563201 300414058 710593153 862361994 834986532 266433927 929873688 508522216 79301092 962212395 210818646 698664167 601061229 971694152 982518534 113819844 824937183 861996600 55027814 287596023 43072222 602942229 772875051 854129892 971532026 259152629 468550105 921974907 347230826 187238703 692567840 944557566 929214593 790887846 65709491 250880952 769530379 180464499 981819642 5513272 405101050 116915133 466608943 980461017 919741985 296176625 154102700 234050328 670656743 717667974 996231228 541077030 365506366 442595666 661157388 521635734 6235051 346050211 91322654 678154350 505092141 747665337 262138381 682962788 873264605 257655434 668738671 241953482 765676068 439853401 61862303 398301172 370949815 680277125 97436900 350323988 926838008 495700606 575530755 177307556 812198762 860004953 365044255 456666512 375987167 843273658 402516570 883307415 908588765 65106507 529382303 539349501 381134956 175927432 357433471 883289395 32001889 605744988 780653843 596815395 647825556 612540900 353570730 737267395 967565269 519716645 257623699 173800282 359053162 631581015 32073968 60288091 954930434 486648921 902219794 180721995 570168809 327181299 623255515 366629408 76224587 990006328 418778278 835541850 992698414 734893242 384080150 981750420 352720356 213637948 750304287 848104191 210923589 665688970 366856254 791325643 714871046 698580248 150421032 577699175 852605784 637930738 633979562 273678448 8292202 470859576 880856058 906121642 750979297 68283812 303362716 327874441 92663384 26471411 480056919 221385644 242774345 204885021 953648957 385247321 345894533 915068503 754278285 726345716 475829482 335517199 177508951 673890487 53851358 533648504 592450416 277826875 280118224 166463171 613139928 293645216 30068745 775650285 390927760 969035433 937899652 51482552 780686817 898801225 494132682 600697249 443921950 500188304 308381651 926019318 756858745 380460682 4203740 151238275 818361834 812083808 392609262 272575788 129064079 538816214 249193010 213174187 574537736 688935865 641592807 142127075 854866068 339627708 623552592 833267973 755676187 743629971 37008399 574331580 861556789 668009684 956537376 498511383 482086960 781577697 713925323 919201027 859110801 721243980 615704241 256741644 61354941 980721099 483518751 355896062 20387558 544695041 495706138 289117351 242882033 227522868 190152469 840057962 780790683 177630838 598963799 560592453 414705389 757720041 109581260 818941274 359088945 906270474 325551370 219526390 148606555 456745655 758822763 57442069 25827878 159863665 230101844 729414293 638470405 526488044 879922912 696512782 643982355 770437277 163006928 597620798 546156675 244612836 226123007 440439356 746299902 531294866 757358493 907105306 473818021 939754615 879749039 253576916 826480396 797915510 153583694 996139339 836541116 95934213 261750576 851626874 86447003 725135373 965782358 752632805 569292181 321519491 134720888 241565968 291137411 582606068 868575471 973953429 527476546 117517432 918324880 208098082 985911051 785800838 510835404 42445121 560331692 832849667 131644025 807384699 461616435 913781150 76522017 737346744 969355638 183619248 662973501 811951276 822295388 490244636 425689246 171997432 507383807 412247458 694296635 461229343 130455972 708003992 439080039 362329041 213658433 300043536 255174962 209417493 966607905 438454940 258326349 84609119 998936294 687407657 411490870 923696310 475232784 685150174 460292450 418494334 98452689 648298675 184506447 351421830 204729517 428601101 955612453 944938393 94515887 400641771 136277132 167447684 381434310 359626553 385425372 280722270 701049013 275726318 708307339 344002731 613335743 426709257 475837455 80720058 676386020 354836799 870949607 763734867 215718808 480309635 53431273 22775763 576081581 624926934 820826932 1246405 246917185 398843236 721459230 453083018 576223412 924194371 341863512 751758790 361457011 992467839 100875909 645545172 575690858 328582186 229167798 569660983 837468121 478959228 669830212 446902317 316722062 838238892 7284210 501137249 571564887 571164516 654915312 363853186 770779223 10940602 677488414 563220268 955297383 284998318 241385243 180396425 935503042 106511311 267614454 300646622 759211929 563382093 803380693 317342708 158347701 447370630 116860355 745555652 153474930 462085459 795865161 876634978 664654601 942992096 988076235 25525177 60706945 8620723 893995500 347228786 522366862 123346819 169523501 490221965 531987925 995142276 756660191 201622781 480074487 241746785 161974072 323509510 768051122 617531836 147831681 533939977 752042597 81058628 352999282 866174303 176680603 104132204 632504811 589096633 676471745 65735531 101538220 721153880 812954742 703950880 711401450 182497223 563436041 281989669 643509751 91825209 353829061 324730429 906291641 334674679 77490879 582733732 785693320 307220580 778329044 935951914 606980995 221921852 872309727 460759941 572726260 253820983 767112730 932405628 277365716 507055626 82630822 163762839 164571711 829588069 820129830 934418231 373357054 166446173 365597653 823904012 193389888 99964473 121484304 151611837 899144844 638998294 329259673 31594527 189060963 733969976 44424798 834581339 37691134 810006108 820742653 956434261 441742127 943562874 291923659 224510509 243110747 773728930 998854982 545748918 873079537 626935822 537192546 734883692 436852148 444009449 890271651 715861688 952237772 954484102 638980727 799546869 588571117 367307393 578845042 168414357 612585786 161376371 199029692 130779576 718924860 853649704 898410197 838736852 271576006 166964404 244500386 493894986 37696106 242583948 222041129 518318220 166381477 154663522 277776289 964528236 565445694 569101892 760829150 169780670 779367045 277633798 536606420 172222928 707025387 17043184 95399838 599445404 699852752 49576363 810886833 348718133 209085048 167744994 242027023 404652063 696231249 431072444 745466475 124642778 639900673 833168274 530969151 638062680 812712228 596139213 693255072 956951800 367289178 598883718 376867964 557458680 18773026 521191650 587766380 588657071 250460665 541420198 146790333 77791222 422140257 723794230 103612524 527982781 814280519 214440792 659631286 978386599 945080251 831630644 306430516 792654406 74737063 148433677 353348431 243731758 746572655 581360375 388263869 718984607 518457804 693363515 323961504 476547222 240006111 138218593 598484999 465245666 10654657 967784398 414834266 746515640 891420847 399851288 148657861 872944474 834112013 691646220 692658847 401240296 789737773 575957555 211043335 523953937 991663342 932536067 154529152 946318497 696045536 352902381 84050392 379530783 862141845 140261388 111142365 930995064 333850970 548064725 109480970 549697010 274219911 270836234 646770039 511727904 460758432 419401135 673902210 764566844 441884025 609944176 994627629 875404334 604863573 899334038 741803040 117405343 348413612 610725203 848721976 643432664 999300055 709288071 400541598 216566473 794836171 158881962 523893749 694307679 832927708 221199827 442114912 618439458 607377582 993710069 773920072 554192153 13407100 90545760 627961485 436489007 402457280 64214508 886202463 456958220 482512605 77378862 502424921 406153296 750524176 734532440 744165620 618883782 312335085 52142018 977231799 311741480 99706716 8996861 295023139 85759533 892186868 574811060 358830474 415848560 839056909 609227727 597326618 14209158 516943276 241220028 465214630 24395921 942692185 807635823 647772804 18335350 371336513 889388705 133262355 612871925 40446627 830451421 77691567 475243386 786284962 328765521 780798699 220655399 902724826 828521472 75465427 616536211 793602699 330758786 689320499 922161395 775884935 407035767 936338518 679341003 692301220 433272141 841958772 168667998 37795288 556802211 871553520 480184125 368666860 338356446 743515627 930412552 44758240 45157226 410822115 619911546 558273002 428645429 996926564 193690578 947480144 201098380 342325072 215913740 957490773 393887337 332669958 783874827 517967133 543823869 64971968 244358245 293794693 76514181 14377378 697770671 939176309 752425904 944276883 355350280 265471608 458990544 23147563 135841986 742878403 435685869 809109465 302780931 707675742 776094924 876122889 595810069 893270939 995743239 137399081 715919664 86569970 956457039 63789002 936067519 677378938 740506354 149265279 429989214 525585572 255473457 458872054 948920083 345168172 153743646 852459916 981450532 513536419 844948500 489060245 185527014 632701681 969349991 90409410 130537920 194950147 197512683 621895549 939909748 655950850 514679148 319584590 405960096 193079255 346024725 288196261 47132743 433388454 947504100 138086736 631818420 984855983 397190015 736116829 43309198 103416559 728640471 249323652 427905517 447158487 462331 857909590 935875397 438605638 752189010 767476837 546748574 525014462 713523136 974421245 780608980 328963085 498784320 36763252 656681642 36050621 536222051 556259768 500738451 916453202 288893384 225833612 346760656 924561868 162681423 927001084 479956548 701593300 282627582 967822980 556751359 847589846 862171280 1189792 965993825 684672637 703169022 108664945 779150529 159113277 828487718 365280715 937108385 773332899 38039405 571024607 975054551 899997944 847606637 340463982 788698989 865887505 500270072 762238783 59590778 515180910 791878083 886717827 629495937 804175264 946863555 445487144 931398525 336931010 748591038 887381459 28177943 279348941 15772622 482935208 908289330 292239358 964776017 936997995 269356638 516509693 199215234 56855863 313397581 838340104 183617186 455792310 701368763 115207361 925375361 167164584 331412821 661156787 462945012 203106970 257799882 592767487 444156780 653753880 181661577 872538910 586781358 886450756 727107020 584676533 432957951 436842293 737027094 543792285 324701331 100446311 561137978 67472027 765442561 321361800 789102778 342900696 807037612 744508953 435520353 733447148 170873429 541775060 614683179 667717119 776892797 360420227 981364693 921890144 485793220 215420456 379499480 192860089 552021514 670115111 634399166 166416155 264666781 279260066 181144118 247750609 36938836 423954133 991855319 888959438 905318357 260258613 329582043 98304623 536117095 313738608 766998893 650074201 599373863 981038864 363086818 476510827 217813015 696126977 548465445 776503022 125795537 953176004 98493637 120215276 842956145 83044350 403277031 241862147 213743753 619228449 337412899 997746873 633701702 541196178 674699032 619592347 603960079 149519891 29385976 50310899 210567131 424621966 162146849 943222109 989922025 373417806 544952404 912135489 439186365 254819387 14326522 269463735 739902204 985190474 9394620 367620531 274053295 124688535 885406608 796413914 581741662 650514708 646584115 81665482 554016129 522678376 88546028 700537893 140899575 665728280 30000181 535232514 997671343 35149996 442576805 161035486 790619203 713471710 12730443 396777183 569725029 760863084 944128955 235415559 913028322 59296874 86987506 401061402 546935203 548928420 273495467 708691108 897991915 381747907 845767270 161054048 647512273 568622215 387895848 326032897 351034630 323985512 339283833 762338917 770323981 122879174 173020709 389763349 567776172 1856270 90913053 759050645 713541657 103948394 638942511 286696669 827211878 488924876 793318245 944569134 382539600 868379321 334154392 945485941 950609912 397102333 653408590 91557061 543788424 730751326 463165484 173860561 573710494 480802961 480302160 790714243 439730595 828991612 361048195 65553353 59180230 122752683 881129440 724209959 677490152 952941590 16068740 41133164 603327550 63642723 49409255 876667508 797900754 26308081 421726401 358978485 837915829 882649962 726580022 457759105 228217544 551562096 603721082 480671367 580762523 957685306 707064216 922210411 97415214 729120692 400259598 58378487 34904505 432369484 884659020 171905250 204569512 763121299 571288756 317728355 395578936 251350944 112097090 446102897 295946013 165114221 37148066 495133679 109344915 115043557 184608864 148608292 744458043 458313785 577199581 615471298 602443135 226978844 505880717 611885782 902333929 811253377 149080084 800148386 463402182 731266780 648768469 521865092 713278325 552968948 919650730 196533445 645681959 253220429 391737041 880276940 479217416 799713164 570217031 180112246 597673834 320734611 989943966 271753827 958812520 859810793 282660077 235604149 957194902 318703840 556316913 31499254 897940051 414093970 212632289 234375143 932289351 391960899 997367192 783585549 58220290 5307906 308813598 978885763 70597528 102346545 636792317 250074879 734569922 316364159 582544730 75216227 509605643 946650421 572154552 954098001 311287936 523819355 841648474 339537233 549349790 484080488 723132426 573777335 201899498 681008218 480134632 814897225 939141362 827903875 333553616 438581837 977214691 192250050 881935483 853622986 100393172 917667472 915470294 264929494 352419805 773853865 763235288 113307590 238899518 683250899 353982936 585066113 903285373 806145591 161203943 827985587 895420784 210320010 669155056 593969365 526059534 818752975 879937663 97790421 487058654 635713034 147876038 385247460 799802049 622293985 888403333 89509513 27534657 843486547 27304393 672611085 48226603 551857247 699507234 465917113 267202385 899472215 156249400 815619203 268802778 135113212 485058091 616818781 751323985 12785967 276719909 753336708 222848918 865567609 816162864 549440778 997167051 580501532 465356414 232924462 818008891 494410751 619004176 582192614 491930219 332270090 305882436 718349292 436673558 395012214 364149776 798342666 226625628 23850380 359219787 800759182 837445265 614523452 851541909 213649936 700972 38877085 934959054 480885789 8298613 975251867 327884506 200212328 296479620 544421169 899613535 62283026 502746929 627441392 391897262 517533416 177645156 566519385 569152644 391236718 847091984 792812516 890472613 126340646 564167061 605118459 925153494 708801304 14021845 857271606 284521943 135451596 492136014 632531033 409362321 962694365 742123830 787451143 698472930 178225494 794602660 713798555 655409845 600462951 875733775 13577190 321644053 644960082 514632989 543145490 737300301 863028067 945281433 734672652 177180108 243225768 320029481 170895755 596496111 145691688 644132109 518408157 835692304 641597000 429965686 316353587 8125310 575228730 283482866 240278699 776520631 37405443 419067629 237916492 24534754 444861443 291195131 203187082 597899316 371389807 950265145 810432972 757070694 77638760 983855893 468715038 794433807 707919876 931755998 391359118 727614516 731065304 968251505 489188911 299020581 14337191 316332253 923510538 582805298 600860344 243951054 171938653 536401114 759655553 30713626 525040629 932871248 676883806 32821583 816559097 903960145 413478626 585783630 772959632 995392817 321838261 378036760 354691276 970567614 912115404 176322998 353115979 41262796 810354665 84055481 451302141 460968020 320062291 990212676 732832881 369007612 940715589 68592815 709100773 938814313 21031077 494775105 451257944 748815191 100745988 398209316 929241780 578139460 708876948 99027623 58376670 880681859 268891620 269793848 422534035 185247199 577607459 148453586 557006124 259055948 610921155 121304693 414630576 395597306 370915493 726029085 388164340 349047305 649200467 398613887 841359322 4411465 631543437 186609146 79746585 781687476 934206038 69938380 519009391 285686961 773503992 752520187 782955300 499152830 499623222 663122298 659400774 492892458 617798658 8256174 94901443 4290702 827587892 361056438 849916866 311409662 552996370 242324841 464145952 189628557 431946028 198325136 445141122 835723666 19720380 466957174 508328415 112788526 740028288 481199568 264669294 462524926 621142372 392879200 52245382 290088525 726611945 306730075 842695301 531739416 174340600 819771716 987624707 353221013 84263002 497570700 95599385 913478637 254327372 32336320 440160645 857471250 397281872 668585339 307671889 40025228 746028379 954221070 154816699 550345350 664760507 576973030 81646124 991883421 411298245 297500346 628499917 497511095 627824049 489862391 102009459 192498335 208697909 74748653 664156192 299483770 914395163 932248885 318111677 171756726 190572204 477939258 290521427 569900956 509210295 54733653 691292272 362349491 731214482 93626484 427631595 229215508 933533789 673666270 240066965 141518154 207049961 90523746 762579269 169764084 695642147 563296277 81498047 958600166 646541852 547992641 31131159 600141334 738807582 145735699 993487146 2386554 117433908 454973578 182689855 232892806 915959951 73279792 83417945 29236961 43210285 826885275 868430501 583461744 55450422 448116926 69914584 89497338 324868580 847519286 758426335 982474467 280868454 198581525 274626730 241519798 30196231 221770731 443534857 214270984 81798009 471950523 756272465 810446859 197829191 829873087 432811177 464617585 1492182 244002394 119545925 467209824 93024265 645157427 317149874 584257820 608435261 331069421 493847569 95044752 655931594 267790219 672215627 47277550 277165169 600210 93653218 283933429 655833135 327785148 591494583 632087366 224497197 941390637 567029497 308720011 855358365 379110223 180065014 187875831 36107034 152271582 448451687 89843571 88684849 589007047 698795566 834250761 583067727 382930720 220971031 559383855 768451022 276776509 513009200 864352772 936686805 952539160 237175695 224718445 322330264 260332298 387604239 817211215 781957052 625376837 941836358 173602441 605157345 497920132 902042266 906719245 325389111 968977370 354598597 330749163 821425815 18367209 760400470 120483630 134911348 390840745 752446930 564083845 132852911 219149981 984021367 811089978 618951529 334028478 560211687 444809796 500711678 693371320 477821819 571240462 572762956 409650171 282147025 731815663 964503028 946273535 143220074 410860070 311104149 820492205 783987973 571199772 473996552 180531221 702005700 683598399 162048226 58250534 835264244 257766493 306576582 976017713 58163376 446331387 870927473 119207979 997206056 441758650 962023171 903090448 547019923 139672686 706844084 861798794 91355769 694743348 258117991 377390104 653055506 390845858 293564422 491718631 565757586 349969388 97466737 236208247 674233096 799139951 848506372 595930951 718756625 374041505 953812872 349811805 167905979 527835689 713140649 366983357 646039397 988926291 80558708 570014075 811665174 808063858 525056748 762892783 647402191 767775528 709017307 534056260 973289759 718339185 15280313 750193651 280347629 344816359 247462781 360339099 689870277 679314909 886472939 984072610 150825725 97162215 902193373 698061928 35797153 739300535 356897724 114306926 311406878 958699434 684149413 750892733 608519847 818403067 737805049 632860943 570943756 880663374 954626935 115974268 740707822 446432789 931983051 212039724 86798291 42388286 337781260 671855683 700975697 215910676 889533142 877978048 590368475 908233318 719527584 472937232 414177856 645343564 283857968 46403711 403091741 407465992 794934886 154303576 333638800 231114189 393068065 842097324 348078382 323389791 611343192 31941415 43038128 28869601 119139462 473831834 398559027 129776253 755132373 300061686 839564289 892660595 901180070 139348386 316598624 221645423 682658790 128299107 595252589 299381069 86774248 863444500 863701954 468356943 464827239 891447897 337028024 421568998 615664567 472907050 729553645 535679618 565812845 744854494 538289141 210637789 837035305 905591211 520090250 968985486 312081060 37805335 621648385 641533915 538312297 811197504 955019783 355495688 935177218 371974006 369003933 824042943 472227717 820579908 830169414 900351925 160995469 349506101 157398363 692003165 509355423 595252674 802443357 273498053 51645977 686849892 506996743 860782876 830782414 953907948 889715146 724795772 714135917 95390526 517945773 865731085 22077752 393619644 494416559 829989527 211206929 769840958 682641328 241210240 503572470 210005526 535892150 322998867 660925015 831006383 460668392 268825546 439656623 792560055 316472914 135163581 670215035 795248243 256320380 282753928 350689721 30301723 671813791 454190990 474237883 333692242 42114410 405624871 603314845 383891168 983969031 242962441 669400113 899525857 812056820 400307457 536194916 759422347 676066040 197172173 944755603 309260858 424104629 20605668 177582187 618981508 533057305 931907497 574214306 880939678 64824792 529706770 585522595 444479560 456574897 699610640 434377945 158669993 699724106 974976941 918263381 801016723 738484253 479858781 116065775 844871321 657183150 446752354 965546233 361728289 912196340 190987932 206206943 581863592 818479318 746481924 190451816 468718951 601518201 235699760 578583908 653289197 945275120 157621656 298300296 752920680 322249393 96870357 352102798 983160666 905331992 787445453 405821345 551388066 585433890 835018353 999539169 828730745 475372685 191610450 619333568 73338274 379511684 556688406 735913159 31092715 300329456 147373111 704453030 70744243 402755130 447142935 114202347 30207038 616908117 183214565 605751703 373765341 125673805 918154668 453737414 619958431 297373156 541011225 626204249 698609803 197675255 319387234 924987299 641752690 601335619 482618275 217404922 847072012 514421152 909338271 579281351 224125919 752615580 22129929 416905856 853177850 616566199 768553316 265087694 166605953 760761936 642130245 923504370 350124451 268095990 96675672 789561067 238492298 523597992 60684392 213589887 17806365 789354393 774308706 550165169 129360742 224566664 486495765 754457736 283859379 522425624 797065500 477443161 458800546 644864326 398064504 845466907 683573704 144306031 188847616 620038787 2554210 431262387 713024226 419734086 829272974 570367055 875187844 581831940 435286348 779037153 7469052 201447892 834780965 880274882 757276014 290624519 636699021 893554054 692489694 538835314 890583266 711802288 571568575 455262543 511871106 108354131 683663647 651914449 371962586 726980017 410453159 52438552 222414002 842603612 309683851 997586095 939346906 871376879 449253756 287832072 836892317 372454025 370142915 325604668 994541866 3844362 167509800 296793292 33215564 729220650 341904996 505976752 819797818 609620091 750026850 421045626 507264092 516111345 214351563 406071642 830596830 642645162 386391228 49299983 848010436 883502916 925073619 915632543 636924763 339668827 129671899 584526423 798339972 372881177 465093754 774553612 497869424 114197061 548947866 258060593 910279443 285947403 545611053 370648499 156140934 395641156 318826935 459071720 892525204 397672090 448677067 59404329 302403025 551231498 887019232 214271379 196059456 157327737 632524541 542098549 950676796 700954407 551813710 949421393 443614130 978552163 229020152 276562827 789584895 472367841 999225792 726213548 30202069 748538861 582033198 721023967 258385397 5684967 76688638 536608590 818338670 377675694 854243284 197332151 818430773 926104940 389506146 1694584 419088305 888390894 313960762 933816455 274805409 701192801 284168474 640723303 631563531 736395686 448192282 345321940 253169988 626817176 925388001 150673288 606339595 850696330 963752479 173486823 454247596 410568675 676876955 930624597 3705499 469007082 7822389 983118386 352516479 897769213 564043677 35639040 46888928 178642506 460975718 318643219 89291012 780549221 935095979 809574318 728699155 274479021 139483063 684485656 337880413 925818353 47776080 348312094 807391455 747594011 34801110 599368572 433793974 299230654 314035783 397377941 454670193 83582430 985627516 160717196 885964339 136653474 394386378 934903051 581883248 460331706 449421026 734074485 332739519 234085145 986530452 845399420 466511507 108913525 917636595 666466602 404232766 771287699 914986584 235067165 128295627 821884903 110468592 394417983 347746079 704702918 485545287 71848312 404563922 763190825 812693540 452732073 165205040 974438585 163308180 416384936 437975318 173765058 143829826 7941965 987643295 840851299 446798284 66892566 324151541 6408000 624501619 39628664 562166098 579660789 571334740 620621620 225945442 667898241 380297763 564625458 971413543 910646175 73478287 795687514 115578303 902784805 534086093 980813293 440560116 636542853 607964427 442954482 432664376 689632352 2345291 59552262 152236094 546237194 831479789 799226166 477028973 128884069 458100823 345008367 639737431 141637697 559292875 763315595 536492758 515544843 503538796 724602302 684194980 984930086 34815309 814916472 414345017 625815361 468753903 367669790 349690495 743244638 919292758 977180460 527439033 949732960 296038762 4710334 726987492 429925291 361408056 87228074 305280888 135046011 455052030 98015738 20189544 206507483 704393951 73703992 663734283 890269218 321891406 525455153 113545158 219632715 368008325 665957984 271859255 302447850 559380451 343722583 942240981 851730277 833052511 484054873 919826042 296616417 725574306 795646478 411175191 377222305 631043925 44048435 394677108 972651143 558404612 150450592 266056675 830021017 869512285 669920947 648314282 194639340 979528768 358536991 634475340 307995162 204950299 222905552 300827378 532748761 89088233 627425437 959469387 399870092 871337254 326386170 136801778 59993565 585838911 134975198 176026602 181397864 53074384 251033256 648752785 384993129 697960774 498788752 92065650 343365580 509728793 438086904 899300822 845223070 865064127 952895781 441175520 625310456 262026255 395663736 551527156 325739364 755726843 188715769 931483057 327850807 912982685 364251323 225579069 758499351 425632689 497940380 797717303 899650433 934207255 342275868 351034993 973704236 9177857 821867896 963524834 115792985 393485237 9298005 950348745 368306164 460863199 725416919 554288672 175996377 12342553 735819204 553131009 207883438 336995591 896715126 859054650 228558973 55656171 986136379 241315842 281817142 497041236 368659180 750103032 172342569 946079275 279581103 808710989 110443730 395895921 591779246 589068211 247404290 462507503 181874995 579391621 798737370 505251365 428593690 145486784 870070237 901973117 446374939 175427542 228123470 311873707 784228624 677969388 515629078 996989378 238151633 548255970 883799454 900018992 646477489 544854075 77230047 559168910 823659704 104507791 205849556 507630621 285901373 450593592 104440183 362587259 369885629 146826258 33865197 780703534 509746031 976958442 992892893 793363376 713028912 646713516 506406077 92331111 817237539 135347125 48542048 315749993 171472669 963805811 830932422 403983333 885068799 984340481 236332533 728375879 588993250 239869564 996633216 930794258 936676837 176234045 232754521 416660743 452071676 269767609 53251719 713148994 433487250 447256072 866064565 515621897 229777464 308474198 302270755 867384165 163640222 892496491 171955380 330562758 873675894 386777714 59894680 593125924 329428842 289461594 374675149 938382765 578762436 454539358 17517488 552329879 451391696 191184180 165772458 316724335 42872902 503436919 282143424 946794414 70023389 54267832 87678213 979395767 662780600 168157905 307087876 943827389 13280997 184576206 723102994 290598909 199721575 196058288 58172633 853297607 8373232 714558248 525432105 25837318 529928225 751628765 992333816 332807913 832820070 945264745 587353441 812135588 644612762 197130472 85990124 690685168 159889186 390297350 551121066 384060058 166470589 25904192 688797524 518828086 734215779 295687742 520916086 663579041 461060053 612771249 206630869 482891741 104364502 821457436 798707981 892587113 890422599 609912485 748444766 818149871 364304696 287706158 895004832 953629616 294961785 173288025 767343817 885987584 990361231 614478881 498572023 357691595 362123705 681270039 515436160 690539337 181257133 232154309 37632220 585105573 406871753 515807825 792473460 76058491 266461195 63228103 407625341 447835334 251234386 576907841 544544339 861681099 931233790 907685172 746367096 761279933 574527819 49017781 441185156 620339079 713136279 741597333 137534638 449122718 204043329 372735376 669514979 221933345 412006253 338203001 133945312 682342435 480685888 599264407 643606285 11506346 675712438 404118939 96506640 612924220 85110973 935970684 343221733 73340751 165894944 831509929 28099799 468582815 813602877 383014447 878472715 822656194 962045747 111817535 457780295 892230363 798401256 709822834 628285559 616819572 48600711 863383731 437368525 281474004 530706053 667259078 571004198 322703548 908955751 449880504 813918427 687987583 735512223 961425754 746927100 910568693 197911278 664104978 689294016 366737645 964395185 248969909 956531550 860925646 894708220 792606209 490760313 133648103 85302440 815206733 622284736 440527092 313750623 691463695 95093551 536454996 44488031 318115985 82791263 310232563 768327689 530362373 569010801 389512158 605183910 303261225 861196725 32691940 153451178 543394321 433907542 801344862 743429150 666090621 144643918 161932906 2309330 249436721 237389528 942513769 366511244 935012774 661618641 782137954 776501877 910997730 913523881 308644910 945664715 646800495 985603065 532426064 873721426 742226818 742300045 471068109 848611064 42783155 511340485 43775024 861685479 168238968 350080659 795360045 207374852 757047814 448130153 230069125 738770166 976937049 17283273 396961576 279983957 333004213 669302317 263721665 748980989 493580280 599314658 840515650 56870259 307727548 409318445 266400339 893888158 67491590 68775788 805994024 38703036 302227960 462851107 462126022 462635742 374051995 460113514 373369345 140209427 674298943 590821782 850004151 226750631 16393558 900390481 612152096 96537570 66198524 368623581 858456162 561812107 729147481 782390127 799778045 405252032 269891566 245575888 359971598 870124704 831218243 628344446 75440287 167801937 924480599 67064412 332487621 504463178 22305089 496902732 245334640 669736135 376669821 965432379 603630156 707421963 867912121 389752831 612775756 122498844 370774170 126749295 598799149 27208159 906267303 639892134 883746107 712254070 331665627 484575147 75588991 124822798 315441966 380826714 689028580 293509355 249434931 532704843 14444439 137046152 789876001 249665257 99433861 849475925 561365222 513713170 595673772 253590926 693845230 8691185 899230512 212086291 720966103 304492790 176995106 752119162 735763305 358343357 626324002 547156785 438689190 884892537 903973646 144090664 224060355 42988082 812133792 365839437 675610578 216460729 973174659 979526289 209722982 156230158 389480909 948578655 416821674 833265055 241837296 519138338 562283106 401392889 430044298 241710456 307311614 578778888 256075720 758366600 863530843 637360627 473664677 294541307 188314063 853155034 732693109 119127204 452605919 982606212 278518217 73737570 825543362 303410389 360728604 400425735 960864856 68353472 641901522 674457137 707173289 636791528 517159217 909446627 203300852 621921546 511627023 122470941 809239926 886686355 48915597 389276487 295011734 659016090 473585672 763719400 863891 205541399 636050608 132472308 769503230 477520048 125753597 970042851 288150654 556265384 490794300 674530158 673703402 399832303 221065246 13228419 268997563 807816447 59625933 346717952 417627253 536066230 839938514 380964766 261566199 304356393 487595131 496958568 687383493 999145312 838797881 893297789 338053937 111485554 795957399 633957567 17082412 736979657 397826440 198165657 595465432 721346351 149397908 701021545 894535797 668251504 311259204 413321609 615909462 680667756 386910693 766408590 735001026 469250451 399627242 951388697 715430103 800598940 225186044 618508083 657738341 449707150 187745429 37040225 121984112 904224648 739753964 738218673 701965892 829878014 900268774 530197919 760395269 846856260 51550305 86931909 808525096 191809704 572427053 479891101 672395151 230795668 867362168 745583269 470300023 782985309 908614780 341791055 740156626 937174220 704343818 500348121 707660855 241798288 482792520 834086310 964465880 165660336 282486389 362597235 199606892 340810182 839224301 605154710 507853086 552033573 678385584 607146761 199692841 934745535 899702825 386309433 452291945 72763724 700276914 263260678 859808006 588052520 320715105 823329701 798520739 80661382 925273204 296022719 364882779 518018035 290131746 896476242 983566626 440327652 253118831 110510892 539557229 885573936 94351181 392788765 444045721 427888546 709819029 658031528 934070063 343920371 497719051 647139357 768690892 190578350 557268267 498764048 920334338 789160280 182051238 463254616 791014650 82937810 611442523 633239679 34092882 919263870 505469796 666120857 416088107 286681436 422351731 180247690 523607521 451903351 193746696 236997663 866230447 826362461 562151151 960822327 108579473 497736889 906446093 80912644 305139066 885100447 483417059 966918274 850078459 898439443 193254331 415662121 323954778 406821066 935248140 982995870 636025061 623445132 978366235 43463924 465408327 946481025 47503152 939218323 685877120 652229306 874790048 486404119 726762775 404614441 959411810 847099642 619209839 376439163 791335475 858249084 49503402 797580049 2365369 51178011 694624709 940325328 672120231 3981070 745951086 337892199 386566935 500408074 364606973 189738757 468551306 758427517 950217387 866091237 946339493 444918944 725458369 764693101 290977429 657519132 323184774 711624664 789633290 355670758 762878257 822299961 109559679 315698454 670215022 601424030 130388967 377189283 229997446 87057993 563374733 283392229 839389411 614433104 489263236 671464096 426566768 760681755 525477438 173437066 150092957 931091447 559375076 390505811 804590985 785809746 347201872 283698993 32963741 827797608 975144156 901253289 82257730 321364818 733017122 311148157 819740183 280058183 643882456 478413364 477998870 163226270 770719019 64563404 456635724 157544272 272813598 296315823 582800959 405999550 487937346 927941615 24621763 672966789 721273179 132538662 486417331 988292097 370308487 500337763 179319611 883383397 467146355 199123746 818220881 864524285 898934156 530127119 48418934 640815828 614400977 594856228 980572188 555325165 542306044 829734337 618629122 464205427 671714657 808704742 722936152 426581698 529964876 36840929 543036769 768963435 398887428 116093508 610606323 511057424 455678078 16739784 800571008 901178380 150848319 942110304 805257048 12026836 240498798 371705839 528108443 398895915 915896346 828954731 124175097 798066895 567059360 886447768 462097139 491151902 238863959 73155459 655399761 813806767 285088804 268804366 685674320 781285035 970808153 581314815 871901393 554476653 50818905 372746619 833003527 653895672 361922499 221067709 113389305 711977122 633013907 43270084 520904576 440708401 684716407 214108631 865605797 19837263 133872798 677206836 264787016 901546450 461576102 407898924 892729639 219733635 113312809 728219666 72309237 974341888 319222531 773931420 822656492 539136359 41546009 490953369 384560155 959864724 627331159 635312726 370709281 733329937 186957901 447728353 570612814 918941556 752359950 948834049 50938531 601704401 53493079 164842863 863312776 492031532 341841845 307348982 317585200 12073162 210084978 931108539 979112612 945154459 233018622 559559280 145665674 335720156 352433948 792270903 635949281 70544325 713865690 699312069 702861850 385775460 256396081 159624015 548228669 348088592 400329995 1092977 260844228 397298296 652156828 961304497 951012776 883774501 649582610 614385739 613712251 823426373 298070166 702585700 400301459 766348429 379024278 300686413 954443105 992992583 774682422 41315667 591228991 690346701 883979292 505014987 226515077 173921997 401085455 555313515 323999383 619636595 251544759 302892282 955434733 789381058 165756245 476209948 860978532 534057654 903402891 422447655 576316335 935014459 619253449 381509022 521327569 822520603 451020107 353235256 906050582 293711685 226576293 796596217 902840265 883145757 236720258 601293608 861580437 291996880 429248732 344793707 816477190 292324008 818233672 155773592 43121312 775645706 299969363 320141916 216245335 332251535 496235873 477627460 960790558 75586964 90578372 147580211 631510074 558833198 884479098 200628949 344840619 830063305 271749918 630319844 503126893 195658571 421257625 492307640 773875937 26444903 652476407 1746418 638508815 508352609 590823906 303094555 573129284 887646179 37766146 475390600 222362646 463798547 982784707 991092029 451189443 735175018 437320661 122864286 282897295 309892392 249197038 626910419 631388421 89667184 592829365 147839663 357713972 106272400 870581899 434189175 330278364 23934680 41347382 258056199 45260819 747703318 620017277 3101975 234044063 668758767 673077832 334359225 836263441 883940323 98564312 56697923 332910703 985783017 192311720 32533057 446014902 283127974 484888357 406747867 484808514 3048283 145372552 156825193 847954939 53793515 84289376 521893017 342916391 359603308 302707574 291461690 982886040 729929459 712497169 179242282 326160043 649214995 10130016 743561111 355733148 981957440 997910657 362003744 831014271 954780506 536507489 211432969 839897582 416073170 754698720 450820581 592084250 286601698 74637373 227943786 640829197 684956420 740317434 336725628 903843852 19485170 649101759 193646447 974959917 522198378 201148544 17061772 294038977 679043489 886609592 894450279 347686175 159242230 327776677 52200404 373809312 27670730 62471633 181709314 279986236 662051263 566812 280571001 282365616 244699394 229617384 710737600 142743689 273642875 411838944 42794562 186322928 751113313 389221467 645660806 126816129 233770226 302644903 830384651 14486404 169723885 878422553 680198410 357808527 160913558 571678103 24836548 229183893 516131680 240452517 818074877 369714956 343508236 716666530 996506837 95809576 557316658 906859138 148966454 892808199 732655774 27726220 141358756 178098427 393171595 20350132 704031684 624815791 648484535 86680824 873114065 720365134 908406726 664339262 992032003 507080376 948283657 384367468 358133401 722019444 305981065 2743196 525755269 266467353 771643842 27871813 956098877 473911235 110178511 867455638 496821411 73488794 781282844 474088881 748312198 861767517 558809067 190479595 373155607 201118966 293828106 489345715 984775059 870261839 669869844 816960121 105261855 966682127 809699343 524422618 323014811 301022016 988567724 504313732 639563527 910387490 671934646 584686575 468323373 533849386 955661185 601016669 154053890 867501120 47152746 11645205 524081146 636930276 614781126 568400243 409392843 934211948 266171515 907808052 108300748 48497536 780914439 921659165 538133180 209741421 690285408 463099958 894431133 11469520 108820976 919000103 872309625 833396582 756234567 173110967 876599106 354269263 637526533 438756115 532022878 237374349 168581061 286670352 759207514 853160846 550317546 400831687 352903498 764193168 754079455 730728 474786503 728876254 614760053 457712506 348202140 137359670 682321085 452372143 41653997 351672664 405015327 792107827 628815519 233231214 430592633 158691305 681632794 687071133 645791196 168015173 317676378 828441140 447503330 138602798 341078351 610530917 334846521 595570998 11719633 673942334 49537031 900936809 23575880 892681365 571352337 787021122 595246312 748007234 117005398 423135728 830087126 502846617 559956739 38092725 807159442 629946226 515852471 174824339 766296126 593531168 920719985 971069031 949535514 987701738 460444225 901073983 104083543 181346439 984978712 709913074 847024214 527718767 34971026 74940471 489628960 133672601 305958306 296977164 810625115 332962864 97494982 505047309 469292098 450673226 947818536 104493877 950409607 708593930 442582206 263981595 2007128 460844314 834292023 222764779 498011082 283057745 471439535 169437151 728043736 149003637 501508337 466797028 721937095 901545189 243950149 580055733 196439881 518501042 730975914 570152876 909829064 610712743 960011247 419682717 364719069 626942744 447142086 681270265 151169116 230751567 383137077 162133399 46523124 301399926 438806869 884672981 292776945 90983840 989043527 77790452 999241965 991392740 73765483 241773520 402812968 319151374 864940699 819127645 347673278 996751580 362594312 951910427 621433428 559321 290473572 461050517 686053513 390958145 873424524 898590419 719626290 237294482 670962506 621895835 103327509 80280374 279503828 716674106 987473313 103773172 975295922 644374674 944509859 855397505 261090828 160197771 179732262 351530034 667304857 121002181 476961758 553527027 616975506 152513332 292265278 848191591 81607846 698805426 852575874 207345658 177622419 248822897 339829909 30078728 498631954 211576893 365802489 738027188 981177025 96207843 737434923 409040985 64685911 385028361 835923264 826866926 25167002 632976361 755386987 674776015 19388821 627058104 872549972 465544447 65197208 656509312 511472440 788887539 390530495 789171835 210398905 303740902 529481921 179060799 406419260 617125776 272657830 73530934 523458744 13464014 668827775 38577281 881804568 131252316 135800683 627869259 758579604 133203871 921844717 258268062 104195326 983883108 109188134 697572385 308017269 15415619 388966029 562538224 140264523 108990901 757399952 307108024 728951177 839560023 703551250 65983409 929063641 832506467 86929916 273673429 699637238 381810957 945012100 815291432 544510667 550638543 556019730 799248081 950510214 489643525 210920935 123633469 880038860 804512509 242881035 622925637 148264103 899028767 357358250 268297519 435273025 656091910 242652482 119103985 229177570 302762472 25746555 563241280 251021940 338186830 854165941 276269582 40307335 832714921 460537571 802056153 519275207 442847645 405959436 211821836 645837221 652041089 549941194 338183787 696222072 453678720 227049774 184294845 711534502 648855181 98121881 829255344 266929670 86459260 700654048 908777839 903679699 174374145 627469965 938814772 449798023 238690056 204099242 329415857 137783940 304986618 539619915 200216095 810330870 503983399 506733190 707231577 300977474 494262546 56455909 59075746 777825847 310404945 38987850 545393693 462898461 975403111 417830145 34566840 534703193 60709113 698981885 572316555 949505200 949727871 566214100 98317170 49574329 785694949 522498745 472585064 707203242 974266658 969617132 381196427 348696597 576786958 92694057 914714613 829493227 901148789 39627778 463183137 55032692 687273361 58755662 225297580 892582554 787486954 593641850 903119468 164756101 138854262 866900698 228341555 411610550 302589064 522715242 246127756 351213251 306050850 569727297 530629348 904761932 854786218 616651484 513330521 584179825 163905514 763434609 169832054 4019069 874448464 534140251 576630875 26709964 5219569 741802632 300121083 76717432 202040002 369105869 706900317 806915460 615560285 39479990 732260792 415620808 155486403 34743412 453852009 76886572 322782688 584843692 992909392 435631401 339312066 596041509 550241338 816715654 111798842 945532708 496860813 265510250 469716024 734200753 442576397 322597736 434559558 809406370 337156689 64184555 159900345 214662140 201658667 294263790 845045628 808239481 740053805 875863465 115723994 307609002 349504574 903216082 902174638 955323700 413615591 612994609 542562648 721693782 273916143 573631401 306023476 199479233 322247791 617783752 885313723 216209511 680334738 412536641 612438767 221867804 274952071 380336251 442102542 583526704 524837023 248167372 789036863 566371101 34000173 40638166 993271900 372391033 351935731 540027061 240625803 786957363 409898930 231019989 944416830 336048145 761106189 588293717 199305400 253251929 468564348 592354531 239431896 517370307 754646500 840013858 531845883 321780822 192406645 194319542 597452998 803150492 336729360 795209634 759849275 388531959 171420493 437034944 553738609 989987190 780630226 672105169 759324257 540148753 748348208 528032113 907506112 509355281 487600510 877425015 74443756 152528635 165937607 874323082 776731814 255890443 240789278 932750750 805368907 64277122 165221992 786075266 314661556 553426239 628952337 911409162 828059599 436191401 761921237 891317633 913752716 419600008 519658680 354432883 814124171 841809884 246962329 329904082 314778395 10651660 422173611 915201342 112877655 782133103 693870140 664668432 188472658 109758035 344360252 680986849 910289610 607017378 630346971 792152814 165402401 956708961 445972012 953866366 754255460 34907853 317023634 449779436 188946775 360685230 248652616 535654064 526036859 795758078 570103650 219497814 717599341 700034533 806480892 199114001 418762036 951454418 831208266 603745389 379785625 578280381 356723435 387679575 221451420 97951283 309445897 704963756 388297483 925733372 512664959 828498964 549725501 90586520 660385295 703307931 120109180 12845464 737417823 524613930 866289254 869773086 575172048 73581065 720568822 7516833 378864248 510422968 34490453 119486201 366617506 550569065 989523325 554417318 883149640 102891743 2597233 906752012 333348056 395404494 288344673 54329143 944182620 531902407 46970545 758065912 719562491 996513279 716088018 710076867 500069756 678704857 82687556 19477893 530141966 960809010 182929494 399006969 381469751 472017076 255194276 642214540 997261161 752069376 542425735 942496883 635078269 414782051 864277165 565016615 648750790 340143162 12012488 305484473 382903566 404492221 244142749 418004929 970878479 555624032 962017090 27003757 843896227 723767496 784488540 805021877 8696578 289325687 959226851 519207459 473353350 261613680 890600043 647575629 493135947 83603943 327123559 463960493 572625740 72865656 536103450 612520157 245869924 904880897 94241544 971539912 674585441 282747621 562858850 452320226 982889120 51251459 583892291 717623309 58923513 829228462 119729220 412572984 894142107 254943519 783270169 626107058 502439231 929125905 172130156 38926979 850212757 862412760 944128114 857038495 985242782 769398992 415479175 833070999 631694654 543011351 345867023 683571286 655207109 147931160 246250770 691509160 123282672 426648231 142387103 320420934 807026875 160791973 145980672 976467739 937766088 625198006 9554604 929013324 943277434 980368341 268269378 297780783 67705742 478277953 677293135 664724445 167796675 197507783 813491762 976185266 655581426 78489011 130524563 88258420 15126928 495197539 92668651 419046478 401244088 462113984 390849810 452544599 949984868 660758715 915181999 272121520 85691209 873029377 726059794 190656136 129597890 120921268 331665547 934987273 804649529 916320910 600840542 371135958 719523958 185991829 617728158 577242356 328745140 137334948 772989178 203513634 443225720 368917441 512614882 895262998 757777806 427088313 281494076 482972075 174535765 494417686 299951442 506206529 327234775 441423725 430719206 32367740 570945924 821245931 397525145 333173281 569129988 495719091 997066326 342813815 218925697 815089916 428672046 567193788 684388074 231442142 550542162 725304452 421430356 620970709 598842389 899358699 973332190 583419930 388022736 264101511 902596015 556991292 753717387 208522726 561339994 377590872 518739846 803354795 532710302 599643252 91047144 40090618 949285144 951332177 126423636 772812849 5119079 673835278 446952107 386154471 751956783 504942546 672464990 129845665 71750126 807034879 59243586 438822449 262075125 590292627 54951247 140986786 434275928 311796713 534504184 881075122 209362102 108537828 974027384 556466972 574081083 680045508 842014976 573820645 344148221 689105152 910512780 166496399 825332793 187774859 687836702 31743041 629710294 269685096 552754170 12435305 657613811 726655533 720891922 813376573 673162727 214080960 51489324 128280268 337426689 491333013 278056385 59605491 659504745 946958777 414066608 889923148 719636560 471633437 779263253 318079691 332018891 157983974 107949314 591730896 764698867 557576017 509298204 800762574 322187824 427895698 903118732 996936656 158180549 8560393 832724852 47453195 845884664 879423468 761235929 675724705 589043972 367124228 509492684 737881147 769320919 738832674 489046189 974929020 802714014 81119525 801581442 449035601 158354611 187201808 639634445 941861019 345743072 981837198 665613042 194992785 230686285 86762861 324836577 308863918 936246155 343106440 620190727 23029328 273103989 929615375 859297803 574395316 586034550 649905323 596783280 597709482 94010408 999594403 97864695 640783461 755954958 565692829 893032712 476169705 659090432 251894929 30028855 104902173 790912662 168935773 942744376 49244394 709934679 417523631 578337198 479062673 854924807 470938849 226843210 881625106 742695319 598690093 205579774 219016268 294969556 301491557 441437154 299045448 946311359 756859996 628549719 20315409 908747666 53463872 281346930 93043956 674043232 584587706 347681294 195924376 870597376 585544257 143184223 262134762 460355557 919173234 714896313 347371632 113505381 298707926 606650181 154118025 730178957 785502582 916981154 40038238 22757784 524903500 41021445 735363427 962030137 522080145 90607156 306517105 106133954 641411060 107507646 709492027 436467322 395955242 914793900 203124862 536638528 892406564 359013779 836648253 148124647 81824803 29491477 553718352 292731868 241616437 331300890 753209789 343177984 634566872 422240731 585598989 125562541 837737126 959950949 79080340 690559813 769400463 537414248 849330488 686902542 624049092 534030227 935052604 140768239 269644820 962484059 84213529 256422542 735898687 947656518 978604072 184990531 653071450 270488085 109065836 552888268 456565765 62808181 425435571 809739775 539039464 147181948 433177937 444408114 722809477 248651802 257629622 247447672 313664701 914643496 946169854 534547408 292502724 828082125 781123290 406957023 974493832 426099518 538495099 14573348 284714316 601758630 826913651 336053593 877257565 626008428 938043955 655061270 359333782 585192149 125161483 246046082 902387276 469556594 126572619 843953580 151450822 733829047 650666376 422375775 117641254 583426962 825676765 114415024 360857330 741386701 182506786 389658149 758286013 766930244 743006422 558400490 638793935 25818004 642209340 60170277 913203514 245454741 370735635 58121104 670785144 58437331 200106086 588476980 742724521 438911373 133212843 90260299 74726610 898163482 133987905 350558723 431091226 677870134 278670945 812865192 501058207 446974762 749899645 141740380 188655411 825178227 3600847 351403806 598061073 366455445 942430419 672469074 703452484 901982594 22264700 35305777 144969805 932082436 748445533 475717987 206794921 107083382 752384980 585937894 657592204 17198718 659986973 629349208 267268820 808312784 779214495 977068040 645731263 646501952 347558047 512215454 603979987 482854336 486417164 575551485 691881649 197739988 744390587 920727345 909056179 959343681 475623405 992505713 344900186 912291354 219030218 414963702 812004509 54933660 531748972 254114543 6980769 29344592 994897007 371027101 193637284 569499637 649940526 897323683 124223747 499547115 176241319 527121920 451212836 294734363 57087583 507409476 699283980 962596824 437293463 635369683 475986087 127272212 224856183 909004966 225502031 124988828 74293841 686380820 667660208 293419982 574494829 395525301 812350621 633104945 353049050 204376852 568969939 468982459 505911210 999974510 924575185 223616512 639926526 871098114 92430049 397474416 405746562 382693939 206660362 642020489 371089524 320164370 205816851 863716891 700262867 636818024 357466617 77611164 342137229 409932446 444340943 150325507 181157775 232714289 824429454 322136053 935686091 859974639 269393680 491479681 862929504 375620675 17758377 647555707 89558442 839797819 535362241 539052378 905173711 260606716 387952790 321429053 710330019 774033026 193594616 527430107 137138921 580202750 598559701 770692179 357090695 463441844 984656239 161784014 370439846 360166655 85554527 476226134 349113126 597971532 213965547 870721920 16964411 285129415 865208218 626823792 712150072 164808531 819933970 497580135 50488634 768204654 843027198 184000061 47274148 81843603 149476853 44062000 724061793 22356055 344459568 534215639 624734718 977799843 696893418 222138707 844227500 596548711 443096277 891226153 520243649 689162325 103064037 37008718 595387183 276237604 272174734 735615585 422407336 50256823 371401394 68915998 731281671 151102514 637495800 552579721 929449052 262503028 80469956 376952229 190545684 841730029 537044879 566639871 378594687 331882639 206350581 241482306 618680809 200930492 929715877 326363274 542320188 432690596 91095567 506413519 410869418 291150514 90557085 787182422 508176704 407911095 149033054 598173841 669423093 976155195 513659907 326939837 188989138 538914098 346167525 22869749 11539928 762367887 909494437 570841107 128544706 673591151 659875398 260136094 914623480 879785473 499644659 241680180 769823423 679843863 156766031 460638525 361231469 544459562 91804820 496477453 364249728 248023340 755215128 470414225 918156462 309033996 678406817 530774151 992549832 371905290 903082215 450604401 303056660 928382496 390598884 676777177 778230598 862780123 710711890 439527154 648511391 966312857 865875066 87965002 281729702 21225667 889912033 759596492 618412514 137238297 593580729 647246957 493453678 652005785 235875378 15688377 882935552 518445771 485283922 35334043 349894229 40233782 383506507 536755051 615672159 138488736 566594790 84489397 878006985 971641245 817515791 266974622 718315436 584968694 552913713 238835839 638941403 168342154 481831996 200868300 137716735 449234473 42565231 160853786 834049532 664793640 588410424 674693774 947901182 50162638 405669613 794209146 309027464 533510312 931752156 58478932 8618120 91606103 404955232 88614448 875619366 299672580 949295739 146559339 837345937 906416059 134440777 716583592 788358286 482988047 102347647 736528645 815243194 635597258 654294352 131828614 803168040 647466045 180137414 941626784 594092981 62416346 166889531 109987783 637722453 971219853 661559481 640015769 926259803 333157105 799522591 411553910 366397978 480951774 863966341 795972080 370420929 873586154 201596790 172580863 784389456 637482071 441583086 216588352 79488674 47307190 142432548 216086485 524064376 957421135 573440314 931625002 872582973 584106101 885051295 614019384 811097475 946925576 561796929 370952167 378121358 917116726 143677808 406494468 10238471 423081434 918855390 372747686 393855277 324122026 888503026 415513980 435263332 509299071 71590048 897867571 873805200 435905104 800156177 116521505 251721257 968880432 222998879 189722151 895519551 792059753 838293455 494941868 575398251 605422367 818444489 39114773 513757490 96477395 788299653 177333407 58642207 341407286 38357317 329372527 375328700 401163539 14290854 36804555 848051675 601504047 138212038 748127954 433733308 916101795 516898099 44100913 78126299 236751454 760799465 660351141 414524084 366998291 508064886 521919359 694083320 869166757 499447189 224163084 506884371 283518945 71038655 421123903 150270806 727035955 153408502 395751258 712548148 7848605 124760917 674941714 658586045 893270225 468376140 678405590 554905913 686826412 229888171 176178279 855468641 767163483 894878039 801975461 416832768 737675935 996330157 218508313 343973914 552513135 772609160 213662033 515283214 28404494 818735044 197438733 811933247 130320680 283456825 788784001 116374027 585677616 750086561 210189476 772621946 75754594 148510299 495250542 329980658 419020397 982468296 269035341 626706610 187408392 422041106 579957301 388540194 489167005 187819796 639148337 115340354 550715127 549468751 325771717 276271142 315604783 47915323 103125582 610720348 632855442 790324543 637536829 305417849 3206597 742772658 974581874 798601252 614581592 608683143 531521762 315028721 402639658 886566059 776751393 402117008 495276296 903071241 491579083 770181008 947125211 796409126 249278483 932393376 729097901 444710354 964799367 154542669 477774949 44955300 318826452 435724388 594624370 204713201 696247209 431403851 268339908 103007459 344033864 267416128 609264481 891766532 951280909 854367495 485979983 93010869 454471227 690009437 765044797 558137056 31161227 642269856 57199827 536539079 44183522 83228520 243035147 785678359 434908503 551648014 82839794 426724141 762694036 93924817 467223788 437424191 43137859 264127924 493480816 605786734 989207671 464986965 691614278 673114982 222790060 916549886 653751328 515615341 884962082 715248958 376527597 268131210 765431267 291587308 550473196 338783740 580218374 559150000 10635100 698363321 956583788 922099272 364979023 779035248 577575826 958077316 221361536 630093414 177031447 159062483 521032539 385878771 8110958 144906580 796437404 137568812 721036135 726126864 362098264 378537237 242058580 106308089 680446454 579827913 215147013 321209383 804098398 26316359 958728153 911170386 216106165 753803480 86724428 752638554 349654779 736962952 577445430 218941244 691038581 79694746 251626430 759921539 190439141 574202264 529411562 304062458 293800630 198399590 55039391 63379715 434568115 4789119 371663865 547256168 673744082 690383895 661054398 352103002 326219684 426459749 95683164 701022928 484038794 500739294 84422796 26481501 252739971 310528314 92886647 427301634 874403961 362427153 402072280 269986769 646488678 218598564 918289354 145376903 360935269 535304179 722170745 221581311 200904000 683505711 713950280 968156448 906356092 893751947 497408392 458034986 725065386 688403026 734098730 217031049 812602027 512398031 70406934 932674198 601160487 272611557 343059461 996455247 166979453 616044178 866731349 985074163 286775253 678469428 326315693 790791210 143433327 397860108 618422539 526048510 59956707 622996791 276416488 551529154 228450687 363358663 213193526 130857945 169162476 489223242 993925787 678498551 3102122 624155309 406478851 865452263 145325299 474061185 581356534 929403973 189561764 339477216 504327085 415251994 2093034 504836934 305832824 366873252 585945630 439059834 976406511 576905735 104697864 868969080 138022051 436119641 166690414 320944574 249780971 933203177 124180087 511166342 435500007 323380419 239829165 744356154 969847854 188228049 2761826 285587601 552242245 505555756 556287103 447306009 877928518 309939963 966979508 628582834 609693757 864753526 126060689 778139516 475408339 348731212 764263824 132070020 415692882 588652054 117434594 247626912 261426725 487779967 343360204 552581020 475931425 201933751 104913732 491336511 842281032 59077399 664722642 879483542 931772653 315574548 793963093 906603042 833924769 683920331 782146511 908862653 96787157 469074430 377985576 492274473 164523633 424741753 859513053 429306864 776485827 583963884 966995620 73679524 182302727 504727888 647185898 409727361 359673930 315724989 741995925 232552627 764799306 713535374 268095461 764295328 66206398 766949213 660864394 168383099 842412810 765566726 419465634 29151781 365951632 149738853 166051345 576350552 443874679 786270239 175625803 44148753 329916411 479388148 451211247 395245161 860053929 177514308 996793018 964017391 933181781 332111150 207113605 637867924 850479017 544174942 45913049 447159231 950032974 13406372 773475781 890333272 894418053 847204616 320307553 282233930 513704626 50384641 300534113 354765166 834197387 254586500 960730041 449223425 214243930 398164466 266135588 654885114 564549033 495587010 412328300 103624767 288945950 212304111 710718272 244325922 589702726 2563460 976264952 322570678 780507949 762910258 63711369 286665011 168303127 579636998 763812121 297806798 62516569 287497429 98056771 407732799 628310442 561472852 737423440 981111808 910157037 885199706 654028850 444323986 159400153 60067298 638039996 540967674 46448363 707273112 479855238 119070571 177242888 728544091 447753689 747940678 600587242 903654128 762957883 911719265 76791028 77570805 510049635 308273945 535825702 656368531 790001883 484248476 752594188 721543663 122340660 317004061 348485660 864394026 966890773 104165358 448969252 228801543 581431705 529930070 998297131 337890009 929018406 661640230 662962422 100278837 767811781 415294614 28580309 917312543 104542600 503863956 720465394 653833877 405655335 541885736 898113340 37775676 588055078 891370515 64569519 120581420 477211531 593673709 254365184 676838603 319748127 66971568 767507363 797405394 654611245 200330005 107146 524965099 387206003 744999547 698491989 70173339 258229782 762692149 971498822 291801365 877447366 487049811 725081846 469883859 215472060 782763692 610672416 880675554 267292437 331689431 538510850 309449080 920727371 787747240 166446202 455590650 746812592 685591997 572168004 962296374 57481939 160062992 370264717 730654418 827446635 994258561 888598363 163558909 79523618 557051165 340260663 318414156 143697162 945809425 701742660 670534658 498910112 499784950 113369657 55901469 863412826 64095541 141632589 723119459 77580960 348084381 691187890 951588291 561391778 83626089 855547192 490580641 84712928 82155767 702445677 46234749 374408265 706108001 351279836 640678720 135583317 411300355 171887509 42404531 171537628 154973530 690336061 423760554 529075497 130842909 607944381 617655374 428614290 776875496 475415995 981581205 534116858 469641187 760811523 645666965 794093949 519121672 901013690 787100097 51899667 653835621 354232193 337223711 900760612 333630299 730070017 28686893 305784363 967403907 818375666 137023597 510336240 474180758 986975922 305789181 730566666 737958539 118594383 244018145 665143585 606212533 21709817 85617605 115256930 823889617 106019532 283752691 77622746 741753692 87596045 243774127 958340754 968333026 301893903 372694253 942961120 579245129 261151118 697877414 492101594 27882069 565089094 160309548 967071437 788092903 357807395 809947453 109417326 162801719 910302064 338106182 841605856 488551572 63040624 368371749 571137155 257560229 869398806 114273438 66819289 658360575 730076521 540541348 256447712 448762602 685533043 266141262 720133017 868364633 802119070 941835173 100364466 236138399 496206548 752410280 9732018 442087962 719872105 766388993 979995297 700673022 549478386 929005543 859837267 125585466 964859483 849808648 677028554 454632792 597992011 862821028 456478789 193575046 198101053 795822552 427319005 576320763 525979145 321323563 822620643 779620796 531979913 983494100 669696114 820081956 669143768 672706974 546246004 910677074 342476088 303511514 372191003 998920022 363185530 363774958 617462104 984606740 92257786 278444138 859115762 788532286 188423788 810201777 290506645 715015510 142866998 835754005 222666391 680543793 341652748 259207399 204238371 44639020 458736827 882375699 548323310 621857377 170181689 951252125 565261121 552966700 408591721 28031356 738820992 508077407 55262177 651610544 770754006 289301354 595589732 474741567 173289759 592714826 295474220 887153168 717623064 482258781 950673854 732949152 515477221 175637524 823586126 111723335 692878342 36468804 750127145 20707966 145840740 286625672 291595924 634492307 272459281 511833012 174614123 880321764 751619223 7432387 371585236 811106658 581628744 581167388 795317376 196133663 236635842 821528375 924360562 886868199 958860969 654601723 129950144 594285237 576193885 36987499 789495397 53972649 16356946 976657830 706639675 633313589 319135795 950255668 977930033 962438838 579224642 222680408 424775701 152947323 323997816 34253580 259057376 862913784 289290056 74492623 344404219 792079510 860396422 198279708 289420611 156015955 605058124 764598317 764817101 238052017 383638880 927178939 151253120 691393575 832592220 200518291 837306558 641588079 444630611 221392535 922718039 765389917 726468942 600693167 251773872 887282006 4425052 58018920 983265920 707846016 793465490 516776457 253163249 113308157 349719474 230291905 634291562 905916477 915666331 978767669 602272784 511088931 578128799 857816246 619196383 629514669 750865828 377569601 533708176 681058409 889751803 52668146 164063300 636051616 785010284 774786877 797678320 475190543 921678195 63021097 321048503 777164272 677193385 213279201 729238691 650869645 992927633 252889433 700526508 662730100 120987426 73277389 438941919 485181262 4682488 322264559 451323316 270620699 240832203 307352094 645671210 179335502 374945957 768599924 615251477 597378730 503759442 822840727 543152185 508376085 959077432 335081060 924593844 91978575 41537074 394773221 754700911 355824536 509007595 495833286 616158404 65889886 677560117 588945471 413501675 508182266 225066326 126044278 637623831 276135786 946333028 824425038 901379472 396043633 58493435 940567903 905906644 468497534 600820320 213379744 313165018 300084705 725195931 621450380 502824133 994150963 730642397 620876916 135432668 9399112 96343153 2257148 637375035 563549602 52083499 294636147 353110214 607457375 30481585 225130318 709980482 894545034 843271860 470883391 462185632 10895346 228574488 335822989 117271560 778781254 642559982 788206705 870525173 26471806 36723761 333028902 773906055 32695135 583694825 699359542 799629521 739607518 788497392 248574839 330637864 854614917 232472604 549459140 864431165 769312555 487610951 95606080 171136459 591846283 432547651 64680011 309676612 648895019 760117719 377524118 248941527 17986272 854075394 936583707 651503558 18614275 528520633 682183953 213391295 255281753 62144970 765909843 333091275 834968549 871093673 772154700 421443404 242197197 511116623 192111638 989587346 744684295 947893253 250177739 226409138 232674819 821355598 694544147 493156776 790896696 219241159 577552305 927099827 363738693 730147200 41839869 917263832 516929847 813940402 982716873 976385934 789257873 29378761 968250428 600297037 577437511 217030989 795100453 699190783 429310010 229617760 48673642 64492155 735144582 849599683 182386546 658023400 351419131 812538152 472634431 193946150 202936594 429014917 557505217 249159782 192586346 276677803 739377503 811927381 17443953 276817171 737221094 965564962 418944625 447060394 887369458 690344665 111170831 518006250 419645486 102946211 363226433 597967018 194984489 531635396 725079567 236300709 575624871 72816631 956856291 495593476 347419498 760196179 916321333 422483608 224418117 58684570 994767448 12525064 384828188 656334546 287934001 57891450 80178353 981226477 488211078 188385827 117204108 557838396 748143931 761317538 622837019 247519901 123168425 464624586 504365195 396867510 622221906 145426163 186512542 311298975 376239036 647808946 606825707 468874348 639416727 624336727 790317692 985484892 301170400 7977012 340256419 646644113 956596927 680460384 845648619 827321637 741545988 909824814 706082285 316095888 305688444 328639913 368327949 786767846 455140186 425812096 62382594 196336179 291287092 852357229 138949708 611185111 805516917 718273354 605043407 323296379 510397060 594044163 416007357 12487528 255078411 74734974 279744034 136305342 146961440 716555633 337662487 752888709 260371574 662426023 134886929 60023392 464030653 826697611 117388079 56781363 118906097 83059031 830874656 761139304 437320905 71299714 989350128 770442905 814963037 620959055 54010652 531869227 739050276 213435662 670116563 327253970 843522248 275451601 31733596 154786659 130313297 276198937 500438573 107277130 727558723 728666233 374007246 159019721 750541300 98301658 762614926 656010812 432224860 159088457 382183550 406515491 630817293 677410630 329564307 934845056 267421944 439557139 65071496 806182255 575947945 953439616 886894808 981135750 926458403 254055904 116566837 6804704 671762206 107758067 474709096 565814491 717023258 242512889 615047964 443912056 768715163 438909391 247122738 695317224 711174893 189745755 34457179 780733434 982179845 834080132 489572068 895724009 705381229 412120428 911253322 575591452 35338219 183045302 602294415 713306353 252128351 437781567 510039394 220113954 465598931 410097723 874134390 895973257 492737072 977565587 673539566 429069707 288645153 253110482 411154211 106596286 802508770 224932800 372892177 777316482 192452147 305399493 352784124 138173002 362890849 981619379 26364835 868509259 371941781 894311114 106653072 367744668 947885833 168610184 742014163 281393896 15352993 506244080 580388448 556163026 854989032 409773640 682361698 769314305 16002026 633753152 682623673 339574679 482527842 774306373 868007469 944074533 32947944 252914829 189885855 373743450 148015175 561012557 966852853 843975793 790001789 743428229 763735214 733927846 120240681 543254641 214674844 934061521 183834204 197159676 487795346 837302221 797457058 786945918 906217174 505260501 185361421 314094041 653724822 392295633 27187069 159539275 785432756 810195388 293274725 721930504 309128556 72437371 441134035 288519515 608270605 474815952 834024943 655697666 846132515 873116548 520784346 807297381 842054802 633826145 747856762 569472446 894703605 951530278 777324812 477774240 708931047 467548569 18707610 555262416 279134357 156074439 224029696 15565637 527063608 287843520 493851897 517177035 260333786 519052591 27931728 607044189 154438291 332299208 67903194 790742579 731841615 805018947 722272887 637510991 393183625 416364773 751100786 793145981 527492974 110475135 783159244 480268224 936603373 910138409 1220021 86668793 103441026 285396684 776491243 982548699 350664260 690739825 690465087 223476820 445007000 291804114 179825563 538809556 376489855 878426848 492520676 969547451 907078697 71043130 874791040 958591081 794304954 589635861 354093709 957826355 503287008 186724388 223337400 877397660 166334564 459220437 767319039 841842434 105183029 245418169 419204209 937869098 453267619 231234991 696531184 12054704 586714434 943159046 742648676 700318765 369868823 973216447 351454041 718583979 598352646 695840654 493050119 289219289 993173273 542305660 563774288 727610595 894435399 229770331 908105683 115140447 196418627 197148327 915581522 329251139 605507801 698919375 963132983 779219703 340969828 724546151 671817373 552814795 563518938 349191008 406990675 980626035 562946387 320267665 125553791 142670337 391143070 612515544 730801897 895543350 409658701 660233530 784916794 548006327 542590570 847167975 318468105 347092915 795379632 98913457 389944092 578791934 690580421 608436832 798269295 526688196 700224854 319944674 331829603 150456705 603919470 582521096 30673465 759704964 773378177 637408863 129599788 515967617 398660874 760971371 235633385 687727708 676297311 768947335 805621888 707611674 910417297 385614735 757813155 422405511 787311338 786275596 561036303 481921279 117999089 686226659 678634039 149862737 671283616 494328678 799964323 753868447 957010984 168457766 609592009 933535105 304124670 630750618 366323897 556028748 944927796 101847456 433400223 871269509 7448365 456711562 186435239 169402362 597863598 559606586 389665529 677446593 136810213 336547998 218534946 726787648 457177019 412108455 585425761 118828553 359418721 946323641 321370510 995007719 497115461 284757783 582728786 330854195 806814751 41829347 72670542 139464237 377115455 435381828 156785640 94313632 420437938 48884701 590873281 148868739 772213978 96312517 746769436 882794486 777489788 359191184 384346718 188612246 840280958 206522126 173506191 276144086 695347757 370779804 975849210 227087184 74709077 893774276 882941007 447059024 103937950 755333540 518857284 903125149 600180254 655826763 44371586 44352377 611134946 895249788 97389812 371696157 937628436 759461687 407013363 85665732 280383935 647361791 832547594 838627219 56830393 405742486 914608253 653605978 640512803 155802210 297116179 508581196 25282452 681835622 589075649 672059681 343434437 881526240 785698371 625113828 107561024 91942800 745978156 253332167 351056065 570793964 101503393 597748300 214652448 640709414 568217118 77360889 639934005 128482612 553775663 587876576 705755263 461127437 708501224 991770450 579685921 51081483 743945814 485691413 180874711 716118205 154017495 281104230 408614674 728415639 526865942 204624090 226361192 102029617 369532435 698770762 773460717 798387515 554867849 736313021 418967487 339856877 259458771 852185645 826352435 203922837 897341118 368488560 81144988 445239412 621098864 135444192 520079368 369889226 788258363 85259319 593495329 750128434 212414501 692739322 367431603 863156925 902001468 378483509 40815694 639620240 67512890 708825702 721211436 544955377 280505945 880862866 377622654 446463109 815147207 262276298 169843558 181218013 125920665 185764536 837836295 96212443 794928209 474853954 450533531 774011803 286756664 355562508 753431128 207504184 346088127 166682249 314498819 411656321 301799929 726781833 469619011 245578155 615699873 589634908 286050757 836149583 801814928 481277171 720832427 714916443 726764921 351009241 506101304 267669817 781606207 190778193 891882710 927808584 922675231 862844456 59133824 818985310 156094753 218439276 60548184 99533497 281284987 720411835 406520498 515824959 51646011 258923996 644114931 367278043 226935034 137861624 79812175 253051908 103314866 854756236 139619162 639318673 710696079 74066569 839310452 378959847 385961702 785116653 55576171 167196021 766013001 200045708 827796419 841215187 249991070 380741375 839344119 596284336 154971423 511096109 342314564 493432463 227641461 584296146 604957780 763146192 677494007 628441059 313519076 846453258 865959135 199313814 149450754 219054641 299480617 84259106 124073285 918982251 691166366 646488410 72222228 158371694 976978312 577791841 577617017 231559178 10180046 960596037 490676550 591013157 775554926 856875778 875370035 49884289 408777188 948378639 593367565 42245583 692313232 820483945 327269195 646437625 437357108 163157655 352832997 846361495 991869617 106476883 625265777 301080366 932111763 768794396 840540720 312307620 417463718 399154182 581101041 479335917 789903440 645889321 161230527 310048127 428659946 206356068 425148249 291239815 160445790 315577828 517566075 540513588 729138899 278866995 621975749 90027874 117389904 291682089 79893343 822805241 406515552 403583827 953771512 189093459 814978849 43602451 995199988 40458104 288542062 949761526 639777621 723376758 397964296 596113220 767070629 186581896 590856034 433296012 235155258 851149480 430179569 109978654 732589618 700283690 131505631 216157159 907895913 26294822 209943288 751108573 574500098 676877631 723760076 54599321 794678544 440913473 137636959 436207622 267134443 360620552 691462946 705676350 18408792 519733448 78025761 112787506 855688837 622419591 754384783 337943149 911593484 999780889 84489627 490970199 601683689 775344219 245822056 733698458 740275499 669331170 641954082 430651967 877672446 904187936 161224497 52134361 118315627 953246919 718608629 548547200 93923737 957209810 809230563 762534927 949177133 711978536 235359724 734970114 287540614 822226397 277907630 218212536 22464509 592352489 259063765 562241181 876781923 326990450 838956503 626418508 902429037 291461021 601541997 561194356 874773699 649836095 397997239 800291019 155696609 92836461 784825475 363294857 950742634 69093095 811673508 210579352 728901372 412934523 31679546 25140109 593693704 973555442 385190945 486359812 147689485 985595574 631542013 482527218 932611894 88066831 670004361 886673079 880734234 604170927 511131930 267047905 338955320 304295833 331018988 565582893 159383806 845437331 255498561 886498653 585753671 242448606 709787252 995341496 215231954 502813230 936795055 601965740 17477373 313969374 924308473 352883525 65859627 695010505 345361730 81081561 196699543 60102324 135960506 774383538 895571785 173862234 877556418 949061035 133975539 300480220 243311033 482688047 117128138 733027004 388056105 678767254 355830132 309359415 160536993 886984830 846897238 343575813 403865450 804795848 543657131 751763240 428535108 485867748 12048764 667088057 252224150 62863533 320422173 391057095 728123442 207629318 834591917 586111734 779494809 703634894 589521838 591038237 951958916 947013042 599841893 12661974 271373366 981496063 382566413 891501952 693983139 867939280 777854170 219602416 898463280 913458254 310583324 869175691 891782082 285647630 937402222 996556201 76340745 714609395 157786522 588685659 474313310 636970112 766789437 737281949 872346074 283179693 899734582 850893408 678957471 217934850 88700916 460936060 890445828 991415204 724339305 27906174 45744707 379668550 897622461 30981479 267872512 790717637 571788317 40620489 992733926 239635769 142326688 502119642 301427865 982579255 806127236 244193317 475657074 227879136 225681755 548715283 77029185 592395554 921817820 512913538 809183663 165868922 141016148 119188696 695360441 274114570 166716578 714262275 549365228 46743747 320784554 342934025 725274513 540588686 996541275 185001103 254917987 354313666 54672396 690342180 609799089 737212174 74876515 677836812 735385766 495959263 318915775 237603818 725095105 204488393 578734497 117507861 691512620 967436504 704446939 6337988 124724011 117557931 416029650 141609199 303636735 816986830 940212732 502828536 675025037 617743495 47432418 608084505 595638148 707532937 55318266 38777175 613590302 66967027 112659466 820452664 827354290 258203091 694486236 945655176 728980556 672074663 861602738 466187879 756988540 466281605 431023657 975653478 373473255 960912017 303843494 239827582 757837170 106344531 138093507 833017073 486058216 591018555 137414388 30904466 884683692 748886526 868120022 960523918 551679738 342845532 918077851 380710032 95033989 435347819 976295418 465744607 712769402 413403571 151648028 654111209 594285970 140538325 68408300 683177589 678279283 456881248 338557238 782476448 163337982 348681332 419371046 185308608 993706922 112280574 689261298 36715384 849282477 39759158 288572882 795445235 901401317 366525183 390690222 818648678 377646196 526311009 705498410 374776218 582325556 940539009 774930087 690933021 577949368 287877501 80772211 160123718 306143161 494426467 559695134 844567883 914182428 140880776 845596716 953370740 433196910 689486215 806384380 334951017 565243682 747926157 668696020 153060478 12132574 36631894 515025026 809942483 996196932 629188450 755523391 915492555 107669175 613781525 582034682 768009631 425832851 474430835 1431343 274547179 560705260 421139157 947810014 200281075 341984829 286917037 360545789 206520048 638929297 615453221 775064579 587769141 787855388 191349816 90021151 375165500 975618793 729205645 999824407 300287134 849746925 652711197 577764718 525305651 611875942 365840308 839878389 224172914 668668725 417949581 194167818 342297047 88568496 725159162 627494667 535756117 912848922 307359829 803054052 112959793 113419410 229818098 724664905 43084512 43599277 397886773 464927974 399849818 467624706 671316183 780317250 690422135 191414909 434509112 42694624 465524210 483713652 164911474 921126389 852161283 612423509 45879398 309085041 441917430 617789078 528756765 449887460 732638318 277453266 208387322 379298912 995527250 817226041 949131828 70694107 16434505 342175634 465812811 153793713 573540199 230477489 211908078 359561907 495897345 86987240 610760704 286993504 916864745 199733992 474840231 500684124 727577779 978198617 287025953 16777206 471618939 408747688 590765829 310681759 519602059 889997399 37822332 240860216 937845613 539352338 332619287 614929254 390813988 971793705 230349649 805824277 970433924 494700423 357776860 623811445 81099354 594435818 833063852 174953114 511338222 313559667 659066568 769907314 354060667 510864613 77360864 384598945 168474056 151013502 310677378 948486335 321553323 605695751 654530837 237395359 217028109 825884302 416905648 184846288 368693914 50456069 662476777 416377844 763715846 562082249 916087542 451051039 76034145 290523304 802543044 174791426 364829189 85739515 335282744 915658333 814147780 363312045 387612026 973346309 774360930 150351398 546886224 198737236 281403517 414094017 790353824 464832734 825741860 519836585 843196166 421069393 929429362 114786392 163259765 820480493 467317910 743745895 602117643 154296350 968131387 799311578 603338701 854054645 275090306 514576084 418571272 584081662 385945754 26922981 558518056 235910276 432220634 367334543 578578126 173811060 202432830 912456226 691998782 993481282 908700713 94248065 248755796 613803327 697737055 85173327 460881307 746614728 143073227 581963472 546652457 10989787 239347941 142890170 25162179 826694049 735107587 51063161 199763907 122391704 114491179 80677723 798935113 192201459 993860401 968146041 701226356 343517728 407052939 222176490 363498456 651218895 997114019 409769773 921882276 406256256 37713096 570065623 978965367 384086597 894715389 277871197 155295801 949567194 585144823 294894935 724331008 753827932 868204132 358394787 994496211 202214458 381730019 821256685 711581233 285242156 570415019 377808295 362987899 997095644 994790423 621505921 93630351 951718514 998598030 713148035 758147025 898643246 997928657 787321812 69722884 845628260 147759510 839882395 506861432 52711327 489079944 79844695 92864509 237013001 409731486 418231960 629757694 309377174 426762170 687516898 543174406 791410569 945825425 393204623 622935813 493048010 572990551 838877713 731254279 220764850 398924754 899047420 221505920 44408587 832034091 103558083 806765023 365512629 782771968 814995204 858077125 894657708 95731104 134731941 64089428 357938630 408501602 467492575 501291437 918851245 571510368 496439056 368417590 937156728 594417077 488678533 675443162 628654742 661880816 778224988 412298597 497072258 203692028 128015399 192555827 83984559 109764560 801940495 261042814 581185701 847986261 177640808 510605550 337280651 532867277 629114914 184176912 708168829 983043020 223139147 800760025 242394094 755672625 47343066 640243154 914792637 180713119 907111562 665175887 304413 991101163 780031591 772187889 651071401 4285630 541615646 317137314 861953424 935278692 795742707 141009177 345143310 565209658 719050182 824475242 642009007 190436070 98482259 380555503 677857201 908237455 374100904 851713278 763925992 951487256 376957477 950194059 399626322 570375665 902749101 921629680 463334245 849649177 225052001 530059568 833010750 833538180 31643748 252213618 373761295 794444045 762157634 262195156 232670829 428914761 650360507 468508613 790960138 184996428 789722225 179146866 41045305 331076297 774811716 965806582 18044619 706860875 257389530 851898272 233402969 437559969 489508635 293616305 866086136 532022078 194851884 371441002 502476144 656679922 914160922 37948710 770929284 117546222 745206048 76998202 691849064 708899750 423127604 204550632 465161746 853535217 988431017 29132365 15023329 545918667 941615942 434545472 574417610 556148724 311974905 170259963 271774237 130475491 299276371 677954823 572741877 806358073 681562573 368496332 155427432 911361669 386065772 656638450 259478104 439013750 20852814 752923825 342002438 338146824 588860191 162749650 774964663 794435714 231920316 738159725 901225863 740250800 927338368 123304656 534893306 388893242 206786854 474449024 45045431 366189001 533250284 298127816 754601981 443163837 996898935 835295130 121455117 327656227 202889729 295186760 737135528 871365824 928308818 770266809 981862188 250838598 453046115 362817098 4949711 535478297 645070108 315502091 157666505 265169456 739104919 730219248 682120910 436788212 654425266 670566229 196221899 103946685 51069635 324276144 806980256 740879590 860846372 680228906 419844430 932496640 274294078 73647234 443098998 746838668 262876624 267924017 669764540 336038325 441259688 814278405 651184798 372060442 642282280 496830235 973192550 36465150 49814001 903678761 610262125 480022331 407920982 433243468 568139991 429767175 304172739 407775816 306933985 753259854 848640850 837151717 56389620 230622916 910986871 724060161 424058394 573073536 666598670 990282294 476764677 158685732 154822935 407956640 336799406 382047651 884550539 683519618 616790417 35545852 280223245 989570491 811143811 416427759 603793857 596265220 54608987 677850594 457944059 69414152 198125569 467100500 775232425 236089937 742580466 115683400 149439815 145306860 737624329 826345658 106538045 526482802 479542849 173104566 516602680 280223068 838020775 501871156 752859850 932104000 570258220 246681254 49372033 929458367 515416795 351334758 395398911 89014234 782605919 685428539 406600435 870663449 280820508 345991975 291573649 431182156 242077829 629868619 447040189 255444043 113511765 629110333 754034102 800731895 405797578 567604369 123105736 501130484 470350491 944755923 195691507 594015701 805500880 870352777 858653259 329882503 52336563 786746986 752521829 946948199 686425256 842496882 325653704 291790024 950586299 622501747 307911707 390041705 878296517 604074000 155241831 576402149 652855075 54004485 700825904 47933502 849129907 860602707 242703984 61520190 14297260 553831881 368378125 191428704 923050693 945860473 967441248 171345082 454785447 536040893 153490903 447203657 755681036 164307100 253593816 599272854 83389258 270625097 945594486 185584071 57301123 373953789 589152323 797266133 51688259 516785582 311300479 511522382 585400163 118624133 374457631 388271428 415671792 332891333 151651290 342586523 9644182 302574495 651146939 476428396 573098361 698691392 732004235 38537173 760534620 197571280 899906435 796976462 809906465 211953865 501724663 240915622 126383095 731172809 432032758 900549832 574342252 508191915 316963797 872281524 760008586 203955936 453633822 918404874 996811827 727197141 874152167 256241615 636818078 952496300 625486062 724696237 31335225 19424518 226886727 377357741 963507412 566952109 211809846 556357997 196719406 448984311 600924905 378354344 885249188 74430994 49887284 666297756 717710863 484526809 875734140 457722164 167534396 758795105 855090675 317261760 342889699 259465094 466424962 872669404 907866565 725452494 587242415 196074196 488234155 949885755 894730367 462180418 882106842 948578156 744899138 836013559 982517436 963665738 845242565 372792424 255981981 398578184 672071054 40626921 742448663 271160579 723598835 68705272 28261745 58240373 760950116 384720213 60577839 551675096 187879492 846852087 406497155 677588553 167023890 397877190 751754017 38271529 276982209 692620758 112879309 93637376 950056408 479002630 309011214 916323328 85979746 516593160 232591074 80376536 865084654 230217686 125242807 57976700 362682112 882490983 133479560 306596533 477378696 377953692 617165566 566087298 826767241 177943254 686315723 123912626 129684125 319181416 847856359 801923806 48028378 295409379 858395441 513628417 433255808 101849876 132031199 685442205 572925861 917083644 874601395 28908468 2188904 372093651 813563351 438981220 758378823 106599235 646008088 934129994 378278278 810840672 210607204 241087501 345747454 918687730 377936883 450499592 322610266 347642066 37465598 829215738 111040852 992457640 119854346 746914822 69787635 402962130 343638635 10106374 458637976 373359678 682594606 890730601 391397336 864942907 965180828 101522847 187996892 483166494 504479510 864948584 624388220 226765441 607959105 696028893 661730376 470215891 299265505 342538921 175057629 431878023 916739244 117356685 334374693 571125352 250736399 760790185 970254296 818786684 497547320 137920704 626164679 347956366 770468681 837495887 809078525 604223350 826966620 622577456 80586573 493598537 789648407 438492150 957829703 380128932 967948263 882865298 103285411 987092074 320583488 419964471 436041622 938686917 972846731 94816900 456459412 857347045 665594927 493451780 716001027 973595635 524901669 933831049 684597438 389701674 558974364 287641379 715950539 190008332 495463752 797416444 32160499 74573890 636896522 952669389 858066533 425002549 94999023 379248348 583483074 814953341 673486111 823243894 988256135 794861817 847183258 218359745 824576578 529561423 466163316 884839819 844148085 154366689 894060320 75084947 602091424 613509539 423305876 507915337 511610715 90539895 564855613 616504231 940200850 166843972 361507679 747881425 775809412 914919349 38039722 534152943 540973530 17866602 714797691 976320396 446322593 450430977 806202461 955206922 871298313 935958202 221824136 678846805 650681561 894652713 20416139 919147363 516078143 740438953 89344031 549421981 492092286 98575775 711299983 749813190 350853311 603931154 757331207 729827132 614733314 430251504 673876100 338160340 33087072 501120814 143329354 927292927 562951520 7900079 369106803 206411643 124914925 785232726 502892298 968921778 82079695 762817641 559378742 188425562 298170249 417917470 370081851 522787274 522146677 87559026 402585682 915119699 914658329 675231099 860729008 4013413 551774587 291839317 47354006 926197966 28801916 404815966 291065367 987997446 595976023 86102292 165469073 766173447 411513082 148184719 530455932 779862220 483030517 535205202 584915430 821564432 872651439 689944323 694724703 235461177 730170447 90739967 625527903 355822587 986593360 974286653 691316715 696654538 673703763 476297689 678777087 626946423 441679741 638699497 552618344 780697146 475600732 745422642 103098650 7012365 704013606 148357912 831884230 578260325 56557912 69342237 525419272 471453114 719051118 105271119 654067615 70492371 980002938 646698678 181737327 400113411 443916888 278491641 105491971 789132849 207261303 783523893 589970679 207225973 137331242 245788972 454471457 88591054 589318254 776113853 283156861 750366439 682616112 699361774 544855881 969642125 135576458 539341512 453505167 572017068 318139375 416652604 623510439 151524378 83364609 599057210 870187276 822075613 142551028 395243760 9328116 392051716 782315448 270570633 31638239 189939227 460272482 502800200 996210637 971665899 717284168 620243489 681921654 351745611 549099306 574363121 712845880 138719560 748821256 755226983 135419443 755226420 244969797 930123296 92202837 67904616 924307845 451841969 652575184 761849867 147929389 703430704 141816514 471215535 709155991 409962155 726522643 973435404 788345308 568508761 236300264 342439417 566404874 794490257 192745808 836583820 771849120 663606526 653585290 873728488 251868847 815585262 808260270 606259746 231621197 830777248 944970335 956347501 922314400 595852421 309681337 964619916 77405119 840106405 617598133 371773288 492856918 881407859 378961214 887996391 237776093 877866292 66287961 173960316 684992287 524666349 299395899 231813859 416258288 370904703 446668149 957495347 621066121 957272072 224692453 770979530 38070829 357826288 352890101 987688773 622893438 563919914 89461273 539008656 629852066 624943669 165648129 932434129 514288788 58673227 601343379 813118602 750567228 585025227 523384739 543797655 468087558 185409464 154334669 187344526 702927860 788947567 777083931 601841856 901803082 673155758 931631342 57278625 141313426 426719618 728663654 453147325 511924427 118060398 19494631 148330782 657093892 159100341 412972162 789433716 308570849 224886347 506293434 215128290 299697189 638154187 161005725 23006025 727763752 630327751 2090627 52362924 592654045 406067540 16980424 432008026 12321327 494856137 582382300 892020620 209932253 676002365 515267785 71249637 704256945 799602968 417419624 195929590 753387678 184280968 80559086 181236290 65283737 398598328 695861017 159141081 385775092 37959570 990026228 971122379 762834100 243031728 385739752 117820261 269197780 642156051 257650918 662606425 882238010 336208011 892538792 459553430 41235632 594393379 700885242 628193593 989717786 812579913 522938520 726311325 44396268 237558130 347323942 210634383 467046674 270403936 832405494 210554033 704232582 555626926 577107862 818930919 156393717 76837331 73803338 208083839 645877540 366368885 910951472 978706950 398273060 630869745 888702289 467343185 202718467 328495595 808855240 84903707 644015915 782800195 724747527 197974794 488934643 759957140 810751126 267352757 584928686 295863938 302863358 625974340 162563313 119550588 967638415 30142374 693244936 813024131 946780870 165689482 351902333 313916820 786398606 327075727 279526388 422945897 360818105 234100029 933524852 730918371 831601313 670346607 495826885 795858593 570403263 840052548 64943924 880691268 49558729 946402380 458439611 41407198 117695211 448083267 759967195 165940816 122365138 732342803 56793745 856130918 846784346 317988579 930336831 772132818 985891865 304828705 874715100 583382934 459276483 220499848 974160392 202958672 358082026 364011575 194948825 99676209 514404094 830260978 778886657 446044586 415944198 931913672 576040280 311033209 300832127 436172756 20381348 277305336 283604066 27645681 973895472 316442915 995789427 849336318 786693039 71274897 199305329 879952581 32750365 632356087 902457453 173827268 811728040 381682449 33913150 446509748 779241615 780442639 109769004 310653219 28077722 577640483 952043091 56435430 151070366 794227914 818132855 673713388 424479903 916219763 278121477 891095917 334620631 357708285 757474719 214303509 91975422 58398900 13024765 948572796 979965700 948488703 650785444 77688424 166796282 725363294 459999629 807249729 196474921 609630712 916981300 349061141 162347786 373700919 298770266 589650646 718866836 319961159 83901237 49103754 999044605 80140136 625153976 492093795 756140723 155331821 734324136 336673902 787286877 314501648 647174487 331658437 778009019 562569814 453596660 822112902 792207529 642328286 570903200 514532864 951444375 791457225 590110666 452482963 799145352 450543916 447084023 86836576 808771428 41684104 92880328 56559252 180930726 113432823 353246363 128213498 29076462 43844098 405705982 73055406 744323482 134601038 961241801 68141197 107551707 978696013 774042996 798096783 447965188 213374378 105123813 629634697 406305826 455122870 79397180 243979644 383345018 946367741 108469208 892567142 44865436 954170353 220242539 380628762 28925879 469921031 860965877 622363414 573428531 682625179 959073648 995966001 121862560 216280025 211695207 587649202 31776319 246479767 262699645 143311798 951999169 16748184 782199486 290582765 220943836 467284015 154166962 936172034 512782019 40596654 195825685 737467406 682221759 735665609 856850349 903583214 317678111 257919015 594179534 708205781 60302579 600469481 79719840 993628963 607258874 201875272 657941794 78514708 536871681 363273479 204517219 728797965 959883000 869818035 441843784 947480303 953714866 320514149 984905331 540096921 535227347 623664540 477160318 150918256 858742276 924413217 3109688 516749943 87776777 309155945 289310110 196839850 721252373 775043822 854030544 244100746 227691130 999237085 742267531 592001218 320902426 490407131 363399957 988234790 36054231 536472766 336524068 858456883 608589373 136254026 385004303 251944790 917738935 271627878 810139701 30089094 863377281 648092649 735575671 913663385 662094557 406924964 984625746 278166961 97506510 266625621 306245570 166834795 470829628 795714962 257520097 445900809 240181351 577911211 715963376 226064391 62704594 207099362 548931368 727577124 556831495 29936187 692791634 577561536 456355479 611092265 952867442 902900070 224681299 547430350 107162476 531658676 687260643 342921967 551294510 300095185 615120515 722876895 489355243 876905546 381358080 756933024 58319080 74894407 363903849 677871484 876994050 173426250 858560808 213869585 70399591 192134729 740066341 664661239 772530249 685371507 399862486 678522162 288913313 461675821 934003655 928063657 62217875 200987424 653468035 706144931 270617425 30875202 143859313 449137150 470460606 104853931 715493015 339927671 612559876 888105319 118961448 941350136 831949358 945800216 961175713 668390514 897826960 382128823 528923558 193855488 691849882 805425216 251407318 257411750 980247550 94827624 400639396 94642017 559439507 161828175 405834093 93295785 970937647 437703159 87737491 942999606 170330012 149206671 17993529 668861471 284643719 732764498 959740969 77055369 210240360 833210800 913657230 739091965 383738288 278627298 227946765 798440291 814636768 226553474 36161678 663203310 582671177 81923367 368862083 327245360 129514239 523034175 145016958 580304040 550875018 662479714 183528552 639192203 131339407 262175231 672846695 493665952 435049111 31779663 746236302 912467057 402296096 74368969 792934782 980067501 635081931 655759959 782500018 581827854 827309802 544105223 749247732 335726912 382188239 552239563 197077609 75153152 62532303 875456966 888540464 746642000 796804809 19703648 155806885 918736153 131964388 97814774 90684889 282037188 524124584 407378740 888766399 698732271 278551724 855356965 11783856 932525695 222743849 68569794 887300422 513582884 4047190 977591180 224123112 62748413 710412811 673085054 458871330 225977917 860373441 522569898 819292859 593038266 811586415 762337950 661230099 939034725 19878638 245667979 51239256 34150410 612582968 783400150 169095109 239209100 666527738 69564136 839905292 191221080 150535894 547744432 718448422 797263025 631134166 621921017 315863806 591234141 711046906 400590967 900740204 419567329 586885929 231560270 867914568 636683544 126138330 909155953 880860760 342792659 932061591 351461491 803044366 617492267 260368372 666529291 26237578 267000583 309505965 295193042 738290082 22603580 398476314 833810652 660682013 453716221 22884483 933780809 994528385 311534988 245108762 218325932 874845821 562349778 374852180 402473583 688805943 189577542 953392135 171280934 500210878 565145590 548587207 270568217 888769664 369132453 256825681 947413408 142081006 541033091 68000657 585549957 919386121 69172959 671356472 881677312 870486680 381594377 808430477 68810236 399251734 677867128 21963271 449204798 241109992 272011367 977629466 649787782 504418433 701651302 676693183 479611996 200367461 260384639 622125225 749320240 863681096 730897047 340042329 637180121 820305089 215286910 461663867 554131509 230375323 913226963 750816670 972126682 32886391 615856639 140089657 593125042 569064668 177260663 710933971 529966592 348249860 166063828 288436261 283348742 459975131 803634088 214876077 849662530 779668170 368656385 777962537 445602335 401820165 664303704 981371913 809509108 115905123 867367028 988361419 576666518 485469460 915268070 366885824 559123215 951164082 963654338 1626101 121047868 653241498 154692200 42748269 95796868 989773237 987946705 227630027 101501085 223587001 697638341 454221292 175271198 895530816 826231032 664606681 521913917 758757110 907462408 525512580 998203578 264661574 592969700 834195051 508393055 198167104 360827829 13294613 958276611 368765213 594584948 417454382 186115211 358018710 701215442 293652072 849134811 98635816 117069503 749321911 808398823 976904424 283496856 97700040 570740752 174225604 609986421 312879915 444069574 635262707 401682196 221292998 324479802 518980014 844299584 989506080 705042014 258338245 417891569 396454625 580994743 490340630 255824419 802488730 526342879 400630484 7683588 596550290 548224842 456372315 421197552 379254423 8773572 284166796 148987191 262682283 49738710 39677224 632555124 73345533 380470702 271507696 735702378 385269330 7332565 578079479 866575463 641148198 118313780 743524496 989400038 772938855 376885782 476486942 751496390 477189927 745287504 90359628 515696748 441253629 156568771 963376602 347125459 883369889 248296032 483545168 907714557 802478237 349210585 97571171 131739341 634728062 548495335 356135071 936073020 133105862 404933245 762721129 362067912 189444313 987136960 662156542 630617302 348832633 123164206 152132802 141878319 323719739 486332603 695230224 623125238 807377922 37164954 443704643 606730688 175314067 537947504 407350157 838547743 928699743 449036032 500398679 752845114 187450176 979814495 709788773 736980110 765410905 272968029 589009697 758411080 294071249 128538734 122518686 224924992 667740170 726919993 927102018 476720045 756105778 574388712 222961091 532594017 269805230 837405159 445243779 261705922 172609061 934516304 566914654 188408872 174571300 857162149 749257629 519691317 456729794 970485594 139643851 140319771 14417889 636438490 874745185 269411143 108269290 108566598 919211219 777670166 789022157 770935264 58422459 400847922 234641152 888089395 210206983 315311350 219245600 361323771 318485551 967866668 288896971 941187854 543762316 782051794 127881327 20151598 328921843 898615615 443883140 792500549 418308034 520108128 343486517 408810721 374438213 258486816 754092135 822705673 423768156 321557607 496686237 326699572 683167682 275111272 506863726 745207627 92512288 936697911 406777144 421497998 931624288 362048746 471619358 560686761 968438892 833735200 201737637 606994123 511311594 95832381 754443265 932101458 532960767 729124798 597755588 242198629 419496850 325457597 189691772 301205828 241054596 970012041 524033324 430520605 776225630 76892716 147136465 386301274 328903913 667683856 772883797 169343390 518014489 735526580 380191278 707955789 191055915 2964828 985829837 757750330 205030478 342714302 437265782 580134251 615660895 621783967 686034207 537542084 96527990 152303419 278366718 369758893 994336923 482230719 773532883 466391200 776777196 711766346 407707699 664616788 288732344 726095927 306710070 255805200 475575296 636986615 921590271 320464312 921514261 598595169 872410996 319222744 531527030 929715792 378280994 452409470 644056932 681653432 615374785 102476578 181819539 505813191 317660270 443421387 569455966 698050041 364742217 256282691 616411993 38423679 681304753 828426154 628891155 654827217 149894557 757195515 651795562 325989194 205326044 46082483 560174383 788993000 367760966 163185570 603102956 23902591 680331531 51811283 396668840 449527112 848346792 182622114 120722311 533189523 914526365 406949679 900101486 294683907 110784429 572765022 408569924 422428926 246791370 469027729 477139404 931285283 827181375 12724885 528488322 225549878 356662542 768144188 807059849 743495419 825174372 821064164 435696217 770045708 653808339 385250404 229668742 950041887 94143553 323610198 119470745 835519342 747390176 527014568 725777276 267341649 258832145 297381095 128507581 769457545 871483081 95581042 269479995 260551460 375645361 626900684 532277927 561424045 770939723 118728515 565189042 250769212 530430587 711089742 811945187 10764016 799732132 765520276 611721740 43475492 679206066 399448394 132426863 285363141 159941106 434635473 148216553 81105250 759441908 672080555 108347081 962815264 939160228 232577272 90705357 618391395 64951782 560465006 660190848 44172714 936736637 485621245 932517536 581496790 651607158 838666245 567313348 30002046 536606003 371531016 587778299 489067420 496525528 106058804 135026747 381019870 688058161 185797742 723462570 547071923 512182959 178211133 938682561 294161163 268171718 258036985 315105047 459988558 796340607 806430789 253800732 372895873 969857847 599120465 566823058 661108935 197221811 845048745 924741446 942729065 890128243 479527123 29115986 526710100 338794702 789223335 753672508 327463605 777136134 726680246 302294977 946348752 652536473 360846869 149557284 687999370 656759911 202168380 830028229 936696248 568549776 76061097 478522041 237450135 211529814 905778963 740686311 976204691 720463794 70070677 575688205 67005122 926483130 290117536 197627745 30882866 28341125 322270560 662039724 981719734 898871402 747016882 438864530 104021892 438314379 25834557 785556265 605349624 830034527 609750435 684831400 139496196 83935454 52707918 118781796 416778637 231406083 33847314 711847568 36499034 861035498 897042013 327137556 625699006 667178629 467676624 368434431 947929579 489701453 229939628 414069422 142567605 505009668 921383664 951434806 322615894 293972905 190478666 760128551 171018321 997071806 146142394 645548966 717186704 492463897 537543193 443696114 108334693 189322904 5742465 42667021 331376541 279365914 325732139 393044594 139897159 402690099 656613960 796964484 302351481 749269656 754016252 257466224 654943701 835909858 951887378 922729239 784391111 276210805 876325071 663738850 176781930 791966056 652021446 876961248 622342427 213880303 67137800 44889336 39874154 21364553 35854411 648635419 52672179 308921439 400204361 215505068 246034764 919536804 622435820 60584205 56588283 152811101 434090195 397900160 253428480 311176450 867061022 222804825 748359074 154622082 551008821 851007676 745892370 152181509 61160956 147026167 358162253 860804179 534665183 517696106 373998276 237710236 84145629 85454141 175510915 256690652 832231901 474346354 185278746 604424816 736755206 685702212 708507482 924613983 40395709 160160530 2239865 816671097 40398428 199242978 651505711 855842337 878822622 250449702 308936231 862023314 528833815 891144246 534849739 410469603 459206192 187074527 832289157 744058317 785562814 885029556 494109045 260737093 694215889 952906339 953065909 797759850 115056993 335545037 11738455 914809590 526540311 906664538 385226421 277815810 421573817 655727443 924004674 508052219 816219489 490080710 356243968 261204373 119272515 267815443 975863592 423182705 134359062 914349719 194940222 15566593 374212457 409809576 578566429 113878283 384660518 593299397 850216897 225720015 41629002 592412403 494552732 154608857 296688139 977291838 98364504 424045406 455867663 256329029 908166061 555124449 898985780 373839412 587980336 45070655 277704610 274933026 905438370 984373733 642417931 692428868 278598955 949417940 963283857 988524664 511785210 545590328 370808683 856918700 738645724 983767069 648948955 738076195 301843173 3888452 869139426 577561653 585134045 401099094 815151012 314197083 662681151 373789735 886238438 863767656 589636576 535625831 120082284 12346652 213135649 636873391 960442464 922402979 684696706 863239990 51475165 653456893 335844005 169944746 992143394 765189581 207206891 610554950 910683004 607491299 837331516 142390104 429552842 395968466 678897742 850571217 87760248 212718379 924924784 804581215 133994269 712076739 646597729 455943489 899075466 974094526 811619007 692483343 379123119 85938496 716113582 420992866 971632900 874953067 87571856 165696299 414750800 883365265 322757398 214432570 147003088 413081180 767890434 374868914 747753540 379957546 71316433 621431292 59636939 552075830 613633325 107827048 67498525 224694455 207419797 156300303 406245927 34963865 163407926 267871969 508360528 854483995 837830203 407860866 68511442 390532077 171012582 664343943 864823066 392763939 350608712 680824530 288378041 338663555 367943356 479435278 290937894 56643212 339581498 785442701 936463769 762784314 814193063 690030708 486200659 725826259 161717609 944479909 895775867 451623066 249300930 891224307 967687728 470208842 910208170 549954917 219546319 22457832 964711056 347136643 106811681 91307688 385442151 767311201 43340504 607816222 692586215 719414463 135716366 564840973 688653930 198544787 421985502 290278707 632798918 279531222 699352050 349999169 445612503 4156220 621915305 380594795 141989390 890085619 239238368 563970469 604432453 617165830 492032018 880238609 333157889 594165325 259944228 166000702 82409045 979819180 620057991 984866578 16242563 17538412 239170644 3236751 707913233 527019365 219257917 459221143 467174254 766252436 818214444 682036085 443509466 277972240 821948458 257898539 320322164 479359537 382856184 813063284 739280723 40670186 125070384 349937530 616952353 527512015 154430792 327335385 780735624 660889573 519728536 204108954 772243786 855149500 472203516 719272289 512818681 154278733 885015769 462470752 662598895 470070151 493367044 447645660 93565977 272827521 976194943 167178721 263381725 83548433 760030661 797441209 972623870 139385828 803930820 901921509 492321455 567448553 302200358 510234747 434395768 379231285 49465719 753615710 6456501 738849431 35662735 716478059 540766599 337057365 787251249 515958772 157770089 40996508 92330310 946115500 987742133 900261095 167074897 374268564 725273147 671080939 450213831 65857295 907500494 51292016 271491138 44375403 891516347 253382424 843794690 758208796 885088454 600713636 279519946 238035906 988254685 205480634 312339662 53646757 872737092 635004111 435686120 777280825 554419584 374939922 942157972 501709699 38014669 833745488 218725057 237334500 599210269 955367024 778305654 594543439 961682010 722105796 519836146 983827382 116818367 285670106 331108042 237223679 301496956 406305269 788796864 983996702 284861718 131405326 547854805 701489533 461932288 215057058 371642854 923819173 703726200 540474595 921324485 607001725 195945252 123036909 539741358 590108910 188258746 510119192 849439334 895868092 506983979 976263645 877909886 591209113 500030222 361595792 651155358 594986878 425389146 88193437 984729536 417850755 896450353 504646434 137182604 871843796 870221890 61243487 879011969 293261685 137073141 426821620 152651925 396357190 322290070 418540331 494308493 675850914 214708335 586177498 569183795 663346128 37107728 17983318 16122459 42886975 281705326 425555075 656879068 526939677 467789823 596721261 996507238 956356609 693824846 530748484 14489776 792772080 168707374 532776909 193067016 947624942 606755918 745312576 909253230 564766376 843601807 529047633 102641237 490089299 747311837 243897881 118336754 718686436 617210064 515608849 759986421 937625027 281225074 75352780 1195477 443619114 40765380 249486509 371480864 660973993 178019130 931081552 787957385 36844880 979613539 910173783 425594978 857136947 639310642 718426334 147630616 712465895 129819749 611765609 436390583 170683223 420900812 933920424 169879061 958296458 482866244 718265033 569889570 919576582 736519856 214885200 633926080 963262939 410900136 482878062 303581441 539895144 170007102 868446789 641459018 48625970 47666574 316957024 128824659 377320565 578996702 174027100 306636538 433335863 710386122 478277827 376446095 141916254 158388234 197578058 326260946 987355847 603008658 192909907 734866657 598017328 98662030 860225777 197119763 534743571 209329129 480764475 770315758 948254382 285074245 590435539 13204174 542665497 850086452 644733533 251652715 641606377 656454215 716631738 701271083 313175242 497568197 902252591 102512251 511563762 482709760 172397301 401143705 249974360 662129966 604198885 507401948 466853304 954066201 348330938 67084971 337666828 223026825 453624328 647757661 926648632 225823421 630801249 726125733 984311730 600797175 895850299 47430011 976025555 719307780 927089822 969144646 760160360 894226060 202226716 901003430 514189426 193218936 766984640 967432807 617272292 863000863 1281518 793925549 939056061 751858808 245255251 879175617 801975255 262987364 438553661 569037522 596199268 167402479 819707304 353264273 336237985 896174717 524988572 413268979 302747602 185341318 927424017 132167776 53577570 475869137 761963474 789737253 757879032 210837673 423573710 756407056 639399545 728201541 434942739 102487105 986188685 417128959 368144981 843156572 987998969 856887969 158945362 956437478 125135687 95818503 131372529 194464143 406988997 700641245 279880367 268620768 951459531 384304602 793430870 604774157 56682349 962393358 666262590 188923135 94474405 556077392 777840044 370718121 499129826 203801223 758394998 809166703 252095821 595488647 92808072 65033479 62066310 414320369 605989157 730151972 811967522 160340888 614128131 325414734 609066930 806414640 34575727 747127619 448024334 660977516 901060604 702875244 540772346 970158055 379113401 70271111 150877056 318010984 998888073 695322847 334911607 649428275 872758158 145533572 525760711 604940675 284956372 282436512 405590257 958250499 228510375 40406021 590026356 734545488 505096202 957879478 810808005 392078285 333048149 857542408 553639333 341772243 384428034 128491850 170197260 894085623 959721191 513390743 149314126 923525333 535457085 932250923 855428699 511436415 351872539 702400377 190822640 618589888 127460877 850347526 930563308 578875480 378008524 803671413 905889045 264292593 459842686 181452170 630386568 970935597 928754469 776685540 448827437 283556116 214449744 389995510 113568017 268116812 647084732 948137653 363761866 757317189 721385250 927223183 331751968 426571259 68595407 667383060 866126339 495708933 368891007 193893895 37872901 968858289 636096036 970154182 785755568 485870761 378887044 895330822 910752939 622318557 287512894 641123254 355390360 788752463 606709367 320696595 23014187 844403291 428116721 209613598 309829692 35722316 449169963 262757897 255179827 731692005 557127826 152175269 838789981 488640496 532071035 531072763 744547342 109038777 4758228 284351568 839103085 127976068 421875956 337235964 752286904 568788512 639163672 696822401 252042974 374419999 692582144 824077686 998078341 896795094 716867520 573032521 2360578 116180989 141365560 84302374 447272985 184278076 847752708 174159786 695654005 763531815 461478591 601975517 219788761 14516274 236915642 14796985 554163473 740968675 653873333 114002228 889361828 380534905 895027130 120427636 439411564 521543028 865623976 304193353 824404532 311299151 296158355 937939782 153933054 325667434 395019464 986047331 311906523 443896191 982442451 358857335 792195481 699538014 935275013 757390781 617106690 751386557 434189123 219794400 865820706 276818014 329229532 340216117 905271492 299789520 513028774 705477674 9880354 292823281 376525728 192786532 629372678 503744470 887918025 552854358 869138994 846238139 126382565 705606243 214263329 741801132 907729895 750743664 360906123 532401433 925080679 163772429 150085198 78636101 190791375 425443622 76453873 204010489 312923788 945643080 282183019 56260778 763278873 746163923 775124679 253051594 126751758 337330417 347064484 878577071 3664017 824778492 775022318 2847095 998923261 489776095 25614450 874858744 180334312 999802078 970913637 939664000 573404315 880928675 125941053 394609894 508876283 997506684 971000418 679221275 836522672 469263935 811992781 767775395 326552440 452662246 948682926 372194440 354978544 735916192 924749872 982312644 183247738 663565978 413153813 201326875 413647510 562907017 738123912 146437316 744386034 693444523 75014316 231758676 969015228 497203257 902042862 19599272 40373565 149698087 947396874 617079675 319901865 811331085 121583595 255895442 628858933 112448246 341532987 541081728 785373572 239278544 28770539 132612175 183795259 671433491 551488282 954906484 666080410 76659840 10526083 654296560 641519440 313900311 868105559 699438187 736669091 439119736 72424186 229484512 654157920 257647630 252244407 564070289 467246290 529960110 218550018 27125959 659743782 23021259 479899172 902664356 709991937 708786861 789473967 562666827 653063092 42711099 390290335 72923690 364309734 230682338 569189039 97097861 32627026 368094485 247601336 10692402 951670706 400220234 6078461 879494563 150981108 227360890 724608947 555542330 666675176 369035852 353615361 765214832 503740973 258984911 95089944 666827856 40266635 301327522 847300805 731059019 54724922 856151634 745391276 726550662 692598349 694272079 106279778 20816938 999137969 955677515 42900392 218963578 326957593 267590824 222608556 766589576 44517509 713454270 352514327 811023494 570154370 175516793 525083887 344902827 968869273 47593499 199244838 187447973 909816812 579957467 902687479 973006638 947862656 556136720 86328988 764411727 431368725 16590960 452590977 823506042 674418718 74246655 815715031 29979904 835661754 842561947 418114295 556717896 177981653 785403788 842651100 346955224 106127918 393327138 297834947 878148239 844169124 579144418 2031159 137914956 192894344 400213661 883082669 667737953 979850217 563641486 669807563 932044431 795293373 406174363 497171951 120414711 453464270 583154766 515467074 98326298 916549444 416746071 234549713 802353420 1603481 555628170 520284587 628882627 818559506 792038304 2400489 640475686 562181257 541949717 346268364 437044549 415950259 878263008 333668243 877553322 140798118 878718490 79846858 740968145 817645807 36541739 293568533 59632052 497362865 408961851 181289991 113612863 191559235 685027607 130456686 414816121 110744484 676330805 648684211 483093174 882806387 800372686 200818431 156021540 913216222 46846525 913270239 851392095 167091191 997847217 281675474 991184316 71165468 832905069 198342339 729760891 482617977 209233979 229111360 508321467 105426574 458372832 251458451 752774874 613552643 681936099 570160237 844487399 839048481 468795131 844462928 263497900 100547640 217566384 870835427 348355904 620651891 552023618 154807051 219091371 391445056 341017116 42210147 283971608 457524328 628131928 720113041 735675275 314779362 115292339 631804751 466913893 884668012 325975691 914397332 159152618 115612981 172358750 827274849 839464505 740411318 764411374 972268883 527973267 443822725 263754055 252689024 76859906 231180342 955655139 236775857 112946020 156044160 69979243 440380704 13933667 754375805 179830627 156965721 924561262 889878814 658042860 928374319 391876462 247173957 331778842 779089527 220047546 815493619 391550194 750779859 755429431 953236866 121863413 454849085 304325615 300312703 184585927 829952698 157707875 402455670 685471730 78165508 286090932 73461928 215754309 660320029 191432325 112604684 302293570 53485634 746381920 399614930 245152167 992609318 793024739 786981727 564026743 949122790 193782204 390660938 729383842 846408020 320606952 356263668 853200661 114604288 120924774 510566107 579003331 338889658 103050925 159417061 951715544 919079659 909362166 207602864 606148720 401119460 448749370 996747310 716614564 770440922 795579402 536986027 62291353 623623527 510118314 339963369 736640807 188278765 463521689 723098503 875159887 350893937 433489297 15113439 904079264 678865576 784394632 904118815 158843724 646574493 399058555 417561224 692893857 569090 150798815 595095849 908915994 870701666 342243336 728170919 263528993 727967609 560449981 174855501 780516256 404493170 640856568 832951375 868842649 529052098 302592125 822975303 7798095 237955015 598778866 881066432 628469153 849189200 914688235 758197708 838430315 117032915 64158691 907866597 821631105 815677495 646589616 306544442 654156536 897190192 83440195 752570991 546336351 979938960 498672516 922487501 51887128 889861896 21179860 302521174 878763306 666232296 381339558 802595782 479492347 240892016 127037084 320778143 6281864 631473151 610257280 828922062 360096112 552178238 737273438 941520030 967590982 26574002 956215015 561399347 38329075 930209281 450339707 841060867 607475690 616098885 547570706 169906530 75450824 805148371 187348429 865845301 397607913 664526864 587208009 223998874 388917227 102155320 534752066 133331696 844371644 581725436 859641155 871660450 462207876 989557950 196690466 128703435 149106979 892579966 425166861 419878528 857380343 156801363 987987984 894298752 609795957 100804138 448454073 557278153 909184946 903358136 548328974 551258297 148614671 848149944 566528525 528003827 827472421 529544051 181769510 264654051 304898820 45627154 865781887 882610354 387310943 286596583 244586689 846593287 189504658 363669817 232282498 374495079 600219858 740224237 362043877 866768263 470110095 633330734 273936706 433265525 639430989 371250030 652702995 200012506 17233712 201781389 759385956 825887663 713973532 957130790 980343463 423861209 214894565 435971245 448236763 509930844 589058183 540066404 626893420 614993160 11592715 223088123 175422766 749343915 802116347 973478730 394142479 953324482 388161210 202463774 759238788 295139049 806756536 797485279 590189519 86258052 9661002 598537480 291495345 859025636 901493919 676895544 79706531 649513685 539910758 613285511 112170771 284774773 941587958 272145193 845437245 266866496 634206954 21039149 444426784 689582641 444245853 886083609 879287572 73774362 760906815 809189828 618850822 238864994 168977136 226677349 978680105 181624149 612267120 426537239 494734731 20130084 894290759 114136181 626604271 910657667 172462818 869287612 432429857 162462506 818387547 221932516 934460230 882979258 200739164 173072414 591538658 960885124 422995324 256189758 432596030 562788505 157665788 74596966 163024598 936218399 671440194 644505082 385082860 611673892 993199721 833549649 929083666 865435704 134069074 65247514 840806924 74990108 815966909 802710190 456017262 36019775 999639613 243445250 848490283 896370647 824264629 173439039 492382689 313310952 311908384 671099397 148735046 231010531 457912998 707277304 207375036 706787270 325270695 801554101 916546594 770025463 488135466 995980459 486393334 205230328 236784785 359645932 267982500 658963521 336401022 152081990 794546457 547336023 576109558 449383889 292601145 615948810 583424136 301806319 779970786 684684793 71612454 773187419 405735459 322336409 273646669 270473007 1025558 201518159 665601359 129086446 743864862 312493076 973409791 549032069 569114544 596985527 18859166 782832854 886260159 4434949 321198410 328077189 345001591 568895600 944718247 857227176 982413879 493670881 108810974 436720634 923636468 908232540 453718789 110570257 518715675 775212014 959545407 468563218 367045832 416149470 75629730 851877744 557913643 561374718 536103005 895959481 648669034 486522626 243689793 815995713 935447988 78059369 177730886 806723899 828182281 629513399 527814348 961496778 567936415 61343413 866207165 360066612 943043397 903942247 660497222 217505059 204930119 43983832 774216579 524054354 829923059 898624639 820413412 794539062 128381491 203949121 23719895 38125139 302128623 162568613 302224957 15755176 12687532 133164573 647751858 607067852 492134771 13515943 502638056 218828257 752410239 954485855 682478956 750775939 72012979 114513378 926848102 113886444 937630463 791520638 277785869 222579634 509294812 980331111 578929206 373582751 774167030 763415406 865875518 526046692 824917613 644350482 43591423 173945032 172834167 395347550 971961092 87052501 288882320 722859933 509492163 259395845 371467966 361243834 174267084 211295011 683769028 901486556 949724471 766944972 606049668 362697416 183601603 720057407 809030063 320743413 302127654 881589974 80111685 496122397 243683236 12214149 425463060 427431904 852319948 358424280 424250324 160165728 357815588 531077075 289449729 101860748 34349594 362070076 769560750 466628408 856520852 343836122 254069954 531019408 558034149 999797646 213182725 653711623 179559284 147326054 978309356 350913944 176350912 886009735 114144178 142391815 743190970 119268937 126971136 274179516 736927037 640345494 180799952 320042408 481518983 828198601 244420336 183449303 638230551 967220961 88221623 397448987 603071800 824251228 994045698 707378427 975730152 368789491 475168879 359253728 802680918 429852301 316192497 713813389 429700126 658337122 973742294 135444067 102050921 956719873 701563796 320855191 435635963 932505924 585977884 328197841 829474888 799900827 845561594 860047390 683536300 956567434 782605794 425746540 106706922 242853872 373636108 648309790 195403851 663241321 661161864 180273934 202698744 58025901 462714493 984150399 654396070 28628595 187308041 521539063 504305332 162327697 851825582 794917495 440634244 657299353 980214298 440557827 893707731 134346659 492997274 456108356 153392998 883876418 74894866 80463837 468049329 519445646 441536532 782101724 267931130 807261143 992090411 497482570 58281498 790820107 186988473 28806208 764787066 695102980 950909640 684725872 648353595 261727943 348323528 599834361 495260889 944855407 540704174 213952688 289610741 570600838 733894237 342318733 205188833 946464577 675920395 365290047 425020531 526965359 502546794 150203776 138435850 291038057 368988321 855064478 956800436 408781968 450128812 194286076 217450540 972974646 759964476 737926183 968722726 488849984 605659957 290786881 890726351 554037968 121668302 535634984 561985034 196409893 113888825 267112884 447403977 818102002 207200925 733487957 969033690 745645347 853976513 196682608 644220774 825281976 175591536 737692170 495869748 791697263 203338280 863690061 375631575 34990012 760222897 320152931 297026373 856008605 627712634 530034236 595398968 863315423 538292005 948043908 973837099 975006442 565677802 305558434 849871316 491506120 784974714 874477843 431668763 532412901 101726333 926547450 924186547 432557659 740792833 608774234 131435021 97872640 612457341 871518323 552479872 486931889 302322942 980556719 910957089 697496435 697067769 572312274 129278122 459448751 630223583 395212171 442527437 687506714 734220266 228057452 151302051 877639271 76934307 294770384 368746629 16381739 646897163 370274402 136444287 620649678 338792530 112936952 595464104 697599859 682222075 120751913 35978131 110958290 995945027 962772864 138130930 252324475 473000709 222697823 402868469 546209886 200919642 427998926 378265846 438697735 996510707 549650478 601885127 722702344 127306094 150089060 925123557 343119414 272565973 594913584 875355338 617907943 536262646 658817577 747462132 577496173 654190700 747884859 60526031 25330421 373649400 245625347 208874269 291743360 788471417 744259107 895905478 24057305 643766743 45712766 468436721 471908867 789056443 254737268 543713584 316481978 890550581 535937979 82828233 719129922 702706379 798314327 909190804 511225192 420374330 702237847 588372012 689890677 8272145 350497469 14550558 660721883 281828922 204530413 597399909 403244452 727634488 950831283 768514206 752112187 646845279 168960002 476181001 946846117 151363151 531856422 432658836 779396275 175073864 708270937 330708808 54571381 148905672 782221094 736045978 64564329 456441995 631155747 537998027 978574449 549683025 195051165 938848564 756772985 251501598 929235808 367001887 663626028 593315046 640110284 962762480 384983596 49118108 695721362 430503961 197575982 617583725 7730288 932623256 687182552 73049260 774228949 507453592 633035554 984249629 477359555 5554356 727566192 782342611 351041705 584213907 882020444 548023365 979153232 262870384 567002277 207717395 389676090 635456095 860142535 665933744 663591301 745137624 769177483 533092675 288577280 839937097 985019883 533988663 19356862 137189644 557588330 878193898 333032122 268719240 253901 558270055 434661168 277329967 174696903 555812419 16682242 344925581 218080342 505310799 329493042 796302127 49850781 306054042 651630464 153917103 724302836 916512997 845572888 612302330 908848627 898850492 747941150 680747664 718343999 44940348 712877541 432136928 197888192 184667192 462824171 14865480 223085985 418826019 365583693 154546657 805349910 657537986 963745290 158035786 443002574 149304498 676200469 24882757 833215371 899645322 903745490 172493460 933898402 416212924 444456593 102086343 436087194 530720133 718799300 953770932 579821262 593859907 48899410 873806768 193350952 720404480 629905978 152238653 962626950 155631969 771499347 421232381 479940435 450269634 669842765 346582691 889184276 248858521 791486966 925103523 330071835 877747006 703867723 487878193 714074932 349751756 583291508 466539545 88518311 679673576 62815125 190374718 964371043 641677018 713800724 581274047 61199491 784021793 117232411 997880620 416635596 699363355 272429513 596380507 674003079 54732724 742399914 762777322 732772863 202179531 12649735 299412072 669518724 806789931 952064264 300891528 178385581 224504857 378552066 189408072 444872201 119959673 207083294 696209384 560495903 722212661 915719990 93176522 85124711 341197873 50392143 7189679 325179327 425217022 840232511 935367737 719688641 922493854 986895228 685816257 716382597 554696013 301552871 455234040 285657797 524891199 67105256 565410030 478919352 86093892 739122582 189548321 712139471 836335937 855125807 575669323 991805826 725941779 46099673 66249265 346551541 783086553 376044994 599510351 328972811 303203641 805030541 944709896 251828902 287505514 777519443 736962572 211025108 861263855 357346077 980345624 246913083 582806040 433073237 580290315 357505092 83415779 234759099 742668725 888021556 830964626 437017409 117518947 496911971 135192663 822779443 913206905 362750659 322349955 921261676 21736749 801902060 790830596 885861251 276932207 21015747 689486718 182850265 849818894 68824853 884838073 770120395 188182324 424815722 348673656 749093242 536472397 773913936 331745759 563393452 691946090 622309371 125773097 560657099 74426265 383151983 393560081 952944466 459311828 326089263 597783517 749149592 394767989 934487322 813721018 908097761 447118800 661300925 948544576 31433528 272360456 400524729 6553737 778345981 366804324 385752806 521981167 172963000 161829308 388946541 916925408 231526829 697558577 700033157 207082382 546495826 729145850 500855431 412621009 287646528 319377127 376236247 389570873 604710515 56619037 540221848 986873872 899501770 297472908 845699119 464901939 432471692 884781323 181532593 620797443 894803117 898167324 298058711 232162521 484266138 973147726 503692419 437730434 741477585 605276614 66295821 551863842 380116430 51768954 119151089 445436984 300162365 991993575 452652352 674274678 669772728 869713813 29708913 38049210 773373620 922236113 820229985 799836350 318490091 405937594 679680982 339892192 902345314 995308584 486186173 260413318 631088840 647013505 545763073 983435488 981272728 743188151 354387617 499816267 111024888 286992689 169611049 526457081 187180284 459626081 881495510 779196538 775456928 100988126 874050632 997735399 794882925 417029572 864428298 134226665 57623615 574614717 327168745 736744692 951294414 314522799 323669993 831568943 950733460 296958487 468916414 473342622 625002609 962468224 623692964 70818072 701260731 337997421 441790159 939547551 298916628 869402161 428104124 237145084 299101626 975287107 398134776 915460284 793849964 886014369 660503188 670861348 340163547 992090889 377286595 724207099 785126191 716985833 350924128 200168904 250185937 380885770 912724070 75661221 466571439 592564937 244677853 761054990 861962425 21767653 930312363 15605332 154064055 163670444 722403997 840121120 423040964 152987726 768666003 527879671 568568637 743075785 297604783 655851597 585805115 734756486 151179398 181711678 427741143 473564930 284742 132968542 301011491 830841616 831450343 287855611 753045148 356086784 768352923 998158938 344513497 848810055 798443071 163890458 952302712 413916500 95207445 655364044 488552165 596071777 360734763 636089137 363886197 804754190 635926697 789794526 785567750 699122681 519484441 272947522 57514769 174342338 841405537 764910493 978751317 277851783 170353794 77885766 754531172 717415300 680659652 844633735 778840363 593387699 798606703 162756653 591373304 674894257 481094243 634381357 897375870 725617127 396584776 355474592 446702927 806879021 608122596 520887324 974135022 95774236 526509390 79369055 554212003 372368911 162613825 120743893 287908526 616867953 28774385 140297050 332908278 674410070 916855474 687166004 418716834 720212930 482574382 611865710 770995951 497558163 705183662 572695719 820007682 779440717 353043752 818493783 428431870 155246376 11983852 857902899 76966599 165885897 582100242 680096624 784721963 392468766 315726961 915132442 968556093 504655781 676346527 86889173 131947947 114183915 715096000 490522421 815537337 892054521 750964806 285631830 330711443 298236488 987657023 753654543 117621398 510275985 581892993 529014899 902886232 643956023 947241828 688925338 175790273 605225758 741712349 355044704 239152315 764827702 203116323 498975714 65877706 380319401 49311810 20108257 183312889 520771593 834011741 657857512 452989244 469037765 751043067 707836999 5293685 12686534 989951283 443654 293961132 982225828 299266666 978592544 412955210 292937720 574820558 367650272 429959506 477155646 946975001 978373172 601825077 907404817 169095314 324339107 955862980 991426365 959557818 877912859 715354274 125400562 378764356 423256023 496411672 708649855 744936770 775614228 748353658 293974820 870866989 442459245 725554110 964604457 384730899 675115838 619285652 128840728 694079829 852576653 513190344 83343981 496148790 867246398 55536052 482627077 784465085 134769933 198894664 854889205 724579682 5879036 841260082 191786724 134702460 637465229 165925567 352136619 769113307 581593717 451853618 91904557 725596728 565273435 500328886 660467173 523001429 879814067 3715250 920517616 882012253 21153087 365384406 303211592 964168077 907056524 86483658 643420155 897038494 456602562 178830357 396260350 67278425 610709750 431493521 689497991 136713150 797517998 270833096 372794115 261799142 205895167 552342492 284862942 805492897 448757702 908379900 357221107 337501097 226945751 652905743 38062708 306728375 429015024 524845026 101265714 824285424 358809888 258764358 966398606 931812113 911009644 186667009 791322206 953610299 495521387 504559023 279838967 838112972 71562200 606952623 747199746 72953328 308683868 201285435 804097078 489828920 340295711 69818413 513021638 105489964 372098614 905266911 625387238 752047231 5900475 748174070 683079032 395828596 918699893 613123652 27837615 778662335 939466163 150088436 402012961 419834130 522045046 42128621 120030039 707810703 641899546 519692809 264814199 391086094 962101955 60777492 877089694 941272860 225841186 982201029 375413778 802407404 102515296 459300928 843235068 810582646 388018424 250395505 521365221 346529987 149317692 12333515 666730579 580481233 35407612 103997535 949277458 245114937 445434809 612137170 700001565 401455999 250386152 638206662 457976841 272151732 479664062 743768657 4842322 843821647 828943448 475807466 652069212 434761900 316477697 707099934 291086587 923882465 298721901 161416236 351524393 470128712 64987378 871059101 211217230 868109225 181730801 190439661 99114897 527537522 908302896 380594611 686196318 451749546 216680677 728890321 616208571 909142093 9540854 133378715 770434265 677890835 127702073 623376861 44145212 596888109 541736010 826161805 507285981 270908528 267922653 50209093 806186200 895620779 446173034 569059921 169487917 507981318 948100247 179502910 559759141 334562964 256333951 293146361 142908634 796874099 851319601 953218112 447634829 624728284 666520317 915683763 846822398 664821456 621596276 432568169 133233356 976161566 632712758 120687981 992407198 639790751 365131064 847390694 350184691 955524127 516508214 273010526 331899796 827816928 117426126 942009500 584513948 96204336 266954678 838643392 559015174 446862203 341427016 940015023 184909556 888758766 8404962 774323414 25460868 804592100 725897263 628994193 702302220 248416536 506734979 938165912 886978370 366275848 114365750 751871156 55058347 922807347 184124048 58136917 523923144 846252537 166848104 525270165 964461688 502217634 865154345 527061835 305430326 362429181 835787921 1958856 458889035 193725889 857526312 654652165 325296835 601507542 654752444 121854614 336918160 602319083 492717846 389125073 754493765 496881525 176864695 803839433 156265381 622531844 432343726 263741647 860023384 283610029 626487948 333503863 790655992 506156809 935193804 548362570 2387176 158241108 635721230 361245556 23236526 135906243 954651075 443029150 818548142 284328705 212541846 200023637 53446632 123509179 192789048 139219897 99090798 919343003 277960781 254093659 772243783 455018900 975899410 339531497 674067495 812671925 428442405 511819972 732032450 405482377 419925885 756658746 60162480 323174013 345483511 31684974 592450931 180480203 562634712 630836390 157950333 903706891 859048193 839410325 734199835 565899743 812890518 769393902 96481532 826305151 517836898 178173868 64400817 863885138 148152777 717391387 380063189 652072347 934855438 643105227 971503174 606573857 837915878 10528447 218807016 259002383 655230584 134263401 719612751 968371914 811979218 73781359 543608975 7180569 909651243 266587191 709292093 922324635 450589419 459182263 270784446 180438193 71587524 693759159 334145694 438502134 889005924 781018019 324967137 722210657 412918137 806687699 396543019 168735326 175262815 994453458 177444335 411929688 326043477 337704105 420391396 697423236 441662637 215368268 483324919 38426180 842192410 773286784 92644280 947838517 175254426 147625079 24324706 817092214 859923127 425741850 106510911 602825787 808262126 495171908 94468391 523585715 524842041 140419445 95487204 981364249 684321836 264997389 73719977 315422758 911569840 699630768 687702981 562533033 35532902 784393396 32108684 193747697 664019858 704309706 659610930 637420422 492951435 240551729 880929196 302455015 162213987 883268706 405343134 983995936 193815993 899025674 555533083 12104377 531014316 699940545 105219654 555233842 361539011 275743408 542674980 996184892 187700996 417500855 228697288 624417788 141636774 177509318 585433453 632876148 98953238 826484002 246345435 148893345 823499889 309766609 876890213 2785981 366792000 502027869 499989544 361314766 889414988 898239115 82095768 887004027 689839366 586213389 176917656 852803100 258972421 341706462 829851195 456730618 781379541 514725972 579747155 761737652 517213781 960149175 207394629 441761762 31341013 106585575 867241210 769735025 740144646 58404517 378432707 222324400 931229966 70569070 109121711 148925588 826137739 597208601 402591188 440984902 47834415 656163538 500446273 327482732 683079762 505495986 105764289 973347732 95121043 629212579 803321385 249911196 760736070 237661941 744975594 290752663 517625335 7277942 862253092 644422815 104878330 845641455 653171773 730628504 69671342 162696251 756861770 633085974 807715141 45771544 540854839 131076921 311450380 921070036 676071304 617097309 986974341 398603345 334875484 275644773 709264755 754379336 540661928 559621588 571394876 602770140 501677266 461060532 278182218 528403953 131978824 295938930 356435169 906175449 281195339 405016318 998388527 933845890 260046803 555841755 135361139 105593363 466108388 605538978 872700939 916519251 65762946 833169970 353651659 580411785 139689184 497931047 921868999 809091520 258851536 489674459 33686863 302853670 818866450 218832380 404403448 563913169 400725808 231747100 153429559 989954452 724972097 162005224 847142730 212775452 199233878 517815981 948696751 84169439 165229624 755834326 874555058 513374304 765758389 576778815 928273792 609000212 41667221 746142247 962526337 455795701 161017218 981238315 230009088 913938035 881120461 59082918 483909516 820659198 111022124 822628768 902514145 265479134 667682907 696774390 429519357 953789731 628139003 948233734 806069693 204726675 531817141 889026332 776076906 184063969 481111051 245138757 901258560 47943849 242173879 913790960 565407004 100541837 228282297 405228193 442104178 566757799 685513097 19758229 311283891 890382737 531627781 333449589 263658977 324344561 767248584 897326939 394794365 208837520 162414588 357750615 717966054 183045316 175822213 513662257 292765151 567243553 956519813 435884884 577082721 59044372 52270489 574087791 42044564 877343758 56510502 431847972 771743732 789667301 881669709 527981690 656489615 305490497 233482956 774704187 619128991 530651984 238365021 366245981 264505240 918387533 320159059 711381848 795289160 96842096 203285738 223499740 666933044 25518159 753113170 269366341 961449624 444464951 395204674 333614072 611796895 306479418 371193416 978439299 935218832 590506114 701040364 257492016 13882376 141785639 762343692 603410116 196784945 735537868 116981233 666296661 194282224 660332791 56488906 316983166 137582854 197747002 477104260 161505652 867925186 143250835 867711840 314275789 931624938 627737147 984361265 47537970 293427348 368643642 811360119 875109284 808334342 321712061 225919594 234519615 830631104 959165226 639591469 263052592 758731563 932391451 994344236 485045337 344073051 447596964 405387720 468311178 523422836 116100198 514117263 802890668 830461893 850667076 963353711 916699794 146415058 388666553 667960212 577168005 238385423 266645789 880001337 672537459 568613835 663122174 502189209 57823757 461513983 745962682 529457749 283249698 536991544 70858856 137220317 607257219 290657582 69503883 882599395 273209275 688910380 341104688 40057836 38511869 918366075 152554227 206614167 720786986 802265309 915939611 469081588 399286328 959243224 274054126 325690130 737935953 28250937 797590586 487080483 513035366 851633725 396864442 745092245 957430905 73201961 73406410 908549966 422558490 242677131 451511313 350348666 808981641 690901027 765418347 805556886 233943658 390829832 255320339 67803267 744665614 571656354 764228394 327821360 296302966 321050376 116667026 842525386 181712610 431989401 575538797 472898440 915193640 238289985 22673043 39091198 977393911 650216855 98992916 304067995 273908231 449861431 274327696 162491857 722011241 46684900 421697112 661740435 89817253 940163275 571410980 474645661 771166412 67720388 958740945 963209965 489791865 874162739 455504997 492860900 601538505 328513774 554369539 783251027 771907565 693171548 119819215 635773891 952691132 942575182 821159791 747049405 27114617 342379868 806947828 684208482 517645522 580723562 248283946 132449174 362874665 365034082 759709707 40276690 602696664 264209172 924750786 470618729 131829607 190990305 315125429 620432796 195627123 666243371 48477948 934427058 928794447 792625245 23349778 424782134 962883167 549310673 531246946 232811115 609422641 627948292 369803370 901099614 998917134 789359950 749887806 517645179 629827093 40698761 987198844 836860745 144763142 84982451 227777450 153485691 160520205 27244362 693346265 307959360 262259828 32164999 295194221 783452051 161535410 883468939 834038345 812604237 799035844 205215481 963553872 809397061 83187822 713953657 557512612 141504819 364676360 694901223 816478584 323611468 356508160 435343999 98361684 503884805 321224058 291655458 709176219 493853344 918490238 420994763 385026446 434675440 970639726 845213184 203532968 589246484 848213188 156608811 981848224 423872615 22397665 271279854 541261597 225101612 72289173 244242626 115872098 690371364 634230104 728016635 377689402 844333081 407022305 475671133 813823793 427005612 701274444 415581564 301940135 91519480 78073479 917587100 676771862 272912331 215426866 97093134 577165811 463001920 612104312 902399190 94121998 756068387 312760938 55216866 312299227 703782842 925161067 645034248 448668653 919406731 747106200 108247386 136355504 272402257 334907493 834490175 974997104 134630047 442787510 411063902 959376357 126923798 70523947 463301806 959786836 396607690 247468869 376627232 780426895 810514109 704619997 491197834 255144277 322103017 181801844 684924456 804986159 695380872 342897016 100884097 907816235 697121431 771855947 230667839 23629430 571196020 406518202 172262773 964304616 555041088 53603768 478388190 699469302 287179046 760322336 950830506 988071854 661106876 135701573 652547170 682914391 416895655 612827771 96425780 324533023 401898347 171779617 57434345 426566348 764995561 409088470 260698426 843516024 458550086 130687939 255815292 279791684 216470185 673900355 508654431 971768593 221986006 991978118 842389331 715201871 582904540 918969898 720264112 23414118 937415972 302181202 414549999 929569384 82896316 331064211 627212945 852390260 215110179 33046978 240641674 495945094 642303020 938124785 62357011 546792026 200273447 962779804 22394261 132704775 433881068 706689998 774629226 194977266 82804684 598063127 578978670 995957435 653400494 553700206 602271224 207684578 103534616 40174431 197784368 50702285 149953222 355769125 769757869 651656700 722369333 204525811 57512731 113032074 736654244 606734152 447465168 545324112 671751806 314442485 744383139 112688999 711464911 350061311 964327853 954961166 809406888 871743782 844272092 372553028 851819150 858553332 352905953 75356319 985972882 818402057 455377597 838120054 719168637 126788 47704405 620743600 296391368 484705082 260534027 876328285 879811852 975485814 880410978 235841333 838545415 583385015 662459122 813041789 701985708 842040400 12709349 377663381 722947193 275354162 643434896 201692439 669506116 416070335 784098984 276085955 144553902 132498904 579034357 856370872 618224816 600236394 620807633 859228263 745026177 122705926 16346606 496558736 208474268 518334588 242556531 405711422 831111214 471396910 605884379 274161654 78636539 969060145 200874678 626804656 393505188 268240100 155019092 515821550 577704110 778479992 942876954 75294089 559681675 408220727 902358401 857712721 199858409 277139949 305485466 662233644 706287545 282243282 341596402 921164041 560967721 93983454 37595886 969389953 139290550 325206807 64399764 649491411 646151185 550042477 692872812 382990723 945953194 7984495 611460450 295619031 513481105 346023207 963252758 767315095 401140989 668570553 874718658 874299046 735539776 14333661 960260646 368735967 943810187 331704836 145841890 174338268 306761282 97192882 122043478 71032368 666674116 834891668 684452993 889941358 593082982 729242043 81389547 264350853 670719765 946551372 843325558 274940572 540510578 309266161 851119935 311379113 710002089 331489676 868384391 444664909 854438082 479417550 614542834 373191582 736269408 895336535 687351257 221717612 504159152 619732419 183417987 367978688 674760311 616234175 19738050 11301587 764620739 906896984 800090244 145463725 767707108 275762867 629718457 166463971 262360971 41956738 262963792 468487900 873026984 532766361 371292593 959332174 761064111 251971597 531862987 952894941 208949576 129488946 860885746 203388256 584407931 516639518 886849916 545522562 353513415 720756193 659892501 545870359 89491940 636654039 858300105 186701748 926128239 844714270 123903516 350690566 774343049 489421001 553261551 631605937 835822087 591193454 875353086 395734815 368053527 522647792 985258493 351244812 69667975 835040914 58656652 972799763 338116048 846685048 282369374 530273041 20998125 88853606 531692146 221288943 784157486 736296549 226136655 521699033 207909042 514050239 804296848 630156450 280188268 862301093 563814413 371758400 311544169 571116131 83298070 528549686 867233887 603340042 588492178 164827959 83258459 947945893 629568954 787770831 584878546 305678846 873482947 551965282 298471826 11784984 36291817 648395729 888951437 914176597 791487539 608563700 371830028 906305203 778734015 122792241 747046837 801772985 514791505 107637404 462066585 490477474 732681545 751711501 582520037 328958490 138592535 200531766 596829749 284882917 759515158 670994291 461651253 809969749 49448968 77752130 122936565 822180916 865423725 334794133 191823808 876375298 296890091 248331969 17289609 264831410 761713943 844127487 758224841 844864603 664446425 792017991 740520413 733915747 578269157 435328942 899839776 603682861 328900845 389446953 24952236 764661010 341673023 910856063 830180742 747534902 35930194 53630975 672239230 766845339 366485611 895464403 700493473 622813125 396088432 256605084 378394691 620361234 65053461 439406204 650927168 541233957 775239811 818957741 534275712 164855645 535897503 53164957 115157865 449947841 879237390 444431212 878192295 100784086 446514969 251651024 647716004 275385454 40019262 124051485 746563971 941445638 826288521 228941420 85376804 552858556 687888282 173289032 27953113 693580015 23939514 818151537 739733781 312959527 175234137 860295507 573155274 454551960 997765368 253173258 102984161 673931210 513050188 481974251 761900650 247836480 783159653 647304147 314002045 762791692 792234773 579907325 178329459 608106665 20392198 690264266 727436798 902986551 637623267 542225007 156471757 396646482 68970245 748292783 778940172 159174798 482987631 496346913 654807022 684753940 806107770 788862175 133757976 410762152 708884641 578118932 1606223 110092171 320408423 922462662 565600218 926203966 549983152 788513461 291632422 782163304 330812676 241632008 927304744 345331368 566594954 128406755 963675370 62816294 671554581 39461730 591561201 405508098 435828004 104439068 706391098 343693241 964608027 80252897 927707438 97440937 571862167 730564377 935872761 364276120 557915414 809416462 925713555 23799017 99188073 866322513 4218475 24617283 389243323 674492132 967418063 900672891 126270123 471022408 164861298 35904726 804466143 120491026 71492280 142034034 274766281 636952355 85757796 491558021 931806569 318622251 277881533 351039903 995731898 984340110 77272064 822347519 706059751 725307970 830213723 44759697 298662299 454931466 608098174 35570083 832245425 313250871 859457520 702476958 464054224 431587295 123694731 149754769 488859325 73974948 542924557 108060716 999195867 909780294 530158955 210831263 701482229 814456066 694151359 674329802 990394016 869892842 662977337 181018896 486803460 801155398 577237834 765330189 718937134 219096162 673965522 6783838 107886166 945755730 947019115 960556007 673506353 277744952 606538171 305434953 634579082 755287878 58024166 221650425 308490193 648920251 871522170 719850320 153850404 348703049 297156136 645962152 577558202 549703903 53552161 855340717 793085484 104558467 808353460 736095897 856878746 63101163 99146194 280074272 695711344 263083631 212460938 53084091 860182371 157592986 78674243 639697934 108705610 918649463 894037905 539754510 58125756 865914204 915559113 423950457 246973507 27866576 481851182 250582666 265063962 386594378 989744871 843320242 321457510 618139948 242091685 88272641 824428858 547333559 347111164 284211998 146655685 121288115 832358422 493248489 600447797 866867412 991928044 332125342 946683758 546400190 265578928 164419977 328714907 990541034 949115432 627066677 781743747 922590489 429192872 136813408 647244287 551382616 522235771 509533513 226328392 298433489 59786640 690552130 725843616 728952569 28067076 875401494 754366985 528414823 446590995 449120630 777313193 919622733 999487255 182820335 769758941 471698371 5087669 342466633 508548102 704916962 791046751 87067196 670001748 219788346 216437172 730106106 939804876 222882228 963190949 744862251 667363871 815929119 930887417 196766758 439083853 956035108 149165540 799244964 544989350 971937397 328637364 376796101 479097208 890540747 139772111 907717465 640739720 515975466 711895662 566850392 566271986 685835193 986187966 27589767 913484088 164276205 653034833 203484529 338304516 215637006 758573452 514625603 888604512 857393771 553057698 222114060 475263474 68074032 554143062 471097147 352576925 191911017 837946917 872630791 713971478 795263085 395719344 133666344 229391157 631121061 810609495 403851193 415201849 226775979 754067557 903595044 109199618 237851487 656903797 954945707 27338964 972446646 339216547 627581826 703906256 476339970 381455901 100224975 909676523 365848136 743337905 187970716 613411692 65973347 371985537 852751311 233484890 636802101 8328982 598308220 833589946 764921582 428648413 378342620 343191363 246751408 372146789 708020406 475899629 270980618 246239712 531275314 292365678 428852602 976356894 26698776 37262130 977400778 779189740 622070942 481939127 414271578 728336232 887150681 218395629 363385005 418449320 744937290 936067337 520320777 629953314 306112469 985940862 24521218 546349105 376782186 514428407 793303849 835110031 259025861 773558175 400459329 387833471 590578763 882723485 466412617 529725237 182446245 25525815 715667512 914905991 468337730 545578390 973463178 755173624 97741585 767206061 66632241 266351058 933099486 173511199 439911083 317246385 740875159 102918901 795826028 953232196 924909152 211179200 52255870 986710626 476941653 646587298 231543838 461474157 729962005 117053143 750923884 544265862 801432595 636810236 452673834 59915874 546122067 883213651 746520998 447243618 857958378 705870715 172132956 909011806 856396123 231340452 263623288 414883106 949859299 53712016 883638554 77626379 187906939 686556093 631696366 847273312 733143016 427195300 351478428 935390378 456140724 108736368 271357970 806727278 319800700 106686775 777271387 486963212 677065624 392330574 956368344 750350821 37762531 326145626 261793640 307383803 583393599 14450714 440721156 447168503 54690558 425783119 66943107 911233463 298379997 326188644 541773145 59223814 416794853 451306518 874795759 419323793 422210563 640481799 972672319 437345868 266227672 487416074 393331299 876417637 558287959 892355381 46489846 761504976 773248598 898240925 86679498 266554275 80575760 511907543 795773851 204005306 986278397 391178325 228214488 580316918 990551740 394998433 495766794 325732591 904001344 40152671 418519432 503604524 346610104 319098330 302467812 148184991 896586174 25868171 379669383 76327342 223765562 657380258 48213376 225701851 59197411 119641994 393198207 648413764 741535698 341018806 946041461 229870448 207546444 862690384 470728842 234705386 654539694 974081575 446349555 883060477 654827008 941332664 289982148 60199106 775234320 318934792 730100587 341594009 226573375 502001803 906011796 802696294 493715378 809346648 932060404 855998057 880033026 180832685 832481063 216644159 175842832 929483053 908864227 381080417 96205514 950541812 790264429 295102195 667021668 703473612 234418598 137962361 713184612 210340104 318867976 953187615 813050873 210514806 394283269 811819240 501256152 334761205 997023944 889467180 374965391 288823805 981616854 721850133 115709851 51737141 223656645 53843948 566798956 533284149 459960925 249281595 50854040 656587646 982900754 541299764 461236856 629443796 449245512 361109776 196119142 549179002 901862588 81606504 113558497 424083781 105065541 484260065 306932714 540784422 147966247 875521394 916112095 56194213 632153309 309499295 330607917 284752368 431570637 982782803 111550413 844714785 867650287 624410943 144497679 296612119 348779476 301598777 781337321 515207274 683529234 642061464 482704662 777953734 853766412 625538533 444401565 2562541 466203679 844313036 108819466 657625849 172499189 410383021 821003714 933009819 544712524 782340982 368370418 132502040 612559674 813444274 557097127 241717038 449580616 884468652 970450348 204983201 306114318 131513158 105932017 664701892 454995877 381842085 478093377 473552634 37803174 303654164 751722630 948728099 298021792 596613097 361417568 818816496 311868835 754623158 607941611 87912196 456345099 954400961 142832830 859810069 291976549 557300707 930171543 276794357 50608662 508341691 717504533 674186133 322734474 74970121 62604248 726100534 316664960 950259660 565641779 852286509 341729845 423386521 957634671 215719842 828363319 346164879 770608391 838063141 919562291 219790696 247121576 737724465 855729115 16805991 586972820 914311818 994369641 788846901 417010067 978907634 790830876 94376098 131537085 834223134 608577986 630973554 609306872 952252220 273155664 879820873 54965294 60461278 543749302 597610271 943571791 487388652 161152334 528863475 431778539 12589599 335132999 494570362 122241093 389204276 152742570 870564099 77000143 566209460 188516656 428018419 975419473 833994510 454034654 210670201 37233938 867942692 404065758 124544069 178741463 6120463 295881868 249729998 975600856 399029228 670885903 990299193 276809215 907582538 556095371 654679810 309220717 233419269 380569121 684006053 130213865 843530872 988396541 795902262 329382719 41178001 758685404 485538090 31833012 877023000 559092386 637801411 506189379 193422233 954520526 181249117 781037205 225849024 56550223 748084671 230464390 634019046 876875755 298196021 924335654 240728631 270619888 308540819 32406082 851366504 122508210 914307499 733660601 757296678 146319453 948719407 331364216 437148856 764434264 11108482 854585515 629906048 227590857 304556225 692156275 161014378 277128668 589308600 553365728 997654772 125506591 220466295 265651607 912604579 720013770 840402777 658511482 424252284 569557735 601524633 125225305 222260527 472987731 28033101 704667450 604909202 884753061 130838929 718653782 566147361 673741658 347637518 699445909 538085805 702014931 663600676 694234959 977672332 184636510 380956089 374330086 93794974 731618861 892510357 821978183 104980578 451502698 134183002 284780470 514249990 970633035 807158530 961904185 715478749 758828230 999456927 662985647 830522591 149743362 812346693 167250915 988367451 984763729 791360345 181931202 980914136 321936895 487680235 362082483 386104393 925915994 680158218 144564117 150943708 479881491 139750360 480354629 858968115 479662463 912951558 140979035 710100299 866355302 603731204 733409547 272892554 525277812 355252448 401663911 337811617 830239143 573606843 257575196 379147229 906983963 187085905 185648384 760166241 522667667 326500507 409494267 298802120 28476571 693026200 283223219 326347454 168717276 607275732 144461656 466880275 632019625 859205188 719681755 956626575 262711841 405211487 252856392 693797696 62872916 822917707 451588763 717735844 176154579 23367908 393874658 653768884 701427671 854372678 165232295 121684006 478986428 46886188 392448009 407193410 621899921 315608348 478189243 510309719 639454524 165375498 611568211 226894215 54851926 954142745 729891356 739473823 757813714 326373414 161942991 849391030 543414058 4935205 332432413 651360023 229677987 34771918 470014602 250583266 992838968 569923302 75184057 657019933 368663808 722237867 162599974 444671188 341150977 559886390 935748449 393927807 646888062 172588252 720307781 183433187 99245208 919261090 345748032 626808033 402022723 726634286 311296642 26278087 467367250 102173403 196639213 995396597 342151624 217647664 464705975 305895564 655070545 419016947 589418997 854270566 83556305 327415935 484876895 623089117 951959554 247597886 185163196 509892920 865703500 395051461 499921241 805658242 880003845 348900903 346424464 152988506 643231489 581274250 296315296 524794060 305989028 57325398 64599119 325811849 389857969 771020443 875156771 542460424 632072997 848609238 625374328 992751913 75287102 388991750 701442452 347826063 30502553 942158060 539365573 812023055 19836094 34964834 663085158 94329569 302800812 259779251 673913375 963118061 164110377 764696093 982398551 908808246 532162195 294332073 573090599 532080390 279442177 930169314 574609557 63669909 30369522 237510186 401424493 570893757 532641647 226516939 945184566 141418917 94285684 920065625 586423597 877986530 505008947 949557390 464743399 425204273 708952476 701078132 930442678 128160876 464877184 58401255 968270950 661881697 230123678 497340538 555630417 171711420 351307340 855185432 343275178 464995547 338238329 275609096 270474140 611273026 387856220 943554167 256250686 692220578 621402675 949443712 363132653 964703038 606947106 577770892 989112344 679188299 293024000 513600678 601423914 273639311 912427783 114759000 118040845 466013314 60476819 137959625 990441689 31291244 660498651 136687308 282472623 826895999 729234169 514007258 948662737 484121984 985554026 453534105 911637278 663446628 654113046 769347536 619180836 908745537 506217372 576520515 42049348 545309513 978122067 358992841 874592087 175333881 35313508 900147812 95133252 577059624 813380190 431726768 209832701 626839482 321500398 659733129 55272894 66571971 702970298 301066034 930096032 582347254 526419451 853370524 424432581 951935417 903385074 195165149 968257095 204008258 45626054 805403989 262393115 401337980 836646285 93217698 290769463 932779235 331997758 569289089 671790369 426746940 568567008 882176425 127955622 554560998 271703859 260439377 983671952 631810967 279174010 33724847 661332959 879506761 555820638 938134625 322128689 794584202 381793791 832889133 990150326 857409057 827989682 226157912 816585512 654606560 758527932 156043096 598153926 639598355 585811551 65891078 401299620 604767178 381262097 990663541 428353050 905458061 779031391 697614017 848382370 84155289 473780423 853725368 593273746 553519606 742337674 648923407 218353988 195050418 18615194 473094653 598213686 869134782 561472132 911869625 774716381 990970294 398763256 159522962 71267741 2414602 750951991 244236473 748868791 373373862 61546368 993691954 391808585 460851255 29764404 979972600 943998902 502097054 683533373 944341636 710947119 613971287 277042147 252203819 621836753 951018095 362925233 83384723 303307554 554116487 798308538 128038185 133059690 688256166 78694021 591407527 855028156 324778027 579904597 249305165 651156118 751399560 966009195 273784391 432490012 740079129 132951784 466405754 205554123 26024755 675182551 871047701 497319544 680281639 27661872 565315272 114235615 46344633 901982371 669244677 691382228 255243633 172555766 846225459 525233423 871851424 225698153 257600262 965945859 142681066 562539396 326664150 517799861 534183560 355954737 502157568 575843552 884572187 635174947 946096748 279859823 690035578 994822452 669477550 434099177 427092891 943018815 202412930 834120677 474412941 260066674 119333124 454218676 508067164 324923408 643659277 82933932 770096553 771307311 563146173 964843344 367283849 280213116 517281752 392102598 300472376 788441256 989637259 310282521 489812684 632490911 840241982 755341408 537900276 991421112 390721882 417080710 768346408 325222055 358003578 294921921 437236943 883668237 461302967 731576746 99006862 196620332 239692035 287656589 824715987 16511614 305583529 237912022 306481323 770647117 26327260 537785723 999487135 660968260 503072589 282586865 864434992 270087857 280474582 769706168 711278433 592618036 64031480 774034002 291114781 739031059 611732522 324917441 828207186 875889600 569725679 63837404 711288591 118649508 639299033 668399375 898269029 444220731 871978430 889928106 488305830 668190831 171688231 190617650 207986964 597531118 535025651 393885777 169349037 118447559 617503800 576791946 73945302 92807329 382939177 775625268 685378646 22006856 134340772 406505321 21548788 466542320 211677520 187700597 600816794 246469497 412206205 150840461 269396555 833313129 849418240 178389744 320400504 12968080 503892241 940390509 91624795 590825359 433718440 3875154 799780848 21619787 27626321 38944143 846452588 664673099 116304589 869455287 226415418 811927440 618361244 895060517 640615109 217499398 466902443 780698641 437840820 924638890 405484883 245034855 6583227 192383999 247435958 845361793 978971325 138578199 63640116 284355643 608441233 409184199 79880239 342166891 403963914 13521873 195392609 779754162 988065244 39717469 816307444 829562330 622523598 470213721 308880752 26640589 249420192 945121301 718253195 506612534 38192037 80174148 70001715 7508267 993998339 1241987 474991749 163729735 516593557 812133713 265220608 705572063 574279557 937788301 985421782 506765068 67254286 895588118 942689164 920032192 153762452 965841356 907456024 888285807 136734000 234333820 588181272 570181907 525487756 140670835 106759821 958254792 817744144 307168145 115911107 611344250 173570979 598367929 192784765 582334218 631897993 168508256 141968020 647619067 370560353 370592221 343515198 478838046 589179555 413242174 219117454 446586460 227362822 521672142 108358843 9832253 531569998 766147398 461948270 810304758 50651568 815674074 481225717 398348623 609633840 993829072 507291041 384397254 616298045 910222980 678954782 832332590 96185702 709969181 887148601 375174107 373382477 364309091 728617423 912098008 542773843 955856341 156748880 114400605 542549725 858998824 98741046 869505193 50622055 971324711 169460410 35686781 86419458 442561455 580141272 990112939 339764723 927286756 669154194 514157250 126002690 840807153 101924717 268477229 613420099 544537036 813987681 448234717 360528891 195267145 244640715 745254226 69529881 474480099 344019181 864565245 32429370 609227886 749613079 403020592 465332311 383978677 544276091 738760940 784592834 118378408 543092909 4255065 775041607 180031171 603418140 861646899 132814825 765507489 166894821 685234201 787119499 116391242 958313433 266073788 424117948 324895044 692089482 647209040 634676260 551456443 853551099 345297058 451738653 553021036 868228433 176604637 360653826 986101683 110000452 746513507 207795600 170862943 741617527 135572659 919124863 170804386 781828941 865333919 705239540 973606952 814254131 596659209 926087087 384428153 826289857 507341880 673034395 995334125 694541605 57089484 220455749 392526207 942743363 714981442 180499221 602839684 930765737 980513119 352262317 396609161 561224726 82722881 169281797 862592728 577541101 535686167 101747845 425272433 409160552 62716092 541713061 370759443 650088057 462557361 408759539 767122503 110567792 337001168 957795010 980456430 675910028 578436519 131612058 692641621 31042616 604233097 972578755 504799512 496351969 956637463 831084460 188637161 997250217 622011173 737644768 874686910 562703152 592273402 264388379 265627100 551274499 522248372 517086972 134570220 488234510 59554230 158272863 823944038 54941056 943324379 809171424 479084185 549891163 847868545 493024720 255454149 680081184 482515899 749760458 540003730 602837147 468974049 618635621 440037354 427161009 35309708 657383039 65460794 586682988 512026260 4920439 781721198 790834317 25875445 815406940 564795029 566381113 894044743 335048381 583910402 53672564 541759565 459366085 308702197 717578805 520967425 298609258 443417393 552657172 716096261 344756183 930825135 861326787 43361426 56979167 970810276 880405096 290499718 466437612 97745638 973657251 164161236 588685245 330042224 169483776 666512118 530606993 385906330 817456826 35639896 293284982 352025218 485851140 185289204 485204457 951611334 709079692 688882869 58409150 408897290 36132638 806672186 519023279 389634208 411778258 628455759 482246153 38237119 892468242 290805710 828611306 933921366 638636209 793103559 698089861 869396103 39055909 252335112 195324720 61235989 900235175 916924383 712618380 887929893 933529986 741903791 515233922 507645720 76264405 934861331 100071370 213846219 990896514 337012417 964513699 821143139 783641916 799628653 411377359 572467012 317685407 676060044 280264922 727203203 598892125 659698060 734531356 710039496 606722754 103934322 251862681 277827839 393295837 195586133 222310771 400576804 532014318 541353590 124518781 971969543 424204604 900998502 75986361 498452553 831814859 760563724 274489968 217848468 867906514 624965954 887180694 911530980 342596332 197791688 137130941 509091683 797974965 239966321 393393124 156582473 948910965 304790824 796368063 972175069 379450254 868133883 666512384 960548801 608999055 641500391 705501410 92705301 858778076 908886478 270345379 113574420 682312030 580937925 84812658 451063078 543213780 69915530 836553350 953239795 134614758 260061357 445719440 307564017 517084331 632678223 631551553 944764449 756283038 283230846 333774600 518273732 822455485 890598391 169562619 447980025 575315500 822515017 751568981 878882461 422372950 216569897 276410018 290757381 166557099 288406342 930210403 999111779 687723837 721245099 805101294 110047936 409401212 514606961 749245509 748699243 455311272 167604204 882736533 169669686 877305046 160755893 165944766 284960660 693814944 725981647 917871871 377794654 706276849 824186496 351855528 308844013 491615346 970324550 124122864 669027190 123008023 523269483 825876924 607451003 853486526 81019922 428589806 958661920 381647541 612177185 695946700 550538995 303199110 760142573 443258425 654670766 84907448 853811256 377246488 7340386 236958302 350800971 557605502 68738991 580607786 706734701 609618266 433907353 200826831 120948219 711613904 483618227 169192952 188421916 586938267 802573194 831134039 765318436 542999401 725218795 272025156 492319575 375622325 681093147 125491155 21252344 512891126 975247478 750373179 707961625 220759228 855917236 992282472 491549441 545002955 897223173 868952335 355413907 586345597 808939179 454597302 297317629 314905463 293550016 488855594 728080028 487578442 928279551 917306201 999946455 639136258 344485189 525197800 739559756 110257277 773756926 399194787 301653608 940079174 201105189 271119694 76025421 657072998 489287117 962051776 217561872 630489279 812125611 160385681 490604535 597357531 605100052 692623753 556528912 872533318 777432355 882348983 928292120 746201189 566449327 777480094 852613201 258320203 450658066 654837480 503840137 193487771 771740512 679714050 568102116 538225702 714002986 63891505 215408922 636206177 210374172 946371643 240096824 264478565 889483569 900643950 490448621 888954931 467886330 502133441 143810965 200357129 130696624 997366024 456792479 402653994 301768100 970160389 968268277 871633904 404405969 545028328 966367744 680251088 957430771 220705128 721336981 660397126 889329954 900774640 269899202 644663205 856098922 174283482 416689082 60455364 818967360 210557051 287694087 881455063 214517783 458450422 392276126 963885407 420105825 154762702 261707135 516711423 591868734 643348880 140769204 840222578 21875213 519890506 697823939 668216519 52008177 199106156 318885259 341208348 53622867 951343722 854311109 64852518 815312015 248779910 322272821 25035429 484010676 83901080 617553440 801197319 754715414 155656301 553247224 801914868 827699627 864869908 445531066 413144803 292945806 792509453 389059570 312645404 842888388 502689120 227240347 528375562 58236179 441801079 180900023 930381754 762056266 586448952 427291080 37055461 646685866 960813352 332706795 575737881 331416843 326619637 407099748 629246359 805244649 805439455 986674966 400233341 56846448 339261684 606891137 586602100 718115643 662700431 374680755 833672049 208076512 941167236 439746147 333737410 315169024 532457303 801695384 492600429 799436869 593150761 970195153 923964048 145333873 971535475 468743955 311263523 636576182 653730900 38072002 63769755 947400093 118007717 1016502 932584306 843388842 92988700 973242195 987568406 160997012 948388436 135657390 501785800 675988570 231496844 282765938 570098164 761053002 390042163 480072856 255450152 145148646 568595522 600810714 143366461 981657260 626128998 386323172 512305478 987484722 240549055 974687518 87136906 688984451 993324231 429537047 133539027 594327232 295933822 908988659 950222211 933607889 22584955 374452100 143698435 303166634 35000080 409287077 372087303 726933362 720804036 970595130 814928628 591650438 422767319 394148408 728837122 448976436 209652418 354730187 338507939 546979982 772713030 422031517 437968404 710207537 57328386 945819365 27939099 18308188 572086591 18797917 53661474 390533961 441910602 431365786 928983455 613081771 433367498 126058553 518986318 766127656 835271974 51837022 949753660 797845140 443643633 514929560 714725334 278967087 472946170 760201206 969250982 640309608 329448145 686986736 894700649 114726317 930937128 132738373 726537618 128705479 591860562 436887589 272178042 54917395 307629667 52765433 785884567 240476455 655239876 497090511 174686166 965947763 633354457 810219927 829262551 892852590 613913755 480117315 945193010 403899142 470706779 630409235 522295360 804984353 153139528 268844825 801620551 640812398 65486991 458138342 4985092 692003684 795929945 258092499 623070870 986028673 379035839 654098180 794610386 15517572 97173469 970626591 409394027 73744490 442064008 364578984 878737304 318134029 160504818 487698679 884871636 264921183 163767088 229987850 589558933 736608931 805988575 732179457 634862369 472820032 658664421 385853558 730824971 778384913 953765506 132197845 794766935 340445576 401011215 16066627 132244960 821945615 485410284 296661960 422936837 543896094 426998686 735769628 129459561 460927464 187520133 506596119 233997704 678596111 443712516 530892410 723362966 794455654 363243360 21209005 55178419 138569660 967466335 798892157 649220639 470539703 176146744 109019031 68634264 383571867 597200079 524288960 682743343 116070345 786727413 858392364 255596081 607265754 46662359 957151381 678126964 368944976 443734705 268359625 841743321 488594942 79138870 169021168 266693863 106436002 205439549 586563883 191265908 499402634 17770324 57812409 904951312 397138660 162232759 434738555 240057843 524774052 517579678 139580946 875729094 243449742 78976113 636092503 45402354 309091689 37346431 512794205 534524544 795509911 975342512 291897026 510649056 307185763 827373447 543344861 249919276 329243929 427025060 716983161 8497901 603039056 156889083 362688468 729972901 268310097 421839320 210873985 433602196 910082721 729509635 149408889 555444359 698498956 728930628 224543835 641304413 144710395 44131152 690089081 790434799 398228574 473451778 668469867 186685127 620475207 492791471 517892374 945387692 365587593 83587289 908742626 106761764 39604347 636717775 179053827 98720932 389001233 332253875 928318338 231146259 593394643 285435947 956849767 28872629 283492433 434361891 281876395 658691799 237886471 902857666 680096684 608807764 92087462 432424457 680553207 986716560 614355 54567809 609604579 171307048 838035447 978824549 217802099 30464407 853829894 369478375 493822714 49022447 132536958 179629416 328832011 608750640 973552508 84758097 212759871 94237424 730429758 734398135 184373606 621290081 350588915 210301572 441761153 328730927 236140066 742064135 555917659 737733313 483726012 163654820 570352241 749819721 353451508 910690627 716161857 715576494 646715048 887603968 142335148 528972358 826960570 843233234 678463742 231318194 543125071 429385726 938846721 671438657 220863216 187052222 204666084 723147158 98767857 655172210 592149683 679637753 30905837 285173960 800598728 597239849 369844883 377615785 247654845 383383184 446487175 448646229 894079048 589415919 987062414 717933922 233825667 873478702 747921120 820793945 415851202 442867790 231599354 898834462 250532247 475685105 357842459 171296759 54101694 843917643 802266097 917840770 747554007 328144907 495317937 389974021 633069620 817665674 97612166 381437322 923062947 975749486 207731679 769069061 353322197 192700819 821188191 771701355 631278632 11200218 234252574 734253658 859143110 773249572 24533047 852066035 588813318 439669121 729935633 807476137 752887430 46661165 139618650 603828328 853413387 976682005 803270167 510812629 426947372 146708894 123319300 65613107 60011740 544091029 17521617 879735455 352810710 989307836 268344091 462409226 488117913 177340635 397977355 845937956 603300718 517205910 29934639 293393929 431793208 576547562 355560083 159870724 931388984 385944789 438975335 343310053 709884617 300352495 799005152 210524747 35122723 45084915 255642695 849743978 939688592 179343869 899071512 966367832 695596223 4704203 693982961 409114769 115189412 950054871 995329402 112987509 426077982 19533448 662020833 799644734 254545687 719362793 523731257 695105988 21029156 859417317 44271040 299029536 389881365 405614843 924347309 570824045 425036997 525083027 853614553 534189105 801203626 708513237 495456470 237399205 546788507 790395983 292127264 734043744 959986178 450203989 906516331 338027067 717097169 505650604 413338698 348362864 909593787 565981980 750805212 432706288 239698720 209569099 316543649 121163699 472467978 635078245 388513669 187188394 468746865 1440171 367196779 363619991 370112139 852473213 630425207 464146059 744219947 769638781 750410132 939973047 609191406 32701169 144027003 367663049 986537376 438835815 404021734 926880935 778842712 578962755 35727655 554109313 87026524 777385792 22165728 668012784 260844121 87840055 619481136 98438670 192967079 728536535 869728731 78553353 676135399 691958576 754821692 949686188 368299712 276756647 353835475 212779217 766179430 746430386 821560949 859723886 800914007 28706678 130690127 474550863 587186708 121381323 303059365 797941841 440409846 43516133 704572960 10157322 563841767 960128394 716440486 12408322 933775959 397336829 332069209 109932758 705477846 28016090 183811590 787881914 501307280 885565409 289809349 80211408 876323167 940442942 399278882 358838649 195296393 280301535 316147260 230007298 171439252 389614706 902400128 646999060 478643834 532232550 616770274 400269835 855123819 962688599 160863753 653866043 541258759 527988133 637454071 118828101 485377586 682555792 46683145 584004101 890043784 6704867 473327041 750293258 106717076 147182352 345365704 561841 433137224 345771067 487017432 606442483 815408805 27278036 374020400 884330223 137984801 403330458 669999269 302257666 835751202 454906071 962765899 176449077 680041434 392645640 335297905 228074216 168606252 954679522 390170072 922680754 989345000 153096171 190892113 224204678 658392257 804701287 386282768 508355139 962171238 209930778 429293946 359371907 448444935 808078832 32998253 437023740 246248042 47497561 694273458 589590769 73378184 995547973 638625139 631165818 460463682 828007477 978339789 327319057 247345576 63215073 177217979 561408463 842035628 87965310 226463944 939076129 258125403 828852347 144519034 277296950 843173721 733832843 790591047 737084703 824831459 293419935 483307413 962602127 83914217 145643260 29703328 744523600 646908576 457143152 945304183 546037763 600159816 240710953 768162394 165418924 84900057 45394473 273218630 512272129 781650885 554174785 355332994 716987883 288983094 930444031 755726716 19027869 781736079 380461753 335154500 127591274 733876683 51360418 89730664 986087913 541513124 303497088 579545585 406908234 840349268 699261175 464083180 35762429 473518450 863792017 537384602 877142872 906585948 211460240 692470023 193354074 699765131 800330788 342073468 450833934 678999569 174530236 324972691 41233475 487437096 198050722 456006011 256700645 354520158 213011802 165391537 701647192 232133220 243472153 120902428 483951497 355365096 565411946 969948016 360737963 342997918 203263600 591462536 941167957 759797479 678361318 120850906 879913646 436418144 328843041 6475904 46510026 692493273 434893821 749126250 128083472 808352663 431190954 774069164 133963095 276509553 669858695 879140755 37117589 954745207 463633302 178544738 653278546 233364307 3551635 44345082 650590251 69847398 681068355 90047166 961164336 563314393 95747527 382450377 639721985 574726870 465377301 48922607 873680072 955805042 142674293 781253362 99562108 71787287 363582930 374702203 20061161 988487334 274805192 72195803 676506766 860694789 295723860 711735383 67022990 384113204 150155886 675662554 452569203 863667696 116244636 891215805 603872059 389640158 485871449 127208248 982205946 562170743 861715062 41586533 605390147 47827042 374872079 731895632 901894900 740463527 205600299 608782608 36663911 623184078 620388755 464880184 721489849 50315925 548443207 26851418 463848959 632520617 592421747 673801345 844013713 831224949 677658697 968443234 710338620 137211808 347170720 706634657 726418673 64539258 710254183 747170102 654203204 576430301 756261073 128484310 471405576 354848398 229963914 576958062 170577789 342913428 941169140 509871857 415450083 340321570 424022619 284897444 432323989 415073707 871928695 447329437 978310485 48315338 402237823 838105627 936551193 507098953 589401979 326962311 993885272 362149008 523862168 31305871 302988328 74975972 480157709 716874606 335136171 706080771 735486653 485134893 720260153 740956520 796366872 840181540 203783666 629773245 74890223 257972076 556139345 198256918 172455716 587912624 140041549 25869626 561198766 924537175 340866525 69808266 851767678 603313212 614787036 789546299 470671818 135319416 629115366 280662885 554178287 543991719 883872737 554905969 635655440 516434976 798800790 794241800 283116685 71591395 178792838 651772981 45546115 801415665 537169529 194113569 879179480 909598076 696031843 215300468 840172893 657523915 236509962 12236050 450644651 781327917 343121665 952926806 41055997 937287797 903850231 531380935 480452860 567296908 791870454 673109612 954458128 148836785 407028593 587450712 170460194 305101030 91963265 144506536 145653733 235121007 593619344 974215966 261771551 108094106 823824386 750471391 918030621 318853160 751145641 560409993 527538227 194400019 973552075 193463616 148521830 15065775 678349105 962856522 932943918 584000926 107411929 139089278 794907631 806505353 832025993 25779845 139439822 142630569 923485301 1508551 774143292 456649429 321998240 140784901 622605150 376123171 169884654 83225581 950351091 689343633 158789298 432121621 705977930 245002286 679514404 439609059 483365777 593355434 899597475 383128606 358434572 638357487 976537993 165427265 717648304 244935818 538510927 457398152 679378093 215048551 412918086 219434542 367317222 645462111 967187255 616886423 287985001 361672037 267031331 430517541 306616827 68132450 698593327 67962228 818855914 982583828 991054661 746156493 597131945 690261703 995931458 167389441 980150700 457881947 724820971 940184524 656161804 65086370 645144103 327543383 283467300 512909031 960511891 673551995 707026400 907029236 301510051 97545587 60457719 952692515 842053481 644441198 798790171 351515892 498918352 912649383 779741261 138377630 312690535 465405244 512050971 620221351 975852548 283057119 522174351 980746535 548299347 450937078 660569315 223039449 148986261 796721045 377297992 606730919 415530444 358292391 566869476 745189042 939821050 88890229 497904772 706173906 705590997 264413714 610463426 219279397 598884275 87932450 903954561 487626437 694722220 634813799 482733859 859341097 149356865 34201030 599021284 833599756 779494457 110896670 334613562 197907096 601227208 67211748 477994045 744195403 691257982 75710361 464578321 534452035 318066801 389242334 751960689 650800299 162798111 649726056 426001770 52429266 874270854 903647709 291460955 680895661 198780307 690815306 4600620 373413934 416082565 486816154 178229525 825882089 430433492 514771755 652899143 575206286 24931355 954805637 654843942 775784442 464243153 419865248 384524383 704937345 956394778 244622058 640287950 193342329 703465720 517779947 709858811 344458675 382320753 865740100 172552916 677780405 228268679 964998597 600113621 687666339 704191954 78041634 725715631 340351394 8401354 145078212 482529599 881624830 515245616 320183939 309150749 781221957 965040202 426756903 287249942 865984501 784988742 581454781 790513239 881502844 764392113 940510911 157954702 623555344 164102514 865400373 298167488 640372224 272715603 37900971 869245214 107120668 613299604 214130753 987885839 906877041 446991140 840717230 519700995 654293763 71614382 919339822 107009317 330331601 824164482 598554335 654320982 891057774 626318749 345469569 146601401 191100120 400267008 633778740 417883563 621884886 513252328 621240948 402269775 209774685 906503647 440880759 532335420 197398569 555921610 479537537 596042839 860977631 233634997 799299204 998660940 445278376 251747243 189783853 660129377 194288905 763415525 849800913 506259507 219268043 481875905 403587112 642801473 407297 16756650 896368750 189379879 851906664 112560477 782914983 108275361 66178629 84647436 746443150 726961499 898808263 425330916 209905695 693346664 985764481 439283009 955682374 127734608 402902666 830304290 694474597 424390892 160312494 924413575 882286988 330421993 66359776 821663619 974151892 326944833 671972458 257798505 576164117 347171714 794240177 769504272 109127792 867604579 940806068 234790524 921850093 975861991 480231668 211800944 504048260 624764131 470527869 348846467 610835485 616505856 642026275 408118337 595762859 558915056 792927917 82582979 561847902 214868348 294357600 883298393 532385502 874131912 280341485 4816847 960352398 515831844 783632878 986114318 221966348 986232044 217951941 88482705 254726545 541383661 925971590 385778882 845437792 820151467 655588445 262618436 604831259 910825618 381706365 725929609 878782360 683598756 63132631 485068816 356914768 30614482 49611282 546148442 961723746 546712972 968944658 842513725 224734425 64687107 486890624 70881013 593095764 548528414 140620847 892518063 465558073 677988824 414063082 137465670 536979941 971781093 642483906 258635371 49349093 941059708 840582400 39325132 411934765 38283522 765317745 854909453 277781648 937158341 666384469 73017340 152180466 161769081 419858684 139584304 882541807 795000594 290465151 128355735 379399171 168503804 580065232 401159647 541189001 872218089 445012036 148018320 309850222 876659615 887128920 653279952 579091646 214457509 104222799 815763368 843233247 597594750 496880569 882496715 887798413 451913930 628835601 460658312 755193460 52228648 356104194 532519418 318691371 177142080 153080288 359180798 380341553 755403881 883545383 976808604 934850703 20025942 85066735 106776660 996918641 603468593 704758396 618024191 40337868 655700900 28031016 630271960 569891999 820864450 414281452 766706423 222948766 641473437 782573039 263170820 579476767 101555439 963530947 624945700 844662447 243247160 434019258 499196743 364996656 316566807 748284782 295730776 544772213 892774544 474210559 640598282 126065601 720230649 242492118 925699949 332732547 128324400 803990093 58714238 429733755 896988208 165878133 965062531 93701517 945248025 936124421 454853497 808514340 226285485 418528975 556456969 937698678 680423562 780798254 722122474 570431383 80518662 932688807 347290447 709903861 981921394 20569392 760688717 106338941 985308952 795268520 614739834 923159849 501673740 658688748 586878476 42426914 827832320 526495107 861941232 751513495 444771447 559961047 766726746 891637962 235719116 24852133 60177504 365411027 138644619 762576783 933442338 549621098 259830069 980051214 616405808 14732390 568087053 565445158 797273716 489737855 514116847 294483787 356170971 850433543 541987356 261388517 617134077 872958338 976279473 552341549 768447488 903723869 218132216 316670196 237963551 27827780 914688887 922276471 647689808 495030571 256989383 704921602 883704201 437333104 692484453 341181120 452729446 899873770 395346454 313985118 236315727 8131720 31105766 267639340 481952356 879546905 336652766 199380991 29524111 396926527 697420706 737680436 796428811 720915194 236726664 147341084 129442007 517803859 148986062 505243257 154706418 702942122 53029210 937479900 632307279 438754558 206130077 751797078 313195488 785564218 375000508 332616078 611475019 338226061 738609854 784863577 644435288 722557754 751532355 652111410 57351407 297459019 25657859 947304092 815034789 428387847 552083637 521953641 841369668 202735284 499365298 153319592 353284707 181858188 87676 575133939 756029902 597685559 75739619 172538207 520909337 613087354 251106219 308996194 858737675 318831618 131322002 701503787 791268816 556945345 467742949 910517620 958059246 576556935 994529560 513351256 755375186 474022488 455487252 805748132 606053232 15800531 140255498 862740383 75249028 199527922 113527445 877219316 85432624 885709654 74156333 136844609 589760709 647185448 904330608 116896529 540221545 10212135 90933424 107659106 955666483 318760945 251102347 805673704 523262028 827099986 724887785 369626274 62672432 248375627 848676218 285424877 25174175 421374336 451546936 589402662 845573492 398341209 499997538 262606253 555706228 177507455 38082432 50211388 269791902 711151143 454919633 13270828 608606223 662541504 149074486 655405476 616041152 545454029 231964115 280650922 866418613 904830716 113256655 42753714 407315068 243061887 942021393 238185763 224138245 829519377 758694477 590194672 710957965 265538003 906481387 601278675 234944555 292672529 392629019 494185324 289304776 787443093 877898408 610990166 35459909 801916690 930454111 242549136 232556421 283551016 59921966 995593973 197404199 216155427 439348303 424201350 829460204 219770124 383272845 742071592 62125721 421471960 219030742 479808614 25651159 197353424 229041880 845090168 644923526 541039533 718906101 696143120 877943393 325272699 731289023 545194246 157497370 840559139 72102544 866524710 56597401 897121305 619998482 590101 718296447 731195960 971676546 885274642 16339575 653612193 480646448 806575572 413250882 921278826 519567049 658913859 89591588 634295681 525677748 655274213 368730388 768669014 681100101 103097379 413184334 306299930 203979269 521982696 889802483 145920678 106641353 326272080 341231199 159850345 566029654 903390386 688998719 641404722 411393258 97834718 969080878 717016710 789738026 916429681 373320677 354295667 458012741 497024857 633233821 239445141 266907820 961398663 79960299 179320453 976426258 14899380 708124945 245176981 523905738 140957183 553791036 621068305 441147593 99833623 582426758 216350636 127858508 567067583 70401043 211762444 416191173 107409180 734413916 513970927 718452659 498270183 736297775 340098971 278598697 381782218 241106702 18561913 981196649 950352737 581494873 934945076 30826525 249552203 79870474 515456536 879913980 429705733 177184255 379688043 169227709 791586250 583559860 262059156 411398913 755888455 188421710 556889324 538219778 86902027 423350365 45771187 386930560 873003514 215362307 436670224 258426217 274483697 89952142 684116138 349858712 368158613 819251747 753953885 839132495 704068407 493166579 755448288 499862207 144362230 830384235 767943058 346205271 275278858 607129482 535254719 884883138 124705833 821950183 316428914 346289917 788209671 559242953 414335919 598656295 401927915 494241267 228831380 311224765 142505093 371900221 678312517 107567394 801178815 71137328 185860588 196955818 987006423 330441357 766908347 215489025 955254001 715789488 804346670 634859546 33154244 590354713 240372545 74393407 500395586 844877678 156449219 782974127 189599713 454911988 887465952 383633064 24806758 541929151 901299666 467624094 172270023 161032659 631857442 815437106 381367489 27517313 128429846 350712047 486029350 72930496 837349879 906166268 242986998 10240070 985026864 452788420 74577782 123016232 978611112 565144091 33834812 741109838 265012515 827115908 337826715 826102658 164001777 50205857 972108593 590069480 231236410 91825280 527290047 819574230 522720802 274162322 631648869 602410073 348066390 471590885 891104420 945274848 601677404 30040898 979667777 290810851 169347657 847445602 397401366 955780571 540371397 565421335 865677540 728343350 617257807 952175135 336632474 502953885 11923049 722946539 333237007 83294794 395134781 487475019 168428862 353565591 801688227 687439140 462813871 358685356 212760412 376109308 84559639 238137167 469073272 50759351 942808549 656549064 858626664 638661482 805851029 174451035 269348283 663295788 44008597 4314364 183517791 554366750 137388081 918436078 149902704 614514222 270241531 91301807 671931363 998738053 365710783 313494028 107870991 557939401 213354514 597587135 624503353 431522984 375795923 889968112 641247797 480932495 107056141 220440528 387614976 899178928 289857820 313768239 233371719 737603429 429098762 731653352 194215119 272748536 444034332 295716094 342472214 803066833 329349609 194687405 340145013 796413764 11512878 651875149 748459907 808976346 469667481 992723354 170321425 222095628 890171240 630125905 22776295 38945337 639708461 88601288 896566875 854747584 696945113 462533468 782533456 642552177 311467997 418457773 465537216 158175947 64470217 271221639 176365359 19732801 396327782 451418734 999986665 336853227 15265521 567980796 140552548 481818572 80202503 306098778 322215979 995734854 85922079 679896300 12785457 199932717 22673009 948149988 875606132 990288798 36260280 735329047 581697671 89619362 408994306 126944645 933307603 343269385 638563803 608269750 848235567 527535786 581621059 27498881 51981929 635191401 130296449 207150411 866360005 734177486 661973142 301558314 901748643 827381601 820808288 653093322 620928053 497696707 9236656 863869215 394218392 592019568 945179055 342010999 511270133 895187082 4359043 224831030 416772282 347357201 185020629 835701666 143431621 403608132 404090728 624176475 187208427 41261539 193628816 916922885 956964906 886531837 748920103 312427223 996059878 231030432 684622228 770989700 933810625 680290534 722976598 528234944 57005951 193502741 784607095 736438847 717830964 839164840 15100425 114467522 474784011 730764787 899769984 398225098 357824585 611303889 792864778 278452784 917607640 882357531 121633591 563822210 177210745 102711613 124741133 379679145 619753503 748623458 586642238 289117293 708348245 904520093 962346084 469153318 988991656 392180155 374742661 397903601 98892856 11229602 381396159 968967783 216309176 305003652 610705226 596075198 393514135 244646949 519864717 406057581 747783981 746139722 557268543 72497941 947494740 772895616 729913909 246262594 455529047 35678623 120881180 394371701 95535493 358096936 506609036 544660187 925584737 945833767 404576610 34610872 664829622 617609689 441849827 336644414 89754798 341820104 559986883 44153580 382560507 237092571 302669109 860063362 417935461 345300215 252533435 990452304 14397200 140696295 725260258 366950690 212858762 238874587 855119938 965922197 136644087 928224386 315262906 156164270 406753313 534101977 116926138 160759316 660946574 769845760 408922436 989150918 662339340 881040946 657481774 735515407 278550796 449444016 66832974 689410049 939045776 763226162 67479736 16038047 420353214 285955318 263016917 209535522 509444180 670952648 803049564 69630966 264827909 438718560 268001453 425804165 42273508 605871077 782199764 804183251 924154329 229905619 892702785 243915957 783910565 482181532 652937255 896793080 203527492 478486421 338648728 941966851 972219424 973762399 535546796 413295391 159947068 414765894 346235754 786819193 268533174 281555097 193289084 704546892 968100023 706760588 100806425 469860196 366337756 148077177 607564875 235724251 425067800 976288164 550913270 22892795 800872006 364128585 272668853 313636675 174318970 54581626 993587727 92352679 978947742 775886841 312607345 768347540 560012370 585506288 952339058 867933566 30487345 32250945 141240441 660913742 273236480 817404943 680441920 169586433 49630002 916147700 82193089 392951569 386093279 939651592 314137118 641804239 394374713 54913247 525887260 115867074 248867005 149324564 233127688 776163778 847733728 532312413 541384386 85705742 301900876 309295870 707620013 655626004 7637866 186815259 773494759 637813244 387832364 103387728 518934755 523283909 142961161 746895577 437133089 869096947 375453654 525101605 165021827 827960195 913933 541750344 161936515 734323040 326506172 590875651 354957787 871741692 253560396 150341483 538265279 501950488 821978734 382871036 461148685 563916586 15724984 667325360 130943747 20191031 608571445 500802049 428058896 349999681 7926172 920725599 776287791 494416171 272002794 862098311 358028712 863846726 972286735 593787708 647254022 841167468 422357960 750636275 963970672 598814344 662213461 62965786 521104931 805249567 297590508 397825056 219399073 178832929 283706165 31754865 332783424 741127588 849253251 149768709 431993689 199832633 641544635 526924534 607270529 179974664 425833353 638291842 44920293 727537575 310072182 359881397 647808819 409778205 247447781 993606230 562302330 209092556 646032115 224722930 831515351 313885600 778505807 445788151 965579223 665721895 613460687 464368472 140432113 358993476 552368660 697635678 720551060 143382538 85059144 710066231 419908717 394562307 348564373 897999876 367437527 38907239 506626768 296316872 918736124 552654815 105664723 742101623 384818524 728063695 602403846 123003797 520020787 449198182 12784138 338488706 741993803 415402034 396695093 128016936 531198382 207288255 143462523 958276981 985789012 189962039 232574066 109654224 957798246 218582441 324356411 702152186 24927714 104191780 117049094 151267611 340861179 620829400 844522908 618190122 758305497 581755084 710480091 124628915 191837750 941604517 838826096 928576638 874497501 230835712 644380521 938123032 869147276 259353657 535471294 339198279 421651053 67953262 804652641 321537344 853085995 171919180 988607376 764840272 363226742 922284213 303498125 91886217 616486128 261275128 288881257 915933732 644689404 305915806 721991523 617509448 181395758 234482645 287491683 504803819 543237769 720398481 280554973 903381586 174094220 446184692 849941916 35546841 988258786 838347757 629784258 198483236 399342188 53313264 310216810 818077451 496461695 295339804 56168433 259799267 797357116 906608197 718313601 68681189 199041177 429826132 429472780 828951128 894525885 840469846 966798878 173483040 376828088 812932561 35972137 897278880 919076171 990436972 624055723 495046517 798336865 702927744 901526918 193295369 594168141 823165925 533969263 477407178 873529372 213854273 143883234 848439380 22825244 860911239 856303250 568848996 739902684 346900057 236604232 981368319 118606540 444754952 799499226 415750678 348493199 240957144 272422662 95772378 770116533 285038286 427583770 129782561 801797806 924234388 87151205 596965290 612518068 843112 290759263 301376779 425336023 566115066 223736472 627094284 195332296 552041494 394126759 265633962 842592250 674287225 685510422 81157728 409315597 347349419 893420813 571797450 728667321 633059161 649809171 146292531 147882413 259707793 653542469 472025781 530001563 877252801 671186012 345162411 571796564 509027493 738133963 387479685 252216751 88575078 507812179 396823975 330213193 785134577 157356762 992637354 797460778 997675442 909481600 748149421 86766375 732761674 779329360 804257027 895792758 907877811 544231471 337084575 213692555 336033545 490447553 631492950 570057166 810252360 954257517 658775600 789132297 969214027 750009084 962463988 227532814 195721934 713337338 329843489 244807571 333201436 104660051 11214497 76296663 533101669 838677441 264982295 936847715 88335149 735264833 783964909 718872224 419186855 815442197 932365372 854525594 413240626 176995005 53299391 796577032 441032890 580652665 561195466 773559553 522128038 389266722 393167998 698529111 909929679 346818684 262645694 939154519 528613752 593462064 664675343 61818559 837498276 906963761 112974780 24448107 305663905 571560481 598815375 202962846 732009141 668715560 888703927 935012462 396919679 397851507 100204762 275935633 923299347 474874394 107834782 669119070 454181828 659085171 248147096 75680626 979817463 337096441 977224853 497992368 577094879 698767424 925382636 967798549 144085425 545513021 759552946 3316657 5991582 547406711 672937412 527928128 867453078 139897531 941182575 564016151 147366406 269571667 591953294 173990977 473839496 491355808 33368954 945038600 483473516 706231272 852913203 866438627 744831922 99943213 513691188 698463444 373877994 228599188 116490940 895025770 425286832 849442761 289089522 22196089 988758862 509275666 819141302 165391349 172275127 510675355 220787618 839148808 909324865 981878598 640198022 967526714 68492435 226978606 319871086 899900516 240864474 172072410 176260183 338832184 955860636 254966488 654740345 23955763 339933094 862350534 693760762 652992715 79556285 958755309 317936348 682233541 298643695 383948146 867697117 925269851 402877913 273159226 96073998 815403682 727442140 804005201 224170178 786785295 933630329 836748729 704067984 407387651 410819600 565768738 946971977 996547161 840997656 55529543 887176074 390576191 563301817 603689814 689186470 481299919 61500220 604318621 369080517 449242261 858453581 628864541 286293371 577923571 814176658 332843144 820980547 792183664 196557320 493221142 484784052 866157961 342568336 725927175 993184976 499985088 322977123 480421658 24625581 268993389 438864442 498487541 286842678 336965649 510183215 545395574 561206406 618504701 476248234 154211281 813125617 451461790 729785257 76900052 878265779 982499958 597235235 526787921 843073293 689631253 661816522 279719590 904846190 62945369 984123765 501625411 383126191 156181305 291941048 891548177 996116309 876489215 261219020 330930581 103391859 776390010 965290461 336800705 562786505 664495430 431137637 830182975 281126662 966694266 557141514 847275372 955241216 115275675 281017953 871987811 364980493 402263304 498508503 407684675 103307346 996393809 222458130 525377893 168585646 599477569 180178272 879074978 53370279 668789332 145027180 682611645 424607885 861888049 15612825 409317800 272251231 913279747 334190110 344684465 810987980 498437818 432209724 685106372 727892159 917256757 274664646 826646186 459001107 322859521 996644451 131705132 723728356 766265496 248239238 195692362 425522549 904103805 461998492 278384351 451670717 554292579 124029240 221333163 28583036 383611410 133808501 76321248 234109005 905441673 109608226 916755532 376381443 180008842 83764759 527795153 557462973 333818413 217863748 918912709 101560208 155854975 523514228 467575772 966368198 497256742 452528640 660838223 324288369 652454976 790816931 146350672 411293919 839262026 637375026 927774442 678087307 161164379 190755164 126526528 507534216 296436289 666547669 97256378 883130364 860595711 132858469 994210411 406798661 336873474 683879457 295969528 606945855 299738672 823246378 37029045 851888077 991953213 528718184 835232419 209540252 231400811 189468912 144618542 695251198 796968973 613109418 920620312 282133928 255840128 834299797 421071406 31599927 429866925 513850918 795557677 993607748 244866941 139836222 170394623 114122854 305384112 992629327 29686209 815013057 668981426 916156256 768148169 330927396 999106923 112825884 176590485 699631706 557282936 486629121 592318810 570979868 781278496 799037006 770906843 783855764 901282944 306292441 340223374 90206216 441119248 665383048 694838629 951055838 478044700 385336451 656394238 102287871 244900515 479740218 489844553 998968514 429758747 235870275 502036103 709302957 767086443 785187154 150098014 356018571 413134016 41440723 780852351 943916591 625410690 134733933 103448292 403145614 986955310 667683759 780095882 293030059 139973596 480727914 879473717 62933110 883139406 940366656 722942825 645612361 157542231 429284767 263189008 766326198 77163155 310814100 876985330 902930966 952774136 371561476 373272119 194229109 178221093 736410667 832476710 776000733 531702706 686879294 379758840 762442114 728343513 850599845 581136986 912745301 426193228 880863218 218644999 97334413 24175275 147063777 254253993 400046400 427466491 245222735 951065617 798135242 420146844 877751554 149230954 534709010 421897407 59017749 773352805 333894262 423681691 108566675 445492300 3303030 152460862 723482704 454378903 539037004 708516227 963370534 696331400 748523390 956243053 856482162 832097899 352925545 88118487 670433041 831827664 430096879 803490634 370635030 98010433 545860970 375764384 437482684 569194809 59972993 922522617 277725749 481290212 723802906 272511987 907789990 777829942 691056025 441155855 693025174 781616814 898777030 411193527 979419261 182663094 253958157 152403978 982108501 673156244 677147658 590860420 609576699 789526203 942112954 809357483 572319031 298605665 888697057 227518817 68061167 484428085 252505144 94644123 714870174 684733722 3181368 291705623 601822421 589447228 285052 756781195 632451825 363311508 913423408 793929508 363047555 501925186 68837629 535432619 424972313 535339441 993327574 130369093 412748642 534278063 35425823 721267066 307955758 972486541 818548038 403183742 164936994 596521102 598365725 492116477 241506863 265164149 998277363 350901290 343402194 641605658 518800562 622820737 633582449 726134889 442215890 893049955 8046391 590356946 146309587 637893934 510138884 680722244 256800436 256710490 187317371 766919045 519759390 716225141 70592971 590411665 339398940 797120046 218390560 558763248 735387450 185597176 373162592 808828267 872326291 802216649 254150352 390414723 724999092 362338895 652467202 168790567 736635706 923096029 339335762 774725186 25048407 337520490 254814360 549592594 39574421 605721180 318432506 710210735 864721169 271016517 912264273 576967445 508329800 647071716 535717618 90554861 555078213 216280829 955853566 284470189 553637568 362979118 423594870 139486604 935344358 869877377 285368297 773414911 614647245 327713700 858182437 689557548 402778668 766451910 201727534 754181985 645846625 56392286 690018139 783176560 687160089 695770069 233061531 858895828 29361954 948742018 393464866 940927653 519584022 917947555 231387878 935230536 895146158 789840464 638217061 441021355 818277623 23754565 719533620 581472821 358673727 711005012 899033885 545167194 858670806 766980936 692071374 532115188 837834742 500618380 839536797 265453592 492931052 287439413 626359683 937717897 208280550 987784220 774570177 553626163 957176738 770832020 439096592 364680724 100164885 626628938 996137630 715680098 678767636 985056174 255984470 214227937 942333486 267213939 987966430 14915554 857959040 654712848 643729281 769286405 731178074 849786464 515407125 384884947 685005362 582578486 778712129 582972212 150100434 405370031 464336531 205319458 640180734 363224561 963612978 713289478 379615147 892908839 857273886 824895864 250405504 998097517 261162240 683721474 613526611 245091880 394777608 304625762 419728866 979609372 594268285 247780865 612039829 750969487 163154013 964971831 350068974 619723708 563360170 21475410 586825595 915113965 856502959 825047733 290954381 89993004 700042575 618987912 898129235 414226620 206632188 319099386 61598560 960880612 374151433 771002147 774092164 771481594 963032834 893664986 875098385 407786458 169026964 182480187 204087943 452933747 794700188 571448285 260292465 917924832 598485127 905518505 550716121 561700886 315021352 871720702 576774934 445040219 590782782 609490335 539741327 490044197 895897113 725400085 266880234 956849248 966977584 488232088 629229404 768081543 719256448 13785403 837608137 993403382 5384194 881879698 948487774 80609087 294123098 250075019 469315963 510535023 616786494 834135047 193627471 82447606 600791632 514370417 295553181 415786060 357040547 983115328 514627154 454640948 513846679 964472245 591229466 818255771 263001324 646503956 750967871 31561018 722932523 690385917 186004696 593609937 330339633 978421327 23720087 962058847 897310991 904905858 523148302 671200246 153798133 548069020 300309361 690045272 715829642 155408998 631652406 34124595 920474475 993637055 128165846 945294795 218735340 869040453 307196964 731185396 770579838 20520389 840053353 272896946 937043421 199987633 181232613 51778297 7066947 112630388 441593356 707831115 505040894 964344676 703840291 811020246 28353342 528442927 367177542 471723044 458168118 377581267 290178615 160838538 396571161 346445770 523818448 332317490 536411844 767227279 141377727 819824481 977248795 616062998 587864902 712947411 998862349 485160071 347026904 263200130 45887494 114391526 544140413 257718993 448599086 571992295 231082605 25165023 822342459 385383292 742605434 898053130 812509738 399896562 494613974 543774322 315684234 242825522 783673655 604874457 830418621 36837848 973905303 93876593 865394294 591744569 156198651 967535526 259026172 22119885 113035417 875213826 69661449 446196387 660997721 42635169 953816345 455243264 264973414 352022082 181371901 636204531 672104196 88906286 419468610 763051477 801732405 115556733 665308867 901311362 486794441 379397854 18219753 337627012 660863486 316629552 44779373 334066271 992210636 699268283 927503681 824808272 185923133 529236453 80510007 408798378 614482860 675089463 185849907 674158669 724326050 622379789 200041349 249458696 192279110 321878699 590718768 312157112 489160779 363939455 536187193 732007282 478124579 509988262 573104717 393434000 708188249 320761179 705019191 370889685 789861216 87316392 285346484 537295603 799372930 705493691 354936916 598678882 15557764 858050373 712392141 616755013 777386967 416520876 570791598 665926366 325771480 228900259 853541686 438979961 388675082 713610875 765061881 951999003 612939824 737227146 662046032 514514719 198076028 124247205 355710176 123455607 525176527 795623219 459907259 208351646 374087545 486376489 846525720 776941857 99090574 199970665 452632813 497567368 396274999 418286992 205551695 249486724 890135863 899805605 551886803 870541436 104458703 30911952 793136609 754605945 885899496 702983545 384109805 816805519 799690985 850302576 958637900 67668706 767343916 325582411 415561450 68494630 913781970 889601998 897212584 631770386 684054158 209498557 678709579 26190146 42088308 395234936 566572159 369376590 306331299 797657557 279672548 594338396 418445666 490552692 454280536 864407131 58295655 189728187 739435965 686429496 696679687 744285508 346925386 832861610 60171060 878401248 533283549 455221022 842471132 844218270 621911414 82697689 595149548 587570760 20144709 78937704 954908118 257265133 820950122 642107034 745376382 709605958 20495781 687445344 822035688 549642522 670991698 657760365 473029216 573741715 125226613 398278673 542136623 29325987 371625658 811261222 502443147 628979747 29507824 833678734 557353395 317840578 162238926 226342118 102049949 991408759 473356359 837658237 476657259 806193538 663950167 803403293 570729446 125297233 610281348 843739012 100677616 140547125 14494473 897260330 91099130 923528633 714777534 735544717 592540 49011928 276499101 669133610 514178358 528864088 869539950 443971363 176794045 93989707 687416348 526578865 879919396 2546533 163443394 128378314 596561125 671986178 447019062 868287535 577197912 752200476 346951942 824799922 252389985 52342259 907159887 628930421 748348197 673660735 216261353 464966444 599402668 46916950 126236560 184402760 687588209 758461055 441542977 881206294 147613183 554808893 766173613 627213717 770963323 219759478 740806182 995550145 629110631 511276434 753708396 547138015 731843888 477022760 659638688 986059108 728616536 815701367 298483998 303107262 177855115 858992255 569575570 397182539 808377695 6988530 951842560 848348879 560148477 921282798 183904068 449913258 480659613 221268376 230307948 909831549 265434971 28950929 556842998 178725744 120901108 539865331 747479941 503243533 853840778 664828880 686147284 699275 716697665 226765042 789446540 958285194 447496507 834471979 133462250 780000174 715003042 550785160 250487255 567475949 728206658 491570757 47628839 634601620 703865161 199828894 881844214 483055246 25327986 312240704 526513661 721003691 130464201 675258182 114880938 367341314 730258918 188506208 323966820 258966817 830508904 159969956 40511616 675871750 902405654 886232817 897161662 807324708 349955371 959400247 765103240 136606925 476910981 299155014 661972510 945368470 790330329 638036450 729674389 714454167 362145225 342660524 734572724 750222414 331386699 889084103 366732267 434833343 822108101 247103719 82978139 891436476 281514422 624973546 264848533 631718050 877812476 347305590 358889722 227292414 27280905 385460114 435611164 64757708 986897281 628382410 818755667 108177070 357675969 799967053 328586030 390968994 984670332 637596668 347083156 725696680 381010368 565092145 972665093 794339439 809582591 218457782 913355849 53479739 576731226 209347533 298940404 72745177 377069921 184172170 601305048 308560986 915654498 160864291 824168978 55299936 322790972 26293206 238374890 805093300 635523448 569621161 684820155 803202659 878405808 422043227 899456863 605216545 954861106 180842663 521514479 731537949 350871992 128248318 775372080 149610191 59854795 351044031 617641967 841501257 712077714 867523919 949386938 101846086 939145088 91294293 952116693 259147688 952897956 85401780 986002718 753855963 979647002 564269320 684134283 417481542 967206230 709029224 294187682 156048154 667531840 118407024 446525911 391748525 953747710 689298522 6153161 360704013 924275152 655624210 125105202 791046366 734489793 239048209 510785528 364921442 50911877 406689146 128580956 999572395 618834599 195666046 421462723 979273348 145122752 594176320 768890298 262912897 843684229 617398124 468217614 812802920 777319614 498097615 596658192 780692649 199360933 448732582 597203263 781273318 875072559 131894702 594241457 747155104 740877964 627480414 386634909 405570215 934077924 556491609 447746320 353112402 125217221 986489657 518729285 617330840 957942123 721480936 161116943 858742882 981163030 257115280 837191913 592373418 226992600 158948848 29446149 851286127 466467550 649068177 947592882 858655198 864725333 489590166 150170507 907665748 899328652 776685207 73741352 599689820 229589280 913116062 870877291 611575438 620214392 842602063 796919517 972369010 504228159 563935555 853622602 699739790 339772555 608246568 462715347 201518997 28424248 257314039 982293936 772444450 688729654 274833169 402126675 742102462 527736677 418015641 37290990 765861577 583369846 71116276 898852571 789339990 237537556 380746899 363472576 679949745 73165529 532856354 726974965 22086199 602066892 856228996 65832899 667024158 485933889 162087939 389381076 986451211 299330594 673150859 101206461 882830872 530462265 515795669 278249629 659718752 943202897 464019455 790783830 186352539 609214407 225132496 558543903 826618876 29244282 439148884 919535834 390306696 439516272 316271421 948576736 58913828 607271534 608071309 731532953 278159369 978461330 912103651 299640239 273542517 929681374 815110369 539600834 806249610 578461091 770522226 659372063 891965940 596263937 948233482 977148659 214709354 802396152 589208717 580933228 566944697 266789732 462145954 197663917 817181651 311346839 28680596 842705766 911751883 386494847 878899951 650915410 592339157 943194449 858496707 101266666 632353793 136231987 891375652 476619333 877145055 44281441 618956624 850667663 505027542 759675266 4143700 148708709 117802910 651429905 486446527 605802466 781979276 447006649 448585579 182574320 579657580 372207781 14467283 284380883 797416051 906878373 960118110 629819194 984063859 955130930 599887820 235314070 381737620 768645564 91574242 186980332 761170287 172997844 863883552 63881014 180177373 534595720 13155878 654367384 771954181 350424008 697205462 650512345 729106950 352175429 874887666 581499919 430797772 395006929 184351616 689622692 144787386 450038209 753698948 553654273 146128084 732901517 848988989 780291324 743337299 49211356 62770685 69019515 33138445 240944048 973495427 773819807 575956972 368643746 200786301 92566717 670030964 855604130 930899177 739850927 408874293 196653745 456965830 674382594 161184172 186109470 451316584 71178767 138374387 477936222 977080024 131365113 182924382 891176174 451802275 848988998 712415380 477510594 308406538 599187152 786849265 79514004 552827462 543010108 986424405 617357186 788218701 322781419 594464957 231853711 887824814 685109433 797281091 274438712 143789110 889313510 774347400 247116399 235082931 553443845 507891719 988322309 358313662 356064680 154919990 865627081 924945331 36115026 388866812 910481404 855547198 142602809 95197962 964879473 50087220 580225319 681826617 902797172 301123073 265786481 342766954 422162546 68322318 219399666 830496843 93149308 922033336 70886499 734009604 547349007 857742352 848720004 53667654 754693614 681184278 459412196 345615822 443352679 184540853 752698955 841033429 977011787 946347634 620454745 893437702 77621793 518505552 71931710 447599705 760425425 581357175 661652580 289883746 885205145 208518825 912967553 91134187 117784640 211622582 66740741 273622837 655863979 716938364 299847599 823547701 112108736 965005630 190526292 814375628 846058208 950868066 853199653 598183320 746437898 943021668 28757576 698469968 415926996 975123382 156174358 628197220 843998218 77676887 202146307 99285914 937842522 571544404 329143158 422643007 306471511 854162091 30391847 988349999 555456718 620022660 924859068 877252727 744036370 150868757 829688894 247960905 705501443 327270384 670408121 984448485 657589617 24698233 612917832 328929233 989826652 202659930 387152113 633135447 957268936 167322129 18203442 836449724 209044842 220754543 793042729 701387968 748102101 774058602 958167187 600917564 458206256 654836882 124592671 83663016 143799473 429979204 609562917 135669035 429651034 412068943 696074207 394390496 894214468 908307558 21898883 303439496 578773340 793706402 114689442 280672769 959863226 618712123 222729410 192988287 754164826 231951416 26639386 891226342 301475332 79477623 922211522 39179216 254595569 570538639 487348330 779412096 962720655 454691788 118581307 675090858 196328150 299931284 145387152 478562564 549027641 371305620 35234006 747608271 534117347 693162483 986993249 442437191 426503620 288374090 317297956 296210846 59855904 272125329 447229778 413184712 366541494 333188867 855699570 633231127 247607104 930307641 121364085 889480422 47337538 321944122 88635568 959873468 853232215 556633739 519061394 1744549 967733597 938002279 915185455 109725567 647467608 888570458 667367090 718639970 652065372 858599995 837320125 882127013 144103735 119533303 126158645 834184766 314122189 784197293 501318714 351960512 440908464 311077690 490052851 616950966 779367082 827224214 209700658 977469241 515105377 481025967 785247991 636828592 259072637 308285995 233827479 740243421 650143676 806478787 887734579 465062688 85733882 108603447 258007665 23924444 43001775 629906270 986044025 263276272 920831252 463527877 381476404 12789737 131473222 294497385 341698143 230010781 690783605 767515997 221583586 780169587 676927452 68140782 287909872 119842705 202411129 671366576 588637677 640946985 771088979 740976891 84842599 499450384 331770959 627188283 587009517 250819322 247768915 981560696 379735258 50836710 857144532 997023888 500319402 824148690 948100661 867402898 632583763 159207362 657556081 230616069 218149412 89287725 512060310 363344789 844493393 419879381 514495749 173719515 156916808 986424784 723184887 199475142 21224212 687736758 347232008 18584356 613311380 631259387 131529624 439338767 159878787 988187021 80202874 171439703 7417089 970502840 137523710 588030820 245574719 270505431 207580393 954107936 391248101 447323254 641313417 880729073 430138257 382321795 190332778 261371706 854080026 230328747 915187439 621567554 63664184 296001549 802728014 748130220 541811217 514910177 924490989 118718535 405662776 578063274 435288158 697370804 939731335 451559936 174946 833214656 616210749 121722404 461443794 861010742 859157650 426673218 892063838 711083201 972543127 959538759 400326940 177036571 19201713 464592841 549735784 262278974 233190647 229776663 172444084 398568807 376961282 325842486 531929463 653715366 514985859 384591461 574874547 184938324 450877686 662222449 180340081 811006358 625689545 75428670 14200284 151503308 83996694 475400363 649258902 176597049 207407206 677786787 579384092 811120837 725491271 935868054 916648676 555699419 956083362 425146252 469000401 323538063 818361997 769769855 577068693 888572637 305389844 823963539 962708770 327718398 464276599 625981272 187768958 819486879 770166972 787613714 677091980 727586707 401093128 552074451 280222284 749280451 700936249 993336420 244831878 633836651 681481326 45138296 170222369 903247440 171598915 280648716 463014329 558981377 670707385 872230037 938561386 893997302 315872062 973322993 990789475 475540029 170121804 725185611 874444172 740266137 214897247 517888188 338194767 163414968 461222929 95888421 891322161 89494134 508604703 356203928 623872497 951654858 239595338 717517637 65078985 818290790 921325890 47027212 252497873 68703703 81078185 44345563 562753528 263934900 121285103 920115384 832148236 788371489 371609818 660776742 500735339 20603955 707908052 203249726 758791326 147198125 627213289 662808589 871248483 700746032 352447712 458377006 593776654 401352879 40766094 25790864 897001170 600714284 990475777 333420240 281806436 740432540 783431920 434953109 656279735 467477247 565915516 618281158 56727570 956155251 934922862 993084985 224545728 123319805 557993984 55180935 937381489 217941678 760605481 246004371 756293605 602816378 531806504 175209753 748165024 738416443 399584302 5588105 137664553 837202656 214563069 993912549 51354303 212274204 229716205 278614943 258176674 579728038 284076247 596930757 512994476 563017331 135923820 353954259 51182584 229371582 439434925 424841238 781226728 633854040 104964670 691296244 932821061 772174133 552022664 149850512 441749444 168445399 854783522 596430513 540484329 814298348 936375089 563739086 978888296 738148485 42243751 959455980 786188148 650670525 323626907 306863390 149476938 61602208 38193827 934910622 242270971 974495931 766065526 413190574 749203627 798052629 250325025 548285835 885733314 76621110 173482989 732033632 195110374 785612524 186148651 237917261 938532086 319879914 9499615 620319782 305627295 517791892 110597247 414702391 350445640 142045645 514195520 296518516 11523649 532028583 245366602 125830634 256399800 696475827 518332080 914415737 180499950 917842854 961653086 417747827 728926990 102978605 341597932 396936109 930628938 632360183 525770339 384767183 923321554 753200144 614566432 595857321 762147401 260106745 819184624 914348509 820260399 269225084 976568841 759666364 591652124 925361948 238744837 660217212 450669434 983843704 222679493 687535483 295676995 161000492 816031211 671445999 522258193 458542623 603201228 854302195 268694629 333130552 868723695 321778886 11429065 989574533 197249697 961769786 272828960 516519381 277104992 76518987 670302646 27631592 583746468 899585241 839796927 481995004 444530293 234552832 831467457 904879437 960627901 72376625 346091325 604443854 601887630 900975672 643581388 689700825 717122749 682780570 4982625 982512232 783115649 472597722 472713285 964518986 740435048 79351421 323995821 838844954 309432242 455087444 361437211 674313281 640745416 412006000 436244487 904871369 429972082 959846214 346146631 520591999 201271798 386412211 858555901 164918667 66813766 890423440 617319428 7306197 761954057 55831258 237181077 408439656 562796698 66132267 532448967 259516319 857161562 911566990 995627239 830531529 352241959 480338399 479859995 629950471 806317629 877578551 950684379 649641031 597044934 166253780 362469972 671117889 954389956 944453817 706309453 150873483 332344400 455687025 759284144 315347906 870133095 328283684 720827713 168522587 451751013 383544972 330956786 899587696 527374455 373980295 63541205 739609947 193439133 231961436 584817205 70132699 663716520 568923739 705411016 594853178 182473585 393381123 585339191 777980820 663603553 630980658 10580437 992142101 313379015 863667590 586081156 905029074 407097942 7374919 301664276 826661070 26821855 321847237 817470097 754770830 393687529 79896018 116223626 606624392 230802206 682004845 367608818 27009430 998411924 185239381 733422657 612644009 958587826 303262597 766964742 76423653 913171965 629362771 347954255 637863953 132899864 605032702 35057595 744349645 235087376 702793663 128587518 185222981 778843400 816641393 967073590 318152048 442488836 875095829 779347481 544028121 160819310 726342208 203357921 176016947 758553066 528540376 51346567 461647327 444243398 226160206 668189910 262878788 775464675 22196069 171562502 14516911 539966829 239741769 754021168 81763135 69573599 384783238 633163412 808842314 431703296 929795875 825377425 982104196 555314759 429672760 432431738 448667239 455969345 289788041 117188630 625768458 334429392 335858085 995581555 160018058 205511046 584378668 639590933 749247915 961610042 494113289 711004316 243740307 323326109 660483323 998934621 368165947 269693425 906155486 163288184 195882977 271411720 657297617 362784875 771656583 169762342 34973027 407530158 846253586 523567148 52184522 967135244 183815910 449193817 893079675 133379348 186623666 703429384 377357525 245442247 255718521 16523543 578422063 989973626 105404701 325971960 726124657 250590469 717110856 502625963 667402587 839027652 40151917 743361589 350570674 877901955 321609053 907184152 402628063 392977525 785019483 709244634 133892463 346014698 599999123 343021713 678339235 580325203 275713881 258158944 714046690 103544779 713274227 770576330 226978307 100735748 706206676 278698076 127022334 577711062 163448726 269104251 861963036 365985865 973875057 732966888 996047768 297445524 574266902 710952168 226874643 393161347 604001045 730470900 484532033 902843558 384769512 605346821 869335961 528864486 484601274 2418518 591608259 230879380 525742503 182293453 827685029 373255482 733008256 327882920 997221769 928482719 145840261 565861650 740808534 24446820 859248710 45488589 399106306 501847163 447510294 693117437 588214189 876011017 914565490 144349711 660198481 52868203 37784378 723075310 344045565 647449310 61353882 826798574 95249480 82040400 769184123 878135050 266270316 442925383 541514988 819667993 361851547 405918100 757405474 236958785 1723411 522740712 37033657 280760229 634328643 604777661 448097061 467172012 47699612 816865152 373948354 854538751 432035646 477058470 646703318 797383969 908097772 635258376 803724114 56684695 519342 856666404 784910694 726685354 569090858 126455797 88686669 483876889 765818880 628341611 923654065 382250181 911065094 334942687 387850086 669588239 98219492 612128676 667828766 631295280 728732674 954982896 411065264 971773149 649614143 691034753 646674137 394399402 507824471 623893164 748380112 688478076 654457171 232016319 440455279 293080840 637503976 359251436 147842547 15655421 938131060 265582365 433096848 895744407 99045462 659742072 393766841 642271437 77321476 819393846 324948929 322989778 188388245 624540897 307914618 545930360 625163845 97115423 651533307 724849185 96333647 633671591 836795769 390998109 629978965 867525903 694848117 488373885 84887862 782445197 504784797 998435171 739352477 748522628 861653656 884866773 445301841 336228973 146384938 190888141 44609739 971867084 48737678 724328598 654159173 424974553 707727714 907677830 446678955 361798009 314287150 853311703 604780599 328146729 345209065 696958506 59199283 381600200 691633597 273139430 505657923 705742624 641519967 523618065 451886812 496672371 73219843 719378796 102371387 110917818 450058360 51793942 915878455 422517396 838974534 739776237 188198962 540438908 517697337 991829941 543589206 224778252 201090832 140469870 526761516 482510760 235868733 269671491 635959887 82070753 366043316 561895071 736455762 364370077 322744887 532654217 6368943 921727600 310264545 249046902 236803059 788430359 780286330 184420081 471357547 263895278 850835791 719108989 495634643 865412514 420749247 957313841 415303231 258622238 531726811 925930254 823247432 580272049 919205472 87225743 627895161 968165500 846855142 431000748 913292727 446596171 254412874 740310057 300640702 229172912 242453365 622304476 242269494 787114049 42214546 765149040 13955185 666620690 443997652 266912108 405967551 738181074 345942797 156537995 83483360 623547805 702218100 358625950 775183286 314871816 47644554 506272194 96813576 70757564 914771848 433546248 140445264 791061195 492422241 674111563 354856190 365208631 812847244 82655468 115236405 958627698 861668829 557011470 258989484 98450748 50063440 524597107 284825749 694578438 352126982 399734967 239758771 257730597 32717390 435141498 836525721 385686955 259252229 477599742 194392471 412338323 602520845 767866852 388378197 560855190 726334519 467381341 736142364 661773266 179992958 872842734 713818506 608528882 506875609 717376902 686807885 860852171 863298570 417889987 986790748 596159245 216072578 486285828 520132160 809248423 957089736 129559465 708537107 502052714 959088999 539454653 263001112 970904269 801228884 290752243 392324159 875120916 544555779 813646461 874001865 945613231 891294454 782610002 528194855 900836171 645232208 590129140 107897727 436584136 908420141 650083746 688925307 419531458 993217844 784461609 404407994 557641659 993365070 849263135 703773103 516770740 627273254 964366855 545952700 129114707 931867559 834388563 671449097 604924050 958442139 729998933 170250834 575387112 858193011 795486481 254349515 619523706 64628596 787876439 217065001 11711829 974577540 804732077 206199674 119460175 530467084 439385540 719128310 811821817 221902437 213092082 35519332 834540519 521265471 850301041 775852423 586586677 146388742 842648943 893558330 999324055 723330786 763427305 223445880 769704521 44138382 932545574 941933428 477122128 104287497 596032355 247349098 249366450 906227425 106891242 229137071 651891948 698399107 107096070 796941424 760221132 32543314 557257707 858460624 615951272 624056707 826991280 662073045 557223926 636821379 713111222 596009624 814015607 667462121 29593524 278897349 508830554 661344912 240895994 531600152 256983592 73766725 501485116 217852107 604903421 101934279 577418820 306116671 440508070 711745638 995991750 884899491 243868032 852876819 955379819 995648070 636161357 547167868 389608411 322826262 999874013 357087985 782935615 119185321 691566493 96192185 754777304 273365332 445177350 561939201 615816923 143904793 523791051 305779020 680705642 274818026 930018642 188894873 498035831 846546490 949008577 777616966 373636937 20499156 650174070 849272808 818988464 857491172 381923594 920361716 439949256 699696749 47255091 12732654 551125086 752961696 836053740 321121716 408224571 635657938 788760151 622651854 141770170 660952231 404560536 683135245 89433170 726759453 170664643 360803612 423404370 978891894 599128077 160591775 593371118 739315408 138402920 389107270 410994498 744344957 498840556 512631690 237961237 150062548 902661927 96352275 353664903 742882992 484352439 639885703 141611863 655948350 326882877 195622083 841794957 166844528 368458681 223197380 101304096 238129542 627202486 274836038 583885853 378963431 26434832 571541297 819429610 207224096 136468585 217298958 187732708 641963908 745122634 38615080 11496645 228023466 55252025 274311243 342562750 16431277 683490514 792092897 143054465 754453531 349836445 291582807 893056519 548711855 502810817 763240777 956965445 724708576 664894697 670483142 112756454 414225761 177890156 613615920 533093682 220984662 131769861 532443482 104773601 775253777 912221924 127246944 323470676 891317048 280524226 167371369 442929214 83391495 155667348 781177512 778491857 492927926 181126967 604232742 714146466 535959342 551856314 695797204 472198996 656744965 329086111 479969803 819260690 821513451 516027868 520772252 63073603 428641958 548369211 351094005 186552922 293256088 772700245 207746661 760987304 60966982 866057325 159199461 797336693 138071010 595301558 776878636 746359377 845636882 608629696 807288636 317417397 179681840 884063152 398960710 226967841 327162373 574220779 202504379 284965267 321283060 107102027 878773272 812464929 750974741 472833815 297742797 327935167 996610482 978731190 92251431 561260051 541373424 307442287 606784564 495154958 991517990 164905394 187449643 813622879 464484909 597709488 731137487 45140392 506766237 302919409 573766605 703947825 408725275 660098805 675490097 584836532 779048233 453551949 369556421 146346657 346509367 876901204 943290097 669328946 883174843 177617670 166168041 729046118 43672166 279983791 823056251 273995735 431299936 549206067 794433723 905652034 371419609 388261158 732924245 385732817 615344556 522852205 953663715 63708179 780759778 673642951 344629145 163480111 169172963 738930323 692566836 882098222 328006706 343104795 764458966 578289341 641511338 516963729 429875504 225344841 773125070 813855671 927077394 611549761 188416993 832788366 529266685 475932881 81472801 232284377 582787509 618148484 753220087 876378094 548264389 540709722 186605063 970938893 501556819 109069265 466250856 733215083 205629054 980204414 599982194 692407514 858395697 258350534 545706249 249387816 706148764 576416595 818149374 265324091 328151452 31444504 777949696 340809011 869803055 448940602 592799126 93144158 143303348 584959734 70258843 202070226 474016131 593356794 89495048 13657593 718540637 814434636 563064433 195682294 915424363 240953039 452594643 297153918 374511877 546733473 405544931 158996785 592913985 524818523 908912592 76524841 575357876 533181656 77533332 964499064 81201455 950221036 144682371 833456164 528753359 220270699 535770604 534413385 78675518 788432130 884327738 911833449 459270191 278519481 961560589 669689193 619453266 90111091 758438235 599277882 178470698 824939299 417279559 845151721 932924311 50091782 749211437 252045379 253429848 552193707 22239483 54291913 253826355 486229353 728930787 393415156 453323424 493312431 694316718 54791570 981589574 828125448 778187189 460183243 290015238 742835271 871309513 38429221 209429965 42712865 502598999 59076486 47146213 323066627 386942424 525520076 247458146 867764369 505862868 109926417 208591264 533511884 508978580 951828146 166449009 161776650 249164520 689019616 125977515 123122913 381326150 263932772 193251309 638166919 972905158 235260593 191179549 964947610 951150302 528078196 35784016 59425907 587238769 335896736 166254998 221206244 254569552 480914404 311482736 538056698 966775094 194496622 7253123 56498673 489640881 570319112 104697187 716922095 214982971 769735137 9606972 83615792 576707718 990741276 45341746 674016045 284456299 434685380 937779439 410505445 848367320 965111573 478214116 175308421 197358123 569164267 578306703 456264456 523227645 841893401 645481625 115339974 693534296 260613635 815569003 175559304 596663497 498217609 799688483 812989306 162584879 901784090 727046208 634872691 462061781 144946011 296802378 275812090 121529863 347444958 464188398 324269899 750431761 522682731 645460105 862333807 439045781 87076271 358575599 619591467 304060552 354242043 818438142 531152761 908533565 673424088 164098200 313589555 762324242 214818977 601252746 134547127 856318334 193678738 714030638 248470918 125146485 141667375 640720245 558022774 678593163 380181836 885293777 706871746 523145035 502994168 779104247 263539997 760429115 992393315 192352671 129879310 16704152 250406305 673613463 991853209 711482739 860420100 717057263 324436919 307596410 424869506 499772984 227757312 983772753 509803980 912486325 618627598 157782814 104818680 723809 397793041 457371846 980379506 331650005 43505427 609122181 846193496 280356262 353596327 449015950 904646117 654630547 125036594 807426501 114857749 129176084 685624327 818816576 33969307 482024664 518739703 919553535 475855260 161730904 201771561 487980555 312817040 202133767 810349999 461921396 192019224 868461604 496213476 243831169 495027411 983755337 358112931 766279695 970497889 15391155 493990288 273084722 585829680 112688925 438521451 767684382 332997210 910488423 567384861 598064318 562320701 566676738 285234625 11164334 787942932 469739109 166387299 567924836 301451224 269808054 34861538 49020428 797867386 886293517 776074980 643220509 689033958 148596305 851370433 708487083 231466014 551780232 319916987 979530646 343050550 581319337 956289934 547709375 129249947 916891830 19042904 137936365 52682351 610010516 422281274 636376231 59096157 480223673 876544584 863287262 138369124 412599556 212377992 977707740 320200015 210949572 720237899 473835060 113552871 849546595 273862298 968580467 568579573 755818864 780875407 525824896 960475845 586185777 119670218 233899018 817403655 740667517 143608754 912978828 976719580 995929490 271485989 925617921 376659628 108789563 354304090 621660129 269243223 859531038 815365932 538899601 665858554 513804550 159399534 401415867 337282919 492678603 554395387 88513399 349831563 126866530 281546833 972371301 484784742 752658502 795211592 793427269 28057507 699389465 299776581 25302639 222767555 730342469 470241341 75167339 414355517 197739462 543308987 312100338 402248257 503330819 410378843 822340030 717930936 434401981 3825372 405238535 533466978 935289168 325609334 881296163 91087971 346228860 519673084 955447580 136611524 561039542 654094283 859108561 442489722 146932665 63530228 308965395 679187487 923159950 131769155 1059478 977731722 812702579 323244118 749568314 820574737 593565172 144522335 903091319 222406756 348940640 733218872 858454734 846505751 901106735 526185086 436710438 755295098 765443145 772457788 770757224 994392011 440186831 125180961 989084439 418818306 846394114 119652896 681707708 436508780 477362084 165521115 436767065 811865777 777680760 898141612 74861383 948874837 20511938 456331747 604928556 867038038 112982442 576901502 64821061 57862601 615070578 516513238 982999399 846148270 80204819 993174583 293910390 593123623 95795654 863330320 841649159 132304654 974159249 236490387 250668011 381998377 880587817 355120993 725958576 913518765 474153063 577637029 336116178 606985057 149854866 576449576 157298328 149018324 609057013 949827919 779887818 676619578 419107842 13508854 354097316 574509611 37489085 514761969 596393116 832386701 493503965 707478973 500581555 850176845 265280551 395564526 290696409 939300242 263640110 373262869 531522748 793598981 68277996 1851329 869789395 677322736 920373283 60389900 234948974 466785228 188582519 638270923 75934713 551229564 257023405 60069765 648270753 477822344 323758217 947965642 270580843 30424251 697092661 981070922 227081916 308370307 274956306 576605483 195388325 887813541 408409870 866184351 440281359 380572163 245921958 503625472 721958682 816790160 525926353 252528381 291005249 551516831 660819585 903940284 908542051 677489298 973527620 149565669 384582305 948332062 873245671 528634541 950680006 975751212 53478385 977065778 257625400 565222433 294824208 289850919 36767886 647860508 384169471 115200052 810141157 122423252 829694868 253718728 478245582 692061034 491087073 993984948 848759495 221318643 542526485 704413201 344644911 843728177 431508183 524575352 568410031 590359987 507256489 392220596 937358000 679189265 351822507 470525709 602425360 731323982 970174685 691078964 426888337 169715035 846895615 420753157 513802427 508539680 736183438 91459096 367188257 85454843 680523852 573962816 534929219 829175444 915546853 646502398 32908585 82164761 779501839 511303455 723719428 227534454 72538719 995880690 137671311 651438651 966762260 791147835 741408111 693813503 954578436 617123486 484207966 640738413 127984779 970599443 239796929 769957786 405101562 567021378 508777661 359573335 726440540 121111194 334411138 620473546 244497617 7316929 959184216 496160628 965942205 825810631 775374178 301433248 927557916 786446245 662442950 556784041 839125787 72785557 648703340 249480736 948972094 69831300 256784412 476186902 28623548 931925625 865694470 716802275 549039020 284589966 237829019 7284192 381655807 832376399 651337189 942513520 407624247 983096932 232561854 268776303 808152988 799299913 885337554 880653390 248616554 879268721 35412071 44561907 947594070 438038863 211883589 9479328 144360941 907360665 849206775 337832758 809891975 466753700 799387942 13371432 442802647 130202348 833587465 887279206 656307664 498581963 207005526 766838765 656463870 530339432 290848042 509456641 325756192 862401477 620200837 99718242 187233212 45325938 868307462 686136680 157834571 456755665 631946671 271168253 115029089 365716099 838887129 243870428 108050054 242263277 19419465 339171212 511710777 665442710 475558802 829789267 367248073 486487976 803642194 564472344 851135562 148072288 511935696 68029837 109939392 234065166 319513979 948746082 4378763 858549808 266290373 959402688 97084919 765848203 564267061 160638107 142109333 367717472 989245072 948278763 5514534 311661555 240175533 518427682 661107195 88931422 648939009 412236005 725131293 838878351 579388012 213582826 657445042 526930066 247731569 732060373 22333976 720576218 927988359 972333037 758317230 571134841 840279895 206754371 55436896 32251679 926410524 767641125 868583459 662161275 269774847 974203756 718300437 199628856 492662792 515838767 225129628 168358048 599900192 84415055 354916719 295339827 933344317 472637535 852719400 417933302 561581481 352738316 829993316 700988331 872840668 888337185 511663323 423816693 886285239 168675950 572699000 952038512 906157241 380670537 983427773 921493843 601817430 855241495 987817943 266817188 961733899 41849747 574633237 444629742 714851073 201873374 868826106 687612650 807591692 760737704 552043780 429819871 708882516 997632590 172849956 347257866 76266461 177716815 122372264 146844341 724108835 693716610 766562541 148148595 358632995 907164651 275363343 914919675 894536982 433471230 338005073 223098836 287844472 972445267 166497076 161481468 468615312 366135160 954443820 954333728 973488473 337317184 393523966 310932953 702772996 112955495 939211447 300063062 403375421 53263336 196473332 976315486 712663719 381584680 314587101 70525262 870194525 305951656 674007141 952170305 924125801 31801344 356914005 192036883 503910280 716147385 814585516 456547605 191879789 152487470 366789329 351130461 405489889 659994605 663031860 585388380 43407215 873412403 78253579 490582203 493015706 922749284 917658670 392497164 869052096 672593682 512385400 353719463 470377952 239008264 396334550 744767045 931461171 680612982 231979331 277286938 590769399 689442841 125401822 533535283 312078534 851180649 468585569 521756936 50866435 403026337 343494075 304362103 213881569 9444275 905380988 206278265 353491721 897076554 159690005 406835083 672765861 488743548 50479376 33445911 975757085 910486777 474610055 978725218 666067182 739423351 351135461 777216311 697928187 169387433 699307170 297420667 751262552 620026632 863195082 574136149 191710729 678531359 590657026 932941839 817673655 992178502 238662688 926138511 139281666 265796010 77844328 125081150 920076313 169315826 628558301 662851496 48648183 957127338 753348941 656211400 407823810 408211864 779478479 594782152 308826482 622059812 326061522 471659514 995704881 525014633 787233447 206607523 77380967 490306869 514707623 751655036 734407948 460212752 822602126 166420966 857564127 738765977 44658440 886541057 76561364 784086435 778950993 852564966 929471642 59767553 482078415 447983745 754777639 679941617 832894347 339551043 757575990 500709235 841713197 969469041 573772351 6034952 685823279 419399139 446029233 865710764 851386447 839403781 93968869 539463413 44410057 125910911 124047891 210665392 172269707 981537557 556217947 111870614 994955381 360923569 195950472 443256289 97285648 623148639 994072710 785961602 447140227 936272358 463419873 209750349 437126244 814191727 524594419 885514788 534030616 10456050 31354304 504170803 875590315 593238960 138962272 222143617 593922394 464313291 594619281 597048634 486809314 733346264 421603409 305903610 441945444 112964927 445742457 618022731 713244576 53753421 324284629 102101210 72573019 410791050 411399148 994889806 636392003 375198133 306555980 104825884 902574937 204300322 342462155 601877642 227775318 347352122 288552915 659504944 868416392 836331288 56686290 991189295 20679747 433850188 248809143 200197576 952552958 946335138 265601117 404164218 391471552 343455702 598044081 764347670 863689635 445272358 473497454 667746455 323113885 917609127 838834043 602380662 442672700 104764631 716506899 628388414 554752585 864544683 816323361 873976488 378979233 112627069 264411055 188633689 488800928 755261881 572179883 677105314 81762170 584779207 103175090 354510657 901249844 367856861 327520493 857236854 894647549 979092702 679508676 520164121 364303406 757916441 82222566 862599309 439435172 635995190 825224624 947920716 777924298 109987117 531048685 884686894 875728657 359728069 721526911 771654427 6412704 629849842 226359122 973133785 674398114 94780690 977118351 85281566 614671426 275492062 929699869 302314188 48400761 12479509 636482660 760924116 620753700 422097703 859606566 770569825 126869646 356147476 524958402 896435195 801039418 722829469 342063700 52576861 709938118 280895514 521568579 127612973 524029344 80643955 645007427 611124922 675383990 50422493 568109189 723919309 402203483 522257688 313901691 736000131 515041183 291700937 271198977 709282626 407727942 122858918 18636552 532273649 32835975 698199132 466463129 192169235 2556971 733468154 321122164 712018746 517144721 929895831 825954535 173372863 427084311 818106372 348726059 447686847 644648812 642488114 605706389 347510624 616778419 618530962 328499483 991379179 322397695 4647091 300694205 120244431 325143887 71436884 699927903 195571097 761286871 425303959 578849321 678455328 74555291 675432834 592188375 901103962 103675008 625256322 443401216 539609796 393636124 724717778 542160565 437987922 396395707 725255571 425473246 990793073 698017259 415743677 288578931 15737423 738760591 165459328 476579545 70960642 524472600 432279378 145779170 409630837 450449936 444631166 602915268 568913611 502052092 911104431 653096993 66325151 681054666 507254316 610015019 535987079 613041583 666599154 410716612 369831706 855128841 680395544 405515506 588568930 247477096 760760911 935901190 533215933 461723982 72512535 965833650 14181393 191231806 122994614 324714732 470545477 203749977 71199127 293580291 744204364 367887946 753873142 320724155 267663985 856476327 498574017 732307196 25551155 182791775 422757318 541118421 509875346 183085359 721492051 558432605 203805243 732911119 874368633 919907010 399897541 240314289 14125133 310854436 402395066 709988597 803718719 902347918 487476023 760831320 689667043 251331782 976621494 594235704 107061763 898903922 311787255 843838532 356450852 737210414 49532396 634947520 155803271 331136788 202912108 475458309 211472091 271353632 402060893 100980100 628199818 335036126 492191731 286120747 655575520 70288798 716989986 317883576 314790421 470712085 265782081 704341144 348894856 258917570 915539339 582123657 29892628 148550676 763298339 395857186 701091435 342702437 457409233 705477392 6852894 722715354 476811078 948675009 783816094 880092151 380965968 309502641 626764321 636654888 995536527 924649969 306224930 230174064 734713983 159746179 162163472 283446409 80118300 45169003 964942913 675513063 817810298 613960859 787772255 704153806 107910088 758919694 145918935 66191706 524949227 211614074 952235113 473412697 447217740 572727109 727803445 895459773 747483381 257724405 366383286 920495650 623642794 410071409 905894426 532457025 11894035 353087682 931720039 154328719 969859391 931536292 205856636 441577832 516210366 244326743 107625410 693093548 182539615 510972323 745322273 427025936 703227456 65499479 455841920 564860254 415715355 352969421 439687134 932753785 802899812 287578717 384138262 970546375 485168671 292926171 459804540 810228573 12016495 249537717 561322854 133891218 704303359 351568712 814568384 253632647 809031829 286442103 765599030 148849483 545490479 887195414 661476373 564793885 823846598 779482657 776283904 63785367 745261103 777608574 326142315 247803350 774914427 163851380 761870441 336458338 387216272 189352273 702965210 939787277 80099330 132852226 755586065 697898548 613221182 656342848 399766135 251676405 974431562 673539780 508767734 747485989 903787903 689006191 801168314 134441960 324766507 216375724 608431336 221800121 808595148 38696613 268489803 912172142 989319972 979747327 650700343 892501248 850958588 991674574 611844514 526850376 388442081 190270116 638268444 974617217 991009671 877160309 814603383 773914624 475173317 115108334 598639337 633557883 461850124 998990318 360218060 592327777 263432156 991339278 185620840 411653597 586630161 736190441 656345230 718704644 874826266 22561684 513523795 132748913 610997879 101659600 933390452 202033408 699645223 34879889 734775036 847467909 752826433 475469612 636517572 11909421 247243320 720131287 621262617 808378524 466721455 152590664 16514383 106509095 871355725 552542759 108495192 828790451 275726423 367711742 884968522 407233652 761635496 518704978 302069212 905509243 427857762 984757667 310545580 269223886 924396656 139501537 213886920 757175818 955829712 6534747 549351535 634879916 621035246 698586185 640292249 990308833 30419794 678416880 159465883 282654875 619173058 709417776 913345522 216116749 345330377 145110494 17835737 981270230 97402005 852643897 542678297 178811601 654722913 150415533 352733555 417771471 895416440 956902407 261823722 587062494 814015589 919438833 961157884 506409696 104539411 551889889 426331708 732520145 84280262 729125953 271220194 562778215 305077258 521976948 957288651 870071785 923018315 185739755 169287750 668484475 786140723 942102536 793360090 62142584 128840746 987964583 445982346 67350789 221817494 370141286 514366762 730703219 960953142 592277831 708145812 282047832 260403349 253913950 277462578 957494013 822398832 461616798 978687432 119806174 332299328 222266518 233973570 660689426 294719300 453286458 696097838 423472216 160805606 470850737 211094953 260963719 776093202 656824773 450609823 64522103 256060714 212230690 396725357 556502065 594774137 704066741 60850832 97875589 384071254 988399672 604154733 132374545 63376179 171648052 300693768 231676786 194718819 21683410 882190656 641962625 773198198 190529918 697162403 323365059 759951889 560783718 337933715 79203828 411324468 75798666 816521093 841477620 764437340 33248178 842372438 219278611 795233123 448680735 195536139 201235646 587877283 771185049 130779057 135318666 751029719 61643564 762948106 608233081 337687181 827836763 513283255 398019628 641714780 524838945 14870885 138310044 743856141 653544025 583537220 545073997 61233296 588785188 466982396 779748406 562279660 430402977 326007920 924803476 945054828 638343980 727863793 921357557 736380287 291950638 354725240 186136695 574841270 533123682 370366951 65064141 937556803 229275615 878544934 737486961 717784254 216495738 405669429 118034456 401373654 439666776 465248283 903823213 420122190 994208671 719510056 434400667 779743850 365151210 968778053 681520609 876985137 990959066 113064743 148989826 498980608 380066930 239595272 446114302 436975813 507162189 670017582 108700451 671471181 608610660 408520491 816819099 994037279 750457638 752158852 458172039 387641443 702244763 298566875 713220090 418587018 561172164 586682826 652751240 458758688 971578690 910008822 792924886 725053151 936412682 43934573 336530392 241483270 616920607 752726488 860127316 786357719 153933731 556562253 815738370 150834114 455459991 287577200 952764969 29178697 591630876 118028157 659105686 653838918 663069446 645598625 501772806 419943170 219374674 579960783 808412678 903554018 441155519 749320191 664327100 623752538 819690159 382149542 594263426 713239592 746194037 330495103 668480196 285819206 68091797 479248688 783406674 377347 678192150 997666066 462876414 786519202 729895111 724502821 205474716 296298838 287481878 628879381 342239090 667274772 229768791 183317084 42351268 648215617 791623227 733659972 417098742 984514280 792803954 750178632 240481564 190452707 24360928 880922278 891975021 469771226 496896625 586278453 172660228 723281437 34252162 494652903 859128196 461068876 288730013 766010432 633294014 841557427 228847455 854464493 900920493 360735445 562798249 667483880 369003466 329408143 428363675 45951637 584583733 824601987 148769118 884168806 613534445 510714007 974930703 26405096 913437395 483867131 363069667 545571848 222592749 276736686 303701557 304881660 526245237 994287478 318676045 416446042 175491302 222169133 226748678 82037472 886454924 11326388 462634423 33326764 966694510 626123971 542303396 667900084 34806868 188941795 305217846 730527298 930666678 848623232 277298331 591983289 292267137 119622959 235752519 462083734 343610646 759152370 461933689 594565906 516194743 616231966 715301572 627597914 969492492 936970529 570870269 189919924 903828000 56060743 831484725 569147011 130075690 241137969 797308620 97556682 388975257 752858534 387261238 66346048 214732390 510125838 804997599 506148171 101513806 740067541 190086784 3554349 897779129 931788023 111761549 819468519 356183534 848054871 257649442 549537392 826469779 254725402 271554540 451458857 401505388 992759258 757651700 945144984 596423619 394451486 162980487 370154426 967926110 80952352 624340465 183790414 293858912 653187908 448196650 896625353 395526648 356256929 759123214 567216091 134046516 558529735 51243355 52984226 63140274 995054505 775980969 888876438 320423432 816354086 376132869 315080459 935044371 375672841 313719978 998681924 729688444 79558421 866421579 648823822 622219011 150755051 707776207 812995331 42216067 189372257 822362674 27600412 31730556 960875127 465079828 554831195 147953484 290895574 303488703 345684182 138105023 7391102 701584287 794670617 221650734 836769309 634236323 221965123 523545945 120831843 85299394 212330470 467229756 774014525 448183014 370330728 734630906 39013778 387113651 295826298 656136544 243898508 848122548 619283798 427857387 420551934 969860753 417994475 180837634 575249765 108219752 387111437 548682488 896970747 874233841 50119520 866853593 765136481 601570465 959807719 380338028 45200954 158045286 702657734 195515256 301241628 492622948 338878797 583081442 690834360 488690267 316958996 15918167 919662656 3649961 409218208 245304224 178929986 825165036 749514439 870929069 419710416 169901146 800168406 356882763 285291355 46362428 472674785 727120003 451523270 452162587 513476122 682202702 651543129 79756781 780942882 577786214 546263792 575921058 103084413 665675533 165664195 584328487 186031524 306799003 442831026 993395347 564568318 777760927 888039829 306561714 896831648 581092500 385832059 50189099 818652887 451671606 99890168 176543798 428066534 272668329 436282807 47715920 721656189 239606236 258967492 907461284 253552786 331170648 102146476 756695117 592877376 397254011 160350710 568041356 564214317 853862672 274400611 439850995 947370938 565042813 707176539 986652089 352279401 191562978 740266520 505450861 224704801 347312218 172360034 196910880 80894893 438815390 229209909 702485100 583801032 915853439 586523353 580151201 544268756 94896986 948704083 591581320 661674413 106809835 25450348 819764098 117880764 355579791 315292057 839989146 969373656 246591055 310973948 248490959 879013700 829045416 155779812 911052233 578103440 401554286 466743329 661141709 998043333 692946460 894051123 650953100 393868674 331669382 597489704 647337171 106466845 105140404 272723316 828151781 971940190 132849081 453728181 344229202 261585512 871038812 990617660 378503123 840712745 180103635 541246812 248969430 914552724 885239647 862363193 223850963 756455276 178126772 163600707 76198315 855920248 194138845 651180099 800288646 620726657 357307871 713794186 663381565 675280177 702141865 679514877 753133249 954966600 175393912 922468590 96339414 689833334 370940859 571143192 228282304 311824710 709230180 665340031 232809825 949628037 517523304 7298382 609499014 3973041 826475309 748985530 296565285 1062869 900338761 977188539 110451377 57801698 955737729 147092246 451774779 530825742 526278981 2796947 491379543 611885134 10034588 867586609 52184590 886762141 110529371 292167308 875217292 668592686 459875559 179377013 637968387 690686329 812075840 68720407 996143944 535942407 613167640 906215499 901371011 93043796 299712380 547133595 950306380 83796998 912404488 624719070 783959115 309058210 191208476 192405034 735031716 934125294 506304944 291155902 7669921 471845419 589898060 85743088 946804826 807809570 14205059 367641218 51509443 79961723 298613269 419571636 76288295 839207485 514188932 943319214 490501386 596020269 136888034 605301214 136313307 872533592 96525313 908287685 789270270 156618444 936883481 182249479 604471106 114591987 880519062 196279363 885664119 741204664 56688288 283641214 60885112 462154885 618308161 374590723 755566655 918809032 533149191 544429244 532927524 370748895 343398103 30966504 923181664 284488394 945409951 5132036 404157433 658256450 154540586 244861904 273075244 245657639 38221051 908906780 129170244 26137605 960590196 920827054 164992128 759744941 80819235 772374673 900973119 807090534 657230847 699642319 861927167 933863425 543686709 409617254 391374517 572441117 275968734 102175594 58081680 272003830 687415069 307573188 876627816 434189322 235930671 16434842 420236697 260307233 548358270 335326964 527753712 647682822 953831978 828988595 758996840 69302772 896570180 215605764 38981020 200877229 392908550 716836589 125090816 322383955 295210304 249046170 23501216 958051164 768304398 646102146 111711732 319429050 569864140 556913368 470694651 340464040 225964239 491638987 354701718 534702372 988135994 54610533 53087035 851607891 239290707 601208844 262070910 507137828 335790942 261555182 154445706 864608528 302207945 448373627 531623749 453331825 804164183 728879835 604225123 179719734 17988135 467229292 299882164 84623624 800217524 658881903 921345958 192232783 100813464 690744281 563706418 779766630 624648986 45418262 655451457 680648311 821586958 809219144 702062139 480715028 253701529 868389829 81841023 466303782 371873602 304632073 438624239 893715982 408737581 876669594 430358717 843789717 286550453 569499337 505423216 837843775 880642426 395006254 796218268 852049444 448870300 317312992 126369919 744953524 374587484 280769725 47887484 531747657 34890774 858841071 347482908 631633002 86329861 623656140 309852003 347746227 944853748 559493230 674686782 568499029 458122173 135174080 236940361 646192126 595130287 357399791 85865988 62691804 441376942 902855261 506709696 672709134 225517266 32278545 813530239 920085945 870208953 380815406 309139548 456060533 898547434 638928930 853446991 990779158 241078885 185345984 703488028 407952777 257183946 341910505 538158316 115833982 744757577 315021412 173983205 418354685 642293731 585408608 760051914 405475326 990968825 292645611 445062139 128135632 656895499 873168060 116206931 408119854 668018729 145300835 614692006 478332151 590581335 902439769 930088395 786999251 205561214 203628248 882138092 224986496 610494540 67342604 532766850 611177760 320690438 411380281 479772190 289904251 353240944 231309538 341234830 706443900 832374860 652103835 495267016 539183934 715897163 949139862 734013515 74474944 768321367 527458520 175268845 539194996 914304777 341145304 243978042 285374284 234140948 455422685 60458622 634814355 928634773 460596665 900541133 346061254 686577507 38586432 599589639 580318994 112874823 149667373 329415178 70914746 654684512 435021444 928581511 866767266 970497178 341777933 272098277 321521940 544165902 440777592 828534294 105229600 421199556 980692347 731267349 169511126 842108593 891325898 842708252 344819665 929283517 998581179 464291879 984701858 363371742 649056005 499143093 958122386 760453222 482408084 848110421 3561223 712998590 246488234 835256771 994710667 274208076 737586688 877607990 728317691 51908842 900060666 963181407 279222494 937836086 987053677 831656530 507605441 880787483 16232046 323331684 846663802 64981094 350331968 181295880 106836331 845948038 912995903 959562559 173621171 778166994 717197560 306077287 348383100 437079466 30113984 39642667 463342391 425899553 494130216 652549039 665570470 784775862 617367530 346667132 144465951 76764096 885653477 233882254 121034514 180524299 727660939 955163653 65981036 211208592 18351361 195986610 145634608 93655856 277529383 206120374 85147576 483840238 618412252 492490538 71641341 838893865 46860346 109719086 318524034 270289969 789191560 370364285 692394952 304043397 591855292 717319474 891507086 185066020 831671699 85686935 305724784 327763464 317961885 877116263 414422457 753959849 860231922 527846319 695587045 481204985 714411883 1186201 520762662 138167714 863580853 923280706 182294481 755713197 395443046 343311204 739480138 738897210 820654576 644243780 552129833 712725837 704352160 9676521 661961730 573868753 394980474 471393888 11730876 549668350 607711303 309945489 977666644 274094912 613785943 802180650 961895499 809057508 748457601 195679604 697448369 497874735 132705381 12948854 186008596 255567085 410307189 629990949 559727329 417434969 814115092 815398731 648045887 499169065 206153519 624405112 585522738 50651927 802432634 214707414 37588387 775262127 558449128 633356435 253937599 799801312 498022800 173080405 19085163 793048950 19519507 740538754 563375368 665675603 367616502 78267486 314428689 733896806 361558312 981738956 273319820 932835630 19899292 688302196 394384920 743503183 351576149 8291552 685772566 127464356 395855453 280929239 16270952 362348854 69521205 516109045 293099896 126776402 789518779 279574635 916414242 519165871 330429926 117743953 987966248 641068090 444245932 794229940 697660518 217731603 897259017 435583536 678032297 480537817 670643379 71959376 335936147 612656072 346435812 666487056 585535050 92756302 862210097 319763307 466937043 575667076 456024780 528852837 125512119 474430614 71703686 96094815 455568786 827489022 432337541 212932949 805921232 87458433 467737547 290425966 920627415 562854259 448702162 451842738 541627758 257464308 792483041 196463191 610871212 61559886 232762181 811776000 36549389 29598182 495951362 78307110 87649249 420276271 134888708 828617406 850907641 297345240 472786793 472519303 17648954 672675210 697592679 859854302 368820536 75948278 227120251 463052483 179215545 960523103 182612839 745184969 154598282 656330125 917524255 628468374 928071759 238335033 872460527 260449433 566957571 78479294 664854698 80096405 314522031 680336525 174892463 640294097 49829624 422864736 516708712 43150217 456440501 707967999 828952122 784152914 641829383 203596368 643052741 782749063 596869904 839617197 68110443 82855564 228073632 32302366 883373030 837854599 5822466 769565357 261696304 819556464 254210379 252332532 840773626 299579765 792167936 741240137 530995817 314761868 438977599 83482631 852689784 187889511 498268503 266935995 112559371 548233483 979867475 989880289 890972711 357696391 105493914 524916178 949774747 16322106 742839856 220775562 921694134 69369179 394051346 690443303 776594281 62305261 749103424 272394502 631759484 243382108 549378932 291299412 706972155 528959391 786621215 352561686 263391783 457809472 275238218 726579470 185618336 411665972 947411796 553361491 484530127 605105971 20636064 902853866 868443969 232056813 512672104 893503507 287896931 856855517 896336864 857244973 336799914 199410756 669894915 529984808 202551702 653250769 769168072 717907610 716417813 681723868 742253827 146435556 367595937 639112371 236245297 950520492 52190024 417782875 327068933 769881654 732415679 262930931 28515456 946131520 719771783 301905642 733875472 251982904 369704778 932997895 289977296 97999801 923404574 761488861 947141323 943150751 312400132 772366897 164600296 915330898 221348587 765680740 243933603 875168621 83975896 114596272 721090128 825288137 198738286 39796008 570641091 62661372 226990510 496469012 581224542 696129217 871789413 521219669 145547920 425908291 565062509 345154603 443798487 180950617 243540234 247274197 595681599 548554444 794252648 426326922 642188431 307978257 200303239 850807890 497487889 660414699 701439379 991199491 463816753 690049460 204703557 134456640 313401845 995578862 468209606 450579840 320953937 226317568 316929306 98899969 203440716 123900772 283311567 11934034 33430990 936936666 11371269 479340443 200882987 191726505 781901716 965567363 935096444 716737778 414715122 626180736 606953582 429280399 985520862 94471839 550370133 480783162 627197147 273535232 751205526 528541184 231627880 254118703 58030101 942961692 500870514 185746943 679945267 685614066 842881198 757957674 351616367 644533853 683532257 465016460 344204883 668888940 11420151 776802775 557508328 895231034 77479886 841701111 591966218 789399579 924704327 993094783 387248547 175986631 766747233 516747592 651789614 529151385 990299843 581333832 641036716 562278129 740079672 551303830 795571156 308884216 824794903 539420793 405750030 194876642 675697519 475561486 917006397 668692429 101652811 507747270 56377110 824005936 393756696 601317358 806322766 973632873 852798088 308186574 994297432 573882064 649862302 373800357 94348805 224197176 945973450 581123683 852419184 939079035 725628914 296223523 282587506 863814652 331529289 938068883 778269867 513891388 708322297 751749366 649416768 658359266 406283649 50425814 398058378 163327129 994943641 822322855 998148323 148839055 147307992 723832821 645610889 270127065 360055036 232234298 388924385 160676153 867556733 629682478 698187076 875827082 391155319 834446660 153245856 294497378 687457690 943254268 420537116 797218032 713993278 264746817 358466827 174883376 554927578 774080405 476789634 439612021 854227999 678706535 257193118 728312789 52937994 322674121 767337678 577371260 960336551 675683638 479609050 694478107 642968006 813002819 68933049 550054577 171790529 654119399 370864582 926099031 166745802 154406174 471588169 31653599 612695689 963379722 270319471 263691778 433317233 643615408 598312716 101706457 920756344 138914225 631195151 491511706 798752155 877441907 763383052 540750147 501970097 100847901 174355274 270372445 554884538 54516533 286289870 766247228 667850015 761279637 408248479 545999326 14388763 92594909 896625078 838612079 631031762 472126046 338407722 691189586 795510099 879164370 33420600 709055703 405294833 239842913 527064906 304365875 694476232 856109533 937928744 275444997 28769122 856370346 618216797 789304830 923297436 560081193 394014337 470350506 788864270 335761776 807851029 798810944 546711874 689081274 671174793 303127273 234625978 509444906 129996620 516249925 233187778 702640313 517011049 72112088 317698230 529213829 292995002 552750661 576606148 528584903 321078344 283042182 764802213 946485382 858152228 982497650 904406157 8987422 309978567 328452131 816834835 332624182 677943938 439477957 773437663 765346710 621781999 622536647 103566588 872987106 145496486 915572560 615773425 944019430 84908970 947569070 392182681 824286616 171315140 978828480 821659337 849558313 391946522 605614819 287862994 509166184 859101550 803871181 415752774 475997198 805592681 215474628 788557568 115010853 486124226 677276083 914960689 353605238 194313252 272948195 455276327 525102590 453970549 868223211 167862780 659837244 90205462 841077324 506275135 187648994 656105938 690332230 754452233 460600282 656552486 609847960 306361156 818452210 562955470 732747147 802892200 957642320 978415603 159460958 290145670 27101597 433663157 650334612 21364102 444279416 749091815 554869392 478623588 445536271 584776146 192785523 464781189 443025687 532083003 645462704 349786932 192523726 436079927 717985505 880653828 256729874 640562359 737459228 877900944 260194650 278026021 326286362 914965273 695385475 630562588 912778659 606295114 376729829 204765967 885901855 909150528 408808770 252341636 731381368 877181270 696445604 247641650 379708245 829089177 103291917 638798195 153738043 552369680 356745658 875721232 936107397 861256310 900622334 572375356 492003333 972916046 534661501 237264853 94513465 894323510 882182222 666005336 253401436 429784739 537917665 253302682 12586184 37197779 206366658 285608088 103692559 155929059 980188989 679843579 753403103 863977891 92572933 683771319 559200615 689934728 124130186 86979536 69261115 36077665 440700746 965757772 660419281 834015877 303455245 585048446 8193154 313100296 810942677 891876052 415378270 945541673 838209728 390871740 564109870 750638882 651837960 655034498 626352536 389874208 615743880 695364256 282762180 930411238 579407286 568408901 167961994 956024748 421686620 626252579 763286828 885058167 623748053 881010831 586342996 728017646 66962918 764438874 795720837 523846259 593295026 401158289 168240296 835120154 178602349 283298800 338722947 411901779 585543822 317789428 160542273 824230504 87861943 974014896 273680716 989994869 659895105 430544605 330452747 203058146 632031093 559673305 12045491 165779600 906057234 840596676 768890080 791074186 127838724 187127941 797764152 901725455 643032371 379834591 979772181 288681159 263508584 254034845 886960030 661617000 282471866 800977873 444513695 925887917 105292732 517110453 596793318 123779535 851597385 880912704 438544650 153369929 266119837 42918370 77349528 874775318 229135546 661734180 432916378 843602979 407906892 579273933 171240229 518375849 898298414 123932652 300533033 660289012 220283884 152030250 881783496 19782359 917383625 413113651 83916435 501751061 723962305 551928072 903297052 820472512 3004948 111935768 674745469 706993893 534189695 633130012 2683203 670739385 92194397 809652093 516320529 914553912 586646611 741203816 280546682 983322613 933706540 289351920 714868375 81319092 269153153 192747510 562041249 609057867 694511045 666695046 244954484 638720666 368717180 454101600 803376495 600269403 724831275 994474852 820198347 150201893 719188314 54469348 46952489 48085691 449012891 134954867 125147237 288432700 206392263 700498588 321775795 267103869 699860743 242018779 902326135 903572280 545931164 481426740 490174521 532913081 500387319 789901511 458047980 380336214 453702871 699847268 621397653 617376075 898409617 532585787 253331231 664876550 453563019 868541342 340295631 161874332 33652991 932351097 231540292 722270133 9538807 947523829 310851545 198148514 636125418 511210521 19027919 517538691 924782950 961482287 22502023 835228562 314938057 576526131 877279404 822924978 429969721 364129277 245005775 574013194 547397516 847098593 104016607 613564467 421503479 441251460 839340413 957107813 805727790 853813518 190656061 804112558 32626169 741137637 980407379 594460785 357955374 901217214 216033632 372949703 4716086 141803630 568285201 554661479 172486902 992891098 417011740 303555873 333834463 860775543 496927593 977381634 622688370 36064489 449861485 506406775 832477740 711551986 855032733 197539696 928772722 25192724 324506956 554474060 998482405 421759812 413752043 45926697 517938171 499589780 422915414 490800632 429854702 713785649 272898926 983173488 871163579 514543607 767857713 195907071 556432421 683891716 306820030 891420769 926290674 106595882 838155144 978635688 881650035 781990589 760658030 678887721 837719814 243246877 309345086 287712114 191248997 938559063 510415351 984324851 508727498 130054017 385345945 549656979 443690458 919506524 246961357 741746702 938123158 99244734 201304570 521181507 149710949 471829659 590191148 588488620 587259685 627303962 642898066 482028762 900833491 718859185 767187475 963855729 280596933 655998402 819847768 351370197 241142062 468712658 10805365 662613801 432976140 704363911 137574720 439585681 588283167 583207413 532020238 304184362 874834731 458288584 442163742 658772225 329180723 917882172 705125605 756848087 171951017 893237755 44826594 761071538 638302 173403852 685206420 739827101 874765061 689450136 331029918 683403307 490027989 722153328 736696668 366722350 203143319 818453152 46778731 628724870 213589520 442020774 71158241 182894810 325048916 261534291 5158049 485516581 236107206 775893142 433334751 366373070 535350435 746459187 898753746 236242338 679852414 171811301 854056806 851325229 989797186 172151933 702748857 650226572 502100427 641063032 909527592 513652046 714190586 65380251 252609506 548329826 987461345 3732226 534558277 124114883 999254772 309762463 765134904 341559762 462158772 95905605 575850804 134406348 286499313 261390377 868138531 121784740 586139065 317981523 250687012 583067454 521238382 542792923 866045469 103881707 184062199 181298513 475197644 587930336 43479241 271800134 221076715 647591229 251736602 445191935 27584221 31243894 778697724 30242612 806979782 173296651 213832985 226286984 875492839 27926868 291365432 649553839 373345104 979471984 811180454 596267387 773729389 266236194 335494934 426438468 459175495 305938098 414321358 209632955 135961683 164999562 460939792 474638008 90316120 647656538 993399992 35479700 993451315 808857800 959108320 986860841 702114029 156095588 944924821 309729683 601064896 311616260 32763867 186904457 744475844 117309742 173724252 519581150 216019745 292181673 400973084 724862038 252398369 840974734 565739846 781862728 865148384 974216017 267420997 666660408 361208927 119154783 913353879 7232295 801914595 834497571 115356216 271632806 813430848 62692317 713895574 368610868 994439884 24386195 338793418 683954286 751554242 742730122 409092424 924124122 326043904 25896107 268940308 143598886 165223931 898463113 198623426 218277291 5029791 307964407 89892942 973253494 656036662 857607233 836287007 718277574 306897454 711405589 426527250 411988573 196928200 537507540 960286203 20377162 200411517 938588958 86407310 586250658 368097374 131912212 507064594 145288112 908325439 100194374 469828441 165507525 209151217 890082533 472793512 436146361 586434655 193862758 73440921 912697124 358068815 140439949 133584920 150952860 475263101 179989642 306096391 808468175 537614321 405319406 539175708 234541592 992765546 204554146 255657406 637634226 645499585 217445640 906053833 826637035 371992430 631637969 125746252 24542141 661333364 774716814 224118389 885691672 316633942 947111681 421593319 566802007 977192867 881205556 389623566 242906353 918634270 191618312 442755149 823359970 835350398 498308066 727688404 673464258 731272985 165078121 954566773 906157355 686846431 939551086 285907716 570158581 504519185 231898945 788462319 27353651 20349197 332384078 112541035 170582399 86803415 625058580 368431009 135802065 840054518 37324204 784503631 449170958 749190281 786189919 177453765 513002439 853439924 218399302 67238101 831043135 379701762 808077224 31227893 777197589 381267743 406199922 444344164 211957692 430009821 621877534 583678423 504940336 40319843 91536955 155313034 235744049 484383924 335851656 131868413 419086307 385304169 268119398 277401419 258675170 30776841 410708743 179454336 485193274 173847788 803838674 831680861 541650799 976141690 579058999 600915773 886304159 8188360 257070969 495914613 931320282 668206564 715035814 776605567 27890530 377961709 426845064 25766694 557886360 667207147 653649228 79492357 334688631 769485333 905656628 462716364 844877568 500503301 621513278 818214638 722596657 317570863 194808235 810950588 550751556 31609194 777119147 496019082 303650185 418928258 264906785 953339164 47976300 261959122 816296160 388979256 870732705 890127085 74470253 1923462 382857990 571853542 760714801 335883531 666235549 533404720 720200361 487314919 898571757 864470340 856796800 171525913 669197460 151564317 664043897 667326083 494821404 374997439 759077399 313412920 176917149 260696939 961789490 966060001 754327192 849978277 161337815 776917518 611203816 355175324 975913944 279285040 739990906 824236163 786951483 377941235 908443765 228790140 4672765 909279016 789647665 659345244 784634495 923952688 76273182 802201224 440093285 328068722 608626934 389629887 945606632 215453365 240920915 709537132 169727564 986935282 440112238 857977621 896409188 662183529 453541871 935026151 317629682 853922142 504052750 99042353 809090466 469964377 547631345 417496071 790969692 41285383 560278555 382331501 613500053 825034096 393967986 776154805 701333930 382636802 188324250 206184413 357530875 721676519 154134010 603337324 309169853 91448822 55470829 402008255 711330934 442399749 4400467 434705490 470756738 913512719 653087222 691726948 500401122 411516135 748344302 512309750 577360716 878454546 242660565 215036720 381885307 915764901 814450973 5986012 708041681 727470425 767880544 346220786 523650683 32848192 400512567 549451916 664742811 21302944 88152360 17141473 286275248 985658658 26130008 621572773 964464504 413145440 285238902 1720445 420340392 296088117 556254128 608099230 701622671 997880004 773250766 205250725 486095402 43641739 610761669 510487515 838652320 869059999 872137229 214131801 351472490 695426574 783870922 942726358 335247560 575382753 869902389 689698483 771576399 548891134 798404083 136982007 164575629 242107410 762805471 259184105 482633675 676672668 482698670 839398748 435317776 654263448 468722023 839041867 93167259 475795704 139293525 336207207 647527376 614488803 386801645 461087019 456539074 327801838 572654957 745325669 675801961 678688195 940780890 336449330 390957365 801328159 966688225 973140991 32983688 597709463 612588752 775551845 773145598 349698424 680545172 119991541 80100011 674814599 280513250 937819542 360544164 892737105 957369989 634939589 95191302 382110974 104076618 306983347 87568983 696791485 94440533 808462999 272989036 461383663 265777890 31069150 547566667 225375807 283358107 871603803 297961785 765060089 646864791 45223617 92240204 712634392 189887455 650659415 162914725 432390279 451777265 677450839 143795812 251926377 883736402 245274677 329809205 872507465 268561824 939296165 889503959 918075368 186583638 263108613 886113739 671001705 664556472 19213652 418931392 565399105 518571750 738907344 378831231 637029444 812358293 977493249 171198212 837738261 202701087 255437187 577877559 750964164 920530802 235319499 753837536 780567465 408777558 111312538 712004310 437618577 516914252 875506408 816794785 30912358 746536224 569030279 137153722 53984393 591017295 566599839 909172501 291816356 418541261 873266786 537730097 256929621 557599423 97345573 707968573 830925696 832766296 276685851 796422343 813000523 889361462 624088263 589347264 808844258 406207675 561086649 484122293 271989439 355490886 817566024 784891923 680702181 197037968 534626750 627297142 530569631 466860480 923187597 250528681 289905466 632619999 991904837 160597659 41942685 443189573 848989236 35839601 45967823 882405641 795573731 121649891 909709778 79619962 157376311 850150700 802267468 665705808 633134391 704756409 762540709 433036219 840607182 138723028 298503561 79656726 882488359 807731328 323426831 829757483 841674351 847263952 405201259 230363987 615795098 936899912 789534388 631736443 611209975 82206275 137048605 955623841 823916317 898718953 550381831 155655303 652566208 121607524 215499690 392275837 731459307 111793850 575603484 728989252 101921459 345985018 787317857 510384343 371334288 83437284 54680820 722103315 514375073 500200528 512087062 27341280 816883638 626376155 317794421 649005072 983984904 339524405 330900806 82629295 736482928 734510269 726845237 664659933 270825605 612827210 944595155 450398225 933845709 484293443 212606309 930839615 884769513 280709122 861087154 734285868 850454657 961814802 999652663 983297927 991946200 38386688 537904777 633660625 910053069 253290668 61769717 100738547 756573718 55315992 471220259 285650450 185280927 241382991 206279000 594568348 969576945 332920825 146398306 603624625 570684713 765670885 627581062 81708463 189232443 115598582 757986812 372404084 390911472 821328792 300788902 574956280 537456656 23202663 375964574 491893157 941292145 687859112 109561294 789237991 374330570 513185885 626858955 571205988 23026226 666588328 910680987 697047781 805612433 972426274 280862495 345612885 117728582 573102182 358396226 33466154 203289104 876069562 604723495 504166651 104344745 821898831 721132255 839722732 651527946 238755250 179995033 783715119 839951867 890135582 348412363 767477536 334062932 89777060 667668094 200701870 374480084 594807645 812327508 796926805 826831407 418547605 72086164 89878893 738721914 451053733 908506675 455329281 870991608 927836070 588665212 483879874 187724136 126443891 704982883 818252662 841414606 394018648 362725946 34044075 497479310 260438146 856750951 442857567 940325848 46716692 572644914 801687894 495988445 74646648 471877201 609648368 905377476 632479252 435004450 24154898 322596258 626575181 99088244 87574099 939819850 664545142 546868546 88342600 160642958 871177775 320488530 336424572 255104811 194187245 734020758 676531954 532966613 265394075 757274748 553552622 365303518 440047333 283721891 262781057 411251796 647299286 349968893 458432308 368615650 37147482 766562489 643263154 855372847 450758225 883640276 461761523 785843097 959177497 463982838 836545524 812476293 491263478 399896274 793675351 353207774 609226885 120538985 792796041 918187382 511795518 4788851 260863269 178276728 841674578 971761213 67845160 249050392 197532875 506681146 490206645 775103985 734013545 782685959 342416701 872378041 596156422 768344095 841857732 761490114 825389575 6699384 193291173 428238251 698738283 576121350 827608810 807039483 55133515 522268700 55411540 995350411 454282730 569400981 149790910 871033354 978512459 370913269 421321587 487528257 154314829 381747156 629354968 907812750 83801229 554748729 598682584 70076994 913965587 406919023 578418989 13488376 115140561 103034278 770346898 140972302 523834467 602206305 518199215 87875928 773594859 462514200 981684638 816855192 346617600 301177780 597930763 617634284 173637032 636510702 177303865 644866687 590207396 504904285 305136561 679130734 482979667 149253377 625844303 31915468 697687131 724387933 838116544 992707463 330800387 535828427 419833651 494452790 677961433 833930688 595040127 416706447 886814175 51646327 962720810 895841131 304384744 162480217 21748979 835150817 355369445 703675555 890045449 459804629 186469198 428882065 521271991 756136131 394278776 226868401 689384078 814952316 540448361 732596362 675299158 650322451 851705091 761192392 605736669 566170471 76794068 794559196 569930647 301199868 125162609 928700182 654296362 297734072 814961605 175422691 44119944 516843068 8554882 694682546 347285833 725339860 330013039 733952338 688584847 303465284 380138498 417261565 615329194 184409212 985332639 607024013 920634788 930302271 178199589 407048028 871331504 117703856 893834383 354445780 595731071 951257467 356631960 153806664 732796917 492280323 520086673 785007119 559539150 845507774 278852353 452377613 996956030 120960213 925185643 394556563 555414642 198016470 121122310 622201593 203690011 312360837 468585171 978652648 895839776 246880163 753227922 401620171 699182436 617256445 979046770 378246191 466183406 677279960 193227734 838493716 75940671 83780987 188157730 914220845 401425597 735176548 335870787 726694637 697739852 753015829 848290808 811419585 39640027 634653971 712133885 754489526 87945507 444684118 965647916 364444900 498513232 946814261 89791318 411726183 419520124 88742971 288180183 627560743 647254464 525005861 481852835 943468583 116037753 385970986 878419081 162451771 172906659 331830961 731926287 2351240 872087048 383747232 544019725 117091284 15893491 610896188 752692667 394492302 858152375 981072293 179490526 493859079 492503290 282948745 475383611 828389405 900272320 261945789 801585136 113719769 250404043 447351263 510144593 932860428 168818354 690176444 937161790 325005514 287944836 142916846 168562017 442198936 330343557 453057596 471688116 845470130 570700851 973091844 874407243 217964465 504160331 980027047 253211331 174894393 165438969 455778810 733332695 748543801 449669981 636059808 600995737 559904755 972721736 125434894 377968731 757878098 549774835 906398089 302908494 856235912 269762344 364880807 568508393 465622469 342817180 426114303 99482661 144030007 385024268 863628569 566535151 986165724 30776913 721414572 8518766 196210899 202858513 368626227 161525572 50499636 676821696 112495478 372987969 744497955 440134926 592701093 996833230 983071216 720396057 250288674 574833031 961027822 805198155 591982513 457116177 510089422 108673083 789369607 633431467 914947600 280077058 412615674 24042807 706034546 657178565 770537037 216721106 540909598 475611425 387667722 487456271 546828388 822233171 2916058 173205098 22631273 891849580 192219720 938690066 370240820 31797319 9790599 689512379 282100400 452129249 974079351 170881032 315432532 929561928 156757712 989166224 236549792 721450550 794833598 834307401 574394607 842080853 289217430 965868727 259718165 520802239 618141270 871785372 692627119 235430001 178870425 663982844 456852413 841678592 105249765 394610666 227432989 850272956 47813235 518866023 21977448 227336259 531761102 484334815 94474184 482083630 781358216 713910927 955676848 982578004 718787831 584491850 11479625 467313658 672287893 228638126 529485883 168153875 825465396 74473800 158435304 725159761 420072279 811345549 801767019 360069224 790744202 228183200 316523750 32214394 950236268 865307532 503173348 913931001 786323120 267618204 882707673 510492437 928192377 351409845 558129244 34012369 616022481 936303947 468344415 912182820 959379693 560282074 516878426 494915574 248813587 279256201 514391093 687172058 565112138 640242325 429398579 585917909 437886373 602962488 640424673 407925171 506180893 430688508 994589844 709230872 621270053 86266855 182776421 610420345 119499551 339718673 482270677 698887988 869547645 264533395 556942229 831582994 535269413 283323403 418076939 221657696 67796459 363871506 485387098 162450610 676140463 298302633 281451687 776860528 82612518 302512172 516999352 81516848 201662083 371750616 469330655 498424590 905513965 220868497 987466272 258947468 134172143 395376817 795380919 330870138 179129901 220446264 718115940 424926251 890917975 697707779 881544059 244113429 100194999 722706449 544259452 516450886 19514406 219341568 623619599 17096086 83278430 860757350 921532906 334775370 670625102 413483047 414500518 698387926 666922762 247364455 346197938 43761590 425868302 836521888 635102330 956393368 546412955 336120213 972719317 171003301 139741747 70877223 399229462 441799796 421704706 297527940 954370724 139994036 350309089 263803647 707585164 635981855 988302851 3451717 723719617 823866235 617307603 454025541 931423083 171494848 670534232 358237145 503780298 597061483 579474366 535635916 856475642 479283855 456837269 904554728 30197601 482696020 923624768 800177520 486348559 163832943 471342675 681122005 481348368 171028424 256943724 96334451 848123655 499828811 424239956 61786120 497129777 103485372 474881945 685408014 523483799 917188026 857832531 393249973 716000184 192407458 803501554 388050250 211958448 543791099 551726583 209040142 311224934 374183253 825409081 187536584 947368320 279887794 425382449 559372213 855995847 461236998 578481809 684026617 96105742 251117012 852295688 849091922 280713458 547745243 87655934 19817321 609417904 782024197 521160421 662564780 929582838 823839259 607852776 511780268 941605232 833744869 201567981 613175150 125156584 215440735 168117133 450934269 601448110 928015211 807519013 497602007 486565804 928551873 999530319 759253683 743200951 761893611 674737389 319084408 776279636 418854903 892710873 257045094 763825118 760658319 40477663 108342186 411379264 879257954 285630593 896666392 718694945 550270228 380259139 392248458 851023310 376267903 621839613 952393714 308047825 741045196 225255347 912380292 36427268 385335926 641290466 535585939 896747733 723009775 662106884 448233293 722279739 434997263 482849080 629151746 346515449 933214445 799693085 515661570 727285349 549182887 388134800 189238330 581181865 806885274 733446934 332808143 476487985 227587458 523571320 366363675 409280826 271011656 510260545 658258255 648703840 204550095 533620565 12607884 543516080 419386040 614504921 926924183 526282461 845835899 178310335 727896134 605218185 924219890 262273775 771124491 563799028 464517445 615713815 676227035 347631927 365852811 890648206 372970144 689128406 433856326 422300886 61045711 714279341 646328934 672872491 764137143 180532711 546092286 807990947 772168863 333860942 31127408 149300835 113225503 410271536 173587777 172917011 686791374 693239989 130070518 44461338 214567834 775438974 903598343 423295352 777546103 951201584 51224729 146729209 580564156 750737372 8605271 554748872 26717650 504846538 28930861 839126786 529132588 816597853 94773672 169245669 661800301 247586882 472032883 952417883 613086270 905647335 743552418 268706910 327128475 474940238 468804957 861013368 425540311 964653163 168302417 682010720 200799888 614857899 342411324 254774696 960918901 885868325 890353943 95569975 913122676 127970081 741802877 796749585 792033810 174778745 85853688 346013908 815004428 33855147 675786948 321534787 600610162 42168700 351624807 480104139 87867399 377690598 831095922 371402802 887643632 119587150 527638285 528648938 651404723 719668187 856545978 534999700 293506329 48333359 480295640 706714216 151688182 963367087 691176587 619110101 822457243 991118737 812459526 397683692 438910875 67632311 168516593 470139586 451157997 637634089 135224057 711926880 375318202 123374163 386815444 525077609 977895332 959382742 692914707 564736591 766218541 768868802 32080638 496627804 229799595 37967827 616463431 821930181 951046169 60069107 56964958 217600404 230696924 683628502 348743532 99885976 473927258 754742255 29397509 350604959 362638 502678484 713031391 375610252 246863171 108472845 601945319 367238596 830177372 561869954 980167079 562056199 949432056 314258175 732629340 402816076 817533945 865068679 537375098 367795962 181772498 152326803 959932068 119233485 56486451 875616130 628112610 744187420 470828890 239253742 114539704 650517056 921401542 783963522 152823776 903436448 511376476 753747106 987063592 169955465 856681586 884237742 202000172 805013592 528489178 898154905 230847931 314503529 383206685 44940679 533518769 740496314 176362403 577212188 277288881 540791588 655576533 46120590 244134912 6416409 591336441 26227005 684492108 10426495 928288754 180131793 687295263 731956555 906888074 125608933 377009987 294568505 926721416 155891339 753168087 445733172 182731381 472347171 909506273 968358887 451430654 666556430 257384102 712695700 213281210 506798606 225878090 91999586 903809578 162165741 54562206 188211311 668212841 574043509 828145152 679246099 59427015 256435868 149465625 434903979 802279259 140689366 560152392 267886449 402760500 178635005 685890213 572696322 833482364 295372240 106497160 934603474 127285058 954446245 307562078 546485071 357141317 79642188 508410396 276878078 44656662 177858126 6571621 161409609 948090558 106164040 896182109 744112375 39020650 85113889 752536698 810363637 518051409 842393630 152426442 24821594 507059443 825728822 495301011 84605105 27481079 627619469 39627253 130511549 600103041 406454362 997851915 723566574 88776728 883074267 614147126 345734004 886307135 563494181 882790480 261793480 95836912 665065287 286698708 812325697 309108637 107277807 538758311 773888182 614622812 192746926 249421826 219300497 222557804 163130671 457725240 421926577 514979135 274854106 923555101 942339539 964884159 990974723 108365406 161514222 759475728 371834200 101662640 368018922 961998334 890927830 161737582 587802161 295768629 930390962 678511656 602947936 76786212 363605319 948705606 844001450 762755944 276183814 144882064 798090845 260016615 851277674 399881001 950863114 209197243 799836223 904078549 237084621 4371253 428776192 76538580 88073428 785112886 552875890 419286979 278247655 933460281 514193299 814250314 837806077 800399613 173328894 715026071 816172734 836140273 576357257 529361471 806102018 826746216 394152203 704970359 633553848 834766684 1416910 496046710 300089642 613271638 281064944 934818099 905767599 260426723 690052796 523723795 432976723 595185459 721748290 194394443 667372224 473853487 655601371 617303648 104453405 700912631 448635550 976262865 723632318 384164373 107722549 20488710 760793379 825760806 711993576 245380185 519439436 861967653 569866022 229720051 639158694 280000410 573758208 64462480 446747449 923967649 656825194 157959386 17427032 428587050 953240386 371632181 580418268 383527779 374444283 959873119 882123982 192534821 381037531 98188627 431453954 608641601 946943537 745084859 139711134 957882926 658382719 641414396 25217962 687824513 683669912 414788119 625671626 804350435 506137244 22792369 445043153 912753755 680914930 780922149 962989993 660774374 698876325 869493583 884844977 4568911 889696521 582520387 502868 239130749 257496852 279339165 301540251 292599489 73425209 206608563 862404380 116922289 620720616 689073696 252306748 636087332 997603789 143390911 923247493 891191955 941909477 422396614 712506616 780531658 481441494 440494498 658863670 49285087 700371806 830035415 288558926 877680162 725026734 22911786 835524676 534363006 237155422 590081712 660153255 400091073 933627330 986128802 516065114 607410694 385790374 77921633 473077377 226019603 645468504 261175089 108994325 811304725 368012711 791541800 786746068 596247436 60497125 932193378 7052531 77829635 569918088 996986446 782645326 604889516 570980681 533138080 396140101 521845199 128360230 276967239 996378537 466006264 559062971 903778611 768935651 158983003 578111842 122921571 436850313 309439338 991811608 207824032 355336382 323193092 535851676 647340828 585949960 168959806 483652466 937390892 548100429 564752278 710955039 29282313 987515731 207845336 865217206 844538501 652775033 587524934 562075792 213571110 267313978 915421986 259788976 347237358 155880560 13634719 801403184 710900557 94610269 433008754 833114255 638498615 792608651 844707647 119942842 146121840 288874737 371575343 754551741 262335983 572681967 488603803 985690995 878507493 390146607 333500393 624379846 477628558 465019282 419360754 882488896 531012508 525508596 193767595 361888852 765154149 638863286 692066738 198207339 969841748 291937425 444512790 173743294 780318867 539911035 788920451 305987798 997193082 100281844 117207343 655523434 762198565 222773767 25732881 194210290 267700283 373223228 781575570 243549604 13030435 206564322 321806504 3127392 503999425 637485970 948833499 426788240 801288570 127556165 897107338 826792937 527675672 611091551 242518637 331321427 531624565 858077272 969165405 973630610 453127663 730824350 548743545 429401345 194304447 999497279 568491446 200809967 301989530 159859772 473940899 806405690 767345242 291467147 944067317 134623856 214766957 492984415 156237802 558198303 412443655 842879402 257737294 309241565 517827322 837781522 693755968 600531744 589481210 244589142 932590882 947320924 678966585 637969237 494369414 778142622 669938311 833892098 782233090 820305958 146770975 349488976 525431033 691578365 367819640 146947014 241431736 548612758 305771821 290544450 169365920 184992148 997760785 938786396 429692743 754614410 442966607 563811973 242376040 977051306 926526149 527703390 583684702 717889310 429194807 48072518 908075879 869177064 14916921 285616411 536960178 600048165 717286786 334709807 973349492 740095143 351626851 713135475 800445990 417651422 445723219 949285012 163012612 472585876 704867332 699031662 255610471 491301616 849096534 704712372 19696303 721818450 651057004 294333230 428044636 853759158 140875905 803818046 656565727 247495144 78861656 16077660 254954181 438049281 441038761 469129349 22993349 343878540 789209373 233562583 147892812 266280291 492271488 165505504 40919543 958269915 261959819 853177365 361832751 342275105 878361734 576610149 848424441 310897233 24655145 733766530 511783386 526658477 526121000 902602350 154339398 152929338 666880220 859412519 583883072 903205287 225220675 781317252 360893509 347625536 739659177 700556139 90726626 161508220 832996472 414514806 35458708 786935777 184451383 192719179 332341782 657632727 759586081 649744864 134040116 486989746 607645020 171264808 246815917 843917241 223013368 868784928 371201060 986284659 621237009 275925912 313498678 123059114 503097681 271567426 163625408 439232005 38288934 787132890 422067446 125657473 734341728 475471270 933445377 570012210 893282270 295822489 337072290 647621053 319531756 549286568 883141846 454150918 612794286 976702594 164320117 145087647 132332249 285320904 690408133 242692625 1514580 398035563 89257472 42271530 411608036 573118776 994793388 367622294 998173243 385818963 976712016 728312410 567612951 432883650 158977436 805375983 223631680 624868922 233446606 13198844 426757549 491921925 102585679 741044679 973959370 170033025 244828235 106496866 227129903 208001861 825157004 326729196 402029248 135705493 707598120 745200266 542573535 682614713 23146513 936946888 4471072 893748692 717440821 24714412 729654639 946818825 988465078 365197416 893675028 491697842 450898884 356412537 302949172 605388248 790334687 176302115 612541940 238312430 632142872 552066513 575775671 209548170 797210776 777947994 712646482 675925589 856083480 557448557 95187806 621181220 850684918 625808473 950227228 71454551 333279217 369799144 431540077 898242336 829616042 743753099 740467456 902671620 549704050 898787286 913734087 359158232 575222210 840365622 256001521 919053943 290871069 989895713 838826072 385183761 816598291 495745792 457697239 333715164 281351941 136141100 240858153 264588381 402345821 451334497 147622537 769601500 368388846 817203639 702858583 570265858 359747359 641644694 872638869 981681704 902474560 5169289 915405504 417998749 879622397 740270956 367680707 811383135 197527147 909864518 17372143 831890356 60148573 558498091 839935562 13428551 227976966 159653984 511691399 928648800 562095879 60693962 451451194 799039704 392336823 440320588 933548397 143864059 280883101 121083606 595969960 710144075 787400665 19698001 156523067 650158045 157692917 437309185 980677749 136561793 236599119 406820857 365720766 133612618 389178193 444988999 782449655 767100187 299993465 259791197 617578322 816895169 11875633 57482175 889340280 353946161 17521127 110691571 889140099 324961954 853811613 525913401 506623693 516823323 367987882 528862958 154502045 517920198 382694966 357990973 808121370 952347805 449050527 809680384 161587113 319335828 65860580 753818030 84080990 13500029 84739530 976321043 155460576 245488184 503572921 997535121 226412436 246016365 52241054 334609050 676795498 915794701 831438607 399899235 188178478 329612418 650748931 466922758 575957511 442236549 293253265 737497828 31576298 400743153 344127401 993434196 102575619 240781328 852078329 156448238 408550163 397653199 189900722 696981180 78585690 946148382 904334278 762778452 500885623 335563996 97565466 692859635 990862685 282988213 391049282 271379023 332111631 976517546 91529214 634492335 334033895 896700067 390160142 590530739 1082400 50641304 580666521 298535134 144899868 824884105 116780582 882998948 564352129 193022341 183622883 654655369 9697323 643429630 534852865 929269570 21621359 547155857 776346170 862968510 345722402 904703944 93641926 367075378 864714775 542870926 931681587 104064832 545739638 781362723 278283031 583661914 426739142 809499779 209428333 302480257 894184126 865201120 135290482 979945880 741878327 599323428 166695046 401386711 958440800 728282104 15818488 556508901 791484831 420761545 634074194 779205240 367174668 744610477 651687328 952459665 698416331 65644637 523652282 583239310 711684461 515632254 278441692 658807332 881904004 860258802 560151007 912106995 614703689 409677472 231918740 242356 93892819 496687586 477369468 413620963 289176864 676463768 516823204 977589150 929871699 511904827 195564525 761057908 680699533 104963879 171724621 903719862 443314267 412554877 480711633 366949000 26462289 450671397 174977255 628539193 550364346 849779823 335577755 82356315 100363604 70946228 486637676 224239469 971144211 166417431 489345324 952401308 148889763 895919441 326428095 490459655 345267552 297190889 199622741 383866726 74215624 57427279 996855332 192305178 418996595 881691333 885866055 359020048 417321851 232559639 917547983 408966727 337804030 428484998 548908958 646087417 740145021 599001893 737935209 199097911 626617928 491510815 186229023 881932115 514786990 729841322 914713799 213512072 53763850 849517008 747279243 556185804 821102459 849674997 543001868 285539895 899576235 268728696 642964023 843233756 471197493 927089874 712718337 689936232 195921658 674188023 976755324 465695850 874809747 983807350 420177143 167258215 866951718 675058849 962121878 68438750 662260293 16112529 336860791 570895076 825641376 521220022 556328951 344635204 103536046 219919483 159225431 555770217 206515288 627757594 352698393 641624382 907969856 85721662 564229883 852586223 820904171 819593859 250281170 866893187 770269001 293775866 751852970 578010054 707226449 447441379 200976856 75123070 154776656 930531094 630196469 649155569 52861385 674207754 649951370 148455618 314517137 213429157 543138360 314122913 27197757 904581348 794877132 313037680 477157601 202488566 413373616 20444878 588414341 518768720 955449760 274351383 981675473 542849163 226670843 595300287 764479847 981665132 714368050 873694879 216483966 423720259 565204135 587000983 168337411 40775572 126826077 533064381 380255921 396158005 675927837 174341084 727223811 347473274 270095908 115676462 238809917 573261750 3961805 994148022 190487737 745615992 459162920 635742954 707984737 37300995 58908663 787770256 966488299 749448922 140714214 418867102 517042795 270597767 683800205 704309614 679865479 38191068 154674331 131865729 207212342 944481290 272568037 769681931 843984574 723829075 860009621 681081808 724224738 247922748 401698187 624519413 201946200 341855800 385700830 976530810 850159131 173206108 484417029 798377570 493248479 338805474 32521131 37663865 249415858 755984238 903997316 23312196 109195307 862269990 632334588 235955940 961283027 33865554 236916751 874421890 895764640 536113345 796202707 973143408 151550172 375027748 980142728 583299195 615542998 448952181 319253724 809954826 473775924 333827455 839014524 498184375 597135152 970714299 913525160 288903479 601878993 624936027 127638623 233832199 450288756 982777318 509281433 581306224 141226673 92936565 817651218 863088717 899161295 640681541 276061709 376256836 171140886 12293339 400921117 645799582 921818844 711502417 594963762 943307837 802601695 924973419 358873191 529661222 407984952 381262908 723075245 825693252 971628677 726961139 500114073 281017627 478543620 289291683 570680664 28098296 910782215 966445076 427486954 205675431 520443956 254323625 554136563 928105885 309739441 827315169 142260678 421003439 504979419 869609369 946282036 144001316 530437537 157242145 810815829 188047484 98736454 64034672 771167239 84054605 429160550 976941764 528125193 728191802 727472562 670676979 189266437 582201280 552555129 634894967 334491189 529374537 557618528 746148861 276469563 453102371 113872425 620928271 115406773 904754752 540235453 220829064 436950854 273508053 858657686 161913565 496149507 131288279 137239157 931320182 326030550 720366932 898538053 281164533 971770195 796258715 59322654 232266940 570702902 410885674 638126076 644398596 670235444 933205272 924638153 652643434 789934889 596349048 498009923 807295340 697564053 571641897 876922920 806684043 278250253 124729288 444246773 289445106 653616386 345782659 998127372 528526883 897880622 134551424 817234508 498340789 854632942 271782167 971305114 895966983 91105782 731433290 9171273 978482648 281977755 14114664 666284634 206680838 364409137 466820811 714701983 247137900 139047879 945817112 432322432 666661149 101897248 487889996 757554347 615159883 998178369 59682283 511069451 765443913 261994831 504041502 512137806 11256761 214627129 435859134 338516416 74817929 877912486 218684638 602688442 118749816 375532205 27192856 287689238 2574837 77916775 579020007 370414251 63121875 43645297 98241040 285571639 131601237 30027278 452991082 826618030 660367575 878373598 729327078 258548644 873740300 187403203 980206861 266254898 690252322 993720620 213829968 396423543 931479797 255763962 916930083 50549196 576389959 595512237 278350243 40978169 121362519 678724174 432279824 561717474 293015375 578295738 179791348 762757034 842976454 839502786 13515003 636856936 885288611 809244729 585715152 391258234 328423848 682243740 238492860 401551783 802974538 176373093 104960345 72006273 5126208 467886429 160415244 541994081 670106715 604800207 504615858 695782100 681947159 455731695 699032291 899412480 38999590 133857511 636434295 597858033 497377730 119105175 779569406 947354687 619706991 951412503 480325761 383230097 551138380 561159993 623431831 504141669 571226076 299379813 954753488 123017832 60242819 626074912 692069649 747585289 724819123 494816028 406914168 147273805 841270571 94077954 432511916 161762325 496369526 206919595 805649297 518508235 861842277 663872383 375509018 491761470 865296391 904168636 230548037 740404167 728445455 833705939 279216027 804677200 573456890 86742742 23699524 76118607 282606822 514804350 570584155 46421875 824971287 52463974 989645902 903234262 351939569 337445572 771730280 635093761 227856693 906748517 314384405 698207051 136563477 347809790 113748605 819021486 773407250 270375491 49620247 910615348 632719552 714284769 429078864 448008637 576684598 941947392 153526427 254645690 623673655 629369123 449717287 734675062 515849063 909218679 289122330 489862543 765616709 90952854 494915116 729942028 520985910 380147418 665062704 841152945 898604529 747316005 433468381 849238972 183423831 958099556 757146633 907577915 121823372 341204180 255748487 972125696 658504208 146986098 65689568 836920260 31565093 487804236 967950344 93287083 237936967 899775884 631073401 643119625 52725709 158589862 817285190 81786467 748995361 806442031 361719488 786177932 229642245 28146551 61062692 574197166 365103802 792191656 178286764 360682917 124295599 533289480 292521090 837514618 307606019 851190047 753399179 497700598 217999111 952075719 727969855 900283216 753732908 256540310 393291890 617719494 711054468 658607591 145995667 967999024 310301480 388152282 569270609 320763131 850722405 383299477 125769839 467171547 433842463 519516517 543946320 183829803 526554948 975346393 275524220 502233235 782742793 925032869 43856246 925623092 514628199 229978886 461518800 272398675 877994944 654476039 363050591 542940564 191700245 306588767 779065663 760834485 310863259 537918244 574670928 572276578 246535466 342997641 634534757 239912139 216724470 239676802 352076485 951750971 983329752 99391931 412558985 202146276 458656686 920540745 668838037 906299592 798322822 320492954 600694121 543027749 272704017 246373067 99001416 758730386 409134814 997473228 22215943 637767457 305073413 365831003 647864836 863811165 999885276 704688653 683925827 897711400 740519676 64977590 56484421 582029825 849967777 270055912 400546722 267715406 478647676 202819693 493957818 716879324 310109183 26316437 496175667 548158793 902512604 889238322 858225002 51625741 693859555 777848740 261737753 931701144 622368503 742688987 421925512 463070224 289208571 28000618 39564771 157577776 239367048 716431647 639228657 902668594 75547632 71808735 76747675 910966253 147167872 440090668 787918219 160610434 310848911 686165138 835330826 620088883 738737746 351293113 188037329 1072965 357246616 50549880 792560143 247130829 866755482 944969323 851400631 74601847 884705923 641880916 926865413 410728912 891182147 772326832 942627257 773223466 959469748 819185132 815328311 143753739 753033789 306717094 765968186 465671028 498365573 331251733 203911747 990618111 292715027 152526823 855181834 491541210 240083091 536675601 588910866 745323153 642717700 509721525 7368302 380943504 529081153 438868770 739619855 513149165 200489515 419545459 965264200 729991614 465068573 675200208 188148696 994160060 487029207 910925479 464172866 290054852 152155526 987898879 358156557 494875874 768937217 37810861 475733488 30425470 166799737 466797462 163760533 87430193 665514817 315807935 746391946 938887723 861663169 712774970 519064843 83825189 422740442 114744233 6901794 924166904 802598918 15256833 674270996 563198302 831898219 950462052 295061455 798827806 283001198 682920323 828247478 341844488 733278828 464641495 940281707 771359858 272497654 242248853 713725027 531004729 57547686 571581905 774016121 947817906 14289172 625011259 272731509 99235554 695178494 389304331 954855007 613724086 893265010 976323856 822298535 366027174 222172460 443753146 605081514 498888077 674610102 198764663 663187245 221794606 271030684 14544456 584409208 24845023 661265888 668254143 784305755 645530880 757816221 66085066 774340321 330893517 208926120 576898077 924856762 471741259 35678791 847782933 954111979 819561604 769453095 265653497 778917356 36870210 754283292 974162271 451788214 294048013 483488042 396551447 276448999 747370724 397567148 522822345 592237051 852532495 35774890 751084399 98122503 517051199 448401329 718942504 618444513 978073251 98164573 75340178 321967615 86484495 62103839 55859935 470544696 559919418 856238753 183522361 501897068 879911830 983006818 191206475 144792580 928782857 734667193 56040045 901321323 472795836 899814658 632247852 365945529 345400263 4864820 308340374 850478114 472952464 398341416 573145934 865478892 317177939 12261512 283199389 900470376 20414313 789117685 454091632 104908794 158461761 68257313 534702291 931091624 197739483 989616400 818550875 527473989 805839185 991012314 848637177 958929107 172688329 457541381 349521103 10961270 808684874 99468301 458675542 370690217 624808343 662344601 869573107 657820080 270460544 438990927 990970989 285052797 587154906 453229655 424545576 334873393 783551244 453666465 949269193 529261155 33629794 989742613 604153158 325357757 135619072 692448986 555362909 859392802 709645970 967981418 179662856 923235637 527437990 586359941 343201086 771948029 516627483 322274971 437086122 848454181 594160755 932832037 707529536 857208306 431638038 548165003 917761405 845938900 485424516 637319954 776330511 506571050 107306001 205047582 575070673 125662379 653472194 43920749 154518281 594077408 958320746 981156209 492075230 707757253 688088321 65572705 4723903 817965554 641430918 103280012 34910014 487598363 146132461 877267388 680674525 239309634 530428198 581685170 349803387 773849243 909092641 890242960 182332480 611421389 458870279 122325652 896595100 546584161 544444285 606548787 239864161 16679086 183719334 638026176 724570491 691108375 476586496 63281840 517825050 859739814 953690460 587519668 624966664 88589926 386331031 694504900 280216516 806294229 17278033 762780242 274439688 936554557 221575454 452481470 283313855 62887740 471882310 945048213 32405227 159218059 779712127 132575407 372198844 394453200 69961652 803344819 691307004 366559054 967798485 275627614 256845719 725786609 419155361 531981606 424214991 954457754 654925044 297480400 507969015 28660477 383949988 261121191 925008814 918098402 619833242 920006670 245894945 510892688 469848744 731593467 864856195 988118363 15879926 288130625 852128384 854746672 861745354 453436220 708532390 903663445 907586507 620203677 88470507 316196428 609788608 431362191 167168553 703482346 431203928 151571284 540663916 376036186 422413297 615169389 247758488 334269394 797369661 913771566 162816666 347862923 516161083 363803328 406936638 410063284 864434688 904560663 182808808 153885713 700052729 766714395 557103535 396682991 625807855 638365648 724710534 689594523 256344321 343786056 954260293 263077658 645680084 835652671 445773149 177264999 580736043 762747732 254582018 248236300 528586401 403197433 998497379 623097683 378224417 173588108 340965460 561387939 429721816 89298466 487977444 671632282 810265851 207539787 543449825 534672310 297611795 373813645 552148276 594078620 372628018 669551992 773265398 370293906 460909462 994208933 853418650 732108522 925277644 626314856 138468079 451430646 678317494 72478789 319423568 380388388 491578976 569291138 763219129 377111062 408492581 868596102 355845276 283415613 515376610 196125728 400923559 99189723 149119980 759922552 96471941 315975900 547250891 47689462 558810268 790141658 288481897 24236829 219373319 327634825 517268130 707284918 942719189 273288613 685623694 217580728 630082419 128171197 155574599 709792081 196211174 838756528 373188746 487075419 892354730 441895490 890542589 479755773 337952520 486686393 478137132 974983816 102952567 285754321 630725535 520791434 42614967 965220701 601542450 619147780 880404724 498165543 320417376 914188318 503210635 539227307 815173799 729207889 963194046 908617448 653434269 302416448 371088120 393335472 52898390 655194615 749581661 658802916 728874010 563789648 158748078 529467986 476251311 492359739 788029447 773111739 203912946 950925638 323065825 636469157 861925365 853315825 807102848 437335826 695622423 889407913 249885414 966117211 383455399 47624390 575018739 180011101 125296528 798973424 76035249 741832610 249837623 144063350 257000277 566195847 586679005 173671540 588181193 108841313 49832428 877095191 891182245 294252541 329379294 304880791 172498599 754572010 174835685 817826510 912465696 400011374 738247860 672272916 621656307 126085099 381937554 953230364 501944817 435979973 851410570 387285050 621273278 295264085 526332146 528777654 878888252 180193818 545794923 953886726 658274710 950400704 808526466 31603001 341401780 917908757 221092086 795217531 12643517 413858338 367685518 398127311 764563061 504904740 329564840 167623815 458316418 600880877 648325735 908648584 560877523 428121133 824753707 815710876 593510675 14967058 510836807 62616613 104806472 238381870 594903792 359802365 53705937 60054833 553085891 736452981 897727725 262554413 411543263 758997388 82735347 321968024 706388734 380591906 687797851 833163237 892510782 333964197 18384283 163157950 48905654 426639112 473934502 718050649 33650976 165708551 427012873 398520353 520137430 326916996 233663649 578017420 858317600 887455785 419423599 227929871 431158454 422523709 682673645 718475004 746353514 58695913 367654176 748440446 705184901 992772687 220494234 660826206 278036089 559399995 106432968 973484500 736349460 170348166 112211788 645584906 695218332 918709560 420564203 486782989 619758273 823271184 379168492 781752673 119733029 413214231 120975450 485094329 762262996 20490994 493446262 760133363 328023329 284311059 816863498 319616458 546088795 529251708 442144700 901510999 87547229 376496386 807080776 282814433 444454555 428637060 297291994 825803315 123564169 781970067 523399574 264601444 61303436 266495957 925163557 345693996 583623874 88904803 732101667 381457881 201647411 459037543 792316014 458905793 482490381 246450812 217951475 748050060 634763506 455457195 420300870 293522710 743986490 856196534 408862738 375986487 556699757 352783751 823598504 620382149 204833720 414563631 812913540 338313160 879478208 633625588 632117123 265124092 705103420 529885363 563683049 191867574 66652060 510280050 634792736 592522610 486859255 401125820 228515017 392111163 648696904 627007528 363475711 703659004 946613703 710893842 288672080 764436518 507353915 425435152 232940782 200597757 568704256 484519591 612446446 515363 390658827 844390046 631576357 789237621 941633416 206371122 213523074 297688210 494210274 746395746 686890456 966240034 638654317 110559030 37824140 883896083 76507700 330937246 130053091 872320947 621161808 578244317 433039893 964380982 557397862 234085355 793127900 327147443 793477813 927167715 385931705 977778912 236269145 301858846 805190862 79463475 532394945 960892159 41677398 176795616 110549204 59925369 171759902 124586487 187937663 503334169 944475513 305426907 631809740 854339050 84315142 874326686 460813670 6799940 390762398 544742956 461020321 789236800 525625982 196604570 912605958 674019763 486091834 664501346 245525120 291272369 175992871 424763657 982088572 446105919 182974924 79650954 83272911 345483977 498351423 325311762 181045310 340030271 200118771 219790340 992633918 384012390 73574467 996330359 769219313 475731916 953561644 545011282 782196015 770491383 452097585 766965218 731245042 492110706 206184416 724126394 916870028 645461325 972653063 507963579 833564167 858720190 158569451 500313408 230258148 428531880 965189983 233412716 839918829 729898642 876764175 876235788 139854149 665009177 235825502 499907694 59615569 267424313 442565101 191090309 945796753 248657512 639997020 59871219 63120610 773487081 362750810 242136035 676492426 849330274 673710745 219094433 729062990 764618968 583882491 874534586 632975540 409076462 141503642 206371549 785585109 512574185 414479102 977555967 120846097 465441128 455982025 944591175 719220642 991773940 386629092 210634869 995077175 990939928 829936768 76762664 842050064 788106204 49686755 592479 17641765 697021285 151340843 513599495 792128176 494772365 434130928 579085384 615671789 766440953 3891947 434324663 700271678 687564436 267916608 441554439 972941897 719810649 81504070 569913593 421470904 804088363 930146880 658964507 125032741 611922008 462616208 677340118 226561780 668879574 154820597 773902834 739995766 563961805 93371030 564942966 864760824 208697967 132145790 346061144 277711286 272782120 102188981 412164701 946803533 240386512 89537875 208878764 654830512 85167945 698963576 565535134 461414186 609307330 883684092 996658864 633142976 891689717 217825984 718592137 34577027 601663571 86031225 419434221 133892586 726522956 392613558 817411578 298867890 439978287 691610646 452407831 763492015 326173101 155769392 18027126 724110233 768661542 457366131 50157825 918907598 243085558 853129885 405731095 95217482 914722125 304039 323687738 164814686 724702804 303641397 960353545 697169860 740359607 747454347 960823240 733768287 79279123 255572017 818567326 60740714 411996407 652962499 71823798 763831285 294378631 821178798 955566465 352959762 233160173 896886495 741135301 384540481 70954267 133634855 281626194 927052593 197788944 298222286 794018762 612714699 10381887 29547290 237119111 597607612 142235180 263403304 683422359 818411589 664581589 893732007 835258933 171310524 311402180 341956431 835820178 442218651 340157426 199399291 664894124 965594458 348428323 111759901 895288862 126010135 847045865 331292122 295742911 969121229 700415192 252908108 609567225 100286605 235023577 746884300 955011797 299729685 948861256 302288418 165452041 586696129 619795921 312355640 904260906 514745346 845290749 732967213 902583409 337117779 858233521 452709769 816626548 579545637 986933985 850136195 189571256 888682973 122302650 805596495 559711211 511668343 936037677 78662421 89317927 240370610 45851883 53138868 278299919 858185382 537137162 488540635 562519045 132966541 76596194 34471975 391852381 460607584 951846148 770844903 155016963 333440475 607960962 735348670 888979512 861491046 587698378 534337224 87721822 301281027 719837116 50516338 810310702 405755216 357359733 966558722 528440904 613913223 748609332 256202759 11028057 752774273 284696205 813235113 398925210 315355139 867417452 520551601 830754975 584155492 28817859 419696473 819428021 226277505 682940184 684216359 457171068 486462496 598575749 572561534 238603028 495845590 937321595 648517650 225738622 695255748 759843477 53061857 920711262 832550247 217667773 68346578 563133765 212099578 656567239 91305172 785415600 376109351 85750020 880841147 711474262 132812385 767332925 372955015 602149381 166277942 896609314 46619251 271803384 452947490 41622432 314184710 191815314 878553464 703575474 78486788 283215939 690931546 663491710 805738322 976834787 96550361 569013118 174969579 219973741 626279682 928774839 214733982 187057210 27903002 936879002 213903530 456304596 401645348 154305422 902808794 7584886 295014785 87622387 455361389 328272142 55469171 383454178 540183682 382518491 240492577 926315701 349998316 68288541 804889184 818240652 388227191 596710425 321118890 162466048 269564650 754169097 480995730 425297382 221490478 28813006 384833608 147364147 807774038 888977653 636496621 969692452 996414113 251542499 120666525 298298536 432557471 866407989 16642603 916932912 579121726 767472236 999884991 921728376 219215501 633851603 354738634 619377462 294890608 910308540 401297399 386100715 931690613 911094708 212145346 569424253 860896833 458296719 501818025 718530641 681142432 361666118 210588243 243177574 257386745 761322413 754368453 388016683 757321606 781504737 362629584 250523079 669960186 462103366 475394472 627081464 120357668 218083335 757327474 655464641 372880459 981778779 334640200 860624792 133580010 74179366 773869670 893966555 43623822 10471443 534352856 963345082 439366590 701665613 465866104 452139157 254361524 563917377 507824852 22647605 497986074 619057698 541551928 438113713 51430515 688737297 885778993 212503034 926367273 742255829 760654470 112721615 315540463 458945578 435614304 893731585 860469138 797856917 10898625 4814156 978410502 74065915 16661512 140581824 116622116 980578241 626505639 145412739 748688354 255476248 510493285 251355955 208787591 867548615 986158753 967986681 833799785 254081493 594376645 844853970 220654061 340897008 246363553 636998530 995462855 242770127 516221676 481471263 286976284 619906640 819996175 195573800 809438492 201979028 354292124 429330926 579737872 155573592 615867668 801158934 863885939 960037697 799700800 811244269 378585770 176674554 191764074 999250872 834159455 762928671 4248988 763529500 842051312 124506655 127994479 845645729 956708127 170214809 438018392 927860722 742750108 337321247 9247205 99326435 579037586 144300930 376076980 415002538 638351397 203257071 548901317 696293539 325495788 221322250 337201151 118861017 561817677 913513521 479469796 772193753 817405828 903858900 291503506 576402021 673583777 520629194 694565628 191385205 191717692 708927259 393499592 726666627 58469393 426121201 802686318 69207705 660141968 559738131 816299960 81138453 78007734 713809862 479817915 147982424 41287932 993416432 845589870 802005093 702767263 813734977 200895402 891502375 178666219 90580138 510724469 916280468 265910693 956865569 626126547 25398972 277453210 237835283 128999813 215502967 85544586 937895623 374489422 738450634 625190104 15236800 319895 187771570 270682066 801531422 326877133 297638678 783557069 544180411 513299872 371757628 452303889 686110076 676914303 642766237 868455807 782934469 415254418 370540789 437935386 932284108 768216944 866746449 700553082 411864150 681720262 360933095 931887684 210702255 463341167 130491500 674707200 926783671 722009299 13557463 130909935 548668111 256354414 555609072 476800949 34148734 888274143 532260918 966826995 275830057 208412687 134797304 377883309 15992745 696757040 679640991 288234573 697969550 916210408 667470232 685949921 492268722 303598676 611601643 402661218 667648734 154714669 857458588 135267244 592639302 365449188 683932851 849206046 961348408 54133774 850133568 229353776 375787793 892337055 938905358 439088508 692847117 335668523 155554272 161627758 416419804 779941135 38680738 557177056 57547764 782126591 532446766 46300947 303877137 83558226 353899753 702153236 169764701 756065562 448937694 102278011 705296632 663973557 122268491 112089893 412631703 219785612 173917273 389280888 228043785 797706518 890045857 153969537 685532525 84320595 888769451 967832698 998759085 38434619 221452541 795088206 794416936 421775354 440148024 612418845 45953546 882028308 956315956 855486598 881677102 891787896 345693115 456425143 214455186 466376359 488581799 475880352 678720761 77495781 371670984 352396958 406183703 401573766 106857704 495167023 887551135 448253778 372593123 84638950 527232242 681534307 293386326 930305573 898119021 419235065 302350823 89188076 514224128 115087906 4413095 763371338 291638611 471741503 201614964 491931816 636726399 830794947 872337640 479209810 785662166 297525748 227671149 602081662 578947677 245898882 136068786 747864751 653455529 118448712 196113695 474481794 708091240 324616184 533147841 876069576 483892798 52767847 438424507 504836992 829502516 406227225 466630752 23137125 181505287 431834909 847436373 860067429 331932440 97571349 416493666 393409388 952036913 889541447 767565631 983070487 231900723 458251848 97067775 380091261 926858318 985384245 960679305 932644169 303709172 854014680 461554497 84058473 975003604 844484497 200496380 390012201 353099377 702071140 498840433 142246219 823241911 758344245 705091758 99772295 524565434 333133416 864027334 354325171 529113111 683339349 406899749 647194859 578984641 627841207 285185283 179739621 839739279 96863887 198652551 708564756 606124894 873589150 253254656 535045237 1128799 302945746 410030675 213193592 538435751 779933403 615116318 172563714 126639522 122178201 865116010 619035333 264067822 391602473 387235771 834510236 22887951 782314707 946518918 284021251 943738293 162394534 189503113 564234961 478157779 610058716 337869674 461039880 232101746 415385934 499256673 553239313 616549366 759674638 702346843 845925356 327746574 440553006 927809704 59394933 870953312 175520854 388797507 773761059 480004987 490781614 936704469 59291825 359841802 293173036 733315825 68367501 342231882 621108252 580187073 818202498 324238227 576599718 4355641 661710058 686153332 595448909 270141549 330453287 686404139 223287618 287710823 150543932 46191236 197405450 922738367 616761474 807682001 6695580 668975197 195315127 995971090 358338893 165991002 855607831 421317934 432189425 73679363 6246000 771923454 967238473 102447007 556030949 782569719 774607105 407231391 256262895 427826466 155886739 486327224 761497245 912746779 820445517 282309144 4644808 957730305 901679947 556938782 363564667 270241489 862129675 762175064 798268185 711754376 713023320 404032695 434978391 439085171 988607664 911331632 225061943 928951008 982547511 990098184 803363355 605582812 27368289 865121845 261270432 2860982 236500103 247744037 796762476 591180291 82843889 450950930 927856389 703590444 839122674 806175784 968042999 574210642 161893982 637578953 160755422 982582555 698956023 777260301 814167428 149559098 651958737 417014783 821682536 175310511 966168958 780622062 613636000 81054827 413102894 806139639 528525646 240734238 537870320 863664154 781610352 816257836 581737725 453503181 685634112 815078204 765284267 524495199 646540348 884062094 507933705 279979119 965946196 871809155 336548819 467121784 900047816 25656531 1715651 292020015 773739146 484017703 285224429 287741333 897863258 462209096 610898140 818759032 656553600 395094934 4643421 910200728 105475788 902248447 340091428 495290846 579481131 696610215 930273578 444648948 860132818 219618633 820644331 212682068 324381256 517011797 889782624 156784302 313141425 579132111 345386695 772431058 486935831 518873823 315741659 66778033 109260653 118389228 293716034 155475304 440087116 461775721 785334468 895047069 242838691 495067255 32788748 210235271 325989178 191717383 629514782 307794988 732488353 536693375 643161101 726823687 955938019 872525423 294861674 989474230 281777500 888443957 573695681 905860345 111370637 604483350 946102908 625171877 649902909 18116253 171168365 305430592 870691297 60163066 336858519 805194897 140542462 738841662 397489087 101031852 815381061 414583750 627856899 970733436 389773759 450939492 383079888 393704549 501903148 80948712 15470856 242315320 170565367 681716492 965628380 148573512 495307819 340305454 342711181 948729003 637946203 563130750 33667512 858519610 882336902 44090183 592301536 576578417 899344387 227105957 751615554 527755073 236481437 491337311 202835915 453516483 28872815 410436642 889650822 365039292 132112656 933254692 531577070 127543328 48574374 461369140 759476246 853602787 682363048 99261727 783479402 923508 694864344 446336304 145669897 51577347 428502859 108590873 473630280 561312791 732692201 100778295 537887555 210136407 278078090 817585978 590567937 913532440 77278297 991812114 863250321 651530906 185582332 632262695 119626875 159133155 293227798 934859908 188197396 118391621 147536341 696140199 506524682 124925785 718873444 512861800 85818271 89363593 464271945 438612199 233225089 228303668 467815116 24633168 263347929 939576178 55161578 815854242 273804834 841981995 552930547 958586566 257129988 253864346 438534067 709751139 829037484 227555627 712963043 351588788 524863290 487489016 713365190 622878807 143009367 501973432 83265096 675202251 297185884 264672707 510789727 729159900 139186934 447859652 277108635 879494934 76017796 20946979 950332441 784699040 272203406 483636540 728819935 94353336 45301694 850706792 792636697 604070595 923820380 920925077 770538033 629858057 105107244 107627123 98458699 626073725 955840195 510657277 237747599 312614844 385322614 934909920 928341041 361064591 748037411 664552741 973813490 324028843 24785491 200717918 816549035 923089612 588585229 67700210 733037892 773632125 105533714 874878673 894868533 886823936 986127614 843513139 902396262 968085610 978225020 181818209 398744617 373007141 839086376 841914653 542310879 714413145 639316973 435728206 606538217 730108795 300181731 364073964 475800635 436920395 250961745 563991909 294897314 701450724 71597163 310878701 268965214 77945787 17352365 310359080 714904406 35415316 333613631 992561851 447400081 252331682 232802292 982850714 827644231 937888981 164371305 533308190 91772986 182372125 608392343 2921223 28829237 463344432 672200444 73141604 253957518 412380683 526992379 617380685 304766218 600831975 113704052 745262841 698832060 251976697 94582205 811755425 862899903 945827789 455391193 880853949 607738210 325011611 934506760 794288929 926725981 799043669 408172395 480946579 270584620 148715026 482635313 428343622 910378819 813696728 38081424 57255513 233624858 293259615 707902892 783234695 140945452 431962323 385714901 532603600 802220866 790455900 25299827 979942142 933478401 795441913 6308503 220684383 362603829 840961632 678328371 588293516 643251223 868422532 349777206 181821992 639047465 746050393 266456808 426181427 863167089 42735427 168359722 710128422 641305487 805641827 272436390 85561928 212581054 129990952 708371543 331221737 633540550 339360232 320598703 353411115 607731948 256472417 446569206 53586216 68407003 59391407 311146987 5332878 859401290 73925339 513981517 695600865 472186827 660763515 211419935 922212540 526985901 532886420 496523448 520814524 832123382 877805424 882656180 343637581 495785648 744389002 247180597 113037448 875460455 119295554 767722115 503670059 545609771 76811559 871787309 821438876 258979514 114077333 330308754 275624631 207659228 273302553 524961466 444272328 379919769 162285061 862866256 37034253 318658783 553881113 823876844 546348255 52279556 810752048 535067278 293410486 998586102 256159441 862261902 6830343 143049979 956001204 607483535 997582312 816238566 985776662 836506745 826876931 962186636 96397457 588128851 196233421 265696038 598083492 816676668 44132414 346696053 164931513 746318158 368926399 35981112 973375527 547431317 26587386 429135478 134241315 584466108 241274854 746536695 355053900 973823964 85133903 566654479 696594375 403963449 881982920 129173473 195273323 755197104 455527052 332992708 324237144 54832237 397377970 495128627 372924613 35649340 972825093 447330840 135419995 480158990 936140496 387064484 947817815 570739570 950285761 903890398 513834432 811677068 922752525 539016244 111225110 340097853 912130500 767183029 131057360 361451484 390128853 861836354 109826958 644772911 552640818 250197488 413691715 732778943 812078278 636225492 536583036 845542083 350361283 160196964 13391745 785653678 537296884 985891957 50481173 968659876 385735151 290207759 917948324 650469793 114513642 154758049 322325598 633426013 622610566 603141977 323303676 104654377 655695093 235735069 219337686 48634989 125251754 419639752 948302945 223090598 394956903 570544136 492671003 606079942 764988948 65902677 399829354 34673517 432960140 46859780 177043931 836523690 662991167 465961753 372558832 90453145 457328022 103564983 43994270 290227127 990926569 424882808 462502944 923320230 901109557 205828458 312951302 727890894 995072539 193492122 511450097 549673382 110773505 302297081 718922462 235082043 973590108 512123322 790887746 161225346 311051383 61992341 304710377 820338931 766138523 286833256 604266886 424434883 807388025 152886147 486408538 861597696 219129487 866175784 123039203 884095463 264866375 909308790 831523329 89958515 795893372 780405402 433748907 286697312 321331843 222847816 209920569 823004340 403885594 488436659 292773085 925406947 935220013 309278303 703999692 922906922 833366020 592267181 329061552 612625777 828520418 180599512 445326041 85358303 499272646 96819133 30541129 13214039 750972494 271315517 955190649 389077747 891060246 215213545 810191582 280016164 279497552 120727432 152739747 316501507 386877287 914813738 701814979 113227610 638742547 784851498 38372239 935348879 132225222 285940800 630584722 563238120 757213517 313377680 478464259 392887253 748097286 257367776 619821563 965430447 748954624 277296560 466813729 986609972 251837446 103708299 360620810 444486730 623072605 193530190 663890932 851513178 452833795 158581464 886548542 553293427 968034814 876114493 682491509 775904414 916331649 547036392 16260434 328872906 596761850 381129815 336855091 483287141 430791685 784018538 722561360 533434513 102189247 811453480 111789528 213647243 898099891 753266429 460021033 613829264 862150479 282023032 773490222 930615447 60043203 826710734 131925218 671856526 408152052 648123479 263956982 905532597 785700851 133415000 154063751 803627670 961101188 893833205 786836646 236698281 226179938 674700260 219187853 278863451 485759518 941867281 432636191 697372063 441603257 173169553 559673365 287415614 166096026 620528700 679627896 400480147 508475940 597328514 188533024 193833244 879060091 506795607 698149318 43938181 744107132 9944411 697181003 710885023 545498670 445860520 320831082 125878527 424715717 164588672 306529860 590862073 8152930 869333407 480727095 834592669 210713708 47604926 822438061 765837952 407526180 781005558 788233347 648936754 395838929 732159592 596213917 30115996 632958717 968836349 424677144 913155183 500891856 382660414 626991756 680050375 390858138 799812851 431389645 113680522 829772256 209668940 187039118 919987834 840493225 509446619 591264993 196321118 419259339 187368240 677088800 113696538 354317740 998234772 842661250 737882377 30485025 378345560 924341836 332178653 3460475 576400664 347538598 541287021 54470933 113218399 311953236 217795227 195641744 367281696 830844196 420293148 920591449 627708127 649684570 640034571 790290373 191177771 524123931 667911657 671662517 996709052 710131763 713043398 262976143 135966046 885912021 314305103 736949050 615531866 870500696 157761358 954023392 586320302 786086906 303195901 662740319 684515101 183881906 154026967 617869675 92552724 158263129 13207529 924427485 298288909 12146207 903750191 501205375 964306596 699883658 126168950 869215639 388683476 327107011 80347969 960202912 47137948 973791875 912743440 87917788 260050656 847301221 243012511 473083879 921308728 703611515 120765723 335254958 467984036 949732916 736323509 405549013 407276464 991793741 891634491 596456363 750954576 745257124 940512494 885375031 2054113 31633823 695221838 935275760 994424106 627179281 474749922 449400834 410785696 802857312 857380376 537941288 647847789 421249774 868466329 460048321 599947688 578356076 787936241 677847965 263642710 370055140 872932235 962287596 887534470 845053953 949487537 503921685 767273264 687880261 35313023 267787998 996183127 533898019 662281931 683804276 374057350 264644439 416755584 846167355 206150482 310175581 73239862 103940315 65197772 532224035 568452552 504121724 478886382 283247019 499519488 674385995 694065660 471501467 657479779 956167393 515291631 41551090 17696848 382912588 852739469 81659919 639259642 585127424 974162885 410287741 486741399 73927564 365124682 787546459 790078234 959504680 545438374 58040156 853730993 612296502 247183391 250709228 854206501 584354929 508375014 774097045 391590151 305586804 614159892 138844276 610513087 275039326 777083795 634457202 461194022 871942589 242150906 948308361 434740136 375282895 737416484 114697462 693301805 987424939 964186075 440419627 39424315 12164804 916967122 624233438 80711750 311121709 892435354 909309316 259149480 945281428 313142597 708546745 100358244 575048981 802147205 927553124 98298787 845028392 465237215 860599560 127904568 355979208 294904825 904823093 985350085 373820153 465361502 991648362 21502802 182183096 691159131 713186096 326650459 172822228 281614765 789029406 348325300 325555491 323118558 743761224 288832469 863401757 555107829 814951574 457490800 308399559 169020381 399901516 612345090 41064105 728735921 740063900 103733337 991630015 359032991 715780787 796996272 589970378 391150584 544302121 170977456 301847211 968501843 217153766 805357168 53379128 875562874 22299807 178134227 330451740 447617626 914117687 215731554 890032447 924844198 597258067 341035267 241776349 130412468 137881564 790728660 159305746 491592789 749544387 573521665 838711974 719083567 295195158 225291124 269613909 408969901 759151231 434924691 133233388 597388377 937997488 585271692 877812833 49473951 25238377 980027783 990710090 227455686 742312570 348597779 593157807 152407861 292187224 817881872 496023997 463791304 151940029 247678249 466028458 956716798 322052861 854952875 413452074 290623652 648419279 943755390 510527807 316058981 183242186 912854267 161590591 516486906 676695124 484761927 546842231 468996566 824026620 655267090 172342019 381013011 48174765 991082151 748274652 553599529 309775812 224978033 386783457 625144533 121630561 259614108 858900675 252547574 374705529 283279508 986940659 811583425 619028399 992429506 352937725 429329092 574037460 534571950 287969155 568298321 916701616 776419047 576056310 166994837 168552572 205873951 674739680 249088126 736510389 189618693 582447826 44141105 526760601 81949187 459668153 187189994 273622308 489818205 193309369 205773209 316529333 180965476 574862524 682152766 823399218 176803390 848029438 540453441 327044266 634677406 976085164 995195869 212497394 974348928 465119914 625672658 916872349 53388171 666623765 990873452 131034412 764244181 865309731 277835776 389814420 774957021 662340662 361696311 135965942 166620795 52743209 365548108 974554339 74529281 689996052 218167505 697477128 260195284 540193332 762486169 427563727 9146644 505010882 488589850 962111832 771900014 489392506 818182738 460384177 306861338 54213381 526757691 408741678 535466743 354337492 534841514 990430617 871625050 865481168 930816250 304298457 318128091 139247871 83801990 283184792 435763910 205801747 131888562 277081667 428214755 238381881 659120464 60923856 59492162 689934921 513783235 233528338 955620966 394664355 336134648 49992927 976534459 365684240 967961600 462748252 542021298 977874473 632020435 896892190 559153061 343105378 326710369 161798283 549861276 994409332 858869972 867339077 483661101 172525593 718219306 436604094 750881351 918023231 83858494 287815005 111316374 353435722 126710541 346605621 42355807 227266363 274091515 517817540 347385222 882160907 990087955 182382645 840032005 956706669 720875585 6858012 70187779 13937006 108956732 877863869 584081348 243055132 382931206 599044962 406561610 599875502 932100689 693257202 447683300 673133023 271486866 406372507 143274757 820902769 43492836 16368392 247720845 19830307 978618563 681664887 274376082 864795166 843259600 472895581 306379915 863017284 819200153 122302191 668082551 182824423 191925669 312520866 538822134 371781408 391677527 235096362 558093182 381841771 877370298 466353653 417233673 938068071 953063822 752615027 3075900 835010018 351316992 114613300 768431717 537869750 689891148 832028342 119706538 492706962 39842966 713464577 579010630 363973681 496927098 698067141 966273530 101974015 721521976 949248410 89978745 945372644 359553041 781121833 505730685 483090843 889514243 2669090 972085779 799771249 266895788 326154246 321255149 227233535 657746407 945121510 664499687 938581242 429975709 947047191 240154220 473611871 74550656 277755203 539010517 30437333 377630018 241037870 663283509 251444213 974308590 535568148 693956957 435282872 489539514 340490579 508836441 218996828 988363939 875223015 970299958 824218770 629918950 38396168 837605866 160657773 929197984 655009711 305005757 726969185 127751186 319267925 130722408 946257252 392997946 606402626 953266235 586482880 482739943 863540224 135771969 291792892 612449365 857584791 649174711 349836536 969400599 599758648 802694182 856638941 290606766 871127134 533897629 817624130 909989119 178478962 169938997 102101634 40866812 992980387 663086609 675698805 772537822 310201984 443476824 958240317 834624043 486586825 138536650 865782330 523634027 865525016 65936287 697987554 613668956 413623531 128755956 833803887 815702945 129533726 213339988 867457078 443979435 684771701 421594673 157798620 156989496 523987191 222864678 781790918 136237484 594285114 711419166 92296879 804738363 244707696 571883500 361290671 789292180 840589911 938865084 848016341 537001333 206179210 511859535 975183198 605962711 359925684 890508101 185567984 902658579 917175612 4633895 132718972 477980677 987752005 393925922 817851531 901148647 711041190 314387229 102939604 438721448 179618581 990835425 444540067 183252953 949547883 153288424 905315422 538958586 258630381 80302556 480660314 862367158 284272960 529362229 790746025 350102384 593601936 190925997 733486526 444330839 199069751 797297638 391911403 215800474 589675375 462225708 680305153 692386380 261302175 973860337 303402877 445366813 605237115 952780054 425465867 628130440 695182530 530633352 635612358 163073901 281992131 577300669 303206476 794979159 220020589 924669220 873369640 652665365 331124835 428096462 477457246 221756527 129035657 924657369 754094843 885262879 501131929 679117483 126949754 471612430 493645598 109893586 487495614 793303466 268395646 331408248 974821903 207014936 499903331 412808978 106380108 782972989 724902774 320139764 826609769 253288842 82695178 392390518 219584818 34861039 701547382 569196114 520866303 455038852 525171930 250636816 916015964 383091788 803108512 213563607 572037570 641251044 58834442 795329906 553086253 604963981 890074982 819063300 326793460 218680902 160351254 534320077 631802942 555630430 438957160 447290467 487272772 104911120 427107844 734604604 271329833 729478123 437044951 261225037 866728222 721287415 740105424 281141769 867059590 561323964 253799925 42271727 449346352 741895105 438149835 905764045 81704802 473099719 148507874 606110562 825176021 909560418 692266041 796856962 129385185 268687215 873576574 855885251 441741231 638339324 382240173 53212091 743745521 428914134 472103381 136549670 22316999 828552853 312843524 436999918 735849474 441555695 115461553 332413766 376081510 752334117 112236793 985626478 864571907 231706482 574775518 689883239 165578340 465305457 917819849 311033254 601739860 174333629 370796591 183989989 211574633 356802454 460028328 185218327 924180825 801537799 342235149 874846561 871641078 504081529 705058958 341999967 666410787 322563533 110156057 599812671 149342485 80350060 217082408 801348814 385877825 119084462 938481289 176197042 599768346 405485698 230332271 372749527 942012479 859732520 291766564 61551101 399264759 622818496 227040363 71552661 683925658 538552619 312313841 837761542 788563312 453405120 477292042 981442677 326215283 830587524 938824330 419263764 773151418 789075951 645182866 367174978 80574931 18202958 185830252 660777107 183260367 357990926 944830038 143900102 509155116 304039821 227774159 708357034 175884682 911521346 349914432 276669192 786998977 222551712 879324826 76771325 315872792 806538796 855365628 393861906 419522257 38921600 81633789 435515250 338752062 80863549 44859764 810282581 570463252 562959528 18298997 696514326 338936123 28267456 733351093 365939533 175812256 316820283 165499021 141403434 941391550 519510893 682566441 288828425 595015853 231054880 935712896 673766469 859461923 481666493 666732785 838279221 163717804 394121566 384348924 201101269 977708783 987007923 605574232 526486877 574855385 24365472 128233614 532237162 845552561 950214483 178683989 415824872 133457528 459296253 501956840 890798150 105365271 587773534 396776098 1580958 299602427 804745717 648197469 103165907 887688606 750165058 273055089 152910036 266347955 53306773 405899026 489118851 212530231 654090692 562851490 16152977 691905035 519106343 543017114 736274467 92810711 330800084 948369418 375562934 249047990 110349347 418407450 30038179 672424865 255895770 478207974 317321367 40824022 366519968 464578986 894848381 347988622 268647481 441670277 370953018 657074218 507825552 541092536 660749127 776590074 500828285 542799621 462362809 259974000 24182815 822167076 497013275 748384326 295548262 837297577 145005308 733860476 583152047 268362194 28423101 611590232 278611194 707437235 605748043 896663020 392749849 175070799 146966202 56474577 211493115 985976753 127958369 146544148 469564089 543927505 306584032 546933310 564422213 372727398 200158287 183451049 720659505 520945988 804274988 293848438 738477413 408554200 989533265 509233150 2401405 294900778 603282868 358711555 434320696 330026583 83210689 121281576 446286618 916182430 640154795 774368704 20619856 94203564 562656517 175194285 89292820 746088669 988353091 853355979 722032149 556990123 483845195 835791795 66782674 366166295 645733830 233123531 638601014 80702916 27654204 58212347 730494865 310826247 950715576 882075562 127610019 714070081 243996767 928349957 101829307 668978073 859409254 407365050 480856141 76426698 709718759 838221410 198282046 731059344 149430529 341702918 103757647 586317874 494371478 8593404 703744667 130059996 775027505 564475162 234231563 820412262 405932713 833331983 758129066 350959084 836425868 640930029 521539275 623046054 526469747 169881331 600876905 233846348 181892049 172236559 586709418 904502765 346579245 182522655 841613065 546106653 793273577 412627647 818962929 585370737 333919272 921097889 595364275 322878665 816138604 549547074 550850160 770981579 561171522 834306192 137268955 66661992 599887670 711970130 653075462 692537230 656692889 169031578 806353989 969766987 376717826 752934504 562819711 317792345 60460926 384827171 812337075 953245626 438356444 724420412 433217416 748061655 739498171 424857315 693293648 700629821 840435343 128908025 626311278 953884935 417439644 299051628 944545140 668088026 418558955 331175994 803283680 912229495 362059961 893956519 487570013 619610314 681786155 766855462 593517278 399996126 942475542 504449836 432642147 520191037 203132358 716800381 294616236 175128240 792531222 572981097 653785811 2414422 200556462 296520656 134634541 903240299 150424001 805671535 260575692 525097435 234774950 720548682 416601441 169590465 115046060 721801130 678265642 933653791 974881666 893980877 569505105 625957335 924898247 690676009 579191374 667677628 687672025 122213848 979264648 825350313 933287055 821608354 953153489 692463960 234442221 75519711 533863118 919538649 316023001 826377823 860766085 863185254 998254930 592327581 286507500 625295865 178661450 407557989 616949752 404200895 199369043 54118082 528644317 695068227 829780919 488145313 628308198 586554264 747873379 328860909 472726462 154360759 420433224 360311235 920080026 267025122 454484067 530168570 653250791 221828409 79173263 997760753 54456229 16323049 230072988 115306361 470170362 693030237 314916924 668603986 265588855 822148353 71105425 715899972 530944022 510111489 669368268 450891792 668287703 580611286 263295046 734996490 173442368 692093471 72750258 941775982 37576356 678407389 498274593 790040605 385415842 871150714 755107924 41472850 193720839 16537798 449934060 966048137 286778045 127314566 574207678 764281806 5715274 584057205 518032275 271744294 483093526 979687366 10997784 847827771 892114449 463106639 871851040 284071545 874710594 553994762 192359422 960205872 7375421 92149968 5744898 194762809 119383451 205494139 474724707 474151728 737732661 826882474 776239536 728988573 486340424 521780322 614090506 643791554 751075377 988748584 179793439 218289311 545060576 978677562 30064033 599752835 822403898 38005715 303627890 730699200 625113259 320780315 228774655 836460699 598959261 909852191 623689793 475913275 351630184 108216113 718333693 594070945 531844494 860346087 97075046 757411621 787934287 245069162 927714847 431255103 392662515 412840968 178738328 26755683 876597727 826161859 174004520 970663524 707872309 566727907 298411949 974791057 446552331 318046020 503142812 943203679 58054862 281295235 238584248 439416849 868183527 363536692 72013989 618648648 113952159 991995245 158680280 376682206 813000198 643643451 420884907 941208632 901256684 465388989 632066676 576844997 62738149 788249372 771840495 975815893 493398687 730486065 155906151 161932033 261941884 27470497 526693677 895435279 957201217 60751720 226715946 784033871 566851988 317103746 104982287 98815634 321029624 68793791 666425199 714313246 257759409 756032554 303297989 934495851 449347394 728334971 118327035 675878866 756047554 318050152 90286786 997838180 101212556 573675418 22912213 311902604 541401704 20066278 950671559 279566724 28221456 62298673 817813194 148507764 646334612 677582146 791122379 427365855 166149111 911436882 532379760 66959591 10802528 538758170 995942241 910359217 961727175 398664264 485424461 456200444 838492897 956749577 177893812 897701332 187507816 896658529 790495939 31024584 310454707 802700700 616752835 625224734 432063865 137615714 230187585 350936310 586479864 81479653 399917622 43710769 261896564 205060299 281409313 221367862 457728530 815205323 370090711 127263720 780363853 318579740 732801131 277483866 196563475 895970967 474755237 934413089 494828317 705181315 129314752 83031539 875007537 294949779 312617591 448512341 435695627 733594209 579431348 506914603 312190260 911232506 856791328 460976428 356129767 340044107 263606248 57296022 88958209 437856356 280914615 2262454 166024337 770919268 693189566 118645149 268732395 430350130 24114008 269429210 400609245 135325385 461850639 205208698 811294679 653839885 768987440 834652717 344275382 427853251 937692243 312059727 196373960 273213152 909049721 195623685 606319070 74385887 232691683 890865660 192112346 36185434 798728285 566764098 28081669 98102746 642648647 776214945 578241130 889429033 709051708 356339588 983097648 162839859 591238129 965656540 790107310 783295130 385724147 837157463 781725214 510875718 402834203 559845558 620387900 111438043 749011383 433370488 929859510 133893910 381348116 745431408 11126631 148586317 695140781 962610495 112025040 771881989 598802689 654401007 64390775 543561548 159624920 960667546 728837008 697352134 902476741 94619925 41392870 635114770 529414265 131260601 131878651 91359339 133364065 214963162 638321066 678373001 172108717 716007343 902229568 346571292 942110231 982519228 557743970 511508072 278162858 780606803 529502525 508997324 496119952 429554432 885935521 373094735 134292870 806198755 250019058 557691781 816730265 689367252 396245405 389434289 531988377 874393503 899590142 211051856 415432855 341343292 449548691 921825745 311202883 593247770 308032997 517100345 578359642 58992861 738839381 676881802 852954065 587582476 246432471 930081303 46552902 918238255 230675234 194119279 272249792 961993997 350316805 632150740 859452605 406631752 258450025 364689392 784728661 611107476 198497268 501904859 509610529 343996919 588302623 522465015 463329531 714611501 876265837 826999641 367802271 92108627 659942926 510787108 591040120 101704325 416127698 12524058 504599912 628398791 236154299 74556855 855435875 317767261 967381982 764544144 298103308 183592268 901916595 35113642 602580605 207938276 833622274 961532966 457292368 701152139 406224488 649747641 954437977 191668000 370414034 950576092 144227147 887191224 644660806 824999064 598976830 718243912 122670194 614022171 691388161 360482984 874259970 334509307 24058917 505469690 179720443 164586802 940275295 857162996 916165394 310348318 765535906 628447604 389823533 640398718 730434461 568970549 305987632 214740959 638769592 214840378 883292282 336030393 16482373 185640179 679740652 285412769 148970591 368167199 319198474 677659327 909831098 657343513 153727 272459285 675672609 921440972 374019520 794591294 834127186 905212927 473933071 689904909 59849844 551143020 420216500 71728651 211209959 237849029 922444266 182144254 813628580 354406423 474152739 739369468 892533098 582516395 868833024 482731218 460216984 492300925 321061073 260977962 113256025 368751457 703722200 293962028 5216713 35535997 647110162 601744934 744212365 99602557 606067686 502510497 158856610 914133301 326496765 662351688 153015885 130858885 445552285 816146886 974365135 832611842 673871362 586708631 682494483 123597108 950494421 253330239 570904208 106533677 276089169 832874628 91022931 366874422 54414546 784587898 416727154 709248439 326032277 933204243 889070101 253100459 772874832 168751762 511363716 693181666 885868104 49784563 552938459 82655804 870727247 332537546 318126852 511656700 99645902 835562020 918246710 938796962 483392174 333255265 630836107 400711268 741385216 473540629 878317101 974675798 270048144 417330456 884884226 811624810 237050809 488307303 804358454 440527407 924535754 245645325 808396435 171379092 533381362 364983803 371711879 386025280 163904410 414230300 994721962 209709619 172224697 892835574 786395135 636727745 996943092 473824427 293291276 666644670 786214120 599660948 285246703 556802597 39103688 220872492 585055422 12559257 128426846 131539596 449208741 216272618 601215898 22286142 684122783 372231319 836747117 964078512 214019536 659354754 829685167 378986147 739137462 913172897 625292256 960635151 189588261 732515140 403714607 903000831 974935854 704373309 283452575 385796879 315361992 928226115 715891317 631687958 774224823 66926912 157392200 773446381 291817095 565715714 964922926 201327201 36432145 249635876 20311145 905234641 816555317 112656901 505494740 56766314 949833519 443213672 445478892 714639007 740884639 721494623 73860183 784164345 358248830 787702839 542114676 589682043 669428977 469162368 969807595 362886722 442087155 825063776 697468817 831729899 239735343 639564085 892628935 265727209 594373274 912821083 186092446 935971763 255563010 686058886 396832830 603088231 802482746 851577769 346753123 412069685 285837109 479322813 951856092 306451394 598132523 697101772 630132566 568863257 34189937 790505201 236009955 29781856 762176952 57779652 130507035 136686398 42676172 443006682 151699785 737663703 597494112 562363907 213008208 28611049 852363058 679876747 717631102 874279872 863464856 680292255 965608064 965001543 928428429 106400912 968902542 291166042 682961670 594559607 533483981 529830133 991602364 186558269 803503245 434368983 333134205 572400696 363806672 897393574 210679877 18148530 767387 760466201 191750050 799180033 530313881 238966356 457145036 55074114 254078442 502520774 319479862 565104264 509751331 186622914 108952284 169900206 485010235 370631730 861377263 580641976 455898611 362167946 254865224 508113370 88521441 115409372 775190770 198496599 867069009 326655951 994319854 384590776 687248977 118728605 554973293 594295345 672028167 470834058 272761637 138300438 293056702 128642999 88152146 766347593 293194004 457615747 658720892 933525952 517095137 746568809 852979771 255416150 598874327 450381935 45623264 773181883 422822930 934679950 95612423 345744733 639044288 503171081 275144983 733732847 673638046 793956389 87259304 784001040 887188516 356632152 597839249 717646769 880853057 714354691 330781286 927569603 795713768 39368285 289160641 826533801 123383870 675264776 176176683 490126136 623989144 439132390 319360203 646778342 856192830 299456586 159021676 893618780 457696889 119740898 89921354 695617287 117494689 480460681 855797545 161117187 736948275 55084858 772577233 571018775 452719990 523034268 77174666 216331064 354493231 876962190 306326837 546424221 274702847 800395756 97448403 957966078 219475375 404858918 576107184 888751871 93173845 989091018 42709150 965629958 566684260 877511114 630350070 511311484 998624320 178446512 275694040 601238890 573637614 327382175 427987172 378693153 401549460 667993416 501507896 329875511 945173895 80015050 924814137 943687702 371269452 502690491 804849965 407768782 117202274 383300549 876817275 246911446 298164313 269817655 714537959 788162704 645747861 673784647 34169180 314575036 295417152 675644860 211354763 251477842 626049340 820733040 834453875 75153881 101825897 318612339 981185327 581014182 873366185 871885780 145683211 996281044 244396843 6407567 533661949 566460049 694185991 102020080 163764606 176539056 932459856 627240747 24597047 650674475 139421435 616548465 383999425 561979570 247125735 874894498 507629475 310066835 886730998 611759625 579533187 973642908 921263887 512589200 519414579 528281484 101288442 797572500 778372641 376266523 505267995 162868347 500926144 710697271 35419866 519888204 456680566 871844978 981181262 631527831 828463893 485994475 886489481 980391394 433487986 54958057 444053790 532275954 874964609 242679848 766626953 365669769 325127316 19924669 796302745 638655159 992734970 256552380 50449632 286346051 461593940 252292340 242590690 623305980 574115234 978923078 741174865 882677049 57320864 440990880 653475393 231941652 293271109 341446785 481703386 530232788 195030019 195293186 817570837 544158289 709783369 875866336 820739518 951928251 241229922 346489129 468005766 612887696 878856415 741151318 261997651 70603572 538576594 716102914 111993120 519461895 435777877 624042694 824221992 287623345 76151640 411856133 329105919 270478677 272799616 135732015 551460134 251977434 404239284 234495578 424940977 192401548 880620833 166692202 654903921 48064418 883172131 747327453 559454850 877211766 196149040 450701189 67931772 785071924 435241210 327962672 64762082 839332383 818836829 314062624 244489336 716266543 657571507 324327363 518115676 739565146 295385810 911628046 308062841 352900116 212665057 910006891 141403805 4818276 295491436 448285603 540299386 196307239 775987457 589122998 861066306 783573011 573680278 153981845 668288253 314452946 362561980 531334683 293059063 471817424 562277035 536239792 87267009 730588258 529039275 406727704 13588098 612172875 655221578 507799510 433529743 611685063 378968817 820567026 516423179 865160726 748285014 728502753 156964946 576208807 935808707 126487169 524398163 931800826 592352312 964006455 922373603 464812747 274315875 778906910 154049003 323256254 501705193 854747857 554867788 309037697 75200629 809202049 976153828 513680790 455390818 249109712 779698060 377234587 68689444 173809372 822759623 620034558 24426102 326767140 517556267 212714162 415397290 538145037 605223716 388849647 37173608 841618399 945456697 585802943 900524736 309156575 774620280 922478290 75100682 258173963 619954273 558057753 608999714 254524560 810158772 334327112 339121223 161652904 633452987 927225309 567105024 146153635 974212862 52872442 702582014 80662084 938113797 129494102 683463831 497307495 442245594 497851164 426813487 335051141 697627081 523272614 962293261 196063499 517936603 876261297 414766792 454296325 877335260 109821200 27491725 645524337 834307702 775141796 186304169 118234552 464512488 21531336 65693897 545122400 334311667 464796075 217912860 581554979 400899434 785362184 995076149 79349300 398887931 837332581 118297045 807057673 958897215 852156399 397038114 672581123 818144302 215609577 979658993 841733635 315019799 414533724 763429194 252296530 445031331 282122120 666861488 158699244 429059337 973208326 298535698 997594122 261529778 369245827 667196989 53426219 711934775 857454460 376833998 836970996 320919375 326034426 917077876 404632473 675556929 524197346 915037727 89366841 104035314 891826521 235606346 820157010 116585319 795288534 785884082 170955958 385636782 29995899 294343733 780815651 142957634 532922213 478419518 399231916 843206553 454728144 820816927 740342558 151105748 860752398 79446786 198504597 470867208 490351236 169537575 402184646 690850776 409361211 808003308 483360724 695099706 984586967 845828270 383444959 432998618 671515214 159847161 609580876 674750090 314886641 131337176 752139613 638475020 894824307 429334644 357641289 901578401 480339656 491743925 365259958 590992354 737054957 832872940 507916140 145453268 788498934 976928552 730691610 125303475 383486079 860972867 868244582 443844324 733001126 907419599 788455223 921482681 986370072 449831390 853693324 756806924 132765882 867548720 315680308 501915272 726033503 782800577 696762637 31281036 817230335 950347519 163036520 447457179 654454764 154353988 220873713 433085258 363370053 480614823 703947003 392116861 39219224 970969606 321808348 243249894 52312556 299016594 536491169 745132734 908035506 343701857 352238186 845240995 375712245 163654997 765951834 540369984 9934891 649089383 591149030 545964465 224825539 576074437 355162963 11098224 530102164 192544773 222381475 127560364 364624552 215786090 406027113 877658458 237800685 967520952 363264050 131140182 771715013 670502054 559724625 131582848 138191985 590711481 581290223 302033587 463952322 530810391 667909636 560990022 159422216 792789691 230414674 536987860 348560712 176807608 581356358 663574152 262792943 866998061 43777969 337170579 408933644 60142331 717964951 206985500 185160244 617740239 447530556 828546366 987340317 763446572 89974732 762357229 430945543 138332765 947976313 860770792 885524093 906720107 177148062 210300718 612071302 818263371 36751018 636096618 900329912 20451978 587582489 209158246 639272032 313585323 85011737 572088970 560948240 904221879 588954179 419890697 839653263 861403850 338420144 705879750 562690071 544374182 747049898 355531758 502663032 599651371 847529871 569813125 636864463 739746075 577738135 530479959 62101496 64870648 823645063 293717711 336536871 162463178 456767621 137496232 212313870 982020654 634013265 412238108 191319598 585407717 643092029 293710088 122296655 483836182 840154520 584716099 322687848 504609547 366129921 422737413 819057942 236120580 864094868 116765708 779260516 481110383 715940570 768417730 892878288 54576450 377842800 845576871 580229869 530150310 749862864 135391304 200432045 103529158 208773593 613259852 259603637 323070942 522930666 38595460 978233697 228352731 37823151 182762132 133323986 42770584 59889906 333826317 447965962 482906888 686473664 18599147 673594471 886733140 174402062 205600786 238248290 894087200 409856541 566807240 266766705 715338102 219972022 370253529 334937998 176347226 442855943 941354975 854532080 698722633 744466981 519027154 110513215 12686481 527024254 590249721 954738581 889519827 501392129 622327372 588618027 466742846 601860642 985094565 205520857 983712714 682924378 640071319 700809237 349244912 548161150 354242877 105453392 416062860 713413988 370995257 505513140 600291670 705252628 809172776 228769813 558185881 75937681 123963474 255962557 278386383 842295839 679757836 876804726 472204307 265934733 875909794 238440117 759509452 801332165 180618299 94764639 885214196 318466094 414092217 815149671 550804198 888388973 164225694 585118211 86209222 884534198 305206429 494459380 59524747 1991602 711263033 936698256 410229936 34284037 346505621 26672247 393307366 978500509 363602959 784483654 748033923 208452407 734667247 599869486 886464319 135399482 187389368 726045262 944771996 802324612 942327746 438935672 790145230 928561863 476377580 45849821 728427327 357363767 124856892 983713938 860533291 379728366 310987460 255898699 10456069 167599161 106708162 196013933 67285066 733679850 919070049 530046286 630134297 913415075 355252949 490765972 922284940 863343676 69872919 889193446 146080812 872399258 404326136 597037605 676230592 660410616 175422264 436755362 908042086 1884398 257599505 323625944 567244944 521962152 176055888 36257042 801658118 852308351 218170068 45813482 199398483 292174685 799758740 411996174 564635583 782695979 888850047 449615416 272276194 372947828 144192775 28044483 176088119 663776921 86523987 918455998 126449568 899770992 862701992 717567710 517516844 191611281 355285631 104592982 308284695 560422685 205658624 344225058 264005740 424277379 804287110 512849449 867711352 179672176 861902003 761814929 158053405 78854526 230397858 210626416 664546193 715330 251426316 468098108 863073357 17303204 74360027 306597791 320782882 50562674 132063965 646007928 843604796 618839010 1394091 25367714 472162446 280614368 560601041 439185750 979111788 548516047 214859315 476372127 103844291 622997757 131762496 29803050 104142072 908150293 178668316 927156016 636886286 801442229 674609996 138739480 532603579 333213359 758419920 61772912 251418693 492721078 411170699 332897796 526688412 200020882 534801402 704291948 630870462 554014840 554614364 399860039 128480363 897158262 516999867 239690867 258404657 20513916 426548436 403714569 686264165 308715456 16143512 908760034 846344404 565537146 929961715 747768606 375534892 501006817 453814394 483334355 356868033 627698502 752309168 398235913 102121172 185034000 755456705 615864642 909596919 501084581 445730798 806885749 590012468 232667561 125887725 270202255 82816195 957305058 267112974 194995633 275263604 612254737 897018424 242253683 523942086 247924804 363787155 662536007 341126521 930804292 93032775 987626443 279694508 283965718 313573215 577277267 344580087 177467674 473618864 714668763 66874627 897362262 111517380 454957821 449280298 44351300 792654144 172644413 583319697 579082598 224682227 5464318 279791116 108879379 738958460 413843216 364824839 388128532 801822954 625491312 573532330 729563238 301947602 708724274 938781081 869241384 15579833 415163431 644589153 734188730 320139172 62352299 494299331 251515822 685384336 508639600 286324801 122915443 392526430 14417790 318072104 239550941 32976724 513090308 601073402 122838164 267607728 380479199 545725483 811427433 682082710 64564764 746199332 396926125 167274770 788686573 229300696 425331501 126083183 411070101 82979026 966510761 706089578 71130761 824345349 593980429 230420522 625162577 888058849 837378094 653664899 502871541 413173303 872838686 877165630 900498616 97071982 243939301 710179542 551795504 758865757 54997698 472832556 156504197 420285978 822017607 482949586 305455776 597024259 872686610 612182609 997389096 645077989 278686581 535574897 526005378 538037543 920181776 337335416 714343277 417476277 139876025 223717591 145747911 254694892 523315374 716312994 678570586 480377449 988811435 627025521 733661919 485873643 368886190 556545700 153902092 506833126 856754236 793904255 696792917 289376269 925286820 625436509 618667592 908372633 624919983 879452412 238321198 940852146 122096599 672239406 585922855 4888907 943585396 15787319 530340670 62084304 270036013 434631694 419788117 629108043 179390721 35218030 72870423 594703674 640716497 829353063 65903172 51616949 420307842 879348385 88316998 394784370 810059904 832689484 894284055 119372544 240126505 508816372 675370435 529835055 925278182 292377978 211217257 122376674 367738128 405376841 199753094 978068664 668516693 28863956 287742803 697066848 853561930 703152293 853633418 532368940 548158407 571953673 325878665 529611227 86854452 767518489 631004817 359529777 525535972 759807922 414438388 273465688 526719405 380217594 916113447 248777313 125548770 15016092 885256177 90460507 279224284 126110594 973091620 896514769 817720175 879390457 429607074 179903596 130849549 603071567 79364901 161894426 230425946 936127212 485464890 485364597 228469831 8596709 952806588 977713803 129567573 860233856 507486858 29189594 609967824 491140535 868384012 182519119 256093600 894953648 171333777 740355594 263844602 99018742 92844675 711933564 264437703 414232928 241431370 763579529 883796045 83716315 771105811 362567195 215786086 543996362 613879927 328963418 29649501 774242928 582016375 669523289 405740460 950140533 838191400 276663997 127031096 978904604 718093625 75866371 242471973 589337434 334644348 94248375 653352940 540532704 523302495 958880533 779703067 922822181 519755542 895688799 14860291 410177308 686549438 849301306 173353888 832260721 768280556 309549318 691660601 570139690 712351652 96572134 582289580 672809854 678967648 316416360 132896069 467561908 161813058 348158284 525896459 708731257 78022112 918804129 493251082 221655451 426276784 107581114 22728935 169540465 558302682 13859181 460568008 297441641 766735593 868010560 999576317 547074440 230577508 229694280 462184400 72475114 489078543 295792257 292630602 115442357 10946499 850629370 110310095 230878110 601530152 271511087 936123260 50090993 230259691 375515591 839900153 35699309 838524094 620431403 978122105 333145567 706135895 745813592 802501511 700676779 743549863 208886976 26332659 764624997 47350005 7934691 359307394 81135824 67687625 238799924 512392411 948708203 692469406 919106796 870520180 228549736 957084283 44934604 377405533 27206897 188866111 555333151 269310747 120265489 59577271 892063593 320085446 202591914 939711501 39311309 407620293 37266309 223031593 595769597 117408679 961799553 929171617 426549417 146897643 720628795 264794610 40555737 77981123 306375520 972540888 767525085 114048862 194108358 688942074 703978556 921882365 907017218 724276058 737867049 172194466 610932910 986147297 871873911 84316832 613419802 190337891 23036056 600977629 364248881 652871045 133408642 471725733 69925001 380147255 506815420 514378565 886474599 125071307 944421823 904391037 613316295 839725981 155535938 637854771 227791654 342518883 536093664 574439137 731576546 370431847 351352444 650424446 426112890 387748461 328907194 282588463 500042000 294493586 890401011 341881533 550071979 371160555 618172068 628596646 243795343 836296 402138761 327528474 139869632 167488811 498456475 968900013 296633964 313799698 967197933 31172999 823381139 88301782 951856212 305534856 941632690 194038109 216433620 853149646 520303845 904466396 723964465 906233108 879461837 850308597 473348772 124599718 190888017 675708345 829012884 369248210 115090234 297548041 129042856 382528522 549561512 542973137 90355356 184788528 90428054 945633810 437294697 151045226 833807262 111492178 983077039 183172367 764837298 35634317 340282527 826447527 485231924 171332487 942839904 684141585 220464155 215471507 929824812 270802040 658369001 508014498 393172563 555155231 260980858 662784215 268270656 722125380 986514242 341100529 861977869 516494955 827067783 431043804 313674976 489293506 188088302 399275630 747627200 533970934 222741470 161436727 930003022 727726666 952158546 170165517 201151177 530186764 245860667 19325934 643298725 826351271 886352135 784446288 759302853 676084919 38134444 212788061 536781775 347466696 842646253 897704518 637477940 505504343 243517952 754220307 948857097 797450492 977170942 597284718 287272284 388654569 703717649 97863726 816503662 237122615 279651610 849664390 667600573 909024501 525067494 539746715 99278689 182254926 469113517 336594564 149127946 332378217 528213453 729078436 245130255 811910554 208249901 174973507 451274798 522190388 102462897 627941964 738128634 235171442 328703804 652139405 301739002 616109727 603782451 31887896 281719814 863148618 14910689 828216406 870489956 327079164 643295043 854543033 754877132 22587622 305034804 687227518 281543401 794338035 319896099 680198918 163925476 679857591 76599893 939333658 477412360 579264169 503037763 246384499 28013946 391524343 406629016 48589445 509934868 285202322 235444222 319093818 485600647 388678778 509769388 409582105 870431884 775623697 214901672 20423372 572713733 916736606 350906914 450971736 479694736 551934590 691542307 955327218 202049776 485413608 611301964 112949240 227548128 376009945 571144659 104695073 122696467 56614183 541941685 987016863 135653083 515210630 942013140 250366859 769485119 967289514 36773952 123205924 333180417 128657802 535068916 894882722 489073727 774095482 747645815 311052423 641363780 546107837 603369471 136299199 128334917 213912754 607646570 754107696 452273833 537010284 642916375 499445465 992933461 719414333 851267300 978256989 204034451 633678498 145404673 632074007 665224553 133601209 639975101 127872399 186090640 777342653 164276167 912329743 864896447 972408161 757169089 961176470 842124617 776045291 278915282 248192114 830385190 255859134 48153584 239600144 509678993 129831432 893782116 63789635 310055638 596623677 38161196 731802780 197496097 330940807 458603893 808744860 328218634 407041920 539195829 901793930 931430845 865979844 6825160 681736275 747929851 583999955 118540584 440192707 107796392 545011491 82650614 740591369 197506265 720886098 198532817 586320719 101089829 426433582 312855931 977003299 109440055 490195408 61095098 239181706 422578311 865897124 899848447 115233256 777594839 865986223 18929355 637389410 780645099 782206310 554496931 761109285 68218408 587502619 883034524 945687736 476165401 572439052 973191458 600218088 651058439 788429240 24708645 420181523 968920641 64110871 996167728 778851149 944508886 862126239 764023333 840978358 789418433 266826599 989907165 199857309 989923327 308234153 859581838 900886048 970206819 65106716 755415677 120436571 995905693 243417915 405057593 284217207 9572332 496254987 664990889 442471608 880490762 410641299 350603240 122615538 660033495 780276447 768544689 602938431 370371720 94060246 787459781 451219884 25850038 481998401 722653518 243524190 24116185 174321795 284045086 326502585 81418662 316524218 611769939 1807642 797909031 69209334 244743014 214623024 507388942 737507854 720560549 765265915 648740822 537022862 867625007 826230006 571982383 233887768 639132252 196926776 957556891 550235390 257219485 161601266 366130030 115245468 611660510 11512478 144877930 885052314 302459244 69620336 418519490 153985713 209193680 90021050 374316436 618039064 551626941 923923279 624435985 386343001 746733694 666141278 656336598 592557346 165921755 766913894 689463237 197263867 554350333 96161872 337622119 60475944 105668821 239680279 353781913 831414382 602463334 378313729 641586208 1364173 988267633 423393591 195155241 23485905 854494413 404440819 330096687 952726863 599294855 369554777 111165914 946252379 734687352 7390140 138586487 705916377 836870286 851023624 470137360 959807393 316611885 627039100 877138785 455700740 864335666 27763233 603776386 311323532 569475096 345735047 276701938 192069549 458032981 103068034 671528707 130461997 766522108 995244821 988969193 650195918 469419165 266019216 303348810 590579214 373806223 449894364 755448056 412525935 174897422 396511030 282218723 463458536 645646675 219470166 482049288 391203164 562815440 924975856 992402803 641889076 563934705 912099966 93489618 621675240 161604534 449112259 191580391 801292536 711587264 151876126 2753958 315063028 1749419 802430133 895720512 571610030 244876795 701220656 621388528 596482937 767874025 828183034 652373304 659580134 23584442 204772879 246970328 431399660 192181786 889505562 721093117 424010758 146108694 154566317 290755194 643787939 237424178 52913975 545763129 11137586 457676698 691669505 896113258 507251573 938596104 145609315 829306616 525013668 401161523 28789644 297293643 50234312 616533627 801084289 442013701 114201305 460004324 224806417 735528067 600224699 217129037 96618313 377731186 246579483 311816423 602445237 6405319 845251578 839500818 841090488 697159450 386061557 249160858 811150734 30655087 34342539 25157002 405494139 154347972 381756996 896735600 90073354 127617067 104294965 548118971 209901065 379381092 127536906 60709576 981473941 735941337 699228078 417305572 380122813 889838291 202685948 659486475 814934313 478496008 174424450 845019290 383518656 597852497 557698749 791588433 212643396 306301670 126493155 868597613 936284710 876510606 894633534 555125799 171615937 580326486 731342801 762656760 606050429 318272055 123896028 662116244 787191822 312531879 590877453 684296564 380242725 283041764 769475303 573788185 621886991 801848655 332826307 492129698 763464598 132704432 477609917 164260651 407067414 27400939 328979709 632165382 174629526 434315029 203117505 811399723 765085137 663984088 604897541 363891033 996284822 491353215 994042637 368713988 423745047 294657775 539160497 492088890 911216375 142227570 604964764 125923158 477477519 803684256 113572617 641426665 585643387 455114646 950339363 281558781 481803237 79635889 720049440 397414314 354881449 298109940 633395778 823116240 672988789 246630598 40436570 534996780 248506360 881484725 451075371 320672296 455735659 494295844 586757195 200192988 206971382 937075800 14013900 410893064 357261304 998775427 247334756 68288374 668369814 816224884 559539491 153410829 273700607 46906325 419643925 736766913 309528993 280065894 869740272 294387750 126773692 917991567 620678068 234530177 449494099 185615601 164995986 184879701 972860192 688573890 34026395 861232605 970466083 166823056 797721080 776276326 709525073 393211118 817109194 527935957 287251051 293567819 52488448 422548692 203954282 217688930 78530330 17763535 186531795 319320444 150165422 79552690 772571717 451036648 783139608 791658809 439419882 48549249 332534627 337441160 703144585 738482593 339765652 541184350 648601146 533885337 667479247 52729518 576449141 12662812 92496912 448778794 260457874 583593450 412572317 6167307 201834833 269153893 204173846 577933837 384456945 103265049 545619727 666460741 152586342 290899288 136727302 304625160 791756519 498711113 400378535 700868024 641424311 528819515 694875380 67597019 420044353 64592886 262076935 336519435 234112681 551553684 873853040 89617601 983076604 779856207 510138066 163259549 235072401 499219540 400507241 695331032 493897448 951507866 210928079 860694012 696386778 200255960 883452687 636383504 823703542 572779894 995293500 673291722 607351705 17997382 95068914 558884583 419379647 889251146 382158403 365698681 29371025 153027775 824777468 934235236 793615283 739777602 12551671 556738515 905475219 797778376 223080963 106939149 619111124 906173970 494846808 350476112 725668222 731184368 376933539 254314867 482099268 984786447 189435829 670853810 627525313 193845511 587829158 39377588 806292209 820151254 83599090 249858749 438001750 556191488 495395803 300166235 25461362 691272349 509052162 512342491 468066109 175412042 827926645 526258563 158557543 353100668 737496483 615265807 90290536 714577469 980841878 554719818 223070949 223389280 728509468 481029752 49903835 196439908 391277738 163105758 774422012 757098461 822561162 378380055 756546575 183191221 97540329 763615085 795057860 316092092 525247532 708735342 405085759 597407217 441869319 94911657 779544798 992345725 874416067 39719136 65820082 877592722 989646306 654486253 974503749 486612435 8795895 833674507 416600684 64390511 374334214 784291246 268344638 886821120 670009789 367211530 614736700 860874457 426305458 683862088 378445983 90848477 333194606 170049689 31313405 141856860 884149713 176327239 32345886 343016486 777779149 934953336 771989427 144986011 924174016 687096265 213207114 534864135 378660392 984135304 119157339 605153730 165817287 683106310 971354581 495824667 929703223 177668889 31324011 171918462 343522739 614061064 645387090 573011134 68167254 511148242 400602787 49535836 487674695 398159395 975624198 543523009 840182846 566108960 364253966 216587942 236778413 569257884 757227542 37284705 257733527 557661203 93976146 340402340 445956532 9666268 121327352 982355928 501367157 657730014 390007672 867431179 614557122 893483824 101256260 762738190 2377359 56646014 547693881 401829621 301765467 765908966 843647083 958151750 528970355 516214034 148803022 153037882 93179352 885469301 634625439 358908973 379538243 289425737 261435391 406443934 294043532 48079672 508310427 250939710 693361829 187107484 665742592 94012190 367315489 234287876 231956839 382520295 229941131 400509686 462080939 327482780 44549496 58082945 411996353 447774144 83778909 284804585 8612936 426601305 321721805 854039068 451505618 396397885 660490037 198825207 52887437 653958416 550808942 166770853 549447554 715227441 482943543 133390449 940870808 183006942 505441481 271365592 313448858 229047710 320331462 105666287 99182138 304380973 493926626 57554425 156787025 392403926 55354655 440644798 853049503 996934746 481182682 820751506 89306136 974039624 881955316 972209337 868441744 929888284 282860038 562386719 321159356 850442433 513980403 598115689 445123659 158416160 935278701 733682675 853647164 340309331 158914198 827025415 680386704 324523583 188830659 702520147 961387103 992227872 13915634 849812655 122969642 297124522 20269814 630943186 492536546 487740772 735478969 898270645 312315013 959637841 890593627 720005994 21605272 510420150 106793475 159017178 206687760 767983134 617364590 83311661 283821923 534187987 841301093 868506293 834501110 312125405 336769825 343041463 459226014 5712046 801417422 126092011 257418944 526301437 78970927 235253335 360824310 139009748 141522621 698981977 175013511 531734783 93344840 914666189 655256202 169448911 260480050 859927058 476118802 493138888 736848284 74536486 614870479 948551371 332383621 860189836 754967059 63243627 959479062 968577508 844816925 66569274 767213241 685343444 774266005 151843779 297074637 805486921 475525412 376700938 437994273 510890107 933297023 503028790 806253845 667026332 230333144 130987149 241129434 416416647 330696880 581618692 708567154 422641912 567390677 15253812 451833498 678898919 586157971 980895915 970610451 680323536 191371075 837353354 358457920 713475954 187011465 444522194 535841289 944204501 987402587 797170432 576658925 930073745 34939462 656169304 297387936 153795731 257694241 490924381 646414742 671919382 348512895 369692959 474377936 353872474 97535641 750641722 203378603 425372565 785357755 557611031 663319447 910304342 165346270 61048413 990613944 460499213 2318159 17666122 856986264 59792487 50886101 690637743 43393466 803273576 953823712 807365653 283337945 949946643 740341692 273218495 288053867 610737102 138629149 701257702 985989287 813774286 830109420 961584044 460430308 488912067 995708865 614827249 378077731 679438992 160226505 659081586 87610397 40550582 902714668 913344186 141405013 758028363 893387729 8300368 864931237 447096263 524970316 387448385 945391795 305935094 823327945 971523779 944153159 618410078 616208313 504699516 935617623 475686953 996818103 467300200 440066947 717048472 54896814 541235413 788228280 30457060 174634046 233176514 247480362 431116458 969513259 236736181 449472783 219626037 587717799 477884879 277852456 198069703 714902033 89457502 557970220 723035667 4152668 709458322 285672623 970024916 741108563 820679312 836415218 896573220 808157944 895842414 34960125 795447644 297545538 69386473 604119182 938201856 317973520 500465303 284107944 31518124 724957101 915492015 103864356 258988147 261253473 790552076 851678777 887292313 536891457 688315003 106183999 989646577 864093174 406292827 402518418 979168738 546426649 975893837 543065849 623607251 235585675 101833135 663334558 39459342 474411120 928509585 839782386 274917136 128509803 428224369 966152119 609253017 777458760 947147733 306686861 556135298 55875420 334993180 305109256 82249525 467851417 776728910 445609489 784686545 144441045 241860862 885400794 215213055 540499417 701471765 140738324 683609065 690993950 365801592 850959262 920336170 435735892 671047701 61551143 852210825 939961477 59595941 559866381 831722221 132093640 337869246 695770689 420794412 950838009 807168267 843131833 375472528 560903344 238227475 650772675 105236232 4292230 30527348 757790964 971857917 159856520 469626973 519748394 841475112 691261130 420421331 687181584 417142074 808464528 948350931 55715752 671435971 578364364 4229706 150526493 218779439 901302487 701741147 11775837 110519001 865316226 165064225 454735753 105013124 83547033 241941440 87446504 250347454 466993779 427743835 328017937 436994223 697444417 948039914 51678307 404964184 782510177 190600184 938623106 444957411 536844149 758680645 391383700 677266536 750460237 69256757 918255127 733464836 750224932 706395439 299938533 728063380 507595529 852875572 131647594 938288810 582498598 814768882 109149074 178752039 316409754 21399831 41003047 56096023 916023990 259079232 492390431 348272960 348072067 323275184 243100390 82655487 452878287 313693145 812698841 205727918 810509336 921821441 723501885 814028544 534074820 903215718 372735872 483603691 138941560 546698981 437858604 867310287 389200200 894356578 293446780 573229093 56605474 113275246 462535064 946642965 503675794 647436503 569790230 276047378 637563535 246106915 799210160 870291549 887839994 449202426 55324195 908983096 460880494 208574044 223588177 26381792 386338612 911628488 999467909 246011062 934875365 500249876 315022430 453111776 75126987 615910670 840272042 695448076 784251327 496825740 215516740 767666420 865895926 512661529 544903793 873689736 868134985 719628697 288807150 779738105 965298585 621452598 259513059 662222899 88474316 141443259 429117779 699272641 52058048 138321927 327984828 561730024 72984689 228327804 96732918 439683324 69557737 480558716 146671190 964079989 730251405 9811121 889607531 204240499 53637458 218906611 706638536 219833763 432933204 987664513 724991204 547336589 187111729 718254996 117022531 606683699 791092058 606311137 393503489 272687660 154859313 444949288 684103820 366285219 304928677 157874227 545316745 712605356 785181524 613856506 209155986 755458869 163443188 849919189 198528844 645042300 863980994 930978869 424066028 92473110 347244942 441949018 394272753 418321369 599505185 822835611 454226435 962533227 703447289 706410856 492355261 684151220 494860857 401607571 395096041 564402504 40329222 919451600 653992680 193963908 307610036 493549 135408849 531257238 652063925 137802432 801358824 348360466 732083640 272316349 702991870 603077421 606177936 340814075 859640167 34055341 21865458 630324407 110167592 495438951 513215463 711026159 537656498 693876568 324019864 92204560 941083981 73609886 597333218 343576396 318160194 564192603 658597143 980073340 279895113 475900072 202997977 72533111 802206082 147598274 764903002 665605507 796647172 351234354 314622004 13122996 791422123 78107889 931848075 687086558 159509481 31731747 555673250 908255906 839344454 723940917 808047130 694842265 666953947 65316574 95961229 318882253 595777155 565852141 730191514 652963246 64617071 80046611 377340982 846203617 449094402 153932297 743668612 661418444 243343186 278436743 868522247 760218059 854771542 356237614 438851229 244056698 777712272 596288527 671725485 240086556 5069443 554855697 300025128 268091025 841685131 430459007 662268290 330627213 455138310 918835029 521071083 567506057 543643686 891601090 340264109 2396619 328480269 149087836 57545906 570891779 815165488 582564868 488887674 102107749 541827151 430273266 34528991 92425096 373492390 680996432 425625602 287067587 795602870 416813001 414814412 66502174 470437686 200327571 401917954 93364844 343513966 126634726 775606444 505925682 17459146 730543384 425058916 170848292 435171319 574734495 9347808 92393213 897424370 604416013 772258326 391697054 185211884 517122463 883718587 586124743 164438935 921281099 87823999 568745440 437777179 17570249 114305941 273085378 493269649 477215899 45251200 567616937 53665974 459297270 848632960 274170999 886427735 134747708 217334450 508089936 196238956 600587641 449103823 181301115 966763522 584047091 539580406 242934535 121570055 454636947 201865544 310471624 659378312 882902024 827765742 549048861 546099514 977216243 581485107 491191475 760778507 332976192 951674894 389915196 796301548 542285615 402422490 721691527 824816224 203183556 774402169 23058111 997415276 597454882 476554218 539418886 201819538 526978933 607806721 805958330 508382309 911529670 139781774 481628660 448438218 693186987 917552086 655594435 916354048 664930357 600021737 648258770 680295160 642368408 52779959 290114565 267553812 681802037 919580445 883802051 993293913 221047286 32245398 92392814 685001737 302965634 119716964 268470177 529020759 422387888 552263941 440535475 977164088 79161747 108685426 845822182 867688985 565821928 765143023 115651378 646858956 481020781 797594119 75476547 549034993 170765385 85867072 634807351 340476772 527672905 2752914 142707463 497074959 19684700 292936613 807746137 571956938 507343150 105700042 765433756 473155750 180548443 359287514 686771521 20273944 631527739 543139242 272007992 824283004 297014841 692285982 781043770 730799285 619501962 794931923 889160180 365557588 106476864 410670017 223660089 699270870 336358031 168412384 195939123 310293301 952685410 861203434 473589340 85932756 257759446 560200782 797829912 508811179 839142588 492414318 995615518 104663026 883686137 376412321 646951530 866709149 458138202 248480242 675736239 357108279 596985772 894277914 970760388 324031426 950331186 869142387 485316639 860648121 625816907 914904482 263173427 6270884 26968412 288600306 718566068 113563169 420517749 6866401 723709201 180134307 173635356 858553978 706727002 470434353 31232578 594137095 148188272 20335064 831516225 653913895 72999404 103426076 913833504 373946405 28657492 321094443 148964450 596245684 119555183 25952772 341162136 848627940 933128923 289912721 896858271 72380536 32304460 449173621 99995274 430811790 930639865 749212291 898135349 11068198 760950315 132653259 508406237 666122366 615457369 457548360 569008801 120137752 560590742 818668717 703079958 244439207 88745620 635101472 882897292 787390041 561951531 701633293 431573010 607721442 820021881 186113742 492070141 353435642 790554386 70956949 641829666 173368181 307178781 635076595 842278703 951669290 258944425 898665938 736833231 170075215 759461278 25036809 277837516 917772401 922587052 136765001 799894987 346712723 324807389 316808287 266189537 472035121 965617600 260070236 800265236 573049283 730720216 647192196 795219497 170481498 539411864 277541726 401622782 67143811 476861046 899715515 555832538 556767310 50013827 414194147 560538116 581504027 454654049 916340512 308588052 832646751 470142415 208932036 998258344 338170136 926825267 490253604 937644518 415665498 865169496 530351980 688728933 984653135 945057304 668149640 318261388 662514155 590121960 919450733 849934969 935675895 444801503 839811766 406784861 987672100 891351051 137773966 88248059 133614099 608954059 733611935 530691519 765732206 471582683 950145949 926057914 235071441 72484752 845195166 753971420 734728055 758212927 328754662 292000518 717891860 732271459 138121622 4642269 664005319 691509198 460147344 220607574 27752673 155097386 486135721 352984644 687558299 945288131 31468493 417887961 274518377 189648827 84360872 995449733 760570917 864651699 66769983 717818456 249614604 450472823 748818227 826782946 751301120 387873366 268079527 469579971 940652767 938513752 701489786 49874104 379734105 326264216 276354335 654825084 270066368 324469062 558739806 117152297 719883414 966234192 561229238 64890565 307932212 863945618 684940559 332135283 348815073 988968192 311416844 440278704 776359265 469165415 819234874 259579176 317408597 678292990 217055547 620661091 492716202 994712958 177568170 197947108 71501439 64937649 195855375 821761037 784245256 552613819 417790922 640922391 933074206 232462908 251673574 398389281 157804693 809364890 426660355 631099734 304240761 212449503 447246392 212575550 606460641 975232950 827711554 189549199 858561131 857039745 812837973 14452214 84878120 372779364 185535847 308996942 124481597 237342776 38308319 935577317 882800546 573445775 255865187 693740085 52004414 818384003 8403502 849299950 188464364 579696342 833282834 921468571 621072085 461179245 441373076 569084315 21548668 327593776 407046109 132961283 936439113 582109522 587280925 85143626 502004301 898852296 898377020 543180712 806101756 628827676 348347530 504843167 251119199 746118009 361145920 556380099 193677030 751126567 602276581 750225558 124994632 571460989 499741120 155721645 21553641 194548463 953271437 399621255 273175003 128212785 320239496 686049210 781542883 622340663 367423578 238344587 551418532 905955520 905927908 755679765 15322966 439332423 719972955 702016675 840903340 366936792 454218218 89049580 880742026 451233215 134851223 442815214 274301680 675427598 622936843 473042738 771806005 870559461 656572106 886187626 490261442 788238397 585082185 471266649 155384688 672899261 481250762 888088655 815639932 741243339 253315502 729853743 763354377 665901568 824915496 394109188 291925965 481712952 953165061 435396645 88447336 526461686 16498435 815351204 339755133 374186704 115170382 956995857 934813830 446514907 519699018 998243634 525323213 729793973 317979721 143618178 44085470 435997998 210172378 101855529 604010391 543538870 904832359 542133923 267926335 743076489 512620028 614462335 256378729 137375065 195668159 125647129 161400898 197353496 351156125 933247736 44062 89254589 98092375 918156684 629529842 970629964 400056625 249486052 266436981 194832710 903077599 883137700 134618990 800696976 69366810 32220407 435212684 845754977 748535818 699251011 165165546 751290767 753649254 722598534 435098829 728055941 484605371 529460486 649109993 530814683 327704900 893137008 809863002 580138171 70235232 966087849 59065593 12278594 518168016 403130590 540905762 721478496 515217438 193754430 883276652 329031236 309459859 890033577 881215758 502619234 732922574 981309793 69998579 927668867 523677207 480390629 686411019 942407917 992860143 506121612 693914171 833370095 797900175 121735140 395512708 535237904 679784711 600118429 43305789 140931949 113549005 360216668 459722347 678713964 731681522 158878782 177116747 840928781 356832926 544537323 918253837 303455536 568752029 627447333 713721199 672521695 927244958 768512574 684776966 843775730 144356897 10157801 419698815 444123095 453433733 995190412 459911441 420882090 395941856 487468426 169543652 393672448 630712564 461498998 359392425 168880139 980494239 470539507 619612289 996715308 73825629 743180488 46024870 485032356 389326056 526327770 29973169 739739306 518230066 466087642 108503553 140771541 44509695 140130691 929887805 149273553 813376546 757163787 868133684 105316635 291863648 755289253 567064098 693207492 104500346 761334390 506070025 230042016 672686486 322590015 627734549 984109197 498048614 266419371 871815216 295223086 420442585 663815264 262603544 577863730 879204586 952445171 5881585 579458055 685147083 678093017 252767688 589256628 88235494 760637221 256760498 68395373 462891784 417241425 299923558 86553470 908793815 969578417 176111108 584334306 817165222 379060179 95065992 533299944 888100851 699596226 3062113 417214277 258228464 423663869 324976897 237387511 852052040 281974396 852302389 696729740 427522059 868444963 919504486 187717241 431306378 165971491 777938990 28121554 7357900 854908201 163620139 335879728 452114112 469047997 932975655 479976306 865521127 265502750 402261193 30017060 735252589 509817827 427319184 600628317 563822058 915568006 679447381 658730004 807200914 927630041 517227795 736476649 3955734 553460483 586129815 29551738 678758722 929755648 562309791 32037296 688794452 293915971 891853620 996748537 855599915 722196399 616238104 830325718 170042111 669289233 780330689 257995943 285395763 771031382 755585862 840733816 424138507 851941848 832187089 265565529 216231340 556137502 818033845 490410521 534405428 229174094 286022084 450150857 317053234 532563096 137325546 520636572 474458498 499599208 982620803 227775630 762837719 660646756 398569316 75265550 181190371 844485572 328612398 293351866 431405867 625699937 554792154 479642976 853626309 671418759 175369126 658244801 392020895 254530360 803932622 896552672 2631192 225407867 553505906 39221021 482135644 511975201 638135795 600939242 238706234 745721486 842091757 942627568 942819453 579076375 351513477 912304022 839929674 283284904 898854822 414531835 902367547 23154223 964152932 481616817 931076880 345565310 875486914 139266994 267355251 255573784 529503469 88481589 338639875 567605719 227931975 412784900 730322465 198517155 383394189 951592127 307477349 931707581 888295989 699561335 512765477 633310672 610799583 671409577 159894759 182659199 4028292 760278343 505316482 872084552 745045256 305230840 538089965 230163808 828557715 390161500 840310079 374432558 578057987 81586471 875134302 846176626 339409932 894949015 927608753 60459388 815618615 104180873 258219804 380209174 18028046 857942402 607785955 352305118 32088429 61562313 453819417 713897585 304702928 240567394 391162762 475184035 512486699 954540501 565377934 355379537 644780544 118715455 105979666 351066545 747943047 749955848 603716832 42703442 921306872 437333157 273174072 479535398 379457187 381159661 153803792 972278288 330270255 658633243 799487278 19826494 51753183 641517876 378316916 999379236 247581090 768802503 785585903 31967701 236665717 683447210 313312404 592202253 232811717 83625315 110643457 426541708 319166305 329375398 170310563 457795675 203490238 850039925 969305527 223624616 619689087 657634989 790581204 273847083 989146557 844511911 960919141 173961921 906886239 233937330 896933281 643279989 893289145 487323185 486217044 988549358 970248431 479651667 706521254 701065514 612730477 884447183 735095903 988059943 598440661 348084297 719041150 651961048 368238827 587038680 811836589 914298675 342410994 490732350 321945740 479173376 92378197 724301869 224415043 4614231 313690762 178782627 358457947 963312672 187605093 855453576 729476228 554274554 98952124 468070603 309038164 925883967 260213558 183750520 46239801 121079976 309659272 992728649 690817412 296533837 110641385 689644116 562339150 67759374 415264228 269736824 252711565 242785343 1813502 901466736 401387307 994813759 333620985 67227077 490997945 769331659 222318379 581884462 241800306 861824263 9187591 788844071 674004690 858705711 158877264 200355845 558530728 245769390 744440937 409918813 655938433 800532395 732994908 234426956 75586470 651656914 371930375 948994098 125118477 920624884 727403417 599182598 85817139 200878778 20687783 132566034 245069410 171852745 565887494 513504575 822112490 312458305 39105510 150644601 851516690 393825153 401044763 990524783 75454060 152787361 578588418 791462188 417065831 651076996 735921394 57143967 826031033 933218548 773185515 380707493 974880829 764025926 544215451 535193581 716936943 239250714 672457033 447797099 475632937 12486805 10166981 809328883 630797624 931825667 760177343 441015685 207056587 197393200 113498906 674329558 40674737 637426025 904634049 717894536 280699667 829820295 877822763 479594153 569350550 114773691 386498653 510883024 68071839 71720223 846385404 79848628 41672288 327105822 108398438 309575742 313655276 513202505 943568626 557265394 756467045 890075033 558108852 648604328 192348087 955657610 755321273 996388312 143877549 568050083 207185536 599878267 582568277 603826992 484280514 122772564 914015349 184144480 942074527 232826014 39958353 675381481 983947788 252713204 761782928 432757127 798477925 284830408 120840237 28011644 49299004 517633582 151633712 428704058 660973753 607250713 680595891 435510524 98625950 595091131 958598600 577104015 995136590 827679193 14846960 917665448 546523001 805418586 233703480 308952797 131161766 88365783 421016069 322008196 915709589 793497739 964338203 685952095 696550807 291806042 495463823 212151931 350378380 814497372 866637020 658805670 891869989 668144466 811821782 768579380 417564535 32495320 883951707 550015591 724685551 615618121 459944452 920039487 214765428 61517565 242702321 184668592 504731435 861902613 949149351 187146487 701635783 302474686 118091182 95657790 842987855 282569364 714015607 323251461 860679065 823942051 328933634 506503310 629708415 131971965 939622962 149021772 509966287 762353778 138811044 561048547 935466126 183553737 337064367 604548559 877526526 639310119 828784969 743566557 401106825 393130835 724123683 454231490 107801338 737570079 564068173 967873154 454276301 358745374 585532713 485165599 555184794 83441870 136131449 785144036 162407527 790466321 278633877 536476953 465870414 397476437 970803955 633633958 464207450 797496049 182545390 749343330 964766464 2919349 314015929 845734414 302047759 325359148 502670754 906795177 700649748 425756567 380257271 522092714 149014173 914615748 437544046 228195793 511773115 145515522 962497396 444775239 237349216 488162216 41169158 544075532 329965445 657386885 964802664 29309721 662649239 535145163 343286599 133319361 616083110 35727498 437113474 244310609 761609746 621539275 35849454 368665230 729569983 413163729 112178183 594947824 538660568 191865115 203086084 559267720 537837992 176817852 310545916 747555760 197232762 436031736 272827577 873354111 864086945 825231256 1956191 921710241 691032723 416590791 289237238 867941056 401543384 377458237 264427949 907453873 549235442 8289456 518743560 499103160 910175055 35148433 22942394 976882760 782457974 612747842 809302251 722556365 358560493 317058944 202563861 335882505 562379539 333038452 75712774 66517386 313985992 632929205 982454029 127743146 499696082 388177681 919602836 489240780 52882234 841144036 416508712 292703883 357592995 135923174 824666054 480348021 663083183 254860252 892489108 183806581 648671069 875383827 645555594 632798010 803172462 148949870 171655023 873956756 799146193 484430731 514122887 177236823 77716081 543268463 264918151 473771719 111750764 346380730 972437103 381413354 992821897 272484522 73460586 17773491 892513215 706131225 793076142 721942922 570322360 523979711 215324263 435925620 85896636 176013953 321893684 925628875 314108746 766978157 122979842 241044955 339596471 991988714 684858641 644096652 430176963 588563869 358329706 366787101 85695 300773325 672165118 988012385 462535802 283019135 104257173 88870287 185489644 538019291 656959938 78684740 689930738 633989469 601681466 73893303 879673712 859099230 625366536 592669068 372622057 261032092 602201706 222829593 242757067 105048172 755505331 211595561 801835861 915461557 596351815 500459477 234908615 337910117 111354330 701061499 630163585 621029660 143830133 709723615 653573317 444759377 414700753 550648138 335078426 181882549 545033698 495787677 11751668 776019076 848426386 732145687 530066432 315328922 589613459 373384999 3250044 544506254 515460545 787578911 391327371 725661745 50259933 685379127 719967282 269233142 458980045 95029907 906465067 31589435 443701280 437443443 12396827 804270195 112809797 53982828 856835767 234760936 675501494 693366079 528674321 186491950 862936448 890569150 548747638 573189985 893085255 901262908 381575887 14875211 144730214 913229088 856785531 330213137 613544315 922885905 370040384 875807906 317934679 370149332 407060450 877754684 919861970 584429286 229736240 226496659 423588582 112561545 548208468 239521400 659322807 418894157 451958014 119079919 455563889 868028772 949073361 44524359 971075212 672646725 4240349 59784483 558411037 775228105 832895620 805952518 426866086 986201608 670657343 72106949 875853295 340466868 550973828 17298020 653172567 956413318 5152210 792636178 557710962 435578006 633177752 893245189 748326312 845398352 167906464 911719786 600672225 836064190 623273495 617080581 641495148 49774543 376777233 683494106 30297359 726404387 209629523 219188940 433615597 462469106 962440229 463895075 306887222 651501250 731821092 726552046 248400716 588156647 332813618 20128867 598497070 790511203 943636050 222270403 712819478 427471639 948815955 673136031 538251775 522210514 842505758 685944175 824493019 271260119 831572056 160446082 841407666 834328581 871923535 966561042 775792717 425862618 442728024 629745481 423075414 875807034 998211856 177785542 41718334 543403699 806978721 853308294 307604443 744930158 222033799 2209105 917177891 246145015 836377853 729880794 303294997 420185286 680088558 103627673 248564238 457651311 920450711 274734286 132641372 984170309 804267835 740868772 388677911 498058454 47617993 615610422 526165647 266810606 170132524 572941135 263068678 57107108 873711932 581332187 652348328 655340460 855408677 509926879 421761630 59427663 274323980 179497342 332479827 885591109 955982391 357416519 299671466 339179548 407133397 748365004 624175362 727380911 489677444 193623792 860829034 273746775 534486401 503470133 139580899 892289122 490256692 227510030 752029783 735418729 612880335 669735149 92645161 726853259 46407400 257241028 987147906 825829470 916814080 316456301 488791413 274151032 155044846 963020750 846490187 5419543 702975286 404326717 146347773 263177527 589772786 409391280 731783919 87546812 325979413 485310195 772324806 519473001 136244314 843423504 644616415 969052390 634181312 879267809 23459668 667986541 688738397 328560704 489015682 164599531 996625127 44099741 372723992 93610902 458511853 663432038 257268870 704259451 430717337 813570062 532595726 859866645 797845134 452333565 777134931 196488319 933323759 156905102 524679046 637954411 948050581 452143294 217097049 144412059 540904726 876229759 381624373 77975426 860503585 622305030 965533862 571330287 352059367 816738453 107358624 732466052 425552362 767878992 443761210 471559504 896274099 168701532 540386305 362858120 187865681 845851864 620680013 685679632 694544349 731226433 783675259 743924048 185758118 894700188 971145804 512182792 175272524 932782877 43868349 929534093 824263923 853045617 233621712 284141033 769570188 197704268 966432920 222962510 969331288 772422375 418101693 740737226 138751051 715417376 627752499 811006393 669232550 40887887 717831933 381542991 427004936 581906712 331419085 242167909 64226678 224919156 277188613 907168709 976278169 206543745 603482366 423811508 715343572 820156646 320742455 254691703 555588130 389850396 829758837 816140594 343149127 39752622 602758670 636139767 724268182 935924689 736528523 623473226 24809663 466679741 275397515 153769092 275797756 721454528 292503919 241861261 59742490 239971464 117568394 16457732 314330436 698332925 793882359 940810465 482716802 58277549 281829588 277665427 429452250 971396019 311446820 887918845 287062891 983687336 864348506 174460619 281732779 818264211 826739752 765406712 652109258 461777996 97653541 882130722 119908546 240505455 962561198 883881347 333051388 864594214 247712333 38490272 455755853 390909546 449754822 547943012 337828989 994473850 656984181 556768535 604386818 454562131 626990339 765228385 992693330 456041213 864193928 524888397 383127334 963964583 937325639 446905576 579159731 615534342 243847099 304683411 130225675 103460256 423918056 280884686 295824694 904351119 797547606 660102818 708786805 135415478 178322289 565994306 829509741 740235504 649175773 550494270 173545402 906709384 709683441 882276745 320797473 551382994 237360887 719843388 30694158 631841325 225685063 421057449 620825281 547176541 3612681 322432159 691684453 153821454 300503382 984159289 597045030 94706650 128656224 809635475 731702686 657220760 409414722 546689274 213143314 81378787 889512307 456240216 198362133 859859405 213951487 497415433 249276250 359841437 203666080 780522937 704825962 581635200 346662741 379163711 303598249 263621822 620936297 988250937 794775396 920118614 909368615 520856665 528695168 85988263 169694378 673904907 124817712 788738198 396900901 459707596 669267534 511800023 310606410 484632994 759818537 667265753 812317688 970192077 180197304 210855223 483742199 551459284 608200774 241452574 718887636 500711582 455323632 553923565 252962572 967724602 407822607 462539147 131702548 637196287 972928672 960744330 810514017 433127320 810889173 755819257 365133916 208261199 857790259 71809292 370189853 12732389 875189625 722239357 194858210 307572795 509952663 388601855 13717181 867389414 589413952 698561729 106697957 66834426 657905963 40898739 827343131 399749762 679077384 904586331 246672322 364567565 370961594 998327305 232764250 87469266 670641809 896267473 566492033 135447457 485350906 353673312 410364373 810835375 400647548 223394162 944891632 414031760 776751999 609311149 729170272 471596730 999783029 61904988 276244150 78683194 28627204 712513392 293389373 845889398 102654295 632607780 155803808 759339693 844639766 597315728 584485867 361006012 939811299 414750304 302674301 381608289 515310436 989371581 71470977 686900483 377328474 260243952 989563719 589642372 195945793 702972623 9594259 543932250 746813462 883637626 226559599 137462198 628845721 469697982 706587670 288970781 208712089 715934883 636763818 927375694 271346426 587386626 112600242 241861977 493938018 223443019 350380122 575772482 43183360 852216950 493672083 824661740 51998136 308369473 686190219 439682300 451523954 826640634 97041539 319876798 159163544 342214110 396131282 962358918 297573006 539499602 413605955 791220538 278138755 671163379 57559677 857223303 393987516 372792454 844509368 283108238 58647926 607200832 564176584 303183958 103827653 479519280 128904812 620575846 5249230 208066939 757200031 172501424 153766712 541407935 952642427 855249690 14808110 116287498 779311440 478289300 999488090 62339741 120137806 885122567 469121731 892290653 475714010 895372205 87219089 657788093 466598698 39321260 21131584 649911849 507948006 581877467 854746641 205470230 639802008 525865791 146797831 129955760 729827977 657554349 109286695 76688395 633665042 434361201 795652850 242769216 379495838 118849704 341424133 147201491 47625689 376565464 917056359 114694280 839374804 448253221 26543951 639371113 340076618 710789765 295501784 281144031 335545401 494217593 386592816 267413340 963851720 960582314 500273733 621027054 60392079 309007829 460952826 52130166 288204558 561196729 89994377 236423765 157226301 436236249 979778163 679168827 10753791 236270691 407527244 315943337 782349896 522589851 547607209 134330640 70478454 801726025 76488243 394023384 12573041 31974566 34471180 43993364 894778411 563301719 775869996 290729063 361660124 321930996 473532108 801425235 222501374 459731565 380696934 130743721 366905800 545534904 437335125 119375246 929521822 696654209 389324593 190799848 485596754 105956404 900678735 364098939 142212473 872591669 270527001 779546889 507028035 879304029 350845815 530952331 189008089 882866297 799496213 245165894 910220823 447994176 318226824 144085957 435374332 854717000 139870660 592886673 773131046 358542086 413631653 298614763 418892390 153516139 456286971 542882308 606453215 364431066 960630869 262889164 823539711 481997843 93618520 132622621 267875075 43645008 580296971 708479157 134484518 99800433 949079976 206399462 118070924 51253725 657450135 239713669 471054522 456922521 792969203 102005033 517775854 926547362 51392288 949330173 827666872 242551704 225132673 280788594 922914778 125751514 759931793 421236334 309130248 580817998 641319924 284907833 153146658 230574612 743309021 745792026 110681270 56282370 607234653 866683211 627472501 592459633 767982090 482275382 763209336 966004246 151204923 876236796 584742641 452870769 416336802 841407726 138677257 288207014 291600326 27251237 705343302 114202844 225346081 384159581 144884729 353782382 402029969 988071981 745696242 350589554 580075715 679467738 491847008 973482860 745249575 514134204 388970597 115979694 130464085 845230985 930656962 553177053 647471322 945955638 684226567 950764509 751430067 754999275 34420334 491420217 923138537 903319539 597817338 951454995 792669686 748155104 816825039 586094848 315121865 734701590 101138168 696590882 31917337 321109910 106319666 317346847 790485919 553845535 543204645 419687924 708251813 461382384 867026215 485448900 10533578 826566599 533394668 727491709 152049525 516330488 918245889 538622094 212112913 986473054 697031369 705983545 605656429 662920643 675609478 727541409 742383824 534440853 358847462 104096261 960150193 961254267 994555739 250257307 319449366 722394480 610693194 461193563 428647040 475493672 775532948 477517464 348537603 742883017 617481455 468463689 439031685 378033029 988058593 624069727 415489313 901929456 474311450 199749379 90822312 716494831 163988518 252440911 733108082 274589008 783719658 693098832 584095854 45617675 714712918 175556195 385298030 640303548 319215104 41929054 860736710 376626867 794819668 221058814 463775092 504125209 79604157 765767400 238084948 280472344 548275393 675664496 333531531 96341922 965556807 321225232 954464746 779675799 431538765 559767246 698921768 203539434 667678163 681284940 946979072 27235939 986006109 576827690 267237090 110044549 842661458 802885506 437571639 167044318 265201622 273928473 239369732 844136946 276746483 891266085 332067869 928543948 769873944 341707635 519681427 234475786 385786555 73768893 968928671 268343243 887073228 809293046 15511740 804286049 917163469 375002674 907961768 277062646 861741921 983159189 61738881 356509816 386585679 972705883 620331476 466674595 254805422 576635591 361823842 670900509 359212302 901782721 933442619 729007866 386545981 463587560 366486783 683655930 249456369 126645311 638394891 19278304 686584401 62663276 285533596 378688146 326277812 234300263 306148405 360118940 266459934 167204228 2409848 359442290 278296396 781988623 795525602 35767599 390951001 262701733 52632709 401453587 905874967 462059624 284519769 209073151 646915140 903396555 450654009 657460316 960460518 21149383 338492427 377070788 146975323 436727007 817132733 734851340 172441036 53788341 733097101 395980892 126324180 96467509 376058090 875419733 534484879 174505961 192191955 401830513 161063862 463491831 971909281 16250571 238598315 665942165 945832136 971814575 401740020 950477047 178147727 286540152 860756912 976939046 647373488 612346269 335877834 223796806 216510170 320655209 332322804 975622765 260098625 154362757 363402647 582790508 735938157 49972057 618500919 669169662 370682688 443101860 960811992 23022410 637981690 423615059 582244210 287431951 479197750 624564416 264881023 109076433 620329038 252655207 692545656 27869013 680545979 426511175 403181217 674592597 82457493 816870777 374145404 461867755 443000990 105659218 651171432 769722315 189604054 44803814 139965007 597713644 413788266 435680540 221740212 739808004 942976281 59706081 948548403 66654664 22794857 872211380 648505914 135431256 299873982 124383004 661048818 914018068 780184390 289727389 551477838 106040258 63812436 280199610 482062047 284840002 884759213 296408267 209122984 891042152 265477082 551868014 473356453 503026979 581170711 865769377 987801904 310392243 678978101 232842469 895828829 408290020 812372589 934636049 429510077 103783828 889573076 948443207 265381724 662600638 262607399 545995122 711108428 81424783 998154902 936340388 754294318 288523286 400336824 661585734 521367543 160897209 94855338 878771763 964983336 36970999 272867070 207871101 287238978 725698724 248429315 639835085 161088022 514359644 28594770 606243053 250093418 173864954 961057446 482964418 788985651 763753953 435637019 483459505 525125124 589895871 264143751 568871749 722306194 801946808 752149534 50013286 761625164 98278594 366883936 289170384 312238257 456961649 817275239 380883509 604415399 863733024 375701094 891986170 518642115 916720899 827681372 625861530 567174381 992214644 420922902 603862406 610127152 591803964 974514917 734457355 464776443 383770161 684699505 149506123 45674276 413635617 633535872 291611260 97005242 445183729 707543419 409792917 791471748 343788156 669009785 102254631 488664001 365557669 649295106 178343410 589459739 765348204 23565553 435091101 656754425 349929580 968699935 533582349 13366682 390767146 100499603 944833711 63207820 21069901 902510750 821658699 395930019 910801182 810724416 738776980 733950016 100754189 508999351 536477676 305823499 759339108 452930968 485828396 71403291 80473009 445232637 78344275 665365111 780678032 588052495 875407134 131282269 452058528 944997522 727449775 614900356 742541174 496915907 237500409 937179312 344211464 739728137 35154853 647551402 390614450 345711496 142850029 502265488 792489731 605081663 487520237 401758017 169458547 389522705 496531753 176088937 393475211 223727568 461863318 97003672 395634076 714572440 219264220 903403499 341337077 717906322 467361036 858069703 22819737 175210674 898870768 243351204 266205716 878812783 357934869 134204152 702034774 76461334 927812460 332286116 475255109 676758315 991881337 901671930 396808607 685485824 285314203 262237427 472681291 956963673 856404936 962394571 957401274 140555461 387729253 713303139 797731992 205748169 762412122 543977301 395444646 467414811 7965012 73388985 357111592 945220540 564048467 618316161 833206061 277454355 504924476 272344171 992556995 634920569 97684877 750832187 448857820 993358182 874412616 104425321 830669694 819073541 116615455 236688970 161520166 886586891 753249025 828463727 681532989 297659418 955539087 333433000 286068593 315840955 816507319 870599262 252050090 42204296 800001624 973928961 855834865 153285144 992701769 311717511 923488411 581166198 456598956 585698703 483212413 738444032 574826234 123595690 482944774 391814664 64461486 428969027 609638342 636627833 370428849 593076027 720218959 17918481 359256425 493476264 889282448 783462062 265334164 77173556 573838618 340663012 780094387 141676204 495988826 962440991 368628410 823690951 876090560 792416863 250082646 570088504 525759441 773041784 172878402 917913437 126750208 480815133 279863018 580468882 951712889 504501638 923677778 737374005 117459563 878946959 44554122 985545060 798488231 679196318 546005963 35312953 976492283 450576341 104719117 915231297 881718478 423979527 863227887 891292784 118043001 17369798 907869996 470228734 410474358 855345087 168713563 672239506 347178474 82295366 960742446 347823665 295815832 525348604 367191574 347532073 112881817 635533244 615085645 558051790 755804574 545896229 115626822 953610861 128833473 610719785 800345848 261449539 65458392 75710545 306531913 326666947 793632316 429087196 237836242 672523948 858259116 117182139 144625946 864234516 423222062 536947030 99025370 639176392 130032161 903461603 38821714 775884450 561520740 113857326 538669633 518873941 244925387 281847415 539096716 833479690 7385729 761040641 512407362 820636379 889227376 458580593 784378327 190633239 979496416 942232502 570875589 924218149 271561031 34677450 254893838 267306584 322069748 979139758 46078872 539081131 427320900 940799047 819330966 813791552 421914441 936332464 600813933 605984990 717918970 57562322 954420682 121157020 792532466 517926036 14537802 628220190 865719851 812628797 76555875 292606113 121368904 590524897 449357108 705703345 663253330 354988868 291027615 151039214 966012058 834459378 439800423 923840273 866137173 322758154 400287410 274399936 510904916 423920552 25607765 364000018 947338628 696333078 988519607 330482188 900876603 750071226 253962170 181251957 544447409 892188545 932339142 602455500 349736643 790819868 586384949 654080772 603018860 159953685 331208171 170862647 908478612 54925643 423877708 297282365 663341236 285683199 446278221 418180043 930164142 295452150 574150953 156737524 39488049 327125115 199972313 396181975 699931353 92992193 150353152 995365910 762367669 995264077 362765575 144453292 365748470 1577305 288513301 955683242 108934793 316353946 680139353 317724861 596897633 408464128 714101972 694019800 535689446 727578370 951355072 396526760 53219275 431584963 467118487 148664574 202353377 991787423 767885532 503666608 822417586 259263020 492430670 731489165 838754672 18602941 142077465 823662094 570016921 459006505 866227766 104146824 791431723 827762777 557486136 695729983 206922404 458426380 960524648 485516531 79077086 131942784 351239689 770243404 117268290 604239998 671433955 633590807 821250496 2469802 424359200 722053353 232816351 250587126 816307454 282299665 287889903 403842117 51579496 697355127 945461264 717081889 544816077 203973818 491184633 444957874 603276479 667928242 213028878 265773183 333957533 828054242 205998201 877270410 680138721 519127740 383618628 290886864 570960164 461566110 363872437 789036830 732611741 940387004 817155657 420837171 537255113 912938631 112324673 864547284 224794913 95455239 884576483 559774516 262218233 712199715 68797869 386535420 543255773 506158417 511458441 554039372 635850725 603073777 813651737 676214604 787209896 436406161 616696987 270504225 846865695 349328946 550854335 621239967 661118663 636299760 913771202 621229807 543754770 842673939 543253831 116849026 181912614 222144878 215096167 606787013 398156608 433497142 371062441 99416279 340677274 939367067 950266754 946351343 725635716 164630576 994795898 821604385 772329778 32412779 735456985 478022965 548337434 823100213 851623302 851405368 838223761 263556098 612821813 3236942 912363487 227873872 628933756 763936595 213413168 301857503 912891086 420246323 978059721 122373768 456898643 740556226 346005126 188817197 56077872 942547944 676646999 184476463 884973379 401630944 421774912 981674012 716059404 540934514 132299089 108980332 132569266 10242200 235505993 905038647 688606160 350719702 517596720 146399855 557731910 786841974 887852722 977603887 477167018 405060623 229174262 479535771 6334718 992304413 16555114 629056453 351468271 494714538 530897700 897471008 199369493 600413889 163212095 251571412 980397551 670871779 254607737 860852534 38811408 203999107 51843651 432104280 756618567 961990779 344010054 246184582 627513072 57868904 19504379 923623322 409415692 537988893 429811919 206680531 994562585 573316032 372048148 104802553 960305629 346131919 693015290 156858850 46400742 838995149 113533130 669391874 799353195 525484840 98943542 740183961 119047262 182073656 782846707 188486076 475693386 542543785 165746255 62930194 231131011 840061524 726611506 4936080 254116988 72354688 923464235 11240497 442367160 740156058 643926183 822694608 572481792 184323766 63623776 652203713 171556081 210963359 639185937 606146629 756256377 506585159 908944906 4528494 29326857 75704035 189161399 47379873 696788715 722363013 379849475 374799828 232989133 190030713 416817966 469080078 558843379 473113550 927285936 553825016 567028219 627642169 469597866 955939983 593601271 898823102 782379872 282146873 35740555 295108827 610204724 345833655 588896776 864902030 589939709 265261600 899514929 655427391 143302024 2289160 526415464 908152005 266910154 274779386 222963284 267470517 414128880 136806172 604364619 196973296 422233395 114215148 116694979 49699016 332581327 102273805 715075859 950869100 69965682 49667027 162024451 814440165 127334792 32202531 948834035 476014860 595996528 780065215 965308787 565587207 943318318 178700633 614326452 276124052 99455457 720584582 738596411 864116392 993596987 462912429 587459499 675902316 625060103 388124696 356944149 672093230 411931113 818897098 908086742 287079555 950037596 33095618 325979128 952459052 810730837 617838247 190086604 245495299 69572288 215596191 39377455 362079148 691773521 807792884 677003320 614240687 464823273 972291473 773927753 210946919 637164060 415368667 815979994 895755041 43968026 79966458 17137671 489821653 668918937 974540680 125225277 210637600 405651941 193147835 100036232 115921850 640728903 564209658 365960142 702849176 456110862 154924720 506428031 828287662 947718972 339890215 575671302 275889404 475561421 970505522 937735974 67768830 423648356 122174212 368081817 142452656 633043180 552983564 244976222 72370419 867408587 788925317 483697111 569478417 613415588 906112525 279390365 212471466 642343380 72030166 617656953 407393483 145190450 978223576 992041585 51861721 782771294 816662255 24728411 615776552 710831610 913882070 910045662 642074986 270789429 403213077 784993701 693200690 308826561 140200599 617938906 637259004 698080822 180113744 478400349 142900497 741787489 889402556 1100068 282385681 730439301 795950413 221141552 430192002 662333919 857378833 452403301 971253515 365830726 413336 382884233 349948210 95684474 847970515 751132862 590088874 20062024 525766789 605160746 744330643 98424069 167734375 724176244 684735854 270411030 700887853 739136160 69271122 61047319 703962601 688700422 441125584 169649621 322402128 701731402 77406395 331813722 222028649 193047259 189017315 165234139 38750861 161012208 666688710 612553018 595144576 236927560 213584060 563632388 609821328 846525429 554217708 694580968 441695084 364616288 467826972 775417893 496914224 519606888 813501136 981876782 5923145 666973626 154935 516077129 60115686 633415174 554682854 30049255 83682143 627714460 461266874 380126572 504628400 184578597 881155810 998591578 806433202 760706450 75903005 895962439 427100060 407087852 958782297 606694899 716698009 108240642 461002884 715562898 922174682 356792079 684177873 722750435 84384544 403564315 642499657 241888677 954216634 741145468 425978095 713774979 230867185 611419483 139368158 878150849 955350672 213526087 463972096 263755474 301837756 257489479 934546765 458212879 406553818 251290134 733350176 674549011 532206697 796801773 275902421 283628445 263479398 114440039 246799328 855965661 329177158 301732864 490419218 290441594 444226779 975489544 25074176 454512372 638352201 565152063 598621225 71988851 154812344 278353203 402197250 959493524 74860931 611399542 213920359 910072771 717093881 868930669 669323954 469101721 921545322 358146217 370178974 243627600 65559376 289921766 956732628 765329987 64116176 330836089 23880889 903781137 99509138 547257027 494341482 37338270 792764295 88996828 160552988 601419022 728999440 855612335 198860559 182071564 286806927 477843536 993868996 118263625 478861871 13412369 31277644 620758417 725076000 899707059 879282575 640314120 49921313 969967961 138944013 450073396 563026331 793538284 449701840 440875960 588914627 88393294 526738412 541255580 871200042 671134840 145486471 327375825 994211996 948300438 573800727 904224969 519288358 367276451 267003191 771629822 421686628 926778013 978775162 651896383 37790294 197390426 7387871 221712436 722625317 543609184 744108407 182383117 540302851 695270877 721304528 684214094 147368421 746319280 908044349 515645238 463320817 340146642 456155734 830698550 284433017 719380815 851571409 460892101 139224863 235079871 352540289 785294162 831425084 990627408 65700507 72446170 756419588 544176092 112246946 679070489 632501923 30700503 588139990 147367418 222350037 622384496 213446505 148073267 623036461 71274238 295299416 372554224 111643055 979098753 31173436 472216110 249533978 773453127 241793335 671744014 693843555 344716731 556580257 75104685 588082654 372271840 563880336 370496870 993681225 651698595 116286619 271697881 4241096 802002425 953242021 352409290 958638700 436254830 714644990 744962236 506241739 576358711 50959479 440637999 308951644 603335303 911167934 522248816 155747783 537753805 943627305 805877208 390969378 236744321 621820867 425035786 750483417 287136277 136736604 635396450 622652525 512756325 105400648 576842366 545736103 28328099 869093334 379267091 216723055 52988663 741734449 703259666 839260841 892037005 467954446 601818712 259213082 509953320 238090466 771805259 639038381 932549244 985381283 700786703 212685481 543968693 647911253 911675513 340354381 940594346 915857553 914843914 132313896 386316244 557062604 878511830 407185763 968637101 25371530 310997364 269156573 347253526 758970151 253308952 639216537 828554570 168500016 707063579 991275790 491724116 474793086 767235896 972186970 780744080 844911738 719683181 53856306 493562389 285912905 150763662 181919797 983399976 554470774 400070366 996683372 194696863 382202229 558202928 488740855 795821148 401188437 177937112 472293670 649009941 197626399 837087358 230392338 908906974 403724422 163896794 530739885 764559817 322710236 195656748 577836382 186395814 270677607 703107595 304691103 52449142 642854663 782753257 147517636 36611259 368241591 481038042 467943842 883590050 82271329 765199148 477264432 730962109 508554283 36894335 477871263 656499195 53502969 555698267 373358907 108554875 660612317 275778895 369695232 477341071 972358496 571136605 941813951 256145441 859682733 900296732 680011944 739321712 98849180 436186325 911083789 957123802 150169495 110552849 595550926 713117616 357908748 537974161 193456828 466826828 777861623 601868229 878692484 643779486 82025192 773030764 6100284 271620685 542304658 400685533 307280747 986458242 213157511 241413602 39820545 735026438 751213736 234563861 578178575 275290132 236394801 338365194 725517616 666233735 404223857 339175587 248348914 130170845 270169344 759360557 864876976 786547634 788406838 649616233 152139117 978698043 24893759 425660118 620777054 312740743 214621706 718163730 271604707 330974510 564004048 508180635 316063023 492780464 398804916 78404009 723395894 269043790 793968032 978648967 145697022 308946631 115071622 582268706 512234996 340521808 428030357 67743587 531063923 166733986 994720020 916760003 284922311 145884146 458248872 393772786 84447047 288357007 264209294 361445039 584799971 34488857 173527140 92025879 551258649 312049482 782856312 22266523 468154657 405004133 512301396 723049145 294458134 859817880 295646402 702060234 636842694 862005391 894705281 656314701 989532698 751238616 697791495 121949856 33920533 909595546 896010910 425257083 64966911 27830007 603089182 969009484 384402781 343375865 372144312 588349567 636502002 575238449 204228706 780854720 937049441 346844313 380907641 369929312 409370678 801620930 190255532 552456672 552123623 544030874 19728887 699936440 238646635 463197985 560413440 253267004 514967123 905644053 619265564 551625286 751044399 255347168 481648032 153986193 738101502 990728220 7009455 882865765 460581651 221435401 334897420 613836487 268354879 820879757 883812302 130379475 600568087 418727721 719778896 137032970 83724246 709109260 372693259 839294954 23194412 124422960 449695085 948116309 57913320 206476290 943429752 539098100 838149336 242048382 409653440 321330263 372687484 106079647 902423328 33609194 695951865 282219062 278262640 413076020 244838790 307401396 811031681 931428211 316601578 404543043 110668491 52942051 192928752 833037626 440357370 668058224 733645294 704133036 970972931 964931577 972270914 662658173 39750615 580973786 338312243 409754496 483373394 106527313 606184448 940980054 683812833 11683845 828855036 448138747 502195623 815843103 852680314 209961704 977772263 655419202 59967998 384072869 938016556 3243406 351051028 884739824 335130899 128554859 966237370 724750642 877101234 207144507 427447971 284051757 657929098 708595749 389807761 774146582 280414519 817014402 863323319 28587715 307836864 874069889 816002657 630183501 956957965 807711440 218853902 142800215 88085086 578956360 822503164 492447174 391804272 482288500 962685719 287084869 130781248 171443822 669409777 837125305 414605117 690381947 396784652 129743172 437179122 678298431 601360363 902173182 458786784 5500995 612078188 457829923 662435339 112952980 883566614 533789934 817303266 150176975 137936748 12806074 142566669 651093890 671511256 776591693 483911135 249712873 859865034 403116143 403190577 763507122 645822825 971720828 484196251 139763981 734953721 138524105 280919465 906225870 385991724 664277293 478848007 719053623 987969096 572161785 862500055 429724177 888175461 632369860 710184113 723145802 337567664 722895925 584205828 212980925 130814415 460935615 830349416 622067734 841637094 54408220 967162570 399914976 228958637 752737984 364246132 968025731 369402233 632005833 35422765 156378814 830711147 278959645 147806218 451648055 646626118 996756584 337161259 963482224 644253486 264527815 16058044 485842743 685091376 946559088 639121825 655235372 909849729 541853690 475861500 343355253 922162936 919641826 177645588 291509764 631539677 161489105 849798495 764902184 690594170 574456156 262433435 66759879 633048834 23112691 799864582 659575345 643812593 11108322 730770378 915476180 858188020 376130106 660639455 443249104 299469373 270212072 66450677 136803684 738447960 668241660 333736649 871330012 429763240 468371056 581670189 232239137 664124218 8790953 915320648 903729494 442574245 12198660 227508368 668480860 749346096 484922953 361194284 702205980 383058115 432293610 158860135 383872295 23054996 235218667 664193261 289399665 116719675 968779760 901753788 821088103 523525910 12874802 973194402 855002381 314559828 647931357 489952687 35893988 757090703 918037648 910936789 60898443 821029253 71216603 785679265 177348000 853524259 555351609 326293635 543196060 279419633 271311796 72737371 833688678 474513968 654004062 322156359 49937934 602820282 168084023 229942073 847132269 446142914 293735511 316370482 654882276 774695229 995051977 726672867 390042709 112288773 669913774 213770147 841055220 992811358 212636824 52976677 640318815 114850497 141305243 139243250 299827139 829108138 127928538 971854349 153471027 427616873 444848232 702070869 305859878 709621544 300371554 700671554 67436571 248244493 635331619 861136754 70668729 751800646 659047414 420957438 639882386 568990773 280291987 995213042 379324668 81246216 708619127 602936216 391629882 544337670 209209254 285536250 851254205 425160667 650528615 230806012 814250181 154525424 203717311 863602774 902858619 431736217 687033986 535602565 631910435 251952413 963472867 731739676 989682344 964206316 82570339 37770677 32417903 804033234 968274439 761629135 701545355 762236675 999628413 209035625 775906024 293448481 570510542 249047670 60653014 963403513 741462424 975600251 228400225 734258880 827790762 852904099 853494177 140727722 9335295 153498615 137002777 460711476 708365667 268826732 746745482 60953028 592617074 685524498 150167715 797021404 751430703 459398078 259405477 95545343 403049691 150475153 768387842 384784844 225344671 404704189 484070700 868755928 836185102 998989105 670799690 31841544 527878557 697607365 202899077 305275362 466784061 924153644 463855111 336372653 357270662 160260507 18138887 975117062 901089915 956109333 351379468 396537562 405376984 674398326 429243324 460845882 943508786 386974806 875894803 500577462 327920249 167596596 223295778 17488775 201383716 561049480 206411187 432776331 223605694 807448681 841165974 757796485 467768639 608973475 315631016 254930419 17345173 594193282 319846416 810988218 777298536 14257644 640465641 956050318 630642003 257987862 26540274 850164001 730474333 940431711 902225333 350602700 38287084 491893688 289388720 721726347 475717032 296161375 571410899 73584460 109441212 475418272 445030235 852994468 4512561 38981671 185740504 601400031 262160388 719880100 368627968 215539360 296706991 576318915 965897751 249105609 120805723 761426918 517766859 265843840 362874920 223273868 258473991 252198444 876706138 540520919 219464107 999464729 398974374 754602561 662707594 326092995 271512211 481766522 952475207 592936377 709175869 798767933 293882930 980159973 245737388 204138630 221389302 494594695 586968301 894137699 129886961 947081332 164588245 552795560 214356676 946281897 378140692 609697925 337775867 781388810 789594667 777940253 972065226 179465142 27915048 84781767 84541168 116192785 169973864 602697207 697212221 476477047 899555984 930357646 689512241 978706105 87180475 430691965 747272777 578042005 24472946 880506526 72033135 676878299 890487866 269730427 36671419 794337010 106792187 191278746 933264 174972416 761291250 263312563 152522186 625556135 975077502 819919081 344882370 360047596 916007875 641402764 645074674 229935599 882465255 469280875 143026372 299308502 3793388 121712668 781965224 216082422 748441231 417475371 733036658 31511315 917972100 521808952 677813339 89610571 37749089 326254776 266677022 691650334 160560025 708228232 823170346 792367064 980562981 766224634 78093003 856830359 379281053 745584418 263970158 503663321 491951734 856647537 925840407 182054090 331239526 560281761 797574057 588163518 497874 365411778 50666710 166606317 136396831 103064550 958245779 698190772 965312297 894940275 805703947 808594268 812920627 869024260 618440689 388269382 209514910 74061730 331829484 237465987 911460294 294565191 248964309 654122223 844556395 126065493 871563941 740787268 466649599 982827379 589871547 158517633 870719850 736761346 872411798 988811035 899495965 947085600 992362173 289585605 121969774 809797491 450626183 276431744 268296405 987952979 324434703 293953049 517502187 345854204 252014274 95978235 489798050 431786995 787843183 503876024 967841725 994302833 412751135 370705523 941912436 428707386 847795606 879224729 493234453 729370229 130106233 843224258 58208996 2269993 779437791 295530283 25163904 425696521 515617269 410891610 46416333 653396508 157133030 248196841 948602640 519156049 222722907 562522296 661576616 452903933 605020980 384866074 250509192 109799475 625932233 143035437 859779253 498322148 816912055 576669584 811125690 432346681 150723073 95287708 266569783 376644227 747263134 332166505 540646607 541838599 160774146 121892267 855584965 689708089 972422737 320855200 139742876 344565910 524566846 208863959 69527963 502077447 887808720 880749609 239379379 983877256 176502282 784540443 527010681 755815513 949247162 868484841 238473354 106510784 632555662 805620152 777040700 422562076 44753911 719438843 939656816 129862648 852833479 553032231 821252973 110912771 797181487 400342504 389255350 585809456 982908991 699813948 190553385 539457804 324261714 927760018 167128209 904384388 250259053 724497422 296931948 843863252 558718341 708685695 773275051 851771547 181327683 436318122 903478712 836285475 87976732 587966348 297703163 445337606 932113269 936374095 678631319 439020237 828544828 411276206 872952934 621641695 543507455 809333842 244682859 623690088 119142844 842544872 783706961 855823084 785893673 596987899 543778763 244919411 933382939 24220097 119671239 899121880 681909911 31299139 923948143 926513099 592835863 124685274 211091082 296502372 152426627 35942475 619787184 70502803 557687832 208594530 339191756 770534516 383695142 723955552 825014000 838651239 74436897 268688245 403720877 100949983 514529684 467599977 678696807 118135608 971209725 43416368 264206475 425830109 558031281 424044246 13679515 565508471 614402081 306633129 644695567 521786676 932415153 463821445 877002169 915809924 624886046 521114760 88848949 166614518 534013572 973400337 348398480 170132288 45708921 950563627 646313444 106489163 567740192 777683261 222714280 662826388 423521476 10689936 102615768 454137402 719349481 449856183 572507876 459435855 44660524 655151812 552357583 848732396 25294108 308233627 28621123 177183985 937673827 105755784 966673646 937842685 742527249 234538599 187244485 451387785 963882107 683960843 22103460 408415120 827776499 866599933 98534934 166142852 146621903 649164005 212072382 870650721 511008078 754630275 584356353 932064096 420357198 79155180 986594053 967975528 43902348 535813581 930945107 592426752 759718294 637759495 478338586 231934497 32713370 509269978 977455250 997387578 250251994 339450579 95222386 580529277 732339825 365120157 541395665 832550320 257861227 38578465 56349443 431587234 275109260 294140647 89075188 477240002 166750682 384981005 61647332 170550120 962178211 950827004 586730967 122631395 340988244 663973845 752953845 634770958 12127252 882893365 282132383 110280026 544010520 681270247 604781682 901190671 829332108 732243051 936611625 503897001 507841446 189391384 937720415 774322090 582082070 458771001 865886999 115277184 586930810 119503680 639399996 251362251 449070518 293193542 311618883 95936782 562493680 171921347 599058861 33365683 610175666 278781867 844592806 639788282 505202010 31979935 792824021 235791361 658840160 52012807 611097636 432095862 582271693 770454394 945894013 314224422 149442670 488090999 606397329 197901348 566623154 379692894 472001361 77221595 876257109 466110585 318065170 55140993 512767038 376365340 515181757 806770677 940472743 504745113 407701722 530501610 931075948 128886055 407505847 659659531 586968026 203646061 154405907 265043202 801382710 111757409 279482604 408757875 298833191 821307632 865375860 991940792 139280681 216913669 406139547 344708721 937508336 515544673 229288585 563951350 946500165 47398535 206541553 10926987 544466873 740034568 428312021 909057871 450250077 516312207 710636904 742906074 673471920 64595498 981451866 618703033 896122278 632326778 399377374 900331426 686213566 754237450 463221480 242640209 537495112 546493939 140391429 170326816 893117722 173773209 898218047 118539237 646571082 40695813 819903774 729428733 219161728 887125404 652293359 480327497 603951570 552649964 716902456 186329290 407044669 711823947 192846697 897312674 796695468 821230889 121754595 916709098 685350862 751065464 101946139 880787840 85680456 692638592 69725452 709296589 605946822 696154139 404586209 906857091 984674551 486211693 22980166 45218301 110867662 788733518 723502205 677141368 192639697 743384936 765821666 785967462 49075440 269019168 708305650 202036510 449127440 569789169 653774898 92064107 472840661 768241163 947127776 920082343 573096229 362615514 346362542 806200311 75427143 157241436 261972049 899292976 350716918 652119680 9163399 894250160 710795272 66654928 189007983 767035067 438673290 58171840 67537732 507592831 77202603 148291116 188608503 454845920 213325105 509068296 585183954 90020977 425087386 142979999 586940946 425614984 457503629 151964244 148740979 902200157 644671992 636110428 931893849 878170065 673317215 830623186 619882609 427234805 285621140 512217826 473781725 379688306 986302495 51977285 541334008 464736399 138667822 774578048 938665193 260153953 740904582 45209649 961674676 529883765 954239586 226133723 597583548 931097286 284136699 791224702 403842071 242923891 427154844 489012622 887173269 378439776 622399362 389901815 478588042 344018642 787704607 185191251 482969608 926117294 533384172 81840431 603274894 816376477 547054790 124080090 411373269 856753318 604667588 781219932 320935986 971875128 370104508 154875989 553802340 497726570 160996473 997009299 395216585 129543851 730415062 719649639 448179148 484384667 126996520 93891724 237010568 619686245 727329341 542826484 516384234 803430051 519119849 441942207 30978367 592437447 450407313 199279068 219903013 720010276 191739195 464754473 467423123 443172871 822068979 904896081 792225490 44240134 110543576 528945350 159108951 375262447 131407124 703081117 928857578 936190047 91975392 222954244 518567836 618947765 366101394 322764078 852716376 192732009 713094421 2419473 946214440 567255255 201691287 274804974 637399389 849632948 777378627 862999623 827064019 499140351 44187527 617965241 879118914 608938623 474838035 213557480 138574921 273482611 505726777 686900487 912626756 448920334 15004015 224783511 431170956 585765890 382945587 658416364 779151503 21583434 761292715 229564349 834308244 474276662 631910087 904877431 33754257 980195816 284208781 37911978 633715352 863878637 420985282 321780871 249995627 747930772 640070471 512989729 581654820 153996882 676885402 959013759 538912284 154198574 505086717 64159054 117153501 270227145 438752863 3607288 982653432 660967885 370587644 506910748 399801072 363289526 281985270 852725227 802400807 533979498 455792048 283917854 906633963 301776669 173829909 901982929 932518709 738112990 156945580 355374304 883743766 530244577 601903886 80875763 489937721 502183552 511083199 97608567 328348286 887227281 496008242 113026403 213936297 470037239 363153907 566881933 209704101 698669280 492857375 428395399 421220551 334135292 684275670 418832587 849585021 270427713 581709449 203997367 353766056 149391128 304958332 264760566 177035281 333767043 621769621 511170346 263913480 272780272 203702907 723735911 671373187 297326590 562997553 21451511 617881736 775528681 191133638 34286257 351069637 492226720 728680550 304124186 24695599 62755814 132346330 590940715 545759153 746966139 437574515 298461167 867124859 965032774 326661405 918635497 918591926 627579212 271469490 591621339 38768176 197050766 267978661 674520751 669573610 449124151 202230643 456136343 102333246 446109950 114608783 424496173 216466902 351148762 640415731 371064967 661554631 500753627 99532149 628107518 374515366 515866302 680235564 312283798 239717786 354142888 461059621 881816977 450096968 466925022 607418853 167193768 155269878 190980989 610642038 603526414 391002195 174743375 78222016 961852263 668491842 944399720 558280553 346128566 90085737 929709173 52294598 811827958 363061837 904566542 852184593 106361588 885297083 476515872 659593086 544614329 922497447 503867143 927253040 607045989 958561614 208133285 133723639 50984266 133231680 101260487 79489509 722510845 5688295 360312131 12822027 939150671 605657331 237367590 431131692 821153446 336096932 451508795 898297243 928521734 931208805 512237041 859725810 228416967 516132448 611461439 281453919 563970769 814770160 747981223 716880138 287664613 886938571 365360570 754523647 335827306 172272030 163295077 906582613 837280673 784719186 133238401 335273208 721203110 131406777 833986256 574045786 947365596 165604406 973869678 923375476 42285545 484171406 683561568 537883624 71336014 649741210 201599696 208379808 206329586 839917926 695243790 635152582 510802791 574525106 135802181 567546569 781029402 64873487 991981936 536732022 493740662 930044514 533103195 174124059 964488290 592204083 532242422 340492284 244410473 183904206 685692756 573430851 39184638 147168719 989762045 138447518 532734400 819930375 921412942 319278030 184904164 847350341 198709230 765143196 513154309 771053148 424407943 348482160 440178894 828517141 440626646 605881528 867637712 261543482 302090193 398420475 480221695 852838992 751743103 156312373 940102912 977787430 466170415 173167893 434276458 780865133 425018751 592976348 40339771 485278031 397647384 988321876 851383106 970443763 207458463 82125390 392873979 757255694 185521542 792465026 776299319 389805864 308805757 305025874 266320986 266688772 569484 582632656 493766543 245194214 271807603 210806591 882209760 391941210 814081873 703556892 10849994 475447511 991576371 627124613 340233876 501111818 726697033 35993258 260434589 532201272 714700780 814452530 698115726 39739664 546500591 978486761 802601954 627158975 391755193 378006604 174966690 906138107 950688320 905033917 488998700 487823839 778237838 942190671 349853452 322238583 300145322 161892553 213189857 283804592 536744445 900145021 768405255 704003600 581532609 673091831 953904789 776133243 888980953 506625015 691463358 460464735 512121190 553799652 762469036 84171257 958426669 583443752 460354424 284023786 908747929 539614703 782055831 555422583 500108230 115624861 221438106 347819435 182674589 57642902 171472868 588659985 91330172 416856863 319654149 846429816 697834117 216847970 747437657 854481380 557252509 163210741 578287918 424802762 57303507 50345401 862513424 401245129 436363643 896011069 629663394 951475040 718594205 423984971 841924804 125427004 299897575 853774304 538305342 139768599 141227169 822751771 396864516 536398330 437574772 297401145 732202827 143107971 33116653 215252367 524729731 284420153 510612293 465915893 305225912 428670517 895598789 494750314 903933854 356283174 826585103 698826880 424325823 222197020 359127998 564989641 180752366 21085727 467546663 689425355 222019008 931865339 361839735 801273679 473701920 815367138 618633621 626404562 93451275 580057043 132371753 338964518 381895687 541328469 660594936 313932245 927947118 382973268 293808730 360126874 963920150 922424512 94983635 35253703 83964700 164881264 176010049 580652180 659998928 627794972 973381784 326435991 617998084 59208371 4934918 595429053 283596894 205151257 695598743 323162580 451725886 311990251 963379260 549390092 482356978 490538079 13847598 388990248 222457049 410266785 570974185 897566852 605072646 165449423 143844518 877106292 639910328 359361509 78867522 571061677 704334490 642561213 423702528 278671399 422174380 921293372 118622575 665569979 519896799 368055915 707636333 562945002 654687606 634708109 11141044 743818633 999975751 654585147 902581926 793210716 980165024 38962758 497128331 559386400 411574678 616587318 718843839 135397006 574783840 20395473 374857814 637898573 928174762 865401416 925876072 398973602 216772953 21780297 118329703 502536301 106365735 340368807 408060413 551609626 696277042 471893621 141658778 308527851 852344247 771578089 505598035 642921056 745577473 239796414 56042369 743424811 760598510 816324217 389272428 895693188 272894607 332435458 801058477 724159025 221374572 635417647 848486921 193563249 809344974 201464213 747475949 421864443 913962496 610591543 997293505 671105510 438815998 656986054 711185284 655481938 748573963 235129771 47489125 409844235 828525224 444638266 593222508 29545359 718944072 904867319 931471594 476164765 398207854 150604220 949794753 84007408 171619072 253509398 988715902 254897045 83193183 245236879 750068242 450279415 684839211 577850298 595304219 120059039 723789732 236774499 460879093 608151923 887827473 869250476 502738766 626381650 315994385 867093548 860150833 698629975 426105327 870756998 961170019 312662394 271668934 519099922 516731401 838688040 72741710 70829245 465601979 112367591 790782794 606770371 642056042 647808 305972740 2478061 739580736 252071323 39776277 853886330 917387025 658126409 567540785 9539390 609436080 274981557 200407475 709547617 868600487 306585628 270826731 414979829 492448263 44712904 953927535 331483984 733479039 683099043 174857867 969120448 284232407 99668193 403579735 915512627 852872237 540026316 664227623 263843392 625134435 142659409 239588015 828553832 873287728 569349393 44680944 925876254 330518749 698259714 87740285 780650665 749144634 203173365 647930959 726836078 39620568 286623668 903373910 908869190 343956055 158685055 852757538 834924329 406347892 233670919 437803738 412964796 268880975 971455831 809368173 313471858 472159898 812522145 310877744 722995164 182407295 767384074 619323192 491683142 789288978 472069585 623092595 773223650 462312819 27709884 483044305 220158960 354894237 415166650 393512763 557143252 598548973 869189376 551074530 690633841 456026271 486202977 90365004 742800521 538785862 361195508 991754359 536512894 871813526 678033607 624253453 585138457 880440918 906779648 348878493 620913156 959017526 819876972 609556842 911679575 379177986 47442864 810843244 276008111 632812582 422041489 22298740 374824329 654132030 606155897 499436318 570093444 779897269 24038841 609265571 491951067 231019498 572967828 462211703 157559839 508787884 224595647 240620867 452584007 259786759 335535100 521084197 578066420 487399205 589161193 993584362 68939336 956186995 472748283 772273666 788940454 785975276 763822435 627890208 71820768 345668878 473309740 431603407 306943865 417761885 828876065 127846968 975222249 524963322 221822167 761886633 285952270 32461465 424787926 838665711 488595455 461421175 779605598 204388731 557479258 87678958 235494394 967566730 831578083 264851735 313361280 332398321 319842108 837913816 784730289 120881352 588532952 88072625 799892078 199096675 618506205 290258915 375120215 419079634 532027028 135365518 221347982 660329372 794845985 650863024 77074952 181060353 457563457 985714365 860545949 726917179 784974878 55095747 717836650 565062693 917660775 581404149 417413421 125575236 95120904 274833022 238317721 884608544 442806598 262865464 888868740 866464855 355542646 657826706 564493479 821328249 613572552 55516888 286325241 450195137 607880348 477154848 390295593 992105064 80543758 350846345 450368199 470076617 939663988 510480615 610203626 61756114 389412583 419070431 384528203 31688389 594118116 302182236 30461978 778841194 549781974 460854599 718369375 729795872 97665685 580077726 428598247 772079385 43637609 529665579 863388535 11224418 982772112 363470039 489753829 910444250 122588329 91094400 978044359 228192938 68602324 2111086 907130908 379554241 771910275 451079693 814531524 169384342 534908127 505325716 23367712 462698759 939306016 919529800 463285917 790725731 698428341 896213351 853033043 269758652 177056058 556395140 855446312 281160150 507283048 74896537 793686071 901891343 702014082 233116312 851094462 368759117 479254085 273530545 454112257 753763943 937796868 253304080 453294006 996732686 263566988 726798185 569460303 444472383 578587538 95806909 243629006 184253149 920073827 612095703 723400727 377362059 779884424 376227115 652168255 935156341 230318098 468095094 355774274 490638147 872732098 911103698 941021235 174925426 382011423 658761134 86900024 279608138 806852844 223209141 127613598 820972180 370589388 706307706 11477190 917107665 506338474 961645093 818111183 138495764 486549156 24436558 609463774 690446882 859777435 629233327 393214253 711556990 418025487 525694005 662814938 731565520 70308189 588765347 11868323 97208565 297888323 78414245 352232708 338301459 227765210 87036485 2089956 736678917 424241616 693252851 539436601 34834915 365082711 304757522 27114742 572858006 234406544 177757792 552817970 477581778 607459969 585998502 373332005 452630318 853830899 217907193 691195100 804196653 787371395 435835843 959292619 330412921 200469548 771689679 547494866 711535585 264549117 135554376 273311584 783055911 73925930 467075482 935798191 54238290 908671665 945903407 548594756 755612745 888931503 275501277 869507652 745621425 384253983 909828092 656246965 437900967 511373985 440351345 590047880 565133994 64278727 854093390 642524026 455419072 300473034 565622300 771357196 178417856 578770578 811032436 511082404 66857824 761301890 154433518 628896968 50103380 239405172 186450393 841002274 821893816 281231500 771475709 380658223 244959946 19396558 82303650 825027805 410533168 406604987 743867109 806594493 675900195 976428212 379143892 315485567 260592664 902259938 133825587 322061429 538994289 63654203 64184046 91044536 482182800 68220902 645900607 563803135 854724641 701706195 824958947 147731857 174495592 364074913 308975154 855014492 690365739 213051094 247860286 966322771 925013293 138009759 56813988 578259167 819142430 905793401 631970761 669196615 211258314 31105655 634942582 24281909 487349521 624656853 154826597 844703908 19225387 385325689 791712289 323714672 745700368 818825663 542134876 906425463 666694531 771249711 787811940 681442638 186476916 327676005 337845663 283664000 343780258 656974964 307993605 387922675 342028053 685990647 997125283 293017677 128972857 944341926 213697426 878380154 481980549 524740554 508303803 656730236 425126406 828192396 381164184 197729436 717489241 686211542 717047381 164433652 429801727 443159989 55774066 610089950 522067548 73145518 330441522 76044862 420103012 137947371 3117046 593974684 704298235 564901896 44239995 248581948 584639914 310148178 599934776 576250380 776396177 67289288 123346306 599686650 887009635 314945486 849092190 434565767 96317267 576916101 295248137 395625055 336809046 72162108 47701908 275964214 337703199 635128102 97407400 45560268 36055773 360505219 276802724 905255781 391905279 725007283 743693410 539515400 689426007 839721919 712490086 861451194 756562224 778119276 448797488 251175856 878877885 933357352 657864901 669930205 879518766 78786639 631397782 947181671 494410893 926901492 572800999 415284098 976687641 358271950 676356011 191349489 309578127 786603353 456666235 897205005 802265905 164337096 68592864 480280082 429058695 383194662 945872230 417850652 183748955 4521784 456619403 637905106 171713530 113307828 564294142 340412424 904380499 445885291 500262142 205494719 635414458 122528790 358431142 736237112 880556094 615544701 38786746 799249112 304927705 163619358 362682855 705442855 258177052 77037412 729699631 447651742 364430789 457821512 658945191 150043161 649385421 367889827 206151599 408160752 17726242 181627506 997440230 298645275 330957937 198665839 102707124 492000690 692797198 324215669 634575133 447595315 424198162 370336580 921116833 627550293 43900356 246643644 856075579 882943919 508402015 397773725 895649808 681192952 307904237 628383207 679782432 482089742 504179048 235737204 105282875 309682064 459362580 248266599 281861919 655014572 505665161 948447561 247796895 218037125 499656898 925475098 596858420 288316962 171214242 152679074 666868025 309223714 739047824 978585415 847195750 630808175 430598024 177290849 692234143 665609936 817621400 680321549 962135849 676461368 29267946 160838357 686752780 29137345 962223692 740990564 290051228 948274338 272809499 467927168 491996886 145102601 592004002 940966402 929598081 718001380 977921151 305997186 691748547 526907628 893655758 347070008 147061473 19690812 392238874 200893811 158375725 805137467 840134743 728896119 759166619 524615047 4594876 73314922 585807487 327473485 318946887 58741731 178248789 710335699 974042770 130623276 322474072 216071196 96969069 784007522 669079837 243747278 733795568 801582319 398220983 700423556 130649879 313614985 682183487 560720586 496649415 65325941 265855347 854305105 452313355 185849440 857113728 812906900 691440060 388036171 888114688 248344136 598104334 744933732 987313639 649052722 856323422 167868774 857474908 97339263 529181548 139352920 949640032 962187952 772443861 815615402 604862586 916061642 677730494 295328324 425673658 847725402 627204320 326689356 135653871 936703049 81048378 962821210 905902135 346607280 174318500 919926962 33400243 926407508 953862070 896100796 536291938 496236856 114316950 424158271 527593735 579694847 771252888 186635513 107980513 683404049 223680402 66763065 254693180 831219144 151175225 29085308 518794907 461127681 245224671 127109517 616677574 244649363 716884413 889015933 461330810 583277918 730711065 932643783 47756908 293060267 337335382 680684801 441983457 13842912 122038392 422861238 759293759 247225401 635413172 424485291 81193482 166926188 849141254 897461940 359124011 599007367 789133737 902870188 526324535 285093407 330596075 481452281 222605053 596144049 165281285 311394292 199744927 696644244 330535516 396850273 895848037 787348486 675474237 17271756 178379982 42836600 640923001 119491753 613710249 306869486 287711786 675658245 580440768 787243524 747086883 896784992 471352948 811607880 426221840 250963618 292362349 64886575 900951911 335963532 887803944 638442000 728181019 265964800 910955383 811426467 885364914 552385447 838138118 506478105 583503080 519812001 457381390 594403451 747473664 503643431 399836772 747143477 450726628 735159613 494308384 45005704 313762172 731962079 175846767 207637805 391320975 179403914 742500648 678826613 574034082 791249275 275004509 534405226 520267762 744264071 338578623 783533420 327715167 836844345 316272950 821310829 183846541 578407981 369101346 146481378 495173637 970543715 266996894 728794860 489101561 763526353 84143158 335623199 578881041 923598629 753173428 255247575 845624990 538876561 60276685 606002835 117687078 506632374 723689806 417125201 281589652 837207093 107025719 422880437 432441183 441626898 146613816 393060273 224220225 817838524 774406046 443843725 10373650 665929634 937154320 684007056 706054575 664670905 508573189 351817665 133736583 377466318 251040303 933957812 323489896 468717473 321665706 245959806 722816216 558889728 986568716 584101500 612197381 415668324 69601371 551813808 390862686 534158222 713571886 334095427 895159923 970992500 203521368 374094232 104388020 25471662 409425029 942807099 168503660 150964511 565275846 682840189 58245478 987471192 134447624 812038267 328951506 591966938 600527276 823392911 177244131 604936618 149331645 302691813 164617123 321158031 743561041 325725075 2727048 102292097 7085788 898942389 578583847 795299832 889907032 668921674 74399393 313297602 473037174 213781120 590486186 206098827 200118740 274144505 544810985 660827111 510463447 280237148 214217232 327371309 371373030 621170072 45103662 784727161 57803809 813779012 806512247 190163912 38811200 847723366 447823391 515236355 600055480 453757293 667388672 893905225 753171691 302153742 574777606 44834125 131484938 476251590 37154527 227120812 876679095 812688672 286689193 783200679 248944740 648001961 664809664 144220839 783169804 369234231 559263891 314101655 357743970 734434544 480608866 854551861 851363639 252006045 506389448 752657692 600968629 60642289 206265241 520392530 684317673 180584674 730603766 154334544 563104815 84351451 519251489 362768019 593290503 360764990 187990209 385125828 66187584 402649339 1392878 780812482 627039503 973860036 795574163 931178265 633010550 507330679 531795748 511307099 783098204 120541414 448737967 393540747 998562644 64178711 115306972 247187079 821237803 215783098 883511514 862864117 280918924 822563611 24380142 856954756 443255051 151374318 8691827 397580824 574777012 130151 990336355 312207171 236315687 218435234 351103602 103665960 779780647 608687879 486633943 752462288 770634570 130781124 931047945 741197643 843570242 257306769 137226532 250378143 663229505 517870598 652018607 992994587 174886826 50592964 56974853 395010531 599099964 708081146 594114478 594769013 766531838 66586712 539233599 158947209 864000548 470061004 702520207 808883907 230613143 638833610 892244087 910865473 925992937 681115989 376509839 831232483 273807640 394197428 387312802 462108234 785416882 842579009 618548002 513629167 635850484 641484894 300928034 208067899 524543063 542841680 83085962 112515067 290108512 251806918 427754374 3895325 913522099 620335874 614649629 549265260 720488441 976019378 333794321 240086459 550387713 128295404 789330939 756360986 292908509 978026913 616462249 319607371 285326765 935017449 814630671 125950112 729785970 909986313 688530554 160284207 77933775 657521409 11752452 717836458 910668754 861108498 213972481 334209643 41922835 647618423 814612381 18027957 431198785 890079056 880184629 749982410 888906019 852964379 404070731 155335965 567441626 454904575 865720215 241136445 127420374 351180894 290080975 940007533 852195795 206591502 441392919 553683031 334872005 513137996 456184290 546703954 171928855 400027925 187990690 147428686 598980345 108863950 893173125 403710378 93906356 50840586 519981551 59524396 968835633 546083330 160669532 958305906 642735642 419076152 557753567 479288645 893313565 596793443 631878945 280527078 277235838 109375426 706324460 750870683 758869994 410953315 956382149 184333156 771016299 614448961 614992330 643348629 638212739 877821939 187658592 95105650 345365629 343915581 59829139 322369531 570741737 250771732 710212981 701910338 382327685 264496783 492580643 335137015 971505280 456705187 477650926 670078702 939580240 372008935 755411685 859686169 82889253 806986199 491165283 455918956 723481846 288545405 96520349 654487085 639715582 64218728 518801920 51158427 179860749 73882127 77168727 397454162 191040712 889943166 760635343 750201183 869319767 64131219 260073824 392066379 182200316 914535363 834870277 726961871 734059134 420933388 437534369 580466227 81608189 601726985 774392580 755777175 154690434 242865868 887582031 741720583 693122603 516318180 556021920 307489944 265572781 753515024 260332152 563566336 697662165 915495137 810383215 565447859 451561029 622639725 206442267 697785765 750486950 993180819 301149436 817300985 160967221 579459931 765601390 425451942 514943822 256306847 306652321 84309876 693750001 458532895 691520367 334265887 521780748 966784157 238005403 30475240 939438883 653400931 324736265 909156358 511758346 57642742 592786006 721877926 730708817 374506424 936932115 2092261 355246485 247670875 180374412 285246989 225851031 819227351 248079621 677454630 718995408 726193068 640314292 623211587 70507626 675778848 461089057 277170859 724963415 321816354 544366954 292543125 745016643 113826657 577781923 587290172 233759937 616410032 945989620 99140229 41086433 195352029 433435555 149009371 304349779 459953020 57601394 842106797 489767267 967261890 430072998 647415824 25982084 317341188 286814945 681172764 827170653 917446580 436258650 949944605 478727178 324718420 423458712 407859363 936138523 848411440 990855350 400835972 381955316 182039943 913759461 684573763 636653570 640171281 492218706 256105744 171094415 414883973 317473706 660744453 173750117 479241144 981913710 59935502 282493150 909347595 597519008 463223983 908433955 300547357 759302547 676743073 691718688 707012538 648645501 385003480 798126105 925334428 905030067 788393193 733906937 541212522 725306986 508265801 386513829 234823794 610826267 265983880 927194511 952836464 893650162 493045207 806457946 959959025 576809449 967504278 119876492 821277481 235123781 663627681 326076372 112770852 721829500 269341683 95034821 978870245 259495934 205946966 930465003 425292876 223443180 193624627 417007246 251817287 548531591 292217270 232622700 58696623 581762844 134925731 246904422 357867855 211062148 647597132 611919390 148440935 455289352 81465313 106994641 385262953 170040755 547409787 274126527 494463420 287724350 86869856 34752715 149637151 465841592 13479642 752437631 736065672 195377391 227423197 665651260 24386074 821164923 345762815 193438240 862022539 5239346 770041648 846352826 218432456 678082460 219387880 311131676 35907332 911844702 923128470 298288435 765766243 293124111 625158955 80984976 726102564 852488903 147976542 362241832 834279394 579246662 574076659 51172353 952501224 57685293 482011117 29920418 967834477 168839158 733116716 229632071 411892820 434475141 764491744 279675693 536719370 26058923 143009768 28050282 162421784 24564940 275828260 29366616 192196615 677572434 165552569 946901769 986463193 852338786 608410657 215032144 99443339 953875707 338390334 510907486 387734626 440967882 688401522 404130079 532096642 755726746 680525258 976049382 126652175 655841608 658752461 298858355 772725548 84514438 347416110 375214878 831268038 915887486 29052601 225471479 379384284 715218000 762521267 478529371 636532086 481810205 417825129 234764612 244228740 165762143 860135978 499872886 871770465 772305065 733430074 689260002 524834987 553913393 929672493 168661760 243239180 623066091 666358271 670081709 622535575 170353545 651784405 412021950 676625156 128874527 44259683 707727534 711698309 132532569 181908440 933425296 168095232 834721880 758968149 371339053 501657750 410483616 124348965 494955749 444744735 689586869 220030040 995073963 918629896 321091874 779396022 751563871 408270549 637291924 783838206 864524239 222473058 451922460 233898747 755064431 799013787 347987477 834042149 59371470 34781371 172018154 465087753 113209460 691756760 296535610 609536601 864195619 543615277 982310865 512365263 212309765 577331128 156437137 830693126 671916660 85035980 460978565 217946563 768561792 573063951 785352199 275944307 583745518 918655300 735067772 106514931 159064550 721452062 45353097 81007636 378737277 928970524 76532036 77584928 131068264 774143406 875902594 216274981 35101140 741239294 85689038 205340317 457014400 908632981 935814744 564712963 230783954 58390082 117484021 329583635 71568464 555321329 173462699 282009928 712041390 218662135 359789032 989160725 682789538 112718963 790965867 746457562 658369786 198753180 515887387 47515408 414772525 206679180 383075617 863746660 449879765 114649015 669830476 175067022 477806715 232370346 73584761 685224152 712650458 167976801 678748179 143200385 293781094 445045583 165656588 582665956 300657593 361106490 44318617 933524669 629652765 216272740 211890161 146047298 980634388 249962957 151913212 645978244 360708889 23638860 19011788 419001686 837552975 833597719 131558171 787571368 315782529 2592899 449462082 635339597 510224616 334246121 407500243 643911592 867261235 159156861 833603246 621875458 871770593 129057024 319294565 91476817 374566279 615378472 833801120 276235446 710890230 540052623 163447971 449057860 570507930 8454900 860015076 492552607 415395464 379552304 493352562 663235364 261665719 435312038 26311542 506325704 451623381 28625939 526999050 225698874 223451220 179455397 150355030 612042132 34789888 81367212 937560589 157895029 32675805 339923704 53009586 290909167 550291167 305344649 408508162 994542134 575471683 868901497 323158260 843020331 305452968 256258907 373036032 58731156 178317882 266068538 587928924 445351003 414076309 439789310 132184360 960117708 395361143 248296978 922405437 53407131 956192456 726885963 983653547 620711461 981041872 390536211 321855028 892790848 146839364 541368289 432072173 864581066 967829539 367681561 998839869 976297334 430900327 939132491 313085773 400081678 491829115 293166728 384329840 27090501 529523456 629904520 627313244 622231729 982992240 376624521 835834359 392271854 632118187 562971158 243712731 563592272 7048059 885097448 114611239 964857580 676116067 885110745 422954943 102784417 962747819 1825288 337172846 339308626 883269270 344870320 450569905 385758750 816291472 125480130 685288727 119246693 141957076 666791175 579035435 64751638 909152089 497661361 370877559 444577811 881750867 230540801 710185725 341991040 5855137 961358932 241259604 204904514 920006913 259443115 242367233 54626613 573402384 849201692 981363773 121086010 517898386 833552528 809799182 595974053 252139407 321457912 990934379 89816638 863912612 358276602 652307408 596233585 315120736 912460819 655942623 894702288 645385157 150252886 839482275 315784272 67149740 876415023 93506686 110598318 378858003 919562902 384045506 909634746 691864810 900495810 838912735 551291777 822549010 538395861 746653333 674526955 768906221 644494516 845515363 64029878 379743450 782339287 751995253 499286209 560594881 115919903 962299156 306919608 313380078 396225405 56632800 716976757 36890252 941895532 338163964 114790976 966485584 387575453 519597101 96677087 314741474 922039825 194467697 606027394 861806941 279650151 61357418 773615788 541411710 652456896 649703766 9451583 985328672 682799220 938443116 651062403 104449096 275062391 436674361 906684289 724342732 671329925 198792051 645476632 546884280 423217209 563769946 934898499 824524991 365380253 195943381 355027747 254194352 726438533 103723501 537095142 13581925 653607344 827935708 973339877 322463332 868475666 388310327 150094155 911594745 158476541 411851404 40042427 946493980 842521946 339683697 489896226 788624075 482920236 723280421 135779589 535775990 443386310 352585740 223963797 63224924 249472263 421336463 774579513 726350397 940379483 191798528 793927501 98219234 915241815 570078746 49697105 680008176 457212810 61402985 861558741 599462669 596403374 731382063 492528611 190349139 195612011 397957607 697227942 386547260 171621406 953211378 9021993 300983049 600420798 125052424 244057269 709670547 307910825 19170960 40641916 787253660 371931190 83895201 284747338 695717263 192498843 366246355 204565556 917852162 370652935 538869581 739998153 630236677 449809226 126202262 481145818 104646883 268279191 373774480 929303185 427023107 244568437 67204066 182669426 917584535 927552398 905726972 396807483 984247825 83076533 975969277 450492548 967799399 248577273 577821511 649488628 222214951 597099658 708170530 850921824 647755564 935612106 311335117 378951058 540450557 959761808 281576619 879810459 437809286 725964689 104074400 732222296 320073466 286549036 106744846 359199995 529543404 377773199 269072319 377646645 809363886 716162525 938000801 281991838 319970071 15817638 976948420 158318537 969248819 526950969 425679420 690641195 958737407 800153192 413060355 577775840 216082032 799007592 449273842 520072922 699542369 366333007 594713110 397766883 271521540 77664321 589897150 344628187 974232548 241033285 544879034 276660302 229977496 514618516 671915532 177126252 922266818 283282797 181654420 322199917 853117895 379134717 892352295 302895005 738052033 601055912 97127079 528944268 959491584 424874009 732326388 320877486 223759569 910923319 160776583 57112884 91775613 126126023 125151238 319513660 815663323 34607337 475902109 475319076 357848534 594189502 68781115 226547885 511101247 609930511 469783875 7353518 683229065 394699878 679669747 735092908 610501758 353716901 253532415 208210848 563070529 508480094 794627814 633993360 785348626 187467737 51236322 356864110 674381258 816256621 704216350 154746681 977860784 522363524 603700808 31705259 204782980 201183544 776314479 988086089 650950717 257118734 630194731 499949391 435883845 901759933 645263358 341335779 841302035 313611786 471039069 53663634 634366046 119968474 708286145 519411601 43137514 480226786 873965602 63215351 144659049 111816488 338972713 952660614 643944245 193221079 768695615 95057921 470585898 127317168 376027525 201249378 89811542 867515469 965797643 591753037 784191404 523094494 951881185 53113055 847468097 858166793 390132543 946348347 199752115 490143342 232328742 908374675 592587062 279270976 934846152 750479065 839036729 66404071 993500082 24093874 938551151 568569373 464078160 436632465 191489015 450875642 487927354 88630792 314131555 37504167 450937687 131786418 314706309 79059473 524496081 219363611 761322154 512122139 493160281 239813522 33530221 907523760 268103452 346150816 719785940 403422568 548993622 193717779 287468860 549438326 953993724 671409162 363002746 886689743 724199942 231859377 3541778 356336718 768484049 918712836 514959333 49988329 972530372 58684572 294308767 593395917 671844584 569734968 187791917 358815788 268253170 34866777 405985899 170931359 369023738 471833631 22359159 782972796 562804736 745719583 302401490 405241001 786465802 5469475 726136391 552298389 892248560 786725651 360091231 62541445 948597264 451753116 72742498 65007703 292979040 772739692 812306599 770460903 774708930 589601329 30562963 680221014 626941942 42480454 313240087 73895110 14545836 812470280 990339536 389735509 585300880 261939119 518463254 737072498 203756909 270051423 923053909 481265733 594381916 729251267 999990347 612582730 433311939 505782078 153664629 51697400 747491669 983700405 174905586 378308576 722854282 973629503 352784208 473107184 619386598 276589429 970856223 311478634 298472082 593220292 115289125 521557535 640459595 586055961 930177493 901269189 82851562 773350600 201481542 57742532 477475297 193362965 142537837 787596918 104739000 682885167 664400495 959582685 746600685 272204268 245808683 66690358 685038365 771825010 963855322 112806837 645245678 238560125 366534346 25232077 182572091 244841681 926025963 484526589 363580278 614458105 53428375 872345811 16582561 159410541 283588271 32533453 451954841 429177237 788627507 683061841 566170732 579394424 262278191 867427129 742288827 46487147 285695447 883523588 462251213 655096110 845728549 838852659 781176557 162519889 859040321 476229202 937464149 196388530 321414599 502236046 634589601 466544710 864136466 335124094 390884797 718528686 471320916 278717441 30308846 249352357 374008258 475480555 544151629 101715045 485379547 385923389 211468852 730565246 408548154 812850721 309776647 862658007 457850555 486612873 689004369 387912929 893564856 210169333 403925215 537423118 806685080 446869994 658169492 903134957 427735588 573502933 10211137 303440500 703336374 993889565 66322735 655885954 820406674 953380769 400015867 640962068 956849822 372611597 38516129 563063334 326395648 742799267 144006319 937126589 932870414 919716803 675813828 684317401 295829127 732491567 699482729 426323683 664340940 94835282 214094893 921678736 727862997 126266076 150606906 733517003 522422322 970314801 223487851 820494112 556518241 745192781 912982805 86492526 25901368 981305319 106938902 180031920 13069087 987890319 594856665 609310430 156177992 374037550 138416313 288845922 402282953 209898500 473235367 573807422 329726248 899187252 229959987 873022787 796684818 482684845 258115113 57264521 788706377 560369297 392557569 68331660 536917629 986991129 765277190 281718822 862845837 828144413 29484484 555541098 395618276 560031794 968261162 997448066 638762911 761327005 419987871 598961931 881779948 821179754 870598440 618125974 785169419 338180181 59162379 120034739 271165093 792001640 73391627 122665088 24165344 7204289 693248704 385281421 162057366 192219533 249623700 137903497 403805481 861262484 159156342 45913747 361658339 647334820 814855200 703087760 19452129 856010784 293886980 226332499 931898912 826873123 254412671 301610001 319831230 988270997 100359833 330302841 119620048 914826237 962394755 56650994 555548151 675318524 960237874 67916153 362491854 30593638 387511678 800969381 751412086 870694438 737450697 777079611 269865887 333801118 408827617 43221579 442383387 9173316 333496808 831480434 406518864 315074234 826285778 667466538 264977868 875970258 639458017 203727874 232744806 426901185 806977125 338488454 389314407 30141908 588814962 459527819 948090469 840875530 638729360 354222726 242740936 248935547 515050612 533077402 457858907 278974413 472313227 921602725 712759990 865785256 213465279 927596115 122350652 298327935 509534178 358934293 482582743 299864169 132886666 550218658 957805600 648823615 306377722 192040566 670879928 952801268 645784866 994419385 428219243 433382261 149817231 669118650 213985001 88472720 649198333 402352446 78960269 307478642 379148813 767214817 13721987 382035585 22229946 452822761 533882715 289564721 145783469 113460928 757006038 936757766 680452639 369379740 377798304 434082085 867723435 870367089 42243671 567072572 80434854 15155747 777923787 604730784 351963458 334332188 839100008 619418601 477000985 764794894 770176660 651682825 718479029 752713029 344500598 316930266 601953895 703567621 358769466 560254727 687490520 486186070 895226062 559702583 606974821 341657488 609473810 540279910 540378998 630929403 973957381 549437429 513166738 163887970 542125000 204516174 682223749 97913245 670924148 493521644 664427886 814065518 858632457 694263101 253588253 877845024 269996119 372437557 487664570 251338161 645872305 679024829 280050409 317189179 708641068 742092247 732455342 945748478 82712575 176829393 733698859 733359121 992930695 357110634 175487224 496169934 971005853 475167355 479847748 192141297 129633833 716172292 385262741 778257983 285213381 924762078 572569643 663856032 631474374 37545861 39001478 58121533 521596078 618582802 639724496 169797685 968381063 845077009 496810058 843901513 309846876 799900090 361588285 87783781 373583911 809055914 99481373 615163094 518864644 516086475 434641193 489452163 106149109 383536003 828879986 264543628 816103938 241316844 940746628 944751430 802347754 545656020 503182005 553323114 530163940 761980395 185547602 489516730 593669540 867483182 243459207 335532293 786337297 156928585 918682665 284113893 953667495 235997336 339809835 381891982 955371421 627202774 365486437 872154997 641377240 702913891 532446632 884776196 89798649 601113149 482102345 273071810 888617263 189223060 458252967 947191802 385848273 664077515 330173844 44639527 224143624 539994971 600556936 186299655 97701091 546045089 377263338 622160650 738585950 782809030 224450081 556223121 879287440 698714204 883787187 819763304 602795855 989507509 296404896 383531357 566992691 928479377 228820224 147233018 403508849 940824703 637276279 675175036 405556130 766790549 684530009 725559066 497336995 385244261 900989093 517768673 281880967 491198482 359340010 476075885 382590396 189243676 57623703 131082545 233840488 222300498 285092221 472064695 867863441 665852716 930462595 846882913 140904109 519129713 247017563 271312328 191557655 232493254 604374902 218893580 747128725 509293716 699014966 322130200 756170062 754150540 918975742 726977300 600794381 975534570 59303245 266538495 524176732 980090977 890240515 125937486 464439558 830064690 446944942 425669049 491848422 891392036 284021767 139414858 181911077 237245391 471590225 835334222 516228880 667218163 183822319 153875344 664611695 471756361 221936806 774059668 176834589 303731979 131722248 380915557 172409730 45255168 265453982 905115854 510951340 256742108 758633028 681174223 643471849 515990850 259465073 545754630 312760135 365563608 279632776 682223810 937405736 443788435 258822490 525782412 972888014 379090752 696861381 563876548 471523267 771981832 442079061 188378054 452899749 310464779 960733808 593784583 838335170 937614302 463534715 829266011 177032152 668215716 473253314 541556022 608120904 230415931 245697433 411076143 371238577 344060425 80432185 609624298 390399626 308798438 814778790 548005745 233962006 867643522 668530499 410549062 214240401 45210215 909057928 973880168 585472577 443332314 74931796 213076756 487992552 817248046 501632895 332844652 737013203 790294718 921178245 137771678 894697965 448767065 897480604 208963542 654401992 896900206 857588359 747636085 451023713 198968390 11691308 968734903 631520726 313583214 584609256 193521853 366933004 667119062 521950850 259802606 389518676 6747358 727874989 72952198 879567377 856713453 60392716 37906246 595477140 214032223 650188686 635612747 863583496 688774896 356225916 432001462 101159604 203489381 289889319 868151986 372440456 825013489 400929684 141081221 704411013 385342382 543583331 825779217 274906631 486817791 736220008 552427338 709735492 406505147 149051718 668105474 144872286 220685201 32852861 550414049 859187663 408916654 516924457 977397859 778649176 138668168 533510279 960865801 542623487 127996113 311339367 786895089 604219990 815473896 823468410 661534430 270583457 678050816 217595686 697453661 81270197 470565155 793877332 30710736 943212615 673556028 41120728 866153739 963654189 913655964 613754815 402294671 659538724 181846318 627143083 759884672 760845232 292580116 177119648 900317915 970552844 788190686 124400572 184168573 143180998 877046195 158892687 762582528 52716616 571601246 548330888 123900968 175830921 91275521 304370122 806988453 613623051 583349158 252771089 694239182 58471562 515111367 835430022 204476882 204056539 747959283 749593705 189509996 572132175 270625414 95819078 272710521 97701699 57286841 274500122 643319995 746273874 894987771 997711691 925228910 408599001 143518246 284000074 400556995 231432962 959397370 988092762 604491120 256614093 771928388 342410619 617832504 224142089 610876189 101100818 292167953 351154577 730768577 642814854 870460132 636031868 795845801 947544489 247764576 540375624 717221920 167842719 564598044 619662328 200050325 818368343 802767842 575847490 556562316 957830682 535631449 433128695 680896523 650199967 947713309 255411539 175528056 265083288 830123627 175377576 841886381 528378350 935064726 705652290 446211913 101867873 901001244 46166594 701334 372061372 700566232 580006856 206470780 230735035 515071889 877015437 64557989 439521851 811876531 812475636 844407108 149287783 728193295 518423802 969481558 295076732 453793996 855477164 821244925 365126276 92590785 808820977 114951552 422959200 51109369 219042024 850780759 522813091 910496387 584857368 847464615 17338044 392352932 747039435 266068258 325479929 961069688 772272531 843600134 132541127 653686232 812101914 656896339 211976748 537379387 383721003 462207629 866908509 946505329 751387405 334859692 210010688 42022151 542130592 433650954 99295760 999229070 752730996 82966760 248949462 618693216 926767049 99299432 801982626 364579692 75166191 766030005 275411761 734231886 871634838 977651614 36684631 139124739 457447269 130343664 623232453 732313991 763170435 288242085 64202083 424366640 390274615 736709147 845674122 755666954 137288871 254852986 180250131 777785660 888602520 944632498 54909155 621015227 317228695 351892352 287927712 665856955 973581515 853596145 319300518 557928419 741940081 435318452 683326649 861207429 836300238 398767286 932871807 624786022 870407600 904914407 991268797 971188366 636074625 332290262 326092276 817440717 732548011 451490645 914614809 103806724 53887663 36999266 526404939 124085147 98016210 533724918 213113998 580760177 698121703 664427028 672352835 350454068 846269014 252232321 389419791 766695104 858215072 924749674 876942389 697552518 296538729 414108276 859582341 188703787 818483838 942332800 226662993 236267926 27223939 236892900 938781577 944032058 397231870 922530092 91010349 43350365 351802924 755521577 810978905 398267780 851412957 485517762 958264540 949422495 389127613 94801337 659530818 117094076 808464113 311263327 908605086 550239290 771961544 452308400 367149757 47772074 649770771 31619644 528525925 61987066 708096592 29673753 737391322 294988309 254601099 99678819 49902360 764174039 480533074 986821371 202921024 403970179 13185043 820879901 750968327 823048361 60170448 844906065 793586973 116658169 477278945 979836987 617838696 940021248 785106748 984207431 775566292 936372824 141918274 937364720 260175932 274082445 675283271 325727711 661042584 62636866 780401597 755053772 583435989 905344888 298770076 266204400 838792780 872842598 772202346 173900648 966042828 422424967 292062845 39456992 857731404 662107975 377315817 6751053 562162957 287084052 124115358 263764207 299632823 169866905 43938661 481647259 72866865 394621709 13994815 7239479 475630245 747213709 172655093 232455221 52779258 303699220 570932669 490764556 32232745 776313811 860980966 716746681 746664308 614533713 403882166 832954414 407272979 285502830 170062157 267184854 488896550 93284080 812457859 155224588 478830849 275824818 434374724 669302398 645984287 687874904 221359809 974054746 551096076 724566676 363180731 75221598 720041372 662333138 326355521 394007795 952527610 833394987 304977554 589572755 984829780 246515394 926936849 116755020 789798096 299833056 820014721 810277251 531840082 77358341 571284151 282355786 393749529 144546812 474084676 604017832 371176944 719659311 96438380 233018804 454636061 755339213 261153306 391602704 82469369 613112940 598924071 879234050 835503357 811772260 368418676 986343747 539880391 525187566 873215400 877460446 406527930 34061879 749594288 309027257 717845673 889919036 911406468 158580640 297132208 194547933 200693986 85075977 309973712 333284881 362093362 756298279 485522140 96512721 445337022 507964616 20386714 857026399 16496107 508777616 454147504 943861354 803285640 777518145 975933987 733263794 938675468 576744358 181535499 550521767 980678275 309028726 331084086 846181479 409913757 95705673 758322637 526911335 840439895 491626545 259969688 880392877 911899420 137994844 971880930 864443264 15115236 997582990 238144586 694033892 345364644 675896433 890165763 125781324 920762099 396688530 977382273 116231977 92133704 172164781 509431132 433001275 659099005 93828917 146560654 408259840 899466463 32501630 958813510 281469840 1632902 588865384 341279414 184525025 667910592 432069938 375382266 12649700 691045735 451151193 161131594 343436920 710678730 297974385 716486858 912215130 803084445 620291075 611832663 8436604 506724669 478801323 851895350 901418924 934650252 569197515 642391107 138098767 669959813 501399007 329872510 625441614 774847073 921926394 945423839 369758750 62083871 749984636 338090508 157201919 702244574 731222933 475399442 3681942 498256497 719540438 339775355 503559218 368946559 948186111 388296951 562356475 827151289 625390610 425174445 716966806 816888577 892324242 33577410 498748913 387045603 261232047 919635926 967145754 365601098 521973462 686856195 606095337 173182428 593628275 224109068 221616259 565204602 847670710 600043898 711125901 102487615 95909690 470963251 884888296 618339491 483731769 135543382 6361784 870604816 199815967 156273444 942938186 310500231 758130428 808533354 98051096 995957283 352792160 409081059 987551686 687787049 190409034 195634126 348541464 516864333 740776970 627153174 427681923 396594058 269222542 816424909 753597165 716007412 535855142 495954356 767004813 669922862 786888674 535419777 683757994 892918800 477487723 236573788 122080738 79360698 544213666 47340671 498906816 897727280 973481036 650466328 960559070 245564072 912616255 705640090 586429016 845218762 165400432 203035709 432965093 427792409 914294848 164292814 200760491 234852363 351667456 817690798 603312253 38120366 680836914 798849310 474611178 818786837 987470510 468094799 977426337 437398166 398920914 729140970 584284931 71571112 781894558 180464344 92849144 640471355 111102041 188540095 321035787 380597466 234663264 401987698 571322362 721237325 959277900 862074794 908699855 268543038 860794085 588753536 688559565 789004660 559486383 169905427 979546305 671403192 581656492 625271029 174709786 17351081 687646743 64788420 693920641 2281040 514841847 260747795 256880910 46332413 208005284 76744996 449807678 836483865 528538607 129033153 811348122 827015121 587183086 977636 606335989 135543291 660371556 643118313 804844064 179719958 998112436 569386548 250268046 489692812 267960468 657262546 318656218 442788832 678661018 917045704 637631801 39425535 661805940 326793981 130007352 400995037 114385725 196186724 962040114 308476467 759234878 591602034 662280956 372795625 377772579 793041716 143265270 741103622 957501886 736812120 194549625 280089226 904530753 43180208 370733144 213921064 98218806 494496110 219176173 187419946 806907545 573896308 742775481 206109787 660952054 751917278 398702782 609874012 76603250 249561022 660944475 834156999 225425847 152324201 420696806 930094467 680255960 563455758 268181509 310197086 938623848 729184805 195967023 988703668 952868948 352314472 822208584 563893843 175826933 58077599 208295367 823893247 479387082 857115558 84227787 39073847 373117890 792188867 703602468 333377361 366212997 748865305 320286487 333984189 353433634 509202779 878501071 246329324 648164483 464740400 36583097 847905777 452667881 472224737 392179869 152626439 945147288 81369233 552884673 872026833 387296503 165317857 309428480 382776897 588150845 682861411 767894467 948789339 993523604 911841035 772281182 542747815 189264837 636870 631831094 162366678 3722972 331235793 474223384 382198818 348235722 79092921 105525013 144645367 263195995 827710422 732927617 902068644 105004399 911652568 397651285 240991169 912043452 718166813 460900252 518744532 163115514 483322401 573764639 475117652 757478054 33848693 243460806 165626653 523556852 576256109 384186992 889058164 722917665 637625453 844970305 409024739 885476549 890533603 771277742 990107113 472369977 473657069 458885639 765007380 169519699 655987253 821562391 811036469 268836811 129305120 258925306 501117929 213067420 697532388 904266268 427589242 873775419 946469842 786813066 625986450 271108390 235275918 861007198 797789573 282456583 802692571 40438161 540122970 722203579 694378343 769664854 71480739 994247442 20194116 937455125 603308989 716941397 143580890 529990730 924078352 65327264 761798050 612318429 459788140 195205660 830890245 61729587 529664779 330864668 522388712 829288613 289266006 512095601 323723483 229470945 421680966 138322479 824378813 275322597 756787064 25881619 315856749 139058040 904795604 569370485 625959237 30516110 694806 328557069 835483312 360934743 446627668 450158097 710297236 262714367 491784121 535056752 491726444 390610514 811452621 204571727 497144309 476900517 689303444 239959198 835235433 430735694 683776679 330796818 224709262 783233228 741623816 399869445 280865992 431316831 684465621 377375916 334557555 163367476 860666561 866973422 140701277 462066514 793564727 363217476 446846580 535006408 243449893 459487456 928210754 768437578 306562058 735863969 35346463 611234597 66970705 759377737 276965357 910914834 834827079 441589725 654610348 3312770 766056582 183054082 828380417 525524049 65401665 65717765 343454634 565146508 165304712 718161463 378917351 350392119 837164795 524566401 916210408 618442564 467100734 563504868 156243749 309181563 536263197 745910102 58507562 526336506 171035707 78018687 134416336 234158465 638464904 492389973 505742474 337159595 413156757 585044815 498766670 509536058 196311648 565713658 899890938 640882368 471951624 405625038 222633148 191360340 539849187 105206633 872833594 790393221 124455694 331965058 347341582 750839887 843168467 55121247 85927229 157627088 498660051 377609649 15508951 888497202 887879811 215996840 679723808 996173818 633794175 880214914 726428269 634092779 904090984 177883052 331241419 249382848 849018624 751867411 845211537 48292323 802563642 524953898 118345892 982680736 281524587 640136375 32763465 272374456 951568465 750303352 720381786 835905270 546645882 75227187 696010852 116292223 466689509 822190893 163813096 361041674 28034232 306701850 906313231 383823223 549520555 270487733 454228041 200273979 518544982 701290196 184765022 8130467 645007306 305893187 653715017 736467335 821154998 889779658 409434313 680462562 838136547 753076719 906187925 701063743 75085349 876425151 331860372 805035419 82759299 909105842 638286439 822432569 652388298 735789701 565299445 155632007 625378868 322551569 948545927 847969705 700272407 448958816 459692598 548378691 825645879 841111420 545836829 794985757 514362174 246294649 157199731 297471565 506866895 808030186 1634481 272564934 430316814 113443420 582887503 942564620 333052313 376958452 633207159 617780869 108404377 986356146 773870962 405534511 621714712 426677873 283760667 83820720 508709201 534747735 927652757 838078556 66864410 346481497 753154804 403854032 939135182 425266470 701779650 474156942 625185109 935804417 782478465 664794736 656713955 251560892 524578881 724856710 889144168 535869024 674098107 175241026 559609479 533454543 566521022 271080171 519711180 780689412 275064174 685114517 319142978 545532846 212233241 540997423 517599605 885481807 917432461 245096282 746181564 938776919 773946888 252056082 130819141 451880256 344909248 694627293 435673393 535402033 896066333 783098530 448635949 826315104 251975602 642252912 867858630 890669730 570203229 131868384 335717825 615580868 79345048 990612153 747304351 670757561 582828917 756069458 866175421 935534459 578171253 214915100 271798102 170045991 370214873 639115113 365494268 617317865 838295451 211556265 714254506 200694406 376559529 578013941 131491756 544578516 573744710 757672091 423252887 487051043 564150823 96418187 83390098 101862332 869700221 368672663 791727154 303229462 804272896 819164587 255339573 90468016 430594669 482065543 883092670 734201395 305859585 923040252 306213216 997899447 663159535 493530492 105452999 618577647 542788279 142865300 458795616 496375124 722317891 370582228 815041041 850924894 924129972 106466676 826240618 23255049 217487105 622885448 570287081 904190196 417893577 212978238 410535529 221442300 538224988 613948829 734387780 589160033 865800742 237819786 340784689 115446101 502600035 525182806 764590401 775111055 460178271 678899100 729755599 537099457 312647296 155468652 812642257 447408894 619807766 105378297 223179969 67608889 378819251 803665281 718875320 418597250 417544064 829364127 191236333 332908983 181356546 600294364 712950132 542549549 597754564 116280383 704822659 267139374 34862129 396650824 137281866 25663899 553435368 429949982 488371272 865272803 73041951 198326130 250240108 620146655 251302281 697925896 453090692 924587020 914856897 891244486 365566217 636456981 639587961 683286076 576903823 316290257 860979950 135769330 223347555 949143109 325425659 672598424 810358880 240464896 182066265 736483201 341815566 60644088 558215644 502717069 102201728 884169164 952374488 771574091 712661751 404328432 930827439 91705117 97309457 752947072 810954122 685520008 951212360 482202025 853986284 223032211 527070093 706426964 242366116 280491543 165170668 788740881 37404382 716519307 941234314 934852592 293745986 15242550 206165874 718207743 960012745 225649992 462472061 937119529 383896432 971042763 135525369 444398747 957631991 295568834 334718363 843909215 263381536 170236950 969255571 451624155 394189275 57199310 718449823 23162290 782845145 106514701 382425054 541086678 650838445 943235635 714087836 114481844 194456504 784549469 845854478 568489064 743685353 784299967 449773749 768318986 83079492 146808380 279125073 370324374 873604213 475684346 241324550 818895226 391033451 643235697 844377517 370827997 826739991 331728248 802142420 778073925 490303452 389994317 68228603 954741811 966032497 84652745 782560445 279154613 35682212 899585547 129383331 129298337 697121290 990387615 21651487 204515588 145156171 58796045 971754503 757367528 400668525 930947956 632928556 927876048 294236343 919046803 869777178 756489029 940079884 360659994 640469992 994502142 62674736 227479790 321620478 894653919 26584738 696104160 588245793 350532622 319414549 190630285 420054333 23478185 228404816 833647769 998343392 970945123 563493602 905952656 36597532 955849609 882833265 787832011 488805657 796293102 20289058 643622639 602324874 984104685 588317642 247546745 764161899 168137765 344764397 221406506 341501603 315282260 882594854 274174124 294429920 931005913 664814935 344893914 80502803 801632296 721428422 75984972 273364970 695718505 373737102 40544707 651356707 668770901 120272123 788465789 985797768 24653650 680170314 543110190 742598661 894575634 144237048 917886871 416342893 700535046 612514718 255122188 113473923 971156714 83909502 227447837 980659914 879977088 691346939 329454955 495758309 752609171 952121201 838566753 819040787 948856146 81827624 196532745 938174952 975636147 554956362 226687988 937619569 611524309 582070161 314456130 958901018 370955848 762876800 586027893 382942018 974181885 593931071 641079072 513275767 67075549 642829867 217322384 208826110 360315026 957436214 13521431 407728291 988463670 110397803 213769618 716452956 898750517 128207630 227669647 738506045 300368726 325420257 430644259 688488507 755266502 485414404 645060808 157450795 203754763 38567800 385664653 326715220 236892396 848613453 858945678 436021087 769505610 441331048 876638351 270478176 530856637 577366160 940976992 681581147 93994795 124114682 131096340 579087480 159314500 618062392 492495355 592531107 692318352 618342339 291246109 662252014 775104396 590886008 895866945 222567584 113657573 140588073 587544562 748407208 650633878 908678594 90616041 816152214 369964916 482520187 993939951 584841915 992409870 873226870 113154912 959024208 743752191 811932388 15320118 680450599 749280799 834102472 738059700 587374134 300289256 524293100 765547229 656877109 986680997 347463318 788069683 404877411 798916185 486922274 569009018 146972051 307210673 825272373 993750684 758860966 515351496 342742000 980430141 218369071 275562120 379692277 553830924 307243098 184983223 709214187 204598697 338220896 694368811 881135692 80801168 989995649 226365112 358578238 714053034 563767177 890985591 252354185 998595260 893257583 19904271 251830858 907999713 239740513 371887242 911407100 926409475 833348280 588200772 567062618 444206914 719389388 146883322 55164752 728663620 153231447 823202666 916145224 462819127 436666517 720184954 366730198 206908459 325550036 138764544 438151587 174364755 762570924 496294282 581136177 363162963 181585191 815420931 844173434 643650875 975251271 429381085 231477393 299947889 832456224 166579184 218706743 6854589 228885898 487073032 283400115 635710888 241486036 705400564 795536093 845154598 468704013 849732960 843577585 947215549 821463703 796601414 490986838 386049655 915519399 971176141 966793188 952006139 688902439 832528515 329932591 6787150 241037062 601680501 222685387 53523162 211052913 824984919 485509759 710383082 557042244 951567032 434093668 271142248 650696209 778249243 591217437 28093572 479698019 815368333 17102835 953188384 399845063 752684355 192960692 562767100 743960086 421457720 816286772 459394332 556216510 138498633 380627917 810540844 842238683 163808369 565677846 788130721 167178166 168873846 784232124 449603970 280289444 149140921 996566821 470960833 253466426 584824339 907383826 308144183 66459962 930088958 635534583 559589759 72195082 903417201 641818178 754574890 910819056 423719506 961466851 253895118 893919238 215102558 789758646 645971656 972883254 3437360 472195793 189689570 463063596 242517120 971773451 103786516 448869782 470193724 622352399 603792162 421870376 696861969 2467526 855255010 488247766 820805124 84666937 752009646 809474793 313315157 514413425 489043157 336199425 563288586 860839023 991376745 914588732 186732590 539191947 335222793 111309704 679712766 577860773 22873486 997328819 68423657 852727689 466265002 699317751 526017097 832976493 653953112 943362788 189225730 974442771 188240531 91825997 491629227 606632075 261559315 607689900 220756524 275328757 996539976 247048292 548117941 267850677 11345394 516710359 828815924 281253663 323762125 297389410 105252718 652337857 148777157 964351439 195630330 414691215 597192644 612866669 196167916 837628722 347082658 498556003 646140822 500510761 797200314 902057358 19426467 495364701 992704353 125259470 671312000 697454544 622006882 946439147 760721380 449293781 557010140 8569086 34112382 684894977 286621609 772192871 279062208 180103635 420886859 726696855 480003298 166308775 817069574 702369035 539227469 979533203 42451032 150913913 443670390 775837757 567011132 798223450 63505321 86865616 582102266 761620936 652608501 790512504 454025488 519211615 249275335 346087601 419645293 693948192 478487434 806664004 406402410 501582467 438534328 102099036 356361543 419408007 3831065 888619253 519296091 834399155 511097318 698105106 323939427 763457622 438643759 477952520 237749630 63180457 465587360 969837557 872734183 413161984 706888061 889697001 907893227 829116490 205922582 377957597 721804144 897128275 335891052 217581419 131796547 642938549 157908183 360930146 579652782 384310729 391506379 723806245 814986668 958085766 337053830 137797432 414028663 352513409 30474700 793918430 223459222 840143802 54336870 975704371 765966457 301006211 515650048 337031636 279919189 340654055 481679706 268977348 307635563 347351676 884347301 903866514 613203829 772291774 744028280 885707081 514143610 824640571 166163466 246186780 358132085 27028844 578517735 602423157 538845258 798276018 393460967 523075121 815574058 335563261 283002974 632351137 639042635 813259025 540546003 996955841 516150327 615820845 785805465 814634050 457346996 444486705 894923411 729384740 888944921 312300661 800787684 695369564 617249144 913642109 839873706 460281663 960903269 612786378 55702772 937710272 901463494 481983044 378921424 712929365 698866021 441388444 343231236 363812991 385342104 328353721 334104409 32980641 383113748 647262649 286100240 979775669 447972596 260770651 942747219 174080278 762418396 510440787 169085217 194214048 378078015 855225166 640632319 256231480 713400042 854035780 726353448 818630047 768630130 118656867 409890859 460264378 702550125 109658626 940857232 10598267 55024239 992396684 220178830 44982910 213489795 516209849 39288071 893276413 987003387 910379491 235909703 138527552 530229485 819122674 25694684 607458706 59525636 920446525 7462999 245483980 558224316 921179197 858811762 903971039 595889988 373466849 788661436 290707845 133534566 978273291 921021979 190409220 300865984 687258347 527701599 908120460 65318920 379683759 966705449 950544172 905884981 330724734 885607235 450992526 51642161 781692869 451611278 860638223 957449434 164477705 833441936 780626045 157084202 75886900 967370957 737861854 666042422 28670468 268432886 147129092 498054652 126842616 648959652 687290761 506715370 825944062 855804234 379192243 428419726 348641132 515431479 158414089 911465646 930147004 284072498 509967507 857943242 1235344 138600071 924059233 332449888 505320125 362490423 605758019 167188377 902889931 721080030 550074262 704673231 371705538 811164198 20783488 22433266 527171197 635470633 522270202 481158873 655618213 430118962 951157888 836643744 923253927 557210730 127962604 427572271 911059198 402581957 346690718 21328688 276947321 793499699 122248054 267142641 191796497 76052455 558505674 551024954 933149927 892399348 945090189 158458191 219689429 537783498 2138045 932339925 489030363 387481353 959034706 377343319 394467217 275211221 704035569 659768359 72846416 187703205 841706366 952863414 439871129 37385136 281130432 154185999 325944692 720463405 346047374 236655491 611689200 24072527 498760603 613844633 373810807 371151478 877097353 888984317 939949890 651458111 678759681 548542364 627860825 24289858 716003320 840773666 176299407 385286074 804450818 430348484 705093929 541660763 762573979 949711702 374590928 378279614 72863411 588424901 280410869 180454739 941388688 344588882 519401862 124784017 425065862 334394808 934319375 46454878 475290333 749164559 886580873 147422945 694079705 685052957 168264725 410726019 204917396 985664108 32962505 425253326 498448955 49740479 114565580 580057066 701161071 587501039 294886436 782021706 249414838 72186377 27373863 402958749 533482964 708152598 345402657 704378943 843972745 605801639 312966200 901387298 816868985 296210231 328450646 265270557 921549156 83824323 241439305 763717616 686872727 42054528 929742317 198736284 235819825 811436151 999054323 59964077 181593463 646245173 1829733 405410285 482888444 371953587 778808923 49918502 985305611 348629871 362690751 921154799 981896179 143028705 638393996 39063701 184634401 281663620 779379863 863227727 114929344 375606959 115832485 650508233 50946453 246323459 81542979 478133792 82137468 82849888 915410566 602926534 801232329 850685728 18505198 562056318 507889358 857104954 773695669 88492114 462471765 880818414 719300994 40273050 867871249 994828012 529805379 895100738 62948552 532485102 313290504 456298422 339643414 369862024 944856958 613252494 877959112 693375904 427051796 831139988 746956246 688805722 728731362 589826784 870725025 772312933 942250309 358891137 539784956 363167387 269110032 300069395 194798103 916580821 720674292 399221665 501952125 27936523 559656517 955609512 282890609 279850231 179495430 691313064 712345499 506620416 455461798 317107703 120455068 581491249 441232394 87872631 831876304 751913923 136944597 979606155 9578992 991627887 777774216 494067979 528380682 537217428 545629684 242359735 120552910 376280511 263072391 153834657 586628250 494367123 197186874 750276439 300557957 526411087 866032421 459458337 241871741 227757424 57120218 18145568 238634366 192952901 775868022 13304539 619314069 684425924 918287142 434380461 867250311 372535096 632914078 853418455 219872964 925844764 144919463 463673944 279452357 155358127 552716262 169119866 731417179 30939837 180322618 795436552 473788307 983016264 208562249 101027510 172274776 434435825 596022390 49592557 522624675 461059301 382665685 236027847 760645037 444829719 322874969 863618731 334116627 103968921 661363045 796143003 518811350 868016133 296538151 998092362 213598161 610824477 117897925 500363452 644982762 501742868 593017276 260015229 612293263 278197656 68556540 46053188 447168994 300993598 585362745 172809645 845565026 568570910 664772467 965112529 8573574 880665033 213169180 943350137 142300258 31468421 502330403 756812445 553174639 912845970 621966212 592367969 734915354 892130131 304349652 395273938 343984487 240124752 80237528 564152756 996713706 566440800 681140282 998172454 801858497 508397401 364247135 995433470 148403983 88611155 767499734 109065025 527112672 425075668 318032558 615913278 533675103 578827166 429328428 227411080 736538499 763101518 941082803 14256297 597251102 439413607 514344472 159324614 603163084 56023034 14346755 310179842 300965477 43224256 443218218 720375487 644116577 941556864 809217896 632855098 621367995 52824590 849764958 354818329 134329203 405791189 569211059 818056252 858390383 531065536 74556386 994968532 219731302 794606354 742871316 844084426 834442650 51710589 744175465 992496534 15948569 449281798 121454705 42323690 579229083 560334606 541334277 948574620 720364538 771955016 493189557 260854320 757478953 523326613 100605681 759357395 995304584 157755842 389934956 34499750 467964713 5936175 77495415 529398027 501272217 197713143 890908387 781569287 128487320 844957652 263511755 298670705 803065726 388773130 172071700 279480726 907562716 86039532 232298516 249076244 447994708 439721704 10567591 649022352 195037173 487849594 225349818 206426162 473881171 143391037 71455 345806744 501476469 799961693 871919740 846772282 360059904 241372287 52559344 590561203 625289072 733272484 903386628 420154124 500574632 563262405 897623954 777352456 38589179 864560328 468591652 356513933 658727622 223224356 92836097 952432484 347480953 289707312 427426477 475153879 266207880 935181876 464601747 688210599 724779920 666746181 528779237 497087029 437080103 491956327 316697256 398732917 777903589 867338470 592927981 307131519 351842948 89980208 859471325 585781032 995406551 461116016 121741417 468856162 569906568 123199750 396635108 435911118 293856228 573887201 868042044 958547715 369228948 954883304 448742935 66294401 445050378 564803927 651228484 656833257 684722099 124651372 383763850 962543287 49040097 892038993 622791486 54436142 256104771 400277974 232411463 375540990 253057632 744867869 605137570 368028568 330296684 915801925 237252896 186016668 484025582 316012659 517770313 225900687 676643450 677487201 381815212 135397683 622336849 602660027 447060196 674231463 158756515 353998191 319972129 251236418 662763279 454418651 964062057 551274070 749251990 680921290 50174005 34499498 855760315 124029519 574447355 221769415 188849135 335846756 834041111 45463952 299467393 937820376 665528181 853567719 965039149 145824265 59243946 77626468 646157096 303065299 379641105 420507665 572173173 339082996 891412529 636616577 266760423 986645903 53767278 432916330 307081140 926472410 2097838 696660760 521768867 513793059 648133756 924980053 735286038 30967581 830421407 579260489 50640236 452191197 358655066 952510977 504592685 252953627 250344718 586678522 540563165 342871387 581020792 777053860 755742746 778251433 78962902 94703449 979774121 784192124 64333905 900413714 831841074 341777155 177279868 562259341 70150155 296885984 703748496 638023297 995403375 575078583 754018235 806786169 31775886 506627412 914353320 748540430 515096982 484193116 385776938 360051988 237723251 819022330 117139115 142715453 735937737 701803016 375155377 154454982 723146612 400873032 685231154 353350169 728833182 632145730 930593663 727817889 56894550 645461152 132242472 239773211 420697998 221810838 127207824 681134538 886993138 316538645 699517187 21916101 631592984 141705659 258071595 776524501 58920666 40029717 607630306 474475906 406885386 678783330 249485139 37496986 877725848 596818272 613138585 39762952 628274694 293015566 173133716 825002955 90006848 609175279 569719842 695296401 168393371 374307331 653099814 363662592 121639714 176334309 330817165 148137492 935192767 705977874 435588817 592383447 398628514 439488976 161942947 460710109 915851031 340417007 82437578 259184725 861549321 607661364 745432123 58116225 451439413 750806767 476367467 390601788 846331182 904256221 571967269 872983993 13579052 727632986 80558695 853837901 165498344 504129105 959051168 740095081 506583267 168792118 229178166 999114595 619556981 220583088 785597896 399775377 291172690 894940098 950178657 870271691 397165184 520116402 956065339 603559530 641701420 368483395 333551316 973172584 602512680 330707437 834377959 467112197 985786233 993536970 130571376 73329739 928466921 547439118 358594642 708307275 976962556 905344318 699698188 874979069 978767596 127801653 307281560 80208699 367990447 480586725 397169138 432417491 664167599 221236561 478074226 865196178 990611329 8944980 505668437 760823314 6366406 185172655 251145003 603942656 717617944 920637091 553481868 250482886 843859445 908026855 690769549 179188794 62878075 282186248 848412646 258626783 278028179 581791840 95229075 580435599 723721352 712803671 563776321 424033817 682913595 303831619 645897947 765767974 162556667 462296673 336775650 129577971 438105769 60650641 473693338 525132753 418839729 223162695 799523153 464828584 424050572 5450062 313703269 189327379 223207311 549637225 672638297 566779409 553871528 766947561 565241280 871382093 429192212 293028791 119380174 966451870 864214481 79756636 129625941 177002271 751211970 628328791 273909954 217158182 88668990 700517595 639734383 865612727 359126796 117175713 243965023 898432864 495037115 188241382 840167174 997876643 199813176 660757964 406965149 947397083 963695900 460083464 188248067 141340300 912314742 268230583 548258191 367858821 231550878 380670351 709640981 989242108 458260029 521523807 249802617 361797997 686289551 418331617 471130440 160150845 263050423 879099739 184536527 120536354 933993811 769844878 74994337 968291826 66367686 807520448 498249204 923965652 173014077 445679881 580361882 354655938 635872943 760097799 140142374 881160287 10890960 206574175 226508858 3340653 549868597 721090758 22740744 994627776 954448426 111531996 804553223 547592821 84174689 346901854 914125651 733339008 341926963 282489752 162837729 6867561 154907636 937260031 967206767 507035792 171291604 852430919 763511348 122955525 308372537 579593444 857899485 845955945 807064333 319121167 543055046 897549590 368441834 561163469 751463887 742116874 110268573 354523064 429688939 813125319 134412749 664206526 245482941 812750627 709891161 908499476 944001740 473315198 884924819 133630525 786339334 566309059 355916349 150577935 237081092 590812102 29098373 636757098 225105336 575926412 117411369 985449668 530213011 740887614 478138232 405566352 649421406 493071668 595495423 343599457 612214472 599580039 327458974 632676558 791660876 673804778 580517943 252637535 721894722 246035458 12137001 588044043 833751640 150511204 324495786 270884640 107615541 930475116 975390311 134263009 626864657 385516005 546159895 621640800 86727724 761774790 572716731 498639573 521293248 114390899 933709038 933597601 239752705 329590837 361197389 676485461 267553845 504495247 337457706 888849879 822173595 945116857 758596298 12960216 146752569 485662520 547515589 309176564 557308999 594347389 613991872 537543295 233344217 827951593 266839658 779013323 603955960 756496024 797409886 439483054 85433070 974174002 864595129 667905958 925790312 653028137 39195807 202341943 611444373 434769010 623691959 204173968 388825630 178448166 841161408 698869478 677094479 316942094 653409192 670686690 318779584 65907537 576262204 295429328 285751417 509265731 127406167 266062555 227868800 997489045 134057733 378251475 115199065 932818909 611798865 498584783 231755401 810957042 517141471 83323995 229838657 473208029 477075288 929926323 761222263 791455748 452142635 384293997 220847602 803381347 88501553 595332048 520532256 29259346 84892334 417903513 652611918 487381539 282978128 309912431 263717324 309128889 277878198 664651243 186393296 196137466 372105317 196638235 327162672 236983678 321249586 522468458 747164649 789496842 184324607 450987872 18412270 854201266 981569938 157147283 231742774 365233456 368194810 400142758 634964926 929119606 776431140 97170810 127620996 866670946 684284965 384837396 189901993 329631148 345307654 122381797 241296529 951261928 574188524 641535436 242806964 810888766 909204890 67588361 428705942 536787332 960511245 130314208 881746477 742405904 113272102 687556985 138989053 681683850 629110145 536942946 970033958 744136975 459154005 412531562 933957598 556596560 664687387 869606033 646797652 906358229 79595395 774425787 676152513 337937695 817402711 385757419 961760253 685176755 308535082 30169311 69021809 473502558 223241766 206552184 200807945 414571060 485412807 510783532 281949148 631221059 435286890 592410137 579502877 914169180 888581898 311494380 236733989 53514436 468816910 660121698 391665093 186800159 55531430 570907892 40603843 185671326 310880222 294191692 584142371 99067431 194082744 599885071 782492278 440190461 361876785 55462563 992530324 443951817 198083549 340278086 544243582 422403384 579530995 148108107 39536659 800968594 367685508 648186422 832933883 564609461 103411218 276350753 900490433 271289411 699958794 211046393 674387097 465170050 619840787 867099527 781473138 508171 538117081 140265517 534965216 640644759 913900951 826280636 429251533 321942014 681860505 354953013 951359344 463585166 516364257 38070998 959277741 895214508 369517770 398235975 452184051 719719355 948721645 662830260 703366142 57356412 609991207 878587718 774187119 233842847 87581604 481437343 200544606 533096432 133409525 597254368 255749855 667216538 495150029 484817550 944125172 267895810 550256046 759616677 230641386 517942046 814406532 466930341 26828457 513887977 261061568 718882998 315196105 58608308 726006485 360995543 211120397 857381230 768407326 535604732 129326289 391890478 434863123 551986198 562281804 456748112 789722207 663901866 326311906 610865474 94903269 632457738 910630015 436403995 823888908 614429169 140018809 69112695 143956090 308432533 524445570 883774236 558054963 145580400 150765326 240043150 230204094 170596243 684115892 700540252 62045572 130654452 654126927 642906412 425938328 193972948 275732875 700687339 218129704 504212151 885546536 18142254 938080008 550362359 687165549 141780578 154128453 792039732 285636073 419870332 929005194 757156139 290791787 414838438 698439467 859846333 170235108 262865244 936762949 908515433 819106328 834740149 40947307 570869862 345014796 946837651 61702475 346698706 678857232 285785808 914399914 614397791 837618307 888447460 240483602 416147256 401492528 340113746 626052129 936953736 350175400 69240311 178144320 993623526 774251951 444594450 332864728 471198522 68392598 557128401 136218801 382334407 463953507 598496773 846943917 72646080 139855651 958303280 123385550 493974218 339261426 229286320 504092231 769380158 211873601 964968935 691998885 176799993 575648914 577842708 407119051 69982027 712150000 578399500 400635946 455015750 105611668 307274915 78029712 999822940 891171630 186411267 637045780 778465433 642273741 46562445 79761361 28072450 281450882 288588429 526022025 26330896 603131535 399374238 660722958 325876572 861691517 756439639 122495257 704866436 190378300 366239743 949019410 694802904 497270204 795629704 673229291 362322678 712285746 648412517 138464659 552178868 404226623 166400801 216139206 112461107 805463714 334935212 744866530 712932965 118757834 835026363 737169349 629669440 841359686 94783529 172168374 218909597 273684191 736308404 899423552 162029628 460219222 344158318 986945886 594053426 179854328 595527130 441906335 883535667 179720255 17986121 98950391 253858657 858289497 685156016 445169762 572261291 343094538 213797798 623128329 169586029 483499230 849574876 210745050 422274935 287992907 280765419 434012828 763795252 590388015 580304630 603192125 864770611 52690887 351607605 514752868 7534994 801127777 642159774 87345383 506658830 739758036 799277935 449655663 283353789 843732708 551711311 957471151 331858756 257098146 657335073 193993833 560904161 407371895 298570592 869287175 566149426 766955054 483481708 343475357 934528816 49672899 590599099 263233189 587891365 902237770 216025415 100915897 912718660 686333433 268218999 357143852 554839350 688941636 860221913 54457505 942172385 998992307 643195910 999999836 16209994 763706007 923691192 224807838 900550135 482901189 239737259 350081714 84462588 766447340 10651128 768925455 541922752 920058947 730874725 182345715 638270685 188537882 371730517 632854700 932108364 400793774 746912005 829493278 960743518 325441131 257332543 253858104 104995376 923944460 963270280 144178506 521315173 912026914 715349112 786338576 720254976 501441334 605359614 993840418 729019962 251852597 336676865 814859934 924132105 331198289 437642258 776897622 772695533 504264431 7699744 145664375 75237461 170487179 130361714 879961935 783003851 980512096 405418594 722516059 194738022 431716300 561957215 828624683 136253883 869271537 31895769 672988368 574329365 862967745 748184409 178803158 398795440 574485596 694189373 230183193 463614573 375746695 526489938 246335347 324987653 357356586 427438697 78483816 992542018 896604523 888496706 599393634 59936166 539539875 683351070 356453089 121525128 720881155 693197663 800832065 181791825 419907557 803197479 539147079 769416176 535806256 822512938 991687611 97849220 294576080 699122567 450347983 82994985 176246055 474995236 915749363 378606452 339049855 609026411 672092350 280988994 769599796 471371475 957519012 407311473 241592688 110982454 327225544 156282348 707744631 9833237 372274768 435926214 628365467 978249681 544921391 90992649 284951269 929165970 248893581 204835052 151590286 98058340 660092659 778122133 786269817 460427899 93396809 939472787 662497584 459491196 60313407 611728830 891834948 689820182 27955568 698371153 17931186 908785946 361492293 64419280 948767432 269953205 293160510 173848560 357967271 322951542 775069619 405428225 306981060 411869440 996807488 528938175 325807119 467174102 690187969 638677010 692506969 981466408 302416920 62984808 811916287 874504856 211515952 934159906 562057606 242263299 131822545 614395375 14768669 934859136 764222267 978813995 528257043 106157247 281373158 326161724 373014710 392866893 705075972 860200288 617630060 623966858 667178313 788653826 974703871 854724015 139401215 640038412 184469486 47787913 490201154 972825965 232493107 516601227 469033796 536344522 209650735 474759937 688578318 725456493 684487094 615308001 469843410 759767559 373624437 285739405 71588425 493113974 247468611 584574014 3192712 577534305 252835874 616036744 320427560 637803709 772401912 419429656 129403927 542613598 778595630 183208059 831955920 686357570 184961063 294480977 403578255 53595468 455708423 995814085 285579896 874905679 729002506 367710186 788844816 87979607 240049017 326259105 923528939 990779676 454488314 483673556 961116173 982700236 152511823 71873781 909467674 3593402 189250983 80686835 909807115 155261554 35928685 221862764 644647227 909235137 677624859 677530507 736020543 479309867 901240749 547149340 173520401 246830437 441113633 685511342 305111457 225959169 181614703 957444782 720169345 640207387 39405001 310107524 902922628 224756345 909651300 900278917 147187262 111186082 516659492 96554774 704247233 175084864 572949144 200136056 313077310 244704678 100166204 412198690 930310536 941009203 271225529 788794378 620712168 292832356 833215671 135979535 875561591 994462446 18481290 68126281 83943309 531237012 617334851 872169592 545264664 309625050 626652020 168837632 826021246 461284738 924076028 807647240 344143198 641945812 270680266 419502321 452286742 312243054 471287218 610486588 245880601 665542279 180195472 652295923 716072581 480953627 913743349 905223957 857729236 900938646 582960534 532062051 273746234 38371786 67829194 338718290 50360285 485073348 482982650 883436201 299587404 821364171 500464600 614596123 982746468 808705850 532438911 281511977 490892512 703073831 931775887 12651452 91393217 186730400 951620747 145568090 148820401 954355274 116118404 126842562 773278555 638363091 743542824 955348563 286107166 425584527 795659827 255168019 448701320 352637661 285228758 668377674 976932379 64239621 695384819 9812259 490088454 710283124 524101271 67535891 358480616 52161336 168425970 253969528 979420238 581780353 594907244 35986476 963406362 306766735 125283656 545696093 418674548 749464108 157972694 534738165 379011730 422590648 883588707 117132028 65464819 716101319 916746221 594150167 65965888 152042042 714062216 602048379 92792277 542746751 574310255 930371606 523794376 909882354 935145685 263937127 123784301 202594186 739159892 356042274 340203691 79351016 453716321 567910628 940881610 347388597 509122811 57416056 837513062 627131284 198561543 963568280 664613580 314547145 14341956 867490794 54174135 745280691 660647259 704265697 326440925 91239081 716693105 424637462 335374822 232979502 117907582 268844890 194188750 828307719 850800843 374581651 295437968 349547298 225961082 733090074 637719784 217603859 678396375 60237208 573038179 679780100 981357730 64817333 291112240 926954286 660883376 962954067 369160044 955889799 871916995 956468100 206161740 1456940 178369402 58662993 311266772 606924585 798696508 500616248 302108041 861616393 199518780 738749716 251792172 779287845 367664482 648926882 462257315 135286402 551905938 16224933 435839889 379709249 964527023 445201281 802086147 761390564 432631685 368480326 207234849 544264309 681183128 191940485 294844622 138293151 979745605 794767245 75094670 963364816 780493759 866392468 850778196 257775186 795990238 628370816 991108001 353363710 815507594 43631935 755193074 223059498 791170947 484002370 423010041 757329860 329879727 475139563 648886569 522678798 961722668 278054634 859109446 991483770 528866544 421136482 675161101 652061831 491640668 758230650 104977922 513790930 959001754 772150173 269554887 481094954 265356863 231743598 735957218 628579982 732495809 539585648 431931935 85296965 231097931 274829429 88563205 599016947 157103905 645185230 403348112 386855691 848798498 12882223 789287896 787989361 66582700 171908284 268959625 158793484 119196954 519507391 633797 539006084 131980740 252131549 824788009 163412342 82901185 585730315 818922942 58923940 555734261 921491628 409909110 574113012 384842122 941954629 909613843 220532746 286850567 201292409 140059721 250798299 399968004 727859888 997542239 734647979 615696311 651215128 733673549 413974200 444633644 758958181 579423825 744031846 826056510 254017173 881823041 623657134 198192563 915850667 929333497 300437848 870338063 479359961 192771492 938030 619138349 622241275 443737799 690380988 954664852 633153812 436314208 563713526 112199926 164693696 186248242 552227730 545821966 446706626 426926474 470302663 849306869 484511325 572039175 882644372 433957019 588480805 669855316 176964641 765390313 631546837 374923139 799774230 741365965 882924317 276471977 660464614 54023055 317938912 562387215 111804256 923841163 259928716 752681061 577881364 536958834 784314973 65063906 13372971 449722770 98429181 261944186 86572374 4574441 810700521 116500645 776648044 693667514 213700732 467491381 254054005 454099718 795002764 456455118 119523111 483912713 128814586 288192974 17162020 856245851 531208441 52207507 506633788 259956529 897037135 559067595 718717792 226400434 932068646 679744959 460417175 892060494 19310801 591370171 836236380 223042272 68012904 568001215 380689029 560364952 633392619 373204780 596067891 435589722 992606695 990131092 824500821 649690422 775614612 621291679 753014185 336535334 179626853 793567061 955768081 890802403 36205902 602112124 862071531 83164382 252191613 302850304 276969327 752555811 699896661 396358237 269917513 147569254 414164697 7071493 808727533 369629183 348623229 306009869 955383988 44836618 928446790 720342723 723585116 801535352 27496525 731560171 318192960 879317153 160915120 472220352 528883398 192986470 879354937 888705670 548491697 738529563 607493805 314826903 767539063 109457197 964576127 659977965 906004213 414438401 814921376 606428748 113132001 852604465 44627309 66778886 751376247 649273108 599027953 543871911 635445050 15730433 63012869 919411224 790914746 124543680 938171576 479422768 897604798 60206174 547813751 726340319 535286750 346996614 527971312 920345469 174357589 815944601 799288034 351938505 654635606 4671167 659828471 546024765 893852780 401102068 55042118 512079609 391343042 270117928 754008928 576116592 973175079 981486585 331903466 19506151 259417 881140042 135046275 251695156 630004830 788462462 828686454 123963450 278940679 179380857 56085886 352628274 614965561 578420603 332222589 162183625 645209097 12565317 582924500 325736960 148728410 91904720 95326238 805014966 705779371 922732509 497927020 845220000 308893131 407060589 962336742 936238911 612941535 173256322 143107311 576588188 35035715 14713532 613927919 648165288 358613178 161032192 671839209 636694767 888216452 815899975 993363502 144168985 729082590 686192140 131645784 212288782 800131508 511567253 709942405 439122197 695253084 954743228 706486248 980493275 935575889 737316712 902138175 189440918 904212671 258509130 453512494 464446588 704448972 219674862 776917954 110934871 458910235 812985472 747593011 213998638 455144737 628090336 860408156 805089698 21002432 43004428 861912996 704622514 919484912 75595225 926220443 74100115 41153112 822112297 634335163 15672682 592075983 545792143 40910547 48368444 352851279 846702055 412607680 980113758 689375617 914770436 196845020 796439457 250237334 767360615 331163010 323897716 92950834 232933427 110069944 523697686 880137573 61361315 907862649 218160040 373921048 821534450 865895871 705131311 764651591 37462385 440230998 876282411 890655528 66241256 380238667 287944249 773380317 172839770 622405785 579331007 773239374 592044172 608935584 615841240 575435842 492310774 138649471 833839641 442248941 797059583 559700424 4278881 654574502 988367269 38194330 364284324 849480029 668254002 985300708 821772597 310475301 97019878 763808272 478317966 658911024 343812096 792297827 185737376 544007836 348399661 746055850 234097698 448478485 320274703 783569654 610962344 582260758 416069095 391231985 551955329 249044066 101656652 873906310 693931145 320955981 877173109 972818351 600338204 607548703 339635308 348418570 471467811 441385018 997685990 365371876 635887926 406950261 176332571 749269510 339488636 978204721 97537398 715837603 782275676 75784272 398266458 85804977 159815455 61988631 472611878 939656055 641184641 216081654 195158588 871684846 395649295 79593971 554678561 540243838 421195549 569063448 901455340 108413917 276762380 164945482 989339252 628411148 397542792 860322601 285438781 332451102 250038612 949740914 944731427 991774493 205392958 173947552 129150964 266315222 28956299 180997671 554022534 169080195 500697106 638334574 441988433 643212783 363988563 59229338 180952652 972660422 62695596 477264249 331029246 501486717 128773612 834476205 297799410 868809037 410496821 231429548 360412264 45118393 900573515 964722567 969240999 579211672 953566900 834337971 171773967 118853986 54271429 291772895 916686295 764921840 24533020 446525828 344044304 689654401 98200148 802836255 290421434 160853287 400398339 732191634 629548297 809486556 42816932 995777301 3155691 499576826 862601525 212140265 932953700 301920421 802114613 296005982 516038504 751983855 41521908 993382869 397788599 276985601 851425907 147454226 698084369 142902703 444633683 654339135 144973933 311227677 354198888 877772951 465714725 125331285 471164578 420384084 313717509 953203811 958576134 942408820 249942072 491370781 208925283 465222848 70859446 332667920 468572258 720183640 532321958 492820057 27876514 355689299 218731719 633902276 468623070 500758288 260346161 563786744 536937828 444040181 780610176 915311642 663408311 825331687 976987885 978427229 282352818 678797286 448168001 417380049 517768704 503931458 919584029 138779180 105095189 292907804 510663342 250833327 444212658 480647538 421959863 968873511 272583341 681302533 498564056 410057001 181859937 640643588 252476440 327141206 862035622 727207944 782627197 697611347 107962738 325720025 116983262 575084361 726619828 676688568 252973684 115672705 944602957 615531595 191916729 788663794 175427121 453268759 324876982 800135267 125032686 155013932 429456997 884261088 265923276 685822206 890784821 59637467 574242411 279914083 946623319 330570312 368375471 898535495 506684141 850021900 696968451 138721964 477946341 950161095 675004637 716563493 858231707 336641601 170262389 217952035 40697166 1186200 271114960 784398245 590935153 219781605 455291041 94585537 615059032 849601017 992003326 698822657 506520821 838025506 858614208 410676752 464261399 407753304 816002979 540475500 9016713 720342728 3391676 498536306 790101479 313896962 531298377 774376305 386988071 708334403 524599856 259225380 683520271 982515057 329806201 69673606 183661639 931852336 496362615 303023674 288073443 882247115 556175661 767317933 518878658 540502170 949427566 749945357 534258451 902070094 22032178 839822836 52127072 871818443 399553186 54414882 875070403 969029711 76350844 824251945 796652647 970252193 825724258 345622074 835111798 427192361 54109909 904250252 796376480 736890062 990478840 686426306 165380770 595117539 391535704 277261576 758438995 204534139 933944033 514076683 279473717 736807849 293961833 675385298 906535419 824707058 642561574 516326120 179155204 878919206 442958709 225712255 966878403 491752997 515121343 416624325 519540919 655487378 403625438 927627708 645934781 216832157 646503682 482289974 16359357 774712017 895756594 321015817 737413853 857817322 822294825 749701510 441734388 193008218 392963541 374406027 692939439 550755063 11146271 590411324 904957169 526173685 108400115 493070064 2915720 869316177 584257947 135414101 23484269 652617967 257614924 641560731 788360702 818413961 94289059 528209430 806721591 366590637 839899194 813800627 819526941 56100369 605906426 427109441 225300050 431618777 711244948 639236718 136382794 109496932 284458624 415953159 650900662 824495837 747391995 27446964 189038414 570915497 692809874 338816844 169450905 351417154 333959687 582024070 84364949 194918060 214031115 272041789 908682994 295870609 71501594 63311530 762689944 823623 33525028 598067017 966299204 868372746 180398793 185404785 943155551 768756401 277290704 16962049 599237748 938243953 76523595 265524408 869357520 699445299 165276543 984834521 629912371 375273201 214554173 500421292 367248105 481070844 418309817 660528734 920912827 389020198 396724504 444917569 311227447 887875571 927659218 279196136 762742846 727183676 36850121 220308912 189007662 33245525 713413137 468418159 873455354 613527755 79904811 400972861 720714530 856760568 354272537 724294533 351851463 721487741 93589442 247572674 171532808 31566561 110969324 957194315 341671070 854415633 892828762 142512028 233226013 457731035 965867159 461138656 555301269 328908848 546420663 634356374 740299481 836296174 439672185 185944888 798152110 909726793 497631543 885794186 561337587 423315686 61633350 501718501 441294042 892665502 122333758 111996672 56179386 650347019 960599852 575189591 60105321 875615076 104222896 625532785 766077634 355369990 17019456 749078790 744666514 896957680 574831794 722956524 478049783 385007516 147515351 229574023 434770385 917209060 356825340 671422868 178334617 146721585 909453064 231355835 681229633 87383650 451027566 514953876 704273703 741656313 525093882 262605062 884468483 190279033 872685416 499554866 227607837 772878610 626641215 231730228 358919777 125647933 354023316 790573499 236823495 814982072 335103704 763446751 963199763 742633597 922999774 690201973 135982713 315398791 133183968 756637143 151675547 274743590 916802039 415434296 924738422 633780099 587380057 809365157 380147250 668936130 354124165 77942177 325692302 15138768 782228294 119775431 46813661 256732381 296952003 599988647 706712963 564338907 791873314 889409410 43340384 851343778 24789913 525132768 814097711 32986962 96311022 10714018 843106983 516865829 743610644 804229947 424363812 837503136 558241859 107375550 576594547 988315745 851079403 315013081 627863828 396001762 454826591 76835902 2062169 422253045 963397754 576983047 930146719 787483044 810005932 700611935 623703202 855606006 43840011 448769360 626143066 149997754 613430221 848042158 183379610 323821598 884872877 101296910 795863549 320218018 590347609 314988505 962947494 621041736 751388148 87749291 809256505 676598758 361254343 995647774 817108708 42541215 426068325 100838120 328254544 496382682 604346825 793465245 681768744 974591880 472550157 459450287 770737967 722739990 930587497 24509692 329063747 984980017 495271124 510765351 819913422 694640469 251307353 443304660 210177729 266754754 846424882 28592938 262597978 534585847 542078981 960117506 441118152 398165639 864622671 202172965 467401240 362692399 769889783 97993216 429367750 16529439 652706380 574306423 158079809 585493708 645783476 738556114 667017619 429987355 641332047 414268675 902297884 6354411 21596447 74626744 585069959 209916216 315189745 586820204 113887183 38877159 577933329 396451124 214091203 281002490 22093813 198095609 214189443 443355672 346126249 9346989 221141885 688065083 969057836 807475409 841102144 31533485 321137574 179445517 228846491 843643403 367368580 618353787 49910047 170250323 32770232 962327171 486958188 455825605 656066589 94863608 134390493 821892013 397229574 422477203 208502892 762491134 367544517 680810031 338709473 1738024 902505399 554154919 999485045 784276409 725334958 73085226 615802199 647336055 109400598 800959612 476595055 898330557 169042862 559094096 151696161 398603413 308724934 897767200 587372013 734430939 804840256 800327002 152963310 583015740 903484392 602574899 239752849 340900934 60222774 112770669 589733370 95512445 210276504 594762689 971758540 193789947 393746298 953354915 623677184 585696156 330959720 234011300 49443599 866934095 760076762 749556110 572029843 564365065 112279384 711188494 825436707 329060032 200845820 802940415 699056891 455076242 359196403 526180271 966040957 499959873 391446576 451711152 363746367 845218520 988083075 590099373 798961419 67100277 141623175 695227982 597660102 256398745 324730261 965439195 439401023 433664376 995479304 683726307 759571668 993977849 856223378 599906468 672317602 925090554 312632663 477346141 328756198 154118415 303490071 333522779 965569328 465755221 735176422 513360385 126246038 672891883 513565178 313262802 568881002 49088792 359019086 824026798 530302777 8960684 780343959 676357785 112091157 782255658 58174255 763024888 840060594 101157156 436047637 871884364 823686429 604678972 319716643 808775401 373894204 972894222 71735765 633037812 294374225 318994414 285061042 577729624 708379930 279241453 418931637 380486077 733173739 970616954 187126454 777142018 616964090 199227390 887946572 583249174 128311874 244647051 289762858 132007188 782676705 198564038 443769990 377333845 535064962 401945086 820585008 925844384 10457035 790676242 9532425 26338904 972772270 895273236 909879542 573675046 821114804 522820010 506011906 574428194 953269013 478347129 967255482 826695837 258756306 948405197 353782715 688493346 895328592 230516980 682283860 259897435 904770510 230271072 307626814 949037440 469643604 729849510 141398225 69161747 176722863 678057360 698029970 350970196 751466414 667994610 596021383 12348059 855580230 686166064 700924963 991530931 980941131 661568425 715566205 981522339 361612301 222506881 860608328 772633254 939235060 57927781 564556260 691165761 108165406 981181417 336437766 188723411 985935221 398689408 639250513 532959597 884213664 292160528 649128460 554009227 407792636 280239021 221260387 732258078 174277388 3260439 48823910 846600036 823154060 421023186 76173014 26441746 874640257 324800121 665734144 712534433 380615863 219942900 649390442 245502426 674003404 798054291 881116937 811176035 92969351 235038389 335956834 444951573 393843670 924750159 610817586 22853771 410333581 946025416 438566963 633753121 56051191 963402331 263285032 339097406 363097231 521968262 254506232 733442198 733505510 507156881 375285237 63317507 929997708 787844758 51707309 362217914 773605018 404640784 746143298 329415150 417061592 407958624 262362559 648051620 891588828 195726896 375778928 919323950 867908086 908856654 875287507 793943082 306954850 908924996 381273444 335064551 357495274 33825564 950637249 25479627 99211463 891596711 336941298 733493355 30739651 452920994 50245329 791976295 580655590 144535902 913160133 330717243 752441507 721340372 91708370 838881633 753238810 99207564 419969951 811426504 920521063 488849418 638895152 557997516 969893250 155113551 447602120 414337659 862774645 662028644 355170820 306023155 190369578 724842281 743391204 536176827 817517110 578892482 710245881 604847379 835021923 562206856 824773381 972901920 50583818 233171248 944565741 496156215 802950110 317391773 525461386 323592395 449024460 801284826 461141088 620076262 190205444 740537257 988873532 586804583 649633998 19589506 121486328 981283821 299320320 182468676 342894800 226456013 122230323 804460698 696422464 159131594 590594752 201044204 151620690 392112025 271055685 392401231 655500936 771554294 630608362 423951746 727463726 189524914 570554050 74221845 506029488 18859631 830112605 515627204 625370103 993815258 342262163 639489638 281416516 661796001 369509348 310630870 430574345 574357364 41749452 992409485 749726344 405288042 585984966 876475192 158020137 683880407 323675416 721841989 302006797 719965875 692537441 945448025 974397431 33417493 716742682 769340790 830059321 123152407 274980534 622124038 991024705 651611929 516297942 408954794 523037802 753629724 323583099 624216357 443576972 216240007 587967048 138350491 940561175 169130832 985211947 565227083 515919511 81737616 278347761 965852011 47744974 640664297 965046420 255759353 160554890 109548273 931721796 699157528 827813244 109856168 285778122 471286223 259423871 237829447 215829249 504270689 102490275 98003664 722670448 76434535 822620546 955863269 752929541 164861237 659309240 736293984 746882113 50978290 140524569 866774857 979855511 225606992 268176284 735007171 380298844 14889223 772010000 780898550 60865289 995920585 593262620 449619269 525227421 181915327 242446470 164196923 903242652 697824182 938197574 13828532 461402648 253448540 934548158 252049707 678692121 902547859 704975924 459647213 689637829 599926120 416384257 777963226 697968929 615231885 698371217 930657585 64842843 191245204 376687045 631003139 516226951 59906642 629300928 921585498 756479282 597454546 695382672 112985295 968909389 699135832 514150126 436354864 871079500 83846909 165951056 363223029 275892949 443352134 90685959 565359147 420748243 564335678 111350973 225427320 233215569 346436990 911271339 986865841 952184572 971331208 859406789 267131100 807153509 438594875 524079793 7882985 737190768 147041800 395434578 60149498 551330460 599924896 866385152 722294141 985207383 795197385 136619109 847583779 575614123 77985064 990115918 635914429 163512937 762807836 760052287 481113505 775340078 458171743 798981226 621374842 100615096 262530775 949326972 349623361 828555274 545677243 200818441 551888533 157386272 241386641 239155472 519782140 196459085 165900656 745383048 105815525 522568081 244888024 273536595 712650733 505635498 990526340 127013372 159594709 931449346 172095868 686088166 988615409 510834739 493138477 59441064 526132075 194266755 998265918 487966868 63463694 304189345 510015632 484058876 289372903 649318001 872163683 326379059 382561962 174276670 114283036 456220857 8910101 568322400 587761034 557131580 35602714 941810751 430893414 38540162 917164486 631765126 702481764 444195281 472877426 828435196 888992083 759792607 839822052 881524246 454417962 2536407 906183149 643759403 389892967 280167450 51345371 360254919 19495550 717476164 497665867 999129829 221232574 268298125 642224236 397008860 303526439 546923717 659254731 682748728 491683332 709792062 871854637 131087103 142363095 768517754 84638774 664980410 615549679 392036999 535613998 444104059 243176033 298706516 678512233 374204476 467008757 152999223 928286160 125505555 922435485 894539750 145730116 619043612 269201566 326009380 500902246 515440760 235624604 160989297 26510260 574197448 407990400 384449450 64305664 230490266 533330050 307303905 211753164 260364399 135468479 770852792 184346093 411464331 968386520 906291661 396066318 661455334 441831432 351163232 93432985 533071797 551126447 626738369 859724291 717615710 978527985 996659067 726370839 6938495 16102752 922709212 779902977 213881192 67826044 718863981 118283736 365423406 745217719 241579782 524749017 500573313 342452643 184867606 302962560 167663956 795997926 383757954 577361932 786724893 996169230 287612274 463016559 520118754 59385594 886129441 566720854 142624817 400842869 578050546 918081411 310889549 670486299 500057851 4438817 891139456 951647265 164417710 201889581 857164803 836263843 761544766 644298166 644666988 495556509 334623265 123136817 764958544 573183037 769154883 535301048 516478579 320718899 582988492 510464973 695720644 473235920 592874069 959437506 140817337 156977121 5127431 813729024 228647491 494701336 78023866 534623394 708373983 418703453 921120854 885827832 747412881 641978500 735521376 457085340 467954424 691338643 580591618 728984454 165563050 286903612 580263972 668886078 457621045 429013487 5842908 971537953 645121434 535446750 421102547 877877013 932203838 311876638 340011226 361842081 975587903 350482289 793144304 763148350 33438145 198768345 802945385 139645172 405679263 996665630 722689201 473814968 651986780 967275414 496272106 150750091 564068674 645133826 849795927 774029800 556862609 385877823 867106569 222270651 584839685 479499032 994457482 302252909 549734429 371276352 220433978 263505767 370435487 752901060 241625431 424626384 98608728 612681197 784822981 920791925 786978903 121448279 944538084 498858170 606098559 264303895 247748748 909075628 734285233 10473683 291805913 448639550 685947836 339032245 171852252 36393905 324451539 759481590 807157256 749506531 633721484 704314544 580459780 31049686 859810167 84084838 760898082 444732013 940712298 354519876 213523406 271606410 902964117 365611838 590357756 622569037 446674356 983011247 422399268 939941368 610102147 620302903 837603105 312169836 583808232 955996070 430078926 245738027 680402475 299732913 416820368 712457315 936866524 950553202 130309664 508040507 597657879 898413381 843888165 832318518 825775158 167828647 448241099 852860351 999953067 415441829 239755824 603388192 201068146 281530130 954372738 717008882 153364964 734785209 877333154 939087086 422493768 548041215 415407527 174210719 715953619 296813646 211075554 172628953 964013379 978072255 227475389 490970482 44106360 660698745 936420829 642986967 262501322 398124681 528364311 222913492 631608975 783188588 802811661 215014242 662882118 121670989 530953525 670144815 316855118 579746865 977912212 996726891 134747478 517092887 506051095 360467627 696567150 510523135 605027404 16982498 110756030 128950802 52055808 340100795 89647094 840160227 386780951 422384138 553518637 576508653 80189568 385306627 210822082 560312192 646719232 735239391 938766570 574025075 239005095 760520301 395128704 613449043 221263774 984030088 962804631 205835754 51486589 539369639 418506481 625192479 281585272 546605526 308505340 904001290 745360656 367479711 372090907 666074364 246267466 230663577 942750184 785244328 537619683 438076570 153092087 934637860 313949832 766747592 365980753 145686994 360836916 928343926 686087488 110664125 782136052 155623761 700507198 31421306 437700838 231630645 20936879 400316958 326358341 362311299 412856861 174106365 676596203 839273216 518462659 511689439 42254862 522918968 332356655 68258351 811509945 284444071 148983988 260452944 491176791 624223241 347788062 607339677 16930431 836666855 947808878 635424067 601083974 804430072 363667216 100994357 473835200 543646020 934664190 457787946 107383931 585364872 202977875 42277025 184849894 45951159 9700233 446942403 909500983 741494308 111562335 917077028 106429600 84669432 154239044 903415329 214900082 722288480 426924087 781734900 270963810 131929596 227648880 468597588 237397971 993254241 719854572 29801201 241645024 459867408 860838616 537963119 523571652 59189260 200100173 357813300 268693339 989389634 679483448 529495144 748950586 719373424 917870576 759627002 102315692 527211848 80209132 688138572 803963352 175566230 810555646 45102010 408033623 920053786 302922513 625200201 593389123 9878609 811519330 194483401 797709783 869070886 275578359 363737074 483905568 903578706 868854823 471836118 614148123 626923826 160546026 718913335 500361292 773474948 600024178 323600922 305250839 482473030 183901208 564535958 110666013 66777425 972740883 400373752 333501214 500606157 471629422 577695135 740637571 261572161 313076975 22420564 296360426 963243553 395996956 325947515 155289593 682834343 47920147 152902705 753707471 502917967 439583639 636618778 349253181 492629319 618568426 992001954 642121320 20896884 774155200 636682612 329304911 987761495 791761596 324326824 182534000 911708763 184521411 804290746 418666528 595040495 667713613 888151583 276714778 665797926 661488605 365012676 6083776 790683459 767064551 172200000 569539331 648016754 373484071 530011369 903080154 792032594 415424383 750433954 864071247 18445474 990653569 912347110 624470087 387045390 691344134 210964376 872361338 501958219 233237944 331473226 336140823 968153492 605271512 69225059 940868632 342550975 256135358 27711505 71822385 751283230 209944140 493844375 456132720 898665637 416305182 63365260 722923489 121610414 744988204 298513569 872087693 530434772 584232104 918010585 952355169 458729563 898819580 105893552 642442189 945074941 959202491 192533641 676885825 82109968 699389003 127176906 430054045 596013106 318123899 524107463 746154052 330664681 231834339 745001905 664284693 527272114 535056853 80438642 447477270 277950340 582093695 634061883 200643728 474677915 957699551 520763427 114567329 919823883 220579820 166991006 658115071 712163646 604910014 684944783 338942425 598248384 814001433 929430238 552753095 406447045 828099843 559574330 993832365 348298980 574009077 783821632 865520393 512508128 219029289 970345611 544063392 100417204 28855275 629401363 179117685 271689098 741777659 177098741 808445193 995485313 67651176 803722952 308949529 75779563 898327624 903082331 78619631 572935932 59859109 42884642 346013613 405308868 439261076 371674753 61544315 442277491 470432472 9554059 834829289 464455872 532524011 228407363 432818186 647563370 334802624 909481572 863970349 616570517 766857640 473990248 813327296 661112514 140881047 290516300 550801472 421981194 80097871 751549432 510244530 339826226 914835156 169844938 729885711 217197415 79212835 539144775 657135991 745724941 525208757 398029712 524144911 781181649 452285491 166761310 562600762 925244957 166152372 918421306 560439305 211222907 711931361 159107620 716002522 691228238 411384153 864627685 137129324 650958149 780084654 624836920 425228881 834712800 325224765 425065974 3806403 881194583 545233362 247537128 823612248 681051890 10906227 514369593 549100877 48325896 184718663 121838983 511096870 448694606 654854589 93332299 867834686 342058825 589666730 209760609 669858834 626447704 470434505 62607464 143551557 500930320 990643471 593801350 68040064 602898672 341494811 301596854 831574323 222791366 88011438 789576398 328868209 977769804 87682730 120115932 110473503 259024740 688011983 953746978 880566355 17276869 215389368 261842116 475253435 962850893 411977429 538840433 296543092 733136321 671089701 444197648 891232407 405432757 951697504 818658836 464631263 334811516 211050750 58282054 283137118 276341936 370692594 682116269 546748689 605107724 464083650 92924967 292563680 20749145 384939989 549658098 43485843 252912454 860228948 530884055 228539802 99411739 395000257 125849032 764165818 659447031 215099333 323675255 958753161 233511984 782802533 775960438 131383565 848414806 92504668 555433596 923430867 442984002 335581540 981719796 851611838 92265139 566088608 77719095 662642331 871101868 128116122 959068581 180052702 710722090 140257747 616108540 85708272 222806662 545345452 668866847 706007243 932455606 968590905 465296277 261999961 675628325 950314032 471451901 883591475 618780502 139882032 131899216 944692307 973089111 625565926 222631878 796889370 568903424 415538555 510725644 953011981 383318359 500105701 458116590 657395081 628661380 179816377 31385667 688345956 425737664 911576300 70956875 458000344 723901443 11160776 842895376 641961320 181109978 697110374 575544834 636799823 774707199 119605358 539453500 774578819 798450192 645442280 82017245 50360543 375336363 92619987 30099776 541562449 933613127 739483417 364349779 283677358 907834599 892671602 684482696 195438414 880563630 823108160 624552871 642892860 357853265 557466172 424467417 813344504 786724390 879087277 670739029 521308337 48885323 494853097 256839162 905919366 168281305 215675480 861729742 872681317 310818342 147872929 102353995 77648784 58042991 496685397 90139038 652525558 957138026 409981467 15880523 471307741 467547682 664296315 593689188 110471579 214115711 319558953 817820605 282274558 161674906 838533330 493711639 486331948 388317940 986615250 890665277 732292015 184773219 105758463 342737261 240248035 992229068 589885033 29125139 924181720 831361634 450527581 890716143 308401500 394440071 247154490 461847237 377524355 61437647 506289439 917406482 719051533 459938290 578923832 508609774 988267103 730791436 842513019 781658879 168883285 478580524 284123184 646201479 882971571 669867339 894601084 160794940 191616000 91994442 712492424 898756580 675748657 515276617 872709006 938883793 685376660 82670712 800040991 542865357 909806776 946893937 431091771 692073290 712176926 439726435 549899079 397869613 350582749 589883496 876315122 277904247 603030599 577752460 950028517 469723836 53727248 980179151 596330610 697636134 736313528 30995279 129782401 473280233 362030275 240357603 373806679 320260212 748264050 765802733 815761334 751654092 270308300 589760866 302762803 954635241 774029820 666150713 961692870 452165050 398612931 717378301 383727457 687585940 728147080 54610703 471087244 434767143 879572822 31011976 244287269 230542820 687212654 781059878 770215591 592273246 123197377 869616611 760629976 550965776 614929153 40803294 752481404 495931096 69396072 675573267 326504234 188544421 881955664 656599577 411731957 958403609 524348058 781143286 807434528 26121277 424788187 751486006 47524659 787584011 597407744 918952241 539072618 403191958 619482137 585997917 315179320 808610165 366456689 34193730 189609936 756333057 931129064 942457214 703030465 759662940 141291531 810069936 820070184 860398224 647894845 8145931 983978722 670626283 854932499 783226686 915267757 33292231 927487935 252190444 931974399 202427518 503930043 543001374 401863012 513854463 527408756 802619525 363491562 154585494 332594108 918600846 577610590 143449702 240056503 592968054 54958348 292477736 124768826 769954849 977700172 437163248 365483694 938976703 346269900 237556577 591781745 158489063 631589937 594724777 945162558 874231741 938314722 737067644 674607451 682088018 416139782 825713975 495832296 173154014 175589012 925244823 755617135 8686511 637197273 288000465 778044630 211899556 967236369 865128020 809050706 643373160 859563507 850304697 307094091 712260669 351931059 425380741 246832563 728413621 112894539 258861738 969283941 486391578 717245238 123260421 132303905 471313587 355381424 717853227 651941391 94436469 556850746 297084642 875330526 685183707 483815450 440904169 881736859 619849662 945084828 897145865 58291457 166014538 596701253 531691225 843019476 648680758 16293606 127714620 818792211 232967651 684607310 835132374 249880734 366881248 307487844 650210874 47565823 504697292 159485180 926837388 589170605 293237504 671968385 232136890 245070946 558323643 95552283 266355350 658616082 958195113 9637228 216565948 567878544 411921723 118580918 497025679 755508877 566897630 704893177 711815717 713970976 634488607 144525709 219842259 659850043 225755356 998746313 595314982 863177398 432955303 153479615 571092027 13811849 628837010 221314278 225869618 709630091 775979167 125353314 932541584 206532055 793570273 288122398 128175816 290765468 908580693 549477814 350242596 471032164 369557753 233612911 772617862 314074848 564922945 355544351 615638793 177789532 236932001 353855842 717321631 553380885 174672307 187605068 22374741 327477809 666275143 811954870 246678475 782901675 864481615 134176566 502694169 305789782 684501278 56943497 153587225 629533891 229769802 6975926 221240441 68904075 221083866 797408630 334098174 137008374 808816597 865816944 192991289 767025366 392529674 724688478 83374643 165599198 649153252 755188441 3664693 959603257 181531176 375551861 381350665 924018692 356133648 531917503 655100593 790282779 479920009 533180311 809587346 885461082 467403935 576710309 625753246 741347428 209442062 63811471 531228373 456830424 45425625 765248775 747568387 598380680 23210952 279063134 651840559 381756836 403787449 490021354 67634514 538416490 500589767 732037966 416748472 999116022 954651907 933192688 730188841 438175015 830757755 184780321 369053500 216528022 978205874 35716688 754850186 115427947 15566785 63953458 565923589 106486943 40052851 204337335 317513778 311559053 920830491 678341997 204654054 300875222 655125019 920144332 895164741 84099758 624563133 992478508 696694990 642988833 316044686 595513442 894493087 83995247 923586910 904052686 642376788 609912804 455692028 675392656 845082807 609757997 466868988 9688299 596082436 710328758 124629986 753201733 721529340 29159901 711791433 928693629 371547246 150311086 706232893 414682960 206635822 839374869 121435985 262867615 692809949 177567354 156743122 396401112 959843371 63479455 101464360 227280398 460653583 411519301 118002272 557011375 920841578 921997066 407262410 57257156 999796860 251629343 335828534 34480559 336393057 13739557 475638459 164973020 296471617 764447828 623374887 637185102 231654808 150841514 383656152 420366708 261903853 313837270 401417320 74841768 406013879 787754883 629466810 826880426 440707172 222945221 14168439 751725854 846261201 266522455 865496553 925561 872641808 76757793 845135089 225909066 986680245 42763584 45574415 629545199 219164351 703750023 381334933 429553623 803400322 279695665 669330972 197137000 22894482 274944335 210731032 285294371 399066024 451996850 371938631 18138545 229293617 872826100 849228843 22345020 100709206 621219490 294137893 697139258 462172089 458861764 667817263 902777317 598992723 141697636 284226491 178231725 884084628 582843299 516787754 358938593 617094471 995742386 204514599 381721882 288356588 297420049 703753583 255173108 746137147 989355441 744942915 498806392 720577871 905370365 778329572 563565954 297583973 118949016 775260270 276926013 81725120 411899185 639478269 738425771 631672366 940426816 723527021 626737582 746719527 383101917 673404000 493575748 415636282 721788927 896330299 932761950 152446104 260672075 84841139 853288127 214472724 24041600 669251305 650628559 545697446 792145868 229694530 417283688 851750881 81114415 710959396 799909507 918947722 47628126 797883121 925858395 964724799 225988836 385065610 171870006 483423194 600035268 50501031 144407384 943598995 679685941 951617407 924110878 493202728 958470007 71793030 102462674 182066185 543263292 312985070 680664215 234498061 181128831 64505845 663970090 349128652 956994061 248816401 350572062 416364994 69552088 452546603 348103641 552030029 748341693 549627890 215678258 846440425 548625492 454438905 978031 39346778 356010048 817362484 352561020 263658088 526934517 192079865 958555617 712241294 162271418 786304389 734572722 563044161 896304810 497772091 258507769 383645338 394336799 155056035 390077287 43355426 86627318 150811764 20403736 338774527 138575409 567315824 127063381 913749188 181963739 428656610 309788136 799122242 796249994 596274781 756478332 89083491 311117050 439260972 953077490 957578183 539431066 510671797 492307222 551480204 496876696 868807201 278109588 87062603 684184307 717702826 899265831 314762406 373135011 288376999 975427625 517106916 324660468 85907108 65809862 637062346 907406556 513817066 240044597 763457976 637205444 697763365 387992092 298191233 73601374 385745767 249305909 510800704 955107931 942818272 463994196 113788274 210664708 686865245 437226894 834893630 178881287 233795200 829154641 928789789 184907209 92560495 199012392 462897777 477733194 400954377 996460069 336989532 34198972 963444755 401967735 350718890 490098384 739189350 63585676 109605065 110827694 885143045 471682421 830286700 113970785 392585686 729229282 854503547 988564881 117938097 253266707 554125609 169145270 159879446 569477283 339777066 443263681 953103730 450850428 456874545 129300866 876366036 480307350 56489821 68992596 758390891 312655800 136650116 454935378 941395783 476547260 666662945 185580121 249510173 847768608 385703728 273474951 286650168 294641865 472377777 255766617 932174584 501046767 786495859 236854318 642837566 213477182 66264104 352092003 185877514 978231845 751352196 910666202 989955083 433736740 443317306 242791679 302653981 842094512 116227718 300318792 62451143 863825915 360635597 766876123 696019181 554072508 796705632 563177856 249675732 286583421 73583675 194482100 489230125 453933046 278068293 906512200 780169482 380172566 952996281 942885237 887447770 203513450 997790713 204451218 721946843 438990370 956532025 958912469 456728759 219937933 348726764 493253958 296940078 206103722 421438900 891121123 648263083 677620740 64225288 467299116 982700101 204272314 426907681 508760944 398191803 115508066 309904991 301102605 818425962 586496633 288286945 519183292 614552796 434744761 795151242 845740738 863665394 404857064 948969228 603284987 820198279 264607732 905769360 516638697 646719286 104807809 907764437 53642 744405338 731913007 583464255 21531517 37371583 338647141 427344945 862736083 640597444 953609728 799967643 47224274 422155216 589227996 160605410 213972649 432206618 232702540 893949583 619202476 599701299 443374197 747239483 479024149 308688323 326865993 382515055 757420511 913154398 992588147 962968413 976707204 464359059 380752845 769081123 972573444 885979814 927343502 900189202 564152430 967661373 361879596 719105548 597775419 974446830 720590637 648965468 748311 82168060 104174800 191115290 122733076 811855372 371848651 315065906 416404361 659605317 776866553 558254451 460419656 875398492 369206610 753449773 637237078 11143944 196538262 276717437 878861471 38095200 231585823 913735033 200697997 386699315 505887392 192249365 40228105 701865697 538604074 299917848 752415799 434134926 742201931 174867157 247121476 431878534 690168839 455523498 339728193 69410291 168083937 854191051 514043329 958220099 100680192 640119551 613221739 213918615 136173831 893483755 922563601 724283504 205185545 235031964 730263475 755765920 875344931 509375549 240077604 449451012 785591127 268110653 495604769 502700646 332499074 447052243 265984309 376635159 841626298 792852234 926452125 864955871 769700737 75573034 550044780 731232196 161845359 759408905 908177619 852533040 812535449 863428486 699977018 61577588 624237753 952207583 665514327 367358886 970004252 478971057 839254133 235596786 342748278 704457337 150225159 328481820 987088763 142306899 949858444 546349119 835965785 461780316 250129764 270986979 603668134 69204257 815136768 844205395 112559903 932620607 285482325 325229705 80215630 54921380 592862404 157172502 808626362 254478796 955110658 61172438 319505593 80645032 60493394 360921634 477905459 426744481 751084019 448875442 380761469 976702535 474360967 240187937 166310132 825033540 511834799 963070919 682124406 410749954 850687613 828881871 286251749 973958991 68935313 926936787 793022249 771267385 708527842 556554206 5558061 674253217 383517655 79389941 463913096 86834444 849201946 211504656 669138351 882978580 214569721 14082686 669425066 433931785 394425931 479500560 955625572 199511325 378647811 100198220 565910515 503833168 852342025 223391762 770018320 379455545 627797413 965687285 607722532 982067390 449297371 631464926 826947167 940390377 659177504 74103624 908655285 164588886 109817404 605025617 908842085 504638303 565812021 376327647 493842385 40789777 686942296 243818533 450741425 73233839 85638063 261985451 202206676 178000130 434879144 233366199 124319717 960797685 455664265 853224130 677768274 417805249 284355280 984943181 602527072 934273977 502804867 213659241 294866318 565556386 530111298 180012487 908029584 925279077 130688598 462519389 27231516 724493767 137313755 355753673 200757064 238108376 134392641 397827602 788910754 568924791 872046718 315587346 312847304 898229858 18195301 545373929 633396927 504822858 774584330 213088095 414990834 436221240 215509462 435390333 179046925 525711037 184165848 154196074 275189720 96642757 592961219 414210915 538844829 245632268 481469900 612852613 16003398 667253758 344801179 221102765 909482284 82166108 68462366 836693346 615974996 131378571 590495450 408090167 830827713 31207636 828863253 511758332 478803557 994018924 513730125 658717488 434900243 418855965 968259346 676028440 906777989 914107946 748653977 310359467 315353852 214296477 584928566 429406429 144848251 41984282 649660239 894614786 111891074 305270495 553571506 907732618 73258096 340508558 261576463 75886470 716018587 786290330 367243269 981617181 864701552 101735434 745690823 912779276 782278359 507167693 183633566 738854265 530152182 343915932 223704893 946068445 145167088 403656836 957351334 64689007 592267054 289750581 188661374 65120312 295820027 758857479 236696083 613317856 953466463 987950721 245780085 592745303 110905139 518372358 745964708 276824879 640675715 374672979 439211690 631159272 916870755 635292428 501526239 939917544 442102754 326954552 986908403 779716798 197889259 418309681 530495718 222621288 428472342 544959651 221969699 534706492 971377900 766752217 773835841 111377907 816758050 413399792 183354092 662790456 590563350 865492699 753355519 501728531 703357543 425134040 170629860 888104401 451243341 752352561 982639363 434877427 218577235 246047748 27320229 807030543 66559875 812061109 995317806 274715532 457765817 427449992 470412971 93822611 621786340 8774736 261427352 396205999 985376935 693220078 604206406 105454255 564498006 802684182 997450261 664774971 433061154 480806069 892538738 924795868 295739078 812362379 968200350 298189393 466145017 489506072 974994311 937611024 587760456 154169579 292017576 2278446 666163215 593966860 364115681 709629992 152079470 64229512 287589919 645127423 271339816 2971800 832177700 257787667 888414201 38156049 371145935 976890554 590384031 617727377 187446297 55283225 660684732 363157371 281847242 481844882 933086574 863875145 990114429 230263490 658988730 669315550 820827617 338246156 953912600 64340137 519079425 663064772 876426396 632039276 694886331 152124493 752690672 264428103 847824602 126619124 860411445 281106827 752724748 530948752 497509566 937379579 40564273 23693246 504014754 710809124 372284097 968905060 579840124 975653812 838626906 12918135 292927077 133635601 109910793 883481288 894454906 757510934 768854176 833697921 650078374 571419583 891812265 500058719 874427377 521163932 525749357 640265875 899689113 765949384 144745798 883142975 316170394 225950046 644753286 786776670 366902648 950193710 963215154 976266552 529264214 705485166 903174822 253311119 658644166 336705810 610961092 771875998 567318259 626287514 15841794 849069658 333840641 241986021 797066276 533380487 996054868 167862269 386159022 686822699 682648061 590062396 48109432 259335490 170932763 130332964 910924793 255599520 779436259 295450445 701620985 464286321 692718268 573060997 813111461 541385958 287004489 492460192 282609782 997717831 371379072 899598426 316554836 340203510 398762423 102951959 867217924 304841847 725767639 449522662 921286719 130485375 56413001 658832217 683410158 96922632 570214306 778278093 443238126 988945831 21064157 833148886 202861228 918505514 796962413 712817920 47866996 193721272 493608685 592888923 769654325 335111798 947746112 540153232 452149220 96105577 89572279 136681529 592653136 267263011 700255504 143240243 950188313 390191712 411134746 568935669 926205467 181130833 314917954 892068919 540300988 421449113 138263442 456352283 776709883 289011737 893691232 80875808 78712431 88107924 19882411 435971149 522539666 592654782 779081769 649335286 53890504 979095014 330210912 291401931 166115237 119553902 12013225 560249335 871886518 668202084 129643645 467768284 729474715 515707065 482750267 8948084 104492210 941334823 252400689 780710999 617677026 463419377 192901967 135172010 310344156 843861346 262987308 456604744 491680030 209820989 884295782 264212818 509384761 436381399 957039352 896889105 497996517 125546115 440981204 683283741 133682416 280578768 155041519 405825572 873592856 155386481 799681066 448471456 362500591 928476092 621937689 50539661 532289389 103907082 349029793 320122071 844560688 56807011 770555621 696839343 853458677 756829197 656656249 183378310 343853137 365271914 370818535 188648460 340504117 338186336 326069878 149237146 775109985 500750790 447992090 820592344 168914603 892627413 915409714 245421481 976810061 688143832 106831906 91893138 699266755 314234404 630060425 942886691 651890388 470165908 423622701 115369287 257677645 537211448 305126897 835310864 29308430 214799881 630664129 516139206 13250896 150839194 983496969 696866380 814384086 475224913 924981540 305983686 951613434 577374986 699754768 117941805 144103728 198226013 149360830 639456243 752116312 315645057 990341035 728949185 811189139 147975338 470281309 641739549 551882453 378894941 167940676 299816496 518467785 151462479 953633347 239264081 925407706 366113811 793152069 688009594 280622016 494500141 122388552 345618198 870292653 691278425 889002563 512165414 888512503 145078017 132729885 950355237 420707729 727550716 385106611 567996455 701337801 67303539 21407806 204643278 304887828 811334356 135743642 61881289 39518393 16073125 765662482 421004107 888456055 967335012 716515149 99872406 311988570 234992359 721142834 829553210 887939805 859514157 243883636 626944428 298351689 883840082 308832136 102101229 298771429 839674518 975199272 481420860 395104534 330529351 784419008 250946259 66240469 480087768 929674143 983990177 141928212 927489877 151084858 105423502 389705670 587413878 903956095 34822877 970166863 731341176 38690196 399113375 485020315 249272473 338954936 873463443 200718889 355992311 605712463 870534134 399066283 651923258 462269677 261741610 366626813 847944611 287683644 302856354 444126064 951798492 339766192 485421843 447301726 138284828 399876758 683328262 434613015 862533827 955554410 502293996 194728877 107156448 968309972 539692040 48788750 467059575 958038681 747230134 612188254 532569330 883372235 815828498 618058883 185139262 826561456 933622242 685613233 119040480 58942366 531584213 879140189 863694650 962899134 382419203 194303006 547862304 601495095 950392668 663785276 882868178 304739940 901660163 89805011 987277796 57935390 336563727 731281140 438840091 130809160 81853469 4953055 112845091 813141948 962680700 929939390 247486695 372303206 604724296 811644788 435562006 269024 563821619 122760608 102726973 764330155 656222724 88690518 950000661 394134621 498833240 406534720 308166306 677955907 997565631 570464400 277321847 421746263 597621907 271536737 515332844 73883777 856547296 297912623 487509713 973399260 288326420 123810379 256084372 635062337 580504329 259292569 951211087 71662915 651137216 998264256 286710593 839005327 786883625 817353467 806699552 276960716 620932069 374142181 883946604 336277435 733382642 779049038 824794089 433072933 545168855 471511578 943719166 183103030 421777750 286581751 184955658 580927951 477100191 816360766 260579034 421769844 321737672 87634996 976856840 309726983 883673255 122133231 609371316 529482275 613708358 282230524 381645954 21953879 781545285 671238539 815748688 369344164 195096995 913879162 581087764 445513548 436925968 498292813 14777636 97437091 732138304 571555295 582328218 840833911 877296633 884035136 582315397 181692527 822956451 753916531 323411513 50138801 676942369 666454181 634478387 870248467 202193268 478312101 322387218 945299520 350537335 559866726 366814737 526892155 947681976 564398695 127806447 935263278 844686957 498931282 824824067 472424474 385066926 997932465 244307876 996045994 527609408 518556738 161176576 307509600 224964435 791104931 207117286 850933743 158626104 783656243 288535266 434667522 152436924 178748195 483771054 572327728 313808956 501081327 97089346 831436786 786772288 31221920 758219085 176521152 127352945 921310356 689868752 937354690 83837645 909518055 919441539 467596996 655010287 374805257 430341949 156340639 767698457 158772894 934887255 424203998 230568558 995363768 272199869 698255062 354958335 678772777 753315879 934242015 687179183 307466624 220896543 61327666 129338766 888467107 662519589 16233672 181648241 858860763 82150237 759095761 5848702 715733023 609239187 91458424 566425067 261435359 530829890 23111871 774992411 393640400 817804178 3676804 236965983 238378425 860429241 315268638 751761558 670951670 657052407 771216411 567910877 215940695 489062067 536286226 494751430 990522870 390670792 662176979 141753998 294697646 383139521 263990621 544324039 705749303 794353130 209319634 763898448 859602411 575943906 271984904 533043796 295148866 758037214 609775719 697821853 725915583 221291618 197361636 94555853 446986756 976620224 298990893 351223322 206120284 248088430 89499066 439345564 109442072 958831524 988934898 659985156 971822196 396748044 770272998 548663259 672412203 614174821 447865486 395664126 37070123 135664547 647180424 454284107 474346217 276686584 866142787 117483493 877173008 519686187 214569318 738494999 826694585 580597363 395515136 921921807 571888195 572730017 438003054 89198995 502822266 350663252 202667558 226334772 925528004 636258273 228895023 282342331 453830715 826481525 826541397 65938590 593751730 248465804 483684574 622740667 750510029 805014708 624713407 444432027 77369049 529966208 357066582 169591840 974504213 903517365 6856591 543894201 935569338 202015938 726602214 776807277 622522458 796194463 414977129 626258583 74975443 884730540 918480122 765811044 440077860 246609076 863027775 926189011 185302666 571894994 454163582 99035068 665384985 523368151 1174937 567567400 865174640 246583187 165232198 93105618 471654620 933868449 77569325 139369829 220890893 253998217 275280412 45477072 851894542 692851520 672555893 679137505 94772454 807303646 965381945 932392826 671495858 929969999 569997061 446818198 870569918 998717446 152243845 843323676 540611970 909269550 92159686 148347859 559219628 69250248 297468611 116285354 480587250 666305739 57342326 735821314 819635744 243248806 400270474 987426842 91840205 606812256 448631701 682782091 396302066 870625346 983920625 263250100 199933967 289815645 866413814 889820460 406224523 452304234 254825657 820716419 140126515 758536165 630009955 822048189 950269105 572060387 654785929 294334775 8486926 420841743 257304939 117434244 896881914 709630990 280428127 280283651 812582878 485696038 292494939 425688003 721690553 262516760 274647120 420732746 75576490 504125620 254393416 949143819 678325317 788475838 499260896 692476005 832551938 293725643 830248520 867715969 409540013 58728312 406468388 873010336 405104350 962129996 863546879 807680749 242971197 953355588 167349738 708514790 518355132 205751939 626221090 79300886 629967202 624178603 902506374 632101411 900456591 15438373 630666975 20765364 22510534 155684922 50580749 181660666 473005541 169518628 313577956 594748375 844227761 119347499 176789871 357737476 396486479 439224605 601825274 607730114 23056723 147561940 386345011 374554871 316708459 966686077 609500135 864331537 52134255 110354747 724253038 664847898 632256504 459826494 176839628 169359171 779400605 562787636 311717851 822760479 259887557 628307104 429619516 591167719 888628849 898960783 770961471 627529312 52327411 734563106 283823485 391833010 702304570 841501623 549515755 755461839 352614640 705315210 852637524 362772498 509724738 611579096 791825006 642213193 993562013 829769780 608200307 563276886 652799498 245423002 289953566 90306795 36823465 454521766 440520759 575551863 389725303 137250691 896324140 12194335 420804453 599608550 665616612 381574980 43437263 534017618 319834910 244666436 793171639 638342425 508809036 59123182 101459344 882773256 196811786 50185864 427358207 799796069 817676173 216721305 239787426 94503973 365257913 627167678 850574946 747482667 304965475 848316246 774011300 615529825 347967209 686613183 761354674 877733359 461997504 785154529 53092923 168271880 47483581 772213786 468240930 225281471 309295239 606380328 883493189 323933652 98389523 207051532 559047927 654570190 157503198 67908276 657569202 701454022 245644523 205686260 765492318 946077511 816462111 262931327 714768697 417613454 648462900 855396937 615428170 533970717 118727614 726757217 814477206 386103984 103936518 860731756 166372026 591431853 183628507 748689569 323979045 92306603 576833019 2427869 80409242 381948572 691185841 772878333 194468313 674504291 73507112 589933229 696518486 488175088 670986116 895573090 714144885 102145064 755676198 713909965 879898810 592895478 784053974 951802700 519042382 370652157 758004342 351443427 263356690 510198460 34271073 694783466 129065090 535126548 392629187 654017803 57240231 371481917 162165557 121186805 470078021 514096868 901592300 53822262 519197357 476740370 438532998 893943558 428969172 931537834 209768633 642847483 291539720 968261705 369045860 98683929 329466108 202555755 810003590 779996194 272432672 608004767 711001873 320427623 7971778 768523830 641368532 462917134 24821593 641150208 897735345 853611815 236014931 327400832 954437479 986829323 200405598 819313051 756844607 150284664 141854510 609123764 203587891 815678355 275880397 820612281 222473953 485545717 843886205 769899078 685853815 69764499 686252368 524624161 919678556 829170169 594965010 185641583 331580392 421845190 949890251 555505184 681082816 851765354 381201446 506928233 128857021 287635920 370105869 622637362 542797892 189649049 386503814 726639080 763816731 723619797 388204099 757975864 535213963 862777746 838829474 416918325 110196588 156715606 399890482 273826532 515502022 39167420 771350516 193850103 290564023 243568812 181326664 894287959 775386968 471210237 551930045 186908050 847883183 975946208 968323860 879709196 658834387 573590467 691928596 83712343 508214281 281087604 977681441 197254926 368512678 181094781 25673272 980766261 325638911 922282815 896623686 763433864 310678689 814255556 164833133 44539926 874021236 837490590 185972016 204900711 443674264 107860807 247478581 554867002 134708711 603423555 680589150 965830992 127492924 579095942 999993300 799924078 237598138 697978462 594572783 811364455 877783181 850688881 630852800 450708014 468871692 720703714 423405001 612747037 418502368 528715158 581756728 142584114 16688900 326182369 642852154 658999464 965588885 131284183 956934595 156565343 427036766 701253916 943261741 639539472 657591800 413647091 758766985 264929545 311049297 988899600 902403260 813081576 786289338 998421453 404816631 993403358 164513106 767056598 157142570 563462237 852724027 229332368 546451477 692110750 319577607 62277504 452582696 579465810 957587153 603376719 618779193 165164016 537554594 309023342 363904717 276619314 198633716 126328182 327409416 853920483 597273322 404862988 815721540 429425160 837566140 591899454 411609969 366723804 286927058 194032544 296856642 393458032 635239934 100035575 347320851 497271674 236677579 107796925 785888775 143861368 100183408 61512757 680173790 954175905 69449805 991164805 53894194 802006108 953108452 416780863 977381991 684353827 184886104 92465057 780436980 533634135 665927509 789811740 721020801 104186372 615899058 599443429 722944849 459229862 996965113 811071625 783746135 721620433 892699288 815668245 58784580 288254810 604496185 226724429 266199312 126655262 775163771 988363441 967803264 678706100 46545510 442532957 406892108 288107724 297596202 128515964 314995269 794772621 571715385 185006716 732396312 924998274 546193612 285902331 165388889 999638312 902513188 570999809 918282191 964332125 790273783 474014661 505201946 752772835 150296789 767082923 750268364 168940026 707303615 721707714 128455882 794047594 868668814 876228042 991200208 364933940 856995561 424763339 433822179 723556130 433627459 18712230 951314889 138449765 345709474 611618987 55774927 370428104 303811642 798048659 935642983 49244251 530666040 396134047 604044111 248427181 936419298 868725017 289484415 263306959 199165793 513659862 952780820 445960860 150945881 635013968 967654457 741316904 402464749 868809880 514294654 619151928 119033981 394681261 415482503 537518345 486442526 118420118 706872214 884986580 822376927 187478082 480561606 255603578 950930064 779682757 320623528 963825888 879832053 674146131 429050988 643610016 717826752 658581489 373085836 138782382 117349759 136731232 246556548 718841415 701330656 694294150 547315400 508965995 835500065 143059223 791104417 569558964 394148343 955460874 541787527 395380200 261363596 327442493 703868750 430317306 372796783 343508393 653614803 141578268 211323041 957803147 718331921 45819130 210281570 125529296 907607269 395222365 161205324 119779118 637830159 182604322 615122914 475816912 368454267 379521584 941069821 392192363 404055859 348730448 415412090 460138756 223785067 40654852 43138233 927438 473911638 110058067 752568621 168969384 373040333 266852501 544717167 70666920 967059280 47766808 258545042 317302122 56215332 238729866 678644976 263113115 120568357 831507891 660908703 501582906 910993855 267343078 908322394 371375439 492975702 945179325 918372939 4496266 916911496 436127951 557245224 476223729 204696781 12422771 122723123 698305650 148500304 538644774 22672915 904912656 321240297 598395322 666514833 469378216 703288109 910720028 607453776 820251960 179106709 757025931 144708895 333769074 145558642 322694389 75884682 43205570 509623731 489874689 993144412 54501470 44890709 492823429 314823073 601529880 25545055 795453705 859295318 868587503 798907954 576386596 245528190 432224091 699988112 980688141 185356317 382258583 361364643 309185960 776144037 162396271 316589992 596631960 935311043 600728554 720162785 877520451 441399752 966713491 186774729 282562464 241958516 221217166 13139811 293555428 925596877 969914710 249026609 4019088 503414506 297064492 442059118 654194463 421801258 327756835 447965682 610127507 752389245 724249435 558285736 21014187 716291407 35670391 588816954 954715063 782574089 210303611 681205403 240809521 82731451 406709562 545723191 647148923 18998970 228987319 456247067 352170213 783433594 750839927 374204982 681777967 900648804 879512833 581531178 595713562 875883301 994246590 220530958 728118714 363712309 551665604 877021968 541230292 352363176 529946074 524180751 620897013 706516771 621033576 818270613 500599252 105117943 815451602 715429177 933974913 51545886 515464015 706009439 214059394 12323446 313713144 801967196 648086153 828280025 968278145 250421363 752067384 265217455 842839669 292512079 641103849 209773954 64281465 696062355 46923002 168984157 180284375 146530432 12365668 566576450 199596685 883614458 651503565 498351732 519020345 372070038 500182687 320230002 454339258 422141141 228738489 393364995 361760766 249103298 318378454 891784946 28718981 391289588 592876138 253730658 671601679 580725230 607666834 31916583 285328024 672385463 608590085 141216988 451605774 601213136 177969101 339149551 133975350 603342698 157581286 470498408 83476054 317181414 678852336 760676791 832212781 685934684 683321987 373534022 803500008 865813966 684036407 769604283 272008698 855176619 592964021 191036283 491462577 730014112 709886089 798907971 628951199 850923753 460650516 501766174 628527969 316783544 97381668 715973913 372817279 630278193 917071151 373212414 400790086 147010656 463175225 26461950 497024366 280556303 298980605 719637037 148785017 334125816 793485125 108404850 373516346 166601626 25089568 387335962 729552729 589179998 862277999 156780077 415110142 391885698 130866971 51415208 572816181 556000391 192226181 111865813 863188363 752102199 73394406 944244068 667848588 360844006 760097456 587325315 49741135 622499647 770443802 835922330 913944720 347051503 534804738 416022575 161634904 657219650 748469745 146577985 246363044 160456788 795696352 1733662 70652711 223018342 889808826 306279962 273794271 365624416 637736153 164822672 680452676 387372122 267524502 450597075 102286429 120791619 857712542 710744642 282734608 166881074 80161351 183444455 613983309 928429777 565944283 646746905 995969993 574794830 994266656 767425213 854299591 108882568 786657188 383854818 908127894 666920992 279051048 42951389 67914778 443631417 230849715 742108773 420147795 629244632 376181772 664168272 603053456 910189188 555154493 110039097 651812091 738482423 25873858 367335487 672910494 667972551 619609400 857952679 889992771 306705224 762417400 352174095 543225832 703903035 814547594 41675870 555943223 925664257 226849290 79972324 395608905 12870317 115792331 988147093 888111257 323403333 690370384 300975626 961753569 63883702 229365148 414635855 12735299 831209993 181409756 472148736 886578272 791629923 568295501 516573087 866216266 849775433 343864801 606537333 438157000 767882994 472297855 645299247 515835953 939987006 138663490 534861673 441513416 859633152 201874844 152700129 572129513 469314929 248145977 545347634 838756011 477175388 664313133 76620435 728847324 531275154 687172996 868011793 838038450 661010701 553542041 699884199 231814852 956629294 909165138 64355154 480478151 933778866 859484523 729924903 472378308 21260329 941664708 818330847 355177034 675446787 237773204 78881524 332723587 604327042 923834662 714326596 17605190 204424849 849733084 308213668 51222723 468856218 567431133 760195622 719395297 755032063 482772329 850216789 943075098 665765592 745684538 91085764 658708137 149957050 314546705 590336903 758722846 199397075 193444978 25512318 261061580 158878735 988780886 339897020 390515362 61367425 336903121 456302342 318297947 185159431 19472260 543970084 117672274 940869508 584377915 175620104 212742804 386366413 5765620 400333803 468057503 352785251 625857148 997498147 786765366 755878487 823227558 821435269 80452069 63583257 764751284 684776668 69536774 125409839 368173138 76387982 280934993 497064530 326036490 140197640 577052576 27317206 909920133 277933139 277396720 545947377 823237487 213399048 256261716 228524903 904815247 823026149 340296737 572810452 976812054 376768847 260681569 639790130 675431149 447682341 758071552 631337198 401667464 573685376 691246668 610910368 770302343 350495134 440998676 508976494 504116045 115430989 741684890 876397515 88787015 323195406 838596482 680357543 731559074 474177115 416304735 476121210 456889214 823502025 571488722 659046634 548367578 216038578 982027112 422656513 116217789 361006290 508378215 362989580 118277557 713793107 104704370 312707194 635878451 708799538 783040798 768496185 534099596 989621825 803662568 471256551 374858743 553271420 151618336 609258376 318042115 556671934 574112114 751103657 358534591 517218940 263733738 409464818 132762955 31535892 47722379 959515826 939524626 941274903 305854660 218368114 753929590 518799234 832747738 205642218 439608795 310585349 757717425 449667312 198547861 613995465 908248526 834060224 178761646 454990068 153952319 791358802 690754190 488147682 326640680 283405041 793732738 519968160 977519790 449244239 162281849 891385881 875771048 523065631 141692430 829709418 947566093 853400261 922370437 954353299 255654717 523879996 185259981 519891122 17806182 413472527 553699549 227218814 24324128 31212208 928544928 68911191 718767596 423086405 355648344 551852475 465530709 351947379 482940361 186525640 574065828 799519360 896007170 641153242 819669 786899414 512545726 284071497 501172408 927380917 480685212 665752748 603973152 440398127 575817313 368986119 455052009 456328783 63048209 786025069 938121928 305462125 470774721 815645746 74608306 701230098 913323274 325242747 571410371 631704497 489219862 234572292 266245589 853890885 930966025 310063849 736677349 700387459 14633432 884095493 180335788 548453582 538005649 173305611 794846217 143007678 956516909 36634983 774764518 332408982 429844527 976509000 782331596 182781700 830073909 504227927 465284102 547292667 985181360 62887781 121533998 420439450 73473164 648187464 410401087 993662027 461843805 922161773 251654263 341958642 415848864 479922865 850174019 560287847 718638970 491359430 965936619 254010056 363439502 973916281 834000337 838276755 597371044 575617277 905261717 803763667 934354813 602885836 91260796 748446527 230115728 514255196 476275513 338237661 577504427 811980911 931614533 264968545 838197548 456963323 265309897 288029436 323844382 333606879 669788271 247646257 330181281 495334359 227587686 300052512 272320253 564466266 539411110 885592781 508775068 160331269 24658229 651185089 444558960 887402872 498071809 434654782 83134896 437768483 708200117 673878583 225751973 834914518 54924709 954446809 859966820 42157780 658031992 727735731 629471769 336182178 353666715 648326898 897632796 992069466 72270481 594226502 528039254 245705970 284703581 978488342 896809035 347176081 716834280 548419231 299227686 879234846 371958220 661844994 941543322 637953761 423936939 727654266 804921371 732093533 574950821 282589502 108377887 905492206 135736520 62843697 196467269 957814198 962052877 22406383 890112466 578644144 620778285 404353196 110578136 994679730 551407081 238759617 971543533 71992059 796284616 790485908 156264482 32194941 487859324 150466133 332360176 549527843 372375419 973430840 588733854 454536216 842883509 219552039 120484158 700098728 572153594 438811736 918046481 799820710 327006254 976307419 781885944 404848315 137776389 297365 438725444 616770497 259844894 642219104 888210975 140471531 975951192 343374302 794880015 325203138 999041345 907186120 668824696 524665086 659180722 186891097 213353168 178991016 520371750 245931781 377171273 851331913 455048643 853957417 833411641 362286283 461115504 37694486 651112082 231175116 524014946 162148992 963404600 833597716 361036226 424162676 761267361 601555118 164751659 295459200 617312337 304927923 386073743 376599062 28817113 595101393 919884890 833453878 466125089 288348940 210039264 757437210 81274059 178840765 26899768 344017962 256650710 24641188 844433347 675133423 891528556 288068915 974640193 543696077 237433070 815376247 392861364 358462842 356953676 58257199 236563305 928068759 478047293 821365232 795751435 529206309 54642591 492268135 449483753 936215162 333394788 697179380 981639942 100365858 95186949 399404164 546459320 931442693 46814061 109714241 884068094 373464686 157649767 545411157 163690010 584904717 687939673 325725907 236789104 81153766 649878767 635097920 600586639 415229918 396394369 129132162 729649007 821524777 741543656 837565054 576839234 819420731 282461167 733663961 228445863 970408863 314751224 284778361 921677496 17316351 125439310 677001157 187698196 99423538 982986379 655965861 902349572 612191629 279336607 778162660 692628269 521350087 872928988 741559663 698119458 638207218 957605732 721440325 313326051 851914913 317185838 659320278 360481219 472647985 278808420 262752494 525549421 625023425 6825629 135031006 559377034 819962707 127110270 567733085 698702491 848496815 551353248 675287399 628047968 136765057 119863961 761787966 170829744 479184739 761853689 600546192 344232875 417237454 555505925 693926393 154762569 657955530 618428250 323065851 28513756 688660918 597006868 368770511 975397318 206431939 839529671 658562660 568544331 207397298 248538093 821096541 923159439 523660371 362219004 261563517 168533239 917547725 744896690 383422740 210898360 929691486 455471841 158480577 339515402 218483493 204540242 354795456 907804445 561037193 279145794 425162852 900400530 389547171 879504769 273187344 515456451 847636912 17319707 419719734 467713123 378488542 708479075 701875882 515396388 193638809 620466832 446692232 704395678 128297294 582437670 948791631 691504073 644695384 676172295 97509953 146222878 447735703 320133828 420621840 947499967 123764434 311546880 23523164 896432571 192400859 366111486 322505759 704747179 986969343 147483600 840627109 113265508 205424856 80406678 100721715 974308668 246341682 76617940 212901205 173379085 521957848 28432127 128571158 865385792 686519274 41402315 616792349 758130542 697450539 565274451 640408214 316140448 660141333 478054664 575115567 922839532 667508967 866357079 732714700 938643038 869964787 106109213 40723415 168929574 367714100 579956228 521603877 670818351 131284530 882712598 826604537 190919821 287567235 175479481 183587346 841069438 493890704 761232480 788793685 772679544 465968788 274093317 696458072 519301971 796887387 17303037 251818269 843921497 965825223 149337936 935700812 344379496 94572665 390160493 48164081 474292749 830695360 65129189 565613350 284315757 847543121 336525316 845370212 708250513 577666147 57363446 301429446 261379743 210190093 425364033 771577121 280784565 325296616 590719167 540991200 856269195 840146890 926238939 459252483 444432915 307640748 716063415 592841084 611307863 731336053 421330213 48995642 802937547 896268969 166728434 563618833 612729950 45122837 44573955 506993673 71874269 603475515 19713501 244860044 986447257 644361678 28148625 588300716 562622236 891647958 338889950 17941994 255066726 977350492 137497759 424659738 862927257 30025431 467292921 844221518 70830440 825701798 300533733 325973765 419827354 400251577 110471008 55551019 52090564 331299834 967036935 422978530 293588912 964008077 601047360 904566119 764323847 523008288 936035121 149445842 539680843 121670051 413648845 839200091 13943999 265585870 941432374 468194124 23413989 915493012 947053068 159425269 640187320 750853966 306967242 316110546 857382561 26143042 85092908 229404763 809883188 714056382 165931239 943834688 929757300 27925881 918948727 256063249 909921785 400436607 405509416 898012679 26035537 585097734 907808610 706938054 949168687 730034690 569384324 307326654 673125867 297949609 653480088 679376620 855086380 139343722 86442563 997307314 86541802 291966622 919584526 811882882 777176510 61511931 859685098 691270352 788080032 676075923 182042917 467519078 926596426 15161946 689252738 712784972 44786663 919098672 451569824 71244467 491680646 254959640 403374923 77000527 358762288 267223555 492466385 675069744 179220195 225665312 725525735 296960265 211651250 871200782 590081668 223378455 786232991 661868927 150477596 184480408 845665892 916131610 288649491 62314811 769667296 300811698 641994870 141175793 265261409 398181717 485686723 527037507 188417186 62215155 725427351 772639220 421132017 322523987 515501930 825997407 792807952 34754263 145929807 144437582 165694503 200071330 86521022 396640611 96354309 247828990 725468579 960870837 881475268 521064151 231236510 871357989 832365403 660067689 510396905 238251559 283779726 205592366 257416769 610981542 394355114 254808879 167859705 817273445 58406233 991671255 185368222 225312234 882290491 485448308 459215890 165710239 32887924 171741201 828443286 204481615 643740620 137032437 719061873 40860555 908774529 374507261 615710296 319676311 808532298 657012853 537837353 587647717 76253202 566288999 194444439 464017545 427160859 589364278 621136179 363331165 126378455 880461655 740953278 381280424 794786475 35120141 105424130 735570545 85064789 7625193 986709795 215864265 240136213 352617972 204230462 747573364 592460577 331305660 552385470 803686631 686923915 521274106 488379920 257621942 397973694 106862968 339263944 701926771 816730245 703290650 568415884 483532446 731472704 471055204 57225627 681719629 355821111 225503793 795613496 510818618 220530837 216044576 833616008 290766084 457604082 680716674 968544069 751578931 957747291 200049094 209451019 149804585 547490803 757078127 231985319 334338907 509014648 867648451 34245066 419733209 438757701 329079526 481375265 130106895 183208792 489909221 317357720 935033468 14886219 691362023 234611908 144931011 299782385 974084515 16709741 495048229 157196904 535959926 690046649 607902390 750988868 6543795 391290164 731927932 792730710 753296945 103001100 549881455 31494355 22585649 460266073 509989082 377494316 969920945 80043173 838867339 830391401 71673317 156758861 893680854 328232961 666488407 293409753 825411822 322129091 406170501 848629223 568975128 110641746 47150035 882953521 571100613 926009570 402175845 193442127 773573419 882918897 153552876 210670927 137680168 909459459 10845583 696071977 762416263 152309996 441255688 322335568 887079970 26491222 221105433 435082803 894932006 938501418 680685372 136619088 115917746 491069684 15580688 44263884 901438095 697741027 714737203 75290244 757631758 387159011 948091257 856606481 685389588 980785842 366927170 405228628 258990415 988754048 949550932 476652834 531489203 96988996 487588805 959373310 352748100 342639296 261516413 408115879 89375506 394092604 205019483 889118714 961279320 336671449 174284325 655063802 816244511 864783390 733218988 623468037 424581963 775882692 886606560 328067199 298838204 359906140 852261787 145555281 891139755 27910264 220326964 185708711 17054756 787743225 677900889 242819904 987798352 208339146 307613628 518238938 603488671 602698767 532532452 281884948 344326284 514170370 778400083 384110546 545394807 36715361 468349075 393001764 783487932 926430364 828405444 545319211 152884083 683681023 611786389 664922179 900116961 894982850 725412568 887288477 807153901 501745638 977873179 45245083 143886676 258648860 92640180 19341595 433693192 97763234 247104036 3562253 807961514 962968100 832435389 222586014 715419251 294671877 174642843 597267592 341511708 276368231 393780132 416769453 103545109 931221616 45734430 969810976 728650187 372943927 145628411 635548591 121183373 577637046 404279846 789887868 371118073 645308146 869954675 153942019 51613107 981659461 121523526 275529281 966416710 274881865 526686252 436719962 829919185 431866427 515248975 394406423 636091834 248769209 484569779 272750940 668778727 326308967 737310774 276095952 942147289 548146544 352633084 748412179 997598150 991220967 611600477 395667339 800595996 169575795 276069241 511148806 80235854 922801819 79400373 670861931 865639034 508628093 513102125 497698782 96990477 243730461 54487310 199315802 313872299 119291316 400131897 825332338 30260527 189766446 31308388 634553362 598234978 649035815 141868217 787438716 366304054 95233046 284642751 231692302 677156822 877951445 720345711 756417464 472452768 240372224 543765503 578966408 267486772 393962003 381062375 497933840 848069070 265238976 299342906 139693492 42781758 575716209 794037252 408363353 672240819 996495909 400659740 682360527 857962296 21418196 348242220 833781749 641217290 586458774 17178568 747108026 235350896 602936704 548340578 22906653 379715945 405309819 902776333 397272304 606658188 196636777 938321609 769005075 907107486 537004130 595108603 822826761 584031390 802620827 427741571 708204325 598475312 74026080 311187344 909716634 671310362 806909344 459928209 250107851 625959497 629102603 925487435 772810667 897738260 235464161 332194758 692360202 249887260 684601528 593472980 829979303 773483827 507364427 883576105 347482820 823765787 29412986 965471158 18393717 698803022 950454462 933135386 550829391 65736180 291035951 312232183 212331648 393149912 249716901 992613108 906308745 352700363 26798942 885597255 83380677 931127019 749657163 707849689 444821055 218797279 759774369 316924604 196966952 475611183 6532627 265325657 352363632 355510243 473479253 854134975 770897095 657426203 810401542 98709291 603752386 499431646 700615484 45021621 685707112 75932879 325889837 675893160 910128397 959401749 829420019 957913626 623212319 886932034 62917569 495176190 823973883 489126709 528562267 22507287 163628951 422714662 92974569 410410123 132915128 796074809 388079813 248586989 459521725 720171885 594434461 569529230 21760590 161891214 580858889 913663983 748915975 522105385 757545198 650056727 906402171 731906166 419805616 373505747 669274501 305406985 361685172 742627423 542145631 259262614 399884352 855936676 844143120 198885275 795293600 929984751 630285335 163119289 599321762 825958271 777027133 726624953 601180263 424311630 258938184 606556083 497776656 689716563 583777793 344863563 656440549 670853175 219090301 769692392 709214533 95974875 380626240 653936119 660491379 219082607 575216635 716313690 812361754 348609297 805664422 70640935 43757254 62861344 964425946 195431447 373285489 906054131 156158730 552938594 538929401 357703714 638465777 798156989 272405503 136170566 628269115 607703698 24557777 740163889 2000643 192216274 513462072 775777975 677878436 853373841 669039567 617614468 201808448 668113900 807944593 232836415 277870859 481871813 902523450 185880236 238784813 232639381 687101944 236430760 87349562 415434812 912089158 485444712 51543789 105901462 249770167 132460344 594780048 295902574 364276824 228721911 715663119 80351744 354235211 547254891 724971900 482799616 994699065 138361760 728138920 397247093 57286698 255199890 140958239 396922339 248289067 370809990 864437715 271807551 696228598 514857699 279239581 311572100 82779992 586681965 865900469 113637345 108367730 157608883 623672938 672102641 751005157 272331421 594199921 136521603 164436397 744381206 776723743 976324193 246940413 479417506 697524254 886031652 800858422 798312603 807749075 705007435 660981215 590426245 465162191 717953881 771884316 315931088 827557565 36632123 989096633 780016318 286285740 334186500 960245437 425884520 383715673 74782648 53131040 153058952 252263923 984900315 547838305 324893639 108213415 732578242 912421077 172350334 452443396 694716519 673371285 622645334 608720815 717224423 611009890 798852565 178386931 354548283 407778271 246434346 116525798 559955517 984826947 221373440 283731509 481103272 825064262 349728023 755709841 997335519 813365069 246773449 894005776 939875720 513794905 608116573 85142363 950609621 714395826 487999472 286227011 605965925 980923580 56525919 73429776 354863635 486086946 146634620 310352830 354141182 929194517 183456473 959039854 419213508 61055093 665823482 380585266 348215639 703098297 595092734 492311752 891898076 594288157 819341681 436189441 249525886 745874875 221322006 543591331 169597001 278909022 362816332 155968835 216405244 857633576 999321747 691265061 858942674 527390230 863727597 84097977 522746837 593955214 144462231 834563274 612372366 71477880 466209914 889520260 674223634 849241185 878214954 135509635 439972998 325098495 72093254 137343551 125463900 76660089 867005437 286373708 818806054 76311573 204389748 814264712 227880770 51384323 251770039 20309420 61069549 24693856 899806577 855871910 145980769 328096798 335252496 94798130 414326724 923535159 20525232 84812722 483455325 124399467 380470645 355303271 55946752 819057128 490646919 456288946 685690826 864728405 298468692 618020820 727221844 410141609 220106896 453766486 894572814 161206313 469004219 44797891 610114808 672547380 479336335 619626910 865662293 826475179 852318719 930607941 99659002 662760802 915746255 480356543 949558198 744624735 173494888 154951122 366628064 128159828 586876739 240347007 277795149 275155516 122710241 551431604 613667017 831664948 399324464 652822725 622145988 932265978 221926970 328838752 22650735 962284399 136066175 108630834 550517193 725531731 540398289 54019063 719762869 446252107 417646145 490944870 2364372 664803972 713726119 12544148 615326623 616477782 440725715 8578447 401663402 861885747 497978007 654790562 772205793 177234325 280341603 476767585 233404987 406548882 317140661 973031004 462718525 222664628 997044812 122740004 613220831 658342305 581272072 975373507 326411181 294246052 467726969 671931180 777437259 943780864 547987488 264203564 372070097 255628705 819869271 756566586 473114779 401820594 759179462 736153110 909498706 330933788 516318182 768287402 723047242 191374695 781134651 758693266 425452969 146515007 885905259 740526389 127638668 398791968 220645543 274729648 77702199 551270904 929548190 895009761 506640909 183233971 394687732 445370212 280192306 120389403 665580787 952220725 594883402 476700894 357881027 157720566 736038477 560876349 957596584 393090551 936407868 827542455 835032331 524700945 601236016 33428494 981492461 61376951 320885538 403432891 551849044 585188957 717344663 319611481 48838740 85282321 662612136 853888608 595994726 50833082 821624321 943860666 685690258 676642690 644190236 309620271 673722633 627691914 32216713 347049996 371330148 576913404 967510497 77186991 569014992 260146609 251405742 390599804 308369062 773771319 151045680 449553592 24976016 534783032 19015029 351780705 109259437 159813733 403787684 266976562 111678955 536525181 791854909 176977738 512639952 395221326 202328425 46712050 678518547 284890774 640037017 294620499 620198010 478562403 523632622 469017210 109563952 700267575 686541020 806566559 972699640 491323790 449505131 701878369 157596482 521054145 80968123 380560686 404990076 107573044 284990426 423394307 611934856 619925083 126825666 729494624 276401458 369890466 722338452 799032324 677333224 16962888 493948474 990184824 479718458 663329498 836372921 61746189 35319443 656657878 570743043 180445565 832413587 379990516 930964970 300480080 16529624 287244038 572762691 756785109 183422973 263612163 949290051 450384418 540217194 171516779 132178178 255033506 262722239 34075264 491237464 347489155 659871321 70034438 694279948 420752393 169307354 803157380 166949575 985245722 690435517 700870775 231429777 123758271 502214135 529763922 268614841 175158103 879960265 97942192 541664616 202410647 570281686 761365752 125261499 720220949 847606916 44498570 417310675 235195398 607888890 54333356 904873352 190253699 48970692 979940912 465922045 422596318 623279217 422777095 401122975 922735699 514483426 125471255 237350426 80106221 224080175 625665820 316861668 440786602 544395574 129860776 117990915 847741662 89521835 79518922 365837461 560260370 43297433 844012947 42825274 142508934 309431662 602519284 442417323 337557062 821623498 711815906 39101714 559703493 617090025 692181108 806886274 329769932 976263138 240547539 981698476 998470913 908168389 374298211 547122759 810142793 215334679 286320615 740786260 205763441 441023952 574009832 280245575 881316701 295144417 705114667 395145246 674296177 713404962 381327861 812014737 241136285 557808281 409073576 110690300 354971027 904313683 293291840 268601116 374204479 721222863 332314424 492975648 322036833 547088167 271279335 101275554 380359206 737378023 951404359 12631804 239743312 195727048 122194841 351712606 92604919 710796309 473124444 562099431 860627363 926353519 689389309 769855316 912188108 642876894 102832554 484597189 951237832 874060510 196189892 271983885 59864187 290194261 599144957 651855590 359566228 941922118 491892167 562374413 240311908 404439299 250966564 583863075 753236309 331827253 385681785 303318469 578098152 5039704 327517925 545414027 517164882 220509404 157533507 134898975 545735567 309883118 37830637 791228624 848782346 644289456 778006922 596347543 319939026 817401611 249822075 957566367 418856391 933798400 432315272 396468883 316380184 271350467 136806492 282906350 870470382 364472629 263597167 581522630 692771219 520609227 323837274 887498047 862449758 793698844 647427959 10364462 635243131 536151157 778116915 125756375 553669862 223496950 117081178 454497655 42062313 432506371 700428474 964718554 217443775 752017430 526685338 136869616 577834911 276379988 260313982 759435631 534177680 503279930 81173325 757833067 738092047 516719284 562790641 89579820 358733359 262200763 662145302 4846854 522958683 103643562 697901539 776042228 408707086 249150900 103037020 494448106 566071932 568725262 692659839 184478215 118159735 160026607 192481709 25653264 968321479 219587631 384391114 850952647 631639499 997076019 2386613 168888661 148160649 530451813 895227764 961164381 44947319 655124261 9247864 530689115 22227090 364677905 5613977 854332619 712069396 740164946 280862540 416939282 106830658 664595029 66350311 456230295 401173833 10747614 321825507 831498855 869304011 445944367 235315362 209183082 810307071 758141578 130513584 664875201 314156257 259369592 587251202 252723959 813442713 304949809 885289525 724369266 561818663 613999514 867213851 345856098 293824946 300028437 167054164 164709666 889271489 41829422 359808434 985090136 279742499 444478354 686295605 68773082 60601444 930830580 397354286 171849189 308201629 58315905 939185777 571513612 357749026 398298505 365243919 400769123 933051754 17230771 119301610 103414959 92637976 924511394 144781247 655462354 318256623 89956438 55440454 890359087 665233395 767668071 109307087 763238557 975610823 601734699 510031580 795351944 64010779 429661535 831210855 551350289 222210481 20601929 910634842 552957069 158444162 266092968 905762989 661372865 625004599 331398665 951468110 445712460 163238481 910499777 623377690 560543048 424821510 917929957 576630826 72459028 113205418 856478114 624345394 448432231 562317674 452487797 498578262 818144020 219757875 167651626 45558041 882009811 351132414 625490671 475909013 500875773 414242182 451948645 500371425 680504116 643914475 638592494 495341443 201556423 835156037 328340431 8973725 599011022 517312419 669608938 770929398 745685454 63552620 607193285 635985390 53336934 681861630 117569180 613378071 350871745 354818515 749930785 947923254 140790881 540627299 649496776 931413628 931980111 236338200 900758307 745201731 4481832 932706747 551726604 351288818 589850234 185724925 890009995 325218822 309748316 999510072 750424114 93800449 240873832 470632657 116067045 595474312 253414388 449740932 701879637 949304638 992173290 646334062 238150651 460747792 205510219 385490975 224445583 995666515 890755116 267022016 777940371 524174893 296913259 318273244 344110719 789130806 157876934 789144995 73462802 909583677 876940253 346178003 233830741 627186377 665701911 325003167 312576663 291084754 941571651 712633171 375929804 275233486 336564315 295353313 295911110 790985105 826751578 984080460 456473010 571202892 470694635 146584203 332542750 417096115 683467097 237878727 185821358 869597887 940848614 920120942 681894448 580614958 567117388 548616758 498883846 385351623 239050257 11883381 573850104 539725410 476406871 430113458 796024917 402020145 485352300 909057795 241649799 663080903 710125716 210474828 462083476 944532972 737929274 306177427 86822555 984619661 544294016 330312600 168163329 40839104 368617372 28056816 921478442 789806615 588452601 777259979 55957216 703747331 330667802 924061663 838822888 222899660 721281145 458358608 503992735 867991803 596162158 964748918 300455130 21872540 939832318 272622518 683280160 729570480 998412121 191054025 274962821 924854306 842342984 781906386 410821462 682896467 632211626 599797084 416914991 83298145 533713673 188989312 52303715 873962193 658730522 241660433 358661719 739910609 772180030 977123768 169144484 475329442 399998331 512765509 282422468 91471142 183715951 778997995 470661586 311488610 205182178 579333739 803198538 329100017 79048186 718983291 415870166 278089706 982888945 21018538 801849188 122502877 707018827 522570770 904773393 432632885 954404231 219938939 552022488 524088321 671829700 337384518 130636326 951442287 534091223 695508221 142691178 887860617 426276575 6996066 79213194 124209909 135397522 61848833 85688628 836892552 156310515 612551697 403004170 166996816 588936282 674617062 44293139 882711239 4069185 721395603 772198780 852517038 793512682 63761906 868032317 594327174 288478122 789996957 321811068 88162316 625342564 637477319 148242593 234073841 436386052 622883068 763777080 306930119 123909792 75440907 830832849 178218228 589268459 968576881 210628925 192962288 242210563 753318131 374945693 196769664 112253252 265306944 303250156 963287180 984275357 778508707 396698766 684921340 304504882 982050662 102248145 683999040 349690078 260393504 908010773 568053398 226248381 948606564 197520978 70243793 476239785 737189733 501488266 741179786 704398795 625764811 347426258 511366909 492042952 18151603 592806393 712338823 544932603 913221582 37083849 896494664 417261472 28131562 142501405 596098700 931017691 339722615 969970306 139704500 480189966 568749353 761619416 323291295 686301249 287757864 247573135 943326412 917293356 99062946 266303959 327826857 321279081 388950924 123376953 907054694 111942657 285803229 956946828 458490304 249923260 69055905 14753817 888631007 292945868 670736788 117888477 490082861 602406870 697984761 498943343 726166978 651880023 816148897 150821692 850303419 824388991 891293298 873735979 162390651 774152764 975455420 732058574 879696523 316908434 368341852 431084154 956812700 996704859 731928672 414745575 429419750 813865945 533744534 596207375 411687434 745835588 820472890 285344529 942298029 670442357 300090808 807296730 833157171 92151102 671264138 795410627 685799320 736787414 846497455 145203601 926349490 498370140 489824307 237974153 582263489 710937643 315600234 927865538 819192859 515646847 620252957 970917428 810618010 59656040 117648788 670790073 174700287 238484645 269526268 802727097 476630885 367540901 598419943 772616029 882811889 183583782 943007123 153480576 902538228 93053806 534407131 426624837 25638542 321679874 897091755 629848861 216347454 842686067 643408146 310773009 861541767 9281544 452971110 118994461 747365675 820523187 525293823 294875896 358961995 997203693 519292912 334960897 345039487 672379031 810947652 315427274 799342620 121967541 835033947 245074473 997678403 946732935 997183947 737175500 947401900 626973181 105540146 617722990 394256737 914088757 711998256 228731815 437700402 570354802 818563299 406811783 272460705 287128892 472553678 609016513 894848125 808597643 323207942 293804157 909853937 511743230 33764192 823635215 862555439 813292842 892412950 167135543 955771765 19460568 161259602 28748295 531492846 843805509 152459990 737416635 72880374 242884288 956878125 833320113 195928481 284101752 14706709 412369081 575860546 11630169 681790222 519070431 771827378 664430183 729443754 897961707 460255339 763539846 544805430 684611299 927546045 190775077 620894110 550887722 802963040 859000771 634647532 507503656 324309382 273402959 218709596 456688393 212226034 716666364 229137072 307676200 321867457 584292187 314681312 853394843 674834691 965386552 935398573 42275390 603989880 836501552 570629497 901377145 667789168 908375093 429525721 502254451 946608579 852639054 149129740 532140153 311610476 376771842 690146149 888248937 489339119 733719181 934878734 953123168 333849279 154899436 922730450 44339277 631344107 927883584 187578370 801971725 492655451 30573544 411669266 838072955 79449261 860656922 183198830 769133649 570129873 992822231 448650943 971802029 219235299 13817822 241286105 385902254 888904092 274350744 370083430 905781435 45330179 738771780 601156893 503029636 192781844 833265434 588967668 196129690 922331042 861172279 455785297 207217795 815261356 146022822 88375619 207355337 418407643 21393710 998024037 629762896 267387887 870282501 539251345 420737378 421276122 927167301 209395142 243884321 929637800 747486655 210924208 698732422 543084746 382640453 747944450 614669266 952509608 250486807 374187433 965208466 179307471 2141105 956348265 470275289 412696467 30315148 165090368 695184764 318219378 157236720 960434855 843598990 903863105 346706169 726596614 655174633 114807269 305502861 366867200 102666938 234061777 134413477 489969281 422730985 586191390 104468513 484967208 353824756 984480987 880135517 188531915 143917965 840700262 845084298 698062163 350409277 431037749 160037324 805716083 490968020 613667589 393136925 696129615 918719149 247142427 812755634 978198349 302819654 399787907 186091688 923990906 720823907 481269718 717994997 57891336 481153162 934405049 27271280 404988414 716035260 703291804 997097792 77175669 632754284 188429315 845862849 18768818 991835386 857023033 518105937 634191705 840841738 679819355 383915420 312704744 877654302 39984068 31455081 588278170 112218658 699616124 692367295 806042006 630208627 183369544 438873184 167380006 12602114 133250981 797835368 240738486 529995874 853488144 131748630 694927671 97567904 363162801 675077808 622588200 373696539 106012668 697160566 344758610 655586383 793578699 253126355 819526990 278667125 480708890 511196580 34195230 817242184 80388333 272006850 887912920 750970691 947697706 299383006 298202861 655988185 863857139 315381509 95728017 77979443 499346101 225037801 142188750 585624385 238155998 421999298 384081778 288098667 476999164 374892310 886651701 547865353 914914482 53677964 853802932 249147146 931756953 830865649 78101928 802390311 42624281 976706077 146657876 670946542 118138212 157146752 583060542 397772374 823004257 327971506 372337028 590333036 84369425 391730124 254866540 587539314 159445028 579061323 109491910 364879360 478679372 608015799 230466771 275609746 845866640 670219043 798289507 762089953 261810866 450482443 222026175 943702442 886048106 649078103 636083132 270689227 102575376 371859210 152109922 676193462 537870822 448346917 707079768 682122257 358685933 588495161 796591399 973692247 189331943 207954262 231947509 557878017 505202643 152979489 733525388 450514932 85977560 829258592 778671761 318590765 373238183 636333188 343562457 635785479 942591556 320121590 296171507 214345779 645023252 380307435 572684923 550840597 743835608 439379143 378371012 681045177 502432169 594697922 493971738 184836721 673472603 782030853 398386521 481897545 111038895 779492351 880123610 112508139 891646920 413141007 883440502 416704470 959401314 969682272 498156660 238671122 722258933 723620304 33152712 996837073 24212574 870227327 170247295 161140746 394329504 30150035 749731715 376474489 430012339 200886307 276223519 35072805 504796270 488067216 182854531 120923525 846400198 508528390 248356946 137396476 782844205 739670579 902396168 882860877 254328528 892538306 601638342 540510840 145406441 603525000 174581790 981853492 982758533 513652595 305029929 450879199 96853557 220486727 163246880 485322739 941555075 766316890 140177907 692768028 804586937 965154109 323943818 651637000 822071193 346133284 744202480 920553543 176922629 201106205 600277866 986757187 304841856 504626278 290761830 736316693 960708482 114110815 117574812 737635122 746064541 923700226 790403706 559473486 445880269 193497642 244024627 806515764 81392922 211526893 343366320 290535457 360673528 954992851 193472441 882106843 862676225 491539573 4768524 738591116 644834567 926900979 734242858 977273439 877201906 575980113 936979964 329155746 612270425 570539483 293684671 876375860 822884919 251083123 31805473 295726702 518311326 319339359 837172456 795688299 374837946 952879247 122569510 119965502 142412749 153443587 531649891 929114450 695079584 712644902 679580511 934406621 173491002 138126638 8660338 674693551 45435547 385784914 75684310 168099750 455229059 170450636 585141944 366034105 880815093 686675095 17869523 33915156 555534033 342363495 722596667 526524935 253417291 361702224 433921225 700216825 285620824 819390540 637483882 975915257 404676221 407674391 726892615 896999291 323648321 502033432 93945047 656680243 875756215 183642866 936039304 676096041 857909694 409813612 399677273 899429048 354583001 71944375 952782441 417998157 548339168 222819345 675359509 454315968 970337419 64641560 744765454 909922971 537771966 392260818 539853640 138307812 583853270 426521472 561224791 852784393 442194354 127269151 768772543 145924369 171563970 113929073 826403405 990834895 284460087 254458658 642012942 69549356 830105084 724222469 572759367 414196630 57223326 892741752 580654333 997776591 830329743 74697761 166763910 466692820 251433052 642224847 415911815 951561961 580719792 522961274 792738497 762485589 770127835 34095426 733021063 433210210 100604731 940667291 75889774 456650289 13719324 352769350 414067197 228538426 609013807 254341684 149264770 87951753 987949362 83488756 256389988 744660291 233263551 491803407 775592995 543488128 394128999 77394228 530681974 714779622 338701340 119960220 747172893 134326812 958907712 258762817 888749276 207401246 151696860 4906513 599519717 831162119 465736879 521340973 577877269 311798695 203188287 853183588 850596939 2721293 478984987 199655696 893521919 601484084 933728417 756121109 450094416 859862380 272998121 102334551 208376998 395255477 837990867 803733314 777637331 379809316 112072490 446223317 103687715 649894055 758623602 512962173 39060697 98787319 98121570 108076969 655819760 844542320 701146265 39196088 858665729 218822615 428576364 206581696 544301313 665931036 618763141 988187720 398398259 477743139 625095396 204017176 909799709 324556790 427807777 110423721 767581198 652256681 288480349 817056775 664988724 297700118 831191275 326707533 678606871 508719591 203025683 344832137 136469552 888615164 960844457 31230002 917534309 236221571 840567068 120799224 683176601 680846016 780090429 884235197 486794689 96553539 512200428 798197321 368448256 382661201 941026841 250376090 358549326 635341638 242113080 793854534 395423475 648705787 854312320 736175574 935457191 852952866 913054369 336978534 231583042 497834885 685164155 799518729 477795160 315668331 109465489 919639702 171226215 21594280 926791506 508871114 346273274 119788166 118055109 37160551 216962948 795655325 566614516 619666576 739560023 353346249 953882726 764322207 419563600 789230494 256290718 911803037 773617427 615974239 289237758 81643335 16427182 734432171 213875087 592739030 863913141 947661949 27908257 846091789 383941407 251834659 863352151 510142503 195425012 402503687 154716066 929681104 286893728 517674071 280859857 440520871 164711445 398097109 133382715 398937723 763613699 724245380 969596808 309762032 140972259 185940866 126283067 796878205 809297429 7374148 378247838 633434046 911623615 932798405 772674445 465085368 27172337 700864087 959703281 324549002 748125426 475083237 489466014 304557653 606468678 693932483 731573610 710110938 54104204 407681998 511424596 811186205 564667502 64707899 372215303 624728122 24659228 209696516 559875049 961349824 378061234 198537646 423902949 904306843 61256083 120884625 45174370 693666810 856630404 196814938 197903330 721202642 337951657 332593724 654067266 875972165 871256814 834920983 342210997 658692129 991875377 876748380 393563709 227497237 339479657 264634237 29862380 758720076 184136115 945104856 325927978 989573198 402029379 941206006 874490069 285210717 608433624 132627045 821515693 620677849 79149805 102278977 816237508 145544971 418846520 334102271 749156665 777447658 333182603 324474542 879954606 370975516 857489479 714205926 444820257 757228252 548486434 461388118 530869723 607660542 11882275 242135708 903829191 190457078 141346427 681869362 177917106 14805234 546539796 978080973 17374178 174556536 456376795 528370090 393502692 217698782 769009867 437165112 391654675 171874349 814823987 589443148 557013028 657681325 854695754 174894223 581686050 868288444 9589312 296222584 658794570 884255573 783573269 499050260 286304379 97919290 278192833 508969549 997907105 491900627 928135683 141333697 113619885 530605548 980590412 938020002 712775696 550636127 796117944 512823859 257930212 656732138 966002922 308348372 366974469 946410753 995916382 709429176 61477873 253193064 362400446 379169831 818961769 521150690 978600771 446889262 833292792 850493092 868884870 371809787 550848229 698444246 722573019 876249448 314413951 515349924 352220182 578540573 975721606 578400094 164185810 271186216 901264279 527553515 874695614 363971725 851455941 255333113 728282370 944878432 808252386 151078028 38644652 715873377 497549479 768027928 837883026 297433079 256027634 478980480 516843739 741763675 405096955 92121553 486527863 137259428 356968407 149689574 705946624 413534742 409265516 170749617 954318089 297713225 654948991 929696620 442996924 494582661 221996284 299556944 726835082 998102641 154548057 141350909 744891416 998130738 21529164 26795347 5712358 107139645 528773672 167837460 820990947 295726394 310589082 22752147 583540398 340433907 754737833 573126208 230238394 203008517 529239637 122946398 175671666 842229127 734667956 573562757 307874359 900897324 586989698 504712704 475510860 166833936 476621721 693543798 707767663 326916643 601830778 314639384 203313596 619658706 295863342 417172198 321883083 259876135 219725010 68293157 456189546 234406331 824343338 48762293 959899212 120936596 580292020 573049622 952974292 725359255 612824279 968257694 67332129 587037213 568452410 910405336 486940215 603561576 650436252 620435849 219712379 224293661 196643466 72541026 733801655 14245315 488147967 318726159 231741897 235187199 668650288 599270587 386327066 411905061 423599924 654178393 135757871 926593055 520369830 82799631 779492288 607633801 953919973 580687114 845877616 736420135 359803522 953955626 559863388 615867367 85457393 646026477 502327167 817239150 250304799 216011686 387183664 277048677 1472704 555251760 539864148 876231157 5181446 759089489 167060008 304714309 308143762 632361044 803928612 51664633 938305979 505174877 830759681 88405221 105160430 618361070 732843665 425071052 135489426 635815653 898079155 946709883 32889344 453671799 146121173 431947369 66324810 607648179 757787666 258295268 567610432 370074979 770906432 518049387 602835863 707294527 121607541 324123724 988777264 3511969 252913849 770108086 147983160 741162332 363089891 926561466 422044646 323352960 841210840 590483050 288506983 810283330 85509319 374379044 104009759 413252013 522417542 951826443 975084059 971903993 171848589 204914906 597783245 623820724 972836026 523093846 952334090 444429456 809000787 615652917 712197001 290429848 671029441 663598051 59431048 307270229 874467496 978263171 75262367 975422612 900400255 164766308 645806951 757648380 338433334 329545641 739015949 831816541 919137926 652648609 973541331 637196105 101623851 690613726 386016895 968440627 135450264 289123988 282217127 51769921 426504490 507175037 447487357 715736831 75444227 199939410 193254263 883756976 737152881 930877840 357850282 560898875 307115791 805805525 385769739 807996639 198585785 386614737 281673369 933145614 653418464 540122530 500218335 455795439 519279104 357315210 26587520 755207121 422261272 3780238 389607544 110130005 115019293 933962602 982367064 445221900 688040816 334914667 109100707 847584229 512034807 115994724 788899011 914833057 66167969 94499210 155449017 965119775 606793024 496904153 392097717 297903590 848497734 593135403 352811509 955774962 854433266 91076348 830178595 750316619 623643993 831103682 628189502 680686935 533037806 868925955 422861106 121200055 931800224 573079317 180375457 389925818 39326512 675878539 227227662 487291989 496415923 362474388 554663086 431299655 442192454 897201013 394822452 143466633 205790401 722998914 574978183 154718293 406492954 570057520 694799950 458239319 624305919 612982248 646359131 625423661 675720403 50040439 205409597 593171919 697697802 7379 317670176 39095461 182517525 525488289 944705515 739638543 658336804 31866220 836874819 420975827 908441000 551353970 954903464 600591759 277170735 151488310 759055162 579771039 346573396 543737816 294107589 83391763 18303705 242806941 747221972 943944190 560132789 440587777 930506933 563913698 216963219 758830335 441097247 542279801 413657788 407340640 125496905 954141032 492224439 201263060 125099725 120478131 550293208 376901949 321939804 203653457 806794283 364800081 921964285 676703544 890623964 257366998 558146964 840897013 631492675 649597947 611548144 223002285 390748241 402528044 744872318 242428788 24213448 36342678 787584806 109397037 101569329 300841160 838995246 867115666 690944879 870456055 639249706 758902741 923403747 634381886 639721802 867468157 799593750 289016358 989742419 696328247 54966133 986423447 722835313 958791234 10227095 151830721 445495909 20479635 959838982 609689626 216917181 203194220 993059844 590628797 375757806 127276118 23650833 945120005 249949690 861717033 350262438 495108536 5901324 308296280 246987419 731621112 171285655 332070570 612058093 365332102 663541535 998698131 728654936 22113749 359224512 952590028 354605252 978027519 776756952 780489495 362624880 563200362 465900369 304393407 625818213 509243444 678136290 372464620 113836387 749094575 586001342 847517361 369580006 509935746 682857879 868982765 829954526 212799508 359265810 841967234 289407015 353712080 710324691 240756000 494271463 613536132 87543816 326602084 167165182 608775923 987159585 692262930 436965474 243414861 7766695 507639670 657006022 367244380 635110036 40702419 383628355 201078152 442399672 648135301 759594637 717753512 208381506 976993208 850924489 364895319 316654009 961596435 580696161 870197920 837637221 63827891 277092198 804270634 331804287 800808316 787945401 4961913 511857543 967950949 605339085 922963978 590987670 377829490 852417824 920289358 229425685 68051033 186738027 262195347 420278577 226994471 285766590 832907487 703302720 596035377 993521903 819417250 870804567 240590243 88366751 295290549 642130867 420593522 148352158 699138755 449664842 68855677 527679479 21375847 591387383 12793289 46468512 618342598 900838945 357389611 922142338 414608522 401838061 684369404 70408758 668003376 369077462 829972961 124206402 699878983 387040907 933070605 618966817 966950528 332488268 871809134 252307163 698903894 146714059 270409775 630764676 980073321 434063804 231573345 240958063 67730025 510551087 702128052 711263720 395671086 793962242 683008754 588543205 137689091 457446581 787550091 677615099 931933633 363810119 59280188 368356867 188068221 788465984 854963311 343748227 512408734 772253409 899046697 555984172 956561533 427756962 931249122 8043187 545805264 565107230 101379561 721373982 743453876 877557630 448744847 850442981 272042459 747892671 833344879 445279477 211396481 754067658 323670690 413220032 392338324 991247905 320964907 119429649 307118683 367447399 892558810 991623733 672116716 977884387 270808066 158670647 589624239 426691816 825742064 388205468 452580783 79126995 188806904 712003943 868139140 744027827 717871779 603454209 929992918 656705710 849561854 536720343 485866990 879367091 929736706 373527676 570053149 754304275 859590283 361252186 250823238 621503854 386430462 680227324 926016836 812561847 670084089 103488535 877095776 981696166 910666909 108253836 100970200 427452080 795707171 551815123 252185276 229109320 440566684 789560468 817553500 465742064 284483822 50663886 441157714 546908875 96194032 934933954 143544472 915300406 294983720 590454388 755187611 741077923 502628216 248042393 555800713 153656256 727587688 335031376 582433432 45081816 341471225 804408516 333300960 60009472 826592009 107567976 107967919 584903426 134317501 609280358 710938744 104011844 824498054 61284063 231751698 593815953 72844491 898990331 625641366 501099469 544274572 784333558 607015900 336948225 286309187 23091814 195341693 693204234 918142346 63613634 665185415 797076497 182617317 253275448 617002375 941997092 889745899 35783256 225055353 758570954 352353329 903726488 674552420 855518321 150455725 509153324 199506098 23205132 677625436 137273022 780455540 123190870 732553902 839502837 644244549 511867603 103884893 911292731 974885713 829731785 791911686 641048356 676671464 447880975 775272488 59358410 860546575 620263554 789641962 688489489 410867133 115019526 57141505 243698862 45661094 391977529 200128677 518463344 319812801 835811275 947488745 829613974 8602220 460873237 139703947 775455037 349083491 209254903 584745320 833033940 885711308 623946223 798537660 541794895 935742751 142430270 313348984 933198076 801134285 341568033 857549305 857223389 11307516 72796457 622071477 932160012 320665812 667693564 790742614 484122646 281571752 205372757 518230006 577624165 808488495 906222073 299176330 500196891 408540923 988442423 989349615 530620056 167440059 197958929 332674842 97934621 607433061 105898195 973837862 657288218 841551538 567632730 382637749 987735084 120447617 708040481 759147227 702266397 807242495 692686650 226835928 783945181 835962974 956160153 162677201 904232398 246242503 710656825 967730825 112558269 7359501 106021275 151507572 701106962 601570507 10235284 279897702 362348271 47604425 405856810 412393900 99993102 1213881 752692813 849349045 245894924 547101615 677055170 221773126 961790724 830092579 538313698 505400637 180687567 388546854 662999676 507298044 243880011 837292510 90269035 945533493 744265859 933779670 311870645 633507807 701237211 488471075 693580544 471693299 172073583 629990639 513213771 541689916 927796381 222967641 912968110 654021594 399177952 26712849 935349539 875340986 76584969 909725470 576715334 410298034 193497130 693673077 202748218 518801650 970979713 424069188 655941326 132522607 974298905 330720806 916846407 376269581 120597416 879111373 323368374 809759563 3401455 466219134 429299285 204853340 283734678 650220642 472493414 242006725 372464555 332200178 256197306 140591395 511462286 527960579 48878744 567541578 846509362 730220051 726174599 223599882 518651894 211578435 681102827 837383537 398903222 55282461 718115052 741784980 37718264 757758492 207648432 794716028 583982514 979897722 298207290 616970217 300629868 974108620 573379850 617987029 145093473 474658701 642645186 487006847 501214908 814854315 9839740 8882822 468461734 489174523 851948561 679825518 543703225 798312401 532439917 918441255 668704558 108533099 812370675 151872560 762156932 554069621 905217751 306680564 233540931 764091829 170612283 375592709 243289232 336067608 348509817 927046574 332994168 116742292 612925354 526275991 604137867 932198128 180625403 730883448 692167792 291883807 590908505 828826979 483004988 116798147 373292974 833696846 935415151 598548410 731009248 687654740 958738723 846893453 394270009 715795708 811774896 991727625 459657363 764242287 217935499 744936216 167837862 333155092 402903647 688415904 446994610 761962867 550492541 986329279 142543646 494047917 395976789 944427298 507727580 54409121 640948162 409786263 370753956 500335779 215509214 311886193 358263533 245392097 533034027 712059023 510579046 617259474 188671102 722076704 443528691 295119215 368599756 381274925 660934469 672992830 206051754 184655753 523421160 106027545 92266390 245699747 249840621 788892915 635264828 346280473 892350533 907556332 307930638 275794900 863173717 918059450 703923392 9413989 679930683 414836793 850991365 148991891 64709257 705112659 810712351 126028220 97900807 736782122 842709009 602341032 841437035 808169375 161184239 678463481 26905229 504890993 47498396 408070208 130713980 698135083 716780165 308892932 686215677 288617667 77104620 73354005 187538730 908474228 451482415 196821247 914674983 361302847 571232014 626375289 131917307 474645696 1227559 474250663 216457051 967796064 931446423 212396065 247820230 151756058 373799016 162230569 310021728 187544918 936835004 958173035 24593024 345291824 96881989 738442823 977446532 809623519 767164259 343178987 571938542 610645845 681002711 50276744 234296809 400840187 767607392 363900173 365071110 172383231 240067822 481441619 715432128 326921204 709459929 124177748 559746733 502099867 924346105 318240894 196844490 127873408 755737751 525756018 807968537 10148175 739386226 741643631 961717675 57459259 154410707 855357911 853129307 301035660 117958164 913376978 854078823 631541642 195836794 782034950 341388649 913081239 277513687 478054442 604146423 934767457 370142931 979863434 640367069 448680177 979353664 810946450 785455472 867689516 570875070 486442306 241403792 261435564 208179139 929124875 123755048 248368052 127880779 51943003 985848778 519067990 692468944 880316636 476509301 868307376 374997337 665809052 446206321 162312071 940781972 140501722 545869813 555626544 880730482 91442250 432363598 673061867 210038082 318144251 577739650 669586775 469634426 801610942 826015421 815033477 679786639 291804090 416053070 4432300 464405382 32333320 287642974 538162302 596122384 804036298 195948106 540339329 712991492 971877241 820393588 630209988 142181513 848960217 472699741 536039354 657741723 635878029 210499318 618794819 983377603 914224269 435989839 136675703 702735530 543926460 491361874 402547133 209592456 814329763 144735980 64410061 218588490 983608856 836211477 833236177 87620869 609087112 437261078 200945695 233802546 479901001 114013075 243089112 418274985 297107749 184196703 867250688 968097342 978411699 263893632 895612467 417903907 857019177 262969929 281449266 588244385 746710495 274337503 231013048 873028490 920982826 896120414 750059025 230832952 699916466 298160141 806379892 388045229 161324167 708160537 379704505 971673176 187181824 735506247 514770691 657941443 79402300 965855280 722316483 948250482 343165634 771249490 10932437 377105501 267483687 372658250 894616130 212456927 151430470 868462622 247621319 101512390 180977515 6064607 732540506 234644751 269411146 244122026 416090042 96733491 526629468 408431447 380527548 781671732 831123327 715228236 699133008 967071138 613224263 487341581 707341765 596895127 885552824 222644148 803057202 480823197 793579512 246036476 428875545 808120250 315594996 881610163 12989819 148900716 441469844 481483274 192851191 550925176 256439153 383945043 475620398 946767723 285753582 37169536 494491849 943041052 717085397 429858157 218319256 342507884 685035928 288907158 228860147 251098383 47836419 142683858 195214090 331576416 885853379 171064251 999842475 876015302 19025268 961414133 766073783 8970241 816237306 406062959 681309366 12787005 768763772 344742100 970568521 451361334 781513220 456811711 442359212 823931032 101474690 895164298 565577578 3673132 14185259 474861350 175683941 140377811 435363610 454984542 878266479 642339186 809110736 222880436 711533680 699167316 367534823 854360669 280783568 364099732 377216376 279127428 564308457 735909884 625694030 392539737 391712917 539399445 701293329 910949003 3214950 300828181 323625898 270676929 840733621 406247612 444520847 87733407 750873149 139281525 870524067 771136085 470464903 49279137 526003723 870670865 879167065 470300822 103923223 86417958 752434724 744734312 552329603 282431354 852609968 784723265 245796511 71663495 662794558 170111751 495556906 721896321 835804247 760123495 643173643 951168944 474007167 705162962 491596263 63860882 845526543 76836184 649123237 751636899 682829107 31743237 739303749 447076374 504113026 831972559 377569947 444285299 928020592 458779912 865881396 129872682 937765348 786858767 305438479 277867987 471083568 248659268 815515628 184540788 772116483 930879782 199446468 607675135 183930047 615130449 189171912 81338574 822343695 912695539 309283983 41594330 590167847 915868876 581506558 799678608 676539614 512549941 208345070 752255817 669164178 400775361 508914188 595279469 965918288 24311102 801530505 489666667 136526435 429990045 757154166 243585349 888217133 592768305 960773467 915913377 390486566 487180733 557130333 35304579 102585531 565907279 870527720 942598405 508736195 409745542 2825066 739082560 363539285 31791591 632548365 251520586 704692935 916052114 17329441 775292195 526446137 696814827 162895874 990993377 202552628 596616603 393100566 621531812 74771128 841963461 964877584 70490986 135894604 414584480 786265036 190992173 562870110 211466824 102925879 603477637 96205347 565652709 843187083 526475927 352319804 575991499 108115786 115195595 703579450 319554911 974804440 697305894 995153463 702376044 121841652 149759541 685034616 605559973 827494402 857550824 134855885 30093504 779142981 528640053 860147648 308588048 819052981 371705957 546366543 661359808 309235126 422094196 545200721 84543744 133410107 304312415 432397769 937116059 912593624 55475549 489491783 746023163 724493648 73417893 854328946 562270010 769200043 767657386 408062188 361796087 424193624 658182105 541827068 988305456 644228506 725846375 766250858 486509797 287063281 651656628 282296726 433069933 25617601 25446893 625960086 245316252 302720319 921620671 201891554 977219588 659921047 134361014 10068497 650279438 561942023 17244231 641961936 341755866 832072479 854435632 454322935 946970458 582660060 471123862 403921777 675611575 320189728 461835780 392167268 239713509 871765225 843930124 345974633 104464815 257527618 877540096 751779905 513395113 211316971 734002798 785801663 928480357 597186551 97744154 289825371 270624922 403928464 99544811 545506966 627867733 618939630 65907152 651590485 593921923 186562445 968729658 912182296 270248868 196934783 378726343 130524543 21235229 311481995 372479778 879094260 207265589 508594552 644683019 166732202 134084702 492079360 626002093 820621971 547323775 905470775 334853485 61047345 245330361 502405989 74886758 266741255 952906635 783920891 885973248 866072490 850513986 527385055 526955173 388234177 802297103 656394440 127449529 879665083 698224053 327552176 101879518 745656059 644939263 816917174 537592837 228429799 313697340 768293212 529190988 371433770 164799182 803902038 264595745 573301239 75976625 786099096 878829803 421212528 385940675 227071670 271621347 844058284 656163984 775632310 868832512 237205963 762430101 145835298 185001645 478235847 92583129 44951597 748341213 624017818 544640858 782548831 398780944 235960730 792790086 604228757 681777522 959778339 411160880 646923682 245269674 780206791 526443920 205078302 721397787 58588724 771495492 133354983 385038066 488078892 274984159 703802332 47120330 477040392 295347227 691435545 375957527 743818938 985603803 170020379 523896585 852103354 286763923 257686039 754399696 789199856 740975845 560276773 27410782 213820754 956271305 687270969 180139360 735445588 887818555 725251434 185364746 952686273 887956784 648345453 730147578 181778543 407612790 910500725 6986283 293535868 436058599 282556541 478642077 681567859 770866177 113491456 203859642 39244671 887389679 165703166 615898852 714326108 502661165 664611591 384381889 671915085 595408004 568492765 32266018 164170915 343062483 255902541 562043495 834659251 542445182 902094956 268172280 437527675 982255308 360010819 319642341 234956882 542077928 876257430 297738122 835112593 760997586 438570388 119051056 77175964 365650230 39517392 728129583 495315250 914608229 967918574 502448071 600630720 519622871 419701569 463172687 398184955 381669986 673533113 319393959 268961489 424623485 542309567 138384862 20153679 316677231 222264269 559708738 390297263 352544870 810622181 570067646 103546778 170874077 466120242 518806685 59788993 790783229 765908502 240096334 479235293 283974985 958973958 607316746 759019282 977583014 487109845 236530450 96068385 286648664 731870571 582797002 447989830 732174262 421829521 362825385 296289635 868503152 187055062 483302740 885022154 228250638 155404912 276916156 438593898 766778057 365411846 868160457 670146048 854111845 576981788 669773271 677182956 105770940 976272526 70921003 694787238 269103055 757455168 713093644 482541932 167894925 827025693 330001159 999051168 620268311 753691261 96974949 655483904 430268440 454075569 67509508 452563686 955608769 737778509 808853557 706870361 6160222 135255013 451332178 127331937 13328768 971093581 989544144 134915275 266470447 306101374 610756970 873964812 818867962 873165656 406889096 592713922 96844496 816694119 61651250 396948784 422249446 976954466 88246601 685647286 247250232 141965359 553575419 839512025 9514552 411032043 508947485 424331106 557845573 580400729 209783042 554819371 611131190 478528925 429204887 48568311 248570985 260575698 865682945 169798234 33394950 41947632 841803831 685028755 637741003 898756034 958268002 462432429 547691938 363272513 947774382 484618321 288295948 457482322 371983579 366227308 4047493 318079171 939787944 802640608 491482283 481812236 484260420 729976524 793972208 723539081 220539688 413982870 648193388 798927829 935274477 435270061 144574180 858923721 283995117 785938440 995373675 525187868 229109128 637952064 205450730 145147929 237959299 966993354 147693680 232771809 129980901 269119032 702956645 733813894 801591832 783449610 123440672 15274828 298510410 919850638 76357641 439552280 543202048 676332969 26758882 935368735 908069629 446799116 979978699 882020855 178582309 288871878 878766 685167398 326792879 462222603 998105098 664186388 209752760 332576502 260098113 342887535 977296876 846426622 102628356 444861435 40885536 710515432 890512905 991221082 8205739 200250922 969137408 43287867 946315268 582799843 96896939 955458537 668629201 236311752 748418299 891266850 961922482 925077621 189634735 442072447 327205384 978985399 666385383 714870049 44475475 644641777 872533242 879699247 477263094 375946982 547174192 983207642 526713952 78247662 964691667 485065249 451580671 64361008 318200089 330971145 950627533 720647062 774946017 855204661 895328965 816942418 829081122 381402911 198176121 86508844 259337018 389928039 19755937 830514117 236846644 113601172 373880029 162113504 246202194 681393223 186440342 722435966 269061883 310750180 92974804 8045662 44216976 50868014 927482788 685469991 296951476 764417966 971100891 509961189 980290349 750373831 628802685 353184929 68112125 971018648 5320999 731406592 309507833 915141483 891198735 157364246 836744403 224103032 297780775 281724168 799696468 256845117 408064637 551600423 664325050 555834974 298164131 206848295 264505221 522881934 499229548 416658883 448401674 819656190 272731357 912344855 534208658 444878397 179650659 756669156 4603799 946728361 308005542 641078650 776752539 491807457 540488886 204060499 299176959 216472201 836176710 307040703 349618551 675901430 186705648 659807321 864921114 124451854 221146206 317783737 510784991 130407051 281325042 128576718 121361563 184793906 553678504 393160674 878370471 969887051 414754938 190381752 548061930 646398417 943133189 630079543 143982407 866429342 917452684 542263323 973404585 731422809 500256048 732414369 858337437 656558966 217900175 21017179 9827769 295906234 398214785 16102417 1339498 263976184 709468689 161161232 17958354 960863744 748084473 766067381 443673076 594136899 908472499 222058531 713098592 211323593 552759651 527830978 939934565 789248666 394693574 558767076 509106206 48696296 401258469 400320562 202987544 691247624 874945785 548126610 853193309 256519645 636445190 307913469 931271136 908617996 873526240 205610929 261090498 599035358 444956556 802550794 782105879 768349675 89357663 294956770 551191006 192644911 471252566 859907453 924879168 59627867 827964167 745319434 491394706 421753488 691772342 587477459 749967682 486195663 600221095 461690074 270939907 734114210 890763294 656021663 437678428 60415712 704573770 936345136 790187346 606940102 982819688 132649816 210160470 450994623 561057867 42776118 770013717 256574761 628499493 969264931 21001246 298657983 652213428 410862547 574642467 818430713 62731456 611606142 410719188 130942027 480361431 957612686 620340170 433869426 176263674 13916897 831087303 311768711 628308783 284973406 506018460 748271265 538558042 380067213 63548692 551400254 292397040 632624246 390276032 582543879 642687382 329638938 561547556 483233372 161392388 21481975 827234092 440985893 565129908 613301387 12370066 521448654 748860593 712092693 535114683 946422406 97805336 913602091 293351544 941397331 241110422 851122916 409325608 725323238 872863769 798422675 748347480 480550109 228647400 200359244 354266461 703332931 982543161 112818695 181579395 598918500 253064173 271179089 328742506 598251092 50679049 984733958 401276266 340608252 66465880 44988006 250760899 595927124 685555423 377035400 175958387 437760262 437186403 184999793 994813243 643118192 8413952 390257202 472984573 786564306 917656653 680248407 192803266 723461160 202927215 315959190 734154969 721020178 907832326 723907803 397646124 149771396 511324617 77557414 182382103 20456572 465928184 112316713 416396771 580317873 664479420 450247092 365956897 135709314 152912812 205045430 418619460 497664789 689085387 340025344 968531321 875455181 946009413 91484281 728040121 528339231 520814966 2659799 623128933 45779525 41721119 215345676 45732074 428246563 415863911 68435183 745692340 94365913 920195253 455902706 384909311 482453172 420784647 704666958 913564971 726152111 48168426 941492736 119574489 57242901 590686652 318573214 425968136 509584495 107433817 732006156 17296343 579990047 808240020 359877900 182821177 278224776 533302792 765236707 975813909 597160940 313532309 442418872 972414212 248608173 433099325 182715492 835411319 530168546 725943469 268419012 103513344 717343270 681872548 927192955 724300404 199072312 580590903 771906955 742115380 392092580 545027137 111246261 334642351 626748483 544516386 919099612 75766372 943770147 597722527 509387924 156001816 619079552 436011460 887263992 698051155 121946152 719338201 32431143 520634538 114826729 470882716 418772162 338013548 735204061 13123323 386935613 482114818 52127389 811043998 125677494 363859355 184148652 542306592 572573191 957640478 77644926 187987021 893479127 382375695 752418452 194611644 409555830 730330719 863351383 388367554 313098220 497240789 92996944 109408070 669996171 716766109 162880749 54460183 904652072 556666171 748276707 356795857 176073122 529495894 80549911 437138770 356152405 366188390 158443882 982301627 252127895 135906799 139917608 334145195 368268316 723426705 655433040 675957810 866226737 982846545 425056423 197888812 652986914 625325228 48322640 988548916 605242871 948929909 219122110 502984262 686003614 457803018 755531975 598942104 352382061 130439747 89095632 761475903 760315610 244382055 925714740 986495915 345985446 104303212 452955369 462684995 718408261 636317672 774769 606961649 609959137 666741504 112759166 957695502 402664641 472709824 738474521 276172031 203766433 514030792 994865958 723318190 62387046 410980255 423078664 993213767 999703186 538494912 910603095 857981612 448824320 299639357 704451008 840415470 93566221 453055736 290754302 384755417 595653293 2561606 484992023 891902560 296758342 276296644 884846127 693606853 779204015 966892122 476288075 185790292 350247056 805659260 24322874 374112759 940555988 206634342 686446987 748665686 755371498 307656624 882317760 151576317 693535740 273902451 300668538 784922807 640418173 971138214 18235331 450307804 19704590 923553191 568586986 579784686 978026049 273813587 399768742 246055944 111904923 711111194 330835945 992826189 690401502 850126397 455442257 365148341 291016237 689890749 968094006 864479191 898070859 956665432 430991864 229667737 677006995 454384313 501961301 383626030 559760837 84359414 652228966 5233501 202970905 203718871 507305722 62011101 6052866 536044484 733622362 648891858 61433082 10502593 711259166 236489955 633746816 290121643 586966334 132068498 149807103 8849247 969770812 168289326 339776070 98689399 746841025 884867069 859471918 214074517 966385905 325543036 516238695 974752392 130070024 530344167 828934757 737371247 878256079 567784869 703005530 745056333 376038539 98902039 829186693 537559429 403043526 861375484 970457334 775007314 11525108 829422001 274059567 991195419 142700046 844161532 120397235 416899452 48391499 270326764 871436553 991001499 274766150 221460135 711452870 449187741 894274796 678662283 766952003 623443134 541327835 585457140 333683133 694587350 99718159 783179430 591697451 643082183 478771587 140607922 641351528 166743188 525784511 75312561 171731228 138642878 163624417 669080602 717051275 688124654 934936129 989168187 405551157 668650111 507529989 961919784 24838127 914316729 608666868 235081257 668329779 676927454 555693605 697267714 104802072 530374476 175570968 836993242 588087715 166999392 364680218 841694908 803195789 820579246 340163589 440508102 608662722 84106069 881946383 569695144 791793031 239166543 402422703 766821335 156036179 93031818 340456803 453848580 136906947 258843417 373156526 551574897 459956044 896389534 459054460 331411110 294480384 180873407 411098029 259856182 96672683 248982021 223816828 242152937 889657318 488231907 731107237 424576196 865505338 174906408 483735091 199591762 897737013 496876040 620334749 937010941 73138897 732836391 799078761 598476978 792449380 352048975 88412363 779835048 31730317 542488791 623951663 923995356 125876125 370377228 29657666 155050598 542268424 497018762 825797977 566227139 217954595 300569973 940109499 911438588 507931507 937612641 903695079 911032531 416617268 316331633 55549892 214047351 439334367 949460198 411064058 44028152 209652915 341852053 571282612 913020539 808550492 621632544 611760056 697428160 102710112 147695029 58783574 376120720 209527588 826310162 226794687 206949092 507828591 760823432 47310271 441063980 997796257 797090258 197173173 853527508 923702083 444624318 917489310 756910523 278316880 489047972 122339938 119655772 867338767 811600249 924842999 291724909 583334382 665102120 848819580 944031671 89569480 692895583 160741551 893420185 351957627 738097878 603441376 590075081 904948371 632654634 326532442 993024501 679076702 189301188 15228970 973447538 212709187 371976277 99469903 334792577 514094473 968413601 920529581 739868959 66632086 711175764 489116268 190676814 69328008 456858330 623065820 786771385 882155914 864457568 525269071 632740756 480426109 174119800 730053147 460945674 340219785 699464509 35087248 443538902 417666200 555820449 376740449 137325224 398224185 184962381 37789907 771702640 72187163 907530481 383566033 293309275 376686097 237644751 461146896 234506162 389670443 509224283 902584679 523517054 476701338 693598368 442117120 404234927 309841497 20683366 141305152 573487382 291049697 323935887 530304012 399914959 699918346 972204660 567934125 635692362 656468919 557014667 671629769 597275134 574176862 441512150 499987843 322466760 943038942 374886737 166078871 58234681 363693003 663987761 243193881 164900382 21687404 969512697 289797693 482812429 45798412 79598732 906345948 587617072 421351777 776452482 442611029 663941685 368007859 585681335 565664525 921226217 106461925 686826681 13227674 666403267 616701336 676156016 705150160 694697454 642097929 914738380 470192426 402671872 817485168 702330108 785147769 894667430 411957505 632888958 333020657 180460587 371176469 331875743 556006446 493366241 833433707 633024373 731303716 404135297 279513344 951978915 114366511 442788896 721477999 263963225 866722424 253718098 338437464 691281514 880556251 280339218 950781185 923764375 822259025 918912089 655549307 63677541 864202269 337093251 853360711 749970416 688001146 797670658 368058478 146394433 832775084 744701040 59644952 460821990 660450405 483911568 396610415 140638183 423975017 178047445 110016312 849477411 894674334 560192308 980427200 554491955 419701401 401397561 66348067 674027564 472678371 528475294 839672516 303282730 117896529 901389330 574278640 634472730 928275408 825295666 956138375 213440783 747267110 316415109 365403382 145090734 997461811 282580456 733925739 175031313 303632323 777724282 862988157 28833291 712681579 346329990 96000333 530842514 279162120 395270039 315253097 358911455 640392423 719696107 79228282 738031665 707325734 294238399 844314798 838459149 481649619 843766105 621410934 849793084 532388436 902794334 668867173 202841440 882927273 997476749 680902983 972110608 347885815 132139135 29449474 271293387 537951391 347868364 592824424 491528721 19112724 489344408 367230015 260529342 989120398 862568444 435755414 607244516 379513082 864924449 695657117 809567210 381506976 65991500 641751508 990660571 22343931 603934607 298827513 360648418 482953620 609876857 234274693 313780601 606627524 217716942 658902882 286004390 904900729 913783330 57044751 91420157 994036805 308598868 929673376 371970321 378667521 887184158 403554968 465350156 909803937 839055241 616393793 166749691 433511687 249886501 597779776 386609291 206419103 584808635 486640872 943484175 915614860 713252305 563055752 608249747 176453106 395457409 125479762 793777669 185777832 940813543 896409284 769216656 571616191 67169033 27982999 467991315 536584600 442985561 398838296 969007654 434008416 755709512 847251990 356092793 279863762 281842398 861465826 683276663 54895912 413650640 67469536 902618998 950965073 934375105 459390665 586419039 65108713 121673243 249189488 757885065 60501577 522532335 486306925 49272451 992984697 154267026 634488944 318751525 827350549 137921750 207364811 551324187 421618543 192607886 430987173 966490284 344734869 348294494 889882872 700137671 931806173 930222417 134898590 530672296 613033087 438052678 434922650 934356749 296497594 975141882 618094657 884503295 114945657 255545118 12756210 240891152 533223086 46661413 768986199 722830230 652298823 668288309 503570296 661661216 159099546 95331984 194120939 325276901 257308724 84875861 549003119 551989603 5963695 761175763 298455132 955626312 502859436 36443593 507647635 684162096 810253246 291424426 388627750 522943446 808061921 969069087 629266833 72048461 558523615 955205939 559308808 525228273 351255066 914330692 950644754 158078970 812693627 870640036 320124381 491830751 224127619 456337310 29090796 963777966 806296704 298337353 914571355 102895068 188061515 110309452 105019744 697963244 241351911 529782209 464159034 205675755 300961671 876088725 450017000 760894666 377527336 312878849 887982891 454905424 181495002 296987070 907379668 461582127 699962529 901442190 110303253 332629815 578721897 864950073 353029487 72212540 263996427 323056605 418892502 566510254 328404115 914675643 306625200 541502627 202940766 439323344 75168716 982155877 47481989 638739432 690680786 418997777 489608272 340856421 7495563 696768879 934637918 473338615 488517373 983860217 498510614 565459616 689078144 703726942 893010424 379069055 525233860 200677613 447697832 100276985 295437198 550769325 575836203 903705673 425250375 233705328 294987289 954752264 921739857 938202725 238573438 9092431 351107372 471187975 543167718 77572461 451947778 854919735 294040525 533472772 131334032 929997753 118965874 319893999 11636874 968325350 972402111 891951863 292101997 312143950 913399079 133582006 904304647 357394720 804416339 176773105 201992303 276561924 218860761 941927157 647269876 461752362 19757321 554623455 72751176 242557017 900847370 263275929 565797542 901322732 86883821 779844519 411141540 833057685 9888726 39141249 708208578 712432810 176365358 58479990 516686341 146611081 550609912 209362993 981441827 33484425 721307393 610522361 270275858 516654900 457738256 54895006 245355112 571375610 22162073 914468233 539623165 20259487 585059829 205302382 17886041 597752864 318161571 423808065 840465082 579755325 868391844 554708104 803678233 725637906 500474660 590751581 209345474 370828352 133522900 807010988 986008873 649384811 371462050 699038234 198768553 31091996 780326715 351797253 674246191 797496909 308786092 984527105 704900072 96610479 666805540 966663613 382891797 708947925 40166785 926218885 225723385 690128308 700509454 839636833 855923193 917392066 674190350 181415611 782988701 43171783 674062106 94560470 935199074 356003251 643401346 603496510 682563398 105830414 86037123 46174419 299266492 556024303 351626953 630620403 864276338 569319691 849416176 291342004 929576095 492829791 892120912 393877178 829967066 262483459 231712571 82907413 702890918 710547329 762901470 909273086 211951394 856745175 404067627 429152807 966270809 367294195 9799061 552869806 13167957 13633225 869896353 890123220 445669471 122523219 598786305 745786273 446894169 996431247 633932329 113243192 165203100 263397804 448676811 696721249 886144763 308354119 112217615 68271248 431095985 616493728 876335841 479932902 982809034 491568552 896967405 720771333 588478076 38432902 474013640 26924536 16529193 72075446 987652225 405611307 172724336 662568062 658356377 470461989 118995618 346154396 523920241 839074766 7153795 756854834 591035073 405855978 415569686 316812737 851047936 632272603 698012177 373015246 542896182 421970447 453460985 557154814 850400005 726976833 918056079 624156465 743786028 101292693 870920750 504279461 286276683 487766611 607545254 792957012 564175437 405542777 900067964 195502375 115027282 965737719 484367069 373665357 844984724 654306197 269740632 23374342 455083567 121260224 436230150 633936494 777559071 460640154 427092706 298890131 563220308 624584762 200231789 107744036 608004654 645556172 46038979 324213583 298559581 389241647 737947142 214580582 185284254 252652871 546438497 918313389 911278742 811631491 695667584 321350458 192590051 761832590 957886424 367472089 764665208 293682283 480117874 446049565 803737542 657972319 973670947 702581417 100967572 410876864 390820692 195654052 354930426 431358288 417542146 20552473 655795479 522907672 388586558 552409893 780049744 805169233 296252396 767081498 244569670 672156203 361509110 815373752 595193517 525274196 420728857 742276443 26916754 811920999 899820432 584380156 204119222 326933756 480770205 303903554 80100409 453265774 848483003 287759158 850838197 114149033 61735705 86507675 283292321 946725687 154601652 235528162 802590361 271386147 779480039 9360311 307015314 394289082 450790763 476698202 219933537 385827330 95199306 934668788 230292061 417672898 518467534 254228163 849927612 773875355 230226335 790997038 407088151 610249729 999120284 921585546 644215340 116109570 336444096 224837153 600532910 130686273 912048820 467267299 990026811 380808407 283620559 875760727 484196267 615163124 349950672 844958328 594056742 781392887 76330930 692956563 406081867 990869698 638759099 865461764 699231617 359127512 188525392 340332369 696060051 216299485 514978123 645982719 1114667 175727051 129578184 12505119 948361635 328823423 727970381 16018024 411071468 204994060 510715610 25738464 118844873 716752498 168549424 241485040 804090330 992289925 874487297 321462074 217956138 664489877 146027853 427203449 838261119 788614341 536047982 913749350 333403064 230550502 49220107 870551279 898909423 912548182 987621513 60906826 476398831 407429710 724701462 738174663 879390890 6378169 937775135 414469724 479139898 793048010 716533912 771286396 446124130 840765886 135082233 517390391 73641814 338715221 127386804 481397344 419291517 21717983 259340896 514287182 803053127 779569931 470569916 671795091 892048346 5822780 549137792 995952974 495168661 219607667 136095781 424830864 916918911 124747716 62577162 575257393 690759902 181887914 179151005 336658061 214188158 885566333 701555610 302992146 600263819 467226857 851393474 693235704 372812036 757069192 581451907 527869906 651247693 244066626 56637231 125055618 547588008 104505328 477931604 59564916 21086862 868785627 951425033 769444983 802614581 130581051 691930639 775472240 988269850 570124210 795855008 273940446 307621840 84798357 888129192 616910093 392849815 479821345 492357800 794837082 675256742 108941591 476985144 720160027 797725915 703842218 345945190 213674170 215982078 601462043 755844028 280539830 306521285 528892033 474378483 519542405 827185806 899183133 839053510 405099264 196542059 555323382 157961963 372097508 159417014 943547850 800901752 362348581 825693099 830259149 655138953 803334254 547342853 12515452 685326545 824852023 849417015 625921685 368479937 141468635 535840945 22674326 169123788 517012203 814956728 172558105 94945103 155569668 363345145 711328489 188620522 748497056 437451293 624025146 667092984 656175979 921954995 471649983 384301228 228014703 64373942 184470542 743458498 890233383 388117570 582464512 410558742 286361870 381518216 769265037 222055438 397646135 914758447 365699170 675297292 838492077 402919158 316373661 954077967 299808259 376428708 379191767 955486448 378611139 370240125 932140960 958706892 193687074 315107622 259305941 581745451 779470414 179162034 997339434 252655527 407616158 437884884 118862127 842367581 650176771 180021483 318136353 452676178 496735151 471310434 6549114 558829974 855534212 915514738 348773686 576124338 300753254 705644616 574104403 444788559 731937568 865203966 365126870 219579221 862818213 794586367 670196630 901505065 452564676 589466133 180447221 418729497 940770411 332948645 917031662 905585518 444786745 578378327 286106806 273654921 355477178 85890202 786460078 749094878 636844632 213079852 733224762 553791632 552845152 399142846 998411820 25511720 912074948 368147591 306180801 999619151 245996248 459886251 964592429 301780440 247255481 235199690 450177176 484576269 530963713 521592146 750063079 163001243 478768204 458948298 295680129 685521418 254968401 478691855 855976519 773701110 889319711 886414667 190348311 695652497 326489966 389786954 797861100 486999143 438610821 26879174 997472659 166718539 884933129 806826501 886822631 685599433 53315184 496310839 210825963 720541949 493898386 169103623 432327609 976642530 478534914 677622954 622436526 33606837 980849891 932381904 281603652 607273610 239024371 163586243 266809216 447439945 296226631 71049700 184501063 731659829 68371732 978009774 790981774 50871519 713067292 839262907 932603591 411860739 445541356 750040199 630228532 144834686 636675394 684993296 324877589 29599462 461660037 549752819 478046657 875615476 855209495 940753414 605132654 916143196 741170317 800382191 818721098 52774982 76645161 930929354 938351474 515580105 804485323 185028711 645377993 858700926 790213557 632332533 252110296 244782858 55673039 135261991 416022101 346957315 466382599 151710974 449300479 551872676 496124298 48294752 926953107 182907634 288125121 374342783 121219808 968685407 32749492 103257919 737963018 800363588 547978132 324576716 80378951 360151894 128142662 502253192 111050025 551698418 43499477 500965166 907180991 243280194 846700818 757494486 922175975 712025321 708320574 625340188 518208704 238030786 316524156 516525540 487937144 832877371 353841480 589775878 935828997 915137492 670173331 752007828 328093992 507982514 63074006 143703426 354633850 533324736 899696639 156163670 841732282 765085667 131115089 624868215 159622027 630265794 666096924 659868214 847314636 525463204 848015730 579967949 952801115 45775133 269928992 913790106 78764251 63927913 574293434 94153277 642755069 477309840 71897140 56072456 58564494 700786470 460443280 505654458 116315249 711210388 657500008 592517872 680662235 712817874 234753617 957220465 483312429 227497606 470450244 273627850 573993591 317848917 38324513 813956432 709726251 442142285 956817629 409979657 421549573 90502654 722681467 639476646 39626294 706824894 104776843 418418750 151333354 668102409 305267448 46555828 567382543 211543860 880950351 339440538 303259477 133693361 60727102 262258299 936420530 877498808 413768034 183992165 634066223 530356308 151213993 236081404 497313442 852714276 723643099 930281845 976236729 369118852 525208798 438390005 641710600 983007311 355017166 841848602 242776682 79144931 293787562 161196696 870482525 939003953 156461178 116005562 492938648 103278550 102384370 997757257 549495144 488048873 917794830 140333794 170142525 310858158 642681562 956448201 572028333 327796874 521197423 273067768 287473153 278117467 883836259 852746653 558777907 86073383 167282214 620794762 39623180 562924024 983907767 687391386 303013501 985830066 597282840 912913585 328309853 731596545 586219604 821072066 861823759 376491463 509593563 387530814 604667535 443134612 70176694 379259010 627501031 441120816 757914302 323048943 390781721 663821801 821859146 156721861 580489177 304129563 582446670 164555741 103652223 401305224 391380911 617873951 824287939 316240985 563379917 841653339 716150241 851135410 682671161 563539470 943921081 230670133 75292910 336437328 763958960 338075014 719828069 101794085 268196542 444738852 843734639 259917145 544978890 990415107 429853376 238272242 510198938 11227029 405866105 138467625 777927145 642967482 948162374 893591250 140939113 960891030 833616813 110418731 485487918 806779391 269065547 384943863 691654307 377315872 948787732 351440253 282402945 628119337 955589901 101426702 890889052 583931387 526033606 380280246 1087143 265583236 511963374 942498410 805311610 61182100 178486266 232282737 567447349 487496459 15973528 812902952 628906317 696080089 791644922 280310361 763365611 926064185 380495247 443214940 105218149 87705205 232403264 948287459 544816015 5729945 331569880 479287078 863125733 206575521 959998308 851336329 626219556 426649136 923083625 403669481 507876530 685091469 43191029 201089212 760986655 962057586 23375687 866031591 501625266 763333912 112619887 236498443 692180848 409890192 861849094 847176513 19699612 535577995 680729796 581350696 237269774 863913091 311876890 444526366 387285584 401869425 418949427 433096783 830275282 694818830 667178535 948563242 356997615 812572876 124529231 989919274 556031255 727524750 243279692 289693456 831767166 273753803 852364846 312733495 456505955 188929904 104935894 93826303 295013902 634344998 646931214 926569726 779514819 271043486 84351715 688349804 916708809 333198238 118131025 891330029 778683150 497157560 688091680 194827552 951327409 392509034 98532498 981863103 516747013 386528105 319307844 566883079 438875036 711850626 729319236 835161340 280123406 301982570 557490231 608708656 135130306 254631609 335829511 947111685 24770251 98383086 466138286 638941497 647897935 166806375 476624658 92894492 933073321 957481801 958141206 657941414 642529366 774796254 337175766 201894379 813630800 721909801 931734934 860398675 498845514 58913116 100456518 468141550 42792310 872195443 655202118 86974440 961000296 183231275 615818271 570754821 766138003 859568038 924856617 752193603 818847349 98342079 150736684 389853299 842412790 933261985 831962234 293849213 962866852 391691939 743939920 364853286 480520345 28129697 448092934 488873566 405148648 902583906 344787572 164926140 648527303 624598209 412646646 367953585 302622962 779788791 330728607 834873193 593346729 907579690 723177195 192723429 480297400 70156138 583186011 400485775 390351924 971405684 412000839 645751697 577459286 68732864 671593927 893943265 495261769 832198019 6072186 501086422 369248887 383164510 66558012 272529589 976181771 482072651 128844276 29035317 854038811 476303384 774499022 931689464 201148292 451419664 151272712 377109190 413037851 734489945 417376002 718594004 91093719 311016122 322709982 222130455 844994336 128633109 589872995 531677929 121586208 16598425 899716467 919694481 128846703 227856249 704673570 116648603 965735742 600415646 535536843 553702123 148131279 735429488 789484329 26488054 347618425 23198087 998070857 24210384 539773237 416828718 826828974 288203043 270557636 992710589 799157834 577223892 783967606 834283913 519965995 457983148 84883866 385359748 71992152 22700252 374495834 981030484 768864332 5426460 569811837 272953702 197450192 798872742 549814357 815406481 37549881 153047208 100003455 153786864 243685286 107864028 958852741 252261368 474207664 779130422 941059435 3949087 218363209 824302277 766383173 128135570 822898633 448522733 82706963 312289623 723383034 240211728 625222297 444972418 907329463 466828365 726433422 992685693 243917878 120210461 335494153 788446854 952238802 742385383 224937019 511639353 905667212 425840630 507071491 954299668 184119626 139863297 285928323 84524134 705138699 137817873 62167032 997661090 809956863 234873751 595013630 746980541 516940780 537988691 408816908 727315863 232174800 604778800 365887821 210210639 430293677 657586319 9807508 378687760 848842946 955291739 827588802 185185848 48767321 682421006 589196474 294226499 150889151 294964145 387248877 470007143 853793880 230665802 586595526 901303899 630065611 844121883 114662014 121254257 889555261 491725893 48801029 440748297 85545451 393085771 589375802 102381846 999654901 460659439 437740981 141852682 155729085 406516940 647354367 768035529 883495108 796162595 270553695 939504777 914467156 148561452 65811351 486442595 889701296 721735894 931438184 35742674 139061134 979398145 977672157 817088414 231750033 557719314 573825821 309047279 596769126 933630125 480043859 166520110 575764831 879504412 443736188 134451804 184309574 575659643 700830125 152982094 27084638 90440760 264956384 394059078 737693872 652493676 277388398 687816701 23881552 417566654 50725184 227953532 459894183 832953069 559199036 120357574 107285037 624049716 358042337 904442989 142224924 987268024 933188494 700166263 208478773 90240001 538562249 95298978 288828879 763000890 223903139 102885677 984884258 176198944 201411492 793998472 921828929 685266728 898564122 679244469 366328842 286454035 228958658 4813333 720597120 773488988 624983916 632940262 8428117 142681426 849876840 67838553 236198865 386406017 825904156 795969668 2484631 317287954 424710628 936815400 899302027 723412584 180512504 875892999 766910114 685422536 782910222 157681697 838120446 127353744 399700233 907823619 757439277 165322517 245757620 885375960 629065420 96487444 407654736 742324466 83631932 379575400 473357097 83041927 34273568 199142192 627731513 587614154 534861262 793592856 332142384 896013103 96121368 353801328 929721410 199397019 203169817 489014491 864431850 485890620 383035550 807837540 351676503 269021193 734633382 463150572 463817009 299632023 538844601 75979235 724285357 592038971 72114860 649073426 770832938 43505367 334023869 493568708 478712606 910686809 784996510 889693744 388735847 670981677 10001078 257292154 191140670 547005974 719861238 575135661 507731675 940071110 119079725 587173128 508962576 589142123 122124963 3562311 810242854 278625769 125440420 756181185 546617159 280782802 742378830 866425761 634905741 96129906 30294585 554087679 154922974 911988814 640737880 103392789 138809785 898763422 831325341 276428896 646536675 53283219 894581139 237990694 900763843 241783425 658484638 213162238 135428443 248323745 793103276 499409901 435217023 623028138 933684259 96650805 644043705 120223158 216327373 157731383 346507965 823434600 27676959 883441750 889666930 175839777 885059475 627222524 32344562 41907696 988696803 364853949 555752552 42461671 984818898 631183260 427480631 392902614 979568890 942312347 739535788 361350607 291652891 776290506 414665784 265291747 654680820 333273350 777312935 158146348 580351712 903103788 851970402 571053100 585754789 629178428 878063256 152418674 973971428 25467373 704670121 253927326 454176997 872941534 670231597 525674954 210339692 204898171 665048800 839753783 989734756 26107996 602047341 995936902 462949495 516827243 272185727 96239953 574546686 403941108 785448389 553115580 461909968 935261561 313764236 105925344 24859944 346236149 862571577 15900343 427197410 929444219 276405362 123931951 62870412 717697831 323814497 947583449 440819321 312051381 915405096 281399053 230581490 995998987 532803329 553751772 798729194 734483618 707714326 888760471 390709355 609048975 220779971 205551739 400894513 885505649 787829084 456999766 923394986 85344581 849775327 637105788 496705162 623812902 80310841 296241231 147271945 305769726 240389848 625378131 861127753 122782472 17541711 4183761 421723454 892037873 431806114 160528284 769529541 841867224 387870953 698925319 640239758 48084937 486802039 653525419 635170623 979629040 362429335 825723728 845412279 517068417 175610990 931802419 783324256 394338276 703139371 425918018 478100107 628827008 736228626 737990998 993489678 818004159 107416466 432819049 893132687 695979228 156514937 557268437 512084083 239866060 244434853 144399987 537197984 904758380 864620881 774117475 833852414 353204091 229101817 136135967 207386124 862391303 692396946 322297401 22090638 312938794 870812945 214556633 121935719 532851201 734161692 522528460 56618088 853794276 746217277 141850562 405173853 283375914 428269336 87769603 642979245 775677049 554355769 650666265 76128436 73199011 460171074 506894932 170179613 237995402 770869312 77734793 55151767 926296824 608479990 831150626 884341533 543919802 797184487 511004464 799075286 335948834 321057162 94627374 187654807 984181619 700291734 539342822 488553487 316701879 638713495 251513638 226734950 894945778 147740881 69713242 571021036 424288565 533046514 751398061 71642483 894630298 389222854 554725819 88417636 218354951 262014723 402726471 11940261 621029873 728743786 123538672 838869476 514332432 827332440 710492674 595112633 994410537 623700238 571103530 253198518 635366545 303436585 500828722 666048451 744663308 756306371 156170598 964249033 219996371 414828303 316138935 35720562 418349321 678480229 432337344 535884150 571993636 87371631 855939209 921954128 321233100 132030474 782462600 103307205 180143960 161080220 179197279 758895764 78468004 686242645 607623515 824702624 784783234 458124204 832490779 195847450 956994422 802056306 568249264 865097688 702669581 336734042 54781412 22797851 562593461 511207924 844811772 138729715 210497373 475071107 142335080 282533037 123210845 930515435 226786563 740567275 223154795 388430052 614554324 956858819 614982677 953248869 190466016 177318385 118195540 96683136 634990768 250108991 1404326 617305247 638781575 996702086 96149552 269165420 186502880 741841581 359154240 622740008 711409704 831659014 264862887 796494980 940396033 292379287 935019189 9358302 309977388 579273973 398022797 44877215 672562488 258050111 479915167 703627925 126571639 779404695 447265220 911640549 852905382 371445766 362453203 493365055 555627599 149621829 165111740 834002874 576862686 804890950 701062082 356719933 936413626 592949117 991895680 907648034 203405301 706951854 546898208 721358562 692340372 114969059 333402892 325226233 540643272 530377289 307163312 344520869 973529222 143314064 713031540 844921229 731240998 951858695 321913789 665491425 72948574 214916655 740499623 888628998 342753190 677418629 402090285 332723056 386495158 676358755 113056219 32096584 526306393 237005041 595434529 70585581 461674522 681334866 32437038 641734353 916425368 560201265 179895607 466430324 869118645 301491266 754552938 143859170 575840928 81053921 544892402 387908495 22009690 81186749 664838069 470230916 672331366 74649145 181615369 272750676 146021253 432914141 429542670 968816405 738764098 730972268 56861325 15491054 922092754 660956652 41829342 809721717 448838255 884857380 776345578 853811399 488506337 164665709 489399221 838239033 824574618 942825487 578549717 385896925 649637200 719838014 951820680 739763469 984315981 116135099 915174255 905491349 439675702 659717424 305395065 541783836 123430968 55778774 314736046 344599502 480663889 273193748 489902923 950223731 879834976 669145712 459936791 101885394 192366657 360395504 64914298 733918869 994360566 252608474 696313682 755388080 733307715 120125247 65597414 780540811 618416052 420433151 643687462 497624573 304054784 745250027 425955396 36251749 22305254 583986527 446290449 623501615 702701562 682007649 307773258 577382905 659642388 729870912 515277198 989277060 422312026 938485125 718779604 294801723 955299570 216191687 443129783 233542902 119855238 445239357 435727650 634676326 165537552 904834514 569234821 546589476 966854563 234890469 257420757 518752206 484216718 378940058 102860306 423215209 949562411 397070659 148714140 568851074 957564406 434272763 207983764 573810722 651570757 693246402 836307145 539517933 552378080 375780198 708257802 475962220 706281039 793241093 756817067 393599185 36740254 893419970 15757650 109375964 209442337 393427117 827845835 589740710 711572445 521544308 953918787 549707658 989473175 443585040 224152348 364708000 821278684 682564237 544219383 874301066 538081042 670631638 407284870 298784492 537303932 889828364 575903231 967837110 954482016 723256912 154663555 418080346 519987234 386050826 158028980 801529739 338888461 240762946 229149761 749077798 790502551 718426759 979217283 166152192 992521043 361968527 369657565 597227100 165095233 623726019 924060091 620499201 259827112 864962054 135030993 521260289 527890451 483656287 403251763 500569131 738634170 948433968 664582936 831216317 148554542 371335177 762478768 2281239 476910901 609753050 934513380 87804719 824032508 312039467 642886480 549170708 660961437 578614840 361591351 821300523 629540407 331072998 150929490 298157737 707005702 32877639 239298040 788319875 353569062 90545263 993281802 27207746 287109751 620295624 218270984 294597129 815970598 856620884 12538797 229037056 787965773 657019271 335858356 121129787 45525638 467977743 500569279 926696060 499775054 197288379 267011331 614903453 326602167 547750818 893140429 810559425 380249053 441284763 739206753 938815045 295779156 949549995 747916165 845774224 282227999 788964559 513591793 535111038 448265835 986340752 329360245 550918491 945829523 780406840 779743436 930417572 707515735 638574949 33347387 729393078 985686554 879867199 150884174 10667067 917195765 954013677 848436251 750980317 902987992 309113825 263101650 792008920 940623627 672324221 449099075 421081164 607049185 254555296 120039599 60689226 708278680 915029381 211025298 747433327 602137784 40595689 505492423 909396329 936200950 259192387 184114696 512408503 488735570 853253136 404375186 88123219 288810454 953309963 167886137 661331256 982473235 99825487 576823850 761429453 127939397 98219025 489618607 663126596 545260431 833081418 451795191 694153998 509470080 504317508 633466097 945411334 137283886 402006089 489041620 923800095 564482576 593712124 223586321 226810105 514575860 382277126 431429404 197183229 254346405 351077576 867428948 726289495 680036169 599500123 897418227 431684336 333601450 799364622 705045382 337411440 614475778 174326439 803135419 155144759 616353196 21964984 639444546 341705431 441123138 610747370 855467984 475210272 307788153 989533501 216048484 399003896 394015957 26874367 804413412 871095497 965328490 967355462 916135919 98305021 518293611 385956751 973880327 932070407 661267993 88302966 701046373 420611736 320137011 341302600 389252078 704137267 813899020 540340685 332808421 40856951 857716273 295346885 893266364 12491540 780582046 308462628 220782320 689202876 993284591 588712973 534633475 160585361 905455869 932076461 379109552 784968759 247904024 380928571 441701246 515823344 825375893 715848381 959035021 80681734 267099949 252605622 295907075 314689159 647184466 127311403 133664986 136239532 389068212 43605790 652081335 654118352 283672631 277560400 571142835 262996974 808300126 937182432 610071151 977530133 503689309 475079867 496792399 22801375 271120813 34810319 212558143 670855044 981642008 813923992 778903114 689221224 863673817 591711993 996428342 491565635 822413882 684935227 469495129 453571938 692110566 613848728 915567019 492502441 787975914 203179682 435052880 989868864 824956525 94598150 653581226 26584469 990883259 978175210 466727769 29392085 762621332 59533364 795521196 310424717 303397894 383276386 989512037 429443711 506489720 550826312 715778998 986555558 608175588 561098399 405021410 176945 438626042 420372222 579388090 964460902 996426425 444900654 789075066 766796840 191546642 855502373 910335783 30064286 399004185 187278856 545752543 358633712 204709437 948210674 914713872 728526769 822068180 335701696 268772199 192183368 70848006 929479870 458472400 56504452 2074965 652032531 241039256 611349891 814900591 485648858 962920042 671630937 86008619 389048267 140349050 73598567 180232106 143967981 231202037 58559675 729864484 569187224 312221928 357674646 794077904 582663864 665657117 207239035 255645410 896497052 42887947 42684998 292859527 206467938 544540587 35032802 605196348 292263101 950238735 195702919 528567447 643208723 691581613 930363502 294302668 858195228 65632634 513659843 871334824 610410713 486102623 261498807 232791918 202260302 100567858 439739128 798926180 623466777 281350280 214968568 165727337 106267689 599948355 701500152 47924866 355017970 751635045 901920293 630368398 476303938 273850076 367587749 755122801 384861192 749246049 245587333 240114566 516586899 685369858 207705268 546099107 533815964 572373975 99238235 813300590 945831610 726892209 14013288 910175073 345655714 596166054 134314410 371066334 543996654 173377504 964377856 992210029 843923530 214477535 614697697 966668078 517979920 601980296 182294600 535705201 638498519 936026716 201749353 435184467 211590729 476701228 701622049 483691506 407946871 951949265 440078535 805708904 373658658 343114146 614603288 264956205 435266808 125062527 889609824 345747279 840080702 553404206 819943678 752335192 98125709 704717137 650330372 757231887 25017558 468022459 532425264 921989380 941236817 93613721 541438371 552021180 200429403 554433096 151438120 709341917 162785015 17837210 569863597 936387526 437883840 753263707 370446636 299051681 97496087 372115443 66743062 603848437 587602013 882864494 514951189 63166380 405247142 31219060 530128616 328634715 723668969 335209968 541202008 768396372 947752232 317633883 481896512 631425378 647263016 771371789 936288629 145551763 869726367 941503647 380827009 174940541 675214114 897213727 977926136 961582692 343630040 106316424 164589383 840792552 169694744 592428107 525268992 318732017 406472382 362056116 499194848 122632399 695633756 962927711 16392462 656873980 443207179 457514546 542016751 101675106 185248976 330214580 321824483 168682344 804481498 118980219 18982670 714803555 486740461 514931538 51880942 844218913 491913500 118320075 768984055 985739788 784369577 739299702 613977548 981628549 233794140 428981232 666485096 917178201 31079670 257835901 718446497 77559734 501738601 750404114 721694401 867337654 476697651 845637134 691323044 744298379 993472542 360454371 454689025 621312707 112097945 714855354 24275669 644166563 88974304 126913680 781541375 605028689 894398002 908221069 924109955 110943163 210076508 308180570 182505976 968704888 739926493 62132503 513388081 455509852 759468192 587001173 258218512 799627840 674135246 123290092 210941154 618072154 662720404 80708251 970948794 129891055 894522101 479735209 942833859 314255465 934815492 390613332 932738879 251381931 734427763 324482342 5196380 931539163 830482948 930172265 199714142 839727419 473163427 439999814 591783197 562903084 775656030 800952948 66180757 905176661 830221909 922575586 865557 797512480 688977262 81944306 415996624 711998710 655130608 447944646 353760807 528284957 281952531 355154116 710157013 741861057 731415833 916838894 42949068 472746654 88210419 940458545 692443332 737709681 505418721 135567708 280463667 29687401 186044593 294538467 347562593 573318193 814155036 153015375 741608004 383436672 768840773 170198231 192880051 83762587 721372011 708172801 628336113 849069358 943793989 934715533 717450172 17533793 386396117 453764510 276277534 601780187 953542911 375988557 388099686 173093751 483986045 589000333 921027273 564362075 711689195 561833294 844823026 181722905 429478192 454269713 584780102 533032143 468401163 375830713 728744951 307104028 37572977 47784491 406667786 538922743 934671431 828530195 1205385 767678633 440093492 706798580 438414093 202571303 205341406 797207630 688783373 242420833 158182608 177808794 503773258 894786614 238705270 670346739 258313754 606209239 465324636 686970592 30248859 511182010 222597150 571744565 108777890 386194147 280996725 617390913 582269991 445130181 499371782 352090159 18974250 457191614 430227258 971965551 828880033 231673717 81293434 635823891 550674500 118166637 612645892 629439218 881936317 222462595 483534793 794270371 844008416 535289819 729619541 277222208 409310737 543779243 353656790 156423795 869553545 519251591 797399145 477745220 353260658 35410547 154476548 722458091 643571567 830288424 435297910 276785550 25351137 796740963 546106912 539202756 466894858 248724318 964442328 813496647 965247894 600778390 353066783 76411349 378866351 443950488 564416183 324541193 850600800 761259828 305613818 405026292 314690076 741132686 93911808 610118687 854753647 564209222 550381661 537383168 529730902 394304390 870228116 296113284 953958639 820639671 492267916 637852996 787132092 319502638 154120036 534402175 100383415 554943504 951076670 976100425 348771934 418627096 231435197 152752790 596056959 452451401 759286281 607682391 799279084 524978730 871565582 381085820 564637542 370931869 865560697 395014074 838675611 222414556 826019732 684092040 200234077 416661854 798785511 322355236 72176791 846896495 875944370 893885814 488375381 433363932 333807587 807434053 119188721 516894460 120920130 41896572 679151628 699171027 633021261 886604410 993563757 980591532 253388450 381142893 503956318 953755234 783361245 220089971 759209128 93929346 531809645 26943213 986887661 14364509 551152019 938176529 597371975 320812038 285378741 602672781 835227139 199771383 399095612 490108224 884038195 779060252 937214000 225663145 863513473 542216023 349222430 111136644 772214480 970448304 482022246 387617947 568071067 52912420 422853235 555998606 552579322 148631343 660411506 703336209 742595412 860242676 292996308 301306468 376708443 532715703 447494614 115967703 6353318 716655747 281839571 113416552 655382502 118874206 611272952 294996405 595917099 982150129 326838578 718562878 709969122 727541065 211122556 865716784 578947046 16989641 552912121 233943474 159462381 216481026 308368996 507130195 348349176 903753605 463927091 662166300 239753078 465604860 341764899 834969747 45488965 122134327 972204488 266251324 176544321 493799585 506340432 814746356 252918358 904553875 572372082 805755692 763531550 353046490 159595919 541016337 824479098 654314840 131830379 600529044 147149594 450721808 236256435 402111499 134665650 695063093 789426760 553374959 848966792 163568077 928086293 761945709 999158160 691139834 487500673 173322539 942889166 146084084 932959137 892204444 213293715 631667874 217065017 870357154 82735187 994269643 891085657 299455776 930902547 541759655 613679561 547547081 819517654 265167865 811528136 295381403 358943587 260675458 543879167 342457543 829945989 443205133 577402981 981365464 20372883 459459138 105427719 518823691 259510567 958932881 700861189 866934308 702842073 133690150 626509381 530113526 11454797 149043697 415790870 318236150 924013569 275868147 910851604 356810151 636301930 896895287 633096086 187335358 747836790 154869175 848310772 681803737 92059023 448895018 501904520 708052655 12950937 197410426 922400506 649234807 338925711 170132441 622997703 560497011 469121896 984388616 471805860 726765419 846640158 150793928 737538015 277433598 143014479 846866436 341799368 836847075 884851335 921013387 980752511 105000236 991068717 948521989 752953156 558253993 346941351 9886823 472728312 216532709 294438701 578260238 863134030 896417031 505751926 379659543 406955214 592190529 781156758 16014100 219484003 768698076 846222163 566633146 900074487 257737621 542237874 854324186 796855810 802583586 134055585 291642017 994448291 289705706 464781913 324341479 223918492 571458528 652814248 717118585 613829852 822954072 255246671 46741889 897896710 611865699 787654923 249475038 123299207 378787431 327555669 136803106 986327032 628704522 201255993 521327113 678347321 471890020 112939680 190278920 186624893 164965569 243215460 338066503 829377539 780936534 263838216 199763547 580998042 763909081 392757536 644424210 640416310 826886152 762866052 822554027 59218715 201293271 92704165 801520969 413632789 991711283 557693717 475592059 732406802 704889595 946186834 895801758 74158883 776871985 994152067 592178716 815394319 848474902 761972468 596559517 758533026 745643406 786628823 546082807 258458664 425867085 612712843 801347854 826120981 866842683 953075676 181703489 152269758 559687892 815789531 624151090 876784619 728020326 634346021 981158158 676153324 799698491 68120213 306909986 86310160 916942412 184515542 590716889 722631187 831822816 983941425 938772045 252250430 451323184 521882837 338412268 31541026 800267485 988818845 655227447 105592803 688543383 826371597 418987712 641463252 366857938 441648276 308012129 296009583 723163181 819439406 835685650 588380863 442681348 169214362 240936389 155056501 260843446 929823265 423833338 37361436 438948274 524232450 338209158 3477893 640505168 787245122 608680804 912704460 258152596 855823822 148807244 842251381 522536996 19007983 64847952 949122356 650871332 86719162 934417318 255484427 114114568 731814795 197591539 207432973 478859590 201122855 24090097 515106291 689576027 186464899 382452364 755134888 893705939 853647824 141098504 906966353 258998288 628856143 87221230 943825675 956559357 663695074 757862948 695032670 714369313 621266097 325321595 566067305 12869454 187122397 443987534 794278632 110379753 735376378 737104134 476362480 233454286 147092898 159154446 474861373 841127792 141029656 506972427 948355513 180968262 164635412 590052071 179939847 558973808 167388404 924672753 399499361 892949453 209377389 989153391 814833067 818675683 497761901 479202456 215126495 939282868 462032812 620405200 416206948 515987311 83764366 548144965 832676595 100399912 568608496 295721339 736261701 315734514 242585409 571399730 101597769 354482348 405798791 942409848 485810660 185948632 781843249 898829509 812231634 78525037 390378529 773108072 480824420 43877363 749675136 176403927 415541983 736977000 506262325 437300746 613639355 828256877 301756310 870406289 816384823 838725947 763278959 45211605 5317814 49834674 155321132 477489759 122623709 941369652 477890549 996603145 199750140 553609981 961669793 521060933 971602082 742393624 623638938 505084320 87215306 388322109 599424445 601516651 977039102 126343266 821029892 280018649 352886114 129015315 864730348 748298819 794085532 480747693 309361798 742300528 866328355 760666621 236987956 505317131 453228906 295765850 834864255 441214018 188096405 893461645 513589686 859549770 445522076 888674043 631908632 958218287 740929945 976131519 494945451 235361823 676677764 540213674 701281411 24863526 343808079 261326521 721358208 603370456 426784694 923783721 57343838 716093922 546547012 279048027 259524358 194192889 666931631 833113891 44145033 502352191 77826246 796083014 42470859 908159032 241717060 618500400 229205756 296685791 977759184 462268716 54580422 958707365 689847631 600596450 992349458 278268722 592167733 802805612 822681040 359393970 605181076 352301384 288677864 479510421 846851406 942618446 287023843 362464531 660253423 501689312 344091497 187912884 806039996 176573862 997701102 176214711 997047501 776817249 106237273 429252781 54391963 816924381 594498971 376206576 822052276 877192982 842391669 500244143 35835305 129724295 699123513 687019458 237579384 643335819 244705259 768279861 578111263 467920945 445320279 697814364 945068429 65477489 707108505 165244583 871872969 887480094 113293799 921307794 687726158 294760550 836638247 536828007 420669917 97666358 694326557 931702802 905497829 376809253 939589705 641333815 174199420 452715738 558751818 929532881 159523089 846730100 382075564 489339036 131549903 400691946 970620405 641549672 241229139 190381632 582416025 897248671 128136888 148349034 188276129 700230821 344844356 543860624 490656345 347919197 582469468 759180195 415921918 739353765 439956275 611614383 786046207 160483870 88769628 49477904 251502377 101203627 342355838 367391242 845618812 927842470 706482260 228192966 263262222 444796962 187357747 206330092 330493334 252778447 777462151 609919033 934092973 292213540 121273130 200064771 184397619 999959099 863933160 15010930 204896542 925758094 551091260 659769049 670899294 281215592 580894500 908008284 167030553 781544647 894065966 509667985 75662312 678167915 577343204 547391731 693238864 798924279 173872677 389553310 621256006 809808323 398661309 20902969 37673046 63154494 646079169 705983699 919436648 87784447 27462279 768013998 249587923 357691329 591115248 675932289 351417883 270986090 60799331 779056725 929935733 910982975 588287836 606571834 755488867 771693275 651828839 64597477 601501760 498979318 191470490 649153827 930325581 477569413 313281229 231373723 877023216 827591334 82138794 146847710 437628381 1242536 640788354 946931438 607021910 478688734 369422877 800562973 825671305 563909487 272775668 70403657 977186397 886661372 155037218 358607198 321154912 163824301 203187805 874563403 821922953 65021722 359845686 956364850 726117198 979555693 125391358 219145298 796034420 802449519 141160156 559503034 850880216 261293962 877971736 408297526 259280085 485809086 599608578 193012541 451097846 274071483 529407517 299456555 92783901 434105798 906484313 828470932 245114911 866554422 536407961 612017497 90212923 405587000 191667419 193113595 337672173 101208906 441247226 354708477 965067237 840973524 963427593 199862411 798127976 415764018 876362401 17642199 287645560 926656250 955477811 764502246 171600644 747939055 431361885 303100924 16973581 365994780 397241179 796983599 941575432 180905930 623878199 251351429 805321066 233646156 721874818 70956842 720299266 543501132 11856737 660425314 485659282 942542792 282465545 503467144 818692999 50889757 439869271 499665410 670082626 394280911 595226862 331403592 140253219 156473944 860736392 147169601 470001130 240025935 298612764 392280386 254358018 931680975 464201196 850955142 953320686 710553960 460735473 492942678 441618492 13441315 260583603 938446605 681916133 401419429 817427617 333578566 273465736 375063247 972250993 123090419 873789847 655606301 480872973 5373585 358041493 223063870 93063642 144766982 154909127 736083553 800916822 383041836 973656320 972931675 871057225 942078067 466521443 124324199 27541372 680554979 555787722 303971034 375650531 880649285 176013913 552927468 795967243 503092649 492402211 173614308 26417197 702611482 520245167 162122018 555565091 527252139 289356120 944673684 351195566 949159777 425326501 278850226 692330640 6261862 811775243 142123320 416097603 418537455 241352187 305424134 995848709 772001560 209097897 819969669 166513765 218702614 796655576 279817871 853042770 309893181 654397964 530228765 724721858 668734147 51233198 664146137 726233480 23113471 156243194 107850632 199141364 28272512 598088801 532160491 809455190 310611782 500048931 196081006 338864763 849044436 2485253 369817133 925476971 104707796 566445327 218780905 291058520 342082798 543091650 903142950 91630849 607967621 34540516 669926652 718950560 983070891 372484654 683254598 268782514 876942091 646514776 24241431 909298732 231468347 673740883 281991813 370707146 190479425 299987147 834123719 610111343 217909591 634891694 610439054 173201421 60030523 188901002 810946494 902356234 407370407 889445643 571081677 829667386 355028845 155628768 64182332 958261663 669716266 702903364 667984360 923985384 406170337 295273941 713055585 992994757 893779452 558593494 354633313 230357434 628342836 60428856 190364443 620108843 860312955 205066994 103592949 359385981 793325508 780283623 513780358 842083750 227033408 49498886 471503245 616020915 45939354 172381023 31024882 481406798 170509169 916354624 743922109 826112097 305472614 937096767 836488727 172450204 44489893 360317592 590212406 678974194 235851372 731933434 463365310 185761471 180449291 649312719 199633002 498323806 893958929 142339203 643133597 680717314 688789198 903654082 2326985 457887108 20436859 374090139 80775050 683819593 412797882 934617732 825981272 459110166 599523397 130875351 351333983 612720388 206861429 821034975 741176441 691487935 872345410 937946102 647734533 152774447 334794751 69482446 61976914 159739223 970379981 467670757 716611323 776550599 808526714 827553767 577155839 273632949 515691778 159897369 212877343 517109113 210187995 616659971 398255517 377410564 186204969 537812747 309823106 298914351 163952211 171278618 370754209 664894156 604710674 844417894 203869259 239129918 782074779 908245057 167955642 492183652 200027029 591429852 353291414 814978290 407261647 130923921 913017181 718596451 689733011 568659336 71857411 104389592 926581765 592032687 23969697 921902725 122091308 783043105 442369065 586054379 127207459 477912651 295084607 126386065 166526962 107173402 123670454 586489258 241145400 810384946 582664210 651663159 404193010 833215175 436639127 523715560 846668885 850616612 796671949 737055524 521036264 224620879 284725669 161486317 14127519 7445022 963159892 70490563 335431081 133383135 818520158 732615401 574015598 913113983 156066831 29735076 691533633 993734413 262891592 240908765 1811683 938281749 952744308 293998031 914571414 97610943 649603209 748086194 567225260 239426256 453936683 198003398 827306956 590226899 241874972 365519776 240789962 438518521 876763145 463964103 186689446 956892025 532637706 20999105 143287707 122112496 582008305 978128537 824561076 697987360 497085368 313334631 924880175 253491935 408903607 624721208 784298825 79386681 337115491 652908666 566299758 341868784 433618123 85094362 330776819 687635735 618271346 524117481 236380730 661007885 164730939 393494792 891378003 768471890 14358015 296305272 685559166 285092990 533601151 510398840 30430830 293855922 230265765 342076289 858131743 11902935 710904003 408440431 713066164 868562157 406626999 423187322 251348493 697859611 370823445 453859271 929634785 851168018 818436651 848414946 500977635 547398532 610508566 254565976 884938085 264894569 445721297 494293067 214326236 933284268 71143667 834670127 988860037 456396460 248606062 690092818 584547995 708878198 838465059 58573731 872758097 158217252 623775942 51314640 726519604 101956283 38419546 522447219 992463511 421165322 125550931 38065985 745846154 677287979 816738871 790178265 156986674 995356325 112452082 803473740 800809825 673207571 237062105 961791122 603608167 40052283 310812472 694714200 617393450 721894053 866071927 654361814 518092796 265143245 687382018 84631313 91303059 580739619 484873887 450416321 34639867 388030257 929869060 604134897 646274625 325663069 678381103 5808939 233176847 251003119 9365269 750223113 822727774 324804981 820170370 914786523 333761692 167842213 548785254 130325074 150372389 762759662 668203855 561991035 973181989 832126095 481731980 10960377 636402293 549865581 913819634 483786932 646707395 213725025 621730399 939445969 199433429 930586513 293803147 114276435 724604394 734420917 355750913 270962964 745952327 996098068 386688703 28038853 394792389 345320484 226445391 402662415 302341153 981808972 41477850 736248419 550745651 199155159 378370234 649662565 974555228 701998386 636693944 186947573 338765503 353162579 120472344 194159471 279140181 621093625 417017423 504398925 917289352 890798393 751501676 594793745 287242647 373239002 48689976 693158 826709618 553921893 898964398 562913110 892452304 790597529 597393242 163166391 772725060 833253533 28516796 314514651 696683743 348162453 589094111 959859844 726000450 688867524 624512400 79689754 198062230 261163843 984670085 86557461 563470329 446413762 483741476 331605672 255927226 92890085 755607252 107018168 646853753 81501020 933230221 949173798 851626978 810711121 556134932 964689394 95201358 762662633 798856509 176340447 544797736 858700942 806465671 287990774 665758999 893449481 870948578 798455239 822896384 182824630 497441146 643624277 981485313 524425236 598383448 754449903 289005978 243070012 883946588 665101742 309368381 440529651 790482574 838342608 326705918 956949058 441182577 473270483 180585296 71682626 553349947 21604163 408601268 246795184 854769171 53783313 992361344 701249359 198272429 69539154 81376170 436535750 116048146 369234656 245071000 575549485 661559763 906410459 608591859 709805585 776197993 661777899 854384008 36823568 816299224 917801160 743613839 637353562 519887714 357160814 484973371 984541465 62321095 332225013 693945048 445091532 58833686 445444593 953391692 262797351 404806715 173887441 188502075 287944117 11999993 25140779 958846694 654045143 983984303 130142004 353662745 587662067 599353779 125257875 657835636 469492490 68254222 49694531 748824625 232322972 38819343 328671857 532557623 421888851 310058823 808618261 989376025 143792797 171060217 718722991 383871879 97500877 358734179 162893912 257211862 166981739 175267109 447392458 119173695 166998024 482090822 270739066 499656847 152473916 599959441 918176143 771442626 559386690 837864909 618065447 682389583 664734242 524840411 305884857 422578555 189935457 426315619 640868667 405689534 168018743 94870365 278206984 11107252 928277647 303823939 491898474 996702206 678347733 649414468 374817707 607818094 935402125 77952784 366437720 983848509 699438865 785880958 77877743 721608993 15880557 693066669 528149848 861407634 194940643 711165448 243688165 991486885 377422319 46192371 435954841 651362362 482390383 871258120 137486749 776820588 583970301 601247847 441034245 115755628 300716009 873832291 754351303 663345576 400566645 246892065 681172356 884728686 67956197 515383723 578299446 634939433 2743425 73471152 383954503 391952533 350564250 67960115 721368551 449282025 750463087 773075013 284627753 976364910 985319653 605357964 460946640 982483447 440437916 5992853 422957232 839392571 937815844 564472680 589946603 275204765 862184893 563015356 440618310 269733399 888911311 901887302 176981043 795181127 181951010 827813344 764259101 784699919 429680579 394892518 740598638 930765541 742871818 152501738 593271032 318442362 466318034 645161834 409466104 658820562 90856559 898880246 706316620 8631273 110266633 815880289 580413210 871944915 981494323 149425860 785071264 735490270 425771376 856912124 710589025 132084337 144409511 530683404 93607004 841955361 465364172 548225860 294403621 876154175 445878353 220699284 980400396 176647211 815657751 163784298 513356789 725320655 542894941 203523455 709701105 937907308 315728173 170845963 668403628 495005537 954705267 884645138 655691392 806706430 26998298 587833060 908246237 254631001 269555012 81618411 231854759 236016858 787452324 913505172 902128570 562282919 484619075 266093931 988984660 680026958 143472795 112323844 825197252 463675007 137450514 730791087 893953389 387839256 13363350 702456632 574749230 537457484 195960890 878695348 778490783 625167745 207133230 150830091 915872204 949678667 143154568 794299497 58738593 118022253 100886760 323854362 734741211 135825166 92591523 851485165 196528539 567350116 286265641 196427159 660777599 19295733 305355724 829402506 877648235 710711191 981181395 735949440 547768546 350738136 569607038 177385533 166325972 614012185 116296848 699250791 310636841 580896989 556447589 985937595 893538170 64840000 738991903 277803441 502252795 421673940 636560994 826556561 8357819 768114764 296260249 274409856 909430158 214511627 80487697 212831294 16913028 444487725 958073971 18144103 73985217 86185219 722235097 757291779 992521543 194570154 27729484 295292319 334107829 314948425 588058663 486485513 54000250 774328893 772076215 808082219 659721876 581299398 651122037 44139952 44514278 747888473 350376067 796202391 570002004 351073537 907230607 676450168 401402836 931127036 516102646 940371745 102943956 725403868 833612740 953088011 437879114 754007090 996019522 607269051 404715268 990655578 631584402 286285077 258153800 573213301 974130927 882761619 330965630 586430498 753058679 477427052 770812259 48755630 467850095 220128212 810845924 299555301 743076560 279096078 88355376 397470970 575347033 917190111 373017844 22381792 772835302 663997857 831741103 187147300 594424054 767532464 890601155 643450088 28213863 138749864 775513887 502163874 424864289 378564697 99925194 687208112 172777835 664515576 501025587 870281857 975942604 899550703 913997023 222779017 490311145 433505789 216920424 202813785 760216131 198018426 784576548 613751801 777031377 289193659 441563087 839509878 127013314 979609207 351936391 437482597 849546896 36115615 749535250 131855578 340659465 664739928 975157664 451618279 215165106 943894314 525079658 396248450 108978036 157286986 32842776 868193867 398570320 617595015 45238582 378449842 755831992 453249229 862618645 184666657 855578528 869854935 468988933 101066720 404681083 604456826 397915571 198602655 315988541 711299560 898628539 644729677 701392625 248117867 356061442 301622271 700661316 351163573 898088219 581613769 193504419 100398351 15809566 348400389 507538182 689558767 744194414 757528896 454959661 270726738 531141145 220933940 670864769 887677886 300810526 769418641 517654820 836704647 668259201 412776398 268427145 553668319 672439681 817405148 414769336 850473072 509532654 116900425 572754062 82363181 381212321 684188324 19891611 50978545 706891804 534305362 236326834 916151925 275004766 605011962 907715228 484655726 889454203 381503597 380945185 121394285 115214684 719447891 938990399 100340272 20750171 391183465 510743610 364605173 672130053 942617885 479169248 58787100 854075091 797728417 320206060 970026809 180034956 479012363 620645517 168000553 348254910 889899588 369807727 787985801 644825376 881734840 918459630 454598621 252852740 798054380 214138963 658589573 566386183 918585717 684103727 758013405 717330082 715902600 298477635 980864855 333176193 521139179 894446685 483196586 551821773 40635694 188452222 289043103 629137308 664776609 540767398 905816424 503537834 448026022 316926259 522463226 108126691 948010103 522592900 223583517 808577793 70706078 385973360 285104218 428573579 136645936 751476925 529330165 150252278 689830660 258860324 216730620 966185552 696171153 499127082 963852496 392820545 140885228 86314099 441311598 763343430 505409667 788682903 43165643 254326248 555978182 274254317 963093140 353585617 79479128 66961296 813705555 610737795 563257878 94136570 1981001 969666214 624007530 23723577 477692898 406315245 695025583 614290665 657281989 431369557 978151007 687937228 235883618 93204712 796408333 799869992 449043024 806137881 766745528 176139519 726871124 81459838 797835444 395258894 611903262 450281632 309277410 731127604 162558667 831952739 32943869 883596703 690698093 809737523 767110864 451996240 584261671 749882739 780744903 35834325 634288698 289481093 184101301 912681942 374748167 571714656 484679048 595005640 729687590 263309624 61268755 780887480 83635843 165239890 845812974 338490572 476313254 698809068 822713196 936907579 270081410 964840148 689719884 185571350 602097577 713805232 500922377 902308812 801673196 177278203 972608040 209281795 970075813 502558276 843366674 708846783 283195001 958311850 717403758 28757419 957289917 882253589 482398034 310086996 889245188 728224836 365393198 187254641 705244314 45326752 965137939 635419796 726260259 790194623 220923623 111225196 897525146 836929026 225066590 8244193 582441540 726237634 961206727 971148902 221676851 311664348 826378860 265901454 93882792 655269835 819574658 185296361 675539825 453881741 160284462 575201355 487421421 358098732 323627497 969165994 852872504 658792486 567583335 756955363 562273322 574664109 333538906 460819278 809978228 561516991 379246439 575073618 178931122 682297570 790544159 922764092 90332055 792402646 281838113 101894594 221100490 982162631 749509502 92694890 223189164 345104869 554662328 614509698 585892249 507282000 196680380 149134498 255952045 205773556 931777279 686503516 780153980 581541662 675225109 649639525 881811656 349577052 148204056 953570840 52304210 606143536 917537224 625872837 780440333 357638043 83643791 697372263 836394367 75697866 9244063 56299967 843569679 906616208 437313541 261395904 586693786 426185505 197629178 672461346 665048879 631644383 480491343 395408329 210989020 285037131 770339538 691091830 342010966 92207271 944708605 681141201 91241437 533597954 141719712 39923236 758853741 817284245 384013522 874742844 586542255 460208398 991764852 29586612 808999367 887904924 382154231 250070111 593548265 463619613 300167827 44431491 29865853 127639587 162731713 478418835 363643121 186850269 565931445 62215063 557534666 532287407 306921022 75913132 493516054 276899389 732112807 661192829 754780329 4100555 181127470 110327276 132074948 24820510 392351309 624614742 862749772 695150174 504801011 636147925 99374625 9622837 92738185 255637944 753424841 928902288 251741673 647710144 227798949 116415799 79763571 908808532 661541247 935481097 819689195 481380570 349305481 251281004 503165944 992027063 893262466 373066559 97510436 802027633 582385156 615045324 342435137 274938184 856099596 57080130 715024573 191417598 159334750 980237844 605651468 857851135 293442985 801260783 233993028 216780264 947518648 640141213 349722291 73057290 810121639 276453839 579512413 30750721 189552974 718062325 284556852 506603444 549995940 463643534 965039365 986409936 176811237 549437598 834859593 190454585 226925296 494811817 465604288 480178092 31166803 76102833 644975299 580364441 959576905 582977290 316015604 142673639 921945012 359587297 773061271 309092473 582150115 125434103 673166975 870820358 678809341 510468551 543811458 188363508 247006191 85606706 668474155 493264521 809101404 326196933 879771853 684932405 153343492 876493410 302226294 19117237 394031721 717579388 7330156 942900430 769424616 603476326 510594174 661308565 654576078 182728204 9360536 192355299 883057948 767003675 819868126 52928375 652370439 636181000 459124064 465991051 501976784 498200689 74380410 586658045 355487999 60925537 984671582 631064011 796712829 417096039 102230696 200544243 448409542 584009023 860700524 653402654 245026840 46729991 765122830 717070946 376771906 610162406 7446910 378695702 653146574 928980692 282736913 634047990 477589475 583473002 771520427 699392343 188789952 593940370 119820350 792311212 234705938 67256305 661628993 634181188 290296223 992564676 849919830 125827805 809253888 903225341 228826973 660170750 787765237 387854044 562975966 496771403 509020619 229991490 89151310 451703868 311033547 248698022 902427204 160402587 630245138 300578890 59924144 309263026 465121196 351631978 375822532 836991691 592732051 56797954 708657163 891427247 882634946 882208927 487694956 685269678 616420703 260266933 465048128 437601070 623296994 948796540 483582396 207919014 797902328 221153772 832535030 123612214 648266577 395680533 841713996 287534585 248673423 864764075 926951429 134849506 348454824 959753694 36656744 822308617 964379160 539648758 321583979 90872426 501195443 401470529 613930672 63691464 17410403 577835565 789010062 558792285 119924397 606278118 95883895 278758990 655438341 896835750 437907592 603333181 660278044 335840843 244738201 51516251 519395454 146222736 995021167 780668878 790733314 717550783 626377937 754027622 891976056 435427450 97245682 85882291 26585420 144224347 651332459 238850189 923539098 745983615 986435663 179683849 376980387 668604650 2469869 272351250 2524971 53521581 546527142 617370355 849243970 778915165 604241965 547411981 263172573 251305857 812088116 869578588 953890478 643615805 611580752 616382905 292370249 524232667 329995420 591815649 920208070 38666188 85706175 62334132 669167468 803243714 419487631 330040760 560134956 610187215 18689684 738830464 152367735 181467686 822958107 202767297 188554824 293565295 318425328 307441966 841992957 849494052 523389301 830482517 77864930 74771101 280759848 492021452 701627844 724013991 572037753 889820843 12225048 938421099 444694120 946621992 611237940 21040197 265334398 348573798 102654291 487635637 4637378 386926663 353781030 850637906 122724591 86395603 532107536 74080274 12419489 787398980 928826551 578758396 530841479 495954247 676582556 222298104 250399414 579528899 429471378 808494431 690837626 334596820 633548104 765525993 889790325 707406046 722662183 550336622 817004324 9839017 357152580 543108867 593464336 270646022 847831944 341910912 619359914 205417727 319571776 919808299 923872641 685836574 44518065 753458669 480335890 128778036 684391386 193406372 712100065 757917994 639721646 453286543 276931604 770300217 867913577 613913936 549327830 506045863 267474318 595161705 559960738 651511365 690847100 887900154 758403022 987798669 380875123 992092270 827977336 281934694 134144441 682075395 986294693 310798605 430343050 775960916 338970004 488698650 572334118 520141974 366194586 293371951 612638481 133727067 316765013 826369667 727298979 284869336 98346298 439579735 168849796 451075164 438513921 480779509 328489167 234768218 688303286 389541578 341095543 532763009 294935478 26986212 15288954 495313502 712953404 837963977 57954560 575259006 442651431 244422987 832411110 199355256 889294824 437454279 913424448 907286748 274710698 311226151 105117529 564774431 604036358 154614896 359623855 731314222 333166 937680561 401531106 406837636 932806527 759002278 579279426 401730390 639646295 245409608 20244006 990019360 464256575 867521028 758759567 743676859 8819917 705908120 680979647 288757914 861166581 880820810 827907464 939820807 602906970 292273779 395985842 773129756 137277294 42330987 663926654 375450519 18954982 570490977 205919645 79595681 286121571 237395133 835973541 332876596 136820908 290370534 107906462 830084438 887452565 839689301 912436546 517128377 684993805 531965300 11190412 587577930 957824674 452171023 774495946 919936216 653588030 889344859 797658040 946096481 681265081 524037866 460113246 924256733 1797956 638796384 751021162 361223544 904947431 331121188 145885197 649904345 774041052 788426786 594105071 250668024 537156316 30604806 144013369 311697036 201185151 490365794 41505142 994617107 493009004 809019433 479726187 898852879 17669870 886624247 690577347 391211705 587762894 591377907 437664336 301639332 471851453 950450604 813637198 848990155 931350993 688274596 763722019 673624863 261856966 287072804 824948163 476772558 478498526 997398092 210674866 129840665 317216958 824387596 121036984 704338600 539369534 122902410 348924492 88981105 94962675 250990532 437573286 435081768 142232972 721489141 571429676 393561504 750688103 886575240 175396136 890772250 6385647 15532515 677961865 407310735 969010729 617147244 545974515 291212343 986080940 783031430 410460462 271538643 434438858 390398807 937974957 86707587 837268226 260487779 100384492 181379651 370810803 89017160 224886628 955970555 844896263 981388922 641090666 883875289 735833889 303813849 393374737 125603417 927753784 590710310 854369993 466861749 593703964 804531735 129311604 987307065 635517408 728808918 233865337 916127877 374569736 868523260 639701822 893625534 35585733 157752185 418327851 988657047 911815961 240329555 151766373 240340041 470759617 479403812 739868737 954938390 717062126 774588105 266289439 654970913 687899482 648809897 286357968 555762109 507689800 905752294 438594444 969447425 332219786 193099399 273762797 14956282 822321982 20811182 913145077 982755622 681576559 638670399 481851473 796501719 649066060 391837801 207186007 250373647 562706975 685860524 379510676 77791912 54885398 72875312 831623293 870614634 988723178 408438042 387086075 847674284 944688456 316897908 411447334 939951962 434847364 200810394 198526446 916095840 586574889 610208965 743171704 15602426 288302442 167407841 607110049 382028840 92741495 907218309 320786716 94739575 355554017 710765013 875791678 786509913 729970973 406932971 386148707 603431738 873606415 864153845 837967080 710716053 195949964 432486638 204405946 525085211 307663930 119340044 26923283 464559362 155191433 364078497 156102670 80311178 461763736 731599780 250146313 592423835 980468949 594400145 399549467 342972212 484878887 212905708 338729880 942621680 317259553 189462774 329340008 994870475 390435574 313272208 270967776 122352658 719045 995469966 55048820 285671085 381302271 81510899 86035097 480277035 117589882 786125372 327285441 334800066 15093917 642755129 207819564 9934494 166224328 82706552 931297785 305458412 824822463 742070816 243879758 989718779 992294643 107527180 37551857 268179786 92287875 200622853 346720122 938260125 66555928 60271342 962534885 535171119 227032016 918754801 781693599 374414471 996204330 457274160 264613137 25132835 902550679 621255604 30350802 652442776 109295463 750060992 678856278 674339355 872740313 563734204 394372602 280595513 926713155 964469650 933750546 637821634 559550281 256174943 6297654 950148414 147552115 974359058 957972396 375188153 72838024 908951517 178517206 234461226 467879778 275232470 503708302 114501099 471867259 156396943 527088019 106507095 160503707 424876001 169752201 519704642 420972171 932352394 279638449 964670786 632333938 839316401 887652452 955345629 805123551 119562288 221101537 314115001 33731414 276639610 36820408 579432794 634369597 537378248 861362718 212550984 291266934 898260850 106949629 386731111 75338476 259655847 853429660 732776428 839012097 456439937 40650979 899870140 855513471 690264315 314408230 433957575 142613591 510964732 698186887 238903155 430798556 321352846 220896095 593459510 700987473 423616903 633413266 796095160 151954018 537282678 238431293 525065305 985544009 466218303 886231281 544735595 51097927 457061081 971138583 311543581 733070472 137339311 870047141 948810049 231661868 931713834 879684617 808329235 877170571 458594185 836480760 550357861 848070721 540634034 623703666 473460112 686332249 31104856 713365595 741517026 757148291 215230560 478650852 746849999 202296460 874467828 190941109 189223971 95359369 974430165 496751674 18775071 699287970 747894334 124880249 258141481 773412562 742947071 649454015 834166310 561079411 864369944 437311984 517290613 660490616 652307763 209310088 865633814 939160863 982305906 812355889 273976231 491856387 155827687 382315258 593536611 823068576 124696517 89282879 110105150 837484054 231509010 427386386 514649854 982915616 981193377 213802362 686841680 214875821 69177057 910842770 848024997 764656367 774604220 856960884 943790454 743138454 179819048 990992763 831427045 86247726 937193950 416266668 13895467 604844362 988708482 866935937 447153589 635080590 567324135 547665019 106639128 882954869 199212869 609575413 832263089 140579109 98587921 177573809 764096756 808803315 429919002 958763662 70236231 357930861 220497610 242947769 802281902 396010085 754333123 415697760 695156037 355656641 276389684 917166947 401352120 949163281 51359017 447153217 519537920 470247860 962503445 235315035 6705748 129834546 577774110 421171973 12535948 325601319 672842407 822402758 279169124 885416716 397610876 779102292 365996995 779207793 815759597 430208815 617307264 555041387 44978800 824353572 970781961 325411352 272443649 595362140 207765982 44333950 318368918 181328611 555258993 982752976 54216286 813469439 194390541 320375274 934959184 67222639 973435445 610200283 63656266 248838833 901683333 96190390 286924017 13494424 838040738 540456897 940581003 209482163 755004090 451927273 591787063 850097788 933446855 60775079 5027866 67818756 843991608 936701213 136147440 582070566 468591701 552725465 393754284 247416288 768597344 596003093 912413600 52321783 615926314 241291799 345736103 7616142 560610672 44643491 383146302 538967006 682263241 5883582 87245691 464581542 146216526 351964755 513609113 117892449 786565958 353944551 65882591 394650222 225242582 770941698 937249775 535193964 367018925 478460362 432641872 679173465 848771271 666221035 33693729 182003471 975931356 255037283 595944831 912328801 713517596 614171400 191215554 824634331 28005950 284445531 23370771 918789720 918722370 587150587 553129547 508561678 666477394 968567464 271524978 119535611 889474530 91583832 43878278 810935452 236907243 283048659 610589153 509632351 190137318 481909017 661550674 737943518 485059655 33981023 6166713 612110846 949815578 936129230 508842255 96603005 319630171 311469108 327944791 915421991 137362959 755756467 511877346 674957228 695755497 611805875 292397303 958591251 796732062 664853461 382130128 823812561 981549392 544775990 696240487 503761626 25985532 68862851 133475002 362365840 923855824 19973151 829020972 350781637 431804696 613884898 584899839 387533806 902235588 611642868 850097457 355405723 147544898 539972331 615241202 550549884 223273267 68339719 77958082 329232163 706853528 983823524 230165393 946763924 275943627 878067219 694716541 603968421 318382415 855159316 137763832 863973939 83212026 146236706 916003673 423351448 465669507 916699188 890912752 182307936 376924853 715689574 970283 691231944 317195342 711228963 441230359 215402947 857785007 814571775 204718031 690734197 928047732 868869130 76414146 594855805 252867230 560587772 77960227 325652741 96016687 849273154 493310306 62378762 740549578 497295023 901136342 147719646 135939946 5925187 56562875 627447145 867846411 984045312 600766723 160479059 528197379 105320976 536784422 144505084 110806252 411385819 431037906 623006528 2245093 869544220 572566981 432203226 126364816 811554987 325321483 167081793 198432034 971980552 994257776 171461469 11420888 283591076 814618682 277819594 296546870 962723877 649523424 32892686 911315269 517311793 340616069 521335159 337627500 520755639 718961595 726030487 232482658 801462452 187020466 796027102 287002372 29903892 225331972 375598275 570297675 635252082 730635068 77842910 209801082 614814762 662364079 278274139 459977170 962658603 278780608 969885010 687252499 279648918 819768644 184333126 310095023 826884245 536970505 309252644 360922274 63713512 745972300 488784772 106239239 219834296 879110800 552852199 786074617 148579745 539630787 574498643 764062754 721348005 887525227 510571405 312582020 492262094 666716259 91263541 346272580 143643211 858895137 408810046 939372067 831873959 547229128 939670598 692254909 162082641 142250997 849145536 550896834 88192936 908294457 961010812 429691725 57926846 262058152 972866040 53765230 199663131 414733391 352429408 566036436 219240336 873900155 45852393 462274036 249659340 907822089 652658504 609711099 595807505 113506204 702717001 7780199 45363856 365178964 407335541 342966962 154668613 616317708 692444131 664455880 860655187 581579058 657047155 175130255 94991954 379401851 441005510 832273794 732449566 42341846 231640392 994260833 283089841 397905524 765602895 189623406 416207694 45006361 553973250 866096866 593425183 652767347 186477770 633524353 765370390 871985945 536279636 481704993 20840810 875534409 166345906 273239716 985477829 764848220 625019699 459380000 642107640 986577238 250480044 921643266 280668199 695119724 42285721 969348388 365706610 336145702 3982943 157534555 882730673 716696082 970451526 377312106 704163242 640638613 980910701 169052655 56251895 542440542 574483077 891641816 113271132 439002035 150296136 975205796 95157765 523174194 28150433 209553166 967472176 745291391 794633692 168058547 177467608 784682731 305668897 9028912 285745596 509136805 901090186 877389673 549574158 369074026 583912820 461912555 822070437 732608707 572508126 658968229 910151378 144723532 538415175 76673937 580513341 751083114 80221538 999118190 725335860 110932358 24985568 898947370 737294771 905113727 414225446 957553689 161716700 333040868 585825920 311512322 650053403 789567253 384931449 156592107 202362446 647818979 359968629 750675757 913667409 972263706 546761224 30831202 964874880 686084544 458780083 431889239 484566365 782650560 479271160 662409385 255647438 360407577 139392643 652106972 548769378 625977418 670683055 644391130 22918493 839908959 791904115 272892929 980319141 647375252 967496028 727626925 494884679 779014393 863501824 54695938 373608115 908872314 954392272 644365583 452981575 824277868 403480251 87768346 581609652 899815440 422729950 321106950 916254757 853604900 38675315 612269348 171326790 632707161 519386070 237174358 311238714 695427929 774448453 710933818 287162211 251941767 9196365 81728890 784587511 11728309 160429094 638981698 293467886 848050037 380470972 200712956 75229444 520899219 404507561 990103371 824565891 301646416 882978116 790468591 507568615 243641193 848903971 436354739 860598980 502051863 398475928 591539266 93637909 783108920 45965352 996409976 877632887 854689878 942464032 663278396 80502814 669368887 498371711 272764084 280918963 826052398 627097671 805602053 338275232 385174581 146656506 725300111 986859552 684936756 393143119 827339924 139975435 445663322 259468625 241626859 976133957 670766828 781812376 661567374 766198657 152306514 883935491 194621870 17953845 238084161 805066733 279377143 270053281 328900816 942557501 628709068 777944084 819034622 243477214 183490481 233066653 399585795 947013145 205214196 273698115 772975831 161972402 318636774 312399257 114952468 768379881 727820290 363456527 760293593 460357374 576731359 432592238 652813589 178636787 331448854 225912895 481887176 938386644 774068805 656263009 625162394 334812985 73361898 252881577 43809724 836864963 302981284 881886184 849762965 465093535 302774451 632406373 901887553 129208254 633192552 959417072 299384673 317506151 340613395 220972985 909389938 405310584 223543988 974115899 404929552 979227083 232706097 64006664 974108374 514243310 912110704 829545193 251282211 459406484 191470156 167364270 749532050 927724865 265447240 63875453 826229374 538563766 110815956 984161862 287284644 326132826 313985511 671742330 472671474 185251653 205391465 403818027 183026653 954062127 869975842 412963506 936368191 555662474 423814964 30639870 134378797 326468189 727049467 210059126 538139699 710006361 847376813 149381557 635727378 298987098 624358377 664030466 448918883 806535354 150478381 548776838 590734959 901980287 211015381 122272499 767276276 781170016 72392160 114463913 626477892 228437119 309995772 579384044 417520583 772495964 297317337 727561518 323546964 571513053 567033739 355209323 255971969 982778081 168267256 405801448 101486436 515300837 117337093 274928143 932284778 812406901 179883505 749056379 659497796 771328170 179810742 60035753 716251458 768606243 607213902 929622409 466760481 994235420 531974722 218944237 777251045 384788758 715077281 231651319 416948390 803318819 783936550 555577462 522283066 819902803 435630293 766888273 232827154 316351179 805600234 628411781 651725567 111324155 247443696 803671340 812231281 816446436 42401858 390773760 558262776 782190227 25404612 288500522 988135996 528967540 33629670 568756979 550965005 650009416 333290504 515219261 311843920 578756380 315237947 3605518 784052616 217533727 259751569 907083071 235630352 914019737 688720010 482626057 874811267 305542296 234700580 42374217 486349611 995590643 444862538 322118961 625780254 686822227 513491632 897167544 357960495 612472602 966991823 317466702 289510452 239508535 538907769 896954838 941266144 84148087 791615510 543507136 324850025 25852565 52635091 113322230 301725981 762251537 411322753 599749312 353642822 731701881 222117161 475013091 437671362 267516111 583395028 487182897 47229149 211264010 227037405 649319378 410087394 999383660 86848609 546475366 393285628 762145204 668217032 135999393 373595180 676949471 587959792 570472155 866578331 556445790 341438189 583522076 752187606 62150337 643570162 196350668 788805149 723238323 758871373 361895189 676883303 616416168 246602723 635313861 800896886 265769455 507410513 125788540 372481395 850862891 275443805 538282983 396551919 55560380 94647743 996267605 605662430 431875185 122115843 457608546 525904801 876966218 786016791 197901637 998715899 769721907 257124154 705281132 353985600 609983922 358488819 18891973 864429245 761123605 825745367 786691443 965774377 459935911 814522400 441531136 38785196 991459153 822387377 164623607 930420444 241262729 535549375 636557794 475427143 233736851 761864154 887898047 543860139 822712145 832990220 415959144 199932251 275797262 878954592 401565725 801759197 851082030 209578166 436971459 316038495 115184057 54805844 557217774 621951136 523078762 587771987 728889386 300939065 678032254 34328707 395952230 446690986 404606832 287593791 991734943 560980445 38607270 877646159 885424301 275250938 189679473 599474602 52655162 750640371 339151160 406042284 133666454 976342273 530063716 792303903 796022963 133866990 215368164 435341132 907245818 24198693 986252957 96346141 387081209 358746276 180529170 354519182 613273987 636730653 845471780 540474544 473503404 167515085 526694345 101281190 904027482 437575405 192339744 991614234 472586981 95187512 290864143 453864935 195105486 634627724 347808888 640472383 882852111 289532664 14325857 680356845 386683816 587395306 693841927 559861715 460241985 908300193 165527395 486306763 896429472 820633741 103345801 966975404 355331008 686268368 532826846 406813258 376809036 134449246 105179952 37975440 154266008 638545883 499968037 649791634 242733414 230886734 426325394 334064293 103244159 204920767 547551660 512590478 377928170 435000100 644217966 571160656 737605024 640037545 259915857 166809430 498772030 457131342 764370128 367536305 390314771 192394962 613261819 727245570 680116908 860734455 147567641 511096398 82977674 262644246 941448798 462724898 352558276 606036370 646986048 864941266 665163436 650419817 602502074 599571200 383892393 770745798 278222679 959360371 533092606 192244238 610902694 898794345 808097121 383908173 215181973 832864423 374379131 266856909 873187909 340804009 628115144 15439665 679583594 456891743 351269445 906374176 159470784 59189127 793253876 132036373 432334112 209537479 860223829 846631536 376251201 493562762 209390118 599227848 282265805 136162639 881752318 192909295 331067550 760425577 259937625 899260730 11643271 674339894 662936735 201502812 914239042 579281058 106974685 804435872 117675224 955092562 293096207 924437448 135055731 535569896 684710358 945627848 406777811 735007733 315062757 531034882 927877563 576128468 719818604 915056691 903553928 118996053 438945617 122973258 614872522 713386313 812487543 468837359 627631107 623681661 1127988 282119782 562444785 575694805 332735997 94475940 191731347 579271216 492095310 290522257 776283171 518235692 553150849 667603274 572621279 513931825 491027826 882234996 895178818 425618408 255180012 931293802 592831315 460348480 329186235 906315802 832788261 660381443 387643094 312587499 66240651 657799434 313137447 777553465 135085898 752309956 194540861 537420491 122543765 644574314 772321714 143133546 635167640 395091359 4057063 882213017 343032683 560173036 958409947 61064903 272030699 92075737 563661733 911499535 483068231 557473691 993260727 293745939 555554719 345636141 937606004 350663164 59771718 221192418 852111734 183693042 118755424 944735614 803904604 252455294 719364374 240877057 353104463 380958882 998587639 290799428 751930117 124867796 891080248 810477854 512448397 821259065 97790590 580474340 286888765 111926964 903648816 870644200 63741484 443009553 100584670 604401774 597826708 660061368 433305255 869256205 661020284 969765150 782215772 283798924 621198422 472691909 905746155 457141020 741620582 246477796 775598548 666570807 33686581 730834308 748410359 751835122 965181757 823215453 352029005 476705655 966974036 224486173 533180393 752569386 978071104 476013128 713834037 570332384 638370852 772310498 937945141 920377869 270870862 783037958 150020246 134217825 299103087 830719760 323527198 621141218 778518394 495999204 265601202 601370197 518170633 960484174 243670568 207646536 200523153 323034574 267678835 522309313 85885343 401480375 764812678 389617158 579913165 353458711 267839033 749085306 190120738 818333578 493426899 18853590 661737272 574127703 71845896 296145258 713806650 676335750 842578851 22154535 148924539 988097331 384105039 946219209 823815372 385730502 869872394 362656288 198630528 508210208 399559806 251213570 138500222 95565761 265064710 595644203 313969244 361577810 143130511 732703814 510597180 358754317 397018002 68915006 850040305 749645121 207153334 33479594 110877212 461915282 272871944 791098067 668533743 543995601 263075731 236861172 168628690 877995209 12743628 113946287 709307017 443567594 784067299 52389035 736892158 146608400 748173613 902128562 61896991 388417887 708602172 458464252 34206191 885955333 169181415 678457980 772587250 108160334 124568419 999404135 778958349 945278732 393363501 79402695 75186190 173573227 208171761 484629125 317391951 833915791 337441416 501115653 154313681 205827522 282800264 728571191 500526953 719658480 861556521 753840318 768440521 400112998 446162846 104173277 508086105 638490517 930778534 163275763 134384089 436988398 45655656 799544268 381966529 866858596 224867546 969546387 943892088 967244475 385605393 976891474 438660211 964499600 161277440 112559854 429092954 216263092 975083680 609746232 707676987 987989622 739851154 835500446 593951657 341328488 751534386 971838699 389808028 444852390 621213565 53114657 837596539 655394870 582841819 553647652 57151261 567529506 282299572 610554992 245628032 726213171 153583283 682205573 783030496 788374851 948077118 612456596 565111579 905457535 252931308 701866009 853253107 649412235 625525361 693942926 533244935 93535876 385998647 364740526 884256702 368989410 815001195 315087710 53132463 864510571 193623683 98787985 781705771 251240313 263539195 537794271 850362999 901952950 475509712 884051731 184330353 429853324 317899366 479288116 603845881 487766440 724369403 105825301 664305836 549727528 677133388 360786831 422967919 191731776 636162152 187576468 527382319 571265685 126131703 707901587 760868937 245861585 992132533 587479064 269851623 165894758 127183495 463043075 153915177 263257550 787384343 71727238 362536923 146713309 45947095 446753212 894451058 552929741 711676602 855106895 260398671 662703839 464166864 832184915 312208715 664703032 939535653 845957489 286694397 756157444 440533511 766520873 103182263 987636278 489411040 62203296 249722854 861651718 72221167 130348297 638388256 459524393 625587278 896032973 576587514 933112501 405138750 976315002 699325340 933905554 454085900 62691948 625704891 57868954 630995128 544578529 269825816 78729071 458496939 731425662 567627632 50905089 612793000 191743664 640255793 573083458 565305518 605271034 546393516 728508738 595279288 555437059 848892702 941460888 72366127 314544864 470886488 244327286 689772229 147101987 802041024 373852728 937552902 395115681 118931392 165475696 139268842 597628425 78056258 728283312 962613147 226337251 723585269 897248143 896178994 645084222 939266237 242754470 282694765 100309633 9074264 451552347 371986316 301486890 681168315 555937728 93067 444313262 114750125 13429307 388601864 564713334 10211818 244046738 225638282 417026578 471841775 500687460 733747121 340178937 10000830 490642200 765384687 305359538 2653313 487462248 770313237 382745452 750003834 150704319 749259432 979963858 40672915 283742526 342200129 766714725 757446586 885198712 280914292 675522937 777558858 625573792 227520852 144908641 601400707 333099343 735245449 130900549 827833199 824935626 138310404 896369037 749068748 455203342 264288995 308136491 923087649 834886831 306212235 525431258 660240119 563636681 134727864 494249516 967283276 223482953 76813525 996762273 659430166 732416994 164736675 860932236 813286020 231270251 341578234 137421033 922837924 859251671 234002312 589362418 421886561 463238649 887539742 348148430 200388822 749804591 986339352 610215005 314224403 396404782 271015659 558881359 854035915 26473140 973821065 924445142 697169238 685283382 404819465 31874722 7085948 687325916 128767327 504920145 336934986 323042344 934027814 882048557 761560923 590791725 304943413 995925859 752112963 554644899 971194081 837476387 782525345 996771769 584760451 958158424 649465405 611008984 899654939 611396662 213895895 781656862 29387828 454846878 92292484 199362298 635321505 156223967 127073365 144964556 946004472 537594379 616094481 554168894 193915572 64981453 93219374 364814847 853364899 479208862 13448953 112202996 299341736 797703463 721289627 520412922 792548023 487412339 178331638 35737349 350817739 101441000 727421351 761924902 895087939 802793060 241024536 680518310 413765524 920839118 502845899 746434771 889123880 582653703 783651662 66766040 469320556 101832317 583697162 770821568 210308722 491889558 445789326 108039590 647634682 603435538 691229958 385175704 757932297 53398890 345369016 539922031 188080980 528186106 864072917 376054358 692488779 677997435 424184670 779048737 207167829 331092910 632123771 481164157 543655764 812086194 354934682 580869064 926229449 683035085 690180703 131226468 614559825 279257446 806082771 443818720 943817952 506091372 759474188 145234937 380356518 884216136 602605283 838377332 917311322 767071354 193347292 832522617 171328193 17514854 220692495 342808006 416774000 417842435 91236135 111261120 835484382 748907165 754194674 981535610 790731226 755872298 474698549 526664499 328623761 45271346 791073345 456715652 39305074 311672404 163177173 430797719 100326633 623476810 88858395 210643365 3748537 541925917 502386102 577927667 468547321 586964792 92360324 693405728 977235690 439964985 55805646 313309401 638323964 121564913 141086498 901882869 392337642 884574724 886420785 462325815 608014911 728061650 255114271 768292489 836923137 880881073 241043978 506962024 559165228 502966364 719788478 892609316 45432638 572768957 247921680 312799349 587153375 393368066 988931074 654279735 799703725 489088360 854544941 298872184 262826182 461815784 387062827 641577704 296511134 945404722 346456951 451076564 801867871 353089537 22804274 517974253 466604606 743858980 946608515 200412649 667013766 197998262 908421630 635970874 33253334 523777387 933166738 722446279 249302556 823791147 682888738 598014494 855329781 216936543 749519822 198375276 355229644 93294932 117458094 52086464 197075724 597935979 680839972 859363482 645177766 521589391 746617536 502263662 758665734 518779814 735049356 749833813 691736155 283744479 9456575 268166992 595965272 71137004 998936372 913405179 207997620 15182369 655024990 62939530 41474491 501143660 735000401 634321474 434545192 970146811 281532771 759316301 583911448 274215532 87236992 957099914 823729701 135576443 314195653 877299565 45254294 373295278 194688208 301225173 437577501 653248276 989574923 8953608 277774369 411106779 284204270 392009560 977522555 508058399 156144924 702416033 668976524 476947971 396241376 557853417 839296670 275221766 81368151 747110869 634375072 808253398 907381825 831976078 536610596 383463159 345173344 933513176 377833398 931199615 621045359 192466036 767141175 29312614 177930722 500105474 105110240 628030505 862106255 941958273 71678604 757176788 954760451 815069955 701624407 777416180 295113561 626356604 784249551 948355806 242564428 946173946 39084193 997947418 899210908 511616713 632634208 706199923 744891685 323472615 457819284 975600358 577521777 455215940 386709662 166380523 614793552 968380890 133375732 498300514 332109223 854390478 744672429 507222367 363971042 839391704 514047099 547024561 953318095 110033441 251561913 939747392 679230509 884040813 68088734 918260687 865280790 414848542 750394643 735444481 442274486 171290795 547936236 584532620 592162849 850819219 846990403 419346886 168569511 350393813 946636917 33090916 599334063 775050912 951149107 38516623 473657887 623470206 910701151 2599562 702822147 80323724 533582533 217783324 727090777 984985814 606901731 740631524 938283331 548695233 45688758 782488587 694348917 615176585 609716379 459642532 895745779 444623528 710702361 881845339 645595357 647008890 84872644 385584145 672388530 79918364 976848574 723458283 415531256 986417531 285663477 943678724 982034939 712234080 303220523 204150025 89963824 180516211 199419344 194164539 82825088 630333690 749053548 251206960 701644010 97164060 399363052 820950837 750770709 553759667 708849891 83794529 639020153 103962997 160943553 969220884 734842943 220730660 619925261 128825551 4841351 394773946 354804007 180002578 990495929 735908992 22224993 705970599 684981671 21830002 584901208 792325955 379403195 90789797 603201500 500205293 877409676 106226738 614977551 259583631 71052898 649980111 300835789 300126033 38659188 94976391 971192787 863689725 293084491 937269994 741943096 72128221 768714429 168642114 277981476 227193779 622749460 545190194 698157653 679763772 267200165 766931137 931398881 522265602 105860825 331375818 969149107 789440879 584999773 542004103 235062985 367292302 980643691 825756003 512062266 383198706 607813384 801911942 392680471 343414080 679345855 355917989 495459117 973508355 415701316 832354366 491243191 765707392 565609899 764409073 856093078 48853921 801753523 282923979 710192808 826011448 812475122 988890713 431999552 825083471 594984660 466034941 863327813 771594589 409634342 208332391 286554377 21534821 412606450 627685802 10646190 305673115 931460913 640220576 501564696 303469611 807402603 117436398 635456312 691180846 561998885 192005067 447120035 312306488 735220128 385336289 8820208 312889924 520315144 393298544 121567152 215641631 728157546 680091296 848030746 812657440 262002491 582391011 305425427 606870934 981662058 672444614 597448043 600461199 342721112 285327327 52670097 759157522 864851050 861057465 248243654 666686253 420999662 633392493 620786245 437648509 3615176 794735724 337143503 309300709 800040441 223327672 980229390 125646860 421386443 577371118 350193818 440941043 943852949 3451834 80747088 308632371 2542755 346937805 653172769 872429318 87291000 327306741 730056938 63152960 13913104 881979533 649639533 455252339 63931436 626686404 864019408 43364049 921832044 212815057 426135306 80510490 532666293 45438456 210990863 577746426 988901888 352738308 907625906 720073791 359900015 403328397 936214505 440294143 410256794 560239781 456093224 556158494 994306555 250264756 677321642 486085000 205255256 350371866 685264446 650431347 51010521 337625421 368868569 446171556 219084542 690053409 735342880 859152380 9418529 608771389 266790292 935195503 713729493 222778840 506504884 420125839 493433168 914164581 25438078 10462262 147333560 551564773 206655483 524522337 353151598 6635921 634998582 219821474 676660128 237968858 753650363 761776425 452862118 779410727 654744386 985607304 297680295 516348413 433614909 179727162 285777740 135052401 704586843 208578154 980975956 305417517 306270688 665055076 958697755 964793125 532850392 79339541 635136867 854351079 131118409 380762084 320545777 573519130 103998597 334335260 720512011 143749159 347716530 559652345 47883281 102846199 346815571 761386159 186597386 156866975 661142983 614627041 19318007 794615854 842097878 698594494 624052152 897714373 269020578 206950199 628119828 381760955 677178410 865200571 305100993 194970048 24104681 284278943 862755469 953641297 34888913 815769484 275498620 978648934 931540216 27859097 704575392 664134452 51669075 281155626 130717053 145364285 124960092 277112024 734297642 575202744 747639612 491135075 328062249 335095842 282467001 33377843 804660395 556790458 368577121 484341901 258832759 519266517 216600721 322727373 161413759 357801800 606954858 798532358 798913574 110528901 879839906 87511430 246212700 294107832 644344719 376860901 254432004 668743345 757745919 86395178 681831867 336848373 424642970 330553510 182990138 649272576 948267493 909707954 693454017 336931657 48950412 538164093 642412417 691567942 565410669 449856215 135190102 338164339 2123716 571677055 68101180 387605103 906211842 857838708 977509309 771731926 394383640 424024269 736964606 457541214 14220081 529128198 856578591 935574304 441799824 207296276 279816902 993309718 259217561 109327734 420649858 491013584 696490282 863469207 597023698 349841953 411891363 908344912 736050862 540465509 44511550 783664152 227489350 529471225 215163386 179544390 811314112 367309292 173986780 752177333 66379768 877344853 47894666 415686423 913798300 643460347 978012561 238847735 293817286 879605489 230385916 905218295 409312042 601663181 407569638 567646484 170042803 616903065 480566806 72116867 308035392 670362707 349968316 9046589 40249279 527506017 824388391 538046251 287188235 598613114 893781474 411277844 658362996 145014117 860913899 445955707 984255885 984044438 151285815 911722424 84689083 509367509 607865635 881696133 90280760 195844485 90119090 754629000 764178193 3737057 954579316 182827867 634293542 801654287 581046445 637127525 200003065 300197742 953456499 407091904 945271487 762191968 917713812 46797746 359022104 394362435 737048641 831749562 191736769 29082633 507729477 619176461 137632957 343712872 379766187 922717373 265857771 231707541 561227781 867801179 296599583 145825959 750393811 103907766 28540932 565639253 896530622 465647185 80702718 738970124 298587172 183044788 991401635 635174780 838433470 553582527 200529424 834055817 290401348 731813981 739907048 640473572 100636555 13618714 363394476 585076032 137496427 848464067 707026796 145904780 552358962 125695290 110069947 704263880 581772490 827314132 670726223 618057867 524710638 976426420 289133128 68881555 411109924 700922146 535598533 327693420 394797726 975864308 140693294 193781761 180195644 157559086 914273267 105787917 900125592 324629681 965573700 512518887 436577871 646506556 278877953 995703589 579243304 583002669 382430777 46239811 916245841 763348375 106456714 358227057 805284641 600191575 598425100 323759162 463864538 332207732 56589051 871926375 361786929 467754926 611489186 543797753 938593891 124171067 285718695 182734482 178078808 474660103 417411645 204472943 558054213 168605996 961497605 64429310 954714929 228152816 207448719 381371 641983052 903345768 258764406 336691382 901320559 932383835 698806694 357335309 703872250 243293399 618530523 763789605 874091136 990405923 774932853 901245898 815251174 631464380 357352069 286374515 905219107 684876371 135506712 322631979 441017590 67424559 544366418 591495276 264918865 768739604 103385176 379373487 630652047 814644480 237067158 840634974 999360461 687539293 322457989 770140331 950551029 857793678 894618583 914941025 546678608 134188235 786448937 986632817 609233186 717950471 812848019 760933094 168253240 667500700 579653219 357901659 647643960 864904072 415765569 915933724 494443699 168230167 174216841 219626876 806596178 749446011 8526318 974750572 756198299 848036966 216046797 745850875 981978397 643542526 971669799 112907216 788983440 880537526 300387714 803996564 929024254 280554939 417538087 752792045 421693934 729468892 619631468 373053601 62158978 148983351 188322504 108083698 503850067 198039436 947996520 230513434 538995832 639578169 178610162 242502733 653694526 580547307 341626861 203749806 65087510 121512623 698516410 154394061 889266787 683813757 283119998 464140783 953310113 27449133 628660116 372889581 28229119 723796311 786467484 252022832 775603882 566878791 940389709 120222867 43986987 192133450 291130128 814835963 109133835 932029286 82844655 132285600 74986215 484806671 998276686 47548216 59654904 578139076 494188574 912849627 473014386 199299311 266247391 240764771 417437538 29910588 73191429 327971187 287528984 937667936 784186565 743652039 46197709 321221450 326630371 888753300 211708733 758765308 566403070 638457856 719675247 61811849 495075340 937769229 177169796 400417077 823330908 854907521 323101428 642424786 664890450 438884834 767526401 994538997 601766038 451893017 841747731 67783211 385314420 803303719 517367936 458330264 774707206 108130088 228794839 329458024 285486331 196501209 629905162 441837081 187536525 580178595 375804935 935279261 832597577 562090636 979309397 969282265 479686961 403504023 291070784 521898893 196048435 70620401 750463579 528994588 394816313 615559174 813133593 265901275 662923344 323530149 497072027 579690401 513220799 499505572 662353059 320659181 707232453 279433549 763726116 838027453 410503429 741577169 596626353 277083312 563288504 368697197 533750405 279280338 657746176 165640285 257575897 561226826 900833275 277940100 107885504 89529679 69226136 287050697 107919978 645924889 677560931 533481805 107055897 84302035 13117538 778561703 231788402 408696545 428176873 888714647 59072092 720017552 697246501 383031999 569193966 575740916 509423882 107224622 37410325 51677383 894935676 461734079 260038070 436263097 4822726 208232014 874833009 428576329 441021842 313485173 204293526 616323137 544258699 569355233 132647564 187687354 743648664 662597909 262676430 924484183 168407900 247763681 596223444 360291327 971723549 994029875 7678535 163544805 142887856 431055896 409116805 275294303 561476132 587759379 612256439 405217197 780269743 854251804 431329154 778473615 208951335 83174590 183980775 85520878 13027558 691413598 79780538 906435183 586781930 95418367 478968281 702966741 508885162 911797526 228356460 516567681 110424686 479616761 230080067 86901606 504154254 573346556 275671379 869380977 343750817 783464093 818121585 229615655 512516357 295920786 872208543 377339268 455745304 754828023 842164962 182832879 100240799 22640964 269083821 348851764 739912762 333432367 378118111 32128030 460536514 201554263 674832472 801995094 63842925 745303735 470933201 22773577 169501007 700225210 757575401 212060998 452886584 113844659 129014868 553495729 460185013 698745649 192590750 904811329 670508464 904222909 786589795 249543063 500233923 516458622 691445770 711552388 514241977 802779052 577874396 40160803 769635104 803404747 862298541 532340584 423522178 698951214 660554309 881085418 89977047 18256294 776917399 638658987 588154257 296724859 488256843 952887743 297090000 931028976 691795936 749986280 616448176 574649757 56546854 558535670 511398845 906014228 187760268 363231275 104530937 597601425 767338237 871699726 991382338 700561937 584183284 245842758 671360279 167961433 948621768 761078477 267951386 470602470 370368760 120123447 964663599 937871135 545617632 309444827 962912935 951601214 503903188 819384179 559519921 169066286 361921156 610376373 649034845 426532940 54747116 677995067 313243061 370867293 194763552 935723647 29438712 770742959 616589241 272793374 432274870 571536296 620027174 379549863 387131472 333657293 884711459 636227502 744114384 504931744 366637474 516970394 2827511 886628995 187612561 299419233 62971387 57783302 979405530 185541591 146740733 684952477 160521814 181646950 907984724 580125763 84268508 739004379 44002459 81190252 537100320 330202617 774640518 691288439 550352139 923190547 60693021 308197918 498337109 125000925 189157806 322537098 706777700 608761403 285779440 724611236 680046038 721637686 828296124 719261906 925733833 526904512 395366892 399328659 529562780 768348689 554735830 138630722 90847633 968060762 350842686 641043553 852440067 9817489 761331860 595471549 140631975 73513678 684927582 568193714 488499131 797752868 24890575 234039801 444949146 117353035 762275654 857408313 39470720 39146930 444756531 91394049 707629415 474831997 175664630 201294973 943241978 184178437 657882876 313366921 745654122 52638237 105653918 74353533 332893496 20306389 692887350 899210903 394491586 988290252 873972358 765434778 697555942 460619375 866098005 413590134 789754555 821591546 789823473 488162842 748233802 666013793 250210425 61495302 932073069 522939056 316333547 358695957 845739176 606102847 504550882 951962580 111316570 912018806 598325199 139713367 832090424 938680877 1789164 45254727 67781105 431218492 583401678 453304420 184213371 280313 809687633 177514904 77782800 588721026 852634485 186908789 75982610 552291550 425056895 900784137 415357593 860913144 969044621 496311341 588740337 710161981 415962664 605948824 450954014 257011597 506720070 798992832 278613767 441545019 726445381 322456477 106671055 869945060 185958178 383976085 979476552 575589254 808456500 608821268 441039898 858723516 378042263 608041052 864045922 17941439 703918040 955612226 417592165 351034025 35784756 885286349 773614514 589150174 352289690 983679780 691949953 716325876 515200828 508158975 147962590 295670682 496728954 611230463 991284496 636519221 633043611 200631873 181180836 731026532 770147726 603286012 283112499 216027097 157872017 505280271 401406571 758470109 378700645 169376752 782739603 177838205 994659588 931233264 999764499 890479990 740952453 245986089 203375891 834503532 45041672 563243255 828556019 777071639 938514742 526556150 242727065 47805803 297531240 297499520 247268432 23806048 879722347 533137430 844944396 412790792 5326159 776402062 219247491 454542599 457494344 305020072 347839932 760925241 352935273 230539097 353482579 803828821 496532930 211344625 263766203 668715915 222039361 607252658 474562312 639304692 34452495 287353754 754614020 239007880 859126575 450132235 211725559 487859233 201068584 441888184 872369447 472128483 641745829 939482055 897300922 5729054 457550104 920415886 20448016 621151791 605501867 685140337 928940346 186967476 219484761 709315566 394983481 74654814 693949546 745156491 90027892 174081764 478475608 159937216 75469060 214682077 205389212 303937375 267034003 662585124 914181957 157846992 988418375 758038928 680672390 883227724 494405492 341254539 321048150 733142836 58465911 331515453 928134678 792571426 505363942 64510704 93328732 802818226 40158250 869879245 817688849 379376695 389887185 467967407 209509292 564634803 568962102 260980611 258938924 445453597 162626903 542184473 540649401 704330063 629793196 376556909 114533231 269421942 702271592 874970554 15006104 448566723 691863755 357299564 284162170 240916604 601949984 357719045 532874116 359415520 869173006 658835683 551157598 171518193 566248745 800506726 541076846 404823905 866186824 164875812 12639439 272137563 274726445 12585935 596848997 96128202 81619880 69833928 910432879 768913725 62761581 146693050 531071799 98233557 618733385 738943356 154844158 3415112 592864750 232073441 465270505 585214391 299944659 40178022 827253276 214205568 717166176 402309617 287706330 23129653 629621148 891275499 282895215 431777557 426084053 538703880 343847302 955724984 913483752 526270705 96431278 130967092 238297900 974230418 659501892 651517788 371343280 952213512 156490067 86749410 373507836 153708329 476133453 187635765 441444626 293925396 231746201 144465059 660835135 597100937 75009705 187724263 544041449 545943768 770670669 694733598 894288857 204326194 288479171 522867738 877174352 301211932 827415314 167723429 550597651 583671179 218503202 180764480 236011367 357131974 266007936 85289767 647370163 741240770 828785215 232138012 698468425 460178162 4004409 662737981 268682118 251960826 163926459 864816577 535578859 366070857 887061561 509833423 497274718 987011851 217240059 329229669 967316742 436434541 272461682 951860725 91952917 760005597 309021372 662105111 756937227 162390962 357474357 733417604 760817291 674976333 92989563 890779302 802109552 206951859 692953186 117543826 495068480 657144676 262051543 549482791 480381268 429304127 718319764 926099254 33954575 399329698 378299273 621326334 415764084 851443351 528060213 59426009 531056296 35244738 38783248 134193525 433275429 547961638 568483003 30480179 615015132 948178719 525979914 307706911 843866297 347970369 219014360 497691719 504286452 254477658 163216392 729275991 586113350 579240565 122702730 266974758 786057917 83686368 587310588 791428101 371289451 28710736 531775660 498266783 549071392 543651550 164003038 62345577 130989631 817346060 201979409 758448344 616523446 759336563 683073124 677221048 696633969 451703412 287220145 378773159 283990175 224997771 316657028 988694704 511057897 922962953 595651497 201314215 109042294 103826698 541457481 340065139 428593103 612915315 163598069 139886907 122647485 788344799 127878677 547521903 20922792 541965175 648547109 168485437 875728351 858954900 272090751 693947046 484959611 542958638 598165955 282646482 544504907 519487753 711291446 611282784 131303136 980440026 68876946 751352810 511301905 7935338 502835934 566528407 535445766 898025227 254620129 454024500 961875315 472663707 559835006 560008085 43765270 989822671 201603337 469299585 53534474 104193623 275682546 88826105 655694968 222865561 1874178 207391143 401442099 815326785 404512108 188890682 951319706 631153601 981995583 429198878 380681090 968919480 470018628 254623577 345117285 92786910 41099532 615964147 116478659 119784508 287946687 588296029 188665953 59618425 99409281 995626496 261814085 350922671 881214217 218198396 777801477 12636922 988235770 67764974 224039037 691407852 487446820 895848900 909408174 412601120 621607876 739388307 454755766 220406463 785930928 193717208 265422166 715208191 562348395 826758177 372839012 545573716 324678882 959420892 225738687 161519181 332552377 416977831 981107197 722979523 191374131 696608659 156964742 389353390 491261364 284852294 139079337 867334551 53107086 832960875 941561435 332108057 567406785 608103737 473677280 780165779 684215861 548265411 528982636 40490496 646905554 199503112 812730494 912932290 666261336 942348944 67516491 991962544 456580412 195429831 458703697 911503035 779119454 291892428 704998960 472673523 234300216 127492079 591669469 150201846 974418586 547242425 810328884 772310965 245671763 859605139 239713918 71994347 357549433 5981428 553999643 478822925 654594391 505658803 404524421 458383721 107855853 719405644 485864685 746381682 335067738 335832931 994524392 832927152 398806786 516023541 845917128 687828281 515928286 355213077 988400678 849358567 233608509 36023630 253413296 439284299 140121256 537593228 260995152 398326091 439410543 676707686 298496157 866478740 900440611 941481634 294365965 243721038 963878456 69993546 323330581 943061625 143169214 265228093 323449207 711426282 130432119 951778846 778131779 118997469 769982594 387532802 390979733 588207842 225599430 629853102 593266711 387516144 154249014 464810203 53220373 818564140 596512055 304444161 947777296 282106387 107796804 215608656 554467157 139009721 825681146 89899481 760737227 692372425 101200645 639634289 486415138 913124161 303344657 570429530 802343229 603860508 303017633 180324409 498185862 160245393 725278950 729652629 966394294 321421620 112952445 622480863 971703982 99544549 849154636 118175435 272115094 891004790 401713998 493193473 23334539 865074200 865971028 792996801 689185092 577305270 293094931 856658874 588932531 987967972 341757644 99573531 630372303 198031770 526005828 642631370 798781297 631339955 117481581 221562560 791089482 710206000 702197997 904141864 282152305 111371974 273483621 867646644 28085439 496213856 983236456 965783347 821162456 892141931 145178038 314786779 735261503 430642445 880234926 652973436 897289336 233956427 879858575 46538352 438102916 899039789 787118789 15417271 979511369 717869216 617443788 46986782 575724768 160846941 137117265 130159393 307682842 705798811 172558980 401302368 141126848 37380747 654842657 187194832 224027413 86200080 992125852 781414310 761106048 241921907 507204699 991870550 142505026 934632386 862365367 546919738 899619376 746602146 683988725 4729989 721317681 396522476 131987203 497053937 641735220 854000816 280807278 182227775 783629758 686890465 416991997 313452494 491219291 206857437 757114920 444429091 872740942 209116483 236674697 325494228 267374426 745107164 273855010 595255741 118984359 535199924 613481654 342811271 198158161 952523456 50390628 825364956 531165659 83864432 896267081 201363882 120413265 261535903 67459522 43251288 602300815 620528242 559204044 254252524 906792609 611784848 864384861 880362055 541000381 245472755 571278888 652333703 350675281 629519961 582568840 78812183 840080740 601776424 530616386 516852201 633005867 449364627 803375049 298383910 89629859 706222426 335176954 379809268 609011384 289203586 699937909 942870813 739075442 115208503 153826039 581512782 631477190 374728768 907443793 218255720 834853364 735852266 106742660 655831625 433058480 855838145 266899391 575378794 738240984 548260967 487699955 785892561 176782761 688897530 144141363 26224408 675730598 492983931 633974512 431448349 318943312 13100444 708695210 791578428 478457423 329989683 845376342 403838681 977483043 123798547 737043064 371022282 123793865 177862513 400694787 695455753 109994754 18337560 726131462 571862358 852639828 825380676 533581485 727489706 666724177 786318663 948931266 608574126 527519916 776241002 683364048 579448452 924567858 828845134 349128936 406908712 961956141 955875217 523431190 947242064 128753778 224208063 918898917 514824142 151270223 405355236 865939858 227391667 134298674 680011241 857265360 222263309 879090422 182011653 697412663 680488884 597374244 35856115 356979935 214686516 944414726 798895123 826915620 707180729 476719225 552053263 525067531 642876043 512467216 756599012 780504643 114582004 159964566 985201728 465996848 891913481 867269303 993416500 563892618 4186930 461266435 584317898 759799745 753025360 583632458 742703975 875085320 291218652 2975 361796741 929359052 313467354 669804732 920967662 898188686 668640838 986795003 875674039 968350892 677174213 176335551 314989977 729526345 704416548 785266913 7321602 4278882 204355805 470686230 706137230 674149718 281437260 448482178 285003396 584255144 751110231 776706772 704204423 48472369 819578756 343784397 791420796 390467463 617207907 906851567 773769114 537713236 578835988 274065168 297443918 887219785 528431986 124025754 787844356 174121124 509535676 148804526 245699532 240726003 407108900 368301212 118539762 740224770 533623289 927305017 171828331 60598669 987415482 90743995 779809758 948296397 257472640 824425419 431490562 279968433 362570470 599474617 564944935 932512689 844448414 464752963 806944149 293297586 600742846 261744135 543800076 195561394 542137667 918120176 7768524 759141890 782513926 876172728 113782514 533644211 3086578 888971221 292065532 770835877 156508634 675127843 529611173 613854194 757444645 281142797 526498917 483797897 862767832 108966056 814194255 507731160 876017339 799239049 952406537 409789092 449708427 804419482 336458818 847680042 118594128 5625561 446221100 210716614 475483835 678072298 166150712 483854929 682069543 581386147 683063369 920360321 650978396 656541560 657672814 971297452 776855723 358786311 13272379 138967765 595216086 110862729 919925491 244775835 149762054 521298780 538148631 963780684 437041438 227011490 665292612 349709487 486032713 277844259 891639663 827252316 137391461 591029279 674345035 638256740 171755832 342930864 735755378 283542458 337510647 78671750 31314049 665334463 989993127 390942598 751362258 345333932 857731540 746708083 79446190 399477698 87364863 774365393 853338536 910800731 911774346 498463293 200683602 887702598 320347330 809701392 738293783 30750660 246515679 550420362 637698569 636875959 859716384 694704664 257970079 327509997 698623132 661139946 497752642 716885398 806135724 9809945 45786005 720454211 873386174 525962244 614484639 928948889 898870401 288647414 419484890 228013460 983855910 871055079 378778417 216341736 147743849 186426441 578558328 666393059 166024700 397892913 245140276 284643966 632299045 322721846 987643499 385259086 674917869 205166472 306093292 965165607 323180096 653104906 219097699 716173175 576972730 770722052 93053465 490941566 891585121 672521025 356600493 497663207 289905660 497660785 690602597 488765939 498937283 870772116 260295317 26281066 554013158 878129491 434184427 850627382 470536825 384029613 624791586 82046257 332027155 480680313 655718026 445523737 28636072 967639865 858805661 476985568 469114187 75405436 722950590 946604589 816184425 729158027 497715707 652008729 252792053 650348000 628914011 970725271 97762489 268064249 750146651 481669243 144356352 717517270 998719253 610379307 868519380 559171777 493141742 504844229 645648662 365257297 287157953 192536079 192531622 62619065 879374457 98319982 259554899 285245898 16933001 930990643 236561616 189943463 901474963 595931941 870159257 698794905 927488343 479810258 706965993 488932523 320667433 737366544 750132575 205154644 360575177 662640304 91173269 159662976 494271892 506504930 523379323 376831406 768820951 168015495 119378974 7422662 151570250 506598560 107054108 513029691 955139222 779281281 629511597 983346182 825229510 983608402 734240082 186355562 498389719 335523700 327035389 219544118 419165268 36844282 41434933 156733938 67155743 946995628 913830472 395819906 605053611 308324674 309779148 127627602 908922086 950375758 388276613 48046976 552980447 806105546 720795263 868844379 947616143 709847816 232630052 931453437 664455294 169716064 432392339 917104647 998079416 339462577 900251423 214688690 549494363 14167743 559006449 558993759 332951111 648895329 998921964 949746854 188927059 41035633 551559971 729995225 805574948 873826432 685778570 846490839 283752948 63306916 48861368 1136592 154173965 397051888 285189586 662247193 515229831 546433880 122461344 951657070 736761920 31252030 819060903 414432500 46680724 646087165 671441849 655672875 184866963 892120483 555857866 753696133 161352005 381605188 233511488 304880435 194106497 94131880 9055358 896679823 948345798 460620108 223803594 900722456 96183574 723168993 608558867 609802149 592268277 850710957 317930649 804003233 579474620 122226178 969194955 763488460 549367645 140024963 118687972 406762267 340121949 642716905 982474190 356354476 80427890 453119199 920174888 66717935 513834762 510474413 973080029 990445345 736295152 620013567 200278873 883934177 728799433 191280248 705133149 514696283 229565950 98173526 783918867 502774531 468947127 71239523 215750288 802120523 701606601 903090372 689053614 119288128 351833997 528220003 171714853 832205193 456190224 601272026 429424432 257762537 69823687 866908631 993442812 290695714 281045582 499669801 861771883 260913861 540839155 282055283 940768963 707386150 183625559 415500152 742608342 562214407 980582180 798236167 298549426 470975643 743102305 719697525 731411221 768157698 788992030 434624242 499153531 140032404 845157577 401004960 563877602 576001535 585899518 181486076 22699513 710680780 556779323 74867391 708408153 562411039 952123842 975392205 383022920 211956406 35229492 89420142 353680583 722979875 510050416 588023233 783049279 561423950 187792907 225611657 801081170 462469856 872785053 947554009 476716295 410662128 630174429 898542896 373817294 175148689 929122526 137817773 851057392 512690373 968582164 264527113 838987604 216195712 775269125 81365901 104011177 231840168 141863136 403552535 671132201 220510876 648367859 898347021 793174459 473637001 339144317 521982768 900747375 796227621 41261826 192003518 575717051 717186890 591146364 271864602 20180655 276578687 332024442 935847823 507709754 269596989 64350949 81152785 666696096 222502530 523933546 543982250 109263067 795136508 397479127 503040675 63866019 332345022 487093643 809414970 795656532 261020535 868806134 805658731 983323535 564856979 471453334 869531431 363674055 526121480 606067057 963771373 665171018 444175312 888045541 306734893 580168568 329665546 378437940 885120015 943991962 908949632 365396758 858540105 52928033 398581389 891953933 845075284 759156025 454288908 13991407 241757467 162138456 403514289 3769418 412281912 127679473 729687981 228122035 41819846 394275914 276218601 339202057 379844182 530212511 454780528 534087565 57973021 481452786 393874306 595159046 55540384 798060685 631376559 182714323 753589534 700681167 440134627 498478495 306823975 593868674 821558492 935505138 149151678 782070723 229153101 717799697 609139857 330450412 109722186 893818693 233020480 628952190 628618930 620312166 411406741 714028044 580491907 518190880 969542120 151066170 31169144 11009536 999871553 916286601 497730602 622126635 285561667 516514275 825518818 409661839 31362644 583147221 864665622 568278741 386123285 415310914 623986965 638810537 989121377 755540933 98508307 321124817 791387368 994584239 828246473 231675893 352705979 252374363 422815224 276803410 796287391 1138885 282046050 499301440 64010055 413487054 889999075 940568457 37754874 759752068 105439566 255950288 242507749 422133350 1078396 107899899 651926547 845633409 764029806 980566595 942570670 251625342 360786016 360890610 384824896 269772229 565156004 792673646 675530470 703988874 190856997 168877323 214050851 450619693 863603496 551541034 646429058 799327222 731072603 436392777 172422747 558256832 751418403 403212375 942142237 845704058 109488130 209696152 813223565 16974220 954929813 392689693 106363264 81775164 317498416 221210729 878074303 494016197 125061293 424612170 225622286 293157055 598397412 58791606 82334627 803117570 629824622 306795554 576648326 468379263 278381351 816174803 672506784 65510949 472497661 37503991 214007864 698958158 181842402 152729042 795219980 182476797 197923502 268259628 164244540 280098161 28653248 346909178 528745138 306828746 11444246 826508527 940382941 762754311 398029065 844646423 638677622 762921281 111013254 597131771 861656543 314377197 591339638 155003359 432095672 991847202 424406218 342065572 820487151 139363330 6006238 950408533 160400738 754221896 232398380 448823816 876828916 70095127 509835943 284899510 733733411 891101718 952041376 724858260 568709949 703358017 794241488 954836872 784426671 91924557 686433983 996125757 434083428 893660741 155386902 351244991 151932430 860862064 548897285 943186673 640226448 941184906 957527016 329147580 516116351 308394505 399250085 133979670 856026976 62111189 889831428 636663092 927299672 158096335 764942899 934296052 792240366 462308709 32747375 989902096 247446187 981759243 794043552 693621652 71513209 931336989 169756498 840255297 977278373 312037219 182416022 433971205 284793295 494353832 151866255 31275420 707360848 955095149 556174332 490948025 787073497 372618874 229909066 822538058 104224271 388881516 967279260 798391122 842471719 507605255 78731676 889125148 82325182 503502987 255590232 755124771 656482253 193524811 166994054 490276014 717570734 270997310 650161224 671296154 165110629 297478073 304945729 987078979 293814974 630961176 427769155 458408006 26051192 950946664 39228444 124305808 714134943 99637936 301051551 8998274 517177925 641428738 549410817 202852660 512454628 261086385 877163414 777814612 685657263 734951408 551403647 734773735 965981106 516520668 368486502 92289489 118106614 526155524 207594816 752492845 185807082 439572154 906594479 358542192 708760834 819876409 288437288 640893234 556280102 824838717 34428567 749597024 432062796 371566073 996144464 714228926 42837209 966041944 448360460 597153622 315439042 742044477 584597077 613004119 633221233 338912975 958703762 834893684 677180722 270981104 693148620 33946727 507506453 523855826 285242924 233868277 778896069 513315903 472117479 917432744 910769286 23873750 124152069 917333006 726513041 610778017 616269441 145454715 799938291 61394813 628728467 168691629 109475434 343255333 308467623 141868962 886988872 358998651 207813576 660645185 316661406 229433282 411904639 238769775 762331423 651677461 549854503 491154754 540489245 534853678 964943163 964342542 179615218 394561021 298581982 683417863 14528168 461507211 288556925 760714908 138183334 894720185 699112275 385344165 467613676 36377392 712470571 935421371 965564910 492964249 370016119 342969706 122560917 313253508 445661559 983315677 338421777 153467504 856725703 918234124 796457594 485985445 160505025 544107089 95418127 660794884 59980101 330103943 156975760 438413564 951858140 22358859 784276579 169536754 199405961 636764186 751082225 415179645 326554403 227328792 414043200 847268986 203150468 761939001 713504465 151671151 993992916 841386987 282593020 127314801 789958073 777014925 600231299 95204683 308955923 676643738 695324784 321322358 985162054 404302081 925209835 691489584 321744608 382054493 118262775 243255025 105139377 674990252 44118277 698942349 765004345 171338199 548964311 698960908 852115743 796541921 301001062 362795386 476248356 112132658 114437695 701050766 765297353 371028591 527082541 958999220 606638291 924242909 283738269 556351358 339010308 262779150 917053642 288730169 238878417 536367807 341108012 621016313 744176623 436231102 691356585 562922558 31360684 299541069 228225488 181217321 139055885 943784448 54535217 114317270 85375123 838119684 775377752 959880574 501129514 807291116 640627920 236814430 823088233 505015713 217484823 203329935 400990810 264501063 233032923 73890136 454290697 649053017 980133024 546273484 697710163 489627020 349326926 233254450 599024576 853954751 257722805 410276939 423936400 237801157 406005072 700796032 346852437 702383873 476309412 641978731 740803692 737618523 701102031 6705267 161938703 933062321 174490221 432787401 657397816 593041133 92221963 808412655 133117405 518110802 596747971 261879710 453546962 17704008 109552754 34968338 741754441 451310786 901235410 985012949 401014002 973356819 620341453 261442994 519628504 390169421 795592405 262206390 193093908 338744306 358714326 448387010 295195233 379097971 868422919 118194226 625937503 98181871 593242643 762098881 894582441 74908978 788825360 662831666 529987391 128564913 483127022 74858711 809800340 455470253 535224393 800307642 855457644 317660149 380167048 484364884 961972110 639336289 103312350 589070273 764113683 140565059 683774563 234933273 217539840 53872944 830110670 41360153 829458748 706263489 956193802 409206624 896902710 849048824 454280484 528289353 684524882 51231951 127953504 151245269 405503406 43364347 454415980 700991086 958865578 284801953 690274972 652857591 939112096 109093341 636419428 443344438 261720374 237425013 572924890 127623747 876224821 518479001 874047972 701566100 413529781 210273343 633426532 150872484 675375222 395752391 966613177 107085878 840089565 59471224 637907924 610285553 400356953 614978328 632883495 274912888 248935296 709304860 938715066 506416476 451678343 64270809 69811308 36861996 286732275 525496103 147502453 356180182 572915341 93450397 862496400 194979377 556259802 208780841 246382742 248467381 640987591 608220538 670964056 808602783 126283488 137671329 973493411 847065634 576793607 125257387 748691483 842763510 66907017 730227891 978342568 290443829 913081515 684560985 269559252 467616088 214194280 662879100 12087944 905182358 492872094 116021233 434444307 200670979 142223153 157102615 598746038 406581730 588233828 314614939 787205183 434207854 52682439 100844329 422277812 935596328 675568464 164918113 715874098 427586024 117811153 339505139 613107248 993142231 385665349 434511661 106262179 751813610 921296723 129480455 487015173 470666113 902300278 137688513 133879955 691232952 951303246 506206328 422042046 680810018 101754975 569497755 391977347 947440040 347213953 806325025 532647554 561103108 817343901 908829891 846899528 964964099 819429200 535066973 454048870 953774310 656319430 190196521 737812464 427555826 428694417 217998766 805770008 322969162 63724351 267773381 690011198 310797465 336060241 410847387 594954943 624568190 854566230 908375243 273267633 187883091 389618955 546830372 45499330 903709408 328387633 630279036 289215315 746843077 508690827 587566902 441067313 58856379 243462574 410131998 783940515 423621228 822039734 898294665 874828226 280955726 298978110 964582579 726868838 71421018 582015974 566808343 596410207 580788324 385042894 84235344 897815728 850999549 692073500 37415552 685807330 922146864 354633866 717031882 962703213 73127888 785469855 539695362 142603140 233015033 945045816 61856579 678131102 89066786 656939278 222808361 424381783 502348594 529871940 737626953 163925830 315322469 440134182 283760353 333827451 922363629 121074982 17208582 677755446 334320632 227679150 22587184 945977346 293403950 242771715 926090383 917755762 865047453 749189992 714384209 222927406 546201999 734834509 799681762 371882851 943846279 566412141 800824337 821253722 563767725 596136938 720820345 201788187 563761796 330670313 162116813 283666318 602591913 389294572 572960693 241956701 807761138 281148339 228315205 822861154 317635232 602669028 436607175 504592565 698617760 762273430 837831441 371326825 813239556 405853501 916424273 37577993 554773262 859330435 971442201 822034603 820749208 890846258 620445806 431723307 320281943 389286567 972120215 347346872 594296115 711613511 792090389 370740358 135145112 163585631 99218310 820697517 506044601 362531013 808664424 966336160 783173250 714814345 396048250 774012149 254555157 93845890 8515067 540586890 785073859 697093818 729985392 174994688 66181395 459787330 108958518 196509745 393649558 148801374 242258228 187529463 743802847 448437338 694034835 687574217 998995734 774586387 127544351 672625646 778096884 821006375 150997501 420981195 800006932 737334742 660362667 495152374 818666006 304324295 843111354 346521956 357762708 987104269 661478763 760589572 405379385 658151556 542807123 681863482 795300123 17105389 250117897 559892596 935523137 572807753 330810888 313938837 497617714 978103373 957139795 216529439 19850439 783618724 559002502 205737968 722231713 451401012 108252615 228330358 981086412 700070475 670489458 745386660 891233115 943215288 182683108 12496470 387724155 901578885 246185999 236078548 112681807 401506761 699255950 40347924 530950675 943714130 382460117 551637489 530797899 52942457 756123959 206592176 632938405 683590035 696953048 698064416 167795988 339585471 689530 620688929 814891898 826606658 528086948 891488850 594109018 290636736 436704159 847644117 967039794 103847630 517976372 134748330 365158766 177651474 200291930 789879756 894962600 465835424 40574700 839732405 920369483 856227869 722540282 343161769 386866698 160124060 565911036 846135614 205756422 529245620 49570153 261632847 407568105 116941187 653856623 453315271 295020873 413938825 664669466 201904627 311635908 174665519 232349097 379557263 297214264 367820204 660570672 930762924 124811533 870304073 671632979 385937371 836013235 231387651 891150785 749470104 646267792 2871969 763550242 692003412 608971035 460146973 709776840 834076708 108762115 616725677 251101484 498501930 362237325 1771963 453334040 279379963 771887918 744796697 467842145 862831094 724140288 608337811 996698111 870458514 392444187 274070254 373261488 897786806 493748562 180748651 393840952 361495650 302426495 765287206 559009242 396773257 388083773 774971026 754242150 272052721 192727178 599330498 802406008 71871722 645778074 459204579 871576296 910636026 574617056 553045047 517758951 346175654 327307346 176675661 866229776 232917169 442624035 670237129 457234779 10694784 417273752 519978722 869204237 276509931 891944969 940363745 585833937 927842943 887269683 981286986 816045400 406041626 517268717 859789161 19165758 63785211 929877838 232870286 170300274 468663416 969323609 93284748 884238782 308714093 792084501 393170067 15668570 248578522 195520130 232830059 173854770 323276985 598241854 238756811 395921448 180480122 63391743 246769141 493547974 909047902 899559984 986268746 866917632 928497315 322491939 458730105 642653968 771085242 63089642 787490101 621026226 949209088 955388031 20692728 456458260 293801260 954700903 818498568 888642704 152972826 481219404 724294944 119416526 335877934 612814709 749076960 10252321 912583204 845042413 699518673 381232012 124188593 831620932 255165394 296194620 940619911 719714507 45178159 856709777 157926802 632621962 403716588 209271241 678115849 835512667 344729473 184972646 237542179 92600676 812069020 128886872 769063848 770634546 569672333 152426062 341548265 213469814 85560637 64074261 304982085 424849339 645560024 767707535 111869193 404415687 171200742 228673534 835087888 351422383 553707521 325127758 325955830 478512005 300998932 565891141 84323009 10992452 565347658 597590626 953087811 267461198 53880509 724047552 476100067 767730304 747247712 754486598 258121066 999302944 527201592 643106257 368256797 156134025 192415841 576503075 964229413 603210846 703203379 228711645 155073916 722780480 832617539 254589237 527215755 180410311 421119641 715555476 171674151 800709284 568375276 954746882 196582393 433188418 888680019 648045379 634994366 401749513 108430388 545479061 14722110 108846595 179589299 796416957 468472013 581086368 784066966 558563172 370117397 983430866 262599310 503732218 412218606 614258406 86652871 646138357 492859381 434055680 445745059 455716156 337284850 38912763 762177739 251112352 13296648 761065541 82239186 166471263 891280956 81702984 534334222 156666616 9014179 184450539 558293961 367299901 229320715 601033405 217488992 657008429 278492115 42895780 333380049 626391989 410688873 869236801 701879068 520226264 328213131 336584867 687645985 569239452 171758853 670470468 657336429 113617281 271044579 290846617 461550553 933953786 267960826 89058170 323319367 699116208 326065127 523641124 441419676 477252425 932388701 228051284 635429310 642345706 77010094 661395496 954940690 91357761 144386490 52424574 605988915 704867213 352529058 841000518 788553850 735220913 146644723 328574880 813619673 422048201 804522944 233512182 305996847 163036431 728774036 184644592 199939151 661714755 605200293 171258542 149050008 49591872 897952858 520097836 870545725 215788984 825229293 200400060 218080342 931637714 158898891 917341441 434838608 969939576 581417996 122026718 896867560 290502731 668594633 630004790 270643501 477813701 227028878 245311726 852027113 558500719 136196321 261036663 908263103 25170074 340714463 311081179 152089646 35486892 79620258 971304320 638014222 950623856 730157721 573449942 449146839 28822493 861619205 871865185 333703204 15274655 501862060 727212906 711068165 654932612 961339966 239533142 133341282 115847740 202822137 921986331 882323373 932864238 782249243 946796885 568841308 255239703 594802912 940466998 752238917 324599299 731053724 374341803 447703586 744132818 45609719 443639091 871088233 599337396 732964378 432746096 601280072 895948427 892006572 644931208 926583290 292521435 187037182 668201214 362984540 37983504 872508915 1304220 447693257 198105962 728461451 788626382 615224941 435251850 261986938 275053234 708374267 385677505 756921138 831565701 938910626 12510994 957249516 472992399 493349221 721494173 394275908 195009002 569061148 53656935 797967903 445441334 595574024 33428942 990795432 109719742 820207353 661240305 644173319 55668878 908101881 224736602 698913836 52754834 527729424 536888933 318372082 430258808 476633028 741650278 180060310 535319065 284890746 259465858 533021998 256443920 822484876 35082345 488805238 737437218 993796362 89417666 376221941 645622684 779353691 501378710 174982119 178120017 101102260 66037230 299621301 518636525 446620312 111742286 67131402 911162609 319996917 491022116 410993233 106687380 572757822 627186636 951803759 497895322 525847835 185516010 748491956 730106853 967491410 159173594 76951958 633650217 483942339 422961291 754589965 130369156 577490529 748781963 375126763 78782523 993697219 326235122 837517320 117163964 399385911 418831860 446920132 165860448 900303894 582195731 868890241 672939264 473137969 862832994 480455449 829890629 964712255 139725939 85736880 690558245 706759206 972062595 363252380 9870146 292723204 252359897 137581417 771213475 424030027 131124379 454693139 516324680 36837049 816968168 259651510 197455324 655323560 508282538 852802938 202778450 951466416 833786746 53043719 442053886 96141193 310268984 734651487 436119508 724041978 38211120 60576240 870321013 774312484 625346274 938656674 905518240 163364700 516944088 226586484 278924564 618260091 977973584 337619400 773820701 49588244 502530025 115057545 827726669 230510025 463695800 708517025 668475467 828270853 541217671 657052322 517384758 131553190 98770086 798250011 114011547 489284128 130181227 35158208 901470177 195230601 14548428 841707828 918783280 62798556 61666610 715630959 694427376 911932005 254062522 314589281 20514899 878612677 275531157 151159664 163879232 408805542 994582289 334279779 772608954 124102935 502340357 135632664 504901320 462965225 31660887 556125684 67297601 246818934 11262787 364740698 159660355 467244858 458778309 703598515 551804372 822420812 42860238 392379244 454069919 819070835 10496994 30639036 557859467 897453495 437053731 799052894 436443511 195199267 540235549 430486205 702147513 474312145 979629500 973077582 396729773 518515807 813391838 875948159 835990572 451899552 762002336 550861932 650513424 991901188 312843012 295615131 137504826 391446765 455161640 787563156 763583459 144533960 89718570 92026126 472015785 49896054 795229843 218392600 52644423 491707194 746749128 859032716 343163872 71176807 299497093 443237300 68001185 389977578 310940912 625298716 255653665 52951193 606186809 344071708 154420305 242148682 81297409 579561517 154612079 566756652 301746059 776041678 283056630 998889003 470144981 514905219 990843071 274795771 547217107 872342900 985429174 127227892 912350404 960349466 784852743 635162635 397782964 591354867 835934613 165302703 929001020 279350446 935784358 927280546 297568212 725162398 570709256 918499095 800167641 42942366 566807017 627859397 542914160 603799341 362670581 505186846 184273038 769503590 645005144 129410820 835149713 241307994 8953589 771290091 129543008 310388681 768591805 540663624 261744988 315252097 531418712 286969245 182321005 271940478 367887484 891656411 230803284 492259364 463814909 422197019 582052077 624014083 522331293 855639211 731561307 655673464 765396381 131286707 193154744 102445334 547606693 912179677 353920821 69211913 149780035 274231556 443549600 752328879 831638005 277458060 24301311 572986678 351835666 91237469 925674584 624529308 10878092 620519172 977973326 972725497 562836082 529684017 928618380 607518738 802210153 72205718 991916159 120886122 486558708 941026204 384308937 250940358 670497405 510618966 396734225 916657585 403779792 792533002 459243944 186900316 433870970 290387183 288678118 929461036 220741441 523472435 975677178 50475244 162469179 54633430 428165315 247857861 825158374 969564799 545692487 686577479 164590452 433464677 968169185 298818243 436726491 486421460 136877666 228491754 955998497 567654793 241811073 67773679 736944855 162487153 339070647 132405486 158350288 819646931 229346635 205408199 201955318 391490257 166418480 568137116 43801747 507478324 737800393 968806814 528043391 382484 582691331 736515743 133690313 847573565 374310975 82564823 604004120 438150581 649693691 81273037 953993060 499248296 612668022 606028136 895989792 470656566 724604054 859053030 996283047 544184854 716237150 80980656 490163295 477664188 677318453 435107697 666915903 238944245 345481939 920936967 892854709 574347641 554436950 566678077 969946647 420442271 16926625 157724181 57269706 417700661 750982348 205676825 820118864 679617875 393064802 992933541 479645560 919119456 320807644 9845579 959860115 652937300 370921862 969914466 709289008 271874652 471685516 362720526 287675874 899031817 73435188 431816604 571531190 670226486 523815906 80443797 676147367 835200722 303299449 63462407 771537383 313531746 300137368 713524433 37737223 913008033 316318923 164895112 728128323 280395247 465714902 495106421 764049842 843676256 865681116 620338748 371543701 11526657 645974934 688988833 900002608 771752667 24211923 427937545 588006211 452931788 934656160 141039806 741254575 767135601 936879930 978581648 893967840 746105013 485877374 568602635 118202610 963848215 336876602 839102213 699481003 641882520 368988191 483445096 616496496 723645001 368928215 875069975 358756926 724538500 835966256 998350229 463364784 894968542 397136107 696888804 153519727 917858761 636114350 581560858 496906003 182876612 703816260 517660639 128394909 588116765 340914502 786137767 316368987 392802581 964627199 857378893 333472166 377209827 417421592 980020787 5136509 674299501 182812140 225934802 96758749 289831187 305033236 877431099 701320473 792239328 761985846 209088086 289950178 691312384 62398422 382072234 414390219 569629482 233202204 720996786 661101854 742783728 44493624 706245212 457926941 227248380 455789157 138216389 611323727 625564051 519169478 999436284 544567111 946858601 938340150 886633975 680397775 582791624 907108400 883317533 568862720 97741764 132866363 540410960 432685607 437310115 77251396 868542427 666563756 486698815 874887193 709113198 14249253 961064341 177723119 52136982 471333798 723278534 950709097 996322681 946209854 149386688 801257411 748466762 200598710 975414656 275111320 711606398 201443257 714701513 537213847 955557907 577770445 776688538 876247010 210877114 616183955 540018914 19519286 409427128 303351374 739684826 264977965 887032405 284582379 377496950 661058601 232431332 617623068 496519373 589857703 357278376 678732704 48925384 492213351 243677357 941703525 893698395 148864802 29236722 207768420 743568664 348775709 764799480 114195871 896107626 353291223 295754753 821342770 322953594 281736086 12043071 532475947 608296277 77898178 915121302 311234894 124997751 898572630 287880352 479963623 521141857 373112275 864681885 95504130 633039615 607080805 815000969 880985700 104951526 466080710 900247335 594506007 653975388 491761169 486712231 461557110 346446243 118466596 572221284 505837599 581249576 788566472 849351750 843674022 990232616 488514146 785011749 571627450 824015468 98855337 665302648 114152229 650220370 830298510 617772601 683969858 40851699 751443970 110035367 884267724 715293425 620252162 895577941 188747220 739271754 899655510 552691419 792129723 466436840 364278916 172120113 650088798 531261135 172480154 14206735 797183396 57078131 525844588 43480407 903262922 323269041 640505011 228975678 782056309 984861263 459495736 625451542 157182000 353557059 864198478 454046064 479443910 384113501 754592969 346786016 214201564 646084557 518421208 902888499 622373660 953290998 834101884 436712034 40665649 587666791 951537519 407682047 435067808 284737743 248321086 999930469 558389723 991945392 176093403 869848067 619653218 131828624 663419354 332243721 322160602 782816742 812029954 760243302 128580605 25342961 649534655 786456064 562883945 416339488 928867713 875629416 904521799 509923165 143523188 528375795 859495567 138797257 568469341 834916422 695764819 673891991 664076466 901619128 399824182 328230650 30955500 471533558 124700280 804050580 431648843 370844435 728375150 144721156 819273363 400113748 281688921 310316889 368792111 788665618 440041861 11946482 5383794 603114172 134910024 721194429 679888656 40466282 512462523 740370535 132859909 568095227 249090595 645203669 855494259 742383181 817017128 872948992 951357759 307765957 461851565 623503415 585568725 286518486 961717552 716345411 29295061 263370274 687864988 76724927 712991534 244785696 670359625 376838443 305294247 92466846 299908829 683868753 597585783 138036987 139497330 377270200 393976476 944325138 591027171 62624001 750430963 377294643 368086895 81118667 267606807 160086507 562584996 816315832 782648312 601316530 691895930 868685224 263858968 352629485 225364326 789551758 354765674 632585701 874433789 204028535 607056894 590918690 183090700 71901852 180360382 654547743 170889852 745900020 197402238 114936339 791733161 234921112 504798724 851894697 335982061 399454791 139643948 526519778 511955941 6112515 820192666 220832618 963907608 732825981 998028524 732171546 190547622 537199514 662750329 854866553 833295334 552447228 192105820 612292099 812937074 789387371 173264593 796978324 828918275 426942584 11041949 706516369 422441643 696026448 25385386 844393501 214082781 105095293 103235024 556644497 529009564 127352036 408195553 600688970 908035715 235636338 352276189 169125978 612011546 696972836 52078057 848084662 18083547 494222089 194452314 95412657 689430581 428004051 229787519 929180402 795081931 608261173 435007409 856717928 906478316 312134284 307606571 468269126 615320918 352968676 647420225 783221108 189778542 509896254 981488126 453074322 149528961 287845557 708642129 867810015 505576832 891510592 497745694 130842732 205062662 675467178 115531781 525435710 676206372 769744113 465026562 823196319 260422900 432312152 238102704 311945437 622682952 489543674 169663639 155596754 728542967 720585246 739681227 719259618 421790311 108638385 379924583 224371317 939483566 648958926 642128968 618256105 378195400 939950364 128033900 955270552 366035730 480104661 35041697 326998468 199836884 41304425 581524078 102883497 59889822 177426630 50200556 31733884 636892661 447146394 541188938 230688616 847408712 631962638 552721739 819034435 169349851 688856778 712361693 134762419 813516926 224869857 778841823 321890200 328253330 320072896 988438300 968987756 553739208 967286471 653910707 419218997 726340623 244887424 996140011 287275519 547158154 239168613 694462344 368853976 534999114 864736772 91120557 431639877 731892823 970948719 802165790 859893982 225485335 857982326 905620833 624204151 359965892 971293205 530169749 971760206 163143356 83223110 853365272 879837708 214016931 439158482 392938566 299483698 523334797 777355236 52403128 508704600 854122726 833545136 679028967 214497108 353705412 154423124 536381054 289732083 265339985 885026429 98970231 877733370 88705716 337072536 375794209 425809811 976322057 584156052 959968754 399596008 940442562 173890078 736280825 380959553 926466779 817567019 263739369 604106001 572247157 667733027 896454250 89405282 137793227 158969270 821350970 957957214 866777607 301146451 621290945 622691877 939842968 542965097 791959510 21636775 5698503 535922021 174303020 489074335 84104615 757035431 188441931 586796413 933304214 356799746 457598911 48513795 112670247 226244159 765288939 345673187 530202123 922755036 566874696 92769835 401498760 917807478 301766429 985438938 600423102 113672313 406985297 585637452 223648401 766376883 769947125 885715748 306055582 898449446 929709964 103997136 250873565 912079644 263212348 509114820 316113642 800735656 410915065 361928578 861008676 32701458 830970729 778133594 902326683 533072813 29830711 500038357 119468281 538868016 490205243 459490418 340519294 128144343 293674061 824877817 595825749 115521744 324122351 63227633 367608035 795853969 613201782 709051388 314907596 445639002 442253144 502421847 945869684 850296692 206767860 727416688 369350015 735673618 774150654 800660048 34312926 805310170 745531070 21739206 851787315 425419627 851312315 346156066 717086950 984423830 477024792 353233736 805862787 771392765 796250407 119271206 252001233 491268874 147509657 211480761 474900839 774351851 852278771 700235807 633578961 405410569 293015020 167472862 387669948 672627634 204995131 225574452 536502880 502727435 161537839 953080091 216901282 380970156 136204152 519491734 155709790 824969309 261628273 625242431 177671028 392651740 60951900 334819918 948535225 921462600 195316824 656597707 291240463 913703666 603313990 870805338 338163583 635949983 599010371 211107898 362710548 282490339 687201063 983644030 346883383 860137295 914166435 84167624 965249992 186042495 590475772 9269933 317500749 136279752 523862803 765547723 835664784 884484714 833100095 774552393 510096676 126428190 644337685 637925639 465673578 128770952 516094500 477829311 259416900 894844702 716787793 356704419 819977383 22930169 710500101 477539446 42272120 604786735 581541141 790137495 792828256 871578028 639981877 243954899 564372497 972593118 291415725 811352753 508984783 591954797 232585414 136814217 385162781 207950752 728829606 212210901 253630400 375502399 822357719 324065913 993470425 544914787 225376713 459761423 155536489 792588420 667264160 291211930 221331744 81862059 385052853 302578026 434459804 418304767 681966570 869187672 4383338 572506466 332841992 282476706 69068820 477724543 441191723 482351063 747954019 160663879 192690252 151435452 558799750 519696314 281897768 712122265 26450359 173084474 495119851 238508027 468063247 848813028 794827885 701917042 177535999 936249311 222769206 322967472 143645292 850048506 478217720 577676074 672933795 135376526 828089690 427201680 206756624 9247725 696722293 594012570 643703299 548534337 104842541 551051851 756167395 68414150 414291730 808870096 293596073 470137486 411183018 354551764 326970163 713123912 873837843 129954531 454226219 945988673 932087937 216403656 598647026 21037043 173586753 686665536 889094785 221433451 850015868 116881953 16131472 554396403 22286906 727791777 863874782 37068086 406145751 369555668 527566948 14890683 977782123 29059437 417500859 51551074 264734518 727444245 663658657 58294274 565431830 522995435 70769648 378816481 170477748 565890666 51470985 555422765 92599343 570329725 756507818 476968359 77808102 611730670 18630917 467553571 755909668 590720480 51534768 225088153 951134285 220215400 814603944 334145819 993779137 74239877 511807637 788510529 357169206 495718625 276200250 137584663 714712768 388439463 561162889 958656076 31217708 15560985 831240275 682793420 592449112 282387213 40550402 160789141 445476299 879669395 803003867 15685272 985840133 217881854 215704489 787795669 235408465 741840243 131868904 474818958 458776817 610164121 737529643 605265263 833907006 531539941 920131893 295304109 227530799 306439125 232871105 137525006 411774144 68285031 999417314 645167751 150657705 811847172 970052903 47733636 602581717 209260952 405287085 282316476 969960151 542601539 900079459 85226215 859148564 207235386 984186645 287923630 595890634 79190166 623808352 677375846 572126979 367535710 736732141 789160168 892753853 562699061 365569590 108399741 841549700 254603299 421867668 964254535 408686868 267686502 294278480 65875003 238647493 772899963 542440211 970496740 73062832 203183703 372517876 547146176 322113374 231921472 368813343 100608086 244455259 30244550 671717672 550842793 17989945 794725284 164590258 712302803 371560408 336496431 812656445 148731013 995245539 195993706 999448075 748508953 111722043 345373164 189372997 927029682 901112929 251361704 549624243 915343827 662022403 4504802 217411389 97053018 573057783 882352040 260591607 698528309 563170419 13752796 986619661 56841650 874300410 760640576 480934881 106609618 577257095 799403395 725617336 88318117 83201862 484828022 258716029 240207041 40626609 507666880 3265280 448581082 155972094 193307860 644424643 75125935 524733134 191512220 841759728 874603528 568788024 467723264 527139877 348011478 832694289 504822645 282288700 295402232 996256996 706675677 210943328 993451025 230648622 598124536 674925530 652155446 293002332 146754540 11293185 939571629 882286965 97515111 550094572 372576660 329097787 913495821 260908179 114209492 53755408 174429488 660787415 156761482 963401668 433488713 141415120 794170328 479031837 986173190 399719235 435125801 939811747 12524395 485422721 997547278 342161631 154081538 76840251 947153267 963473382 82700878 850343214 882977197 832977786 504661277 425636372 502311152 346124344 151725046 388172833 897799795 562841617 34706329 215398448 889269853 321450112 50004679 227757125 991334378 563523918 928183385 607699515 731293194 331469305 321563049 404459687 628300623 237231816 259100234 698183783 302588565 639880212 659280972 566622982 939433023 821107500 453938431 526745117 699899910 197802297 76306441 742903870 249392565 978003712 99685835 42906577 905727530 23207471 923976659 292094767 790328606 454725130 983106574 913285874 513625441 104590868 501355181 68628574 892505571 682717170 976797707 229955446 96285342 44058026 521726847 949781585 346593690 367298971 510104080 735386451 98379698 532755600 895210512 839839808 771223394 349313593 72539207 322573390 577950507 850779535 539897604 326689598 297377955 276852469 986013035 462349382 274461349 652982945 681366396 230587609 977850523 137559016 314963005 975545293 775094644 809308407 56770610 877112289 131006531 969194521 400363903 634617820 669725381 971631113 89704007 284287077 126714456 219244629 145242277 160640953 805278557 966854176 406328555 193175813 809978845 433933378 485508617 530995759 415171029 986020048 574004959 837245996 728016436 819724055 693765945 49733216 758149921 781255313 709770507 844846045 864631433 897205689 828829931 564428101 446955085 947579803 290520440 434002988 627996013 896954597 530144922 85921031 985093727 549242042 275058997 698247597 874882899 969335460 135658115 135703523 185201240 237449183 14790532 543855171 408905292 597217697 587259642 957337978 484855073 838609413 407243578 402525285 515388864 485175473 685266031 167765227 795720120 300325139 361392548 927428905 372068339 198779633 11673437 664325758 169642149 514544667 325589787 586325446 44416209 142397132 610982902 214106560 675048682 90866676 194816319 918757829 965688015 794855429 751526818 127836051 939148460 758706095 306139793 719027055 903149559 922662141 674425072 992151460 440355347 990460830 283325017 304455301 935131205 239503621 643122603 494004979 502008661 660152360 507051084 422399971 728897427 727046809 253197407 378851995 398612900 850820615 908937601 659445441 983737205 686769706 979753575 392491780 638014741 247244822 628312718 887417903 286832366 730609944 175854554 484073708 24643292 76803688 816511371 311782367 732151266 564406400 908168168 169054729 675820822 178206562 123215326 904712550 341916486 294534658 515248978 658000671 556631517 209107370 346126643 744374788 457949437 800996173 450060607 56149594 846873206 721986020 751956780 550647072 259730401 379200569 946326900 681049357 53154036 507377324 481474081 380575184 476159235 93936393 702715385 305519697 797386459 76590524 582625385 744704432 349054962 134510763 180408353 239703643 440544544 269585990 263904012 544446335 899051841 439569764 833373890 10890085 934857561 564982795 742927042 289773792 348758631 250828809 705780465 982917473 664473172 68578182 116046307 994907922 4101576 53289660 153915616 797305819 495885313 841019424 64479863 404158867 219287127 104783334 272969145 898564542 596933975 984297681 336771648 623126507 867216126 345807294 723011860 510592079 630074990 967220551 827792718 270920225 595418573 106597591 885033930 264315477 68260876 236379141 173683019 17828015 639558728 239318670 197478551 564570095 801399614 180330583 480153458 911766262 560724715 423948808 439698488 264515345 272202585 284657158 867041295 763602818 765425635 816736259 333975579 637120044 963570388 189642003 403096745 457641576 456796493 865702957 486727845 259907490 773505486 319338713 546817551 778751419 282397837 207011123 315786283 622741162 410594407 306620586 324941246 618326884 688092332 527469568 543862763 611253684 929666811 376149524 706480574 98492940 668126065 819393414 721905402 118362464 403760610 400724375 270110500 483464855 848841947 590878398 526616112 492451397 465062150 344207694 806705195 808656868 21885487 262121363 333768839 310800924 407672566 875964658 674838069 604448615 55654082 841534736 287205100 261627264 682574685 545595291 404020720 150561457 74762761 21523905 721120574 997314837 14971650 43473961 234664212 965116841 777398164 625767264 217049668 509111035 495246495 358868552 604365040 253273346 953108776 994460325 104053085 161172792 79208549 300742139 577369273 657631209 267578117 275938326 336259394 822612019 40831050 849948605 74721202 524426932 589262477 514749969 22500353 526130557 329619079 927185846 370389367 35199253 894739711 215555066 835027035 582235627 883033553 163946585 832349273 647854694 125567619 543469295 389841605 914871469 8092536 327012802 594484125 763968856 49382357 585490334 333679894 828834733 747629107 226827924 934503365 889394275 977340982 964624484 294021331 363557285 934210483 386612624 542474199 320727002 866167430 148798866 459151193 709214410 67498612 920501154 691586576 655429723 823917774 46856627 916546795 342391054 801142791 801421223 299056048 250969397 286859391 974864189 746775498 63495437 632145258 287375852 20501845 681938718 884857685 148799733 629484388 736944367 404438827 752060548 482537395 264020944 936489296 15048681 350632462 409490305 12523311 770673132 260768799 122658091 502854214 851752286 919180883 305703846 760352940 961540163 765266560 898437134 490927281 889775602 237842045 377556367 419883338 342779121 980478388 398984077 456449776 333346347 540412447 509084695 612507511 594122656 216526084 392501971 698231019 312486773 964692448 780911785 886052174 222722795 284067044 876378519 40290247 598571275 276354681 668817641 474148755 454633032 37946522 321338287 919319309 39639703 10399629 476206378 418121399 788264417 868560135 165119087 274967274 19796942 185568843 12719258 859152511 585488225 716988589 11083883 335256763 602447333 320595108 217994715 423182607 849516757 815529964 168191391 795200134 15728359 85701926 831415479 154006073 832425927 925147131 807218876 283982883 929244507 859263283 955790182 845287255 389828116 828977394 784647875 337300459 639623677 699218163 692673846 666804467 37211815 535790859 574416227 361237561 745529455 809277034 247044776 226749096 583479262 435307171 7921342 40444460 243651301 584275363 431773335 874892329 140362448 515210961 806493395 105329093 292103808 375466841 186496238 219824639 849716755 555974031 292367054 725813004 490225946 42360484 523182441 19403692 245071762 828873155 129293666 708196448 532277587 997342642 558903038 356782696 38432241 744117435 851905083 284683048 81468681 40177221 12316610 82083601 479720903 319846282 868352687 755601462 933627004 635998791 950456583 769570243 613209950 383271455 554459021 899276523 978132578 153509840 777311729 403865847 871043545 9809926 745515014 135250896 895818779 527290595 229976706 958462839 462226262 504893957 608549062 582521023 440784735 199088241 833213973 779173154 806395083 736831897 40542186 754712686 420247334 781357333 493259986 198046803 645940360 988149956 416305843 132742163 342093281 12535505 868711103 246224279 263448078 395403482 671622250 498466354 357873994 437524837 990027622 181641561 920893754 752564560 597138709 903893270 447165784 835126190 583089994 815939606 42520666 510451494 40680338 860171290 124748612 226129995 834084658 430345126 611091391 884609781 939513362 300873192 622223192 106464980 963436574 146590544 521236466 485190291 690434567 409398179 576971253 485024986 774782415 421500673 493479470 482364175 10773938 613388748 116241102 503388157 835396198 104781490 994112874 613581825 123615562 768388027 29452303 838483645 963310888 770248768 937553328 177383661 413098082 835587495 472646099 350064143 899046267 997823375 91374661 826479988 180078037 107420234 886249346 973838609 438958232 832970563 169424243 601691948 966321607 983801003 61249523 730985649 659341440 505992481 333228522 394423067 732979522 450327735 232641608 711168118 824518323 485202110 718985324 427817893 850986261 793467081 146741583 206183251 977185321 402604545 909901686 649560835 593391593 190044322 544822846 952657116 340374512 808529894 550139614 125873560 187541900 589322920 496116415 977699921 543494254 38993145 586378398 148919792 502866162 605472159 400779498 126820554 303022021 501431452 774327246 413014727 330309556 937299042 788467690 709151111 238489065 355756451 146190911 607856002 940158132 924819975 459301005 276103614 285416482 17624328 290038274 429284455 280867015 226138652 681811778 64990695 484569969 10581092 498888966 905281655 101482565 415269584 891602415 193426437 262768636 653186308 241307318 424841792 299036865 427345378 21073598 344767192 460206276 279704920 408327463 151437121 794337449 425433947 903815496 671063306 272277440 703348630 774645863 449964332 901858058 68462084 976945961 366878574 872200608 674472129 538908247 402937026 298716827 408655211 139181545 138363908 303159330 694810982 100988956 461344828 10466866 113521652 768515968 819309485 617210165 733355520 999278029 501177975 939401267 58807882 321840021 665993078 397831125 249452346 373528126 974428155 397837900 575920450 349376178 562910184 21970549 757881566 435463057 444911082 690300491 848546719 334365100 24055471 716875708 654263583 738369017 953149041 339923949 818241585 297299990 70602987 592212196 265390409 126915545 327466944 75310781 900954267 940613568 921936857 883258719 595096470 922786619 229695978 546772878 466506879 789219114 892572020 716254599 158034054 91356232 192012042 751174596 800271231 512853851 451393730 173265757 163633737 449916825 596549997 252382620 113376266 691802503 825626207 945022627 816856740 387763795 625468471 376724073 707019160 592912313 803893438 463432356 766280072 710281616 988689011 3651526 503753372 80252686 31835428 158292600 334497093 481970770 17847521 781682114 898453532 734945884 371571544 483942296 279789066 372436024 348850374 657351233 203423407 417690737 301833040 647874065 56943732 235866054 799200972 399038835 48814085 929231297 343203789 671639321 81642815 679790770 687785274 973910411 269477136 981711847 816048584 762350429 964589352 679816502 264473861 121142842 632962546 17052110 105635282 849890015 264854912 282660626 402288607 24841239 552230722 394464494 456182561 687499996 739081755 151237268 903902988 63881956 272221758 503024101 591014806 891998145 150764977 15467951 470382868 934376942 998935796 482057918 491407041 87090757 543786821 471564035 996221440 600670564 847663657 509501915 92495548 453693550 593725232 775630454 368190500 948607908 926895250 362546084 424032791 418378039 114969883 497585513 51911850 355843186 607761371 824557945 563718334 861533625 351784335 863690159 561990749 60918561 920814163 793713671 921025151 817017441 897489996 47195992 646189345 480533074 516349133 712073563 843051343 655899612 578103299 957177773 571873185 438373607 108189368 312844923 313280902 111520917 312921511 935138914 17363431 474146898 151677257 925189446 790804514 411624908 159496225 430067506 58701829 504576860 448301683 26081657 947432904 832750701 918913627 404947037 888104886 836252815 716427981 770231765 218362053 84904267 837081702 883848537 910432274 747992356 701729836 60623970 458164131 917707225 273321675 337760100 286223706 154199842 585801878 380227494 360680504 180763535 658163642 377052216 799216551 41147600 111883798 70266089 958568966 540562697 799446220 378153556 857007637 704636595 232018218 596693650 658633081 764428204 820815173 702727690 750697137 666400816 870535227 26353381 445751348 777697880 5852650 754903624 166178242 536097395 561719062 46538147 866948129 390329330 977576988 785177841 20312904 982557951 920819045 406827960 362351289 796769316 703403052 861408663 804657236 588374214 711543821 53236176 196893054 328314557 607681600 270502278 279242300 621723798 356955000 167631636 261911374 452149821 589344552 830519045 631110840 863207517 604839080 835423883 917256678 133191283 332118613 28428203 665606642 922999275 755746694 897092528 836305101 377242400 106222419 989576040 712823421 64200797 978037241 548871773 334273754 380478634 473865626 290791054 965668478 83323729 2057987 388550191 95973091 819441079 555595404 932124650 427167770 895699847 555456297 247842650 664796665 399797572 615488922 873253664 39183175 447696726 900930988 169670784 214356123 29195377 268224780 351660399 994169917 418769701 163387760 772134166 471774963 839761707 569402798 924143241 543303808 344167251 535089841 813134461 708048868 982846617 609365608 357769902 858110247 88788147 967721070 972630413 611439680 232653960 824264986 429328410 218873468 481592878 423563479 724258055 800535650 863156016 880181418 575074743 915827989 640808572 945356155 725668791 957926648 683625588 973528258 772940711 433968834 59497323 982295198 935969995 907716831 61551314 597763147 778924265 925640902 623758477 842329666 319701672 700913827 680171851 197007078 391960824 287960963 978663157 862175229 318798068 387779521 121495060 586834533 465257754 737253906 211628954 982600902 56141466 876454737 536853556 70427720 650228801 592820524 33513521 805246615 957004912 336201058 195841663 64180865 119298391 952147896 81391825 529715313 375390888 448622505 738656296 93020711 521618766 453276280 480662283 597890709 101934539 614968788 501578558 311302185 223442129 718782250 120350574 274595115 614681935 670327713 487630408 154873818 16054309 506575791 922128782 382123507 583968673 31084715 504777173 951570735 268997152 894063171 825633337 146170700 861639173 911856896 17838708 528460697 559891957 615842806 451364360 17570794 990050408 598522343 124930642 852525648 719620406 194422979 198539368 558970781 755909406 825093879 12021833 332616276 36011247 915310752 459446567 791113635 902986086 564154158 297244339 974237700 988417158 58287592 108610087 151647040 516146539 518004595 111059427 16524261 63098105 421251691 872420651 543378172 283962334 916983473 493052145 735887093 896380455 846400513 398406999 586070414 88965946 552740912 527459793 137575784 594420535 242894670 616795293 310712816 105516770 521355979 883207296 754611051 17738407 690469460 26145106 119661849 487485955 484425461 686712558 924258738 995427430 222214340 691584444 234567596 259197857 674053773 894774279 228436119 550405995 449451769 395341077 736985250 437752118 625250435 689026712 485222049 4325911 730191253 585291623 504308854 562424829 914176493 442918346 785609598 353958219 978187741 276201157 754472254 579825973 580882477 514389663 50964932 295571656 81625148 599008028 606826013 923843161 800853092 457724434 221089939 557013039 510112510 579776407 712980445 425407064 571239162 588067162 481400119 915312578 238743027 796082268 836198531 770158576 241280347 55253185 412996528 851678558 444891665 786493868 58383609 861762912 427912369 640551481 511395074 568538780 645627012 734707696 420012332 277302172 642367303 5538476 626732956 928383601 393806699 473385829 776030140 811891314 457263728 404882528 96186487 192580554 124539893 370632545 859792426 264566638 140875469 583150897 751599781 323515709 388401874 832380068 246301546 353584881 999805789 41225865 765675329 651029131 142093853 650805358 454515258 619676123 837760584 944254876 946777936 202965265 759939425 115515823 293211965 535699417 906976810 459757547 131786403 708797395 180940062 122117029 173312041 835895444 617257163 292860062 574213372 652445263 157432206 218800128 610715673 359182046 68974258 736560493 306648822 410672513 546998121 720596322 359959404 599071776 778014392 394051418 293293813 308547110 993035152 719405853 92120252 960474355 231118384 646777869 5905564 52113586 497270898 173987492 603580629 96734743 853615208 639057519 796427972 260896192 593391882 957064670 113961646 287744883 356275666 353926906 242280869 925644424 529588423 673181884 803569288 838893026 326700233 607208252 680813714 165422594 440223194 288812082 752488081 958528684 121815491 115011335 343785553 86790275 394484677 769606232 515821015 946315968 788353951 82192524 659721334 159775620 428903668 679154564 108999142 842505066 539383521 823435061 899743912 238665379 989655557 622732964 436918984 896023511 324596640 345473898 144451389 117606368 904547511 982131091 230250706 200298472 677815284 303442112 906710470 473201361 33689307 810621115 256745990 44654908 981460259 571723858 905177189 785322672 681308664 231856188 48913521 402497515 216212666 421663870 720888678 518483609 519342856 315404119 994995647 854562164 736366358 160078702 826486115 787152711 296892106 485189304 825338320 907011215 764034164 148546232 806029032 210428582 55004056 509598607 61368830 823855227 461869117 325940747 458416321 429589956 315637338 641659078 896504511 77824847 16594382 718257105 629343279 681797672 522746739 3796107 502722903 591399476 541533198 878710128 853850500 267817471 653219563 757994306 842216105 326148702 954876357 97289347 684184616 424690556 753404264 856939273 834736415 24583370 705271949 10912988 546438455 228415293 126412623 388407320 498738553 834209332 776059475 966007394 113351156 119571931 203341772 136663104 841974812 434064013 336552618 194215493 129891589 542428005 355865958 427938921 767389967 336005361 570809978 836577614 480037198 547344066 200554974 789985930 515035581 102487831 33930331 117361594 954422831 283346519 283664399 144676945 902698830 451499699 527266801 12890581 257269344 582266806 254075889 508648915 749210286 997533313 830084156 213743391 336978715 489595071 824114070 48462639 171864627 591851505 955802789 457924299 459350718 854231174 733037555 780969128 879323384 959675587 699875329 205887930 685307193 611981388 376194329 717505913 74281162 639107605 225418911 480763596 897629430 348667781 936906476 4774271 610185408 149336292 785199131 456666350 188961588 530634272 430140563 998662481 616280055 228651340 748654026 168251823 316230491 860608034 172989609 854975491 416415218 86734362 315258152 595666232 976745068 855809346 311454018 299951676 218866610 411359551 26050580 498592992 788710408 412285912 395479444 965155193 956848267 168461763 556493129 724887056 812975225 924321562 394716409 217231003 2626055 310844260 803024387 836085798 231301428 571356139 792167069 260598729 90139131 827432368 522975004 413685651 529722663 292266579 176368685 252574255 980646543 796042249 827564939 698239250 4673418 186162137 466075611 929956966 958568213 387079724 153679976 815699601 440474983 301141810 696065576 203067534 773816671 441871004 826695492 947544404 665738189 191111305 974620950 321500320 812287047 577726168 712248292 580068161 773362344 454215196 237716893 230581324 70146530 469255525 760358266 977787444 773489007 209537402 774467614 438036520 48145427 295855135 236817334 582867801 890366464 496954811 706243186 289489127 152105176 169549452 808558157 964230357 910422876 370674830 196064816 995648871 898424131 111925155 747509281 375750109 308249802 536932502 33329111 374407685 198400683 449526478 323287545 897787769 915273534 672702059 679306396 777981091 927039474 886548448 490743288 830815331 932571648 150194067 443970365 717082813 501093759 95520414 459317322 56666179 3842377 378622031 537069862 449734075 322321653 948161842 137137317 499956554 13104117 34128183 547558013 890676992 935945794 223470588 214864240 836335968 295411035 829750367 155903627 580600355 846681586 240594573 78220520 616231850 89516825 659533936 324612737 525756098 69658476 119716373 976748755 86006774 828267188 445974898 697581894 249939329 145991119 425690699 908638494 694479049 186849843 354262159 74297875 694616560 834723868 235823607 663544092 257303593 584858890 378599367 310045197 126465213 771248737 723595734 781224105 616463723 333849185 334585863 501904819 123959627 880578735 717475044 740070764 893946669 229902799 255840581 246896822 526693980 520586728 129425059 672861986 51994181 727445466 154284025 699521137 601939161 149896977 75094893 235446176 918196142 891247279 188215586 119321797 193758049 567289286 788659389 276967369 994956067 799442002 62715765 498020079 560119559 616746015 666868278 726621963 862470199 579763706 55894605 15842262 500167561 783940443 992542763 978287088 322400522 346530917 626479743 564049452 383920656 350600988 357895548 752899673 848321990 850213855 846771693 30073393 227355920 525165466 459567597 750595796 665718175 180882246 250872980 245664008 193457258 103812672 318477844 836630897 116133022 816107928 533077174 425019028 158963154 917505747 562468465 713161427 527690624 182858988 361253636 526723572 368420861 220791535 14791042 359614881 516101098 971226817 90158530 584934607 863007245 503671246 741468635 214501677 287854874 589985577 65457209 665982301 768926766 573707546 948993460 790575800 885271045 372886756 128704292 139418237 943590238 405889239 302314551 52608668 875883873 596913260 206513509 657683795 271423688 326315302 945163620 254822565 720485252 762648310 265192319 17110092 749719075 883299902 962581964 617365342 758892308 268553860 503604659 69718503 731420214 184495629 424071110 263803355 740335192 986756825 44778104 598482509 412258230 781191237 513547416 198167838 839163385 174184387 700473890 674720754 562710331 430913488 64811489 654327273 925264560 463941503 128418010 913316531 863676906 59055332 216778618 872288554 939357686 583944086 146008629 710910924 632467476 202194309 480885951 253720320 938911461 752085722 165325952 971380086 383553552 308114107 779877850 994406391 526625959 983603059 557902914 418085246 400144289 94687892 861845328 306823509 620513317 296707974 327726520 149847724 402109565 163852253 611701408 367849614 281960074 681970762 898591087 301583191 358384645 532901999 554005789 505223556 676986876 695478799 777813348 564316101 189081592 746382412 279415862 23382844 489738922 487801339 812538528 910183727 517502760 286834130 886055759 304488472 975866188 542312176 756822052 955309664 756969814 186322717 307967007 89850577 38263572 183194273 894542538 110163008 785494649 392659063 253609990 514772613 150255459 199825862 681646595 698479481 623781923 320015280 104678335 530418406 137094456 500132851 610179832 975432680 719174505 372753276 963872921 540785472 336834468 278013344 731820490 201221051 372144326 793553914 102386036 115207494 283017254 853280675 651295141 543905777 707229306 262082276 751980466 835214535 443559096 522271219 677133632 296264729 867212549 794169102 306579778 974664760 211620769 797516527 388790504 340978006 81014263 382671445 802475545 100672874 655956389 938838657 741881128 317169127 245062097 521343819 201970338 514275769 16980908 702910552 40293295 560209339 736807427 612893388 165600576 104672667 912067768 274472576 614718308 597180260 94043783 395995911 207459944 214917751 860980037 733336201 538472201 406999730 63860516 991285961 865312661 734650665 888303854 155226152 275129457 748084940 568303564 206864751 437041981 753968984 363011964 278380796 984120438 833082270 353797998 662763296 812011560 732947739 833824836 892075788 555326006 347558811 419170469 959869035 825084696 474793742 634391624 85008769 293418530 661554866 895488221 981286791 569378639 612411049 390369366 954317334 671207107 176004731 249283114 318894892 326206608 444821564 93125993 181174894 644471983 54186492 3958888 632649803 543196831 743162841 812635351 615875871 645810203 866612364 324905674 486248062 603407578 205886435 99595914 694712010 251521591 93053763 86488983 255157443 545253720 522855630 685002265 297290794 235614095 48287017 273033464 415038308 162124817 707006197 567233831 650244374 55455279 806641272 754424615 136550047 269213754 790877749 546709686 518011433 549176978 623508145 809821950 481635283 176959675 895108907 912319277 451461917 90699912 938028040 304314694 656904958 573773538 26540472 838950801 750738405 802413458 859584617 324555140 61734941 153715011 750387198 645575953 905662945 312308853 201486807 107435632 585166099 580046251 230350068 211806295 918857729 244955109 200232746 212149786 927269018 42557826 985243342 741441284 963509301 39147941 764146260 293052972 231457700 530436578 344819243 87788701 587707327 374503579 847072766 67262745 76531819 459126767 726818012 184301369 191142663 503301181 302889366 345759144 601346183 450412274 179161439 315021874 163880563 550126612 910276174 791517829 556220550 209502785 253900988 466420634 555640235 759918264 696809710 920151406 902048360 177696555 383579341 780352190 651437635 481731052 892039147 791067078 367533311 749717875 784752702 743639061 285382246 318402302 882648311 609226778 736618410 33970914 433503396 299801475 762994430 662857095 243282092 813610731 427540040 912371039 480830217 419774992 634808729 694901264 535732538 864349105 514681584 564775150 575557764 568882222 936911285 377539568 375020560 693044872 186963 611647027 387586658 202629703 925768850 117471943 414471499 434225820 271997472 336787900 57757094 92976457 787955152 849150744 401574408 749227608 57219146 160956361 760767400 929854702 199955647 115855329 402668511 198668810 160336407 760272067 643702258 994028795 611069556 594908057 109594363 3185489 365117949 686768572 998837222 798077584 397919832 939386757 545402079 769969735 301055843 426566026 767957171 203673191 268295127 402800121 239894228 58109521 333377578 438686185 940497396 717082761 890641490 594311057 634012982 769657451 763290353 413657712 107031867 205369804 527195287 558716137 127005511 308086134 271641421 82908116 586959287 920745296 421555838 796351031 705737485 211923041 593746681 904340587 506241450 757739503 872897621 914332349 771914734 151418905 148482586 427835557 768836840 433309804 260720548 425335917 914211993 97632727 668777764 730388514 123513571 197456399 398051261 391713144 745667530 921791565 620796542 749802474 574926125 171726712 669301561 511662318 416381644 250817357 405391933 645860901 394152969 465604061 220928425 733428583 434157622 448666349 251656308 729781462 223091791 302098728 350617576 233146596 160935982 284898708 753850048 929104961 184746778 212986972 179989077 993252825 182549328 6069013 285305725 241373102 617964364 662134043 373540181 59817479 460334941 624323566 683264578 235744803 7137750 764841150 775347643 314291545 689917880 352049239 750448662 247266361 138460022 738372618 974741807 604735934 541530182 483933991 332810291 594715829 339521450 861812344 498858513 871678532 805225207 19028855 87030016 766879708 994622646 445466914 736213952 357957336 984396846 372129544 754227013 279371176 969308312 267884149 751095474 582710361 646771580 876072558 812855526 393216365 32169467 475506123 185174500 566716735 658502090 579861176 780413348 408691770 201521470 196842555 592083672 34410048 333360429 243521937 228935669 299654602 662204018 570120161 50634743 392598832 893371498 9155228 261133814 772663348 513310502 224375248 900075630 801357729 85679046 422141357 38264590 483669682 59110981 756235462 259507835 917758462 640699782 980052593 289912997 240425284 213597042 849119589 371648377 638054765 55979256 55582625 729342137 136418715 228164103 624232121 517826018 562232097 342374024 299226335 140444855 765574452 664851355 488578856 781034918 845708483 994281833 801634757 598518640 549469693 913278649 882196543 191377206 553167750 737487177 937277454 819068497 155315739 432424486 443793587 735223418 185970522 263478477 915048066 346234823 63838033 761329245 244581373 223822491 468946995 367003267 508938044 570970235 39984056 988976051 524134345 422839220 52196034 849811222 382904103 790692426 987112784 701135888 771525514 29351745 906116141 245486301 587658534 80924788 619106950 961693758 207443164 998786010 588765918 798096685 66641818 223678538 623842250 737627936 424584306 398797002 626033108 127351275 463184166 675664184 469375492 655804705 358315862 311140931 952097421 735308052 448613017 365106679 299087217 830919745 60578340 677833629 894609938 241037060 263097421 833491663 357039006 181242662 294115768 435240871 992628916 103067642 410891820 359865828 881774063 202684966 139276891 974011222 994626874 279329927 852648197 471205226 783354813 609011795 723579873 640596692 531860173 403471059 374781235 303077806 21165715 638278915 332237222 532919334 27254227 602938711 351029063 177475311 353498763 445538310 838225818 333915538 532919354 615074613 165093923 329585684 507361056 117913515 387545306 256052655 91811192 712443970 491178086 785183515 999725785 261261017 197715839 562663520 459302161 646943289 961667678 572436214 367673133 712863541 229285652 551665055 438421990 188092856 964879285 170244985 333887107 365522398 915902716 505406162 450341741 503706286 689979764 63720399 289509870 130821190 140248875 901448463 374683705 747624473 844479645 113623907 737001630 739922902 390079769 328195629 784567853 961532276 11527450 746078748 916429199 989344499 698190376 584744834 449439239 99161793 919293836 918009956 938386234 800844961 661342440 539031980 820356164 220017057 629862553 893965485 309326656 873449313 626938113 708648532 524279424 187337128 868445622 325633667 890230539 34554818 751239466 978161359 55143646 248431373 443425058 65977390 124760614 285373758 853745245 296040585 400955889 566127934 550737687 919888963 6777917 442123465 851404435 823737902 860964794 609399147 937851261 864880054 359362720 226294796 191457262 298986595 467150510 598001144 90751749 186285409 193215362 642774822 836093619 150699175 69021661 134445963 934200216 181304049 904904830 366587527 968185272 96043778 904395838 204314920 897729800 770274999 519336748 303000333 882235440 967994289 128392845 527616261 896676712 593416848 800901187 943447938 381474870 817702261 873062411 478126224 166051013 909693849 96635190 564530926 583070539 26497002 165080694 711040377 839628100 32339233 989483917 988785087 309145676 148684328 11426600 384023230 614032306 888054042 108882260 829180869 691843330 841155951 520347902 179574687 743099646 206911645 684958164 879918113 431074259 886664795 530208760 92474302 945678940 277850777 213324710 522095078 755184432 797986675 620156152 828295833 631106928 800310555 112183989 937871202 337513314 659923354 767248012 769719011 436034850 245946092 259348050 420009477 942909619 234950865 313125766 854906950 844039517 190434069 970498957 26021759 257627112 422418890 465499113 832612399 830507163 883606272 306148373 254397442 500276284 304855027 106044516 509995591 724165814 790195252 481209159 858932124 119557831 454973278 915637883 916526719 865445792 621371613 14780192 795116700 165241919 516242236 356101229 709363986 504942071 71539274 618828033 140399242 387176013 857844102 649459125 704936636 252175021 966936745 596214617 410959139 815182525 809127103 51016977 843819944 640388654 773330895 431204897 956114503 597076166 218428828 885733573 672392512 130818870 650389342 124865486 788009612 300896222 411383692 204584637 946729989 889175913 16341311 929330258 746297420 752490794 808774338 652322316 531105334 28569935 116515348 502827699 481937524 573314884 95354457 770967986 902229429 392644168 204210386 783743156 147919425 327960780 270291834 442566723 790823746 187857704 736309571 611745602 529052464 412265104 216342788 881915566 812027808 532896178 396782605 113914649 735220 964474546 19367784 435849811 291176096 273977605 991228996 947063576 817727382 696727529 578583583 54545221 177168405 639473328 393903088 409409404 632150062 236305166 500349690 661655796 412657881 561763412 964836309 139139674 249778887 458903061 915177018 747645721 61492792 35517878 480866199 935386217 11785975 286019842 859261982 588714472 253776636 471530813 182591607 540648203 412190557 518424226 269615887 856268945 315313572 437183364 971183754 745294133 900724139 383705264 153020786 109381260 328503297 388316926 76437553 87892440 491499731 208253454 674228120 168246436 640449307 961483880 68822051 463144525 643558747 319578388 151498689 371153829 533710486 845063957 388041291 143282397 751220464 951801496 588438149 834771780 365967478 365468522 768443213 243665311 698233018 378081961 46200743 677515214 669096749 72569085 90737367 195037356 112471570 943855735 799762230 619648513 557562734 674251097 38117024 495348310 390665715 665894030 539707436 838110395 501682721 346054819 287706869 336704821 900991516 170657196 490924376 991200267 355016890 679556354 833155522 257764771 462682001 20725767 519874580 979356204 726837411 266545049 858752712 589991975 506701738 557171057 113284592 720187350 175178845 34995008 500667529 814196561 487906909 567485174 836807622 983830656 323426345 206654253 569609918 595430063 689527523 69187346 630436232 832707860 812036702 76503843 647389816 320644840 229524410 959063297 521746459 463165845 320819451 420022429 451843192 258004690 319906656 322648900 282352509 94963036 196418310 658882569 874567909 451192185 108850257 795997450 294134128 943035474 919286143 950082812 904646643 344276043 211266385 41348037 365931124 44632989 972892579 128944612 372477819 375415322 281576767 926013448 870567256 239694425 537421421 736012397 604004733 560696427 729226777 320958308 698016847 411695062 159270869 955290589 297249761 678494577 833885488 973717067 424286611 427681450 786196325 227948413 974370713 908372383 534663092 451694184 545050136 846485563 217406656 334422686 42497628 854331735 857249516 843018920 506922832 188061087 719733250 216221895 401872469 10837699 877217922 45960139 118300047 122903074 332422253 770342659 7165391 988149595 524522960 858731311 957515824 747579163 52917243 545227369 944265323 87376723 549389630 385278033 385119968 572744218 591000314 376939877 197764054 23735684 931833146 361963025 825133388 804816441 434933703 15911721 703077957 703019694 69857424 490930844 443105516 499897498 280721536 595093291 638968479 379439121 203699813 134831932 624093402 808008130 164054831 201213537 718946868 159766302 918136069 318030148 278370963 286737670 379992532 485473633 327661445 337689289 358857568 676961464 247712983 822308519 307521347 576330200 722163655 980337011 128619837 76072796 269656111 578245181 441851059 41190443 502561554 95328641 761215107 202895691 9803193 564077216 424553835 727127367 534488406 835340078 447597474 443343691 71734926 958105851 635715563 375601202 762337869 194507765 687138358 639876392 549094922 775363016 351694476 431691832 713243745 336361059 38005420 430048368 479524505 526784256 98738939 865764759 784974714 434078302 425053453 902089436 825448792 649308523 49779819 381729717 400605802 42572133 789693666 637659162 267632041 972968223 498542608 146972245 633649928 323131354 247380059 740718256 473203016 162888613 742893214 340204485 364197185 347624009 13415701 907296986 691353973 308871091 577183613 946318458 770895576 814459362 537634033 414793544 674588387 49927311 673821140 316788418 395824321 372165399 627885582 169219159 120664142 180583325 97094252 109236358 774768955 840154974 101135126 93766248 137905675 159930570 785615656 60602697 415114739 51930651 347573482 311809832 794821716 440501723 678849982 568354735 866088555 856362928 720100611 20656504 225712435 621157375 32834963 975861561 96903193 943160759 622393701 854528325 765096500 473982660 423492751 673267483 90042359 863327510 142902405 832239294 551247749 646442733 822323400 20578049 111717466 221275385 249086278 438424095 463199588 68533888 716312684 884260674 384345876 334562616 616035203 754023654 780807267 536032053 988235054 481069380 41773982 755473672 199680733 423136461 740993573 315119292 891707808 343251686 262243391 273923435 185220085 39518885 231331047 123458591 792436460 427630134 733020384 433706863 958627258 188680388 751165859 70867118 104064581 121410387 463507237 315596111 275360190 788031236 17744309 183222612 28339367 592543966 354061416 946534022 573352244 366425547 868839765 355771447 297766472 176621870 788173831 194512366 926157440 197369411 88993812 12296107 237229927 802349910 998352052 192269485 257193729 433437773 150144728 509724813 546473273 260581659 442424698 153444709 132182402 173523749 672616705 825824923 731903270 909667603 924180749 144340746 583917535 750037476 762657886 238293198 681642895 897837309 648223509 275974593 540746780 37433414 119358079 766589119 193085111 164556310 457039993 928192268 318844543 997350244 510455906 79123305 222168376 952920879 27653075 854866441 816474666 780848178 926177164 497545260 474170241 521560986 516396959 127377019 51681425 159493396 241570639 689564739 972847502 863260283 678985708 33157145 686001163 722118145 32040771 403871557 331784126 603846895 76778316 281125409 165120597 798602715 782384220 95516929 706324997 253071002 537151419 316003639 664789294 288158310 877977247 634225370 492724922 454423062 52990143 201348447 795485340 194151434 713782240 473408306 119665457 504567690 648848896 547234025 43690925 504814988 411984339 966827509 477272250 189916181 415963459 635457008 814627597 966168521 725640254 44738337 228505125 239105284 291117994 560894809 421265014 952715840 473601781 608950288 323528917 887002751 830576122 381369605 317967705 216764337 273625270 308040925 832584825 403096825 85843578 485389061 460376188 726289928 70376743 29830744 338831243 907996062 281028400 879207599 998650738 381112672 430326314 697898253 726202709 685712517 645538434 590074334 137432523 292260175 932069863 152873421 78286346 495447487 51987049 757662979 256089544 772978219 599545695 109491570 965789400 672851827 814445332 317976220 6526152 94608836 452438525 342547185 858317736 524229596 907570103 952887295 963476315 896040072 874113746 474329824 36925830 581461505 159569850 557173209 445628857 513454726 463429761 934953060 650130021 950329311 398632971 903255107 873229885 868607731 382130424 694154311 571468372 282624736 595566378 659903549 74234350 998305517 912460994 696114895 334969460 974520307 207154480 74741273 46803981 654252788 340403347 204520076 688344543 183175302 962808566 121034642 336742180 989751746 74389195 529311681 775005136 138609517 814043378 768439056 714549973 756040041 654754526 525078540 725393143 844215388 666496080 123617750 914214331 593383846 420266856 137964744 850185124 107953692 912696387 41446355 86724722 689759876 29732858 152434571 138586721 341055281 187856335 163024478 605989058 827480129 547082231 49775940 237933597 294563633 299571590 531507826 781862391 83172752 467412069 818405065 435712287 619237474 639252633 307932325 896304223 631822356 810218091 709616325 42072880 965672510 107689973 909783887 150428888 178504349 861047600 697475961 850228722 81090536 505439537 73545193 774663281 258902303 219603874 138868233 271436624 254615612 16061376 137502046 934897205 53351469 313086900 204923113 617763719 910569571 714959181 165748494 459740851 112002124 979359694 493254269 35717101 95163697 246600915 173895513 32054454 960148158 870351532 731207911 436778372 71859415 137327106 578523317 77964563 516874585 559845100 652805270 99429099 596697469 550567204 370915849 506722384 804742974 672241942 629255333 715066034 728211404 467546614 253385614 369789826 555849357 334609244 840723888 516513979 299863744 501396507 843648673 86536440 765270188 924458388 163756869 472593875 63931989 482162552 810854972 677587376 172318241 298475659 523246530 368793060 543295329 306154672 241439864 921562000 920122126 335753926 211176150 7664890 204704715 690297184 915761468 662075556 184489101 431534082 331058319 382067310 6937713 408879519 183606023 160712392 562745819 642469808 540127307 292706121 6134690 595681531 191896999 159436775 280497546 754967656 894668383 663525319 178498452 100956130 274747125 520433530 652431621 253935768 708573177 6435787 870483349 91925990 461173285 991196608 567478865 899277245 695954879 947359935 328421469 179743141 434357003 329722245 651128884 426631638 8423047 478850223 660027217 172406348 875286002 443841696 912510322 905619072 297599226 864441303 13758666 56547252 197142457 432388627 811555234 402869777 148093899 646544805 925161373 561524419 601378660 592518622 436706746 20893607 904341629 991944359 418413251 888232086 673531429 247964001 279902804 369160501 347353362 985829306 102979853 640948628 362480403 15769573 358721132 169085275 14425592 561950091 985308831 879573725 237256159 298501880 667738883 178674426 901864570 909920807 450417703 829832660 547598137 126299210 865504598 701648648 809000774 923624987 502644059 16118303 392918266 902256028 574749299 876598131 321067297 570687491 284550373 899046659 38230564 789593871 276616833 740741612 858465568 279114393 622702262 796772729 281756755 327655977 127850571 263495657 827356614 281503990 211552577 279826419 93212746 483307132 449233284 215743437 653560954 315846033 221869637 956958006 972194904 92259383 248569398 505045213 989519053 785481436 524518069 545310734 278781351 273543771 443047924 291887715 304013429 243787005 901133673 297971784 289836506 749997810 349377523 582986573 501006322 972472883 784251082 863311907 507055669 741445785 108419372 212596902 463172639 741273913 407477198 288226631 142370632 567571780 934960840 786325694 968208653 280974239 829341821 320350062 249954871 790861790 698763306 52830469 248164357 808745397 557889147 807019198 519636362 226782386 54885077 833547249 87053214 760395204 940714789 426110729 71353921 704238512 128448235 97137533 908397727 535671820 669494294 590904677 141032955 667873628 759791356 511757905 982102838 696490816 618081869 940678934 935049956 234451609 905764764 390177609 239462151 258234834 368083909 590669724 923263322 221513250 345842135 202958387 467327107 578932772 763482345 7393537 134178895 559604456 827037358 239584315 20668416 668687999 283136947 835054976 187630718 980180076 860580932 298679776 898574494 509463875 457732078 193705123 280788532 687547490 251465577 653914880 783326867 260361857 373626752 105667345 88499951 522760698 826488397 437869875 477579960 174518936 141418192 227204359 454635601 484841431 243739088 397351503 850631854 154882425 40609227 491084717 17570551 820918454 299148267 894979709 942546781 667344541 679668424 422630139 52716431 327919690 352241137 983872556 498711970 509046470 483266305 137987448 131281657 584688095 687471328 536103828 574125037 672251709 185423117 228459386 228797707 33924028 381699661 386273537 616516716 711959210 875662655 851926436 236824278 855560400 828887626 851264912 131842940 400235976 356172391 227503708 563870947 155929187 334893048 26568339 850656032 465856409 829165759 201811215 159088692 177644468 964461587 473511005 620347658 649505004 636242079 539243167 441539274 529966596 316635246 647899774 22294410 899096102 257328355 62919284 933528998 717986414 791839018 228177285 456452552 783633713 824899162 855109895 997304332 735419731 626474917 947934004 950038404 751951408 862291020 375224474 293158111 242048512 220157024 73747268 154560557 514709098 141706116 995639932 810165521 228667380 565997459 574095123 162883509 989835334 767837997 11196209 876939211 808513011 367026072 306238160 95590946 11850198 917397610 689459579 863644705 914741637 293552701 242612142 560144162 872738449 329455857 289470405 377535902 410364835 807575106 494751732 907730213 854142477 399818836 588172912 406066017 49417981 361325638 769234407 211730605 846501954 828548869 263451992 577915732 498165155 971587136 704826712 492467890 586205833 557108219 876243531 204363671 731121138 149465687 224718292 506660400 447254878 610337131 568241418 622069736 429730695 798347477 396308313 298502310 112589683 181437695 614700085 176524477 854019622 131245991 713089505 220722599 371821550 670012726 591429844 776598387 105451526 565550204 935031991 594835061 220506069 510343020 242743082 121170041 212028047 974430987 388076817 463029074 487574374 526411676 443028988 715286266 408546464 781862128 985474112 374550340 187499163 116072469 350083577 462751252 72236882 528720702 874090106 25967282 932403710 775538454 882915921 326146212 408507576 643690328 592885838 278173450 314323226 255459391 631025566 783959457 30812331 289324353 876269859 749582725 896120211 763550520 195818430 118115844 820456883 544167027 809604667 156782313 831569727 882663655 431802283 701420626 752916428 212761862 976423900 699898326 590431986 619108067 564146141 368853659 962166453 555763242 261471446 40023906 337681185 737818502 562592852 164921596 292956895 544350730 903910725 681007282 593152324 296070613 422697529 268952754 676721480 858928958 434252863 598539288 391699486 286738469 596413345 958941214 909665786 973548459 323525156 678602534 493702465 703949308 312929501 116048561 817246047 795475599 612116220 808644242 113227745 237414709 967458694 455444848 983723301 528085977 116279281 72264846 537551882 78133791 719507981 739132856 98183390 456890357 791333706 163583101 163781316 268895871 989097866 197758415 132371545 810585611 86098884 292001079 892848522 909526173 284074029 250977768 128509984 504741544 694211104 570522944 339239380 720289360 438096396 868887300 708775603 53092545 450789673 305810270 636986595 619794424 230113374 437540939 593408805 22420602 619330890 178265084 570001036 546026288 852998242 563245161 64538958 456275269 740095468 396122809 651791108 417795114 26581134 690271293 554315431 347404901 328921002 404026399 612361085 240371565 638834917 813779802 867076678 153359911 444480470 465631425 129089699 619088588 419828130 697041278 572070768 78815869 949509484 979526487 502700868 672989755 476630448 8918573 648918444 57398452 69648053 87824072 630755705 93983059 380484974 299968945 875850817 641596516 884573269 614019284 69682680 486241024 981078457 73525293 434932688 844627366 835227970 866302583 542248528 653632832 247963105 58307984 518341895 519410538 739065264 241795200 838602781 190007986 829668856 426865227 373305105 635653967 846593745 786601871 475340933 794583359 923751384 506942181 265881888 412308935 991500620 224790162 236356131 829240390 977394631 755330454 910559526 411903249 317390219 666496525 149190791 952969012 717753226 551569696 528579009 543338771 783553248 496843591 200183483 382327926 547064303 615131870 221451777 15886084 885170369 509861938 19441094 263036059 684477370 872377341 781701114 947693870 850676294 173344035 160843456 796423818 71802851 264206155 513483645 310835186 164022651 716922959 809950398 496199343 444347176 741866580 144239183 600354069 145305251 854213053 633291062 532851363 907104766 485663611 806880638 121572820 466913719 388174324 154831087 28952008 710830748 579234118 824809125 740585973 848536586 431733754 957772046 291012331 53650844 204570043 22236869 904913845 841025995 623849523 504955275 423291870 599085817 319704710 8510376 632792393 638227176 812246557 82016158 44719642 610452588 535488913 308381818 429267071 534306049 387668774 597853331 420627790 296386116 13869070 352043553 426857757 951531905 384685140 576622621 285276437 920654789 87457289 374146685 699521208 890873155 561522773 313679520 911626777 739605106 128328638 835706632 348547607 925662574 602814939 830960247 636376916 960946636 888626267 732477289 893362755 463982602 487276661 740430794 661454469 575721935 336977208 920487445 172837389 90950076 663387278 948497960 191889138 620570473 506922834 49183761 884854145 316774529 744049039 872322052 103778753 546055426 603661533 673196375 487644740 286159116 519551902 417420509 527089940 161880057 787552806 90712717 716457870 406038091 419556935 283334308 821166710 738838217 775267931 284045778 193151545 66490854 900640248 737923028 800747777 424862319 34038363 709422579 939562644 623360518 305411052 544550836 231387654 105139769 327772010 190255090 721114459 685975673 630551946 160265361 69042573 269639651 577960374 205504262 590441510 155588339 430617035 358863252 504783564 318750775 719369960 136592823 62773213 36014374 147729895 204694093 588811391 422060098 73259858 213846664 105878141 147640278 799133694 850749079 329904598 961813700 541985071 191862112 769000380 785601902 409601489 966227212 925038800 640015400 418419625 750561837 964225033 103875091 373683566 394704411 529800259 109850504 588172555 895628401 721799288 611124658 537104252 239601336 288279872 42649948 570320776 482060805 916786654 644028685 667751182 70294635 26979050 867209539 102605625 985714749 641166490 29387434 650817036 416301976 468817016 59660857 967123580 248590400 716614391 616844331 623038477 880183434 659095926 715621934 329262204 164671629 570763934 609643378 508210385 97816900 925314702 307745090 929425535 704685505 933803656 823379376 860593746 54271176 183028454 80751432 544046932 39513388 493437723 206373570 566210520 608300812 561405233 610676712 760713869 25851898 285082685 374660291 224110062 246741161 173533606 958207479 481292368 322456106 418694168 136120369 740567245 889038795 409728624 19041744 638817264 297318194 349517825 52561393 89802129 205000365 869129334 340345247 509445068 719416200 780689572 695118274 225077019 809547232 66454283 110647144 680498046 2068487 379965440 841623583 369463516 610933344 847681641 899241912 685527366 622459238 526985481 641387158 574731438 61166747 98644045 341238152 120099901 127456165 230816508 516899795 135927239 360765985 630996949 290627013 379731190 70738269 67294459 837303783 757218172 992392907 920171948 689047806 364683496 306215794 267655310 159244983 1616968 755434867 279560921 326160026 820460150 631570129 86674776 277775954 474644422 800925156 75564498 566173858 986768608 109517502 779338924 882158892 757067000 4795450 498475215 419882562 435745813 506489255 930075811 353782168 381306241 6762834 770098201 159698917 797264511 235522481 966953181 789055711 245358188 426468278 882101210 749930084 643516210 235201437 449705432 136070062 389116888 819304283 600695548 737221599 320661898 362496345 920520799 160455279 336760491 999032078 128610831 240456627 925226882 734775019 779525130 273814814 774233049 96710127 360262536 164876423 563319351 238469147 730134850 286199335 958962423 206610949 143247318 775963113 407344558 86019894 54708484 293749221 68557212 443141864 319906642 773000275 700358065 480709795 340687720 763437514 915000139 731285190 408819623 253685294 188152444 227928608 28971458 742669539 534409099 59056322 130755799 422827403 359760388 125309981 190184555 51100406 643269259 474944670 328483934 365869083 185589829 676475399 841530027 251207151 455761515 857489893 377459532 206636741 609999713 741789886 242378223 456684812 909363211 309455839 566559142 740441635 959042684 979346558 522113020 100645708 131552791 15919414 626215206 966145525 222639592 40975881 539298818 185367166 794644457 10397223 261834481 323036717 858342377 309405581 269184690 623664680 438027777 402301288 425218823 618318146 68883293 858600871 938350576 301912973 971522947 299454250 530645761 882004443 729391132 13405734 260553408 94009773 691169643 642599043 728311227 299968622 249373928 146225759 306982730 877937269 104054547 311775111 167783217 81445397 472538776 428992146 38093418 30297254 149023793 253868958 119284708 357027292 644422236 731453880 348871906 300936472 489725583 394078535 44018653 18579428 285739701 535895849 796105472 957341696 3109840 504522275 468327362 351979413 241820723 955972140 626195133 604038501 98561286 302174471 147242018 750875693 945969773 753639178 726221975 504236616 790304735 547975280 781661022 210186626 252175534 122842087 901088806 642794936 495686683 155370343 824557906 522304177 206256013 102908029 877152687 386746097 640998039 988435117 680098529 607044849 774415220 729536185 755627063 871438778 679578466 890091367 219179261 763401568 420042724 954471862 426227318 222250875 246395175 363442132 761718793 181537363 504425388 189383453 563861842 633219940 71633172 56103430 776840228 316253103 654704543 552853382 911677554 253647051 558974758 149150641 140534053 633165700 635089666 726378594 62471286 204107191 517562943 850043570 694691393 627372260 975481966 361024222 309345406 329204774 647988035 894095384 425738162 339931494 268205784 823403878 23126183 792253009 203308120 7648212 472316859 919722295 825047840 618345285 357804694 182089098 710634672 583144835 848600662 279351385 768683450 920951107 161402829 476694573 103903443 659721884 106529179 203405234 435577972 667345262 406380674 394146937 601904930 66945586 354830391 267795193 652058926 744102334 835891821 673165626 814250888 740297185 370002425 241220693 695775945 218356980 641700445 120505171 64630513 914339889 250021044 656318996 876527772 871613810 427920990 668269663 425149151 441824732 913772133 423546309 324435173 370858972 67280413 976907553 104810270 754082197 892936324 184252221 768086915 744142202 270573326 112038425 915366361 936226615 985322370 235353236 490141719 942982694 696248825 628660279 791945583 924558883 625398589 553661354 243783366 173020474 616901499 191275120 280687454 326781140 874098565 868500064 891381159 67397139 743225224 98719090 700334952 473910230 556701562 550732776 37062164 487882056 9519999 978216260 562136994 684765252 853159209 953802979 270164884 230406163 448743389 339432064 346119420 357629708 177743700 206420134 621482615 188243501 137896141 338387632 659029826 671945847 311727299 601928905 460062489 97518510 871291301 729123180 936478940 683016370 654765438 8965045 700833806 950008090 455069618 49167976 342556374 864591598 344614772 184968346 403479853 201425688 419621259 268561419 616065574 802129444 251498053 905898405 310607592 774286595 268315335 870864377 900366564 5405699 400622098 267876098 806165549 164271335 678168358 573819766 984490146 612608565 770985895 396555231 22016544 951222939 506560514 363464192 1953309 266810054 950161199 34184928 209746627 6409358 495795749 924214232 968851026 604204611 454321390 58139197 247518859 307825387 528967793 252979819 463501806 10674561 192362119 613379771 54057318 402337045 691414853 96153958 564658768 866275865 148590196 3083398 672979156 692390524 630239970 371627204 31323984 307453875 406218988 674156508 550708341 536518510 736131329 154899245 598055810 311908734 101837970 646663755 700123513 547367416 151450314 89802064 866946127 560902454 29527193 75364252 505909873 248647821 551899588 338669483 387875076 648136674 723188997 776276821 517586126 329779791 56255624 946288999 901134654 903699556 402596122 823557412 798221418 453317380 765714484 118664083 539845287 968400172 580466731 498696476 241294185 43721942 284434602 214993925 874487037 554964923 801853169 691102104 786790830 323224584 619139246 285861484 776021599 358976610 239494676 225669402 139277923 418624365 252860522 568312191 175515331 91642594 317099795 481515567 652952673 898897497 169644106 406304820 448584726 522110742 273120533 677317871 45418565 805707245 323789489 110890549 581548393 76505195 515280277 517080939 540215964 254085355 779697457 348211275 292932332 328949494 972068308 686015998 491437586 83268140 98680267 274149800 111973715 940080842 311929963 970359175 406407656 716682010 281037119 835309810 898593484 114208403 376218269 720707128 147835928 409866824 942410998 647931004 262380275 582546968 333757103 472612619 696583708 904791042 363764482 18777458 785715116 295214824 800483733 804663855 599346126 178406217 324990426 255476421 416629970 990686463 827312088 457341254 402308763 824841814 542323336 288669123 410841328 803527035 378636928 448422901 488354514 472264150 689660823 875093534 946115772 585939067 969812757 417144428 81458566 401613714 21611873 14055741 65456054 466815660 12123400 855349705 529365060 100361857 169600092 933575733 373975423 431995586 124927814 381103406 877614242 566488409 178931162 289969985 248744368 787362125 693087767 849877234 169957709 237404045 824787164 790194478 467210070 334755917 857732796 161926876 707060186 82288394 171565890 377699114 436109231 3735637 799789340 865797396 718480544 254683707 960345308 838573697 446958657 938943565 454765245 865607014 485926574 313085489 621265466 320238664 298755378 648836208 79938247 685531450 119380381 368311844 435097470 937030052 13322391 505603223 373949354 546835892 718709440 555614800 528000897 834971903 39033120 956867372 984952838 224707668 49285208 286170198 253649350 716281794 530915596 618792003 237933672 404431918 5017067 740637695 285547628 198325083 312696073 696280585 54606531 178734578 237298704 600058134 868319769 201738078 477409646 717985247 431133998 568774408 897565887 521216558 726063423 361910613 304208303 172283801 13511310 704154820 394635251 698037259 105660367 100968437 73924786 655204279 18320854 979680729 316330235 543314394 394400818 390340754 94938056 738558021 256888333 283691302 662806166 82160769 143986078 721775964 924553657 544218639 165139067 733645923 262705082 892333076 348316358 131747921 879679810 501704973 413975606 785956879 761865763 264479155 451155413 209799795 870540800 180054469 424926661 303652665 190299090 562782582 386693092 117318635 882161297 9120275 321813373 61963357 919574474 564853947 630567862 389214787 296626350 706142134 820802174 796182122 366927227 626167538 655150482 489705719 526995911 915945521 643965701 650057530 564497798 423435041 281826630 571359212 794193259 225693940 737462559 720826899 583730628 36308403 522631077 972136245 533124746 51664327 996139378 360040660 776708933 230786060 341950767 393757013 78464667 6157216 987835747 225060430 326622695 644463383 430875591 160051438 780740910 241491713 582028621 26171306 672559006 808011064 613723019 125500386 375276750 419288011 601987229 795142642 785869386 408472406 321588987 206150707 450495152 287403045 774754630 768785619 590721630 659862542 729836949 187510092 400965166 972604918 67304345 22728524 493688282 593814650 103611621 503195579 589545245 77045840 701668213 165291530 687586843 101985565 330272035 637252252 604997712 271561790 981274401 107886632 935689264 781712477 71259910 773531577 370147730 341001562 233148093 968878987 36843023 606154389 418073210 157795273 645106912 324787289 746306214 317766880 998293383 941359574 785857717 199944862 169323648 202777719 306972065 632481744 635743949 611923799 404164921 580890893 934063570 783505384 817467146 298480760 195444657 525288336 866824361 541203405 383220817 578108419 357230538 882210185 706939236 293050675 956576024 40805208 829601059 614213100 791475605 573502490 373817143 817349024 613396206 364747914 611119457 730323733 260737301 811419469 282991351 78772238 481129084 478711790 384829530 747412167 537401242 591948870 561335724 635230413 898487102 846815860 280964812 561855473 239697257 337160466 104613436 275953784 370524247 950769969 296160714 966944467 695848537 856849297 275371645 56670150 560878494 146098308 326992731 372337812 246766576 123827076 696450249 332166786 947630278 22515898 70980255 866207376 934398342 653633015 723424373 261950449 530500110 762236048 141920819 299034904 289377923 692282819 245336946 971125710 663231842 478868480 191053561 653952967 131424090 297942764 106792779 904216627 690493326 530144311 372924944 880457254 731912123 852043975 130333465 885259801 340325125 762240263 656132964 591935423 115239983 733077497 388914283 757385270 204371043 81562490 175506932 806044181 43777313 515539731 783079495 523771649 393575436 716684167 292340416 633499014 789856077 188005523 816769303 222563341 551185377 421456346 621689415 637727842 927995628 183924367 743411532 790488272 290953710 288400346 491356894 785959892 367695164 267638896 821980390 822424099 691601218 855236550 336057116 477046602 48606951 846268879 564940065 41347137 894674067 330817477 666371448 265273578 86096533 532966953 674804445 348508587 327100029 447126464 537452079 41294293 958914568 642865016 260253621 178956880 328661673 334108503 648410152 744706558 239719073 350168138 764188894 714678389 800237016 191842603 450725474 352561397 809073211 9875135 85633999 521919132 698362777 882320542 655103379 30313522 537911693 589802378 844260937 538288143 428200346 611354012 254354711 7975422 35972760 467963364 646161909 10905512 258120572 834844738 979058035 554656806 537646635 739902393 820694816 36912473 622556500 859811686 850204086 744597326 524092766 219854924 931146764 193622829 699764339 448420118 271513480 187522278 727586065 674126382 217224446 832227077 560140590 647127414 753986441 245112106 60126493 184052818 505081388 344782014 472623551 736821465 861989502 485842365 54045654 316520706 947401634 532313587 844938278 146751218 900159461 148244190 402458218 505893485 200902363 22960092 624893911 777390265 627629022 891277631 134183816 762499366 708361239 103931959 108300031 855708466 798554257 663265495 334629412 315399437 181462984 172586114 984507043 542958633 265892019 339490605 48677021 996416459 595022228 419678426 281385550 745476353 690668670 916028209 383820635 138527690 239968854 615380439 908670411 693985102 418628158 327830040 433292112 177650153 453557995 800755310 106206087 185451272 514197232 509112629 981166701 764337245 367320766 139635281 385368448 717134980 536138291 256666282 652869291 403227613 632392520 756984112 172820291 618837211 59460827 873645596 505760494 667929014 77111036 999232332 41633535 147758629 312014358 365719876 128396059 135939903 764067621 568761305 731616688 538084848 369602947 589626025 689711008 59947390 37874218 581622030 862174211 496028229 226080719 692748120 444698355 95057588 334107238 360861034 251114162 84413804 83617657 344888802 89185127 803689704 941621539 288231987 710562670 937189211 722969483 101312194 327973225 868497047 50748658 563421919 787208095 713296679 584539108 472689580 523276625 236087767 811261116 924760050 951560645 3691080 90463135 767234796 716508842 921821690 731852977 416176016 865630254 987616382 671141926 486490276 441586957 650212201 52876042 407739220 753716791 638769204 258090636 633811209 305847166 882989890 488073688 900491465 294939238 759730057 269738891 396629011 390306589 173992944 859954252 747643381 581507253 953358000 808501747 648023536 670469889 571894352 400895518 395426653 872339465 704859490 267702973 39925124 442898040 830693917 404942252 362973863 933663238 324254209 770860744 533498862 822288224 909920318 697728573 446358990 451266023 620894935 78479644 538815345 86409571 310632435 641919440 552428364 863947585 637579718 978463507 367188274 644134686 836749230 787830465 838088361 237165169 445653756 574206247 659806308 198819480 150783195 58184254 379684688 709882516 279415477 567167658 355354134 114750982 937107681 301557596 957575635 507882169 772103833 114131746 96312497 66099631 200905336 345576180 364366924 83945674 847982773 601781144 693407652 290678806 416618386 97424122 240304440 757666160 169434754 805286392 792837827 842343636 409731206 767764327 381718055 300176566 368252574 697680896 615457885 40652274 583170051 91088423 679263227 377429575 502523454 842228586 106482321 790788615 95763867 315699723 430357404 793924968 809061877 698450345 926633844 288246412 901493614 192924207 690447405 328102314 397730410 464018787 490603503 644237384 912544107 480043696 754471199 906989692 158026713 880107009 969872791 680930554 197454489 722069363 370401357 668504090 989246601 897069366 599398350 444455389 326229224 242808167 413812509 233837905 403492358 959500875 746874000 246610493 416582165 703078477 24631054 272019376 562810845 158726646 975726800 101729518 801199710 690597379 758571767 28387455 447930625 303696764 756273235 960432517 247170022 94397133 312323023 594900407 239620144 754977958 72434012 418578367 884017087 732667066 53043972 956885360 626404729 557468447 161116957 681883723 751931702 609366159 152604018 928766231 923792919 4514251 134763704 691510195 581227393 233266055 98246090 651093356 473930910 358196149 111328238 558725490 204824011 632908224 317275275 908250773 413881779 221497869 581028298 722471117 996127975 846690853 287793827 682708320 871863670 736758685 373494301 145829238 373854609 282104726 283271050 920645581 558133243 413762697 93941555 223207100 113562378 614890656 849249439 212915017 653519416 684996691 143231344 714772885 16403845 362674059 471195115 788295566 909417243 163970318 794841501 4295329 257555276 95977901 36617499 757389462 114861599 506082845 646734539 258521595 142247580 610555511 685390639 946208824 492591862 40698433 67992029 996894704 89409574 343181046 56811422 261192518 907887584 53449276 166506064 748471739 513427406 880915784 122294715 488999535 966955104 98393571 120742243 867595044 948357209 167745427 877742563 963809165 666246627 569407075 540035809 791604813 730814871 632817716 722475654 765205020 895769255 101960026 136127154 605896258 834381261 902697645 918696469 255822094 278159555 238834620 202986195 804254996 135629793 867040864 724313999 502555401 238939732 511481121 839793356 615971761 140047423 614710291 820896409 671871967 271131850 17728493 637101788 311579509 508487773 685803411 384469984 75629673 293488403 702790558 842802160 394163043 309431620 707243225 925570253 81246479 993090388 316272834 672074111 695512133 67443079 474776140 333018723 664248462 946782238 215476959 73072936 82734696 780960831 286531582 266315181 158881849 398947353 592120484 742809527 818426168 653469059 579963073 306205239 644483241 524430233 552928442 487890621 944267082 218695891 503072631 648338580 740718351 892558427 741985722 498094322 878602894 178772778 568276218 944711709 605434576 609550410 361483589 327860383 416123835 26968053 378292675 507764568 669191908 896393822 145809566 205792876 347879279 891892824 150848376 169121507 876762280 856382671 623808707 412910053 625961560 938004007 891826418 981556337 505053835 843630610 265274687 331231185 396559711 464808948 590859814 619330902 116236134 52510127 263579210 312219052 700840768 87195703 749638670 717543497 953063782 249452880 449990556 815339121 392701521 7019939 638082480 932207019 946934129 199538332 265287872 975507766 965639009 33714048 433026966 272783424 629939291 284663026 45021491 707827892 540362941 545883676 948575188 917463438 301853612 859874368 491306728 33404354 105109749 963803172 955165429 476040029 641520794 647203823 232454053 682797406 857351414 137596410 123382341 331837225 830075902 630815665 619816084 911837433 550103189 530077381 244137150 853316967 451859994 937938173 359356527 179172663 446109848 467190374 596999515 43218089 98818858 852430302 175665704 58300694 425016386 119251799 3898891 550027914 174859166 624948602 647357314 236941799 541465229 636202539 771067867 925024658 735414552 735806156 822070404 886628811 149159410 212351247 583643120 916129411 12649939 796652561 210190906 171021045 801125861 417881230 58620972 751611041 95731219 996619729 484458097 570398258 408296480 678627590 557493528 770066453 234504750 631034322 302547161 383127095 797896654 345877607 621556134 422554549 185586915 541294237 490567894 645768246 625268013 300515445 73358840 295388028 844596627 224856273 418321043 576176653 858717623 681821692 944906776 778105124 895132741 468144890 463061734 534138393 851016356 512795649 81187188 239120283 750364743 162790167 21142292 428518107 737647300 7637923 737445812 417518988 905961705 935530701 667364364 386714621 989871392 899768014 314864774 758748699 139851453 389780836 576964459 129240783 486903328 928798012 594658022 816935631 233156149 745994715 304693455 585204705 20796415 432296325 130217632 522971555 764368650 407822951 447149814 253177541 815394220 155165038 565414243 522353746 696277665 689211422 412673471 534950225 814504817 403556477 395213444 922511543 516382674 899032606 762550900 186565739 576213708 841895508 931339703 985758307 237291766 930526655 762414820 571811253 50002289 544037545 435949466 142976767 197780884 489870741 277623659 419982770 323837348 8682268 910398259 520072035 231834587 298477737 150697562 87693588 773955714 725626169 761040256 965945267 978342131 313057350 94234163 937045694 912528690 414575659 394120887 37486596 458882839 883840244 351784882 475782006 717971931 446773605 606279486 451390725 892783633 326692726 416861189 9292699 620428684 923596903 186620799 219524295 215448329 264674504 242141883 729066874 356756038 460886674 884236725 141701197 896581425 26549791 712940527 376819574 711512498 581921859 174441836 726334720 727777169 420695048 600431377 205148720 653697383 3302972 227608977 185131724 182251535 708250438 644847182 85101402 938309220 304003616 271103776 604749906 990689785 36700717 959705939 17334756 640437326 729780352 453288536 168436254 556253669 981221512 618940740 226733822 409239823 671446182 911000681 77575329 154497838 194017422 300625484 854288774 338080609 255405646 64720875 933331420 288474365 650481704 81297142 609532093 733376878 276150058 380075897 501475320 815297150 418220731 610462442 377287244 925737295 424285185 7731382 64689208 80628618 914353726 227208474 517162801 982998957 438594871 743608540 180656630 664067770 505084090 785999151 809721668 641144032 584179335 103217064 354706116 877847433 327725975 809160995 988908732 696959132 774150265 948156812 499126125 127604043 391835811 224299024 545711100 869550938 392115701 634873525 73306268 208656008 197419443 978394970 203016651 984140556 238975643 629657264 797154456 270330662 147242149 722424914 26776512 251923649 304419239 170725717 680775661 572082978 762125474 765874468 504223003 107104187 771751920 41552021 120814949 214901967 948091631 96361931 219417826 652952968 537477230 320709542 274136144 557830772 248263173 309982635 214496121 389488576 3861958 717767574 80834332 516306102 171882571 815819105 610293857 364398988 707494622 558682389 661373066 172068636 370668786 657457820 332572963 100813864 859446262 888894587 623061992 755655585 523630335 78354908 315214953 521753965 769339932 390812699 274411515 265365 757626517 164925591 382201028 940518505 229659795 898459935 123024872 817608638 294692333 553334967 74676765 695109413 529631183 406742082 525489800 431259809 786046378 615457301 692713341 86677875 735367788 298125932 182072344 526476346 756818655 714580181 470032534 997145519 572899998 708945441 985024764 942431380 883001050 743007632 237321945 857584891 639552338 137224646 68274672 253019843 304050254 203322753 201384581 334546089 295153750 844844639 830464230 264131493 298111136 175663439 939874261 914228314 34729139 236951869 109032962 675713875 463472109 438256100 517198406 396310844 197407729 776303144 634129305 670395479 99686119 378572124 240785695 700510947 354033115 179183381 54051614 240893944 247015823 674104978 450955568 982942966 494119493 58076348 922194127 632147326 634015920 95863276 3552775 337133419 605659025 862119464 831493225 979765470 60234317 185539719 441924080 60911264 863245159 559497556 343343715 763984937 329590531 946491274 147851997 124354116 238322557 382187043 481031734 132501918 684863477 525309343 873064909 980108635 193635912 398746288 431208646 125959308 197185168 109628913 996793771 11114943 286729375 507870569 406480244 740706363 454077399 602222630 901323928 871926005 92773152 643256122 919804132 815516011 663708284 17956541 211577652 551675491 640465711 302912833 9977937 779320108 502599586 186264712 209182608 35202996 50096153 655905419 788976349 532973318 183691786 821616143 615095171 218150832 811945287 899992292 393696444 232171321 851740064 749953180 442602873 553178314 941192477 740171597 347878967 84147542 66042795 438722909 837583961 349883353 748412825 638785991 945016561 575192401 476458179 599943928 227601890 889704818 9610710 141889206 554305049 444787698 944971988 7986180 176547509 517527470 280739507 913909795 355887955 257618162 993026174 745271249 73352872 130039615 585218058 940136330 850077931 543561884 795684263 541508228 514648665 37125902 585004804 798943940 323446699 443398703 197978074 261202425 263869827 16704638 731839419 233852374 446933529 80375868 520858102 854920455 309580005 925627986 67328137 167907140 608947442 665534745 723994227 14553299 343106105 829171243 43525665 577268680 377884135 219371557 914968482 423186586 950522186 265611526 262831357 295074321 863246580 549623430 699882413 753171936 402863354 825235970 265377422 272208055 974210456 43627785 516595239 397241274 787592290 222754718 805772975 183889413 232622253 882193820 698958083 864960475 361847170 10051768 875924106 559017069 583227538 267838588 400697114 837766377 123803657 79818316 787172879 268760829 237461452 271903570 796064624 525188545 990540079 501287191 99642951 724417373 539920024 353952565 202287249 692650820 706073781 598363580 501874280 716653069 181375808 9604238 742301215 276092157 365658096 896368007 57306073 625967921 844326013 387287634 13868821 557986556 940413968 963697455 151202707 603392195 48501321 380284956 477986752 427768722 326704159 62415829 510858197 764185537 269829393 880072325 406773656 748679863 181725703 705245597 971257618 673543809 920534928 725922792 442919641 644597826 128489186 898001877 412890786 262557767 570170653 825999995 70709173 122085120 819139689 869906545 191750446 26166150 423078364 779825582 886312534 175186494 776860196 659735197 290597529 589377116 660331572 121209936 479549224 128674162 841248644 822237583 276027955 710104236 295441507 164235470 424040575 896598863 378724564 576032820 928739450 556396577 364431628 230212923 23907442 605757039 470263326 463386933 938609471 235606794 361197495 764920219 436399504 86980502 91282655 5754993 993605817 445797116 249109473 395239483 737374827 521120350 465620855 555037982 330406072 439263572 58897710 394950243 193643601 30890082 778406770 54151799 919296842 507014023 636495586 530133270 137134321 622715938 802321261 423531370 561991640 368326435 421185325 916195335 212950401 48375055 31544356 851459856 285849391 411456573 413437412 645663630 374131800 15678547 171048833 91930822 388123895 45909107 390958043 977698473 586160865 136514074 765964162 887613155 176993093 378937025 372069889 91827779 288794335 988263434 940435763 277170532 448725053 110621941 257260701 297051404 602691715 523046111 421879983 590190265 959698295 809614877 476480878 253638961 31844962 933123397 577746563 854511808 20458594 336907236 211203753 32794953 442537289 232327096 843015255 60097393 944145498 323216507 821422442 247891840 659609260 691799812 446874876 779413048 327467204 875799319 450652475 904099328 467729943 938962943 798497671 676988143 415841698 203073588 613682988 107962657 580226891 549021042 863703529 157507501 610445408 719741919 473190749 270210658 946275855 703476365 342749274 861130371 83056434 192449775 584210776 544338987 262509512 333373512 365126218 955108899 965583047 901095749 377304450 890988279 454005410 233225164 683765527 608238122 262476183 493274778 697826448 862591126 525633991 343872257 135237262 924686843 721918917 720598743 377830720 745155862 203034891 277540617 148932127 603507586 883423692 347876523 533592010 419188800 874042086 813815956 378038658 189428261 469192154 370563642 935533692 161966442 121033724 511228406 503193724 674176866 174370323 743802947 692080607 458961321 358054233 653301708 878714447 351304488 352909502 105912498 577236367 660449422 65962086 34801936 505983410 551530556 357421526 903993828 841841898 835431535 807624512 332480456 928720533 855751188 57033683 488548643 235891332 291466891 609775496 990594046 713145847 274233670 672252500 519157603 494433481 255865872 697049335 120394500 683918382 115814004 790738150 79502758 643096871 835725080 438237169 667341893 459738133 156528250 970433997 251133186 369161728 92621780 238189901 785965624 548933141 715715357 375917344 983103842 41067586 378679857 45115042 215851042 925752941 407168767 471748284 958014695 37798726 936363154 223563312 275214176 639901381 375514795 288098614 507879460 507289506 869067003 706243582 484761616 212734358 317947081 97077432 797485397 57727747 749965394 747169022 172427856 133532205 720819947 318704172 436921941 618041231 659446571 692864736 394690733 856991997 916846824 636252054 460536909 179274334 868752859 338702389 369964238 175184341 694416871 203517943 491709212 461980824 729892553 446666813 336261197 909913244 157839721 285841406 911889536 228840249 595671915 377809715 342069382 168350591 852246701 723710757 619857274 503555273 741082228 242186188 626998163 960918675 911723504 751022285 777129831 950499718 667050564 904200025 131781625 285273395 670371603 655414744 754360649 739532544 330218446 578876170 539569916 647279078 236177360 359931685 884454649 594577527 39906767 221531466 90699933 666266772 860175127 219345235 713843087 900416838 226452670 894960095 119621370 124125469 346092812 152589527 84703832 746674808 898726000 712168039 64684986 348379391 144925199 213932950 174259097 490406718 565131327 397788698 525256322 312622918 140021912 123388328 737521233 567895320 877743601 817334028 407612913 41766279 572756347 545651381 757552085 687591208 620312006 205226551 109166163 114158979 354358807 256205257 34531973 292187798 401882410 722268592 649247185 139593877 948333064 621639477 976984853 816369930 68140126 781921159 96024678 374865340 208891107 488655621 938092011 664004729 814322969 107352391 237160783 417718591 688437978 416599205 620474005 785203583 748815912 679127853 727348946 159024911 538897213 894318278 656383507 117343961 775004998 538780766 945291249 941120953 936596925 997710743 841049824 595494744 823792839 853251448 951488489 432764308 99006614 509893902 753586689 458528267 700680506 154052097 662554562 146552958 698260946 161896557 828589896 791059640 311372219 355696681 80002685 588748911 831107273 689124984 971522762 72434671 291325499 151691306 584075347 510781921 748701756 671469960 794893494 254963623 125217280 152108495 218304701 669429052 257647425 702621688 791175547 871247036 746865758 298178941 982316466 487281414 702675116 47075833 965059562 936582502 466263405 281260425 433346082 568839301 972116616 167953405 501793749 946033315 264683269 527660724 89779397 551494564 933201127 355894366 323753461 868323699 502301413 401811341 61198315 151803289 845512095 421349214 226040026 884619281 957531935 149106972 35110617 280005660 517772015 971245104 110848153 57557646 846987137 340134844 841074235 461743738 602066347 404894675 786763953 943751335 174995611 472374966 883221877 431242971 764510831 182339777 4968451 634260460 214520993 46353846 826854391 629199960 438329063 677593136 439867448 496026816 699958388 119760069 621754724 720176569 258915356 992024408 281606566 569462718 967057479 129676806 254915425 497990976 410486306 614418167 767655293 395514862 330188255 966225164 184147517 680152538 982421750 974542324 283077103 9939202 671679573 335065836 324101621 957177756 493301059 943727818 594954486 617182655 425472248 72154822 947617180 785762554 845829132 216248568 452713832 889633388 136041885 314905502 725039970 684683183 588125907 167185770 893416921 135733161 507508385 960625931 648133711 937798315 649922638 199079648 359799168 431667739 595391567 170457120 660405991 73284955 40622334 357266886 263092740 807547532 795816749 60508416 265544420 701049432 652229948 483083892 205719251 23310824 781112747 348315955 273287374 542557699 138059197 714014606 151069439 53892043 655606498 637490892 6107120 32489945 326736712 452167599 287299504 521590230 653349975 622319922 41928889 337312859 464538334 677445826 176259391 220434390 320527144 126268599 457173562 924222228 726352379 156670151 922438973 488928632 834167846 879533872 183185086 157775214 1027668 771203478 38571115 619051571 597425735 836429206 104348649 789370225 934287116 632467567 886262105 197463761 725603814 631124924 817282327 669990806 346115793 737082440 614168584 448010104 184185086 540790219 561620454 992609854 419325768 441210105 801264994 209758958 364285657 822491350 933347027 447207225 315295044 123344127 810329659 369898689 233463322 235446999 217234531 321098271 668128093 541988051 129048819 259603023 805870880 548815451 213101596 403296757 513517119 27693184 636919644 121403724 720954244 111840589 523148468 524076318 412759545 147216427 345010228 475063571 343287935 563771420 830047852 371975971 293194122 240494807 77330915 654975361 103929165 2015272 893201166 838398526 751253971 674829329 201364993 36513944 298104120 80323851 440961808 110543204 304216535 892109468 924755996 786045792 983697707 875961749 111082963 982433120 497104736 578528832 796859416 112601844 829798482 568846842 323324731 811474769 7675530 214592342 776264829 608294046 811257547 102368833 680851666 611203242 789190345 73954149 380964246 746971253 778336531 309633088 154003056 542931905 176403593 791535622 538976447 651472928 865398636 908052895 513272024 678813411 869259485 865359416 507950176 820821063 93835321 521430058 835396905 980702428 598519920 16153467 918982772 967972177 50210512 899713608 928768524 628217497 397129869 634996068 400133115 573962714 229907152 48320600 754386945 860665106 228142689 954001223 605512649 238006268 607675862 573105759 809024562 760379699 804293185 476973858 920590379 529806302 230836788 332724538 241571030 61084087 984083151 218747344 257661524 374459512 445318511 88550620 119635481 23407150 358567661 537061253 655501567 583560365 229737473 642344422 634157698 458822448 515675491 433515135 468335754 807258632 827288230 262550781 541223934 980954680 135227191 757257634 230099083 80512651 896413002 351388656 889445574 729456501 920047134 928936217 880225461 487609489 274481114 983302816 552459186 285091479 346691783 49626936 273024594 179040258 626248573 162213790 161439629 714571783 651792758 124146971 900435727 526170314 31795583 34035538 304664410 283894993 948153757 401103987 659238236 242703640 554362875 346711476 677947539 842791097 418581442 371202847 879869880 94799251 141145613 367800369 779564568 409200439 685993598 911232538 385945518 182925974 821415034 996167996 541689438 744004779 589656588 255861917 930256279 81521277 827678935 910160001 921460247 290359930 719675324 187584063 780254503 60674429 825682784 933994136 411922511 387876918 342971382 72729603 814986808 365570844 33558604 245497942 815877102 628378459 445081201 626751762 625866796 145112559 459521882 727242486 278407796 263188011 11538454 760922654 738784112 80126245 534725170 466255272 166455801 585810350 636744091 130155557 4873331 486982889 181288663 194409588 967666166 648468427 83001397 179571116 546285570 720317620 39021289 303345860 131564897 149512991 119098433 905789501 779393107 599667143 222218694 239045756 925135224 436237953 61340263 150149955 184969278 664953 786303940 537077730 989025418 908210838 590624245 629139063 443798474 231110297 636008392 697713168 330978365 594785207 656455134 723457548 549306263 160842382 982205299 238369576 595313906 154808891 117494884 978895567 272501986 783436174 266650089 425470771 191090055 937445924 850801492 557660353 686311745 115308524 966840562 378160285 703702082 529336988 101411848 286934300 300579740 588396215 318282774 377929049 49718949 153258906 630219440 742194133 124566824 550862014 652967822 571715179 93402523 853753505 446919308 391618671 564247224 73531601 848797759 448979671 251650326 325497584 852842795 593516112 195541753 518263139 511917597 716947852 809143519 16451962 916739338 331231644 639605347 382261525 879382830 3772477 306644464 556178160 588975493 731809346 871323957 164972209 456038466 712064842 318269923 577461977 282849024 152348464 245376081 506123204 807122375 722574553 916217832 196480869 285548156 46340300 218523434 781890094 776061779 316836953 753958874 153378186 109395953 493848438 143527157 381040851 249344794 209941548 253839955 333422842 496743182 65192774 950042669 9338605 665699010 16295520 21342799 346863932 539532620 597613183 300258863 556882865 653050677 54340188 984714473 841487723 368650164 618764145 388416500 669513275 396947039 492108170 637309868 979022970 234462072 407175469 1458133 338706584 911498808 149708485 156008754 879424221 540684674 895462139 667911644 943313167 49335576 7010200 330058660 410758999 365897628 187314392 735998855 189098391 659944430 355035468 89068881 178263083 677553086 469201013 591707038 674954500 471613276 875066782 994566492 958571527 730834703 603864291 14898742 997723164 110963383 187576205 148354497 460763012 576267218 27882605 940202773 168767803 994064122 633919246 229362388 92732236 58926518 318727310 257258850 430599401 733153673 81862450 120843628 614779389 87746993 782215129 304478909 196286320 604800805 203827174 242631232 479287548 519548811 495482372 246071629 23370591 358900937 126137549 664337970 639042332 926529258 824827852 434696220 384812274 674024669 455481956 15822502 279184371 190026919 751792906 902033546 22138613 215585876 676409944 727375199 180152034 977389951 23011425 612634506 73764011 33483986 183143570 114950821 739276930 160578501 730024298 794331768 643769708 757047311 229316252 527143697 4816455 495705597 372919961 622563723 650555523 687096352 207857251 928219900 840694860 624185335 773903763 745040141 317137052 791493691 745889487 15870915 523851509 942172971 76625196 615910781 80388715 921829531 391884011 102878077 902288410 875021828 568259314 85599772 991581226 852117715 980236149 477643372 780645923 375096069 651480888 811424932 741374248 94485391 615388056 143427576 987082814 676818211 616200677 588889442 779305478 256835818 946188651 48523826 960339568 402982440 500889836 489521267 810016111 286537314 954248708 705627905 366167718 293770130 299320417 451823242 655549936 309000342 720458973 617198218 244714727 228949929 696982028 775288802 429292956 328490929 658052811 366194511 370039602 349576838 709457239 368421712 975415422 684131972 370638630 217354112 114157450 83357373 550763493 875829350 621312469 318047426 870803523 300645931 103467748 479690050 684101142 467843750 215415525 31398171 478865374 906983922 802471411 122086399 562302513 791764422 620199012 703839457 681538011 667802873 633287184 251392503 54021249 101219897 763119279 458580795 930248590 298295536 577069909 594124158 290603899 915701377 758512263 730321415 460998113 667789594 512754942 410860580 648179603 490233511 484040908 136972145 405239983 119140791 488320867 920928479 585730054 427088118 973209191 103246872 126977919 992152495 401420475 194157945 611181586 665884118 957194112 706641635 752766826 488185847 778801358 600710487 708421309 723703372 79629769 14658872 551412412 549853945 923005515 941609531 62723164 729399176 400654065 465601535 534625947 431305587 962125912 148273494 730397987 949704338 821832969 216276535 199680090 158421762 926440181 324462611 250558451 859343645 76372627 175140726 804871563 758602609 948789249 46435944 837682836 770002098 400430935 529953260 574160462 780149078 208658656 774421516 476691017 642994342 135038037 569892920 292823914 252023265 891513159 302459990 156099486 74121055 761919830 571111811 181912429 887908521 929909840 73339120 121600525 240999113 873642707 188968369 678840041 182525946 813998408 695194520 445769443 153716097 781755997 836007147 268823189 752449542 424058312 974085781 42919272 564567008 449125075 114882962 142169525 688380212 459302762 746528845 254140107 748096398 579660875 762511177 710494469 799931345 965925706 802522327 938844125 916775307 329521867 60772262 103930753 553325655 299431135 570625081 316983554 309931342 210407643 879242700 743125396 232210684 971978156 833647038 146799917 237176346 208594595 152168475 169357681 531323237 528652196 627192076 951238134 173332097 772613896 380750229 109972418 660233612 585673282 376993533 519402422 190423512 820186461 714834238 768399340 603931255 830133017 21852402 293702207 950611519 813975924 534927475 909442542 917262772 143741433 191094245 241496096 940455844 126145253 627720758 928864904 176144384 111009207 941327572 627135708 159589973 144624276 435969310 764351136 770605927 382736555 728099721 448062800 362300811 667767123 93126288 181340686 153028223 156003476 837253198 167170082 972357874 869541333 237119382 820509858 316340107 526786378 174958565 637587883 874890017 873214453 431359341 48764589 37916645 206886551 183987267 116020707 279082886 479978849 165345974 274763811 179962108 181295458 263797695 715690265 918669630 937863743 463996191 311759966 931705765 270375463 210541288 754708803 898813527 388044094 487233207 720297123 798183653 586552256 788490044 591780045 432445019 240013121 432704472 705257064 651146458 740074838 274738334 337411113 734611028 684244432 373720364 43739120 130806297 187214253 601819397 164250019 122195826 751720132 577914156 906789623 528503678 91829475 492689507 580322615 2769198 890854964 327573987 817085314 639491413 683269274 996104723 841364385 622098956 546252487 924727501 909171997 51432775 116039693 658599075 913590096 159018595 297964128 687310987 676184546 555032709 226034968 99943936 90866225 687500265 361071412 639885059 811504375 846464363 267323537 820312219 281518692 163363699 356458628 682144931 797841151 284434617 856542576 979530427 209973391 900500776 836095488 947356261 914777004 738074322 819791164 275236484 54483312 63148768 596352129 324311985 431545985 285192678 840113789 856262024 685898902 907057090 264008479 695437546 31635655 955139288 95290778 851423135 717962405 904359145 57316532 557064260 18917896 16075980 288834890 872344935 445692390 234440430 31700731 243051394 589119641 60111418 117808010 828459624 175828005 496368707 49453494 641843179 284332026 280954672 525187136 18886891 213091614 796885378 781017031 68226072 739195496 310007708 72360698 635610489 363483680 778697511 192113334 900686274 214076611 732225705 250965389 719898295 245709198 720526357 735702579 978588361 50713777 90817107 880031893 346680083 882446915 347985496 354529285 281209478 269332011 221528958 175687216 82050555 16018782 757339542 19235179 48744535 824052377 726664706 438958139 680728146 361829256 874770350 964298268 589308132 719922004 899177445 74333056 513706561 169342160 838272345 405346118 94802829 747639026 846237940 292968038 931876034 633659208 474941273 869247683 921181818 735420409 933673875 155343565 847610511 105134414 493553518 226902200 258966173 939574899 566940742 165320085 846150567 309874630 484828957 980151294 538442884 239154175 947821088 983119319 384617560 751487080 224670878 329415962 274589885 489606168 224600677 853816064 57027469 768306426 14086499 548998620 190037900 959337828 422373936 904878444 766958313 720997885 846380231 180189182 399670918 430830972 760372299 829532995 974879267 521390033 371462479 698044389 30583430 151589724 401706073 809479426 756662827 593887333 129229304 61072672 382503068 171015437 877051604 26255551 288027848 467605809 375376995 782660054 258944629 419209642 583197741 984815924 299257064 915306462 607572607 716551115 379925196 843882575 255097453 94107206 657783078 646730508 511851749 145000531 870846919 226758220 72348170 538513198 515623323 223661752 846434517 885475913 709747356 99415284 25559985 712672586 133508032 928065620 527325161 535421871 65781968 841308471 987747664 800582176 659270466 964757318 947248745 553018091 686069527 588730742 259857114 584329358 779108174 352963548 339788517 914290809 112764663 617419415 470855772 20248248 594265271 917957226 437898813 759298178 461961543 125366813 812844651 267695211 765904474 107524555 556485184 679422410 509937589 44046691 49999789 995307437 49632896 181609944 757806576 456689111 158039250 230753129 873897859 835457931 833171950 536994533 305386277 894825458 915817345 458259482 211567225 58998876 863792337 829172688 870900390 837655997 304499874 69336418 595101858 888538976 339174985 453431702 308516616 272256205 859525431 514402350 517140524 818286585 428240627 713570267 489497129 271947177 591066776 16098942 941283228 14822199 174482095 411304103 594300328 746497429 542722028 533235713 321789398 976741976 761989454 563770752 503041711 891831811 75391779 21326124 929685968 602970465 963484048 994525680 314752257 763692959 237359390 365142641 739393760 873283557 297499673 127267110 794984090 875956780 464606791 636281866 823008812 141692936 367247493 587519993 154900710 899321536 587597533 787478711 41968991 160669759 117280154 205093907 724142214 734881387 223576766 674754262 68964331 790205387 711137617 633034383 713458332 172530678 507639912 810161607 354724387 958496652 387534824 649207658 643087932 250042704 314822479 273117725 453681393 314906300 279124114 513804808 69929292 907869206 962975047 396277189 425596039 398552814 721845090 130798898 429772297 311251327 236989800 339447948 455104329 637672454 482597560 25770253 527897991 437345641 208474810 792712036 451666315 67060215 604676958 579223841 405362943 830109284 846735308 570308425 594251671 457999020 662861870 474414224 926161751 552055291 410944209 365317944 973352648 448106864 202151976 351347411 797004809 482381262 944924229 938322905 573975314 798911011 719536864 484375939 976469508 653524272 409402529 880456549 305089182 862281340 913418194 632149760 155456616 361498062 525836109 924131296 704847023 696964638 883335773 546641678 11505736 891222461 622574108 341415902 525216818 555745422 812826266 152538099 804221064 218295394 346296363 808757434 552660541 811221312 127772790 177048518 506078406 867768013 508118885 898069056 132508580 836064209 239976770 992605675 404249540 640363516 996862729 939564188 122389170 247451214 897512772 371249625 549280761 215187775 19096851 315265297 943789546 857247374 42222896 910744496 575040624 540603612 327530842 222927724 640263692 157267700 205392177 994433808 62213754 951175032 626991050 305471519 321801418 170464338 416833016 170126315 896313507 315219011 159680050 714518977 208514324 154522713 506372525 916158413 766984951 614594397 258535724 188031725 224348387 280860538 476058017 954016190 689629647 379138559 279721618 187320805 754198250 513066177 982924402 226384458 535330697 484220927 544969681 367089387 521650403 217838223 10944473 643244764 785297639 126013526 839537873 613213211 460858377 860765424 150517694 948051385 395032573 342865982 101100990 764984492 587931954 518689374 196428067 257203420 888866217 670308964 792538297 110519224 861561826 320256954 422650947 225479879 900417745 483558978 884182183 668042964 411429313 638667451 869283602 744388522 589946635 937348321 777055987 156633213 831385146 333597610 776882616 874712503 302793774 962886607 709387646 972131438 62184481 997478879 614848603 725446050 368904919 114461518 793222072 739742841 457708371 164681147 596828708 869567264 333410399 397792448 946415659 331924989 411630833 870132398 608556483 32361254 434571268 596692971 285296503 636293071 332090669 385696450 21052229 772713390 630891933 298741095 786143254 271064983 918177629 459365075 418996490 163472661 137095145 749853681 873668712 135237017 660141596 807682127 858720077 951009762 543088392 701458764 954735281 961741770 793957394 256947800 404880661 152379712 734528113 147000471 62248212 492959121 601747523 108538248 56306749 891028299 395030289 915638240 273553525 997893857 887066278 118265442 779292091 897673142 193249023 820575136 636962518 463321249 602200274 291283106 906875428 421298656 270535540 102917883 821011168 489393708 748480718 389656638 984364627 707508199 307563753 196032064 276363256 595800801 502755614 793875929 594664508 531964475 73467568 998628830 989343624 410802790 600394361 657876793 36807128 185009162 849287167 705192914 380555352 462231360 168163796 901350847 539773522 798900706 238612836 531563705 24840312 425031518 223326817 995000241 653350808 152711713 554757155 203806301 512216020 739671731 434378581 229464066 569398935 211662501 212471680 43649054 733681113 520732197 536138139 344103635 762254572 145693878 400782747 740306269 635854950 183436256 879923796 543354521 417342606 515972254 695740236 370392261 57999764 833336799 230259148 149460451 722147526 47152235 499330732 55944201 287964752 587771628 367376464 271709656 307485153 543536416 447630773 618520357 495104867 936726757 755065205 820877999 649341210 143449775 903088852 448773397 421003175 476582602 25938577 227357835 701135009 453223269 670739234 219499946 460047419 376679131 50663844 608341283 935246169 819710144 731194250 193933755 726672521 861802335 347424241 286510953 828578744 824287035 47425416 145387439 222724449 157317608 876293294 875732921 483486149 163990102 610823745 340234625 331710077 436096055 658250596 858440272 741795705 990176236 158563552 593890758 777432671 630175934 121627659 207356721 909577275 296388039 377898652 185258878 882606726 302344413 743823397 207539081 501452491 37902889 970533146 25418625 309766054 240248671 897441670 682114696 318017095 663261354 385488885 141783735 350510983 322774646 120598089 812438937 116707951 56948154 637707378 22614494 46171369 703044389 306584352 801034009 121117528 382067799 112384922 45180675 540306373 387710458 521750081 412583147 76698685 564968992 543019177 219150440 841272070 704395669 644701687 453275099 185424884 829061568 394028873 359170415 793856329 999850875 572788341 350958415 114569719 566201259 812164689 546895243 527068716 637991282 275392930 750512415 95920594 557435017 942586311 321836492 946132317 318537036 329890092 937017492 911008611 887873632 952509954 75258448 138986773 19061679 684390544 41979395 972896782 66754084 12924751 102780243 971083257 982208109 554550044 532398417 587747906 244030584 751484014 485598242 157619377 292943875 671819198 987890030 202702860 993979552 827715874 806794306 411880779 132023659 479145309 869512933 644202699 422268177 624012276 939003092 809196116 126255079 152224476 832045005 189870336 490482416 530194534 736392610 830418860 808828385 638599476 784640676 955093403 469802399 319381729 186585916 525467884 676649740 554596299 322426248 450848926 876691258 240839885 887923468 670076501 22683168 319611801 577201757 378569881 40028318 282081044 406861558 911306386 288784540 548347658 859881062 252852739 347711070 598450295 566435018 593189891 612547220 701256874 550564529 892799376 678311063 605076250 665088715 679198122 167633073 55564953 227148445 92266070 885412086 920947619 139374245 751282497 175993106 88629135 726808269 991990675 812077762 940717274 597988145 2534219 198641059 121037198 304374787 1080468 763941925 656931829 321622239 564928255 768248624 753118840 249681031 511382103 802896155 975143763 582512295 19358123 202052367 402906367 423523643 576030729 743721552 79445974 158510648 5477055 541146206 576097168 769852163 66971455 395539472 904795287 540460555 298932025 7283775 495902991 644152321 696969020 35603191 128696634 315582238 163956663 470987507 584289568 683436447 962535461 562987437 846401065 644019297 17762163 457317029 506490013 69692784 168700513 168756845 961275507 814440189 650980016 522204392 85418681 81315459 763815901 904063400 169986851 205104831 49377053 824846182 700096060 300914582 6782111 877785519 205509990 782291138 619873084 551868405 303668702 858018107 997355275 934699291 236323964 53409909 865842215 340038402 85519228 963490181 983432398 465710442 898318789 634205780 398522220 790425145 330350018 860054479 206069262 644044047 931029363 390444684 893675504 857400723 493240305 792276454 907350143 9365954 602054458 446976277 255915857 368014631 884231817 794028392 362767602 232668859 154543975 691797354 142167493 878156967 765305452 304788715 578554934 173147303 944788100 813221422 738418494 122498180 985396426 626452503 795372856 13630026 328678074 737368950 706778627 861620370 834574011 527411370 702654114 784106968 399356631 713261632 390324520 741936650 947985686 689586712 647223700 932153673 954095771 978296884 705409503 31282353 425818099 762903574 926832629 771231446 469798773 830902660 69896747 159775007 853608951 894796046 796220866 277250107 78945682 565349984 28458962 898811296 896202064 892909881 646092104 86601686 736191577 339284520 730728478 564094372 654668526 621927593 961437923 703682170 551995118 928083799 787306141 349843519 413014122 80051797 845611311 778296241 638498300 322197360 165169654 641361350 767295976 620717133 631014493 50166996 441565692 373115532 805039529 573812364 916149251 165076603 851180581 70058564 993021468 908733635 472002951 793563296 978368005 231014056 505327809 980695674 828894122 375758674 84497281 970555345 928197066 634012653 759223237 866683946 248198431 961370341 245056231 197407740 305737214 84041993 863302996 12910895 430466764 265291011 593884367 41710366 327556908 521463430 421014901 222564671 857390609 439493825 124347898 193888436 894353533 352055959 958543652 582105420 484129884 148445499 978483488 40476937 926768361 571035076 235768947 505022914 684180667 100054490 185632691 468051238 208438081 588401011 105012960 514945257 753522141 439655550 91708069 563312047 617172037 291122515 374574767 390430941 255683277 755239139 328571541 573262648 269820975 439311727 727585175 142997015 801197072 344971191 228902603 325005149 876357400 155274465 949187540 52246048 902953554 962777203 626949260 739604152 354331942 602066159 750143897 738466773 997929143 256077005 198121674 693125178 93777846 994677152 496920639 633367881 587867465 420868088 335843359 329043684 9255958 363374310 812563653 241238614 306544441 550377292 728801768 990746842 327624702 470015680 60348593 188171320 567641646 783573563 233090186 394170441 723259998 135714455 456463132 229304691 127321689 266216873 426938021 29663764 530628152 688129794 41163384 532717597 465525715 605650559 911466916 254416732 924441709 392650363 735085399 245274855 55557547 202404502 654849461 139092948 803675115 161604454 697457892 279500187 695109020 895634011 90297402 529457664 613122421 230910827 936018243 364133172 81088709 676569569 193475166 325012363 910675793 644838132 831856216 398895206 757359504 476966224 204225911 700098677 847410146 257055737 997121822 462101191 924195323 964807807 559102996 246399278 120141388 653566413 496023413 638164987 413154332 907297913 565140636 494451683 376056178 27574812 554024219 567288356 210526707 875497426 437813413 205086399 138836663 656636413 831820697 976960613 218234625 191612566 550911262 137434338 159314170 663269121 757954827 930987004 93081451 130054697 340373224 154902943 480140377 485773212 958652123 245528790 260137848 742521355 726391139 400386634 303854811 103643051 761883995 460287558 812433003 236700178 170260363 536541030 84357325 226937455 767705555 310161234 699020494 817717895 21917579 609452520 392835375 928649916 982418884 538117458 824188495 896982445 682044130 775739320 994299465 3067064 618034590 459195751 939249595 384415401 342864064 468089700 563794519 94895089 809208303 25295745 798723676 705621186 539340266 441854785 48076314 956650891 282526138 250366363 719990453 858185907 622225185 152959614 151421790 865894364 495614430 853261191 41530228 525204223 855864356 496238819 840342193 7810993 45465462 699853287 809395583 278901715 755527633 891155905 457242822 235461552 579876907 607730005 443278091 522569737 567858400 813145805 71445695 869813889 977147338 96000936 615887325 406563284 901750064 548539012 580675043 259215780 134964402 703148631 788701942 882742087 631567381 637173792 511527804 900002088 413086987 774438975 34068554 206160831 526848989 151634771 196823742 224501322 429416982 567117141 283196150 622013861 541370771 381701732 124201172 135872809 499168798 473917414 33512355 765369616 338368870 370010325 645447893 240528080 259956923 323090462 119205920 70940355 877304815 700417522 850414009 854678827 940329098 805763770 493306578 915568023 548477587 941209695 885178145 639919538 189829319 34176479 905008606 868047166 96278442 542433530 836012024 890308667 447090165 897884636 353910888 737111098 335622376 770321344 261025816 373729521 966564955 910036717 316672479 450670757 679762545 259075415 497185820 391793857 424618225 135883643 950392501 831658442 574913273 728284421 112706862 808443937 149212158 835052287 542399193 520184988 131065507 986632980 106056770 519753594 477550315 60110243 208906413 501963483 291847870 815370528 461981226 909581433 722351503 787862250 146258081 743657330 707412431 230288062 193874698 683697725 640332525 289050781 376876052 803773359 140808598 53268058 44666621 755601980 517385681 601039035 480684415 835855775 763749348 425610518 67329694 839522152 700148881 640164717 169562439 510164011 302215734 779513098 552339956 594940973 653233663 303893628 95714450 592848289 821274607 69448471 672305381 665949637 687588650 844670491 471599017 967275503 100589339 220179055 480476247 97448605 931540902 827870212 392658807 405715460 350162664 269733140 818601606 649288165 592983919 57512594 68603539 426714709 766247239 56671016 425152571 821156916 211729009 995653726 759311288 345309997 158709901 694944586 104796674 413027856 732820095 423131632 979548552 378636796 881473434 510633898 239678842 974413525 231255157 329111358 561666677 144580771 22739909 579960707 648166851 142274097 29210655 451699796 644775137 4606520 43583838 174509107 268377090 456337025 319430723 367671400 124076103 949024521 931841550 289460475 698003869 604251209 230554022 29087960 940840788 282323814 166032058 648239266 679308538 785020951 133704106 750409896 343320898 600397095 221454013 336657746 689605955 851038426 400356183 537040444 94464071 344398889 397579844 350188268 43672850 535251982 281798218 485338373 843393812 706524524 79960927 354714405 739178838 203701414 930247633 633398116 425318175 51938941 678520735 149954203 501453489 869849687 873202014 219964418 705778965 508006062 668686606 71392687 793114604 862833791 63432868 599789280 965243883 238788107 653390309 21886079 64442186 165018114 746763828 877642226 531400564 121869770 572838412 787648599 303667721 924607489 953451694 54977315 423387040 64022765 306034281 938058448 198349710 436405108 850944740 932118527 852255142 161714970 995295855 426508226 458466628 643359445 232149106 494404239 49812597 256285392 606854622 964104203 795115783 174631038 275078034 869284659 107971224 5334091 290120732 363689053 286225891 673343640 636989852 522919633 270927515 843642892 465338505 535269582 826617753 722589916 812317433 322866089 694072433 424416800 110331762 216214919 98917703 92045799 421630431 145440479 711178426 591098813 728998105 951950243 414477812 505916363 429809412 769603821 102392346 45637995 501629395 235728667 364149939 328966125 683152216 619154951 943257921 173551261 802550384 943039527 166189748 679961513 724696894 888302717 492164913 930699601 902836350 841635563 564089674 389102210 493528332 231134665 726423292 66670624 283904052 669208110 417497746 599276142 270368370 460195721 977795934 467002885 243053021 989688448 30740870 246756043 504798532 744136901 57717337 212068376 246330177 469479841 260884754 818685447 961299654 981946720 387906710 700783695 434909354 712812119 109440761 935457126 905693598 831111760 882379457 120652495 449775744 986151647 225072347 634633038 912088158 36308701 409680865 730750306 747265807 659115883 196037055 604993033 975021148 931137399 149823343 225304473 314557753 984663074 47948108 791109189 139262371 12704356 698377094 850690168 306781165 355179149 324247031 684539266 104388023 14950680 89302456 603997831 484927676 344298818 877888481 214754170 858709054 684136420 482279707 215196384 738765618 600411794 554203120 403398590 279222475 619750685 654749735 111258406 485146967 354678598 752609339 228779600 33192330 546370230 771737947 718740436 720669018 14164562 791043373 424397682 550621268 970779964 40018807 19433269 58584673 911059715 817453280 73110060 215025471 209592176 42050535 296856020 658822660 947021437 260019261 956989248 516307896 273244231 548842658 880928971 118619595 264096916 899894476 203282683 813795683 648494030 851461012 862958332 727566507 138712106 947290396 725494250 749441831 204779650 388898170 4719405 561202228 917857805 75627124 830028925 539920180 425457790 283539046 877643526 81245653 357800822 483694116 867767963 959437546 231043055 44014710 567971858 237424644 401750371 563270104 316084259 633738542 411141291 550948110 145389221 137469005 525097965 493855845 380331993 598221667 810043401 371534130 299175213 711486531 505066893 429099167 480471553 132979658 24379524 625343233 208023775 231946836 322107698 210466492 8766937 959680972 691759108 806914352 366651364 338531523 908433690 569156145 764522169 143849252 61059009 455670708 701896338 205216575 185632515 758839139 672551672 210588461 959824900 531010998 583415771 881607373 233832574 251134575 421761356 77489421 349953375 505085017 503025239 257699201 308454386 463360617 194133112 156209240 68087592 61687310 390050 538860078 97310705 494230035 491227812 771825923 581641990 410776134 916270430 303428255 909704204 697009334 774923047 975721821 35727332 218524655 627691732 77038507 843361278 821203759 398069317 894697869 35032176 248701694 478119448 779698041 143466416 25469939 137188339 126138292 528332006 222256328 297938440 975513381 839702054 252736548 520405946 201716778 861169434 122214338 202968905 654983598 599519466 122277409 519645653 218180919 289131398 56396405 483300437 528372223 7469540 442682961 987546640 680923092 639071611 264661583 464696497 989777422 209227596 529433444 339383604 651287354 106655553 516724776 244948109 949060388 626433995 718824661 84602808 454781211 786423594 828012905 581062132 131112477 259664471 1314812 569846502 352144819 573722677 452207943 657411958 633164180 573677198 190225140 530908818 924708299 71598418 444676717 353500901 984278809 418521479 14730574 882695027 397113563 885344461 819227000 30747763 19053769 240143863 792984409 788958881 15025400 826437873 263797399 860904173 411633937 406253221 174653388 271413586 583085483 6963030 901981499 996809861 951299483 298339166 881819659 333162556 708260959 635446331 507218761 568595664 297646359 462329773 280085399 366465642 806583466 551678277 945072362 205775848 595319360 544595462 359821580 802962077 462741664 638923527 969212132 955316943 760085398 764442655 681198383 905179822 786293209 522869165 188942825 272373419 731334654 397445196 905572257 341867756 703210396 596860723 49273794 510541866 348369851 894043396 444692452 251025195 957077482 823190356 89649164 745221691 974601859 869984512 653605666 344209370 143468697 19682253 206264775 193490051 50080382 366840464 827112213 923579070 785973452 417651890 594080598 217108963 268425544 604163468 800645205 133401178 177048989 667785592 224320523 897399307 110897960 326297881 736447612 125207970 279706981 335940586 801934087 2536903 69871486 729422674 739952619 367562453 999328746 878733539 949945234 922146881 915322985 821103508 684571339 333083636 489537578 904896224 679868234 896049767 663958100 521345065 185886437 610102164 621999781 67313066 872801000 832693280 14020613 590306353 553359379 299513039 19583189 628846780 942650923 115330105 130130040 402680318 513879769 96390642 414173286 886794488 577150973 140687527 412841794 833353887 496621968 876793637 597075259 121355159 58000122 903420970 176402055 344250111 777408954 7576258 656500609 975296367 328880197 607898252 730793517 355426771 933912297 646625967 548100055 294024152 166092123 798100739 380540966 9371689 570599431 196079476 102578887 109742512 614483396 546453789 623129798 629504612 893470902 724019055 638351047 914421620 552626986 84669546 129775382 881275262 459005531 953628718 850010811 21956431 800288170 604243798 63616032 405255801 286853471 522393939 72341072 210619415 979829549 839418026 680904045 783560871 510807531 27719725 715257903 970277978 39457088 159162207 69851411 41270248 670829453 792765891 388334186 265924291 933790968 924144387 677599191 863579044 969024304 620498874 345038484 275288043 490812560 938926034 35347372 908279809 348387073 869924116 652959769 603084696 337549349 83004076 731460193 215973078 37172471 915753286 888277891 427901856 320552249 730583400 457601670 144669280 544711406 209264361 128210067 483660742 51088487 430664116 94586284 912982343 338433798 43420961 504498783 337938182 132103205 8694256 260628460 563963694 232824511 259451381 363650746 332831730 89357797 560869204 195479409 163418165 904631994 473156909 714300796 858145518 808057656 395869515 411661118 367662135 765258055 900224212 278387002 782570446 734572396 32410680 45242550 911943835 38926688 521129468 221047652 488789579 330185901 51267277 913010767 140497646 807849534 26998187 417008607 631653817 307581098 399094654 764396067 988911586 486738185 780372273 414780362 796119297 86011048 81732572 705496603 210296787 829428166 438228202 450191701 611369660 576834459 788931111 330324862 3641552 12535414 394896497 277398383 89717808 651153684 372347389 191893042 393232517 910779374 496827309 912938761 811441518 368835392 101253742 550025966 238672886 375795108 772020917 789371426 961928188 372731535 519433808 650309396 245904123 142658601 993707207 203658464 451237937 287503694 463579825 963870899 426770656 767274506 963866038 184985682 540978455 70259897 883489578 693363607 59526303 358426263 212921370 997713885 843155282 352809748 518750585 578814637 451746286 118420828 984309334 849841191 195552857 588115894 789591689 179001576 844827287 928938987 892026792 793926475 993060392 12392626 618622631 624773531 75127986 55458852 482911829 532711219 119939788 709639658 922063446 303286484 311129421 364834653 406659063 126419374 217755 514583374 707145836 42196836 582008649 6216861 226687928 38403230 335016158 553453359 943397798 652065575 630477151 374129241 182486782 442400508 104648120 537176052 826288009 697446621 839684348 302977134 150484974 970890367 84536175 165231679 593140707 249114810 912985753 450275053 108048184 937096014 816607400 665578982 100318364 898406341 530962099 356630960 697665592 914050875 724476954 464153190 409810962 671916124 528147047 987149318 216466947 897394184 818537511 942283049 11397632 248222587 201009491 571529966 535211934 402456460 526304150 957027107 936167607 170705877 460621582 195872447 330960567 862833092 843346831 942944871 759914426 534620232 227177178 726325227 363595534 427761931 209462905 771624197 282316391 221622577 609837560 741556145 2991070 227407531 905877959 82014919 874286502 143777965 861285144 671980129 605971684 238753063 536221714 272670016 79619806 949775155 290096576 120359664 208179145 518436656 383849521 547845489 905776312 973855874 323411003 417501449 682275153 493240966 774139101 26956258 453351792 454284220 379811344 690045735 268856383 425509504 386536931 41086211 300088880 976394104 819310277 903028490 697617757 239804473 202135424 702430910 56644504 733412703 277799794 980926031 772715403 433404005 513576293 804187789 536610720 83394357 452152733 446648901 179779177 231785389 696937714 124549455 505972562 327933562 305077893 791541955 592191190 670920879 857471264 594761810 123460537 834619512 335770470 505049096 717899788 622859865 687406366 962713778 524689299 885869936 4437109 93058314 202221913 505488774 126118975 961177270 205864832 59690669 531522526 665274778 923042476 79200393 126357737 657510527 578277558 328465916 467126710 982135059 310498846 916253242 800424035 277458898 867102858 774270509 662424117 243898424 952954260 8904398 974702581 162727060 196102030 932749130 660177514 382579771 893352435 635708086 208452531 735094863 935525485 256045478 944440009 324394266 840232316 393980498 53974357 589842144 153111825 545417501 726347281 574995815 811113635 41748326 833270911 410482824 77672112 439376871 251771644 761447635 528908314 276795038 190884245 640319274 344266524 15250631 553122776 695738076 809154879 899996107 30674148 494120118 77229692 383595481 95718432 832466971 781367915 982997491 655004342 194919165 785006987 334716290 700407716 526432934 61188865 202779537 477811010 531867977 190869090 959384358 184756345 845215183 285273645 395117624 251423214 392086585 460561699 684404303 234766021 801598653 367701949 212195259 534380388 413840781 275300148 461869276 860347743 819325422 79621599 73915012 331303189 897134653 258243846 967558667 400413995 464620983 185528093 498708952 811926908 53291686 368897169 541946330 861247546 35558186 946356401 222144389 887910915 102175400 604039283 977087953 296165319 809100804 390465320 904918498 334080885 570543881 99584375 973210255 236600021 215575165 632137382 387848748 315427475 853148992 952459921 481223220 557322763 556558194 505124115 894108909 121813438 455276946 114908625 565985209 436680335 94394899 429780096 365655178 143470558 178778218 679486599 500018268 363042434 606963810 523533037 86770066 729020231 589325910 784901765 979554233 735292132 503565301 916183991 378411365 3891697 153850975 347833517 304889965 571247990 152011335 693437182 714616991 704128659 136071023 638266961 173327612 597575714 537471412 336787453 999015005 89370634 512461560 951756661 412499145 303898239 606166575 75747098 735141813 260634254 644651888 736162200 851409229 93961475 73674527 267356278 73356001 370701576 331368429 588455823 50787806 443707266 552274873 409002759 841333837 287835533 924875485 177454495 493429073 10641698 983715845 811467605 344630757 259278226 392059483 153710842 466034172 593729399 169951497 998773512 717432428 133935936 650725141 820317645 416914272 663987144 431040005 148466966 796887227 961354380 298495260 898169933 773844056 343511467 668059087 45935466 48926163 231636076 306815932 409739075 507690379 98755372 431868112 110456915 899974177 484318914 707261417 8351769 60784527 341669816 994519119 72287857 806579324 618527534 221875240 557352376 825361912 543198943 275411668 787332076 464389809 785257776 381919465 940467534 628346967 346050138 714287949 816350034 340843646 290271444 30298299 706983957 303429189 572933871 983701796 32604949 506105614 615157783 130133370 138675425 537022639 779465878 494521744 636995701 298528469 62153399 759183314 37608726 291518628 372830800 741308360 85497149 964675750 831318257 618506672 651826288 783040748 547916994 198591205 917285000 26672075 83809129 439503307 692840883 855428877 576435843 394230138 730134734 630599305 64757121 401284115 545447818 24154078 945891039 95357034 837083814 376731157 588536721 813329159 992379623 854253994 383881150 12644956 89891836 257793319 401625186 180728850 641539688 43081995 298790346 560062158 580160421 457359881 415316807 677562071 564346180 610180933 563562124 118126569 370439413 406159882 269969242 603027342 151621945 878634882 597221129 771569658 473965517 86529073 305146811 477886215 594247141 160762870 391781742 327989542 275549808 802292631 291290060 831228759 219703343 481381614 528424370 375882186 275817272 431673411 947903977 3296027 985003309 383465888 288238255 882616569 313644537 275051200 552810363 349257595 204847790 40385979 189770663 848072747 511261331 656787437 635553407 549298317 646167110 260398072 667806042 383361653 141068428 296600610 623235542 730545689 299474077 490531985 940107442 677621658 226975144 993081300 248694861 510323460 195356322 895699818 232937992 123262547 398561052 278212206 304031193 787004897 308199734 510207910 12878771 233612235 903454954 533587765 503007202 974279923 368650399 416667620 866178932 124892262 144454254 859323360 320835429 117381822 716780908 489233349 431498920 94018997 282262022 363065758 419595505 345225575 192513489 593573920 595730028 627894386 567895298 182551623 562124994 518996388 291529818 644618592 812494902 185330685 685865092 202986823 676916855 856354898 828049647 963332107 461183141 911293462 658336259 329070817 767544377 117988893 927173728 112535129 833397147 166519926 550197522 873945863 626819590 801753212 423574563 990946114 886816738 121871244 245722842 513035445 789573202 645448309 443624957 623630091 959387045 246034188 743016493 602557869 69902358 935225633 886051465 619947735 431945454 497112328 870326404 626848910 103351941 734164363 727829983 977198801 928855200 627152489 454363692 199074862 113714742 597462985 462712019 290552169 436980357 18131257 950396527 120386290 734477640 216322965 887624061 523391717 837845639 543738059 601980012 196627746 74667376 907105589 187109521 424343101 75497207 828153195 166986835 338889740 797392501 761440313 291429471 273666479 28549031 74699943 207747983 625352203 152628154 377732988 860504509 136112199 945636237 449931154 700366396 660243372 418387058 300183943 544097599 584406948 903613829 668651661 718825439 180809110 773620146 267281045 179351804 238989837 804374317 112390378 187505063 612455702 40222407 578626198 344045128 879778203 705543621 506974901 299433396 528245414 229200334 461932375 273463715 789393395 723121265 608418343 346473043 311611877 321439224 399451142 579284480 916612756 347706398 195948964 496195444 542663583 531949013 908288669 548109917 506474828 785116582 907235007 563216077 150628165 83986966 455307662 664169077 911479671 930103737 396097410 979525489 599150850 260459841 558556012 8135653 944617637 714421683 998083737 48775035 556698716 727427178 162875112 767643935 130622431 368595049 52215822 434467945 656298034 649331330 13881373 678479412 215744697 237732190 838688572 967755231 633181620 997405221 37371989 239705657 296369648 311156146 943303520 44891296 44100222 799730984 425847134 325032464 610339468 412936434 194453613 649743640 928031517 462447577 549027035 268659295 513229611 61462260 89563637 39341350 995077871 819576341 293710066 377592963 236357304 920317617 356764176 483379185 206619292 545260109 518783736 734510724 655569044 166929539 539849824 230028479 221401259 444250134 362730264 271860264 379070381 616761083 725076407 751325666 537375064 736957744 22025233 598204873 32546515 102058221 278329664 20121859 122507868 73117260 977230634 804313569 108474143 354986894 849257327 240509043 150095641 953604646 872882896 850591592 957067056 225715986 113572758 82143013 256147883 498758450 605504347 316925812 755926568 355119631 420442050 197926947 786746087 21937653 778691827 449442839 565464328 550809480 187266741 842941571 700980713 265458363 455555410 2003882 157680545 763663313 403331292 33791405 190817740 560971499 975113731 487755889 626932141 797405507 133000336 603518552 702054380 66238337 470782094 277359113 484040639 700645483 630538854 670671307 454595445 632524636 807993899 352138800 852539258 359801335 545371038 460760935 620188440 66261268 442823805 47470240 733954590 310378554 938634272 744586871 393820530 738017338 116712474 248192909 464554175 200406415 907041044 482786472 136287078 209849335 307602505 94599331 248224529 346357031 912009746 874456823 56272347 397357970 880393224 57927513 223452943 594192633 887027463 82905346 506694415 282829176 179881574 99658391 231571581 582131340 184287051 684005875 418865934 786594432 225395977 886873524 477576016 887118023 683137469 583382626 956493231 247044483 270481335 223764923 529953986 161229409 485131479 63606402 328231504 417658681 66318953 387908501 352461121 876378393 556530725 35075058 580968868 655046814 903560236 834305838 236630717 15395806 654029336 43385344 553170235 482177414 817504911 946033018 556393254 31184876 884659001 709877272 725694045 963133722 889423171 571336052 570588324 54286281 724338913 533980713 671402407 382522617 343418125 294307343 344116543 908339272 205606413 570204987 703624211 2269851 138925621 957036453 557618616 816786729 191488537 443909600 444561177 230462360 928992734 544515352 595551568 13375099 725959416 53775249 745337515 181922401 920175326 553937151 436112239 929570764 106124677 595429429 979518693 427680614 494780427 640887455 429479484 675706919 252854364 634202724 634134488 83543228 57264062 244491380 777677792 864064708 366916910 478017893 978957964 788455743 258465789 548090002 309937745 773962 466241223 957075475 89552166 576918992 347858474 223670601 720698592 13006672 227892065 280612804 263589711 910519215 563576967 364524802 429937460 660396014 397859971 418159118 527904961 745869468 241248842 980060381 965307016 522361656 391662594 404562530 391301316 385370597 292691620 714246306 882501062 16124237 288013175 893622346 766339521 428629942 857044332 275577742 313451140 132911167 943002208 127249288 511220824 746333580 96231497 640733634 321125312 867164320 151939708 387451286 224579684 643852503 291867178 660888230 517544469 548943602 582650887 713633434 628868578 359863038 157459527 510081423 179980377 288766616 31546620 362742275 957402845 716131188 266636085 923699115 68919705 745762449 514459558 591319117 320845659 10910140 826923976 208037388 373661831 801773904 933847028 621460935 415125325 851739016 16373445 96290798 363840156 487649369 111312415 210588850 9695134 969735209 104866031 722682348 552757864 936937607 508565898 591247692 141567418 541941397 686410557 699756497 356202923 171249689 394610881 661487395 814255770 511873883 72647085 135330091 231704615 668574147 926008697 367066514 868863665 645490563 854908379 120662458 689034089 778519598 688168923 301003471 819524543 577069958 612211421 15179861 186639251 60523116 969790453 535273830 677336256 196180709 129920400 370915816 488722651 615069803 797945695 418545400 247041719 546895566 321756140 827353493 13305312 41829135 227602636 95724443 978525303 127788822 498143975 402328893 159216730 375448183 343808450 571804427 8498567 833829263 378242306 916526767 527950651 343601009 930431555 559797797 676257742 667639124 241953025 626806683 271915709 151353802 639441579 107814977 38888036 983645902 788312049 299825888 840531045 402313734 39848938 346677742 25508867 941149338 823889927 289594591 752564321 598877047 981532415 479205516 24688046 383970429 506374819 50575741 490369142 660290577 73655044 991762578 213176681 898649834 210545953 340158812 80452067 291038932 590041738 166612346 499444725 103348720 883947014 986246752 169219101 822462698 286118712 578637158 407643886 776323812 421636485 184820551 277436648 274772613 747405630 405582724 453138818 258918823 71947179 260032321 540112456 448082293 123420406 140545447 972264166 656821526 165071472 861433899 212433709 380924059 918712927 313572486 420682187 522164655 244231242 758198401 404760611 996898782 786718952 114596800 279375152 987143854 75958252 685880421 279797704 689301401 291680161 899422515 337878734 862165169 210282297 852959507 999374632 638900777 160275019 130831110 293873513 855940806 626345348 576034166 185288960 362388443 227877243 264607647 361672216 483536314 584025393 723992346 940146265 666851431 994729840 887053662 659861723 272884812 80404096 732478526 15882842 823448300 124201086 68973614 655508139 727667446 708435351 122365960 876796871 766455545 818036733 800470067 346408449 354128665 658711160 422082823 646681268 23727387 572118190 601964453 192021878 905754326 934980729 265700055 389829572 960334648 833243820 271816867 39643899 730811300 142194656 398890469 107245056 433073024 691809672 716502461 92218966 665539844 355304748 120317198 986811706 52246600 53152255 460428717 88343960 133037002 316111474 158803012 269910471 446141201 237529702 402463454 156419340 296031444 424042098 985186126 624379870 477855023 478659977 138165739 587584013 388118360 989302251 688087933 305398759 33590760 209821231 837703427 325406264 936229698 344207228 823178787 775568354 978394566 184479298 135948798 178961017 186097970 379538748 835494146 962332912 666415217 296212872 252934115 679842079 274370680 614974131 391528827 58092689 607724499 205305141 7139372 999160130 251319175 274255725 849486333 424857963 871576038 858211761 94609843 76816227 673839412 662031169 574571888 157299966 803344670 555282697 154666741 824186579 843101944 112422566 969158496 531330256 176347132 525712716 197464680 343067076 688139942 145644019 897116782 577424076 258757513 317402838 405463489 183085647 724893927 325191477 611861513 490514987 582835516 598056126 839386655 256307980 316743976 177266545 151559956 185171778 403014133 415495378 449067365 156742410 622291727 885352932 609663730 874402156 221017178 525810192 77911310 471138263 178004740 287128721 204366029 914545371 396804664 694520356 352014320 568873609 825898683 749264086 992639974 264836007 264742037 653008327 89565777 591237980 979563285 991180216 111047291 174658873 959864980 915199349 948024666 545718328 115791646 153745728 493793082 492783992 527411627 6050000 547483373 409488313 950224320 654477527 79959316 564178992 942425023 194328413 298587233 501420480 434864026 944104874 687220459 644508779 903715313 713064649 396631604 60492998 450803471 917449394 745365523 336836912 105584929 790337502 361296842 425200508 256215214 221804327 130509093 194752566 529846169 702846039 927590250 396615119 106208640 363787318 763615972 128602077 982582016 271168463 644100421 519694353 7347995 480038858 315247090 128745475 814154048 753187762 332733208 319593371 336851658 14137941 428604803 604788362 352567661 572358890 868933220 502746149 917082694 252687416 224642767 392578745 441116623 487222028 88583480 363071811 308892597 902265582 522817276 516780163 427641120 433301554 52709037 551606169 949128669 354912386 675062298 111267680 917580973 985532856 582396169 925043217 862202211 538507289 976564157 409050147 594007127 299005864 49681746 140956617 979674535 951082746 828693244 323191418 406467326 988663038 617412278 119645092 580677865 834109746 747825558 776227804 575879858 591196611 540280625 864582297 114568315 959529435 11336139 962344442 1426118 12252520 859963573 311582075 64363683 812518238 253829751 710636106 150389012 22284857 802867896 256999559 421414622 205486057 924660558 479483085 332928957 992323583 782314285 497204278 662822911 305988973 825797357 970042632 359834546 918222779 246610209 891049296 202830440 11898024 48487281 714339112 210599119 440269615 189397058 401902857 935395328 609297189 909034108 532102864 507065768 18826196 424262596 124790634 246053635 251263703 137941337 777874962 855627262 215161416 970653119 224947512 857530835 314132712 259242888 212561715 893626011 948454265 85607403 808626251 401430765 827869404 663910678 307815911 431255945 835548813 297052396 926930106 176980350 791313504 780594380 508381606 759575546 923584862 63388915 103677740 104218473 166705745 972614252 283633542 201808160 773564915 793702231 361755825 391012512 288760937 588247846 666601611 785273027 838571787 142848189 500970267 299306800 236029851 558894429 111436617 825384423 403681543 9288299 689928905 908417945 940905800 662761049 68848659 659679181 14514369 104536332 551160245 179962273 293839481 508696903 312145851 426911332 668152916 782739122 19261106 674273292 748499700 156676978 158992900 319974841 987545957 978935327 103543080 565509294 89173181 695274655 510026625 286227533 484819950 492818168 951640557 431872818 873160348 384120309 994089797 980468977 803291851 182817417 406704308 397350332 462944236 697471866 452675009 166552167 186667292 932210036 363174949 432876035 12271807 263657196 900306374 658734355 923185096 883413543 741443547 102791916 92993677 988757826 645661366 617397646 305280453 209086534 658083801 563568318 517404266 171745111 23210698 507656857 610367388 755457322 272861120 991683484 582228929 175125187 682514613 204756695 577845336 220872615 502608031 376261119 109586605 740669251 686286653 218921840 716293399 249606915 934891478 701502175 660519166 713634304 898993196 5145696 740845884 836858484 68314502 640467227 328674569 259814368 435334442 732320426 765495324 822543959 46846714 193724376 406874407 733441620 600361489 307251392 18435867 979295484 61708993 928458506 88016009 812771831 975865629 123516352 437892861 344194889 793495917 343852021 867302541 193202848 938128300 187902213 989043064 589917282 957359140 901853019 708525549 693013547 396302078 171331534 812200640 367340032 127018644 747281025 329381361 263395973 435940562 920901649 289118395 871646399 218770590 563255225 703352934 825430442 227924317 730075904 786831912 814484975 560423436 25339358 858484289 141591112 894584228 146861932 96065441 600905656 397316075 832021087 162384875 152301374 926969690 383065172 197059034 485284841 899364098 87781444 509715012 271592028 86893375 319988717 783048532 555314998 619430899 15523799 185695009 934956973 617925505 720204809 610206906 311768552 165315984 117022278 430478272 399165158 23005266 454670115 463008978 919344244 602611493 64866651 666380384 55212054 949625283 173114609 436954386 779248517 714342800 664972350 804410208 19726736 320394402 393446730 891195035 148994410 920714300 611045263 600036268 206245630 966135401 286202794 762019902 208991237 232087843 351392962 725160531 812736198 308800827 228096024 806719119 160721669 397519794 261088294 737177925 993955713 724702841 371434034 649555285 90156481 255876485 89501015 776087110 461677554 644340030 487915233 876027147 609775041 492019442 19220608 473084366 774759123 979745477 759388952 401263554 998621884 120141284 964550570 326500598 250496934 904123273 283534887 541468175 147112623 975071365 429449240 956396536 980068578 465115007 202739344 53607499 370505293 847646591 524326232 922323350 558633713 982522767 608164238 719668591 454917677 28435443 692344371 833500366 685704660 375047510 559943644 66500468 109691186 13449366 69715657 886566135 862881762 125435765 673301977 476834155 483271297 36782445 899236211 410892787 818524433 968075683 115080930 883743811 378169191 480932566 831070266 736329266 486861146 908267354 835278416 13850453 550421556 273482544 164742957 427996813 515949573 983725727 933185302 90187900 391184454 733128237 630661150 432813212 231713970 346736060 368462288 299723996 149059479 463941577 502262655 687610148 543719318 450570631 774657921 295532034 604839048 166516912 605617094 104891060 408747864 100610522 51281700 805744894 293895281 462204821 655824823 993755883 132781427 784912396 523413277 295986510 97800738 497035953 787033466 599788727 412131753 627416731 913343619 88431239 918836688 179269365 473262903 33769951 158627586 146556607 360311226 43527904 568262679 559152912 29762524 554347252 58574944 105387446 466549861 22775475 503445647 945231065 817879632 441576106 233264171 877961807 424719816 724545040 985489525 670868206 116140170 839265645 193720759 972485600 717193495 342335059 713664531 389446439 108961087 416282032 603449110 903213972 662053400 350137633 355477531 991434319 490004036 580310927 595642468 512146926 302655555 934496413 992450425 319472599 487748536 218857566 344307556 197402198 438841192 96781708 350067603 838962951 159213993 249818756 818117598 767182533 472678869 164467601 481996113 71995662 309213574 147464653 388868943 671037111 431220819 418556987 735731020 26657311 82164484 348521663 261285661 256935081 958788804 283450196 535421016 678170647 616144309 931176797 326707235 960926598 89671341 994412063 156770044 362526324 382936436 944423937 944913151 571539001 991648871 288632396 355112728 431052152 104044167 668527189 362293028 928691295 315768641 543898765 904041987 119497802 327213060 325344206 649321177 420406014 877780532 530710320 711178108 66778564 334723940 945955753 863098141 461447372 313148678 467293036 948777577 400093582 229731745 728568736 686786365 788605399 885712884 351217852 53975992 448345767 345463773 729729209 778548578 851841515 690006890 817264146 582045339 612170075 77161157 441380540 804770252 297328255 315409191 532839426 848583118 233610498 778699437 363260050 5760150 948982871 129204723 555156912 910173922 922899067 698374074 328926798 39178548 883303695 609761182 168942237 79884718 621845788 797269419 994551772 766910229 60013669 373474415 4410678 908567508 636001279 34761154 962454779 272955030 181861207 56976669 654114444 908202031 394676868 504904856 835051461 838079881 500793870 504331241 504372592 356588509 555865545 253968490 172751553 137069963 712807405 277878556 162633792 993805017 540826484 64830969 514061818 91810499 884164292 663100541 949568498 18577011 141072364 490177954 9247343 440363025 812963376 132257372 304365106 417408745 107267806 337940616 176081046 597008006 921502454 759459136 197703206 694556872 373984443 479113570 759377663 936709605 14292797 134967239 802756285 966684548 797678033 743112447 908970770 837144361 67985385 623924484 473813290 483397203 457795557 349868874 303996212 640286459 280570019 396063401 457133596 894062066 137502190 230862451 640006608 897188235 776848164 211221551 371291673 526730675 259089610 782425633 406819936 178150143 312216026 883318772 658764881 634058529 554227922 239366070 323759531 672440669 475655357 730519504 355439894 722694028 297679391 129501753 436064938 976538536 205222357 338004792 877481200 450853239 701422642 414910248 131230352 935079202 75572771 16835930 301478378 68692029 218534217 343740484 49148861 138737229 169801531 648050219 108533300 667021125 656594634 465011872 984066455 464464136 799241310 753587581 54808043 806750652 242762039 275300507 397352981 127773612 159147460 781087841 853576097 962751868 666169272 391063078 863254209 430984372 605335030 55806763 666003631 955922503 778452960 118435467 662042548 842598332 738484281 84562132 77221987 971793798 112939277 962238480 599444457 135059546 307741711 888871330 301234102 207579407 168091652 157313005 218517465 111523006 120283191 76063149 239911504 459880028 855543449 88730399 281727675 183929760 505069448 792428021 186991183 148540709 216624785 505525625 934978826 672469695 604226121 457836577 315224074 900540754 583240998 862599945 814546834 270447125 377950765 164023429 915093303 55759185 755744889 73192996 700359652 496296897 217768231 720544090 839588066 770898395 21487764 390323155 650332520 71354063 604699266 836634472 768447740 88976387 475768654 234572234 363832175 562523361 933822286 609892503 400122462 426269788 910037704 203239999 249802611 73953067 733871156 837934346 475315 882662270 878052151 221527333 603147068 372468910 56722203 916411963 481607989 916316244 987594702 664792331 252003140 518854742 419651541 114635390 20455992 789410701 548565148 844110297 431006971 631622800 650692721 361321964 74527746 112955448 323406526 288388736 704772697 586567769 677125778 166180927 491235547 554727446 315400807 966066789 883663261 354568911 404365253 102430621 397826192
|