393220 1002399967 483894218
65260459 756265511 256091771 412708871 13933661 411778317 237851494 78080691 601441383 931072361 374957695 590910347 793591196 299044352 193914419 914449679 801972219 324259028 627326711 301792611 792097768 162786220 241801887 34176757 9706963 816041239 443715982 999021844 585775767 917760550 931318381 966297878 891417153 216299609 742488173 951576524 735541156 962396391 725474937 352729867 408667057 902322415 431322338 331382508 561616339 105417136 421024377 532845921 222701236 329285566 145157877 79644744 308572288 136050826 14982668 161786194 910608619 75184595 711188697 249351962 598316684 351304564 891194472 621584748 294118035 982072296 308100431 796370070 783493823 93837095 391696468 317294221 721405485 882268797 288431858 36066457 717702641 744916939 384046156 149803138 614817970 822221617 672641955 683235120 45378223 119737711 88827977 385331229 398969412 78637534 17126480 618917860 739626215 251375608 795161555 564499287 552221454 208830921 317530492 411569262 146601201 124934247 622052144 650354805 954415349 493637034 399845440 391381136 910201032 536131252 854745748 88330049 850241097 297779423 212080283 841065961 775793627 594406622 178692571 424104161 12202429 747550508 631287692 676775269 742497330 890135804 217352748 408342977 421757883 437863137 242609683 143309904 981994418 656116701 91895400 659188418 20590813 292838648 886260876 558726749 906907101 889647915 361109043 789677619 888748123 501358559 157043037 620795656 338182795 892723608 69303616 639276127 289585746 187129034 288303167 126279999 885288922 914854375 801225986 553695335 181120402 728075467 282164859 864598265 162100811 854752105 354185222 8635650 438414025 801052040 228906739 67443453 759637513 885276904 575503467 951075693 785269046 977716573 546545796 268197745 33838768 667173565 643307530 293194590 963361486 918976603 436010325 994381380 280449465 381690087 404658269 946097572 464685814 34013088 44399371 198780404 894166012 256115964 480563933 971321110 2827560 175041030 883933270 80135388 622479018 520333403 539071735 193914151 663052339 718255348 743543787 719018276 248432580 532083982 663968399 799532469 421792284 585887710 274076690 918988206 254519767 606400157 210253077 844993807 733030175 789942394 956920028 529401835 552468050 922466952 987011292 64661817 433199038 581034772 845045097 929543919 303442084 539890879 594175999 733341341 252600041 105496456 694290021 72649122 848591994 375548607 71811495 667204673 974984609 881263813 219020177 355106464 893591527 12172030 744517728 15078524 60698337 596587638 349255513 892321208 990643453 684719038 227579349 133103928 207071629 537199098 166377272 168759130 960113256 326023468 180090615 284512119 827654787 90312948 446434388 271774416 672342959 745863196 878223772 279915886 886753526 399471067 302908536 771995641 360296508 194456686 371581793 792643078 936919388 684379263 90061318 202834965 595083771 40339690 960856854 308594006 588084807 282592034 190929983 882853538 253402938 308082662 831550029 514746598 142657699 782958183 463047435 527964246 894371915 800812725 245351436 860532399 142566863 280356747 167181393 37867675 64994793 94270261 331425380 759691930 568171599 469010535 101662511 85055057 54982691 624081671 831903080 534693242 515244340 537736855 63206082 898392110 424779095 176217151 447751254 502609211 903902685 485856989 374516376 402367618 393357938 107181548 27448819 39690787 767578443 814036073 314985414 740493272 470818264 13028612 370341997 152272334 617468347 859908439 904315663 181555399 887689652 242405492 273577927 858719405 843962409 579846710 953261586 808689293 916856232 371831328 912109097 228539492 240726066 134754310 387519731 520748669 365591607 655004243 456811868 21628351 286469743 51942394 400224823 594340881 318215137 656596015 514487270 265899860 502508620 172674883 479983346 666904954 120050914 650053215 947900477 700548836 566620199 908040900 193518797 28592785 548013978 903108882 67465782 444673778 875745949 180601937 359439608 932839017 778873796 23575342 580148568 672354063 556296325 936868004 138064793 958190755 683184885 822391886 305937958 512980409 915676398 296910392 279783760 280015841 496282778 763311731 224032288 343190364 852589337 883724082 915772410 36480143 202573507 472187980 27838521 240424329 494749614 184943855 258852811 508770032 213977055 649891524 866877707 84865478 34122228 383174137 702586284 115918513 686488472 250690747 20966687 103626418 391319592 983957535 330542358 943638856 474634997 519844107 577418062 888873720 598129571 593919057 445874130 27072568 818383060 420489183 744370238 454622352 280720259 115143649 435803218 313333577 473826372 742754453 931183238 153956862 919353249 762055332 342469797 184149424 965150003 435474797 92334641 71694643 814436532 677217749 233013540 126812957 692616941 495287159 2022935 10831000 15143289 824003718 718512279 565500022 248132122 839442989 638708838 7365498 501594185 947110317 105976637 221631018 952242074 295294739 626878336 593890376 926290663 117858569 824560922 35994305 340384010 934476461 27482827 16893557 875853718 309775489 988764937 848943534 601889259 49966510 682860101 461015120 517090047 932902969 483743743 19312398 822274292 770918079 343689549 61849188 349607632 120905319 488489438 899650801 564981358 796744501 456445034 472459059 528186443 142249572 383873568 426812677 541486274 755895247 322022361 294542826 731919375 514944321 534382230 307931759 777023139 46418809 766000129 726333591 378070640 963596944 176928293 690861624 510717717 947422250 646988410 117221374 93246507 211394834 770284537 548566070 563980746 523765875 369016404 135033782 24151874 4916018 370962468 195246509 815056267 745976478 858578183 167930635 803993863 278460010 737793550 561323867 468280751 783742055 684812052 280712961 806337752 715924620 562705387 569413838 692757419 773413435 618866317 438395556 388144355 472907232 611142791 534715667 48109050 631627232 105935522 654995870 395166868 668853162 41794730 111000113 470976484 90332870 533302506 394803676 475259260 233907915 933030779 444253237 922929691 490145439 291668927 222204492 127177599 68958964 596720754 630428967 595949210 239540262 282246673 560721105 790755246 128122882 869852045 604206495 115170234 556387559 402626165 622542042 138900849 269476565 84302277 850320011 239120008 52429625 776041684 852560584 461107392 304715831 441421911 237045919 142127157 827353449 833723733 699554409 163749413 353377172 15661509 473590379 149258038 231878569 499110184 511117203 968573391 954852986 679134004 293985157 623713949 226269145 118249836 164305860 737381351 578656694 471096138 402404644 36720630 477706197 211204571 273025919 370259530 607118231 381444236 275305917 756093563 416233170 260567256 308472196 513582211 835759542 98654993 450738970 109527705 460001693 214757495 407545745 600708869 754145508 516295547 295675855 848590871 487004662 919907858 866973953 43678802 266390705 651833122 859695042 101790393 923658933 973421504 410835333 446288136 881407838 570459386 525932385 280598100 795642302 914544434 77829028 958200522 373769082 87005752 664599649 158797403 941616444 400927325 991668321 384791572 650948319 343997457 31365725 671878533 512568774 598505285 993041735 878011598 961701880 872720358 854314690 234861084 781112350 68315537 762239023 717582801 574620530 766486185 154670404 187397481 215736843 403295642 650058788 297530779 278006287 907406609 314813585 853595036 999929108 643695203 435647573 453454551 332643192 731210430 87951619 346826995 755286853 798709176 236071161 432210366 443561867 994340086 344756005 891053454 566711802 377435254 584787300 393037046 569200929 829154791 825886829 726369322 945791868 845284660 563477970 840570937 51012219 536115949 481108799 598035073 384010513 947485955 819837973 819249040 733490277 278165576 854957009 567499227 573581025 676555815 952509429 307529725 668914309 761797931 45498018 122454561 5221029 483386646 747216466 44253632 860113529 420247964 874801311 421499945 973741414 186602804 125743109 680605211 220275087 42185081 876527177 1000092208 12083487 388291896 274869347 450278355 839989151 183032677 372878123 424403496 579912287 988206431 382018124 586116007 237220033 122870240 691611401 832298937 510546378 949882984 770808431 170707566 560860648 500825789 563083738 605879996 115245641 792148924 951308170 655136097 807943281 646380933 915773750 914341557 215846471 992837025 448095556 778970152 295551353 32540223 644723466 190357368 423758306 226704229 42500259 394931419 419798970 936894226 767359166 161732754 475509380 232461460 375373177 40568237 833148921 475353687 797441307 379195565 603486712 336444301 83878812 226518975 214823846 931687145 236313646 853057929 326032642 458516062 164737414 90564004 8567176 732131186 251797566 854617938 548213974 747370165 72205656 922877453 749790140 585646600 854077454 165390510 282001267 149727312 831456311 233328679 878177055 448854386 1000180557 685687123 947478466 296278497 500163782 383406276 242802644 44985260 847264009 87614353 935425191 692168370 574128879 878129835 898220860 782557637 632910465 250171719 200957236 885439383 543402043 84904141 243913258 760128675 199678125 479723921 461267731 194534215 254997666 295383709 454527820 424341479 464562469 74777156 690865503 335678107 117091992 327821329 585848051 902400494 213179366 910468583 866961838 579280173 483025825 89952159 741522152 362944176 475193142 336894358 146576978 965567120 10118383 527819112 98589291 443643194 855437884 180674641 57065789 426902213 96235269 440680522 8235272 504574998 294550751 923748770 493612981 327970095 54843271 123895758 974263174 964875258 241868219 893141326 35683193 663148745 111397081 998323910 408971099 662364668 516590485 417440805 841474707 976441019 243099249 393914202 400352879 992522534 777186208 148951466 205973937 936264635 983413146 110819784 644647781 822619102 342653982 413000267 582546762 442817008 283328954 528215818 485549779 13116505 640586355 244453390 789044878 59607142 769854709 384053854 959830115 963813244 687379500 322089231 96565725 974742608 90855231 478660227 938251158 908641868 884562954 115548916 553457672 380583676 624687090 765212729 673681981 969469360 282839245 210787172 542495657 678391004 537803440 363103438 169336871 174595636 898377026 861277465 404005323 44549210 750224482 586745994 532714663 123383143 153653586 446654565 622049669 910784988 886769067 819594272 422535135 547358546 584547722 380815219 329224440 543278522 261744022 260321370 186639571 783821283 502569630 300216521 855532139 151170210 805532829 111477781 141554377 578438270 342640965 972353346 624760550 130882464 789087916 409811108 928832232 988530279 707456988 656632996 353720207 429218858 887393193 754705625 931649507 787193046 3582352 278785634 216713512 329693033 33987954 741481220 68723452 608027460 129127801 595803045 697389183 235428641 238645175 388832260 335683910 325977196 169184511 348649593 717699156 459102947 801572513 582863322 272004152 120125191 68736705 719748299 318551633 376080902 574771844 66716266 321826046 793931040 593283157 395146522 167054512 402688369 996230833 674208401 595379867 982777086 247804701 557221372 625327053 121131895 368052608 780068165 720535717 172623019 625768564 796395349 176242143 638519537 687894377 632604670 434691044 79988778 123459369 870515611 724745048 458271286 545366135 525276131 947653817 575598401 587779266 639259928 507980074 873489248 906878753 469518274 8282155 725803806 644486656 945838871 589365297 549563472 758060353 143289166 955893002 632041801 154583871 177209314 227958227 147202998 258490600 975649766 121525841 661851683 12869913 475263570 978143510 378521420 253394454 824917180 703584190 43289717 311054891 186573790 974212469 748057272 925295915 530397904 227192009 872689219 816329631 19165104 618079546 275837767 232740654 86677905 999990250 329278944 485097552 744055100 938291958 556812192 759962824 748751278 634473434 429166405 215609710 715263658 203453798 420494151 669607057 68093786 447455839 467394511 31444491 177394062 426094300 441216082 355185311 813167438 422353826 616489159 182046424 157234780 312620912 650030125 12904891 51120262 74276100 62951883 329272617 163022462 719885557 778615293 62567000 382163210 50840571 262287131 647940493 362690031 786309535 730810518 397042725 313283889 338834804 266112945 460447529 175176885 708688039 477942640 359276691 483857277 119787891 51994579 380691002 61126217 337441307 950316634 87439013 100227285 274583956 11249119 120138377 73611649 374844982 293796047 239808673 595054755 671367449 603494625 936273689 854807707 72798930 884877976 65336034 261087775 276964381 407183854 601670628 179212798 692495091 19405023 194211835 180901706 604718003 393687334 29352080 880198606 812220636 486483382 972763687 397146671 920064319 814765492 485489749 376268835 691905778 966669376 413996601 344398737 334678941 319944710 100107599 528169888 181198789 437124751 821774387 913639125 834074922 640137644 517525301 131367286 465493483 998558733 33479999 886008132 584797500 779740244 717960457 739289822 371019855 545081025 137541687 731279481 201235593 692614507 534771587 716027910 272075444 605232750 777062643 600952880 1974639 178718693 714078435 71143268 122462827 634373614 922269372 868235379 77141932 855632539 813709735 173445847 532081443 686373260 836885588 345404140 423251471 96019436 60427092 222042817 904024071 696266923 602212026 852475225 123274375 415489095 414187483 638172675 71465048 364885964 518746890 424247684 369290259 799758705 93022297 148577325 463856208 178276782 340538001 993472467 445142788 673098976 235683018 478994513 474715183 453728052 2842375 685088926 21191143 790076259 811206450 899136905 206775367 354430307 854232365 799273003 595878208 757972963 681541841 938016829 954405037 53750219 475075777 936070584 864846894 201072385 77695138 580643730 454389869 845426909 938416821 484264510 941622497 379121857 798337846 492986303 199048117 495832061 95573683 519355099 993209889 639094444 668340140 734619338 871628222 994756246 748124128 442230044 982369340 201565032 83148519 774432469 637740920 9473033 299680009 379144748 711082456 524324636 209015922 344075083 468355016 861259041 98985927 727294317 363686528 562296552 924557531 667643232 619620716 174787013 204552367 341790001 191703211 123104949 551643794 20912576 816999341 752786549 536573245 810962274 49703535 278557345 598132968 422957658 679592428 140515368 326454803 961911296 574718880 796851756 390194963 912747897 565439946 386885062 728737549 16913398 395080126 27880053 856687652 461646480 707863392 358319235 123903208 434264718 176363616 794470058 511322887 752240585 833994565 343364705 137871893 70461358 162916288 349924131 391976056 335755129 450585075 641110587 61979028 31270715 565946572 119902258 836468221 854861536 412641473 550811006 719105619 364176745 649685019 292577930 48330825 122607322 569945297 956909899 186176886 379231013 8946037 19077277 527936607 420745743 988799386 181617357 674125906 84774289 245655997 241195955 789628257 231881934 52214282 133738949 194897675 862605103 999026583 717273992 804016760 947073418 163516338 697490818 55505058 781893199 871451763 593112437 265909272 512478515 109809750 588721567 333566215 635330268 917322063 453503925 749850434 335972977 446810002 358935895 846371933 385856227 867895616 517334187 769078565 881204848 660652441 421980913 776786058 80069323 625127518 259104349 300527558 832408520 41095992 82316946 948762194 620703820 635121329 381983674 794302473 601853139 492326257 913392831 486202264 247980072 218751570 301273694 658210186 607966250 238701730 616690257 2369348 110545550 748170342 853247995 429351769 241534267 540302027 474027697 858770248 129147053 721156227 805884331 854387169 886515051 895260743 956226521 591981895 126761250 999145743 15853293 868171679 981987588 71262031 103539764 40103157 304335265 773844253 248435923 189929084 436653586 132395737 778262001 546690602 214288198 872642166 477641802 244395062 936608470 216890081 935897383 230108499 866606667 216415176 768659602 542332341 186521978 538918336 500840624 938873925 170533775 150204790 114253561 117988568 781370326 703516141 955181419 70415681 523902631 855993443 231456805 889860144 620777825 798084828 85560609 893997121 929416996 901243964 338672562 477915705 554976258 18649973 863750675 740300205 159841586 685227150 696446054 248915419 682462235 894541950 721624077 417677148 769497788 190931156 357720438 703098995 628443324 149880754 413171624 586477224 287731480 426094868 712131169 774975893 325294169 52622415 925211032 835326513 777745027 922839539 196326753 670974872 597297659 752969205 385472146 213328038 352494947 828912153 892860460 318271743 188717177 132194469 630849337 591687248 301629905 619318529 267727847 44445797 403004378 559543186 984561031 290655354 487333727 374455619 330254631 891552029 995709355 871308661 63129549 336392760 208883493 534152100 716296210 152613772 32884088 680303219 964905859 846873671 54219166 751214123 870823628 878593574 767562471 274801207 710514178 121938202 715843093 821162289 136448930 554063773 503734735 869273990 263232646 164372337 100390269 10925578 814166301 943921523 85821635 537923129 6280050 837766705 453270827 628194209 787492636 96574354 980706846 478700967 447637956 320014436 918447246 72353899 662999692 548169514 266875332 486015968 822619867 121672739 59827939 269674462 331681637 796368319 194258954 913860771 419036790 127251069 513100658 373623400 798296285 483211464 380680608 23468579 736012862 695702167 746101203 131728954 786366478 671733122 439109395 973617792 425078709 138906835 656141418 780421298 297167809 409136243 536482628 908438120 904647198 984825627 871555738 743351777 266266130 936197293 267269322 28313294 483264185 155839444 884341215 864000653 530732723 22749772 285099212 982258616 267392395 510771317 971547906 40208031 129485433 355453493 695884639 856192815 455565489 532477880 303952232 860286537 783635107 400440159 107930371 40490077 689383201 419744786 934312329 751966908 866227604 759977073 62494527 616331159 967899464 250471285 87299342 414707914 846519482 127179687 534994019 494592341 815868738 328724902 565911949 182692635 55389521 326394597 387548810 568095565 239636748 773507499 978414126 359759642 796730164 747535304 820080587 208475965 151923651 70056019 967515258 227367133 60483039 514698136 196243508 361986088 440510450 389095104 727006589 979832292 831830716 822873472 21495195 24838903 575840339 444665348 327041535 370250828 621982098 383119565 51114303 37183130 350799557 374526944 709291892 541000387 298982705 150369861 410269785 300342872 230707837 329549207 287432017 14417151 676715999 290248476 771718947 729160798 718366485 629750955 473020947 103028681 24330745 84133939 296515327 727727557 527753920 382718144 261273530 825875081 688722657 531152681 629377581 389122568 953157322 875862490 473571646 897410788 88574419 843657047 376161182 116976230 184480817 920141072 769087486 306016187 61380990 695275345 490995866 281932996 927990966 834940234 924376762 840314955 584206085 355271730 477053790 757666152 249202047 216928836 767781809 502123729 417603375 565970404 747913222 510762268 1002047591 659567480 622957779 74199315 951900753 907289144 1002242013 308914025 884117116 2839737 339304719 739355790 540520084 282684306 415849607 704150311 325983221 58603722 902878686 219026112 655978686 661112664 344912478 693083086 918064546 933788036 869439153 660744085 249442737 563079053 234739391 848122324 736116920 819073276 146081025 33874785 672650977 366838574 909381651 478868696 820310776 75648264 549600652 288939110 132205618 925954925 335034346 49157714 222680580 439360469 500224225 86870575 489466018 36046882 258966032 944829721 25969453 475518546 697035086 138098522 570264077 901422932 707771641 528709297 967800163 107020774 556151850 56768058 190181841 254238160 507734268 106743982 823516630 998754234 795006325 490225879 439576194 177956053 58603933 354632531 373020131 653584007 859584892 10521057 530512871 265679466 3380839 569633924 641468864 633961866 324772382 703066865 761522889 639361199 664983287 593281649 625856375 488504475 604691429 903690458 666518035 984220879 298457605 515068456 767723297 973157976 733475109 666212229 171796210 800806791 432647648 834105767 333583818 104280040 879111619 839887011 272078200 605500163 888605903 542669428 579129129 14170785 637245321 645634897 459585409 861876836 730434007 929450005 435621709 914765489 200486166 606406402 427726286 380868850 916448528 498535208 439656778 635736303 936308170 687011234 749602854 804249806 644850331 534922503 16127283 786206749 530657959 347675877 578899986 864998924 221466571 150844301 177277136 919291348 394161891 52087094 947525563 343758683 733316488 699481395 961800368 632891497 756842557 224349961 180885533 437669814 413957445 583876100 804178042 429635911 550957707 114562925 173659530 708513679 370180958 506229609 314595964 361558304 925572984 111427098 484169846 85128826 477653542 213399506 241056652 948141340 588643461 861749389 249279978 766819614 95300400 559713058 797143507 807672958 274195651 448465957 324065089 597726746 102218069 992922320 854874949 698020849 195698356 819560007 239747874 395145962 864844139 925724303 354218626 676102499 941586653 180779449 910787239 149669961 878890187 608913304 211440733 58467856 108267631 977898366 172605262 823756423 534667732 631810793 222995233 489634579 349402663 975107336 533071429 89578789 845642047 558809914 505062845 257465525 235527257 289148642 664748777 519860059 793545781 100025625 314934423 259370219 833570708 590408997 980631394 463888519 357897713 645578101 882707784 510145071 343004376 555672774 777633776 530370249 395189113 129176211 172498741 264572275 504867671 279947639 194886773 520400222 361745939 891938819 499571834 969279305 838916960 352685084 470997577 953780967 416220936 19266187 319164847 580290815 88086121 552359105 604042913 337289532 98740775 517496423 618668337 297402633 528832323 946429330 944015740 959898165 32666725 391264408 355850346 765625318 967015039 896382371 277645984 979882155 602278575 266436756 698384318 81333263 606697615 954632854 914113705 837947564 623831094 391590734 908069170 371085427 433628213 797794888 373738632 545893132 350206452 185567224 794912532 623843187 483617012 476603893 361858423 882002435 149892048 485500963 47960214 527839836 440983309 247234076 820116014 966684366 189120589 567989877 398597790 328655597 222706109 851638840 511231476 515721301 730587858 548480554 638250752 291653557 834868215 658057597 497140387 790250396 796157304 897972497 726738018 858666147 165819501 798321368 335221925 237538364 672145678 324835044 907401084 975738155 725032350 1000093638 220390316 938847719 200074797 680449876 974765390 948686553 205464173 327925980 12078490 578030106 713004640 801448251 928685095 71837428 769347708 454703567 333997865 233872183 266946198 59956414 217581978 807020198 952148325 70808820 179716554 482427698 625159127 523004087 579200028 99787517 680165525 397012004 892806264 691021533 341453024 264897968 844917513 638835789 251695598 384982192 330633613 485826012 918023835 934849230 773915182 522578744 163435969 247754055 728403048 45809507 371538448 939327866 553710087 540414161 883480898 829747788 482296361 282893865 620271510 955763449 432133118 749501228 269087277 392864395 488433291 342030813 398464195 368775519 597375126 182255637 903287877 391690351 706014414 887755352 790350291 820810702 158485847 108251401 871079898 471113124 134389007 822534092 592645106 880277452 66405065 680959343 809903980 702302170 415629160 896868935 812223104 520807372 144263011 117382403 396603059 530512846 764743914 243469182 762986239 334067559 496887916 921529246 715154093 850909273 393811488 126006808 123280756 502613130 835830172 630801544 19309692 803255590 543135216 500542249 951927857 886128925 689770713 620484726 328903388 671477780 134700461 533381056 180693644 826659779 227002904 42345830 811133724 339112378 84905991 756558411 27217322 23260697 634625163 577494663 735030635 975353968 261982317 890276813 206689728 12276080 1001802155 22129643 818674998 605022865 360672289 961548159 792446959 409674499 124885358 992904723 293925151 226423358 940161126 814005582 150435241 785542485 521726881 524269036 630640324 929803329 527102731 289011780 517535004 438117858 91402840 313834458 886158859 79832048 851555666 280679984 681182362 45110871 174019618 929121442 739857952 797285384 679181707 914575011 990075919 679655370 323763474 292206502 442106947 237010926 73590857 206570439 80583072 192376588 469710936 426318495 548388043 240012329 522746129 662103897 900142672 645323769 211652763 970936229 378095938 703074081 113933950 25708022 88090687 173969933 857048806 17985687 7226207 320962573 817822896 201144843 209919747 280353628 251453747 68342739 706723234 764155719 468203934 781613803 92002432 577638109 865870147 727427931 673383909 988329700 835654704 164792516 177641063 360754454 301034997 134965588 750780393 803341442 564602093 373727647 937004122 381235156 335778117 495100123 330976951 459081631 910198651 947406921 89965443 28175624 665007977 877484173 668345026 502265757 955502621 258668963 961638449 851939106 744800313 567254616 103573412 317479554 557312733 433577473 578842483 708422384 332530395 696184413 922368033 485822285 883329238 304673707 486938760 940719265 978621024 884456297 179407906 827104751 36357681 858614433 596431871 738105080 569398514 402523226 801593557 150355480 978991633 581450375 361807247 585415934 302591653 428793972 421641399 996698842 584167335 358290258 852975132 669758322 938590567 235942620 227745714 712745708 803117230 579502817 152517713 79434664 816010251 917256473 119998733 613980505 868965763 680192112 329108241 756379953 490513960 803818660 813318301 470599977 357989932 38364725 481605013 735239186 116482545 906380233 212202951 862278595 439953081 288787571 740968010 367497888 425929866 105914928 249931618 108423237 414245414 945184389 104398875 407345212 230867464 473576760 632327463 876323715 673304887 899802050 215465256 594091043 900319836 599039902 587914216 907018294 179904270 78519623 459349500 763459248 279769236 842330495 259093638 826002250 198849582 505906607 988780018 197272034 344981608 191174985 542532813 501880801 917500913 52148211 863619491 535221609 124832097 20114663 493350045 760265473 466170188 979370120 979765983 218393081 865264479 979080657 92071670 624271483 400380994 162241770 500299896 262118033 958712860 747202864 706102116 439279679 284471378 794180313 329246921 32481852 988794461 168636525 502922925 980087964 706721008 413262968 562714783 366044143 924096118 534575236 861986653 915093243 949908228 670028217 186701097 69158948 339698618 630559529 457166647 538530165 899304916 270278859 682452884 294957541 939800280 511851123 688540230 749067902 767078193 942530071 675939666 780836211 259456806 186204362 572733642 634657393 66462787 525711864 848091773 930187891 670275146 406906253 266385707 192922353 998641826 803993469 331472214 241372239 687733026 35900077 75553117 917712594 779294852 66034732 477019568 196631236 505347367 180941940 345825632 540105247 489384943 780789167 741215990 550456808 111486515 986032957 344768038 406126884 945319655 831333630 530391649 999679788 446599745 628317991 390782543 853811565 325699960 301082684 728010354 210930653 863359585 519981048 894939577 544195683 726690367 841006741 468241509 403461667 641347571 397134580 437603364 677034418 206731725 474076215 681720794 460812213 523035068 164544693 633915277 928582562 373291841 993081875 31672471 926437721 655830805 455832538 866003131 521277407 772935700 232068412 882040046 931177234 229442744 556756240 861324143 440514018 889910034 514685601 252666258 933188990 142391748 964054654 662639868 140491237 471551793 144907154 367135045 431471452 242972831 732117033 54079744 448615929 330273963 360860608 949275693 155952505 153109854 370333308 721365573 861501303 73844073 157479645 696950506 44944948 662054379 812133049 278981950 16482364 768564430 876652546 787593150 589684319 764497135 353838637 673730847 847994580 162340360 666106956 645798726 848966291 108587034 667292691 681927609 752228248 521197636 932174300 467191590 796755063 611898349 613789285 576977269 83090352 779688292 892469988 816811586 542368187 199634606 67779450 205159701 849745648 211729899 134546379 685052196 772927383 719185029 626648863 833838865 363085549 631881046 816993869 742570249 420827701 644297848 689140461 816863764 390001034 968890965 486202955 579179400 113172071 836306292 268093466 785989068 948567613 246610592 87497796 93918652 153608225 735992839 136341740 257404299 406027171 173512442 426528241 651579036 47552392 356601449 127110993 408821299 148946611 206751504 462579430 700177892 900374433 757861736 66541652 911674281 1001474238 695290656 784805477 337832737 100822332 331231426 628696314 338275334 841895306 542261389 761943632 774215676 492907407 805869415 675681849 74471314 557242289 28395427 92242034 702579759 923395392 781663913 973208376 717326221 753028509 576597420 292116119 470143499 673769696 49138365 452463461 353516629 145480022 136989025 346518918 605105278 462813855 432632270 742762834 468785052 602533445 779052166 368911718 45468903 108631944 834015514 277783369 687871064 379594089 669389273 500971829 898969884 417751968 661564182 45046915 76037569 797545245 42119264 360057314 934562683 278284178 10171085 107235126 638041128 317336438 494326418 5743806 250367999 633712309 90639787 875130844 598934575 840075108 675650620 815455827 779696400 665773913 152596884 513332803 267711388 265314736 979777829 203068356 93667064 204917861 912792191 445606176 303926775 130203166 993112988 81196385 589947307 439147934 890542358 290424280 150690853 214714575 846206934 872202199 85989369 66567582 456618214 341144335 718602012 165002767 878932090 117326470 609646907 558292724 824979856 836601714 304773522 417371216 577305956 493355006 291707718 773981656 706764353 12071029 527657480 125244223 132780902 546026254 900327504 81896722 253803414 2006739 195837870 970838925 613979202 503192409 795275690 903291642 483316793 165216084 230867354 800345191 358472131 142425368 107082637 18617042 355437044 318452430 976771244 130749680 765901935 268806572 859018342 363474923 698063938 577116049 68893513 927368640 25654124 516245042 30904690 274022674 548436208 519017415 171342270 733059079 541255223 725615403 52160610 188641679 970463882 691436244 91042930 283862869 635746371 293122793 765091201 349855897 159374417 80724871 710952396 877608244 217502205 628774055 948030443 378550787 819670128 780934093 323902915 243239192 50352349 506511608 167802097 62327560 76045345 667418048 259503448 295764574 282238006 480204263 204981491 328614007 89993679 603449462 519330375 564767071 213360762 595170288 13785397 170937490 910428849 203279557 819696953 900619716 730069355 846945781 840439969 397394305 351265814 456209826 9304820 254882917 923328654 316256403 210171439 873930563 286995225 849213828 716421317 959729184 606670522 541145105 970006956 444996693 78306331 570836113 154872419 71444318 352850676 739054780 7052271 615843461 973558342 480224106 605423582 533987584 354422300 418904205 800299130 922672597 601011534 964989424 65203927 994269552 559495415 667380386 494355365 755173535 29692096 340103781 308692029 39284358 849810612 43304033 516268580 607755529 496256791 28124901 361512427 211429058 693427495 394128326 849314487 4690415 52753591 862990388 704479658 555906399 572373903 65546991 359362754 277166028 375328800 914136900 941525231 879853341 4547701 410382897 503312314 280474971 162553895 940588001 837953042 873421457 308416686 565513029 878936973 292351478 476084340 357527313 176125617 842715952 443651471 31972825 150419651 348353542 187683084 215687169 362348181 291274624 830895329 264601558 145364124 829383294 451164663 990128877 493521888 135886515 540570367 308355173 613017419 317708894 129251831 931577888 756827914 454145507 851263102 698889957 29438399 891199530 574631179 393006650 125661724 32640715 23842610 572097471 127159883 690380770 646596882 143564941 424733066 936538824 718129192 766463433 121455844 540322826 369781414 661671845 925252796 97589915 959141575 103690452 291495407 383335913 957517648 204016186 835726566 167823390 608603858 900150704 492870606 295358095 556245449 809554111 899776058 857474187 219001203 222534094 982687602 234746085 569655867 335942499 635034596 87084878 986279350 125098893 808040560 482829038 20928915 528958071 83401946 969768242 902691831 340758609 300591950 810505188 611784285 469703663 988532617 638427626 861544145 354852977 692413173 844308792 915676558 502893085 222325889 991767763 822612502 844434515 735524481 433099301 521080345 406278443 936109014 303626620 967290143 584598601 570657923 68491222 17874822 233781001 245422805 736729948 343363764 271357815 461144744 334924113 390380955 372258433 780058035 51692317 349229669 40046271 424224171 391442643 428221061 169927684 153082906 290963850 753852044 53426937 455627111 210162046 296032881 781910958 117839013 986877393 392229743 758320799 930334111 836843982 334645052 140870957 474008253 467147408 623098176 883241910 360882195 50389051 575250648 415923961 762674631 418294798 325768133 306803473 643952661 309560800 101956378 174701180 113718480 776467714 220662026 722858086 114896311 337611493 300415960 924773811 556544927 97144617 792264836 203043040 413791682 465689659 725782803 157360529 474542185 64277973 484771497 925407857 547320217 305929396 673799909 154183883 546154266 989939936 211238118 78183377 394351320 703542981 127867357 365396656 498891986 871907945 573455462 175871928 743575554 722306402 668351395 42061868 785865473 152044181 102227767 604210865 6572538 122265587 961894272 53258810 71583188 927450145 914591039 840096226 837349607 243962720 601690077 280191181 539231062 602008782 606363734 971518007 140472489 815779169 780987542 496026246 417074337 354950230 555037629 946314993 168974410 769435537 149880328 643577980 17636913 884483887 476496412 328700991 288110581 773943144 708549312 833705587 850300388 213391410 523903063 885318362 329774265 263691218 818421707 167764945 756375560 8523657 932138431 427711936 403712179 991390606 32357036 832528778 677800556 680215063 316595160 985222971 946586561 739366964 549594760 990916721 589105925 148789700 469355635 656726531 737755717 839802993 638769017 75918782 235401654 590605116 850506632 413542528 249684084 486736730 825071038 861451208 78576591 531498297 622365989 243224847 937878748 191804714 647537547 427623397 426127844 308192521 635108423 501627464 487275225 877265595 19037163 648951868 95341489 294899202 86166706 117635088 866610027 761649682 20623275 338127254 234269641 420245957 831590081 721062663 577974931 342848108 441741043 295859808 928333553 504938898 642036372 197390879 534328738 337091934 848352088 266627105 464570843 869986672 459554169 288961311 128340072 377589367 546969189 991568967 27867588 908453563 899281926 294396819 74541892 835082969 916879574 874442549 719068724 477123836 547388999 803010739 891826065 786570833 825234103 503427324 131956197 160401132 902524832 738414205 439221686 835565982 203703983 144476404 11278793 615610854 580463150 804816216 108860020 196331264 489320991 856007450 284937813 109194385 614739605 91953435 901039116 86234335 336559554 862794480 550400018 199005708 576644578 462581836 323636227 3235970 318190433 840424176 528395740 249057065 555921328 837358793 536606432 973783015 248195048 693734341 564531430 96750993 655752913 872901149 848204422 291163953 702019539 479926606 116723362 1001071496 526267399 801117010 629474729 267072388 203018978 233158879 941800261 10632204 310093728 396220566 60663875 451586454 228888302 701180591 36459164 928748858 202946425 7206150 598368709 876316260 896683462 813476951 667949692 178968893 249201374 775884299 850355450 628037686 156267518 331393591 673832297 926604748 315624993 979238689 917195632 217830282 189044119 857753003 838971479 412454383 54661436 528199078 659755091 508129084 455263879 404398374 287553630 155754175 541573697 134048353 179084751 2314036 820450450 5062344 62541385 894135603 802657696 934339733 109098816 889261426 745398254 957047359 880015787 727886220 564860666 979870251 486042345 79906235 505940546 409579360 449363809 852027924 393809719 17542625 403502751 73369852 612345420 83622714 734571908 987871956 467731010 11939284 91369568 256899157 91596886 69950105 322539935 557241669 42233009 535529860 702989921 741770733 590114027 82114995 578836002 84864636 320168587 621314693 496834545 858448052 281114984 864642543 816320825 492751335 934094620 791947892 176672699 750324039 293021395 198774144 439748977 503682970 646110683 399318850 117400856 112181657 40308460 545264320 225046067 870481321 632394434 29524212 837740390 631567123 523274277 188597607 900931090 380702045 302045000 80753520 899486176 703838282 652804338 980935289 136450251 990953522 342356976 298082189 403716737 72140339 142882236 472417767 469385337 75786536 33528075 344309807 637234599 634341124 641478255 477780751 30617585 764186989 570504763 573741456 514943789 752693559 516327514 2409717 642531884 86093853 448507225 914667085 257738292 105618881 542077585 571220240 998704635 725156573 186974831 819596754 477688808 353896555 965089077 909189024 773661835 919336693 847113175 611200908 419520030 516124346 143737589 763016328 226552735 372965815 551218670 841776918 359084807 815583401 479585055 46617239 810207479 511052061 651965356 609311595 947508671 681489427 638047152 74537081 444004389 612637323 553101595 750193506 819163492 823966848 231469385 543371292 143697830 735509762 557256341 266385686 336604917 497079234 382237223 693061589 793391649 120611731 85536848 519561085 47375430 407132544 918790872 35176019 461478418 596927605 244662196 34974607 673399419 617017889 699851422 172159070 139027526 814112969 68521042 900113927 495465071 576981032 795610910 33340220 32957788 129197613 107593666 942176673 883364951 998470395 110779239 37048496 48467019 481682269 878814609 889023948 686210088 896843816 75539658 565927543 556293983 454725668 285245752 357587626 985507046 107257668 438793894 350038519 58134076 397707531 662490848 770955704 149448245 581194108 208164833 346378350 5738400 777678575 25787272 477239412 717231333 169753279 362993935 948443989 13114551 538045308 184418301 698314996 444667021 879437842 89165006 410556960 156690860 942928464 497426772 541604432 583136373 776967954 786326112 729284721 12224687 944563170 50564728 1757213 972812238 869297922 339577195 569459043 472281948 969423160 834577419 409829990 513430399 24565792 587318908 93646522 855917092 806207119 648181341 488002096 775288405 372384989 901635011 386910071 15918089 767953867 336565111 197578451 207844037 738874026 409138483 585994338 38854571 428039419 841029128 724232569 771574449 172615768 833157580 418258741 473093539 504676551 18045941 620468870 615304448 8473517 248932388 833123841 155844930 179815196 598852037 674080894 902443973 92093115 994892030 308418827 111130168 261460056 660309874 476230120 195583500 326011131 173663526 418610294 485013695 188485590 380142934 298400840 943929008 680073509 465220963 270223571 939591536 656786682 250065627 70537165 476788216 799611205 509994733 631482303 844445609 40306581 444447932 628638779 485412099 561134887 868259141 215041189 771771015 704948759 611765833 564285061 380822694 479167933 144722701 853000309 6149439 121736386 130018756 114465349 608258850 270770898 123066226 309053629 710587991 659946081 123242136 275076655 418361070 585149076 891253955 831122573 670823365 712576587 974610358 31121112 280227179 582646229 238783921 361858604 8113219 987644360 472437142 715325225 948038376 433755153 310639883 767897076 746057821 123885829 551676617 2602322 728157811 800632788 256087880 12679704 908564094 683786404 812746153 211993479 153468695 639627405 867487535 92869754 552385856 869597956 626731477 812336000 720363839 416436756 703340504 220594897 955831580 210770588 599803076 468373317 577845086 663187210 801777370 267210063 391385579 702887395 413283469 733841670 886852261 782163476 589691096 679513825 215071188 149089171 883270186 967765746 693156636 831938408 944003464 231402558 273781905 551878286 268872029 710440437 334814243 257402709 104746143 218769350 174246733 908784474 175070223 663903495 821366614 123955060 847517328 818906948 90598953 774357469 560902849 193792895 276363981 566140891 465860594 418493435 343904724 385877185 542244691 175181018 378553616 949387240 418409088 429894489 688634975 956493386 341597991 284568039 116398118 116078725 8160895 391427650 508110861 547417828 879704180 4074759 494266639 396612286 536642767 690714099 577547563 272029240 264767325 928538726 441740364 574325273 430941661 317573524 912402594 636386634 589375420 445184423 493602631 239350201 72811603 945110505 254224116 779957919 961384038 412670176 436640415 888922263 561622576 400509378 218199888 327839091 67127005 866952987 992315806 175711265 881833427 161198966 951148045 11951216 171727236 487379878 813838097 889708170 416665817 443982075 507411723 784873911 803708292 900695251 825705774 795829414 919607524 318514961 438093093 412436248 229196321 263876223 622245580 51067064 529031331 103180214 306214176 616043922 902789912 840806573 378291658 807746433 982407968 849248342 867024703 254617118 989331961 381004074 659544140 11358941 645799551 577784909 88637309 480673963 190457079 461887196 915243617 425198442 63818231 105633908 18921955 711389468 45674248 347823257 800050227 243998296 298966927 68002964 406859049 355291031 270462365 59647077 643031157 385552440 926631269 58017592 547533043 716524793 805495711 323348692 600129117 909960567 265754006 492500432 688355 345478763 994278721 846891925 476351658 996474813 519519792 262873 264826810 762162025 87942577 265546768 128329751 873790257 948754442 141449489 148168010 584500529 743857059 275842792 959316145 339799618 115159670 503991227 580607836 459384598 349466209 506390570 560955238 610323445 937998109 749820736 502049777 434174107 280402495 869601473 139580526 974772949 545250868 402105696 32258379 295703898 877853847 50691527 169685662 692306239 341232163 128498244 858107955 810122741 339559529 134910917 495787920 153241311 53706539 417013925 490310438 483119783 646117915 793281152 18300890 238022896 569428154 537108131 687069862 294562768 171223101 921122166 784130721 91079863 810610661 19436357 729183543 820949935 390556817 652786990 335771976 422234824 228993077 211494519 641925546 346170915 415910061 960285552 423455194 280259560 812264812 488369554 215719949 136618260 323387189 880620979 394470915 852167373 484015548 683595566 522161481 920046583 485459915 658680687 617129823 1621757 476074286 608324401 35768131 2902091 624767577 715239231 456594771 355834317 405597484 908487145 351483897 594410190 933438451 875954671 410547564 709790202 756499260 955826518 594485140 708355258 261492154 491568103 916317756 593261484 497668519 996964428 744016658 41789469 313000004 843826334 988658421 446347278 395535977 955605491 210444776 542365035 789340199 557168005 112975096 594188566 146968228 368160919 9946345 513322381 73164491 461243508 225464827 331490070 357539140 536380458 821907812 933785468 54808794 535130806 272286193 46306988 715645749 200666910 346652994 416199390 3622031 263027281 854972571 634413958 574455680 695656690 878348556 984217494 395746091 584741524 575003160 1002054419 249531022 771418678 571164078 229608937 198399682 831824004 515023738 907176202 184247777 69186069 859838007 575681416 188756198 344870281 346307783 499978196 145022747 562007434 906809054 595704052 551744906 311096474 623813413 50416196 763517361 351159010 670755308 859493030 749730261 803474607 346976005 335008458 966670604 670442711 822375453 374319060 422422688 723369033 534382502 589181626 952684742 736071837 790132580 744924944 272551086 747066299 217872984 355429319 165050360 33076477 151884298 661008507 172570460 887051475 718920932 255291407 879514771 264174597 199077653 738758509 572825063 424798947 918468095 922403466 919157169 662553996 872375520 131492305 934130597 803840858 215744853 923880344 988263580 995873653 563493694 521800805 112077657 665060792 204304877 986428956 266171434 609341579 767663702 113722869 457260684 317703658 912396793 433872429 77180152 455503715 634394549 200809040 601934717 922986062 350736081 158751742 805445832 722150442 2905469 338431046 840362354 359704576 536848076 853992441 512944845 445834013 549478997 468153742 242077135 819036390 896036519 365275892 820987544 89673745 545191769 587369182 791582526 398905807 68487122 395211620 344643247 740697565 559621642 417305614 872839997 253018496 192718135 825687338 652152323 307266462 874470412 300567255 889411920 662042607 4107923 773977150 837778222 39187452 304003371 454991985 866336706 997791463 287555022 382877474 164219225 862019873 324736780 231275108 384427392 519526567 280718801 867811424 109999929 917894399 535574070 960364168 558581193 776593901 651674245 762449427 862911318 712271140 2618866 921457238 364693404 392639876 972502613 915443639 571072856 697279885 92284194 852387266 302384264 548363469 706702331 243389681 826664100 218239216 946491336 943068889 768552512 917933459 209801724 33914614 961903311 331236560 671031417 396691113 260127828 448621521 18390450 923214335 873050915 726636066 372381091 251342916 829940887 919784173 885818281 302903978 555922415 236408127 996454751 579983963 753116618 317383300 777177422 295695378 84364246 954198798 126846390 267550587 199450037 97683586 437632896 639043831 579898084 681763545 778983597 185076620 14704178 141547597 623451364 210944897 407145278 817962223 910257701 284277370 226121383 459710247 214398053 288952626 596788323 865093695 304860970 139953967 932126736 21627013 771148103 750577459 470190413 981051224 406432803 55845116 348702816 382872337 574259723 488462330 752542516 173756902 442008766 520591271 824552986 390401022 50428295 367137845 994779005 117643342 350247644 928560322 456617271 819126943 644635657 876379122 762508216 852668177 1002245041 634497643 978714419 451341682 873262129 455513443 86962456 254020042 416290759 577063460 702876291 831374724 980867731 216042175 789840069 107049200 548050715 960017170 492977533 776953796 669555478 262145997 969442179 815829888 239940154 424485816 164502134 270063048 184786236 406218719 610429527 862842564 791333182 412844400 14020334 960840645 741026181 723410074 688300166 9644802 962952278 275459663 598115157 394974344 537963252 163214638 794181555 692896810 124447658 584101706 22598706 856884345 658400504 203969494 209270236 912225978 355485315 972757252 912563522 850603577 722177484 808644754 372210194 534793601 954393408 849899737 770226002 488334190 157554426 282247315 194948339 29480208 845151568 400960988 430571741 873643671 425231654 700739931 432135890 235538614 124075198 660801212 107308917 76968140 349505597 619224981 486950543 929042245 118130690 969336024 348135603 98843817 671553867 596381188 740151828 36723787 682489435 115467743 905490113 889377256 575226957 304211616 63216343 609723672 4969532 706364518 786048416 891818724 119432643 186889463 326242847 71872498 816530672 658030736 896831710 750358519 341270489 1001671941 582377432 719972866 541939503 821691360 515270065 3464861 101681315 951635269 987960605 56693551 287711785 175508991 17845455 174712476 745521893 677615617 957725523 994337039 692141023 734725015 520780930 126426673 316660229 933241019 149921173 901829440 335881932 940101099 387243019 799582553 168108896 230433220 249544483 638556459 911787916 912158899 671177696 758385470 242525749 309365337 92009424 476815347 370761492 806465840 795440773 30510749 271362394 169741206 310760662 534753028 43815810 560694077 171898214 407363285 390348808 800666320 405731455 529237104 456995901 673605293 712231690 763969465 115663928 649191090 963849294 718198432 868280357 497058337 85856256 408771936 28491231 875353805 190485823 901544184 234819269 305442865 916640511 136869493 606979861 857372205 403947669 390051718 520231049 237825161 5857186 859622923 910185299 202781229 469064447 549915555 769980526 156619531 385145817 98566450 199623239 167612295 378819449 641697668 998348537 426454179 385477717 519007593 186251843 693909259 291261210 76116778 406366378 299947840 678891945 984042315 91716023 148964367 410026071 172254068 30670057 647689535 61595290 814384922 946866531 917161632 300362214 85087780 171016754 578113811 701079751 537693063 250049199 599920998 316879439 732999507 751626132 823187169 246897883 695025780 384544776 576718206 629422087 316344799 843823947 435351639 120109103 772777022 510004205 223626779 165516245 852941480 289160927 69318951 536529568 780072742 612467101 272925864 349290752 115952295 250328504 40292035 476452442 831829935 436816030 207306410 149016889 230253654 864761649 996763309 664916748 226122661 901018630 708069932 8105724 194276200 670640261 659268818 632196951 638326687 809232677 993805318 96032310 389900278 904770572 263045072 549994610 56498683 23569384 263569863 918764297 48391249 979043357 519718985 365491413 850182785 585407663 630185387 551609234 369808638 99939030 896975950 72808904 991186430 96673108 974406883 137678911 515675651 676255910 524367475 912484965 576847515 261805121 951232476 716267493 821195953 694063628 319747734 225994431 332632699 455925192 517619650 501917812 285501156 784086436 929941402 831227928 404558850 935520197 821090145 262431439 593155208 465905064 841309732 50337104 126134043 410125717 249907129 102850279 971507377 360337578 988374492 557461903 102623697 792833396 622130785 801309608 50575040 421123207 656939352 175759809 537333245 426954896 691177879 129263520 306744735 899579585 711728825 786057559 710450137 225068121 822953666 696724594 838756508 581095596 810768679 247452944 253917919 824025670 132115455 642640928 959401319 783766228 387299074 836580466 659381559 921935834 797467165 603940219 157214966 276880521 684236067 393360901 282952526 972613499 570295641 31536459 402767258 365343633 782044246 597575689 68499949 579465336 117955568 585175146 635122792 351015025 775824990 737539436 348369507 687109024 376059573 467254233 457725896 459281287 865642038 826448101 340409334 665469665 112612327 910682766 209750986 518001567 621062502 348038560 861423323 352532102 593105059 563863473 439027391 512944231 584888829 428973449 508484840 613582732 229951023 565776735 678879491 643240857 635090834 177362000 605672206 681179051 738775206 769688910 775423355 53789258 908135222 69382638 895203870 189536443 942426390 687109729 575627621 227585439 841035251 542822932 172484753 308266302 995645007 341444394 660139925 478257822 789026059 125966316 615804321 794378763 488502452 147537786 28044641 681620308 99867738 402259096 202632478 877695733 117526415 519333814 73481970 167405291 826517317 981600422 195251122 689735400 510831864 142568827 779838830 524131492 2301705 738881227 182212484 842200084 840750288 697430664 316686803 142991899 262313324 842134151 688926892 192464247 99905782 252665538 831435762 748917447 580376284 119573480 946244558 97937727 897334344 629070729 473429683 885602009 362146290 985210930 986272317 691128486 137094175 113874000 450723286 920694294 272723113 182370123 838476098 489875258 250941748 885803270 291117494 945121824 432799889 118240657 575063317 797885497 204337546 114851581 110051874 897542489 741832711 176524403 742796583 537369961 336923600 271920053 671090048 76936355 964570808 345230083 492381258 730321767 652830244 768786477 330007913 524140536 1000853248 802178192 19756026 733931115 294193744 669885002 32278455 488333501 499466354 556028324 960450605 160948555 56998729 981416976 178061157 959544227 98301729 832959642 540463219 17142209 623605893 536512571 691824414 97006487 996166622 671966804 642412281 704913106 19364140 238707110 215587990 67827218 430029031 133321581 671120 33833642 166892872 645486535 202257631 378069833 752005172 150949875 676182337 467715987 576034468 406884309 97245450 490344943 944326433 131990807 367706391 583254274 134358267 49736471 801327582 430849304 482107570 160361738 40847974 490960384 293889040 904074177 670978903 907494256 672594809 971889218 991282745 714906471 381691505 112607858 922596491 227767857 540833760 108808440 664196273 282398591 376912529 433496570 1001426486 383056875 384761095 144285156 558380922 548065382 947561902 678426765 378269608 979375111 562553182 800467764 639238665 324069770 2517693 916434810 981796991 908639031 849901546 259711687 974848324 390699541 708634469 863213875 816976225 940215684 183899160 686144561 483490641 906719770 498725041 464822288 783763507 401837944 192664246 383764759 364721814 441960708 172360422 48213673 760671642 167595140 440388938 929069040 4383455 502104159 968773924 308565479 864854066 543483904 502510209 968478830 615132943 453847653 930570374 88170067 842191809 941789318 558819628 957799016 437041047 22096670 388619222 467785750 87587021 307364125 562386255 494355147 752907416 749421012 758415059 95495447 241506689 101361537 498183215 724611782 550758013 109959969 243658075 815330074 210850080 900562035 533443903 969866638 180505965 95810116 218372450 728602287 64683869 235439124 744484788 327629252 721361614 191595965 405404646 611255498 388217360 111453915 695192069 251237464 277164810 954487900 49802894 424322067 484895342 611347781 559417587 181064213 282528995 716905848 414449589 323184969 910621550 985529603 66018751 41994514 427206145 700470760 118702444 910288663 154412636 455329319 954320806 725416466 297983323 645510168 763181687 663907783 192199061 774033480 379030849 684660446 460897956 957687070 889569563 419086919 914856683 362785465 684015128 373598409 417355581 130034631 649937750 34529558 248835333 197898092 442547368 656060184 205823318 156395144 933380236 80210704 697647530 528203131 753281570 582383269 754963478 80743556 473530225 619722849 969663980 76088441 158175790 986748743 344866182 242345376 789763057 137794880 917158657 869458732 4288608 362679809 371583093 396594357 535837050 532387324 607055258 466992003 201165984 203349633 24604464 429428436 604109870 85923743 393628514 927093458 69329354 790775868 661748088 131768514 479201455 934650072 25530254 853215227 376839909 50126342 162310974 585278535 70566447 798895669 457164659 41350081 232235582 740102773 673216924 89920013 528463281 334386602 668654861 534868558 227699703 92499902 774215149 277865062 209789921 149687627 761594146 712165293 338242710 710954736 721654263 352600260 686994979 4862744 618421087 741851390 646493964 247437260 295926072 995258944 957109678 250823210 515916585 758570054 34164566 173854752 735181724 716260029 277349520 186737025 434954784 459723644 275464530 506829482 427422455 219107510 78918827 750194191 86627557 56267886 340651879 109510434 899834782 1000463005 572620567 738600010 337685731 96019734 158750458 299952638 988183521 919233858 100094886 364638348 894449397 370701166 30412583 708763489 15709669 888258722 3732988 852445847 945041088 526538305 282203419 711151143 74833836 745345011 933600697 105567210 631535981 469190652 7841777 775844086 73317973 911943666 415605456 294128567 491788770 633157184 23859275 565914657 361417908 559321663 770049784 757492218 632917226 238598913 569416276 728060119 931536538 509007157 459243192 248940762 272478267 202518758 818970718 872980456 541572369 524486174 473193830 61182083 597623205 519319760 13652901 80007757 989991397 17631334 207648474 733547030 526472890 159625828 918242781 624906720 463386680 181579719 83309842 574786515 493015365 292684940 419378527 385876814 403414905 447249921 131343849 469051218 710420281 439026534 385299611 630321187 905650327 424313826 449275139 784771070 23378825 761343315 466612983 386635396 119051943 490797550 8580144 902427624 84487427 680108000 386487133 615747769 526918274 414688001 394104694 917843410 491943274 811795702 289810202 934647959 308434904 695628697 58175015 780272270 924208818 721711571 735503081 915827336 550788595 308830942 249999504 430374542 1872158 886699563 809744550 149814293 541451061 550090242 796690431 45058717 995824917 1380329 637089658 678481422 47078481 705861127 696870712 619137917 33314607 641744831 127371309 612941275 565915308 208075105 199909565 834197675 916243603 730339124 598971582 335431458 836428358 863544994 4308492 940896214 425331155 739271315 195218681 306604878 763457270 118004316 178901159 368854894 107521050 541461394 901586051 9079892 795732496 753063506 171295729 504150502 908123739 465931217 513079131 222791123 566246526 583507585 913740022 194517621 56443196 604351160 243942020 939702697 817347968 826490132 606385792 468092028 785654993 419138644 508110261 430648813 317048020 188045086 523106572 977051033 954385994 945373544 695269252 651250644 126718681 577761531 67562371 545812956 793600981 489824867 340412550 713431253 189694572 920656252 145946381 558983035 135919402 516265713 782828809 185226055 312717001 914283514 443227154 718884376 146003641 321086153 628530478 92661617 436177090 958695252 762605466 615573043 325182218 90028407 722090305 329452665 644034946 208456749 846426197 729847319 582170886 941473634 945712319 974855780 391806834 478772655 479695376 548531555 165452137 139164721 1000176746 969643017 649954921 291506143 899801023 537174600 140269313 39360360 539564834 706181741 306812273 218730280 48239173 552985409 892519173 933894609 984317327 17542732 392177308 664169340 613346291 299760539 433489636 880140773 830739669 234676670 5254906 568227316 557701907 900024392 11476354 571767867 377607984 206652639 489572690 830766347 781769563 836395866 693278369 787910652 949570396 544163775 46303522 163049138 908554403 860244595 924998256 528717855 889787640 980130853 83013922 136386199 138342284 991550825 329627731 93719961 805007686 53743994 999886250 789548758 345175096 176070499 320989147 550780778 798049285 414527110 511302252 307820460 35567404 684371900 888335595 177024362 623846351 579469344 296295526 275773965 618536522 898046756 511037232 139842291 180025982 21721691 228888097 244307530 748379925 255648089 510442010 418635068 174984921 408423426 540910708 797349181 491594324 576603592 76851528 862653912 193056741 265377690 516822966 376481628 622442869 844826158 377007375 576990477 805877752 900116708 166274070 751337881 343473102 7874567 262921011 623554942 880576230 889819345 274437388 838936123 33721072 610927185 60604601 227878189 676502909 597399253 590671461 328637933 574071833 227405560 627323895 407096547 745102634 206329937 542729537 149389795 126770384 826354255 64559559 691390921 251286629 787980333 425066795 948053645 248207358 383934317 519506969 737739117 392732830 858380575 510948333 892850040 730929216 677564923 182029844 659080966 414426596 726653186 270470455 921083409 191007757 717248295 355196827 407982362 202276952 36109047 460322382 635869094 745031815 473738047 771310643 183569944 169697058 77549717 291274914 218811120 156643743 97638111 219918108 851779990 296580053 660238016 575554053 912856196 377878257 531167016 947196369 445264443 715521022 661846328 740656146 88900188 407176852 842871237 64748981 679725173 717189701 966814338 225352642 402265431 860752952 821458027 351299261 593233029 191100867 325656059 480329832 486432339 922315545 914309280 237959929 779968509 445318406 687407683 496472913 773016109 297087302 782033588 903813112 471752049 551925379 430155454 253305215 648018617 92951747 440088172 361190882 761750020 921073609 181325595 580047278 248982526 610505927 75736102 557081737 819460341 979473434 576405233 689270099 365020335 30495112 122519302 589374305 231148557 682164866 138100075 936938604 103102314 67995498 41056799 774423642 669925888 284628896 493605509 128312230 95981921 870519756 4784598 509159438 126821972 368058843 86548280 228491830 33980141 430906011 409738601 464516802 615419943 924140221 580393734 668590434 71245314 337240710 566510349 804894087 700702071 319609321 702441552 341337682 16758269 699164129 530029169 255944796 307089447 657742193 637120960 591278175 961758411 133574357 431160848 821170835 163794703 77991998 146344530 269555888 93327308 972550474 188300162 27415358 484896499 852548867 828082951 239686533 456462163 540284679 504197424 490846389 731235513 153886903 100673681 138041896 147708150 221477193 948928975 63738544 599012046 136719734 528041392 121316381 245194871 78508561 279059305 584599411 388723052 595266405 470552501 284705740 919504271 843919692 580982371 386813122 498861136 776003898 749761282 374042513 47610862 292997158 887084326 519993887 777969994 597662100 964474894 299925594 116410635 247267727 571743947 140714652 353839931 680923143 98174222 711230805 735524635 395721319 728058389 615722058 167622101 989625875 533488790 492089333 164835650 40145380 564736713 771649142 277162405 618072914 324780226 349611748 803104349 367403509 63117597 942894108 599402716 598058707 177077701 485360161 335303012 488225749 84593765 524027853 37449159 184661890 718681173 81748573 375761127 32587794 556072270 563757971 912491865 944004402 775525182 551203554 995998230 813781931 600700692 31823998 700943073 956364329 453217022 915602473 207816157 680606801 84592513 384941285 85231627 571561262 776940116 609266446 126047271 825832320 183229010 215474895 741139429 262991990 895476178 194597316 998745449 920711675 108454783 281827797 736853199 92185612 755370020 99492492 732187153 751413065 987077014 200228656 567026314 746732552 716903620 568292419 410714511 517958549 638511115 151781845 139429192 520098977 286995862 138104376 714754790 176086109 777452988 84720908 464187820 666207110 82980568 926005848 939900116 417113038 349927809 889199220 570030942 887797586 579480597 821502673 496217217 4484447 217772798 237678716 150824176 846362947 382547630 340013299 258957897 933031719 2388042 767964721 9845531 562123301 686884599 554357836 399074256 275227746 943320152 670162302 472699352 795773211 472453706 454535815 349864604 508818011 769850145 695894816 516762864 136677995 575644886 422013632 154766198 468440333 215551188 112586540 342184451 830209215 75702720 81493398 310864258 931594920 249696660 891292667 190227669 162592676 658268816 827103653 858575582 743243036 158641534 308870917 964299618 60432114 866173244 890611793 118809774 301384099 687254150 609007837 516323903 61320092 825283997 93220776 632172215 803625823 960600321 449409502 227974260 11709338 85322169 281696327 280281940 141465917 658393363 59616944 226204445 898917054 817783680 347578241 346364617 504899677 129428229 276724161 173976802 160271388 977024116 456300668 483035434 500595494 749351499 265338245 627378635 63886939 707933121 173352834 699805762 245372691 128575386 94110571 850252873 997104774 612824765 457610201 702076695 436321281 937144175 521590517 819373614 947881533 697503055 106491805 252068655 910155994 586222652 262834311 374902477 426485657 587099266 44705326 654115176 985112854 628742878 695748560 131605783 260520207 121829813 875047674 901455578 759031115 271724153 664896052 615727543 175262385 221123227 247622314 457556458 680310736 156364437 192070198 562398877 936432335 581138393 54537443 797611934 523337833 2016445 654119453 343568270 64707654 573963413 119127003 129416735 601784453 9311776 304378600 766731718 581315554 571258810 343751141 692126287 765730624 796305874 689390887 134685877 23430633 762490528 471665255 340469956 851271031 739824538 104610015 525249352 695318677 552119717 703723644 855220949 537935484 419640323 551419284 60143439 971612264 751437057 363123840 625552282 505296875 991484326 257904136 837283231 671222536 304799575 70338967 250448977 372628661 463335203 423486903 574468674 210418829 859364446 426881999 997716191 413484708 654196571 62917611 680788191 586248739 194230248 406213417 175189949 102999519 180002909 368763893 271328349 737827692 222115368 864463983 346032908 443180348 921854633 849658492 386262940 826029794 759745475 329095745 558507944 381178429 824961260 887286613 743164022 477669770 965168669 372783431 358789121 822227793 444772784 328240964 476336975 777322724 110062152 448164567 706165387 112805282 151278046 665341019 599846047 941660530 684759680 724918880 346122891 854148914 437005529 374455175 388845183 157395562 140357387 422329221 297469594 188992926 664507170 898046310 758151090 853030278 803998871 671889615 689918028 915906088 311605187 726688041 193877160 999344410 665470819 864256776 870816662 728158024 241181230 186684438 503457998 932447793 804100847 109935025 311127269 900643434 651960789 923501394 74344771 140492055 798392216 480910979 311294357 507465206 154066466 424208339 643751324 523304276 779640261 34371501 889529503 365526671 743956939 288991311 573841574 656540003 77232805 861367434 203504298 932165709 411990654 360120581 898278844 175150982 201855274 710765214 492559666 894941519 685979108 841098835 851229757 199566611 2443233 638197568 402020886 935519834 919509968 291461055 1000907790 964043028 687660865 793076720 776473838 574666788 761966304 348055108 803678572 440097168 693774138 479855636 545090136 120977670 810939647 24825097 633673797 306889279 313922314 112167712 801167018 929023752 5862610 181809906 116753108 715558433 650730900 342360121 863881441 273511392 759075889 290141937 690899177 121917694 341414927 822759540 558252140 309219165 335358117 124436959 849882254 716928261 129389873 995246672 828731040 659945080 783905694 962309928 196465138 87988743 329784877 33989067 471101435 483130222 627559406 861803019 510907356 4362306 172003838 731325527 156690508 616278523 57654560 657733646 28515259 583677945 385440410 353297186 733345307 472385535 473840250 873906240 399127056 73211747 527248445 784765437 474477793 926252629 307969191 866579758 181605259 994663913 451564337 257383475 81415114 456213391 246838538 50426540 46651213 835302598 383309875 767392198 670998442 791161849 883992805 322911053 808010593 528420129 786472697 416471051 543390150 105451773 116022575 381635932 615859040 644449805 700421742 348384903 527140707 625029339 826259344 329477207 787677046 545954933 899498409 201944833 611825099 215482501 129249908 463615301 715131062 280158332 152086791 233021539 779714055 835454365 18816626 581426690 917762018 727558492 124186397 123699986 622964499 765836734 355570997 265726322 689056318 842736569 665652086 995428034 673656578 171490175 392316255 785749162 320621351 875074007 706452775 637440295 199306756 392232900 304883876 326986591 488611829 746247668 529240841 809667876 35008021 349366173 226456404 412405368 647532794 308517687 244106338 80577931 385728993 212875044 476238274 898600604 101704574 26521561 105087120 911904831 157153132 302310748 145593379 992846836 802012732 328527718 96905005 718641812 655013924 469574661 428119884 809328695 560121704 362805635 697518627 261837401 679248255 645259877 535349586 507234395 692761563 278220988 239954753 364136221 257811854 240943618 18393213 333738430 838475979 655805169 848021191 536616711 676700007 565252089 899839352 111367753 854993783 128306811 270245965 97613270 199099439 349156670 640630357 470518395 297422490 266504289 854674277 887992959 824490203 597715072 657950021 969812246 804229087 788295599 226074555 122992284 259445014 904588066 77189396 774583729 380765997 721905780 415557147 384216021 127461330 219872640 570014737 680947008 651698911 433062320 75553964 585147494 778573592 485815634 255589891 169087731 783628857 353916709 670959869 309986870 456887709 825170802 325412031 352598529 269007024 982509809 74506250 356512014 961127176 269132041 743006880 696595690 705727193 362232711 251819390 145704024 75817269 6844292 780977466 477175804 326647972 385041894 938299242 445507218 174378552 839487209 55070685 450822678 898215176 687307315 417916505 296667766 760769589 753581262 338410516 109003171 819063830 212200367 51528048 55981493 819306885 713868934 910525339 90995590 441618405 789916779 901169218 755709448 607049056 558059642 395034691 133318149 762917968 232812830 231536976 600963906 196191433 186151222 758196306 989743688 612165484 137852145 11494997 890683765 491698288 201379966 248246703 296545821 896362258 402277671 21271870 426543432 653525518 455563515 852502708 45225623 562850344 299238553 424431441 642196373 521712711 806529595 869771299 51139555 124203528 437153697 636610567 443285183 185535029 186452359 211738520 670593171 37138632 618741516 953935369 184346211 191680880 810540349 873922524 752413767 533506316 458913832 827496231 513417080 704569964 692260355 755188088 378785435 711916103 158901043 281837677 605934438 373326208 932475317 659259476 249977048 807730002 61009870 423007322 468172968 164486495 442876593 33921810 585563629 381562796 851949719 997374707 177054428 818832111 563660405 530431980 769396493 720500751 681041369 921021036 133551599 920519662 781396293 495287809 33742624 942375669 899673185 682538286 976710787 317008939 344181246 795371062 974605269 115361977 842926464 224025812 836718596 779982551 394489348 658673836 588355075 397278146 652221654 648525327 52956733 589482208 943364528 821856929 772962620 96547567 322961008 131608057 579507105 485006688 168505774 243645939 657442531 978708359 368011389 86155514 578842280 902021140 350550039 423822543 465179714 399717250 206915967 229713114 428098070 845048824 817657580 924605905 714920093 533305526 457316275 205731248 203199037 586517429 415997883 917422189 339677281 318628826 709832767 540817495 107394178 813619808 886724413 508767864 731683323 423087462 86326712 257834106 667239908 413301600 1001217127 901960309 139410416 846376037 539926398 806825546 9656645 366017225 206602111 854075307 284109376 427076634 417306917 144564366 473637185 707065717 872214943 587835101 883368688 318273418 348804539 942441737 421023147 165115898 550053976 643489775 636745547 274634682 167934207 713672173 531121639 125144190 394700262 545805425 148016360 935904694 760631026 603377009 301942885 284431869 308461998 20291550 994427100 395175065 769439385 914206175 261041687 323176332 678069013 551674314 810663839 349934278 893811214 628001055 870003257 857758862 710739402 767367408 47505314 768224538 162891357 947756048 56212643 681008392 185898417 606653876 415943084 756805028 830870165 35884473 46391752 660777433 644516082 858169611 565547769 192657492 6142374 10394340 341256063 382165951 300547828 606585905 828887616 633114254 107178215 40800943 798162655 141346265 694725153 773439033 757940890 943567665 208552846 344736036 255578779 321001116 853122550 998762010 67346945 892091643 783659988 904155673 191669741 31062454 682919365 822042679 541771580 229846709 842472119 275416801 225446171 494180301 877606861 505607667 709271219 751763886 806548423 920954616 931870269 369928786 842490777 873194427 740209182 843318143 186240665 963177599 37889251 617026555 908648323 680507108 940135168 883023431 409965026 189990941 50832004 777243157 871358699 654898960 961203720 328916564 837928616 279479326 90958589 939892153 990997136 223126304 77968516 211297654 442901317 354509260 161248174 112568843 87379935 204971856 875340415 90384836 475677777 8397987 178883337 722346760 461026275 758655886 735217308 278955179 241339419 370950277 861191708 562482676 309557313 560618824 249371458 234924912 403760555 682067637 759350487 200158469 139368678 946284972 284700334 541386432 910117074 465737297 779505819 356612677 978588979 478208040 118084816 202883051 999297633 970322977 871289525 131382800 969374495 317646375 625740665 668323088 592095492 266013105 549119548 375656588 935528057 22333585 466092450 698262651 631605507 677566203 655023361 332903393 93760818 491475027 112071029 918323319 799006605 376686235 746790845 92568752 399372246 679840118 384443472 341469218 868581517 31073558 637957903 646258573 51864784 986193916 693583027 286131968 95684007 380671608 355108875 205268521 544601374 743971343 689531916 173690836 131979047 364366597 559749131 289877711 671390601 361701534 772463270 289829542 144920287 259579844 650090627 647805892 799560582 733726482 28727597 806288798 32016737 827208344 310682920 193511971 689049723 976723133 391532005 357314263 620987688 842970867 250947881 299673520 702057366 527848448 218403151 705284292 728928625 312055029 68524420 413189876 902810400 542969389 691629661 200009048 99370285 717223523 647797503 150953146 857738485 678742145 602305794 912509022 366258851 718565724 938074178 500992658 450035686 678451303 460795000 95868071 85683980 436758626 886905355 89249839 519220710 33722897 554801389 175393712 688279608 738308550 608171020 917783684 64721145 913541829 667389356 117572703 608914941 511469655 581376820 260349462 208606713 499440472 641311130 52642296 172650782 461625315 845450616 947547894 44412039 812769292 869262169 580846175 558344215 487556105 788254269 676146134 880940863 437794524 670360917 538161626 159227478 578977996 718341065 503107572 601783075 274453120 650301773 492777660 195001211 950709005 966580415 452547897 319173437 39496403 744563707 970495466 1001980629 381014695 679171994 847090765 347376606 43285023 336992061 810237193 313058371 444147827 874015756 805454465 826313858 96786753 961470364 186096347 480112180 624518157 267479998 804818785 231556037 108514253 186013324 42035799 495893952 900994449 328262376 342481386 614181766 835292543 368141945 567454067 949648521 752560636 951827226 240943861 116438489 420152747 706188714 590377637 612225586 223194758 56686809 221110003 93003763 811061694 709370445 510278173 779460636 565915689 741136478 276822964 238547855 817373726 833229711 393316847 172741280 858696179 574165587 911488111 540930516 378270367 979130834 719428010 388605028 638330858 39364516 394141006 75831898 489903353 563412538 141442367 635293844 621703138 688434365 483355859 573734515 33861577 202434517 91864431 955061635 858511607 384962911 262500510 52027035 422993951 111240799 505341630 589425253 720859506 511805730 634882747 319222363 352478506 785534511 856387144 812469089 114134086 3874022 149461169 257676755 111257872 429528537 337969925 534524497 198582293 205559979 868351614 721762225 999459888 806562097 603662386 707822319 565657304 326279122 301854691 857428587 283580543 131194689 523163871 922977288 927684494 542046075 76887881 724855110 941240710 979356516 999799572 395747075 901764269 932598482 141362951 518290986 215628974 346248132 195612051 597401155 271273682 736170987 255548383 343458045 914031613 802434760 453886075 319386352 395575718 833254691 355887802 923435416 743462849 849290113 33602633 810111923 58780594 132082992 966907095 525092517 378162426 443116992 875008809 514342517 563090407 603585842 139191796 247017147 187358752 385621311 101437763 5435931 239504551 508657880 536135915 375519008 621304063 114189342 294270559 175810187 372946427 847326680 845485639 316830301 349784564 762672527 776820100 931385625 651665863 33880906 94029768 582212414 588840202 299199355 651940739 456536538 237311252 363798030 189656380 35359396 116644181 43794722 173344628 271277317 941240653 67083440 742495178 673207218 630958338 879061544 696582025 211898871 952368952 725429636 204890687 274964468 430384854 85061175 414776656 36277236 333529861 677619577 780047892 116866356 2308484 689911981 790531372 948456027 749023549 842663638 242664564 322975008 860009537 739832817 358021784 875264959 28211182 900150354 3460651 997861364 232482835 919010698 780083824 792068191 185429020 311706405 560018829 587860245 937363666 200975712 440133885 772723096 633858869 451970325 136462996 910129470 747852996 590091654 510174268 429212242 114453283 806368641 55565241 951221165 451763159 330042066 518142136 500976175 444781001 222025549 404254290 806701611 465271754 274464345 292866207 346850349 215881977 307389877 948347827 141511842 4312167 356484647 515978390 166440799 606235146 78727610 769297269 705271114 609780577 957424952 322326458 759621808 944309846 693123022 80278393 914463054 462325591 254864938 929948746 694055115 887529960 589331878 252661139 480256328 546669880 172414969 369673540 133807054 398454944 970537047 15388498 948149261 204189764 325505200 211871000 101156003 358398621 720906965 900666167 225081690 714837836 179834851 963661830 220813063 694057637 235665901 544471756 204499532 122291261 355147838 153676245 352895123 113400971 364587146 407217282 700383363 816361066 850588011 550630567 31152688 928840454 684955032 762817906 913839405 872530830 484947649 790939240 310706779 722562316 339400275 271572008 806539156 715970237 649599893 488643538 594996080 410577609 949571080 881607297 949504408 95415040 463709329 830821944 244213950 154171640 334641679 352653554 927891703 734902826 442972354 589271882 16526329 406258084 200933341 722340880 654739952 283387727 941055529 134930658 70503077 462526171 145083648 550403706 780406665 722479297 907925873 78986538 768356109 184726774 513270775 731057056 297387467 354204651 586647510 855944610 602677742 41888263 400777747 285777267 698325097 243133884 872928721 819333345 275548413 407377649 859485143 318358963 349443989 270624313 135756671 343719829 941032963 272565416 717706450 283413179 446035635 495443070 956653581 191693023 858416731 287059730 935787543 711522388 461866780 941043286 771477637 790793674 265696500 156152247 579222418 622918497 686235630 899372750 325640552 19758261 465705446 965150951 116296390 867238813 270378989 865141882 264699048 355783895 257001713 466844788 745850980 971729910 691602182 795768754 171745697 404873910 464972800 476995577 205391321 421491514 41815734 531421030 944625653 804206970 11412229 135612393 357746578 281953309 207761266 264140225 721737541 841526697 332677383 360053845 800023847 106584117 843854953 886558556 327627919 255312584 975165865 708553388 948769698 571739254 958786599 19062081 142339034 781556287 276087504 428246944 422746400 776703890 239916524 641102373 973308220 639524179 397001980 472691075 625957390 751774865 861869388 968885319 892347297 774496270 293879333 439181704 829767309 98009280 653635437 962060556 106644884 752626591 770613310 271317958 920538641 494655040 326900412 470881059 240838589 605874140 426848817 354777933 257685438 411785059 64963225 591461844 692528217 838549240 483082629 735931351 457540141 355559789 420143996 993101057 389022904 523382836 375053103 6629570 683882725 352613665 102938711 776289145 760028264 322631081 10021223 43579950 400549369 667190844 804907721 854691403 186587497 899977806 240037375 262901780 440049881 533148375 863455552 281694710 383121413 39633435 523886660 831864474 77935314 441349641 372103952 414204586 389405579 172779170 163034610 486104420 497515408 805849066 308847457 708260494 315978535 798727066 660333174 311804812 988801916 150945771 441575986 40411142 735155342 990042219 442883633 611127228 689180568 949435278 755185520 598883 440853065 316209321 605215336 71559310 155009675 940440119 112388105 855614841 472198867 985617568 960246016 927969461 711506501 524403936 602882627 482723689 156917105 404475014 493120700 388695063 741865718 609209219 84566753 289672297 328354192 76744622 534226999 490666037 183262794 549132000 642700174 292102817 700202680 977200344 261164785 465869151 102080131 742143404 817601872 559274046 966788344 499517343 296960015 774911711 523228026 227629374 46654663 829285843 190784479 4183650 733165852 347980588 997213050 416311591 471027109 756706918 864289867 17334274 643016677 427357586 181078649 33147606 203966979 828721468 839440797 622840150 509096145 368753920 725744704 193569650 739078043 323496825 492357472 496660993 922579590 918246307 96155109 11693018 354897874 466149672 396582708 164791883 563050561 141269085 996961184 23029508 469347676 21884913 241844341 566075188 1001648727 767081529 195302750 781738923 518903277 34793864 484294142 470426508 758854846 142027075 990417473 116535976 425516819 940133873 255645886 616201655 520614395 894504924 718522240 662811377 648184731 133022025 515846445 97707791 17890174 390612597 768389148 901991033 1905546 855323759 333754111 348257684 201392427 421613352 308697407 942130511 115569254 269470968 748894651 1000580973 981842933 377358664 364731381 973698748 480233889 647084023 953172475 613029179 447768744 210494630 478462006 327764827 372505347 99924708 116631018 768302743 470119865 616891674 801886835 688464206 781228737 842434054 206263528 493890470 828575049 601917313 313611765 672678425 845626325 510924940 572702104 85789127 240578189 436565017 208846488 711766375 147290188 333578245 921375626 489306665 64209184 509114774 581545241 24227249 815000814 587560759 422157322 891795814 269665741 549363046 102333451 975448768 587564574 419497520 620004433 595500193 751417473 930987820 52475049 727796995 385548834 463517996 27945999 762862044 73596889 854004672 961997595 23530974 448828131 329926649 612218232 352703136 153151774 802623502 898815348 252061892 454618481 93555329 91719409 460449577 348828929 930953752 116297982 543896920 560943863 409198480 555337455 872812782 622833764 110598509 71099764 685765952 478899741 430782518 736237203 23436628 979198268 908051534 729213746 454219277 503750720 696635048 95336022 224123998 227364089 684388833 863333714 289810903 521726004 735550481 73126388 241395159 511940804 470835867 757549678 608834308 720273410 310223059 573421135 454598785 602281519 797623947 418222768 699478543 321102742 118755534 819721452 638511267 45998049 631897640 304328644 1277525 818879128 895422484 966786049 541725737 57117317 733583040 640201799 950255736 739419208 971352146 888335531 983267445 925209092 90901419 237700719 908230353 937986211 821543757 762205083 187753802 672151715 802869471 282790104 400207873 769882960 37486940 718846246 39013780 454666573 12703426 472491987 195417417 836128870 130148756 565292707 168261547 592454602 496143965 701595233 11235424 303722568 872517580 674990111 576820792 897827233 782627010 745464152 253397779 140787070 265684316 904804769 334953211 434145093 902450655 646847841 148387120 976580543 257006767 605349242 397922037 93529913 979736889 410910840 945186059 574906201 483970462 295608298 570167316 936655274 557146940 897931761 564766678 401138385 254096551 48169576 279814630 608414988 464585571 431803142 26325571 916346376 764544655 836807867 317981077 651255159 78847788 767752617 449027362 996235713 251773524 144345570 717643222 68798459 13550991 889843840 41754581 799968619 390765033 165303954 556345406 860606884 94365396 943381815 529487855 70101215 86456589 838422635 870182078 211127643 179819937 659642423 565066752 650728210 885042799 520053255 772579003 177921971 254702070 364779634 592285636 909240041 249466016 270318703 239248174 101930508 638922044 223344546 527058704 138321070 746414945 698646816 949914888 695748263 875562903 337398397 599807573 797867818 681237981 962502123 115008046 861056707 683462795 59814238 753784716 389321938 271028400 789817506 354775811 882211885 324764041 342288677 385117753 494582639 596265047 698723091 175276599 549211010 953428694 244465243 638527196 59207301 622857230 418890606 946526825 714307961 156688958 421988781 291991165 29945831 653251446 593971787 243493636 375243170 772606946 681902833 374002281 753005117 760792226 291107982 317338333 996304976 625415958 149765770 90594192 243185144 296953122 225850556 363914783 633257432 897188378 692377471 814070576 366228721 584648595 433895549 477694230 559708957 950907442 992761131 119742876 287754417 598935524 355870292 309434374 633914623 12164055 208534931 260131878 57641318 745800414 578274801 443726173 357373230 523569939 994167816 128157700 808585626 663559819 898925894 403146750 877969358 380450947 441641495 501318231 531117293 539776890 701836074 309229947 244662691 830920967 597131305 930621319 809504626 899422909 11863363 161702739 216703759 823909657 279559612 539406562 168464060 788592043 916211864 680406542 791512970 710746410 541237585 22550523 193668051 542889282 277905162 297847274 89363065 880499160 955601151 751421317 416123393 116163717 559427613 117218494 766971326 837899250 977429453 428258482 628658357 26153156 454912333 599859307 870207218 338165686 15440741 375827317 290454450 418262997 172147444 268411232 628219672 322636858 276357511 767299118 835880129 61872261 129183574 713107211 175840619 611696555 209068967 431553356 123316735 97131070 839319408 567507212 799674450 984595862 821619609 375460387 68568876 326180112 883634449 316818621 436213787 348713123 696223862 882866103 299171632 911157699 899614187 323501818 966343131 613076134 515978842 290275942 627738285 865139470 382564863 779273367 810193227 455890958 574185809 39124466 844036636 824504023 867785634 235546589 681798022 335383192 875212748 894385254 876851818 699631019 605064798 591883089 742166795 488683170 516472554 625517251 211597954 4006992 441259144 563585021 17806439 705764581 760220869 574811715 817154934 90638489 398110876 813371047 48052707 999936308 341487104 821201178 530581772 321623961 752312794 901911461 55268961 490908777 61512408 29816120 314787593 840795710 290158518 541466988 181583594 529104644 557395910 1012134 336334492 618235841 124004460 42437355 544067705 487079917 238615904 795562810 690008584 578450259 414823363 585880564 366187423 660578487 307800072 465316617 726308113 19417302 1000187926 723212357 213681197 883309117 223912071 651534807 109839455 112114276 269922153 655347018 520475944 356962584 931203748 57390503 943328469 390691985 163403269 68649144 316610647 744365131 398970557 20301876 632558846 532961337 769075925 242815336 484321299 185881599 339726072 629697173 198136682 344796945 13943414 616970588 879807646 762954935 790715333 255217073 451912832 567800496 599431358 841030070 611335205 819636567 612425774 268187491 927585020 838883629 954889295 930113762 794536019 816715950 696718935 948544849 310468239 724680682 506927046 331584412 436950422 863298003 418233741 421478669 773456226 432121335 1002203199 905258813 85957146 343974364 256596663 482649808 374926232 136215269 355152872 727894504 619402077 242133620 741061592 335143904 319947083 589522505 862989737 655283122 434059921 877966260 396928241 243095944 669912866 131987813 864078897 31187579 68048471 761443188 805936274 38225833 855093090 107758461 195977806 254116745 598977986 742815358 277784484 419900837 111627986 509138543 167800019 27875129 195036662 552425161 303520755 193966552 617253194 262409914 203761693 73958360 641645513 926936910 230227143 624801095 114291048 333687718 893909736 67234055 928020513 409049507 362449584 311231465 344629183 907549479 832091735 987693693 230709551 142439703 947777843 324276951 373334780 353766725 200664596 908681480 727175413 535065340 465144743 707241260 389917457 22768754 527139076 527443075 559750463 519204887 439806063 130886405 131110442 824767952 321496248 354560521 21736310 5561436 560611049 770425726 172065284 732378935 176692907 749696147 19574180 817543333 741505836 699193093 411354816 914604297 970387773 753852110 189406098 616946266 65744650 638765400 968517547 690546731 796087926 216248913 418471602 145095686 636893958 511651006 364422819 447050752 343643748 424979795 857981718 795559295 244908031 78331851 496090542 781930393 127004878 651258616 125157371 719715661 595550666 196352062 935670871 946420852 289157571 280776755 139613474 405519777 632110596 140294694 54303677 54619437 252206120 300759790 398723384 33267861 527980826 336397075 284860158 68820096 96245584 432406967 329252459 779698731 927957063 355083081 967223673 704675149 844653785 431515051 318017241 346544461 602230137 87468696 468405834 804715859 903237044 256126666 594910277 883381831 515446764 602202963 565516321 23508729 129466598 562103777 234784113 873547005 362949738 1686607 604181262 626319065 941785850 875120218 955997716 106055436 415483662 569452295 288621130 504318350 598944652 316558543 645960132 654801087 39506761 499838402 717731207 308920557 996368359 634718399 691182551 76194085 92739397 277267460 519137267 477296750 904618627 932632958 31967219 629025985 320361415 27474877 326618155 948819901 954432256 87490203 237008992 588631325 357682265 427803405 209323557 827794127 440812510 373662379 104958200 505944586 736891814 993659827 137892304 740994817 368104831 191979060 737597967 641226733 818152190 638894993 698865983 382719406 54230999 623039893 202669124 335949773 775158015 286588985 482812989 133712576 138083916 212181321 554804951 627446463 551678335 900328143 952577906 970475498 144367492 339483076 384923877 719814619 194436903 734141027 687039570 546759441 923337828 774186064 301431405 977353129 401974548 515106981 831171881 94976610 570472962 438115461 455597601 241279305 471592742 465624658 95428615 11294346 357185842 383195479 160496082 373856553 387405988 737202735 248083823 79043573 903784995 841423697 319842405 705348982 383101646 471154938 148293640 446901379 322429779 86837419 257503358 889039497 520632398 515057886 356912284 610806977 810731844 690817631 89517064 373906346 492382633 952104765 267154281 979356997 364220345 307513735 279581071 155879133 732760919 25194626 18291213 818010929 208523324 265577192 422140037 312118272 738738605 213807924 516806797 803550479 912099072 352247471 433234680 891744398 943381654 289046866 742709331 374517720 671857609 353365906 19507626 610161939 187937184 560168361 136440813 329508331 533333030 870980560 922567194 134152669 856684691 191197098 745874398 929881461 10370276 323257079 136982271 718483593 680851577 445704112 979780964 39262268 511394906 230364376 526227355 127931378 334137472 385192348 722012039 733369568 924706353 864939552 683724153 714265052 190061775 908834721 140461732 221360690 389449640 893526664 777693772 641074494 659130924 842013001 353112474 149662126 808434029 295295023 924108670 252803178 230534896 409191233 665232227 275285884 241405712 286127208 339356868 765654553 754279191 711825791 465808071 902104423 651935251 776534468 25617464 460939724 523047058 752503662 456107516 152703112 782995490 813309775 861218607 107087190 625464831 875490642 613499761 245726757 758262173 480679156 460294651 995431771 728590832 883461523 818352386 513910904 927088515 458266821 643401228 692802747 291971896 350707168 368714363 925531552 125747421 804019051 837397394 245384487 770341908 958972315 602355081 319665222 519992306 722312434 751543448 204972410 902713925 704307689 374323871 508820375 700665721 611514914 669584086 14261915 328062194 788301908 321430149 484335470 223447739 416382925 863265114 522863705 862933945 546834478 503894615 944775476 324039760 587442493 171277394 880725962 880658677 539228956 488769708 267005770 609890410 53028449 394267521 951618069 364202399 265332671 837262935 698688729 205553094 330441727 126165142 554275767 768952505 582896195 8362520 138944415 566586324 65850866 35150003 775142948 707910855 510694156 374794284 587948987 97152979 919835249 91466626 137217924 125371305 893741892 391325894 238189704 221898719 831345323 997152051 890442773 777315020 162764451 81668787 891808975 764897548 672251398 794092458 523162701 51484821 975183249 346976472 806866617 683495918 655863288 540599935 253057134 61724844 683129682 245238171 891582606 976884029 38848033 799333842 523501754 606636670 976912096 654052679 973155979 204986216 656234418 408253896 979568535 605582149 981949802 722794705 263193126 83926969 544749520 896803793 346552019 98748715 881675999 688317972 98666248 975542627 294247949 871898574 458355948 332912770 529818590 666807335 480588194 145741463 160004720 165640144 796070339 582152003 870449073 57225186 594426280 64233434 533693187 249841849 638437543 242395399 277053095 917112344 801281937 610377558 514011920 99751515 706958026 33253857 310379928 234248157 872832210 926058192 450644642 59502349 890530005 582466032 503794402 931650234 646585135 914527998 125087205 520727982 598628113 47985698 833907986 120179875 269187588 236726563 566627656 948003544 174871900 344448690 935564969 907588357 512724564 161495017 92945706 885063426 308335459 129965859 110736780 704975836 600222700 969058413 33209255 709262702 36017413 708001963 282411300 722208786 364225724 728058148 258329154 295423573 842912539 353043838 622550203 792436304 204997703 195266907 621340911 954460614 43418252 450610541 516539268 703502179 517830247 151879739 122981630 304656271 357676501 309478837 877378701 249123289 747703091 76208526 478583423 606102645 764691474 963714655 115559866 120806149 500013647 964043837 230038716 66659578 50700505 102588100 365081032 919648959 302840858 1002137094 40591475 387692795 686233196 892463190 640877777 755612781 156544853 445673086 887632487 330510352 238206452 666329924 845881842 781864909 485739726 978947508 57376559 60231051 209107541 146796655 755703077 456492941 268514485 626306380 649831710 230498461 871128979 454158363 366818127 177204398 760490581 222952414 524598812 873573644 846327418 571979437 135520456 709677851 623646857 12357954 883395023 260885231 769424033 453322874 584948330 874263315 660337772 730655618 78432134 297455696 581927496 404835250 708765877 127637164 814109770 264052996 601643210 586446993 922137688 212448964 394723057 770088806 147570788 646596020 788661005 543460142 356142505 791404547 279925212 81747215 45531325 397569678 258222363 27103874 776378781 645976262 276686683 519768504 748756247 10089272 125071410 175522037 195315756 218309475 283245700 771058604 681503619 297618131 835188355 203753786 300527052 770018366 162585520 594072799 907113595 205630835 248628896 465080341 56723311 789600849 175057467 510017334 676966549 508248801 927282573 102136013 71908947 90692706 894667748 570090099 615022609 771066928 409458720 109776510 490544346 239979217 44298169 794781422 187700074 451945062 696325293 773676121 407158272 811593670 720051453 1035366 576418398 821087172 425339566 586329787 493456081 575965906 378859863 705682003 403551758 560483217 351958251 777969133 109223913 317446432 292583492 576100835 986814765 616754632 959993977 353746315 407110447 268311250 734550375 169773395 239673494 608061827 915535892 69632679 52072311 302695981 179326644 138548202 920020144 440149071 233975335 470934585 640454900 413698117 603766150 669582830 18846410 668250145 182891731 354991002 532841342 686100515 597945551 525643571 971228225 98195936 954175798 327190068 7923403 311547788 800751786 912111666 98450007 876140236 153812621 820118322 781264372 969183429 937795253 155254096 595798355 651140089 580530813 375010279 122360466 591730021 853987035 155583072 459996273 831084566 683830703 649181611 825242907 938055789 718017245 225904646 777893711 607931107 386672424 910938958 937682058 213367033 879694694 480013304 244551456 378703431 493837845 143703788 191820865 161139112 905249792 367088792 16924347 91602908 41141311 215044301 785333211 322777428 205791780 72772318 373717462 715609412 623351326 731780653 743860321 19350529 199365681 483964530 730917990 821428167 912343708 421934307 653960732 687792831 624714049 658934608 472783808 866274815 452249806 971611324 723256086 753774447 289543634 393269682 215003107 902651885 909393110 716029776 969755288 499157168 348687320 483823061 557777637 119028208 164766542 390500679 212929642 684470040 667524944 497571044 188750762 914853374 17425077 847918726 407059409 972551464 945774242 556377022 282017385 994633821 473878166 591836470 863308172 132762586 36245692 914281714 200274135 702275192 384404854 860498583 448529694 792652592 771201201 947878413 690287742 815990346 390234218 103055793 5689154 108340036 399554559 903347292 539894059 612180041 671123232 323473999 855626916 443470891 263703975 991222326 976811116 202275471 696254823 421769658 142122222 153849445 374180451 350787254 865548180 215798072 943371580 977818779 530430204 12662138 873210316 505383850 429646362 305193931 613194008 512827277 399993148 867630926 254014567 744248277 40556548 34263947 187867266 642554335 521097610 534688261 613846472 865581374 346857862 411087529 933190659 47285308 424942432 408827099 569186682 790150331 609726341 770245677 466714539 281203896 482216147 948438450 274567104 264350825 61462760 520028269 189181652 196716058 458228326 530385105 703650086 30005983 854775381 964707523 773694036 967592977 953148936 837048192 615022710 503569509 267060993 991196959 72837573 622340966 215311290 538331334 797355540 239898004 752653458 126592245 539344877 829714328 541629338 234742617 830209104 508720209 883503633 792777175 156222432 672071807 350958363 277696673 907832319 623382376 427745899 682682216 685989270 958743605 866852 571273286 350442664 901524400 361213960 680465515 356422022 930720563 683969462 619852337 478011002 406400714 72127059 871055749 863721786 736013952 240755298 938568961 407214986 55064694 402284191 702368710 717275251 440014228 896475351 469097005 801346002 983827608 3130620 752938587 980962458 13454635 879683831 83539111 196996192 642655366 605703439 364253220 636119974 663452999 778496816 992196230 408457689 264265420 262160799 988534572 363634567 19520186 219899968 375380424 739496084 55541953 795091926 703407654 119517089 278306587 752140961 895006952 940811298 264823743 55879552 207828092 714543468 727925930 667777104 444528657 82769781 58044120 886851626 580921298 50053602 743050248 1955627 374231259 865936840 419128589 295795446 410365277 463964186 88247877 718287531 371313181 285958004 804721435 279744511 562499127 761224180 662631011 149313303 464774172 960262810 329257029 189588058 225918773 905345644 240301920 604908121 795029516 404554928 624794272 86858565 467257718 331096019 514120076 584949420 641475364 413932752 645354411 721187367 450861016 462033772 466019509 421501113 863374842 347705598 140242343 867322085 7248687 128443387 679766429 809126833 117720099 694228726 289863776 23512039 523085796 733575041 998630624 424852404 216880491 201638031 815467748 687908876 657318179 735148636 231587071 56602683 928290001 887208219 312883404 794243515 181015821 947566872 207583712 247175032 624992055 868148548 105215187 95593123 467074540 470196540 39112175 782632587 774782492 554949944 6178548 355851742 769427559 522346038 487061887 430170494 229807444 520804854 583449155 969587724 511557915 164230813 573527129 26762043 902139261 435127415 114088471 505996517 667709360 701793079 736703528 342288903 707398571 702538891 177807574 951792335 267840285 765690059 791477280 541411799 588474181 38913042 683598441 798546548 387466679 669603743 286067150 93312715 905733540 825215341 768149776 118327458 958185304 787632684 410000037 193669538 85178147 381076166 876340138 495368823 244805271 994629275 332629733 264186604 909153549 720959667 823400572 951068621 23177624 539523883 124938488 347395724 883311906 428755992 986513567 196868530 620510839 465277787 683095488 400973914 861532730 813489184 271128804 631002748 781737977 279451750 387854042 582902447 597376934 200613270 186187299 188621949 74825108 133330457 607593493 814343375 992573299 819474522 510927027 688781736 996409015 163836552 322075453 481583299 738599597 271165223 611265007 312998486 157711922 46118149 158399346 89438308 355222450 657073675 210888421 155524365 702723820 786990261 676811327 960050107 965411891 681040255 962651584 379799125 678672330 752137884 953601809 520111727 82601616 976726446 393174801 41669845 91012403 709838968 125021266 616944038 595169550 603366033 300306008 662171994 387270895 198458344 890236848 237671150 493083873 651441604 260561343 152030881 362373678 482361836 464210367 902215299 141974734 146118978 673384667 107483197 871048206 191656771 152733154 579742544 897611586 285207129 746005126 47042298 53407964 102432975 699949113 494035656 861932035 561289109 122917354 351927576 93558372 684027219 196149176 296600412 75131264 521649489 480868343 263678772 585941174 755904269 123236960 651081946 854030672 598132252 45645136 444592290 237172408 814338228 211003857 403973105 76350424 633308794 209611444 807154276 38532552 456993790 374011856 740965084 462185713 405082257 621405382 214682058 145229094 799313094 238634368 82868191 786046855 555779959 426372433 166545697 319062404 633998639 20968768 999519619 86156364 371191817 751194587 622405645 258535449 652917519 137753609 946304278 171426309 84616283 932450152 721311228 321456320 775278947 370459358 118801567 655913117 821007060 188682264 711095774 520587112 741945493 570086106 725371458 99745246 37451715 271029409 65734201 924689648 13291189 125753887 910356063 469347048 86951054 999351273 757666153 214622773 682224050 50580651 601761649 338496472 987981369 984038003 772469596 733039614 661533848 187854343 508178677 609786734 279579875 948828581 290394464 308911454 18296004 662182607 754532070 756795268 761438492 316402256 707831857 634401148 641441979 928907719 701484015 938104067 770551741 845105151 92141116 714484592 499046242 698111845 894930109 884911450 107244709 590544972 859803943 937745095 982039088 278384479 262079981 836021219 238218715 623263671 258765261 802329462 915089578 277157708 39365820 580681848 463882595 720452615 977949229 612028415 790448903 350731367 584629035 318569264 441433477 621427332 524987958 843191227 252764434 741640094 679757252 737650550 94820251 897853763 375629936 241314217 153520112 864745593 99270670 549999037 64376047 184367447 262211363 505943102 27837190 237567667 828381002 183624921 970685610 808028441 112862326 194826202 602745606 149280107 395287257 88804846 753535478 644401977 206582591 562452962 566766338 95177675 850358833 574326255 213376536 359966540 570613676 780190328 816818732 64739464 273367426 932838616 999045302 53802760 720936871 658767872 595031033 732244362 946351330 856345699 863235246 477547976 187124831 854258197 181699300 791892065 406972564 586532677 861604619 538044448 836263856 69041271 13058578 506674589 709101006 927349918 406006486 19458315 101613231 690123549 495474121 847117252 565649353 724005461 403430212 724494427 620520806 732198432 947451907 459353910 611191781 205522778 512888005 507498640 411595159 724938805 168284508 602524148 389948652 938805698 704453628 630401754 492515166 27270282 553624513 120359921 568039625 978043183 497653698 916293322 613314153 306959326 161593394 289521307 133320835 858029915 338849632 735230700 922314604 151627027 310772295 524527974 317386354 937323386 646295295 375975917 907367687 164500717 873276533 665741200 860302881 534954779 90239195 726063465 396153443 381312443 4256170 41983191 525481573 520870341 584886574 152175897 501912513 844037771 823322466 182022429 67765282 738921028 406244751 60723197 895029935 446879485 63832556 493904983 525433431 298396556 776808411 899517594 470696978 890108486 161258017 963571320 34181000 807497235 984833509 668425691 645961721 83961264 965054653 133434799 894630134 326179320 295693776 644146983 857841375 312448492 452666697 459007694 409480126 459785660 822202687 221839174 612766179 315468392 504308960 686694826 756407885 411019929 173682236 58663847 409754861 711218 193212731 938597376 369604065 411856139 909144893 331009366 25976929 102662393 86251940 233565128 572636926 634015120 993079929 610263336 784403823 26233275 886855439 318539405 855747902 72313001 240861135 897079558 774459560 876745541 450288781 921174688 549507086 5828716 176043277 642428844 704732031 472032755 482631864 340700457 51194464 905273982 115237071 722943903 657084281 49467097 728850683 274636824 459009675 226542838 621668890 726317388 216007744 382275947 384040244 555969897 40361974 320465270 434446392 614492868 570174333 152940035 520989583 445734806 659124318 282643972 375898120 212757225 912700521 660294172 515898365 850842028 523105775 588396551 349788167 522088674 271997589 306133044 675239507 49303322 825086250 113409613 175418968 958415520 796761912 177458721 797530023 186142433 227138742 987885600 780965315 134810960 521482831 687322591 507765684 181002073 229872710 118660458 951965496 265486611 507818757 760758234 364820104 612701273 957556085 994494431 584962429 206753993 138542321 660326362 128776825 333439637 595810568 155077492 797409997 127531745 520086557 113663391 759069904 827385701 742897964 310444921 78581945 620790840 111964259 449936187 870048587 879575129 450713597 709724014 89084292 154921624 200932640 801828885 126375676 982085537 133295815 440791525 600970042 329463166 320429845 530770888 238505974 903304275 23866748 659817735 688146297 262193738 45960940 402171151 88116453 197969116 989346433 443817539 535446431 465181498 401097245 32338931 177140909 273158222 231890621 445541712 507511633 312342740 147734811 326867097 141181360 304482260 715545222 301616622 816418038 968368775 243892599 760629190 767363945 996808052 545670718 588126107 88801051 688006696 340872055 778743461 363710192 402126340 288934782 411348636 944820085 933053974 206645887 78998440 261576328 510635448 221351976 145149332 867175440 877255777 148283103 272028222 47912067 330541924 134107746 578162559 368213125 594865173 109928832 893588138 160478178 193376886 841467059 105704268 361192943 644783059 477948032 487938152 913628235 518470204 772050715 480811884 409574461 211696346 800032951 292793022 79017997 130501393 736138765 296212586 337570423 387806889 966576808 467011051 930104517 998498852 644076629 129534452 713515089 165314739 639465281 768326645 16752146 607705047 447660660 672831410 119790049 515833985 433981565 732873492 973871832 18624857 718692435 524065675 558848938 820820248 961997025 463546993 458535375 306023392 495383716 395470031 489803654 956486964 588390599 734478378 989814647 879029927 28586018 585891073 680573921 992442616 957339252 299510911 193512846 826704246 899811867 512136811 336120482 140359326 356382370 275502376 244792506 269249755 201772443 610955592 790566019 853183201 454860754 438971636 32794097 629967215 712337699 390288413 406665178 44404453 541614878 642743086 781735189 300590229 671086663 848554966 96326988 861255020 756875701 562105834 940534220 16369532 535481748 265789128 356201502 784892092 792880865 962692552 849936410 291462828 980544259 652903221 259973246 597821979 659804638 730791488 784358911 805731305 15616541 379549685 176511380 113010378 772340324 496230956 961105263 757409415 406351892 105924616 883845325 673955879 886602132 863129051 167644145 362008276 990315941 187944550 627715680 781975956 302794648 574673681 110548667 73586248 938909758 890269682 995480260 482597842 610726515 414886505 914466672 758062643 768834839 63777266 656119857 22566556 755725614 280335657 835480400 769882938 55592904 653482108 98213817 116983613 742418948 162362952 207883105 141645334 545169393 816622035 855750352 975958097 343368046 154031809 54434748 391102789 46838349 35648389 980961043 701920485 703057697 341209206 396472526 144019392 378560027 603315730 29295364 979433456 272825306 483714356 417339137 502238716 343950986 689834212 364304638 378718492 121396033 708953454 48039635 763990234 455875274 618351821 860744797 951532083 264030539 345046910 416297019 23065286 254019238 655887629 580392991 760491498 462622340 791036752 952490946 258545862 519296353 988849189 392062727 340051101 78345889 465677297 553596306 816614084 351684447 111493306 967605979 258464284 936082981 796952363 707030927 121288955 707010988 152773388 565742919 393843137 37822744 29327532 988677466 821834065 349275047 42360047 161355785 654413607 126571721 764740392 909018429 743076721 91697052 452673684 610044547 372738739 250536531 67223038 784972305 604072060 804320547 226573999 989923902 254482339 287994452 451929535 891801458 703956447 788440927 231337440 501102569 934226681 945742745 792189918 35366511 872759547 374764154 50213726 95646116 834871103 411365589 884458634 724200669 659878555 924292787 672942634 198617816 665056631 831057697 726774032 793957304 242212788 78596240 612279591 641625819 6350931 501423051 826253586 801540763 323326437 108078988 431835814 483320009 22970093 269279110 621949278 120617816 930953286 408649767 822117561 790619650 310670078 850522824 992909247 135226402 351130352 81061883 911456137 326851934 579221034 147799903 386071621 297006543 149300184 697781812 493206775 493066879 728500533 631409082 862157624 393395676 968592273 336938611 31019675 252539969 106633280 572431464 447471085 392115112 751709220 827330879 753873612 892346664 407577614 208608936 12075829 655611112 610961143 535685359 960858451 474957539 511311092 351708959 420196036 425149381 492030646 639732304 584987556 182686113 347379356 363676427 428631038 531446676 854766260 26177205 691988915 85439871 443883233 945744491 430960161 363722194 880654274 425815294 146732296 543215755 423888634 58274399 897576630 810800268 171796670 363750523 795447098 618284082 139797239 150684132 983881211 823629440 65366541 70119389 61859591 566778258 876048087 949137717 957099485 77097204 274802121 983075966 884116087 726103015 134599296 212654581 467440946 521334196 719336729 240887947 661647969 746577739 202668681 416103971 178629019 108958603 49176797 393445857 892418978 433545929 861907912 894323778 603644820 46673061 299535066 125167746 910294737 335269108 237229731 934753776 56899976 954159491 682834659 655301739 500284841 368420932 608485067 289698170 338720072 930576102 81888829 215591970 395244888 753874666 318057479 606535830 531510895 11178025 718406698 21231367 877766510 992213943 752274793 847858111 99738579 750328164 249202528 673353407 96349172 981208824 971103325 227473749 670399027 365363515 353411493 758391817 65920021 208157432 349476516 138244967 833731570 227108833 294671314 110133486 914729903 570174977 986008678 478882123 484642170 807377050 942018502 31823124 477410879 985855415 981829952 930967524 166748355 827851945 553336522 181246657 606824249 573973795 188621820 30930768 925265836 185351940 2360609 220437392 860446231 403093689 790454104 8446146 165845585 521961955 424781559 762682841 251235289 129797075 330413010 170494315 503513140 248987371 409825986 89567763 63498328 938106307 273628645 310573415 558251593 986193404 265327555 330122103 679161992 169150498 501663812 801938353 721608080 371558994 112220444 365858730 973360763 130732152 627186376 848542895 420105745 659271025 710541764 899723470 24054863 77989421 395542242 938478690 532836258 807717380 276711262 356728817 527136397 522831558 883436283 169088995 516859308 841447054 763308907 554117696 509552771 535188329 163894184 129212631 441236799 7543659 390883989 13335306 979363391 824428113 831730832 244327834 867890908 616581329 917893093 434646865 476560576 884891423 988495644 587161178 26928222 672803306 304559375 323900308 659395591 654254179 551130845 831271901 333263963 170208570 469022468 350152168 499325337 428427657 168895560 196530552 228971471 464678834 752880516 929982408 123288568 673118945 29535261 17691505 18416322 383365815 239410447 998486503 454034083 298135944 487808926 442640714 323667127 993900076 183410102 685076025 288628163 443681921 760905263 887527889 732123368 638546505 66304471 355042052 412002348 600823618 107917546 68635427 284022072 182820022 64097741 787730084 239198736 951470405 753052132 93148217 878375198 631508389 641505572 51125384 617319521 660801976 104336711 325906159 725617580 665103279 657399958 464614044 720067847 456847160 895794228 751918677 693283112 884064248 836119860 794010016 165462966 816201089 374946950 270471339 653293202 32221335 121863176 803119278 720301109 276776030 204187679 562982071 217317110 435424691 363741132 140724627 72172925 838067198 735859294 684541427 726472189 484778459 789179821 526685097 293172979 64911554 816896504 407942417 575322957 806703206 390037059 596619108 599523755 639037033 165931746 470433314 393154632 877774184 752028575 611688666 376987948 281623356 845765603 974431243 637096172 186692743 346945624 896828649 667984024 470988924 68591343 589787845 908490771 768897622 886677059 10727935 345879411 141794175 211317878 551712172 511779809 22123520 21924619 886953429 39694170 196721811 313588497 819906528 503080508 182117009 103175984 488713827 769507690 565440716 830314475 947715852 824307002 536946950 21926049 894195154 961381610 587427247 567604966 13478720 475246857 669501453 620991229 332898514 746754081 709644116 456941066 899246925 296565196 127024161 548569866 600167293 771667535 166292431 264664342 409844261 358821987 396670112 371192708 689329004 718904763 831423940 565481642 664029219 629071239 739344495 25133237 393914115 624221597 721516477 230109402 410560241 559869066 451579273 145800301 889339725 192626676 396710560 422112933 432347642 713613197 461564709 231525201 951788940 589887357 437735284 378649656 308417400 12373643 102145724 245064678 556164321 693959455 904338417 15886400 632054474 579030106 364228080 414053924 464049082 805054031 709619617 448650646 756438396 387033119 316755182 773308111 738646401 195992083 802852691 700489549 837189362 335457319 89370516 838446580 854791032 377950408 840228080 216861993 990620276 38811862 686331632 587178190 225023374 650949301 71565553 304894355 543843373 181027395 812079318 783878246 995586859 216368044 269281121 739776778 165914936 440432981 112437088 525724676 798902792 847806860 34772319 292273201 717473562 967417584 774679888 641321639 480928257 518538621 106266105 332603452 37565457 389392183 115013063 659534340 467461781 352055848 14999637 160416218 424764473 483524894 829003626 148889303 791832724 948358763 369203819 727938783 328535270 446575642 839586211 348874449 82883917 482820713 711356914 365204192 677469535 682377039 24237353 218290225 308200482 671678733 375872143 226604220 671909741 46910721 459671875 223503974 254183286 839648547 533005589 512845101 469494815 582026421 108818233 413014778 555151482 375620724 28245305 355737273 18155410 511536513 44902750 914815076 974439601 488384081 929431136 355590567 912636612 518412593 570966463 212884327 696005439 834732901 529138883 734309592 857476778 17810055 294665149 899991554 835859022 450405183 725953312 746729179 873781206 481901308 67526767 375171554 168670906 952932870 669031444 181670388 354457978 990104495 202090970 825016695 842394055 535824461 19160616 845098446 686213209 978295020 683202333 145382103 333965475 510761009 159389748 300968484 259349719 784106801 407166836 226803476 303501605 41827539 790018603 99669836 766426898 502965834 899917622 457184789 943577521 747444899 190839486 847816786 838531453 437388934 664263386 360705142 364025234 284369011 543582340 697649557 276468376 686535131 393918133 301143218 801325503 284582801 682823726 526766057 241959766 616455361 24693679 43633441 650256019 643692258 923641807 609426701 685092515 137814128 790721574 589747113 247705703 146409902 794334126 293973648 414782557 271342911 353481721 75612370 841192307 106800157 48712249 861213391 15715077 695654345 452308276 366079403 65402806 612413154 237301267 462631423 348485904 148830515 294413146 219791983 680142326 337483219 834778109 201733647 551716606 2857596 758175011 73635238 310092627 901141299 471788466 734826111 346333088 162907018 82751151 980020583 682526067 246287200 472503306 16716793 728021436 634861662 726588756 282413599 692324319 557000874 195467732 967911252 535928818 760423751 402994585 145222361 501273497 391746025 430378103 114032649 726133515 898242249 105959396 467235316 210912720 560933096 111752583 100007141 954207459 70575651 37084571 48386552 443440322 164543777 436718963 837371599 986331366 4855143 18182473 96890531 37515167 283235850 818274269 772592523 175719044 356148951 728663645 486698301 14713153 911882781 751408725 744820049 744355740 137666960 654987936 295692920 585029454 160629999 76778951 33012755 647469193 558682034 290494296 438524602 931732028 662632385 943682975 241932270 218213862 638275742 632645505 208702631 435804192 497130630 713486383 882552997 401667121 828566172 573847624 950962870 90509190 338911452 317037581 807895078 48272629 967816412 69328096 757608596 331490261 653543976 471788081 849404858 711919001 461447593 351069422 973404651 453725907 954751075 337293402 491282764 921852343 4340679 250980162 25072657 817624807 91848738 138127243 171240591 666693977 814467007 602668806 371657321 266790197 204122501 222209639 548088205 482440397 964707406 4152489 225410683 432178716 975215248 259845072 80339674 212777358 666159469 21108338 249980260 43075382 559033706 108451707 258246357 725054304 454488925 837883705 803326626 232158975 356912130 662257418 521188604 628600794 42363892 6106652 256918190 517619096 454210012 381160229 799311498 789425131 707477328 904714590 993996719 545516334 977785172 180582987 775466609 298992313 59012414 424500614 777895346 885054522 197196682 681410820 78630488 749940972 679828978 174766329 934609415 678152710 619242104 160018766 68518451 491734557 687205514 299394967 597405645 267974548 216893431 855855430 476327598 563936749 884805250 493640523 86813220 307474218 821537077 344357859 446051690 26631627 272058347 256773068 82615794 845423097 972148006 757220099 282348514 147822935 637912958 561520626 987207185 68278659 726058602 911817849 935198365 331442711 991179605 318046489 554771303 398435414 533061112 252926344 593829342 664970329 177378212 849047071 142407747 942290321 138208179 204365335 856459358 458256975 729840871 439695387 841809251 519486457 430240291 924547810 328294124 801788393 81985050 809006753 876377951 468265334 689642694 909754681 632917547 691495401 963129778 860440763 57207532 222368944 381722847 644449145 746013429 864946826 905662753 612444364 834073650 503602117 585173907 199280689 566152687 609161309 509411907 871236559 109181861 753755123 537791547 419483455 46825881 351087674 471772593 61874406 445252226 539942194 414396084 252247571 97969981 271124471 805569696 108199731 194909651 458748959 342916792 936010525 432184131 394333011 944714401 211433075 408016799 323962111 423046734 44842316 798419974 716948786 151995158 107397816 913473969 925746187 718216215 4867000 324033841 860103286 395683135 78543411 632639158 311633838 881469010 21156369 698908496 203729862 485100136 566913011 245591048 359334847 726122844 734540735 23210156 557203858 810830037 694300595 754613430 92736427 881024763 462387708 689398644 683532748 260649957 388270977 86782908 151740095 279669548 349283271 969117926 656906477 956842487 738295192 40919007 289664478 327451532 19305754 632731128 164679754 587746977 477730684 68442091 582718465 847268845 483309645 217160537 838464777 962923705 206768631 347892939 112032786 663608801 496088712 900079330 471579431 902402153 631858141 700992666 987806508 585979033 652717093 62071128 36239709 328889660 576628461 664577677 699258347 290110273 311797093 142023319 168538709 362297191 16035146 296251039 267481917 530800383 92029547 99808245 62000803 832545807 60100177 715714242 757611373 40526334 466040609 674095169 356927720 848414868 969807564 310330533 459325309 395919362 692398039 57807729 951062435 902456129 727364437 688317722 39089029 860679568 396580847 130759084 447473193 358469307 804942615 828049339 849424286 463864701 374573786 270134074 219412673 680963398 148958378 912788526 308684396 423037064 202215653 306188085 47611170 826211735 699610868 908363412 291382204 679970866 238164134 312461127 792968222 243852595 195738106 973194948 549216823 702979768 136309791 175753505 927747330 436572135 660764544 436664103 293448797 491097715 169694443 441196397 890750397 131324309 910243865 804662517 478708445 255629048 406433444 251050989 73108425 705823062 721919415 383584955 503744244 729832893 600847265 424137505 721408476 326442370 875507056 107470237 301059005 17176996 897023016 273023835 866002283 114133402 579116125 335846060 209879960 974453968 676755709 944245519 334049650 486388265 2620892 837653058 261309134 919320562 70528625 911343396 849937512 707767690 909514860 129180525 128876756 74106702 792815703 360240781 833445857 151636510 35376391 193425326 16197429 739806031 39983704 55363515 669627227 621801051 141775699 66155623 623756542 348465249 727637347 345081788 63558657 506159907 291188595 140216480 431555548 509412933 226788258 148493864 756966898 521759069 968704029 401180987 60252321 34146776 485986473 124008858 767320232 990605334 11395026 729196557 384794727 827379588 791610876 746342252 240161388 971745420 701248504 552713207 753934007 141418741 544958747 435051309 171113466 404801978 126234133 135439054 641758138 529124302 879965861 785209085 664552000 299742939 368401328 677913786 32955664 72002322 737559533 114759245 936597370 278847618 914376184 878520542 753745186 421540420 969217660 841944426 356908932 823798488 868863493 877380456 351945043 298662206 884551476 468029875 614800861 402398926 948180908 860919072 269636001 159570362 91923952 648448152 100755793 210833855 686141750 749719975 112696804 987277405 726723656 696031769 323431297 390366422 442749291 297141610 103078907 485898770 309769223 412547000 478425031 531386835 241052825 235425615 433179814 697046712 295931369 335306097 489925739 895164841 315210282 246070493 505666922 198559197 840317218 339368484 562399609 245410761 692550689 13847970 660095303 809249321 567798548 722804816 514908952 285897952 4754584 907873062 295310459 734698093 965970160 414458137 110034553 155007150 190136603 54750929 962390082 625575255 629883787 211387570 913551843 630001557 675777561 667479202 638692280 985095768 453200686 368521325 925280006 140952521 444863405 723228506 327017951 983820225 934039733 741723437 578569586 102920237 766763706 451021985 973135193 559680486 229329431 775049886 814941627 697624781 503219353 458144243 260175067 383504933 446712980 547739780 630880803 381719601 787671083 649155061 977656509 223378630 514610267 412376374 567372295 316574221 443249427 76445042 705990879 537486359 523310440 879779137 85325696 46882493 849882175 57805833 277433297 380159926 130671224 622497378 945780656 629248200 569628200 19327264 671796709 948387919 858187041 443666281 272064080 342191244 946621491 253960774 249034529 407229679 337490301 112719798 127434103 503137651 71921669 868515682 567878784 808576056 776718583 279666091 818618564 123926612 73115271 23689176 501294634 994191963 77284820 125842406 397364044 409565261 922670441 890657192 821603190 984115621 150540173 227937147 465074332 594780215 508931119 352472421 588144004 774988612 733098955 47807085 401484331 540698973 467499414 960594119 554434237 482418919 417912038 165266424 143567843 884555159 112325126 726879667 321143450 740398167 150649038 358475860 236378471 102054542 828585492 545800645 641302046 5549141 105855971 154158786 428990414 228639732 125703005 155791890 6398717 521677872 710751419 573539000 559950806 625082797 108900220 165728613 422251399 150440834 268947430 936244813 255497344 636170664 306099627 965586977 235524971 454071212 563612442 232054272 836015259 958917310 668678242 29536561 116636116 752873502 66890054 214853783 892704287 243112447 827032252 882433983 34097684 544520567 894929730 448811940 514444240 482690563 271210824 47418655 578509368 196398630 51610265 129743988 284128891 946721438 339041054 76974215 384883727 38767753 100115307 411827296 905248782 188612000 65826873 348877541 916554137 394350338 34424840 319706015 621803465 129969067 682156951 370346884 159797096 19396501 570694651 171210611 45600002 144418249 673516888 712296532 539982621 446651866 753492076 591645840 810960984 778555201 57562711 715457540 537626395 472002110 616072973 196140807 450115202 99504426 141401727 561107616 76228615 797809921 146817768 836235591 113216391 939337190 725202165 281160550 38744410 685496576 154268690 647298724 202721505 503590812 164824023 802834750 290302766 174701299 268612976 917996163 758052174 37933440 659867336 321781043 873767126 519202207 695831755 426434324 280649031 543139754 820421903 967889921 931663313 758774812 509634501 422925989 320846466 429753844 374410062 202065464 182276912 518766789 554909509 612547599 717695890 944316757 117145249 615312978 146179925 297523925 422516265 135035852 223242586 529986049 506487677 974732486 608282490 553851937 563875365 956224691 622822875 87066936 841451611 372222765 599797526 390263715 133141589 27911411 203109714 677062431 727228590 19857882 104656844 416508894 488333890 664124633 511803879 417524627 555784528 97162709 304327605 19202158 774700264 679119985 909576647 20384346 798040064 430024056 190285622 2591105 101611379 845653438 550415630 774565816 75538625 91437289 90801693 918713518 484912143 971493767 626519443 299195899 769435071 585523020 692693049 517225682 750439430 362717154 851610493 609514210 803914130 996251372 289477350 442146040 460351328 759710495 456893774 243544414 759118888 16238058 638074470 998817615 550895909 613228538 591190902 79844317 460528540 649598269 229552302 274621888 944423994 829733272 312340876 446041173 482900426 741382383 144771831 429137878 490203753 510480463 578044795 914785614 617744885 793320888 708295827 429005524 313958655 772002794 277507369 115446405 546391836 51366164 496866434 319118670 369317661 941000766 155385256 373616797 45965681 484238485 312214702 732514152 961076157 591147712 845367432 563373433 530098358 999001095 342293110 130663065 385365909 952931801 780521629 178074760 920222724 463349660 821474526 810395849 568435364 111560854 779819609 576051233 857018420 751041009 630721739 408041147 12191620 492575400 586145893 888697830 995163036 769290053 850993389 505820372 791476435 256789438 614633682 761267011 749595888 216373159 185222792 440361748 674756412 558700146 602768853 584530797 32521284 483562317 53436085 477105753 577893796 613147653 749099939 43525667 350666993 219689142 15878672 334726005 739125402 222745771 256724191 271207261 434624711 793505819 972205172 926853894 129643794 977857658 273889656 938990056 393659923 119299654 799765690 64183489 706200758 103090326 267180549 461481754 954424696 139058317 815285903 645490129 485048891 653503099 128564436 832690666 830132080 798810306 637548754 287695027 395993791 29182718 356110624 391349445 235596146 59018152 951476458 140596948 814876310 840441954 231011625 178683587 882451837 127091596 665806737 931374628 722320653 217065266 598985062 481062909 344251948 506045253 230627337 584127162 969444991 898903917 296568515 614063546 756012043 939252544 154152974 276952232 412913200 530034099 2601284 919236865 442367837 736308084 168975908 265734800 676408299 839047241 341880331 167067538 868668717 604240242 357857750 604271218 711956289 463307333 875828246 291284931 116744980 689154770 207538819 451892973 905066720 868166309 773395482 638896744 599650509 106943208 703688490 415736395 387961945 928332376 983402966 197292855 824812092 674873006 45351409 716444496 967148616 84401974 860005654 230021107 639618927 119315359 117300820 455502839 418549238 632785874 359286197 799352207 376491500 230428906 814390051 145695750 128691834 876929337 866443699 169335161 323518146 230451828 588754731 97077304 532591847 56970876 620558773 474034345 550768856 904233431 916818280 878986997 852983506 356224450 703144438 20351654 321574260 408137542 56398916 412509762 237397469 337123819 636788075 470288426 443866022 872718939 353537876 508365693 749590519 776944461 848237051 281585283 284431642 583124336 564300135 818003945 257844757 427221600 783926986 727328175 99408677 444992677 162518050 959856103 229211063 581369059 102933553 925363664 410232384 2738415 787842258 30586242 135989318 792113514 752722295 241279724 455607367 818570268 110195369 943027639 792306975 812491713 569482552 742024218 435551000 143168247 783227844 461598226 365310309 164143426 762962109 651425048 858939883 730496163 762910458 776172387 824028193 585680394 883111266 854639048 331899875 876707508 558823658 848426737 370605226 436529033 465914291 200381658 758079793 539768634 710745223 984982532 470837613 236020352 999557554 879683166 427789149 791412501 762467515 40218399 215416635 664493241 136209240 365911644 215631835 198292354 917006438 645234130 932298020 613912222 933825335 724903158 733609379 116360766 948277523 832406535 348235705 385904813 587233222 785161112 385759113 414235457 292331988 599608696 522484066 288141904 402586280 151836817 80857307 750081818 574436550 736255605 239590848 149121448 367688087 971316704 964941214 645464054 211643175 597894437 219890920 476060631 742050505 693137241 960136344 430619586 102163672 778298091 561065515 617508346 5504092 524707390 354822064 334471818 528760006 918528197 616543740 763337467 503142193 289906521 237191106 927121769 684577773 21614469 688448050 577812231 518949053 206007877 800182018 894641506 604106737 950386310 585819131 539247901 784792015 614324841 840016689 378876773 501524832 457959441 870845633 520758407 693775318 621345406 527073027 516095515 900319770 465941319 1337743 74936598 571844585 778177541 665967341 176404029 1847981 561983270 169289973 647594771 404580404 550777943 159080340 950552685 870319727 449298372 825994211 480373452 168974849 612697866 603439631 299567899 332895030 956404400 960280703 55936864 915935754 929618116 309594734 501252007 664802092 100860579 7383444 881850377 153329926 975267287 514045014 969344810 164742289 451884728 603089213 842977382 472273792 403679580 788624247 107511390 932871255 667181142 480019243 733250780 855187895 603015634 466389172 59679365 729759341 599559226 573124787 758733660 189745757 751288644 615105387 760591633 786606123 233312693 546633916 17580825 210415291 622493773 349944296 976222934 56366604 44608170 445679751 792959971 325765888 436198521 679163912 2724043 817051906 891287903 841913026 347032089 65156097 516777460 862267270 816983577 760603282 694617665 430548059 255720088 420982434 957857007 858634752 637686844 776813004 423580782 269467637 914529433 323220399 404201748 678449193 20678936 478281823 884563831 429720924 491074271 543979884 257528995 311593688 97981296 870630939 514136331 517049151 65024651 444648496 551758780 838973651 185885110 571511775 211806627 85006706 815470166 103638217 565655114 568200636 453833897 49224626 761925342 185759489 172459080 150744224 937068183 646922185 551333876 197638996 293754115 454974063 391852130 471272254 652112929 783547350 68118257 898539385 299034993 373246936 79809445 422833875 621928552 622191737 627999014 114121897 744713620 570421832 656479733 945357315 13301896 194202611 334474953 769460120 373062610 176174303 335150191 438659213 137154652 268933076 407362754 389832957 482384749 6221886 931062584 408183355 157573809 632327327 226759948 7703485 741349425 526066211 440459563 360954783 1444815 343074510 662149000 146826634 19234524 338785509 17412280 44399888 63638931 997266089 854050893 228090022 936903059 406790811 356248872 508229615 287094647 536069145 579219186 223816678 995773936 477134660 670232428 747665157 640675857 602175144 493240529 640542367 385312440 132667416 643275505 514497830 573286110 885924627 57047385 242709962 155804730 477682446 401855957 267265653 719724788 522468271 973295602 827140156 365335269 871237153 481673294 215256235 525130655 566213154 978595609 773938652 383076350 439212356 414193298 600307171 253408853 311039843 524536529 923424406 727240786 209463462 314137955 692541259 790784736 115416006 828793529 796869499 904903511 481173647 52561575 468089333 707344361 133114025 27062245 496088104 505080629 951391080 603904351 20696357 321657923 453018375 113976541 313090105 9190233 10403592 638936291 952439055 864949098 911972660 37724265 596677830 877359136 933445411 339366832 916382784 914269188 219454722 429816948 370995954 105133059 323871400 694238574 877184645 378663989 556257600 126998764 16615732 652693473 287073849 608466607 286352647 52939468 584851760 983830809 680588951 587543282 504853660 745574445 251182650 455589103 202647753 940408176 979497700 853115224 290072952 487964752 702222427 556592137 605132036 527267438 394258561 356298195 623168954 995599545 315768673 374303070 237656053 695287834 301444095 914201384 855462890 911784113 60687696 659943123 157286342 77458729 775761341 507733768 299342270 413530975 20535564 527295163 163822948 223843632 701640177 575033382 444891975 184174826 290689235 781054085 299881998 256999565 400175687 354253647 644190756 573951780 216058545 483585091 998826786 154517967 169652139 376530652 436591557 292060765 576914367 66202674 575154282 60864315 393112821 546670630 302105796 966275679 66736572 146071620 647909010 808041981 371574056 216752669 806829402 145692116 476971694 323404 536613352 912106226 384540074 966619315 843966732 543176069 337485335 672533692 509102311 575894665 296341244 825468481 716138937 246635367 765388535 115630900 961409623 463996678 970639632 254226212 341459508 698615258 695587694 999941449 456265649 70848582 832910547 328319073 937285134 428422539 60987412 260608149 120042757 156061210 322523783 741744119 776331518 81860764 820026337 552660888 219977489 394395620 19414431 613135622 870103295 183939255 156746414 710849769 868430226 421196804 429441615 646867940 128991613 416408201 13344958 504131809 577963067 844788295 303925695 594186303 184285553 577148466 960030832 704082759 105214708 412901546 688084048 76021297 43491535 928246133 99811753 861140444 549553870 936592814 922174501 394208952 73954028 227900361 451198591 340805082 128961479 633580537 533627925 653469851 528809588 306538011 868228246 528836804 229757631 129602705 975871569 84751024 969693642 40576771 915787582 308086961 185378545 945248752 501312343 273613720 658373477 331644659 958777692 833017129 116434397 468099902 565650367 208197345 886692983 25881651 950623655 932208401 60471888 727793758 270697417 727770393 549096871 644336376 588488094 310656437 807405795 324717303 977132796 31912213 232647811 280796326 749169164 613176779 713098059 26255882 123051912 568926247 546139924 684428190 442143638 954740002 212265550 383333267 859347992 190335641 520664966 420337401 648459732 32727489 885793486 166691091 746301543 39983648 309972183 565264569 631413849 551283811 20496066 673405982 530023766 516720925 667241271 559849452 229821472 958619075 699833045 946122264 397323788 392937022 644275028 457733289 84859360 943762650 878526007 112527731 474352079 360403844 273470915 51846079 450858256 733991395 332890995 916742231 978600056 514547200 902148898 420840739 535149270 94933411 465416391 599527183 875640992 313245197 179134580 286726679 11380810 505683917 242247837 810730226 198218887 115666000 105265785 319097754 764706729 201481359 27305491 174364392 577478683 291038993 878391091 286647101 641704379 281395707 349429227 458648025 281691055 260128314 253748673 335309491 777320996 482848897 578766065 855139545 556465820 895373912 499080451 697525702 445941099 154692986 105318632 726803964 954893955 66646341 16120577 255439551 974695540 898484373 237241959 988815500 185348061 947857378 745969939 790907776 365717457 614593078 662566556 6746194 344080021 921934457 125026789 569631372 12652064 209969711 88655627 912742614 749734429 479960687 497984631 171208585 149842560 37019913 944221686 988239350 452907393 272024434 326642281 994227151 121315809 741023641 778390686 257325169 463129246 995195043 875290352 387444772 596250569 230968748 622170302 194312205 740544234 516149072 32317977 612019012 113732561 34865587 128829448 574940610 675755312 411313085 332390570 878623911 835878551 533040559 239498696 820163891 975201449 499436127 496456865 662865269 474184149 190044355 918089180 650200549 284286259 11450408 146962089 483824903 3425026 852750838 634769061 781388721 815596067 557669047 482776667 604889482 336782045 523229444 467707478 750466016 256599553 73848153 687351726 762970450 558422585 877514609 213152561 883756200 476250378 862780114 683326983 697527292 240780505 930149594 218770254 776494272 910950689 836611308 294011734 918717000 716754295 532731036 721952209 663003691 509037266 84091187 318387511 70226041 808118800 241634044 233087069 981291629 622457491 117027599 567949134 187940511 753623726 88858823 887592963 966604704 131918646 27560677 649778364 811548966 733118846 728869239 111022866 671559471 435827496 210195015 130183980 634036984 724824389 357643748 968880250 390913098 142481167 559765735 799878234 804514715 92637835 255961894 581643978 574683845 36781083 293569652 115884916 40468745 448591986 498227226 467595472 295366619 965034023 918952053 420009994 748047871 675536423 419976758 806667053 402625376 235130105 341896167 854528606 705541183 510019234 196071641 610407989 712589765 929647141 149667813 36778696 429823585 990162106 780606151 43869539 321501256 109326357 168521919 98552841 766251558 541655091 922411958 980924227 961502012 394901366 969755996 49863267 710415017 657522229 500485589 541571647 575167222 756754170 185737564 522466984 858674562 394488404 140797404 997893848 114723263 453765724 639807338 86504759 23032155 594079384 655320558 960188793 252705965 655865430 406679353 618784875 843005250 6972766 72880790 794554806 165605170 583360473 976683344 331123643 190590151 332819799 383109922 582944781 773130146 11297782 996198128 820292982 800250772 294970291 396539855 804501477 943718583 403125662 385915957 568621580 810944094 640817197 597450467 920045881 476349160 681929423 553890535 414251256 88388069 960764570 801632391 912914511 305584122 753401036 857433051 592429799 827195493 104256468 368881676 555860425 712817075 512783256 205859163 57570246 476913440 772642410 979139270 870537349 879255929 932644746 841260855 368720315 344102891 92048188 183418107 974922247 849164523 244182666 113308692 897405538 985051035 700108494 802869569 89106720 432491317 92613722 570125164 949742804 356494268 531245029 973173628 689439527 424285203 397090280 153607682 436918325 143999169 813685829 645845630 671072808 643577559 64493602 96989080 839656274 442988744 853951227 143124438 482942372 829734400 512022992 425041715 894223274 58656018 161174182 796077186 462237781 195513436 322086010 510193831 161571145 917835375 392961189 64730495 142357330 906674000 425263978 434727625 868402990 310826104 507420122 530156138 206626756 962446170 777214413 64215801 31643993 320183 198517564 61822820 102513119 505355113 400631725 883909427 160265816 414450980 415866617 979420822 136047754 327020828 566486761 480301392 25071665 546198463 438076988 402714280 654310452 401323680 957064635 169064644 298680866 306047236 125437908 345859964 889201055 310171554 138411697 673341536 400451941 80325927 520487813 784023890 156066925 284483537 28634761 148859637 771898424 431825793 595610311 433034110 767039404 566966679 426288573 611592773 599737125 702609602 139235535 45061114 950591299 723701439 532430820 980694899 259970713 777535060 673510635 41353697 658792958 55674012 137646215 938521642 222856378 571351186 901191503 370951663 875587010 960457423 826157824 936470037 345239432 236036174 102494611 346445740 101329239 997930118 963528917 80742656 454465882 317480034 315243601 609343312 947108972 143571120 102333516 383115349 496591389 530283968 902428404 736335189 823159314 939657059 869647119 483720517 637415157 424592891 913808083 531767569 97132847 475420446 726571640 435746619 985909283 889677975 325547187 82861274 268998187 917140392 141923051 808505550 876803965 204595362 667651606 666810040 911422988 275342826 312815601 237838788 649294103 367744055 283093099 700279897 24031856 226588021 475335669 799186840 875849545 891196030 735673355 820687299 499440551 338333536 295653433 191083078 650082537 276395287 529868443 300967442 182244252 833069304 884107676 526343996 879982773 533576735 804785098 484178896 555827177 445863406 758395510 30423437 508655721 571364723 336298906 873529386 415122191 358374383 464665148 197273666 217335475 182752094 23906693 735690767 596966306 755985327 936515821 62088134 901714935 399233318 658908005 165476793 627797296 685273562 595013525 620169421 755759213 496043402 633858650 356090386 733678061 866195736 699441271 724458221 419861147 251121381 198751465 938693013 905571546 306008025 748907006 506848216 31280746 202053303 710532852 141427946 384904887 412178602 966293294 384012096 979427702 957212083 292610990 563453344 7640173 499653473 686506259 148423009 325904480 965173410 129987648 776545023 684931691 488749896 218040464 1466643 194365848 878801416 277648922 799892507 977702486 459262813 983584675 479843159 756817359 496548633 309004808 661501304 376047278 138579339 283014832 276975804 13835459 358102119 333017839 400880386 409357628 199870282 981489290 939249057 659771384 665309650 716850831 211624099 161268703 664193632 945628812 100093273 496095918 579679277 973132471 879110312 912517393 661794214 457376815 823456522 903529027 143362202 423719067 56519670 112372718 44473657 664335032 58838331 307234875 774293871 289436132 871728743 229070036 190455938 428372605 212425299 652830102 678851301 937379994 112721992 417320985 321840337 930688579 37588006 186973628 394129319 175364735 930918553 678723926 444287216 191876949 635752781 834517959 974062554 686116825 432313861 443226299 582879937 816027781 114322128 854186363 317760732 239560316 605653702 898653995 822879250 694304183 112915858 620127073 251431245 143294823 883549935 538203660 833570557 818999431 537327931 951384402 359312111 507848811 229596855 80711714 634052920 192539904 262563104 75490248 911281262 370233047 389000214 384139243 852235451 198995946 996465281 813588304 472544512 280454727 454523078 745580083 60889624 904270124 926408712 352025852 713269797 87100319 62360790 528664074 86730565 733185857 480309178 377299210 443007048 132458172 769724097 321921535 110382827 150370694 455553920 531514536 853510664 763573158 5374717 926737664 656952095 772031501 250110006 363788120 983962527 894849243 401574739 606415765 29534329 320898541 954418977 604714110 614880236 517095509 480818362 836626721 219446291 191901517 864306855 323680268 213401962 942051804 903040921 755255239 970488601 806857596 250220054 119795909 247352143 701185160 809251560 391503054 837831918 789374810 116362139 616273452 799055048 64638225 79839346 135240633 572264696 385950030 124477827 238865759 598335098 85781225 237222431 577152396 186589187 884185208 593676857 193739081 533987015 215745062 346670618 910198081 1661344 865519817 780910222 186334280 847933270 282189140 921029326 719946381 823774442 880994120 272736445 829503715 197158564 807884294 743157465 78498867 235381251 796437562 521765287 970597114 352232038 863176056 977455708 579695848 445382582 738529393 211200232 802175799 385881095 748317533 119256420 377634141 508885562 305719712 492851728 360686246 184407519 100428178 478414552 767955350 759438953 726160466 54317571 922510154 440413700 386750030 219671030 912072910 112333199 261584340 742424264 220557122 958467481 915426601 615893413 279981830 278913631 670563839 980812915 915858468 10719700 715602616 381912942 495212329 580069102 797452834 759122422 101326161 333415003 845251646 661811074 715398345 283859350 407132049 587463511 238267952 439462430 143699355 1287832 393276503 327089775 770477099 680773319 464773329 999314867 316694159 259353110 941741269 294350455 650558701 393339779 502908425 278262771 351593150 801748011 341379351 73400318 600664357 432786090 35599215 743972521 591394101 848587346 117874881 739314566 699876134 550342481 230747179 511188507 688528029 383604514 846576205 224350252 29863325 74653150 170486619 724898959 735817720 415868474 750337380 317422018 862893571 433947475 197024681 67957115 816052508 39767413 251792820 553749321 959223347 133261350 512496668 163323823 187530250 235744129 445391628 950493918 825108172 147146113 335323293 662871404 942497871 203809403 465924195 808460697 181061410 581561056 257276654 654448904 607347129 299361978 731344997 415261621 126020845 939983231 768410445 916172701 125034904 616072907 635252301 237873859 158658467 812021525 161343336 544469677 728776987 549504272 844534048 819604685 987614879 10953050 838501182 594589257 577493645 862347354 932467183 557969160 821168887 745370140 393654678 544531431 141155143 207239055 296875027 747553124 903464232 786442920 443412267 458333967 405055917 539987405 830934181 759739503 877418433 382866356 557148352 603427335 708210221 968507487 704707522 986322655 154728337 648918246 666720671 623404877 80498272 294686621 167036586 983115793 956434286 827161366 951678836 518133014 800597772 428477330 951566436 294458417 666573700 476588444 574596562 557728139 789302069 428582556 52489664 542017757 89906497 85587930 661627951 855949868 324069785 365044523 844707910 752941987 998882708 235423403 452973917 33094985 990104331 190063999 260491698 473420076 432431503 731789559 214735047 103588611 658968499 159401388 919147786 548605640 863310512 922848355 729382990 65591819 777735941 234848340 518832579 577781029 972862864 370073835 718400050 850333422 867923454 104166801 339259574 905378749 453449718 809625822 840297433 982197065 439819821 963900210 727649289 103589455 755067618 156903529 273345605 96613631 626367402 719442605 648108367 41119974 215409706 205196264 757831168 80307665 463180118 208860176 602408476 94069652 256675783 407158234 983307018 491725683 871695605 450829772 921179710 571686261 91798755 890163240 283397025 545990684 586406782 248378473 815650939 666302738 525235869 234295112 690074293 276339578 10724750 736643138 797851542 872249866 784210959 761888457 675508997 124188621 923488865 664576409 846917174 420838911 135009261 378568873 542087501 823164519 44500403 366888886 30622115 50994325 221307016 931213704 387918161 97416332 373091380 699254278 291346442 964629032 909072659 622376527 694375496 52085079 907055910 995176729 561320674 844325782 60032906 580264085 694220962 656433274 344883497 584610430 748404539 463010834 100135086 310331250 294872894 314831101 761028876 812586918 429587793 175569138 921590685 752081457 995671076 519783895 459051713 204060004 592898675 575583888 118077071 930446958 771698885 97275203 12331780 767098779 60233692 268996006 567179820 259803354 384724929 969607175 456041303 511999440 709698517 539907748 351342331 935053022 712194595 617717869 245878692 600787492 562327290 963930334 21996759 395637733 533596219 761222403 929151715 567163419 228581394 418675648 746337285 386775079 30632350 779957262 842169450 900831655 79289505 395898444 465669580 724913872 626113451 751464963 498678497 77644072 476054509 318337300 890178553 311197428 924079131 209516026 360512488 499324185 228766770 486918409 216805174 714688241 990376442 418010499 935680602 522419824 698976987 145763171 655428216 935561548 471470833 292678651 565978535 597240947 247382911 614996574 912452184 592239215 167531752 345609746 748091283 210939520 278345778 757578676 376093587 731232875 212724556 545881238 996438151 698958284 300402325 847294168 478600098 475626981 321578397 175167207 225164293 638408805 573746324 676893999 634018568 512474228 323218103 870972313 468376627 947010446 704741960 316667238 760522884 802314878 119192773 191430344 814981765 91137155 73818206 475252763 108099065 149494239 752712356 498354116 17824469 524828154 599653583 944620027 755147870 717177658 849104957 399766655 60326028 605821096 400371317 340945019 957415537 783797198 740650335 49887652 134962102 984991110 407376318 380320014 605492715 679278198 680552502 709715416 360651021 679580011 745893009 549255621 870629863 120790972 46131275 240556998 524684143 464749851 250784363 198613800 782188590 461044870 299290683 392613233 942126934 780474497 127096332 982285304 839194062 217720685 760394387 980693424 310659371 902015739 788066621 692271022 630226736 555638022 482101873 451230370 42233916 764726896 456147286 370802998 159968137 418426852 826258766 106042170 535139283 680304066 911881761 317389426 297310453 841827461 917590400 224127768 835717739 909662243 596186550 778343823 676063620 827322927 553906886 544333708 296064835 497913715 427180360 854100398 200369189 339669875 532964783 893811210 482407661 713181573 407984549 948616789 40352428 138279794 700136614 744974473 424871120 67890812 553986449 558633807 474209357 658503532 623428671 313094767 152588584 853649807 29255035 733979030 207677322 619386449 914255809 124974805 602732668 717870177 346147308 606192554 853499767 775600975 879601893 336224632 517571507 789942912 685272148 567728430 65736258 936287932 827107626 588883133 615550932 771398953 137258085 926100072 902288664 991623138 205318588 460353892 391168441 652609875 891802276 29415856 49173598 975641856 381034090 353743851 488800532 223480012 430945481 907846006 139724895 396146309 505945702 944956890 737912343 198786138 703469026 275388868 728955280 603184557 449283329 543072056 377823851 756957476 502924053 726175671 76929210 575629663 159415277 948990149 685661037 122993789 815951380 900733943 725262797 429329095 15351936 886058616 971288936 770832975 870247278 258592539 953597696 133828479 382051554 982978094 481511965 480463992 109142731 961100074 90307466 104439187 881609687 659279410 104771121 57919515 122355950 402281842 136747633 295790623 277561530 238465855 894757242 896169271 470372899 622079953 918262295 783477922 806837948 295427873 924794904 660491186 765844481 217313650 352294673 170344999 404322975 468688963 261046287 1000504854 999945176 461039231 621257377 80930407 923011379 901596038 366298226 701816654 659459942 105932285 14508515 830699252 446903858 918718189 270147521 516455744 856151654 910037102 305522951 895346968 264085371 160245608 707723636 18286476 644366462 660012896 358991302 268441670 460132594 909223303 265183459 533201332 247252097 4171476 984132939 292416578 982231090 994366207 125130520 910265018 889195553 660305222 104032180 423298798 981585912 370765620 230017605 304016918 175596610 573085568 945385693 504530668 215442483 340567512 935281965 931675106 121520271 128351911 232964430 609536992 829880757 655993089 794216204 506746051 985095066 323717871 722523249 451141243 750192168 476910336 936732658 880632691 696270433 847659334 862559071 953461055 411487775 740682167 769273363 874242267 124981143 749995460 115177595 73547648 965422624 824905359 419620921 628504963 198583591 163728731 875976718 7434499 366595780 904509707 234633651 624587182 462196419 910654566 398337323 742567719 627694953 696136870 711970006 602986508 670614328 287363186 906461989 181520819 168886466 165824643 351081715 629948622 560576280 268947303 808782243 493346326 830319964 504653469 142203514 553168763 162988376 406601612 902079200 67140677 416365217 327607986 211805335 266584216 794368569 600595318 980549362 218543870 756075798 601952651 165624605 969853190 313912172 174983258 452000787 680927424 816074235 90246753 372868295 92004891 530071630 912126321 857190589 270991488 712631741 683133418 36586792 778657088 690217711 290365781 209405478 359793734 431945620 665678176 647918642 810660017 44186266 215362831 16943750 137266398 633259622 707816233 494269334 885261477 600952824 864294940 830211809 307034219 136777450 472501051 663577256 847263905 851998794 799762503 297245748 377696670 672004521 840210902 126465289 749230536 500308539 530373338 302554932 952987789 310926211 679893809 579439039 334210437 37430469 468430838 11013623 706018901 164422083 325281396 964804877 798255630 22717809 657971859 228436104 135241849 210995222 259690636 825058546 977377571 26727343 803122005 398947458 775074143 583992904 210179479 253188987 885563622 899776270 136773679 365838855 194242278 968897230 536150350 858214190 112449122 131832823 656195247 5392252 431700020 968062286 613800003 476186997 353222765 998447865 903742097 217077254 855265184 578058488 143311742 212043281 697434305 559443939 403291960 978344651 147299722 80641571 198829351 54380464 84584068 851964000 526270518 214179048 375198626 67643772 25471383 815232666 163356241 745700106 674846154 584652368 531389416 474918305 49144843 2955732 798704112 297557896 540271458 205872406 41390406 393933360 441853500 685539177 803309429 810197728 285026633 33228459 321881639 254511069 85171801 925094386 936871889 838194006 605699781 152919179 56088727 268673485 921612942 138773362 89494728 504852190 605267999 678078369 282990813 711776702 24328174 208119482 314202528 757267129 274716497 509029493 530912068 294533407 59471503 25440088 896202825 611707220 698406337 760246011 326063103 640952925 902477467 113883590 173538853 474251003 302386256 160323073 341004445 475065943 47157316 277175270 277654919 48013973 13091724 18241751 906973424 532256468 920684801 733902411 867346262 112334477 571598418 569629458 153958251 675843693 409530480 400614214 680411493 502801112 621007692 200656566 374910150 946063565 869650142 221021888 559173668 971675663 766379099 754204971 177874514 922476279 411990970 471647361 572286183 95584533 173216110 162726739 304441899 296651616 892995355 201159530 91994692 663519818 793959675 492111612 400947227 748145886 542330547 85658506 607608641 717591325 48079161 160454738 175234011 376532534 556858255 779701146 890382325 762892065 90998995 351769546 995953724 510537079 649221656 298347876 227056963 204532149 83613229 200297789 995637278 820203077 847798321 622026400 256789151 128573438 279450817 957443750 111638526 702590964 795976370 791315352 758126167 445190690 971338139 778098151 320819659 381424538 182151386 641841483 900839683 121931426 990899328 724988368 567318568 335478562 268312067 48657214 671771737 62400360 163462752 829497989 24205564 932236720 230631974 895493721 47874173 833536767 292294286 289796751 526944092 441610937 852666950 101253721 214680503 145280554 793760163 47572454 947364127 864135966 449799972 118386352 149156465 430060563 393931282 990498835 999028965 688845519 72285534 949417681 77449030 826593545 194739613 543261551 685466960 935302559 529766751 461309387 240960553 88809490 660827312 149307685 547772236 465732505 907669491 811355421 429158925 594368041 228418311 904443449 993831658 503523792 423809085 86650077 503408329 562847352 511470944 570349600 506874252 618591607 203213827 888403106 981511723 628854630 380620971 37940799 730918578 706750991 1441632 172867929 911958580 213680771 342979396 763106515 153878946 297238202 240321802 474151881 553373173 841990969 841374644 491513213 618913572 690309453 71906254 321887509 123239146 547786298 757422093 9256415 87141372 324789777 344689814 723220772 790632600 600117341 856985165 231908958 143118911 617369253 194653534 975924853 297702781 240298471 931577401 632043720 231611883 87795670 508139823 565372426 174656259 834617221 701718472 508489439 209383368 260336800 876783265 642479763 180310243 462643759 819412896 512123708 322916421 468110409 904536247 254571160 489264742 616516702 4882407 296309633 71718821 737929232 761519085 149315087 202451807 807000458 952809177 417575732 929475466 68419293 9339319 451499218 836513971 25564301 605039649 614251351 594033459 719552202 137944299 364419284 409820069 396775059 948021575 881856363 460744586 41007347 99882553 867938538 324223024 792938872 244046793 456561700 277082739 497523230 505686363 902196567 462024301 622852237 356355235 499862226 850088379 898081753 142182101 78203895 871554329 942840347 749457207 327451919 289394365 362904908 53422614 374922579 317989655 885832801 906296709 721155917 239417282 870140005 111932981 19407164 791033568 577323830 134126164 380792299 512508485 324066621 466175030 86082211 117588960 991053169 58678227 216870572 711224525 166954731 705902720 40592166 837534666 426854637 577369904 897049604 519280876 64000729 450369561 407628154 762564648 576868838 851505668 797634474 300641040 465289833 189142765 736066964 802442969 590881110 184105639 302735056 658690635 69757330 151285145 393156797 487066831 32904611 47530920 658163600 859886536 483450914 884322896 964959727 741880025 515978997 675691225 777580105 771966747 936546709 596008701 719963065 367372345 965517614 798354670 801249389 333476515 781105985 536683643 410049763 969672478 354436954 864972951 507903679 615257736 766053114 842129930 133157367 755891906 537019384 267819551 310924710 920113720 545236081 44775099 50448436 471368725 85825613 75586135 670004374 101520304 349465252 787582875 987147586 256506998 427854891 731401251 610337240 709166073 292031997 943910347 100514025 660700751 282774299 525550877 331295282 1001325289 573146181 556354271 173194862 305166264 41151914 99298817 69894508 320345323 689209665 50085407 180430531 894985011 778893649 608580248 857949858 859405044 276236208 671528915 611912100 971827161 42437735 888478143 423851271 298376377 107899875 593995352 848906034 887298898 837952903 47274310 188239589 97967940 599288843 329804294 947581510 802307891 144940153 712151491 803279876 551359280 477921823 544423434 431606683 832909737 917586948 311091225 186590763 104900822 551826140 711454432 377801537 195599864 270334957 577055512 256021494 569274719 83123828 885285145 633679652 867992157 375050692 63823540 162476166 265764379 192774636 384098442 750280592 92316691 364167734 487901965 901665448 849788421 230192504 85983779 313165967 855511387 503544543 920512018 989248445 514461815 768184617 517621508 134147583 398886607 510357048 441028642 483959874 180832714 612633166 740658105 543823065 742584923 340349719 503192435 260375749 870658963 648491560 284561892 913482546 18664139 49468166 540198232 243232536 816195605 808402611 893491735 627890425 554733857 140473150 512610319 361212628 936868077 875352687 443420297 536236422 460586698 788464343 210201091 408150396 675579048 5690044 28982688 466228456 843911127 2829849 648839886 778458965 692384535 827167417 567969175 165769621 234532235 393020197 5433263 617792969 675325409 934496558 470461293 918067554 578925796 604233684 371899903 781002890 614650037 936203058 625932982 52395407 795563028 353353364 480809621 778530550 300588986 781100550 321663578 304918637 769073104 369112300 724746891 261818285 421791111 103296051 981935668 239619455 83179366 390535876 790699302 651547415 596871131 660066950 879263566 399035993 983218871 199444089 646402197 124704234 432516019 712930308 1161791 322947083 864788208 831234080 805910636 777635633 150127341 753956916 52884204 601092810 892131374 749492032 368112710 287571578 757214815 536569196 505647751 313929773 254641107 317637211 666457468 796515638 763364204 657499420 537121111 157722277 720175846 818299727 939525055 346134027 79548758 953473653 795273423 528854847 313076673 825839919 34640207 209691098 623926756 450415975 633675774 115290245 497181890 819227357 330045904 547214220 299941900 739926717 481367730 913911665 394555076 365446098 859528116 747314674 819321277 711764148 859525307 898707238 507941160 643117769 816774586 379735080 289840735 590753371 921542561 892066805 908748091 506325119 40265197 956943567 174370144 290896396 832602405 128557923 701858220 798505489 9991155 647839446 971201151 750449025 26080676 739479262 263950422 784715426 372107716 404466637 923293429 705405415 833340962 354300635 655658996 770250525 132468052 100082125 549033092 599333449 766216247 697145030 694754976 633571052 197877852 235520202 599141534 725719175 508058810 910635746 208962822 860200241 304751946 188463012 121589762 731986563 373938749 909179191 167722257 497529651 660902801 33678242 371841546 979545853 703171908 561630906 210650115 482227446 801833464 78543570 421983483 103309547 685996434 337551603 542394966 170285487 800527079 240430307 494183131 1915158 149157703 335642546 696116488 22930919 306767811 452880639 409291022 127977055 121961536 753576722 623795780 620470633 537937355 959627788 332864875 873169232 590412303 741608090 324880008 390953266 374394183 437667095 89543771 663002007 731625260 214108805 288849091 586899212 463653639 5260134 635811462 314837765 376962764 2303219 932817137 63622689 890221669 295053503 281535303 787927664 974932446 443143423 815315949 731991036 756340249 797842387 432008708 114064436 945269719 286187262 325268113 598839385 24761366 311635411 560647094 844928434 183911702 302450854 234517057 233372440 459303610 826971430 653849033 475074370 666861215 254931782 378188984 366958368 244696613 823944027 672377204 318359422 99385956 76389514 938776521 962423968 585679867 558627714 937656768 482083209 683298120 877535630 64397266 173907965 699978349 485524889 825190653 179708312 860512708 958371608 26391878 514807852 218189279 438099832 242401190 95576680 423119794 725888311 313362172 357209274 646914652 442796704 76597855 308256159 609283262 494145075 801522013 961051173 10481045 494489525 33421695 619000045 84685681 810853371 144200224 362890675 654751391 590595189 213782590 358530585 757946577 200135296 65196854 79272681 555362144 667036124 872752941 701875456 632107373 403564918 127666297 246680306 562337603 875012624 450749577 703327665 133320924 141034219 40031494 611327250 530039134 403359579 401125258 339005794 284206918 344189781 999027260 135140351 648754388 27558184 244224597 716917212 71763254 472694975 806151460 726350 18051239 756308752 908090885 100209358 469585541 222561137 301116078 676253035 178908337 682374147 700199622 196959377 803221575 69746156 180364293 185541617 777795009 225137129 265076640 267934687 542680467 333621878 531811540 317346551 224185532 723668714 558071682 388182409 657042975 680478432 211989075 757285604 330511289 395502652 918600388 821865464 424424366 384928621 821138255 381116376 760454515 318830149 926824703 771677618 66173279 163307840 202590726 60124805 937889931 696944795 571622654 379615963 444558505 189923578 618726174 592070547 503115291 851177278 657102331 309792988 605938484 885933501 961254297 90192363 461027464 293199573 257125300 114593320 187475851 361930566 882497709 520560610 327573642 223026975 122013102 303417583 184415266 939613219 83625923 745319385 755423754 251280800 927659596 254043826 920984853 930913039 219703118 871061071 155451485 710907321 267116328 449830788 25996088 884633345 703142373 18489910 125196654 251873059 905786336 965672083 404953526 873281908 197398401 14538103 176395919 487928080 69608974 988178638 703112763 405751590 542037364 791955471 309049394 384181883 406025291 452981340 569044901 62025363 881080722 514873211 141538298 118675885 108391352 802788710 505269337 299915170 798463366 491819232 112661775 914944508 990732390 577435793 510456693 211575785 760478902 924380778 53182818 608159024 744429430 468094411 713172512 101915261 497266205 749877124 918266175 255168020 631828747 540500818 406819284 45742699 676422771 976791196 817898347 299543150 199267249 144821664 557418354 343474685 182205732 280031487 14117020 329644305 469268624 185487765 44882319 388559608 410209117 494127866 74415651 997819619 674015756 141673306 961509240 335571648 708916449 289725950 719092402 855035947 742223312 546589881 315508768 456495775 501416243 299821645 148299569 70443664 1919027 708191365 511776303 391697419 453305372 436608726 684088086 311453793 826525297 984906566 303131931 159647759 170435126 454752464 586805615 161405244 44114670 795751642 812863524 231253333 690503413 61676987 568513483 300406877 247366784 983247947 109863573 136640758 397801504 507258648 731792395 976938770 339569198 860470199 907222585 80324919 166609269 875403308 1001126998 769513275 540671493 582337065 161709327 687255693 411435501 121417282 415295538 191309131 487778866 144071871 119520698 610018417 823998371 674088013 426252545 409511159 184784015 533124974 160718897 168228769 54364827 610244518 842384978 652061266 987298716 248176144 916853124 531676952 743446452 783492984 481598906 982696914 25626735 54984429 610484216 635216777 526756930 556446215 199394949 12153844 931430503 801792815 924874419 656457987 642316379 775767186 760524397 463862460 683876345 94680112 246884930 406085831 109168041 19160498 232561872 307399220 316477356 742265675 776394568 633545073 674139693 327169403 49775349 203045582 884399855 559496716 436726228 334779735 725928509 397514140 303434336 63272485 378752192 854399656 59518109 816525899 631392553 585800014 334819778 592353929 816899126 440626428 835371063 276204168 930957318 254712635 296092593 67451361 907360977 594822353 927191447 852419903 339462589 111733895 134904319 801500983 322100256 934062161 272647929 175469733 635378587 908651041 328048345 237363025 345250694 129796048 76295750 715383741 442184770 709136915 588984581 669423775 283200452 403394045 62282579 929684973 60799697 609528072 444961173 438899926 323522193 110834823 774479461 591137420 465401146 206272873 314993795 569179654 199008892 845834237 494879801 640257782 671057082 695464912 761538832 943562250 18664811 932009829 707098907 718347967 989953391 156059135 455601933 100827162 503596071 258544814 472837498 315732715 742298815 836515604 897069303 353503498 816513631 192526429 38951207 999790083 827701401 881380265 150989526 590647471 909601236 57975971 509548021 968144322 50814380 174890794 554416159 338894009 917284427 777548743 867541325 891459859 194538046 405379022 72381252 787894692 644320647 902927316 811702578 541419429 592661649 458810809 283285291 44103916 382768559 678058808 261915 898483433 120331624 988188899 174134358 979212326 378381241 302051208 872027788 747997428 229371033 820601232 950762958 417675325 501382151 127827294 601498603 738680393 559350869 848198558 969008265 634538797 223981422 689098711 238506721 315505386 809336334 459324535 450733962 50073719 671056300 416383733 334171247 249773376 207801014 789825292 215425831 13059325 969249219 623822517 481005776 668087648 665375636 549242541 504853976 13652346 869454689 240681042 363746282 741908216 709402809 972124768 923468234 370191326 606202449 731847852 195532180 182077144 123949575 539192947 240807441 805228651 618357540 50994621 334873781 379405782 306571444 538896026 568436351 247798118 188903053 341274714 132402140 68734924 303830794 24055957 938818653 571771720 936236979 716281435 713251325 763841522 268279662 242919647 905407140 878527708 436916308 66393097 32166729 226253466 221623599 703479380 120557218 611175120 858410300 48849774 887663579 140976390 125455602 750133689 270458430 568488814 704730815 87498795 681310678 523018534 640750348 477533480 382284728 800794374 270469721 46455194 316673132 843170289 291978010 627156797 369611265 805898971 297590133 94350056 919220873 705915212 640101250 307496213 91490767 340548655 71271227 55290995 211105767 299472582 648967080 798891995 783056610 528969760 223634677 526681681 793864474 388634223 187799950 810634013 1001615406 537053269 6923560 667869140 531907825 647205289 842558851 115208539 373244300 182214151 59555401 136204231 791563819 277366964 474371098 821871522 721314228 141538791 664558289 994254993 285781031 513973238 228246165 193882626 116425693 979875315 664153545 632305048 431128184 514327886 470228944 609688325 399633891 354353767 565595801 588602920 890791619 273237107 533598131 953728344 84340882 857730837 455287297 582777368 734058897 397149089 737261068 455088390 706067354 401386771 271741517 383706517 470716468 687858283 664861550 744349697 838394656 781954799 930408455 570921915 44980444 228262699 829374110 110831806 583753049 664675443 710358551 167405394 520773554 54290606 661845988 765787170 197674274 740909412 964381805 840807066 654307734 178916857 401331397 506937518 990406689 68191271 75727194 372380683 792863435 184888205 487363919 99740490 143129418 179992303 761069289 30852061 383623754 709398156 115282807 874200232 746438073 806001337 718756159 595999253 499774636 608117838 742979571 245408331 761040149 753378076 49226193 723577342 703195695 7044150 36884243 55138422 674770715 110971218 559503601 68410433 569001712 452056132 293703195 525767853 482660125 124478328 691320781 138864523 472103996 530141170 603236603 649677700 914533765 188501326 564346200 491100662 800906271 418519341 478497336 190808236 732048203 690595155 493757283 616381401 374536363 218387908 882451349 149209224 389758315 771225057 639351131 850857356 909957362 372960117 300377828 723273322 134549057 947253769 366856550 847714773 684342488 993796990 94834914 880608314 134168167 638944338 657153343 360942773 298086399 480903642 968610946 914868773 685054113 143156524 44414021 436849506 539190070 751172932 724256906 813311070 160095046 991862006 238415550 936571443 988734470 390411331 222656632 135008388 813514774 589516941 988269509 368828915 252833380 407551684 943502610 319302618 509659494 503124447 645240663 877315680 739968528 409624758 2810508 256396273 442329593 421216906 634325729 56948590 678214874 889382082 1001293741 865511597 476066110 720570967 640654311 921039692 810364658 835254005 98897669 323129009 664242400 637341302 541437874 743905922 112484777 113996861 451791071 819192733 839377021 204595122 157862963 590219897 653079657 210391868 585611137 575054916 910960091 819386825 236858303 948034712 995355817 315256948 62900989 134160632 630318964 573019541 136063261 784352949 642271232 409942304 414427871 431438695 496914756 801873 851874804 622375484 333286192 732490871 301344897 223248479 437042102 489479864 8244470 981971665 301737775 831131093 997287453 514369967 844997197 461352285 340197973 406235106 293029896 481997619 35912248 327760429 99928327 896983395 147551519 450547643 216354205 898524189 385733902 302441143 805575274 434842138 607911499 909362350 124428609 532862636 17023837 291240187 979469048 808092555 882972095 699284029 474413288 450050566 939565766 345757167 726178482 683262498 209779525 708128392 51129100 451467344 416393182 861135287 534230917 681345891 516200562 459040933 731223515 623185081 84637949 830039545 76971687 227292689 389698694 404772439 44156059 322494614 308624649 570136414 950035456 702965997 112205102 80932234 691108646 414624610 145319767 343413686 392456384 233317387 629978344 279601597 257695415 518388276 902477229 362648900 695152243 667016775 57977126 402717309 556278768 701339705 786702717 771146634 216820578 564907106 358980485 666225387 839623738 45676815 685812454 15209721 651690744 616194182 533871614 91551513 883286898 157002518 264156997 455569348 449134522 8028231 363973792 852551855 728454746 748095980 510296297 342294201 85373048 577888905 148686137 412065569 17510715 896034482 975383235 47514718 998850911 649205563 566640138 718501852 100486285 692254845 683571226 93684277 712764911 876001336 999353384 647408965 782466525 546439957 250605272 990300910 936821512 949661116 951727469 922724375 94936218 640766704 398558394 533637564 568442085 492641539 180977112 290544262 668838084 924853805 457754812 970366021 508164837 521315744 807659411 661323396 287541078 523932286 638105057 448998071 914590274 224247268 518370645 939721193 618367927 572072985 285203323 256672975 705100862 2454791 10320649 355755052 945049086 354626053 921019357 814943816 478045861 530398756 424445262 49852605 100998794 915338217 495704071 619709766 345581938 978854956 869352686 433950524 751135800 78741034 489481313 862826757 471028727 608605951 682209756 400722775 3624720 159522285 675494299 870185107 9318092 236039484 869604205 736884299 609974532 928636964 741888022 415114536 179210198 619070991 44876204 854148271 566130166 691888566 405708259 389423183 746902623 79136732 395437416 6856159 883728021 161965 598372923 818928416 532601931 930327119 88613486 703174041 34610622 666092610 784374743 824186133 199294473 360835110 8272368 131682022 851381098 245690586 367709520 13701677 756084140 299092117 548739266 22364739 72212076 669701251 687140861 55044110 398193472 266005801 879436321 536893 244007462 908177080 518092181 64010414 820918443 657219651 269665555 772618323 88170923 733751974 478623745 446596190 443892709 595920035 357660297 954221062 228030378 477370839 747752035 343005541 719897153 93862523 648584479 802187112 123249009 537492464 994824146 673302058 39705923 814671774 960735703 934731048 875091323 576023058 134895577 788213640 443396619 980093336 181838571 91657809 200385601 301170029 881922667 536955690 459656636 176918646 215290414 895471701 801246272 288595505 166485244 3778262 496529284 67653961 18029310 921449251 492241319 739500819 785468040 546560188 365094658 752703307 921804887 443280463 980137357 801730931 519698900 559647413 956663739 306520798 152112591 512382452 867828948 283830003 120780080 28897097 340728650 179668456 636685623 10763260 221723332 56369627 551625579 348478535 815608517 542922434 285290296 828980669 832191918 672376423 746226895 329227417 735176233 663533287 179496946 935587075 668478317 75008967 27337315 574140074 570596825 303540638 752983245 814872960 346559355 603576721 724534576 655777587 247543097 163928824 610218263 117664428 15474164 418827964 561767102 785519476 703631263 853468986 48276534 558533235 993111450 554931249 238688446 559968411 948880036 372350347 140585249 539524112 113853759 61521140 876307532 671718756 827611203 757751463 825633359 735336027 308573465 280059087 725636031 454093933 216521256 947656438 692801014 432263177 865630155 96622799 401497487 804353382 783012747 205966629 897114644 569080443 544666678 590428561 39215989 160919358 69374499 135495449 349924478 712386833 415558926 852150031 118642765 172859163 692168131 169448155 271557750 19435450 959778747 167977067 611050522 727524438 26353721 402019795 955868456 790640938 972144075 718758489 440255332 762218349 278963899 312491360 648026452 474349964 945596748 68717846 425735555 111735039 302921424 612635637 823692520 588959175 837704849 675108679 224705077 192328106 747402301 196830790 883216106 937450809 906396525 792650903 212588762 606206156 875375806 217016273 774441384 992371028 769109222 466562917 690124033 748651294 963668225 994753069 869903410 668837128 108241839 312542362 675416900 33406531 62847199 575854475 200912672 900204870 355794492 419790116 824022107 575865615 388916894 792673352 558850109 941180828 890983106 183826698 18327974 50721604 261101166 3921114 152440831 876708749 315351474 476341289 87936913 477530705 474989933 281969601 871289899 363994866 308954835 366858367 240699567 762809119 379090873 80009805 219278513 274972036 555585827 372266517 636776170 87012953 982316272 328026645 958181426 57343613 997226974 696017486 867471691 239265419 206965421 397326463 291196283 946000625 155799523 620267495 995296766 263456400 999041021 506748992 94500748 994279033 269238474 862072587 669702051 913257574 182894291 206055024 171121534 128307123 893569442 338251490 645763891 67911144 33609380 789135003 604739896 907515520 108934484 79467206 358290913 815348388 881465133 956855233 218497693 378781087 285101669 356413607 655298703 760241623 871242616 6603079 676534071 473961385 341986812 130586738 764751256 757039522 905578905 228106096 746356314 966341904 588220150 270713057 270146786 129559970 27807237 969481616 749181157 467811242 511685954 426825150 839838556 427869415 767720973 227985552 523678641 305678118 372137634 541677856 149439239 23930675 300336650 424770149 264809099 706614037 788611758 517011686 354850744 564240208 674504829 883133817 683147474 207250973 277818301 908916621 156572628 541353366 536689936 784297034 447569768 343709332 155158706 958405241 283758155 889330728 875203923 213052838 825826876 143989598 573474541 175250277 283679838 433680508 631187809 552691138 185605943 621371640 658441768 880185648 723850920 492921266 380044745 194696779 906037151 716252041 118435447 583490004 225126117 704620544 806958439 923226346 203176077 241908469 482571839 233916152 121773945 873106580 797900435 783638754 268061002 417062829 530906165 403097607 630729097 945162902 652338564 602330527 337820011 509204944 263643647 294587103 134233658 372783271 966980083 269587286 621402530 969759329 92722989 762866579 688104018 797405086 280083940 459093259 876069324 118157920 199762564 735012037 762618494 899139519 925151677 859758702 928869496 446685043 867501957 248978280 227970092 443717757 514642697 580002182 287200049 529257544 915148553 193228391 729459555 842563720 817702865 723649738 556146199 455457087 245465007 765767458 68743105 799639324 821249349 173511985 585411888 189867935 201230390 733773959 246945330 377625353 99999473 85792449 121798443 585380789 707131830 171526304 963570834 273465753 904665039 129414533 987218239 436725790 710959547 17210327 669026978 382188783 435869476 46726397 169041108 647191261 233018173 598675109 547299134 816177485 70590703 896416252 964129071 435359796 650018261 475363767 703114102 758147972 234314857 537672072 751318602 816832743 151499052 945013160 663722538 14726170 10517626 479364176 88151323 294389303 305270169 911682575 860672084 409565093 688713979 29329490 223358605 814106914 763028959 697282900 360954693 920054822 473549115 51861860 57774314 779932190 742977746 603433046 633252376 409024688 100515672 809707609 898186688 662034271 361078328 956899007 501620769 139020524 141722269 590184182 419761660 747710153 696249719 636687869 930062565 589555567 818282280 11136845 839822103 621905014 73714872 778917080 478246233 582238884 66761575 381010948 141914262 968979125 866840803 747418960 182563496 271254796 472653399 901257925 912706003 189653814 964908786 738655804 791048816 878563718 532779559 199465242 343845779 82173778 78856455 220383450 666244250 865721972 212075600 698337010 428291424 695663020 780129331 583914046 855090141 586403823 790932821 319306380 615747071 104546204 357153313 998732948 362771076 710055822 417529844 222244534 915208296 908668436 829707126 236542569 12001094 515952308 14493950 361277879 610941565 344311255 809963405 848528312 285713160 745985154 828937361 475543501 322254216 183953494 25105933 158344069 473568941 915177210 445672958 492608392 256386538 415634902 40766276 884793284 652198995 117676469 302171248 942083837 677273134 692700815 852797816 913568378 621885964 887886446 773738659 691147574 119557799 182927364 985299143 978118760 9041075 843491220 532334843 845053919 148425334 645793402 546141199 416154730 423557687 333692679 209613302 663305809 109883356 300861418 343390069 252728421 396355215 839505987 392330257 915324650 989755562 888693546 377478564 3198356 688407872 437729523 718861887 808687645 878391109 881853694 237796471 682530511 983974846 524272084 80658929 354519835 251561254 29055184 200887522 825098451 774495848 515612538 256147497 248465951 798128446 409302575 788965148 192163000 698564376 75843893 259717039 228510879 229338388 253897677 760152330 644253036 116715861 48338610 424554881 9831110 548524536 400823654 391140470 138693125 453068921 928721369 913737319 252287229 316711943 497513834 39872298 698674181 560037065 60366441 396457734 893425075 324370741 916772113 593329080 3126657 715280613 179841268 465311956 877526545 279859480 519529356 154319165 128017085 766318164 233658729 12254826 84757315 644702800 247241019 738645081 339099313 248846161 408050602 280622753 409785930 615436216 677691340 790785982 46936017 222309622 286425811 402332511 31047821 213685720 644042912 192509173 35444470 531511768 43245354 579964054 542644690 217396147 508553904 529723185 641867701 934894460 670071831 928999649 414256679 23372031 506311863 909085173 402426836 270707328 834503705 516473296 991299966 531857339 411157904 711462281 99971563 974784519 635671454 174677359 10568074 995193857 639072088 21293045 277531070 253702054 274861784 419803303 966073623 112618700 837786907 289331601 103173839 870957101 340673626 449272419 544837091 635096480 112926096 986546674 508928861 621417193 423536269 158546378 979272118 605939593 256870347 447241495 175275449 119322170 744622623 482055220 255635582 489629041 483449795 247070282 630873224 883126048 362055104 700822875 496350308 151870565 827431140 522041587 385757517 809533945 762721143 663221159 322211366 915497238 609974226 65832622 736856213 666868569 559667523 233236296 136396258 797959530 908535638 196824693 790721914 35274033 548563784 801781270 543077824 566926264 1002218841 42827651 756225586 714745574 459548918 264287556 988523680 170073074 882048810 804329674 867875831 152460889 961562428 762445214 353465924 205980878 827826055 483109573 213400737 737496925 466481008 489617790 408449802 353244906 636711709 527762846 24615566 315124077 701153454 146565043 306061189 744266978 952771591 231896375 679139812 793483672 297589716 271027046 961833206 211601668 566590670 120220905 376775707 102957878 596915579 901591174 578501557 970219020 285483743 761370449 284631726 120854645 543460579 413530934 324441341 802399705 585034457 463917213 608152343 864585127 301831703 657005535 273210498 612283695 968552214 49269206 725225894 325549773 116729194 228211301 355303721 608947909 168710184 765858198 698828996 207072346 192435180 146030192 497856937 63075982 744188869 818798655 568914379 275385356 832397186 456668932 970977592 687238418 204165723 187777654 917524232 635884358 871078132 650380947 62635946 887151631 5704948 947145209 631750920 991124062 141412585 803551310 146109911 108526045 387243256 553843349 333196609 302513352 268006244 408518270 610926905 198184529 208991068 758336363 1001431291 562237077 775947264 573676761 666968509 598331666 82295285 698631608 806563563 562685708 912609545 45741999 849354679 696852817 876407982 876986108 373233071 476593952 287184648 804264079 987661490 650032485 809681832 610515157 529360779 187609436 271959475 513650071 920127642 969017602 245291444 897439006 195048109 888431335 109695680 722937490 292400004 840472314 371851597 984424739 151104644 654108479 678301093 866091845 198417284 2857905 867324792 601787230 710995551 581581682 957022725 764526561 746356289 919447017 898430545 782116821 265129137 178394031 650481085 859577077 398486029 191835121 781906932 843328690 173457045 785448088 856220042 432461416 51935237 513033321 487886052 13995409 183415681 601020396 416675303 317017096 941860975 571077629 701497399 359760323 647767436 103431545 395648110 547960729 815410064 696092081 870468902 152907708 349315988 501517577 466708309 425200814 847461389 536563998 460609618 311952259 973525722 779898416 491479832 548946156 999573442 884727279 602716618 387596890 34928842 32448607 911042744 967176306 623848722 249982084 312556759 788231365 20125713 700968562 434377191 21040972 712902170 400819113 164878884 344436372 480688831 215847816 691986060 544658402 90452976 31004219 98884270 606828619 297809614 85524931 559215066 749550749 326561548 966764675 487359875 650242235 651764409 193150145 61010321 75884504 546629041 168202292 425835425 501968988 668601558 820902216 918924655 873892411 5107423 564248982 788277930 46386397 265246593 481635500 81085852 344755700 395814062 698059572 153675881 739020976 59730029 568184581 629087508 739936227 900965323 937301922 911762798 776877632 103305856 932786807 348675256 834422900 681705619 57555269 929254807 131060088 774107928 809930714 752855484 478846051 688957106 430029170 705538994 741067488 782527327 301651258 372969949 711541736 229363314 437299323 81902183 520883007 666382643 983851313 364973356 909236013 833374823 248883408 517509137 275253607 225396444 815114473 833259329 2853233 707125865 740691905 847036735 61824127 732044705 679107431 920110346 560632848 355532829 946440881 208793835 498607432 790982474 292928684 580612698 521413213 352023035 482942848 358146931 703620417 14216446 995732427 109577515 75394206 170095093 937260543 52359571 560946680 537520859 576964457 846412590 99993381 118586405 618871490 486760596 69444058 949373442 487647581 14081564 817864625 44249295 982286335 587251389 665135787 292685355 493175051 550520821 234266775 915541402 758471470 48221957 904494242 108435566 737402618 36811891 239042245 583297179 121709002 353739965 947248183 476945950 775880992 914195565 301770455 57578477 15438869 963710941 567313070 887554005 852144602 430336148 109937450 772493129 267054903 452123185 232459339 823502855 686527618 122220333 485181178 775707408 709343610 385227903 772299782 152307577 881391179 820760563 867474249 195577421 898658781 953423546 703343332 850027359 185640188 484278824 261283794 186228397 886477811 872426448 22761107 312864722 933251938 70065204 56167792 99441886 4732221 326067158 830154370 713465185 799795633 916796738 589323936 367216014 528982892 528666412 480827714 1056432 60894802 945364670 422253403 696745278 523984879 905975506 20920848 328543499 826408152 893591681 222175933 774150383 179772406 157210818 301058468 805964584 533515933 632419947 647720142 28840201 810667765 640311347 248579270 235494021 83839036 276188905 164149933 867964362 685902767 201736862 499438716 899346740 684424467 630274281 946795368 96471219 749393283 588552859 804060341 627315991 760718857 837679666 139879261 688751383 234775590 264857296 157153277 456730047 851032493 500680648 340401737 113256489 264553661 276175093 6392261 25394388 475264934 150855780 101104665 4018414 750393677 557374320 45595003 752398184 962993279 227524971 488064422 262660554 261698662 860930767 937373127 811733528 810729529 572511391 971992112 142289195 433862642 447852428 190191874 937687331 991178203 4892790 892451352 193630996 421273029 921298097 454507550 523250071 702237338 350065215 367040687 690212194 407677831 712478544 104094548 164545043 372172079 183648701 21731730 178897481 770484032 8384425 171494145 386296966 746020565 207563549 294646691 719344628 526488365 52029114 506627972 894000950 503510345 680341795 502109401 760481892 743880054 111981241 675590883 119224828 567839753 119429359 549590164 963468564 134810686 276471458 38312701 443589361 846661354 376772452 293732192 683194346 328907416 568641558 562793843 785926463 976985084 214148672 365302221 427720073 933879248 601442032 805328174 560075388 20230842 943307338 282465386 144685865 978087247 965992262 670678506 643847297 949745873 797985084 355224361 574724367 250267367 703314933 937345251 36977150 218086597 419436569 510700065 606679050 431453630 35328261 621333798 485460712 664498836 584461439 852307585 491060191 195526279 644367176 659674001 516852630 543278414 664862395 809979885 913970050 777004761 732612487 929715025 544112645 878549193 133271949 154686088 358072896 118941211 872033396 714863015 647285378 238983587 921638386 216769128 193864609 302823416 357260280 625164695 898537848 344522340 929786288 486308093 843790363 702732955 294660976 896803894 989972768 754973203 358707709 469611351 948265519 764370605 584724642 923431278 987461895 17550480 780541524 470710060 581203540 3711361 824282004 762359063 38511372 344151153 233923387 43297632 264556405 200986781 53251912 356448394 717711601 885034674 404912343 226632573 899872671 778632316 171705657 886234577 565580369 576935009 410754238 737684162 439048641 558196004 397129588 889591738 858975342 963678862 391001900 614968541 313792306 558980187 405591010 673345068 815092397 975188765 109698647 362692971 349281510 226792222 845919549 618397265 751905851 882708534 476070190 515822330 399452201 954597104 830936205 996324165 459783139 390725409 437507148 601997686 501892203 271003256 217456969 391026956 359964617 714089058 836897456 595452740 340637596 371607693 513030177 527988608 772601845 280931353 756673044 701440727 518252076 229941995 457696741 982629925 121125990 563174984 441330046 356104879 947416907 453147570 519386586 143246437 967870409 687492037 778821833 218843854 787695489 1000670592 570850241 312557039 715605697 684874301 778334200 101412855 240621276 634309644 858766452 355247410 174375219 690869605 245058287 416283296 608532038 858513552 753682483 573676289 140497862 213842876 316888736 752970862 540414899 626196404 826507167 906970841 714289624 997455687 150203504 631766149 72207668 131634695 735976808 304177482 247922114 295169381 787351501 972473906 506064738 450971722 596134798 426598463 20880043 842633296 243672465 333683383 237221963 867166302 846679429 230717953 125219503 201394419 405094418 35623218 22370486 521770095 858632764 609967451 580267321 560432107 71643910 453077394 113297501 674280326 31038370 81171715 189165282 262084168 953163758 256723589 458001062 642621948 514174218 708576227 775255196 249016158 199688738 588539992 401842969 195390565 4019958 229670233 578191628 362551424 717617832 642384629 951514791 952402110 531754859 746454333 361491143 515737394 818206877 456737851 968411915 257595152 154153204 455069160 478406327 559779707 694096339 212925088 541511356 1223670 977167650 397318756 9841716 978883669 703343611 111624874 140228010 934746006 471633535 561603424 944442643 768952159 400884900 344026087 558242071 794825324 814924116 880317301 282137513 964229547 940444422 583711079 281540813 295481877 418597597 587346919 935485754 123898005 30422881 792844386 559829988 877927453 647877301 883930834 101041868 187692883 173235147 289600150 502374197 547745788 706449701 460780761 574707437 739611550 595587435 957523892 445854823 208931132 632140437 204890917 821352713 415252748 458523797 455301013 797595122 535192983 967098461 947261545 910407976 876204916 307471432 303279643 600390928 350070865 489802288 72058792 125036025 987936627 142100998 112609244 590045194 779510263 587660468 168774358 136819685 817113355 726735401 529546577 506198916 696914170 259802427 417137012 468067812 187107224 141899754 928315938 799254587 669051301 830400225 141770060 474245877 309697162 132408571 405467173 512567321 376616407 562371766 127652846 393008165 514048100 482666932 624271132 912039494 309126543 126256080 672770397 561181554 446211629 182889744 496001306 413936144 461489259 847397287 822963050 276283835 848270891 723388648 90763927 287645177 417275846 258847649 875924202 541614273 989143751 82634002 657914162 737010791 160569554 947479137 193613930 789834263 341317184 702918329 595023649 417612667 454654881 751853860 931656457 217304083 748271711 890481527 212621501 991635671 41787099 729621347 797162068 297184735 181676677 710051361 766450249 583688322 492596396 656735163 1000570247 690137741 160472033 500164269 110956256 842099403 80703883 864959589 307775898 711211189 142161552 62344668 1001563118 331427891 168083485 873592282 671032445 78900482 278732437 122068227 288102512 999993684 339787348 167308449 89292443 557947897 109483825 839782127 916797136 187143161 918356567 619270619 790134417 274293794 536533836 910476984 54621979 830295971 221258782 870834783 662014476 224653573 307118550 448210499 267486250 821105374 150685448 616688652 341323106 318698170 847611047 774632110 549818531 562068004 59137558 516132303 956401918 47659965 943649573 304505596 653686844 722063585 975499189 813732743 998787 896028115 759676032 403234436 443409806 18637419 484173125 530690473 884193859 684472405 234736265 224243686 856357020 339363485 612674340 93177320 257480353 496944213 54848484 337509640 35942589 359092216 517375439 580835996 420956594 193483006 41479103 392188015 390479771 129151367 889289496 915042991 990723091 410964752 286319887 480173638 518689068 277173085 319159624 464553593 113518101 821993865 224644194 903589056 181366813 712220332 423428956 110938739 694238429 822759803 755967403 1000871193 201480484 515384150 996980354 490406510 556526537 864890181 490171725 868331023 485183472 936349545 480409708 569268115 562561741 25628906 126894286 145202231 158908747 447223165 577484905 352109196 731782971 975929061 67409668 155991671 755538296 178867033 450346811 624322016 496766579 144698208 35437978 38614690 240666638 130062115 523443815 639604406 91487817 694412500 853285358 426440539 736363029 544820793 619076411 972469550 233204326 542246636 492918220 551561943 148323557 785894860 188381944 715849950 714603295 559489503 504594817 685472527 16270293 242126816 911014855 149536582 123872259 358065928 770608603 980199211 1563689 777200336 735965528 227997279 835955434 668048526 964351087 926363307 521694964 590422316 36797544 904510204 47615148 672733067 539708556 691500453 381912396 17588691 168305412 994051473 205962999 270848055 178474671 498424605 789947683 38462793 606500729 904724477 299443237 870457184 69916365 875221526 500304199 329218858 558198873 184999908 669305976 345287683 751524863 442459984 888564513 300884642 453169249 915730366 719488343 4727866 496309493 496894847 24704490 266384247 257385072 590912192 669249367 42201923 856123400 247026257 103776175 338161824 579048239 331731180 885139350 770254805 903308523 81277801 33647698 995923368 879346029 968020422 916978148 606658684 155131122 499215835 948485398 122962125 704416399 336250769 95002752 480561439 375360689 849483150 532242586 71380417 935299318 725683401 14534487 38621185 202269135 665093841 188155838 26075074 367033572 35474934 819799143 439043254 745880863 508729881 7301225 455777290 334705280 987677525 397286256 286164382 367588728 932659795 681268316 939846428 889870827 87378768 889678809 895681830 338880825 351918882 684375118 527822326 865796050 57975973 393333884 250633321 424892391 462956159 157112943 1002002055 989324805 235195002 633974909 586233668 329717847 16939672 230681020 53406533 40161853 636031714 845808952 875077796 623646721 407622565 163404904 166435921 307150662 418892382 773895086 686745620 84584305 88264131 199943291 942432415 920296825 2848530 17304199 828748766 92484383 723235431 957655638 892999315 469645577 565119241 1000851572 14946181 770540884 678933566 646394853 480495046 71324326 382094492 513142192 597752658 488087136 405501353 145360778 38802573 804503603 819519150 536428424 385683445 62266094 168581546 402966787 906740214 686041185 327796428 946774097 880401102 969494290 169290666 618843249 419304710 580169689 618264595 917212759 203483595 540697871 426222953 647957107 260827866 508687167 342231191 215908574 286213408 446928032 249882057 475869234 399840113 822278266 715580055 617125961 1112697 628695439 768544001 658913730 41635397 534644458 704682352 809502033 420899619 956875298 5110756 882857680 610043585 886950775 857046095 613721339 105336955 234034756 629449673 730439020 342654154 521193237 438612147 374096416 344287802 865871277 827165181 772601735 730364705 852071577 550607683 442227358 69640937 452922316 328220544 502828133 237876767 687228756 206695993 384443097 513627730 43631940 521740095 431180424 130279370 715231706 295175169 645646614 850476316 313496280 587043428 130354723 613506687 275276172 517411215 630167388 474786261 434125120 928007919 297460983 965948033 82074606 338306386 966203261 304211708 184227359 514030765 498505352 580558531 705031845 567792800 116149338 858630791 722991277 208168409 603590118 597326066 745873399 505977103 293729660 258079235 584643628 153771752 808522807 891047483 209816758 775207958 562583355 101026865 931422879 534167309 482508650 164365574 702152468 315985061 588481265 938597532 480178721 8557396 970385872 538273879 19216448 551636834 402949193 547385215 83849944 276063973 654293208 133472177 935938675 501827863 207651364 642544501 441444729 3240700 367500745 137956881 793267856 98208874 528758635 826525931 736803749 90784769 467406422 535343972 919417388 525851489 456478453 585324196 717532511 63921166 487528590 449524043 45927725 760067897 467880477 1000839582 222642442 558219164 321089735 936942744 895741516 737230679 30378828 38148318 924528621 933816292 781648782 273168534 729022987 213621199 738634975 288385804 807942431 796765326 687605109 436303967 371302085 317870433 595353580 71025339 269970079 115893 423180406 489197613 226039899 780980931 768471633 38586723 388547413 412936752 579231925 706227212 288890634 497171337 577853730 1000261245 649968111 486055457 497707540 51971369 724734448 411277886 71817823 469944934 939938508 447027829 111312383 724013139 605360404 111649961 178097660 291232342 644039490 630089765 99084300 461218813 698188259 542877521 778833340 8428741 770672941 702939113 268343833 441402858 34144068 359338874 922203524 244735253 702866434 255985022 605843264 525504669 926913502 701851249 340467377 536213002 567392714 216782010 588247365 678131912 322332487 884159310 943136214 481516960 451289961 882662231 983311002 656752170 103139611 624809969 720841444 294167633 768969960 171476135 547361435 819804526 538348276 719771434 423638546 875663013 627076733 131455536 716825466 948444343 637008463 278606925 256661528 541932272 298666631 373447950 205424015 142884813 464250596 195574421 819807819 875336948 751521991 420345652 526922141 449961502 213408211 230453403 408626399 941760393 876887511 249147739 827767751 866013768 280784923 233347804 304859568 847874108 669029712 704862916 754209868 794978612 869414938 598870154 30562956 895114842 708759104 682525681 235114376 563860021 602046649 206701977 552426957 760280123 181638084 985162759 524089140 949297731 451800979 633372492 860896987 30094875 433322617 334507255 396341895 760761634 714113159 420499663 858861493 167584438 850494911 945113358 18645727 38689026 162687928 411627929 948019503 260363460 375109276 368441268 923945147 566096000 932665790 911262812 446438399 149273771 91039151 46058962 216465446 309440136 964052206 817555942 461669216 366196868 917662989 33036750 718675871 509259909 641397932 804506791 220095845 167126744 582906154 585952713 337537572 252027687 665409882 488873882 61726421 691901833 524667410 282616630 979359519 899195464 433853491 484770730 724245886 65423351 300729774 334729543 463398096 101360851 452257959 771692130 309293541 356912525 49224262 965550705 198600414 446976443 173329233 128785225 951053697 3871107 478938414 883045518 735258079 3501847 547124724 160860351 480814733 173098641 91810368 222575261 13204601 857748951 722355763 108750119 584110823 982363096 588969652 606812522 399630373 284897506 183130708 494826005 413047915 219742731 671482021 55227553 895745391 983176544 850433134 765492069 536549922 933614181 815472083 11714892 679827807 658739814 901145471 231920122 573701794 442162248 510219206 944324025 756454879 534555276 477039460 641992082 756130828 257436042 997189515 353979335 174018889 809491418 441517453 258129415 501331956 73391147 132736496 618309528 946728082 850732513 30298724 725773033 16976064 827760104 916194313 900879663 595522343 59602795 311459819 853312638 95351271 326988074 474523448 750933713 108808286 143051975 21297096 342245562 904823032 70919000 526896633 981550959 455918056 53196732 838094590 272878848 636465274 718214475 697945769 205298347 976038332 612514232 796540384 683431338 275011013 96771735 21517000 240188152 205923738 321937232 344749957 700855511 384977213 539162134 338495739 402081032 186543658 674218263 634553359 424609394 294103217 71309938 953854995 13849567 480747318 473652121 991426538 804625458 270232273 45216951 283756980 611268265 548506201 830891290 399729523 358598588 116195259 686585333 622796350 12786415 26066306 310809469 922313540 667821484 736453219 752108433 882413148 198823812 273870924 211349156 274094529 672473318 544652677 907447857 657905485 382632010 704589481 729316784 390326960 48005131 252904853 89642663 351357283 71801345 101999270 58810546 618853917 190385165 903333458 943420883 340809486 971976530 793258191 320903600 432347532 620346301 293842938 606814728 55716908 342556653 412279436 816956630 979019577 813519201 714587725 115235522 9971391 288370372 927582064 731929512 133589843 233448177 812705395 486615609 828638008 607190845 360780538 274339929 601102335 342265723 2896917 923801609 924824584 905400690 318516017 895200682 380071872 463548452 335993044 766487012 708332259 892307410 839380750 928410323 886260674 382003203 400920673 139344510 236430765 16108689 680300422 571059338 334521107 44897327 608843120 682720627 516868010 686525314 114662233 172205691 597996862 175014599 805411462 390501509 337423471 720749564 268211648 716096787 185129370 162268484 650590435 284016719 873202354 472468905 346165549 399913083 860742342 588402969 420694233 354914886 683967377 286004884 399033934 762471146 460785089 224501884 966875278 904340795 722015364 724180415 161140450 328191566 980150995 458589063 946757359 219436792 498325198 403979174 38311617 875758589 6980409 597441702 515593648 192495987 565806067 863976614 300768172 28245763 528660633 849487924 1000338562 965091346 757245882 65249205 188923812 322595150 952313536 809836762 552903316 621741123 218771110 579373263 294082707 835083932 947480014 576464406 210191771 274847816 257917879 828043087 198299120 269759027 447833502 188811663 564684673 695679938 499907812 716372774 222282584 350808436 623547775 146725825 644736393 621594912 960528197 934796359 404746808 436698403 481213623 929224705 668983887 342927403 687436597 390965573 662949387 387454295 643536111 45524669 568810674 170367082 317900809 187274999 434299724 252180002 562023484 530295971 36002724 475069208 309271986 640606869 725780970 547852234 415789946 472184079 566929776 764548473 128689973 358729630 401645148 266258857 589702864 717484674 865162536 831567804 872672190 404266999 515259503 192733380 643147130 317239018 804185911 12045607 912994428 547539212 793754297 663968921 808349867 430200850 546122619 22746001 696781363 731530758 923028813 895079409 362984020 243258947 448854281 528154090 901885942 113516147 24752691 556627406 225798288 152124302 23203300 874337839 510722443 350676500 64628888 258548995 469021047 120695865 896213538 820069996 559843837 155982456 975369970 581428084 713245990 681494952 30906200 263751259 969929246 151794357 875067363 277736132 696498077 100883539 369365984 372003045 136999268 642082654 794020179 571768550 225454721 243765221 598449853 482993664 395527246 349643003 534466756 325790128 400080834 237636750 515447529 149790825 792943673 799467271 950178148 988747621 31129209 144371583 870242527 110225977 919435479 567412337 61014906 245389794 348410054 372710003 336327207 847069374 753958957 600068439 703730258 659589680 592127192 649293544 225525024 61260978 478752043 993626125 981438808 670624304 329881058 615933585 606862429 407417878 906553395 41700603 195222993 207723935 11217434 418068797 633809947 507973104 125843859 244164166 269580239 782450450 640709016 850464828 600205795 754834796 795170338 472022108 684127324 538773131 998308801 140377 608904804 571318583 560131932 114004579 304244642 795168585 679062882 117197573 833862410 772544023 326955527 107177460 400104462 167049477 37015210 712585531 965241791 941931644 468399711 629364634 118938444 941200316 135059219 880603882 871306603 695299459 460069023 189811629 144304913 398254334 907523925 590414740 805768731 309218716 829147374 682160561 653757420 591006404 527332322 40410611 572194972 230204228 617605240 502957914 742131752 835217575 987422077 860850147 42395353 287456794 374051472 522509355 743780412 3839319 300403324 10536107 94112330 178652053 762021383 362595944 889691592 585780938 637961024 864423795 906629478 996811865 734968219 287084077 657011054 46240438 421803278 830732030 327022419 904713007 296391984 571399041 41546481 412667267 24845090 736124497 354799154 756172074 343819169 425816008 183808060 389548254 211017275 57304017 380402858 902015421 526811794 704751053 808277872 708356871 19375329 566581150 539193387 207225235 749132168 214580635 257288495 343098342 461507983 499433951 832548788 751328948 595456964 453359701 804106383 548833301 714259899 819883806 702183446 982845250 206480634 508215213 524151818 801726816 3016391 391526264 859266317 510335967 879050213 86569060 73678143 894392407 232887519 508758114 828094502 60601677 612696395 387726995 140630777 281392997 118490540 756078036 335668391 966941501 742463821 615941892 826464916 548185288 723451722 503474320 914172165 253811340 169657932 391038748 433902556 411326761 684009398 436218030 30654151 986137779 984877664 597765855 413071499 414044892 993791634 164819819 460494993 561204591 938665220 388353700 26003521 857572450 930123127 701238668 424915062 453721408 172490576 840201475 40882997 435905855 617529333 608643566 282264816 524168316 790530367 981480707 76012872 451360523 441435469 729807990 740774927 849012985 617445594 755178666 175817809 927488153 682313435 868344832 734287309 404680151 259812897 939440367 928106275 79972226 224016136 600083967 409880868 245723954 771884119 597628062 467014681 448310127 800334503 587237259 546567386 598325856 309614203 534366384 595694100 800284789 36290437 942797277 613751761 273549284 503528082 822567194 970838330 639193310 876054496 485818712 497455107 554983591 973910912 73762237 796317695 622961828 495123295 794330999 450725653 788090078 936140445 162583590 516361149 121458729 319000806 717201241 775517597 610951873 418001823 717558811 114389921 962684968 191430487 944422841 981041194 675892120 670170771 109779129 172938029 752802345 10686700 455500670 287169295 152311588 494964887 811089222 606609129 897067539 383342467 953831337 575447837 289937536 844503361 347214883 157342294 986425026 253372362 644738739 658588799 979196667 449574721 129232872 863658655 188773845 502798411 861248478 309606144 36571143 807595470 955121665 894758658 393767514 5016587 950258341 926181402 213392145 168224043 50288038 543069409 19146512 657099053 305380063 5042076 315104936 398340793 257939955 585163652 215955926 243798361 508475082 902730879 591957291 887622097 502653701 535228520 514474975 704323355 786971215 604379928 911501632 899528774 153056081 771025425 212646765 616351040 623588536 925381265 823873747 876886868 767656716 795386555 640581387 980676030 989776602 277904016 938396264 831860650 237174559 125542206 269104063 19018513 607613404 536859126 309524203 890845573 889788249 45973792 937063561 98069593 627987329 70724861 560698870 354093297 721223670 151864547 351549927 550835630 110819335 375424697 221490174 509715084 595350781 116540161 370417791 704167157 233443335 254320764 866726954 963776467 316440391 262452387 422934631 887845604 476161711 498809155 869128494 263062541 454296023 516444124 617880198 707848552 337701943 373299797 240955958 83263923 452003503 20213002 725223862 140499139 506333706 151796390 5499756 774525407 671578292 219489317 980273242 304544752 437015404 25628723 50398390 363414902 590063794 604015155 755211274 876215489 434983289 928917997 368080727 919659721 614652277 431254417 427418911 921532623 177328929 586465705 386029449 485624997 959004311 178978940 6536311 669692560 496644198 612611421 137799735 205516703 626068656 703289815 710616550 175633914 256566050 853857951 161168811 508028564 496996856 145963622 417530542 525146953 676438414 619225386 325770442 452581436 252576795 206063793 817619664 413864515 513959575 756659938 333468162 829203379 981064518 85241310 569276239 928212232 529946261 722968394 773566515 986031603 869826177 433463289 607929052 983253455 69521739 982911994 863965845 815632561 156859805 858328268 183334355 851893035 505882175 697540399 772937318 837453161 433957882 295322797 843016485 314117861 609683701 543623760 209237194 434603446 9429295 863604650 271467777 753918680 615211367 376836484 345721770 938225047 119572416 924479420 704993659 344522859 118599701 194291496 663488515 770664715 660397602 896761861 284698281 257778508 953689351 114096803 733025329 412597103 216864291 71202658 444431436 247868819 16784582 162198492 682821941 380071437 318917387 73710721 867965522 178674760 657672665 477992105 487795124 71444611 419760853 216921144 223110334 331181318 895772608 352666258 879573026 18175492 215829134 668653541 218213124 268350351 611556539 326037774 277905540 23630197 854570360 387429313 792580045 891699121 751576337 754491785 108727186 203536112 87546593 306866050 406119717 373767283 647815500 360178147 82873820 467163283 897326866 621442569 299564293 818653465 902255984 69754587 787357200 199769672 207278581 757956464 364308581 187395478 338195585 812803325 914684346 708814371 589498421 446981733 455297501 297364706 645535853 186045177 481842171 806333758 721928676 564004411 698460297 549988417 518429153 182808523 880735473 769226499 869591833 839573369 343300574 970445289 26305059 879841082 26536395 275024596 441199372 881518697 639314178 530088689 598118016 922731110 143641076 691200581 882721116 568783258 102356835 730688218 464885099 168863200 448705591 282055453 545421313 992235427 457891916 59536762 827288347 236586097 394736681 910395076 57691236 292965943 814401701 428373915 964895533 487101806 88484545 714471760 473094479 540199937 316663739 583129197 879873796 745655103 238515628 900910958 787226887 1001735401 424833660 677944007 901914560 765528101 434209503 162689754 285374972 475157883 73957561 283752694 397524057 876544698 214448888 636323742 236421351 659396691 565008927 287489536 70729625 338582487 991558805 577966615 608287814 691409743 983522843 300718460 184531671 646544663 726960276 194928387 627620511 944249203 159964127 487102748 29835176 880264894 780152230 603380021 555508409 426145597 647086973 344949582 630769436 972536642 546846047 583897108 23116142 745225431 878393922 590309267 919138850 908906068 692064930 74129615 393940261 344021790 951424184 297128983 234809885 164940488 464243101 80819890 643307472 248696569 96784305 53836778 964160375 567609892 688035857 153895997 271099700 159501335 910329445 553690245 128172771 219256250 700169515 687740425 902513295 449156983 634616628 575682605 153650181 746161164 758088505 570330713 633580762 456472495 633784542 57068284 306433937 995419558 348965647 198691771 229463886 224247464 16744766 561469057 447238813 446470095 713242032 119809492 903995608 888069048 235013410 255721390 994855788 884791871 387234611 566930975 485532886 450508579 744652672 172978507 685989503 500280713 437969559 938092960 565568454 374553195 463840842 445082820 321227908 754308661 622025948 734905868 593299892 337688709 809262910 241250729 968386879 372856173 630558903 220719240 299600213 381009921 319745377 168460957 25876204 101285669 587613084 776259638 483426325 176212378 558278938 132645599 156303926 970080495 621894447 822790465 673700627 477579335 433983407 453456654 436820536 684315688 882268525 870393182 785115036 83447564 939204649 905763322 596411740 821391926 332407858 137512667 599841536 196768 719636704 5546071 361194213 128618761 733372834 535560284 826279301 234573469 634786019 775018088 637999224 577482431 617188200 291931879 181670987 538864811 526299091 961523159 880855350 901693135 832501870 869848560 273486373 60110098 641964771 940904733 979466375 308322251 725778557 868069913 280497803 291191979 945197073 252264873 278784233 465144772 439568306 889062612 664610283 130536204 198661367 48422486 990119156 543535732 996674508 965660780 133845817 208704809 511679756 797609498 11345600 397554589 659831515 332292250 229767892 699841035 586236788 612368958 920558723 162454419 942374453 835298299 578988026 352139939 401905002 316399726 697265165 240227125 200623502 712576495 650428506 181921401 993290887 504035649 505649007 329250631 748818223 91865493 553923178 212451375 342941532 804470201 710894541 863677906 495525715 990064438 417437538 162564131 269246816 403331909 101955978 395755172 956474341 601489746 150008334 595962335 881937501 430364466 887631250 863832985 116611327 638881035 123601027 250413407 591736960 879181349 558497001 191718225 221261287 941669565 207410775 47747175 102106902 419288759 1001606405 432001772 959510782 786283495 393522655 673070800 793937479 245488566 133223542 642086698 607271302 900923388 881995618 790984239 191628653 161851482 334890477 62059674 663311252 410844543 914982548 937515822 162453480 291570513 434266534 600604773 425159083 383256839 698854951 765661736 476717987 563974204 439072732 791537693 990349779 727140043 515175441 727459790 240339054 765687060 728151567 470330307 669279530 158700843 934744303 137652672 92700133 851767613 185100442 887560655 402303419 892636017 700377429 171534686 714881812 595618109 288600548 167564603 667072 71300084 564717966 919899959 502825846 880193330 811886656 752166775 298663613 277461162 603515915 770375098 790057050 638217355 198263279 358618367 596667486 755498099 149851100 371461739 30065649 595735506 550769598 699024558 227540077 905381324 179007588 602670505 31153905 821033154 934926668 185406098 505729590 559383604 284743586 69333794 701713179 262419065 671690758 156949351 252840650 773740593 421014253 808418534 11227856 458916063 583675268 854236965 947249899 326711474 237783504 895868517 922524830 843882418 68850834 800347749 206631213 318205255 803463169 749005513 21467915 238629759 979405494 630983891 391680919 389844206 289071828 483372322 795484268 270953889 655816286 317044430 476184686 718326149 204429161 954171563 601680340 220659750 193848561 203425817 737130203 691606710 474696357 272048533 367754424 928483898 186254228 894893272 285948397 331932589 228954007 244939187 95305494 787868786 912814771 118307871 643698710 93317687 315520780 248776241 925310563 889501247 357169678 58745678 480354325 752882031 879761483 848438194 152367732 959127365 86858061 294020282 681437394 77643075 841473036 253770879 290240243 284293995 852133830 978999918 705980612 345722915 220319280 251041421 85451310 862655073 584034532 484734318 131356991 195862446 229006567 75861037 726223465 426396350 551692557 82870077 308670913 879236472 929545407 840493337 493647501 349772617 463089332 653094264 241332543 732802672 929996894 456551995 88589218 971169393 754306654 867019271 791635744 618154968 346689067 321987940 753996258 540346568 585483236 400145198 310690309 37097362 165942044 754417135 147801928 964160937 691225795 209431745 496211444 778982705 33401369 662225430 199389228 162357097 483759444 816962610 704497062 317163849 379995665 58536024 882818019 940804334 31744283 590984142 167455390 372607913 517405248 760973155 331404311 449410361 785633403 289414811 55628181 336914456 986690298 333336672 819591444 141156119 989278470 411174909 664385668 332091592 221434652 898738225 857025835 273239169 404112126 173099097 222310262 813101656 940122685 889750062 537912855 208237073 948992003 469554046 829570557 848470841 329362987 26009222 372460969 298474569 789572407 722510953 890086356 281740719 694804127 707566573 356730058 444286734 151815804 526741640 625378977 815521297 754391350 927064891 395204139 144245516 81735872 676761392 666854905 25749684 503251534 987297819 110106551 253008115 274017507 397522216 792408765 405967064 435765476 582639114 117172056 805898060 357743636 70973525 268823811 453358912 868242224 654891376 935882736 219801460 905651899 63054162 140872435 349304915 303422250 569814561 163096709 260777668 647289969 729105861 269539681 621810293 290108496 878968391 311685392 659207538 534134633 921681414 797916666 401536959 821313024 495721023 339622677 131384229 548884527 510739935 295576038 239596050 457421049 386296732 657111261 61532130 213184718 114810926 408043976 188795247 511367417 988848976 166214246 530795509 762719105 700793711 1000778530 9121987 521978423 982738211 275811211 207525202 666148337 482340562 428056594 321713571 930374878 62116352 277850909 716828092 813322393 1320336 490973538 642855630 498081617 879301421 600417140 797566189 136493092 341795091 965191860 554171142 924886072 45051764 580487526 49369830 368156143 991958548 964348768 598009864 936297265 745345150 5872888 945640242 626518354 750770074 459588837 393757993 756622959 452871538 559942459 933325866 467152607 159702116 204477473 302969655 960070492 736754572 134223080 508332765 93221625 491623915 133045361 468463748 59271417 754964725 156790636 600935094 768491377 37454786 260962215 896792185 965750210 12844223 784108152 810554649 717953929 838718846 275169204 256359169 901472874 145693697 275628677 674261519 448497093 329826412 760829005 634902851 670071281 516030330 737642820 845956001 484658036 777515202 697968771 616440045 772162338 655100945 79566966 856361549 705994024 735522509 129176268 548399941 78520586 407328296 795928536 536705910 313664703 199473402 58197832 382349091 173615022 970144860 389893287 744721029 915331967 41530941 43450703 133555118 969796368 910598666 571192653 640452485 198342050 891970807 245442491 802731415 309795424 423080800 38018821 297837240 139407622 669580451 159966017 663238476 361901150 949800319 13441227 412182838 327751655 313023697 352326326 363559615 949944782 796396795 770919146 53606037 374714594 830486929 797156372 97832533 222260654 934917176 469160340 58396503 292740087 981002220 978264271 598579861 492471394 517924875 447556013 979549059 729091379 243011989 163271373 965437672 19058468 40440256 6345570 957791710 214814219 510197398 802193906 804624607 464988300 587010586 624133212 483792676 820308287 474298153 778097371 755367865 840701738 703889966 106243226 711863794 4638719 885185744 112489469 255980677 923686237 181922168 879145528 682557562 150888467 129810935 832340729 616008100 565169176 318907505 399328448 345263248 616869049 89963389 43840874 674675297 121222429 676459399 164166951 647318061 795569684 410120462 251104865 588982360 587815752 394823811 884807354 372524059 131923155 507085851 651030855 806051124 211291630 557718591 355095215 316060667 767234650 358910192 824145363 98488919 861398359 50067046 214942484 236862121 940244572 610053010 934931361 581274314 996362257 40696195 168490149 364366167 816586448 141867568 475558043 10335675 881649971 641338708 786543114 77788502 573341639 941341991 95747793 412636283 606117159 418911213 563176396 659198905 884101816 637494428 893863254 514765463 560439259 523471593 525274217 974866860 796120994 638308071 596718026 760389711 783687924 637900501 26364506 734655567 87520789 484795186 155735802 569420390 173639351 508946456 481176205 75765360 260679606 185744162 60570345 263525941 491128006 742844019 884898966 361173234 915789024 288806466 413035890 968341003 429065417 725643477 544995484 118788301 849145628 335868080 728929052 986069007 550865170 53645869 456050476 790732472 701147272 84082277 887272801 424721139 151641084 27006078 920985253 103332144 841633729 602784084 744747918 750071577 930542777 67802700 803341920 378138003 492992313 446061536 214626727 644160238 685324703 357303578 196200065 454780809 73492248 264970213 815141206 490538493 324810908 548359754 942513944 557846278 32398621 522078097 780079267 45035092 987777629 384562238 749371529 8901188 462535001 192731775 658824214 747370516 438652682 441432180 486969083 135807533 471614215 720577700 317701210 967827335 594689517 230138313 627929706 177489489 518712515 902420289 92721468 242177596 285645998 852905728 249593530 383450094 21438924 991483225 820033522 995283325 132470489 851909094 320619276 965970875 241047049 885416354 370202664 95058086 121269176 625304466 959843621 975150314 441536985 112342718 126092435 69698690 297071651 54710453 930938548 787329200 284431000 309198269 239263714 94785513 108273300 383138389 902197147 612230288 580025210 314158355 798207832 85944297 532390767 446214761 248705309 702883590 112741471 555153933 110966109 868594115 516472425 390794558 45609480 748758057 215903919 515603145 813283820 160338773 463232410 552940907 502660936 577035213 703368576 647444453 354603298 304891185 197345936 582915429 56525322 373981095 684220679 93656706 238244248 5726398 524989605 466088954 954357926 695685407 281271140 680475298 957709227 121898671 428311792 2828915 835257027 5262457 623537177 398765420 348547028 568469992 931440758 316105213 681064729 551262887 392425435 617502430 671802535 960146482 643362183 834513621 485016805 282833566 669842351 538830601 861777288 975446796 463993630 946272387 420761242 723137999 106275091 205980026 609247661 640292808 875386775 990521681 449511991 810432468 27211202 661900163 163816035 979715718 267292176 518712667 267523658 560314026 1000951275 175000273 107110650 14726396 751862734 452177656 658324884 951946007 330821137 103115159 586982879 642970601 682148966 283520724 313795264 233449346 48738227 580630309 774405568 538535266 214667938 318979286 26466981 609500890 974207610 744416787 772545439 263850219 305718553 34866434 596139408 751738742 297748353 428837213 843200268 77078752 114193001 976875181 800980813 676782046 208068464 334763284 218240942 23679920 978941845 513834663 622280496 178818063 494407111 936039948 961965170 113245573 569314817 448614222 802836887 181692162 580155456 713799419 975277117 124262592 286995366 848422885 755350589 136064385 356316050 882977674 275265080 780974659 393045103 454016335 678393726 598725345 283188206 453727622 275665572 492873631 131925431 387256944 119187694 46195040 977939042 139766608 363872771 190542772 842432534 599967231 362934063 252200834 487701831 169769080 192023382 712101924 261586287 367967076 127614545 407624126 252207799 743318788 255514734 47372968 475852310 640221104 245653268 790666412 368918010 40468720 61869365 88949024 446243363 318335289 793837209 568953131 923967833 118249205 472930376 910934594 559240456 682750020 538255575 865159592 284101284 652150000 605358677 749631817 63482156 757511208 806709543 233570715 435201937 998392975 565682353 68742472 787590012 557925907 972334454 279158224 762041917 936093740 351644505 222169772 960828618 688462327 238272614 622012026 787583796 400891441 83820805 407363042 455498566 995610074 18244255 551928766 275793423 591122081 564718430 44819360 37113178 618336263 282746297 996719695 229618954 509247576 174250684 763470000 213555835 817080910 391725749 775781384 978640325 628147817 992339303 589362844 671135751 928441607 130594513 590037426 73004904 668330680 51672605 631194017 351733527 281585434 153223842 234497721 228515082 463321450 680522060 582826514 607110200 47907679 593601481 850339806 459477658 588884253 723741698 690173348 199943965 498377596 797974799 869193532 840856701 146350487 264295362 151440556 417240974 365477710 893569276 904409586 824672156 94091530 481207862 807243867 553099670 862709935 392097730 139422392 822082151 196954908 964976527 606803660 842978090 451029109 712236339 990390797 927641609 150222993 372303502 239826318 5061876 550142390 678661538 149534392 472515093 458057743 594093938 868646764 301886588 779522783 751264651 491272349 824289371 675575707 513866503 430775665 268916559 715833532 394265165 904606713 639710198 693572509 288621175 3984359 532746777 992444161 340698925 77951237 813262889 158466952 1000011925 550813513 653112261 689406238 927370035 218886593 898043838 121620624 988458630 183136500 73814464 660369154 533720010 300169793 431608301 438307600 401379789 989794394 471595164 457062618 989882964 226456833 428244733 114453241 951838250 965364740 874755194 66838419 40009885 260509932 8599064 784602898 491575392 922110166 855105231 144286130 863762690 165236021 739952923 117223088 30074707 325737754 969752445 310857293 54186920 324046597 650441716 580893207 399443498 386365092 381716940 928416606 474760173 431327297 683984332 707008934 546897128 456006427 537439671 678962379 604606248 541644586 46390205 157223206 790618074 459835165 635090811 827595300 718310416 65028583 935352211 973669123 764078175 78492879 497709021 954904350 180866861 422081772 941281559 913576315 961950819 184011997 942362902 969348975 690158068 356054045 579642477 841433889 337847395 939361948 60211351 530683718 452185632 857616394 827385368 262109447 45225325 298995185 220818843 63636692 562929735 167884930 972837110 776444076 187211926 24140348 560692096 72816773 749661951 223105115 385812614 48651768 677208944 467969568 699062689 868471202 298351959 104989841 424778264 397952368 107018182 729439325 193755213 943542446 76347534 289547859 605876308 100447889 769924120 989335116 359372032 521496224 69009292 833274173 417503960 727032714 672267358 502977046 166931940 492492186 773311579 974188583 559273146 293531595 613691174 973592974 418990523 308375965 945207607 250691704 192256920 428596965 509890087 576580567 984185047 993587066 822031192 35624271 974902395 21358773 23629534 77867985 435623512 783125659 860291016 238610394 729054269 1000625270 573607925 83532509 823354790 440484431 104549432 734849380 700276443 24322890 136925075 971753865 623397750 109953575 943895569 517622000 726624953 794524837 143977596 641952957 606410422 25881162 432644936 84073589 73868030 963159177 224382606 300819244 920640289 935684005 56974320 357148834 193307223 878638416 594266954 582760864 549704921 634384961 395864805 717699633 86926905 735498777 301810956 961683426 819172433 584618482 783274970 790149772 156885977 768410270 451935187 570750293 420747349 940041826 465857609 212478156 49629247 107132386 693350573 14570708 177291795 603345059 39715157 347597626 368840699 518687053 549254761 55260560 574573099 808857220 997462965 29569113 700568100 637113004 119121244 439574129 698426352 674948435 838029171 490451476 749188661 200489380 439988481 869827932 840970807 669569907 562774742 748781700 113854452 197981382 994890647 929956629 353864722 340784596 897073275 916229319 529690039 696128628 353136595 27980692 764616463 598782200 356982327 791015917 259713681 765116117 862717042 617545545 463161619 661987959 458622199 982548330 81283650 998464016 635648709 845931775 847529361 67973501 64139215 18428492 357685940 775695738 661371345 384154452 154870606 582315133 245965582 133325737 222962592 269434366 167239811 969677148 696671174 53676787 214817092 28615693 818975825 992089093 756659050 432152519 979627100 578158206 84308268 938457527 42591925 966772233 411682268 400898753 245370473 666692313 555937821 121626742 95561808 115519316 424660152 924775330 646811386 410864009 650897489 728163617 426214334 935279320 568188681 825481321 535519635 864317091 110645421 365586983 432531791 330928440 68456885 932482727 36265630 789542219 937423558 105607782 631716775 509758428 967892487 179640427 673255671 78725056 76748478 352952057 836797033 555290867 757614756 338126300 709004877 599821907 424774016 693681418 31862554 60235558 116268259 777747402 267879525 577357237 962260004 857467081 398617686 587005244 154481700 131545012 846322805 848296951 213940735 403238518 498542608 755891983 79743018 830450187 630373446 714837655 221590934 197817819 553827407 193170886 333228759 471716249 116148887 390441253 871888194 739258972 327656762 549116771 664585805 69300159 608564155 325768645 392679270 102055122 984230855 128362135 86220155 381172997 370403708 591793355 508583256 758372095 878872808 17406159 898320148 265001454 337251605 976281062 295388979 104632721 552844540 166700791 35447719 325818328 247169282 613863984 650923600 453706695 288884830 505981861 656659243 764962038 884687261 130192722 589629643 175111003 798923323 520044868 330667802 733993416 23441336 901123349 521380972 651441624 173488990 683607177 306515328 116126769 501751620 493297656 702643192 936785512 270351764 866696219 517955123 108896729 877578768 602349605 904829976 804048189 745407174 871899714 1001431199 163298257 42604817 519972680 120824962 677107274 815985501 790005784 26599760 647785285 210837878 340921656 217139861 655765330 888964577 787898269 613584945 574840302 404915442 622002194 378518648 794120395 361956614 817389115 115527154 707241370 94815012 628771014 615951921 629149757 706868411 284104471 642720085 355624992 851544313 383245752 435719112 27205039 996481404 695944132 284440158 833153631 390328980 960333880 719147488 350188621 80771630 278036056 765600295 764221918 836498620 689752148 537869829 561266632 918624327 803730782 563604145 927016605 450704858 711262874 307391330 972997954 705864116 74424574 841640405 97492600 485591002 847702880 185093088 548260647 24414419 219761696 296738428 350360439 186115554 764132015 275919906 567321611 242046827 336381209 366022136 111165033 182517778 820415405 91962666 892214938 379736228 368006723 164985914 629510731 761454855 327379491 791549385 999413383 593064080 972090429 186640831 544992352 759252576 346709711 666935560 103940059 353724359 796673758 546541328 186826979 191951717 220507672 515571764 129340217 573308785 740066355 529608330 422557096 105169856 697195898 339754882 405230132 925154649 349184659 159447345 971193711 752636042 297170263 411162145 176633850 938584650 735122755 499153500 969969154 854483320 250302214 932191217 342469490 30978447 912961659 318649330 968512953 318784465 975034011 609524240 40410130 765223762 795645974 172350927 948019243 870880583 478747709 133778933 495081476 499440121 247132353 502167546 964525547 72877718 962446834 264678078 327608791 932397517 246308280 487939784 933055131 99254672 45264737 193953900 378981588 493747869 239652914 661631024 47528726 442163127 504473653 469550771 328119641 398248270 69095838 84051793 451024012 615157715 398462851 942895414 842241788 477585398 744673921 173338601 219536048 651953173 832340613 154349096 884183021 423297944 591770547 456659195 439717861 715110985 122996690 33269012 65177174 217609150 439885353 818213625 284892302 297321440 568899335 617060841 660017279 843565566 480746146 378533131 364539635 278300392 247774033 488961319 721673901 47157869 734326111 914460904 72319072 856767365 49257975 882675117 943683610 665955666 719052446 892913881 633266298 358694990 26341263 843293911 89031049 698970740 274277811 615466527 499949913 15137451 481712001 821397894 68971010 99609551 572384340 11676876 42543042 528639120 570824749 285997377 769270821 112605666 799933441 853679432 451775347 691571596 749046337 935810769 53438094 497207291 762930918 291854155 392317045 925611010 333863426 877608987 309316881 578432083 750811366 246461193 610357281 75824572 1001072382 648359195 664234281 736302988 784181425 828184460 854394205 589014382 75413236 488201899 412554771 952474737 433935143 479983615 165128413 133604706 861532947 984545913 572426863 444311723 944205270 565052423 939503984 561376499 849514376 671084310 20980776 852396559 833545022 270796870 369789641 294935366 197244669 522478250 149368821 519960476 531964396 326194177 839165675 440370658 863409198 737072412 910641933 774450270 345692162 523745842 722551812 20617841 940542916 868601577 571811074 214043240 847768669 411021362 257765662 674772048 842236997 650661391 480647951 62258081 389834020 744890884 533200746 947155996 515264536 140698141 862781241 716960974 653115686 644100994 408319273 718866760 368541317 711548284 463789223 94803306 500865720 739299936 98613051 42739755 522090789 733759004 921538247 598476383 244191323 275271485 392774589 1709617 920018367 351727202 238302479 924480003 699048318 496201051 646025000 339652546 200434845 38918340 291884181 698305683 556582931 943275814 816373517 243869605 414120566 172021110 518662267 319007581 725999190 558282461 804934482 563834411 321020645 390294651 504086313 360948348 838477251 169205955 65527504 665014919 92746944 701502685 57297768 341395920 489775404 701256749 764528881 268269927 322687599 281969395 732054702 330603258 25673521 243223461 141041155 382772472 172535108 635239447 437922850 729028259 307079580 258084120 127834649 96322768 751079148 271711438 135869845 181751807 157062047 552195560 505336649 851674402 604418640 511622779 960137824 691464051 154519087 151386562 962800138 251699531 101965779 927697834 124258098 673139259 437272475 223106597 8409300 494012754 614913326 491659770 29774960 330173371 37934664 894002678 560990317 386126194 390005334 840853601 254661116 423424627 676400095 992667346 966680142 735716400 301523662 382353092 308303628 723514749 274519640 913060307 147946111 451284324 65275516 713662317 358195944 519271354 632174329 769199318 722261767 319378562 960929110 697553038 247200098 683818436 170841966 829706699 396379643 53846676 253718506 307269257 484664800 39932302 586179031 654761149 370889665 474289616 432941868 757721619 711730841 788887682 597663906 940959712 97866962 464447181 145471835 171828670 460835357 606710971 210673545 643869382 902629330 331271358 315926474 42160879 895162428 374362281 835457206 46994128 452146986 186372296 835020270 404131637 340534839 763887648 222215197 249569552 107290484 390941550 729544573 140806438 94567648 564477125 771355629 5889832 753768624 55325507 196969399 757556789 971161492 149728370 287022331 19030070 287203589 818881053 283275253 509984831 855709696 54945880 462850432 103518598 985719829 842588169 18105294 831549921 527445076 215840896 861418071 618948091 699230534 390533191 417116496 775620361 688776223 669235058 375535267 296789061 285176444 966037453 819079912 382861422 262567021 827968878 758339800 782029936 558880645 122764113 491155730 925401362 214441990 759905576 630550154 220925590 9650957 886321242 818699251 494828212 621952613 31884956 160748465 754900622 264527813 893359457 336921962 162849902 317586582 371841064 770599288 81368906 306695959 314739951 416619901 619757712 315694306 844107047 669487197 825859262 984113491 600730928 676900506 586040160 394211398 285038548 303813691 844999049 663141375 638641276 688213526 882315966 339549127 761376761 432291364 213852109 248389706 829901226 735779193 204131487 524552065 870683901 121850231 523739961 459973894 186766782 761218737 543256160 481589835 887386904 917038157 984268487 29205019 966147659 162117381 313453301 245583454 121294377 1000096748 79587121 78600433 565656923 176679803 873840619 564542411 966240435 334737236 289117102 434499682 88963584 484326375 740499000 364564235 863855898 892439500 296297851 291352887 88084736 298690684 573739147 832857890 284501131 948053386 558032331 916850183 25405801 737821207 897645085 972652076 978850704 186818428 790789330 930590072 608126230 831444018 604759093 837076519 664043669 992481611 339469215 258489351 247641778 770691614 526839433 155073287 145277389 282176888 816345473 992635427 646961334 474588969 109520697 417004865 396228165 223742879 488335669 110416100 951205503 429406573 721407326 489621995 65017060 375951520 242297512 183048447 496217446 992032515 401304370 564932760 737429431 512995231 646487713 832355241 930227042 219691071 845253963 545695389 801343622 183728538 745971868 966887535 919672548 31632571 770503592 440116263 728929929 225487114 388743800 302599302 463328232 811307356 990957218 29674819 196922669 374134395 582964494 930189984 904247133 416878919 320223919 206079084 790632329 61420598 930998163 983896234 957832402 375871624 588045507 717424645 181309685 904424499 667402088 123843133 98047966 151233855 390534609 309610596 102222511 807851569 218262119 727377224 813862003 549388442 557777906 851121504 155576579 656425648 277628847 508383440 897705944 219298909 326934746 331716663 317810449 678378738 991446948 523691522 690888245 397734584 915755696 55813406 969596554 506994299 723675840 370418848 315083117 34826535 764017067 572048069 688767424 541134901 191186901 67603932 340389774 694386055 21008757 831588356 258931798 764551410 75921552 773920006 625395731 321688999 463933056 38100349 620279963 460899003 883668509 552825305 114041981 889657246 850718101 652727707 66548563 186649685 471857706 204138866 237226135 94360564 821508905 59367558 159487429 767880962 74680201 986038662 755939850 386087699 342716625 476285376 999830382 926435402 56561096 508488999 574580351 805100411 536461117 189481980 767624960 589536593 388799996 510437699 798345997 200579911 837708789 472030987 778766174 214098512 942443775 134556086 295227259 774258598 730707771 37946110 700395216 45415035 7643721 198135888 654636330 360320026 925240774 138901293 309638404 664357043 455282220 605005662 725780717 32499698 598618004 759023568 914231013 535127102 320760318 1933996 391502624 940078976 564296850 997238818 894844097 835964046 723706396 132094132 982144434 272924765 681977520 373335777 390117440 340478538 618480120 263382115 523673445 382223280 195563660 150346593 497732352 486117567 540638088 444101826 958580744 663026036 849210205 260721661 659541061 762329440 578616265 758498007 969210727 948809241 291767520 820976070 85462692 48681736 836822349 961593417 53484262 366666356 113148610 382696956 562194542 334174277 403854473 431532432 799664245 855631908 121776635 630087537 502962923 77168913 631287603 651363921 540604795 878604215 463607331 588469139 357548208 586383712 13105217 968578826 437536897 439606124 737759592 617185410 683844480 638973575 726127664 235885717 38018162 350936249 818534164 796978474 235884878 646876045 255057400 908522771 952770720 550608896 772713885 673520238 668262836 380598916 727197364 507548003 182698503 613856699 43636861 355818830 714838684 952605044 669996443 169005902 96347709 83166415 249935970 598315069 152221651 215960432 566745511 71382738 5369334 878029980 996709923 128084900 777986852 988256208 266161406 124848632 179881655 647426597 43160963 718526784 579586274 886802176 153838354 147054429 828763453 877744439 539020841 365572403 177157401 302853447 72515499 641727678 833601029 160209371 686421432 666375744 526864196 509053641 382775706 165710294 375401772 575761683 193997356 137183251 506877415 988306263 369052117 732116224 747762503 23882298 556134066 176406422 124136275 972756251 432457423 377588664 623240035 497763862 147531221 843721368 148275997 622245542 682682983 656300109 600241500 854420692 848791742 253805630 34158133 39472289 670343911 85974527 780535850 665254659 210982009 89484900 34183503 772557641 446816085 285757218 560137331 671669640 188530974 400472914 493681148 482977502 167805708 100494 419138995 901829324 418047801 192149832 975597914 680758506 372828532 159598118 333786356 129870569 755079928 608495642 129591519 415020821 304223605 574754190 900179563 647621388 161205592 739926229 516647228 930183921 256838173 220014101 329049335 541680384 122678189 372684500 81408693 308615313 69407982 251655860 591955648 18830201 904283740 388645355 413723451 307983740 76824981 411393563 935842909 318955500 789890958 985521425 853183676 225639654 439954179 442796096 47402225 328859765 919778106 957814729 8773842 395603522 166939308 310272760 462846811 744242627 195186617 730130365 841007787 19238017 255634020 757668642 467504165 40272687 184086383 82150844 373819635 567651528 446179398 832235048 97127531 210045553 778486852 933833025 717782026 424342592 881752393 46707639 727419268 58492089 685419466 312757273 408472977 800360109 254464130 151927938 481968720 785200825 278228712 625137227 627021637 335984034 723630129 334073828 837399084 739292102 921468397 244138927 976349488 760728342 131764662 737901355 116351853 908873082 268437947 229896981 1000745714 263622623 101276618 592485012 672795251 590464226 47802060 610807124 296542702 285189541 122569783 31901181 103997713 672325748 174804025 297440220 518342888 573113721 856680968 735879285 925204216 630026142 189305535 973714573 620478391 601103757 803805625 563477796 666994820 102793192 825342204 281212600 159445995 629569717 884472733 75442387 360509235 942175216 740162576 536506219 274985091 232650669 250823630 426536274 902869286 136982374 234858373 567793131 458864235 341869705 860048532 893638603 66353391 549892365 962755621 344422883 506608836 384454786 435633563 557691113 321431732 829811013 778237706 260986916 469415398 868338463 681755356 498382908 310735839 782413346 822242988 814265203 259817466 658488858 421228303 519802125 259795805 487443647 647904579 667051250 144400164 276324850 680092893 576077935 526332234 579515316 212926785 431309330 479632060 276873961 963448012 696233558 592129423 198439205 70234258 113128158 581942303 580765865 770928086 7747448 621218305 740634973 148324626 517809824 667446756 976943615 202404444 680614066 640227800 800627524 933886414 134992514 919816636 353859872 367427945 856355663 243082169 2152077 719555802 759418697 791863233 554974158 360432664 79498238 994559022 88263067 594482914 837946701 744558895 685010541 693980559 533958400 501388352 123145747 920424007 29802152 120485995 116210003 958323706 243757364 781610680 932443737 42146318 541425814 473295323 466628522 252600585 258860360 902199959 369129259 361041041 765857398 167875577 23457347 237330541 564662337 134816665 219893161 985844364 878234765 604780150 699565434 180016205 217604087 56569141 796875514 493079112 737766268 360689142 734166902 177849066 909087252 73314148 968677973 258831214 138518256 278870342 766999330 139703403 570550862 113438766 858874931 584459493 820046470 82749071 182534945 765914748 776013741 402266883 216998614 133066954 817986703 757367075 167426818 91438970 307251031 836925610 956395704 288410428 181267900 60255995 632893746 59873808 318812512 560209331 21530487 290660287 760169601 88376539 772873375 315225047 492654553 223197958 815437951 412211709 374040656 542434353 120278753 586583028 120062026 870434589 176256038 761044925 627552538 849455168 154522634 91967843 346656615 577511083 688283556 222062878 282172944 642544205 641645606 757326838 378246698 602173461 513095422 575042043 965609414 963239988 584203440 803906906 647072419 781892295 77085833 180084571 464926146 748699310 58279547 205776537 753361798 212261587 199025470 356583562 776536985 601662678 657484418 959471288 69050177 406453622 804281416 811177244 753520063 925146876 954137881 506653554 704694830 519981281 575845015 268841518 450249853 558116880 968674385 715131900 377821260 920623225 501470417 26578887 673397952 513697309 358661507 146867818 587273621 840727669 552532824 312692409 96668206 369623112 18855547 795369827 765973095 673789112 286876819 838681333 698179930 320910540 644410035 965794912 611998945 421612405 236422442 109733446 30916561 16892921 535011551 92882802 59886023 159683019 257999977 699795728 883339542 649977227 492498118 395900315 40177133 520118596 283974351 970639479 209705787 387857395 762333695 483025503 457113626 463642738 226217111 779524777 322999559 499326356 991413994 636152794 326322658 363959498 712850263 221425308 61098262 62076 302239553 208326310 896887363 428253506 567171227 570287875 217807816 518020179 962747186 708917456 924096051 362631121 909267307 17938416 46226626 931210042 601046606 294178940 789402949 889126604 754444575 955959186 448151404 595418298 663643137 964463422 859980867 911616091 693099270 768991135 178616978 733053975 992638251 544473777 120875829 86759077 601515067 705004394 106486854 108075744 946380015 211375272 829725084 384582028 110572773 746076203 444982301 106494084 513327701 164867685 248427519 113644891 392839067 219208558 837587059 519083174 559909135 541678487 527798517 617837729 156773642 198957697 216263898 458733010 813483736 677905591 287537536 838849158 889300230 859004093 58168849 420228035 913241188 459229046 832116165 700515351 802088894 438930550 411753806 48201169 319937732 138907526 571169055 853224091 58392053 936573094 655535872 147860803 57979166 781765399 39907197 513298429 507555614 823893824 621849452 296455148 357403134 594525435 875640791 639548969 486260139 216866208 270029010 766635100 9252568 255197103 372923920 776206971 52095698 622135564 662305311 537491108 47907364 994145217 162371197 307159706 98675818 181687816 938918226 515469207 324437192 137512246 683331589 638935953 499417639 81615870 230716484 953477513 688469687 488801092 27782047 590048544 372438384 639881755 27563034 385077738 473200643 514869478 75906272 465088519 804734137 609765191 843784984 127761054 49786680 205962405 392185494 604541345 34275564 424765940 366647385 825137896 332553598 959053454 687164315 304231612 701747567 146478916 43112619 461879883 559270265 553736797 883508009 617836123 830194276 240143678 896224281 160781704 498052194 325780925 338038156 236782789 577617499 390918390 225704600 352034107 199622132 165323448 202788374 240800223 201805900 949169590 859495062 1001887787 159967272 58660219 832064429 760322832 595796370 389416628 762477909 320709776 911201403 489707286 295185327 472438222 462269542 739874353 624214263 799409929 21763879 255159869 847018811 240984459 78342417 381526294 989718639 759528717 664137291 963681766 556706522 354637864 888059773 561753944 200607152 808596854 963241129 738275629 445939080 205951378 916068736 646145871 859088708 217279492 470178442 133805852 176464723 872539833 765747741 388281505 533052291 168338685 596144811 676719109 749067532 437582260 189437598 831709088 360454390 115473988 101662617 31907571 879457068 908819397 689657211 470580301 750810168 732740291 547228730 382097227 170009175 548398520 880662142 572635901 250565956 664934733 524601193 197147290 530292015 135357095 43128063 576978795 84568732 279869316 17234005 128322749 225554889 93685480 747563305 464813703 347562940 447764748 477692577 976144550 99578437 494147467 646303440 447759857 206171427 128072978 250259944 108062590 181870278 112814991 637366396 297783396 222159431 27874028 440727569 967535442 34526288 108948273 263462660 903062379 680870656 515502818 521531624 773468886 316001615 669520511 193117982 221357566 282425713 250973438 621686423 290275245 797719820 904920953 247704233 173467019 265448666 373628953 464965935 917010413 692334406 921116317 599283857 564756961 170046113 763788238 767624152 778205383 69698854 320113281 840953342 900320500 262448943 443403789 603232752 559496711 912315186 411133349 67392750 728840427 750729252 380682143 786416862 273833273 379969628 913232611 794275009 791789226 605817259 496896538 139589755 143922098 359424706 389072033 164092006 179149145 459840212 925696417 600923924 301322239 42192904 699156690 696030927 530250592 452039954 193167290 931093156 902460725 617553721 892594386 514955668 646230797 422240185 655036578 477609224 103898983 149743097 714372953 24947010 11232162 934306137 355876294 134258705 123902305 221090260 96273103 931370192 543843028 16248706 326820919 171307936 561313128 276017506 352188261 597441437 1000518309 773809041 684104526 196883704 835607138 680256833 608481834 536833168 960862595 952588963 213512285 500365776 616683085 157691993 585245997 595415377 885859806 307668217 251381543 20023278 73970949 122440799 369671946 492155619 120190232 465786615 943192689 478920256 382569909 444746882 360113408 42558925 951879698 51246407 34949980 602636248 571516655 657708056 652570956 231850698 225847605 551426938 261465592 680399737 1000464503 576903678 66974776 730578662 323111616 776377160 879089206 480988758 160948948 469368463 367742934 568723228 652680571 121879910 665781255 943758814 377038196 906453050 926152014 772177934 438579277 824341517 345631531 400517468 147845055 516940650 148871126 414091547 101421921 736848124 10065015 940650091 938612734 729097598 130237716 601274709 828861114 311490776 458073412 703319494 581179135 147333769 316112889 997107887 209196234 720551021 269302212 705681180 571616903 192192488 487491015 902830360 351692321 483882364 808186 45889386 55332670 45675408 784287437 320041254 545810215 246789456 779344881 495252695 1000123715 258569881 147640211 829356528 804241133 904656522 472228751 838326495 591283268 677958626 578920312 898959089 148045291 627228369 651337036 532294919 954246292 507406860 309690536 980668474 660157027 117885020 105026278 299019392 132069299 30902914 983242357 766884766 499903861 89758518 553387917 109237866 613330357 930419296 691671574 363305523 72620844 135973358 394832784 209456294 171882078 290328277 641076799 137584865 204036500 359659542 404739595 592167583 1001311293 107040081 650142090 682555141 334251154 534263188 715398602 906689910 867876568 455056036 929598497 200793804 325961553 937703482 971027716 193002335 940418754 676465128 606611209 847011129 46386391 103496050 907449572 47843139 647934879 298158558 198745203 887842970 763914096 764982907 214482977 739065524 295999719 885608873 25282851 983239469 490685138 825236109 398022860 503366217 952781781 429484032 210719198 916707223 649489522 596961175 873441994 913593654 503432462 903498953 933803487 870306397 295320210 555805148 549738245 732116426 742258275 805088480 682395802 356958823 110129893 635187548 929048510 639995305 308339009 545658256 16864077 707500765 459705839 457805294 357913311 822461035 798324871 171116951 383891576 319365102 813692636 966265748 421340957 301582853 619429395 926653332 648511619 474899522 797058426 864871682 564140298 456848734 349242114 316405965 473142149 981775101 641930563 70909229 515041773 219899269 652535363 770425190 622099282 327025351 543553828 819663978 519436778 760196465 539084497 827170001 95190347 803916758 330788068 757737276 698992798 239486978 275146106 63677693 711159438 130473146 332483670 52437209 84061754 619050343 488880742 919394889 736361939 974986088 202536339 313208851 266448054 904233914 43131367 229400460 354462588 676249886 273034738 96326274 957407607 992336557 517011915 268287041 20283718 445869579 914072184 161780647 301682774 111786723 229577643 341448272 463170083 67703662 594551068 69327332 381303218 452600099 493669557 73873827 704226130 902709338 780761713 570187464 409615202 400664050 424731186 49041215 527361849 759922091 171678207 702935679 604275505 399703011 339251222 788432554 172789262 18096820 758401671 438379432 654314723 801466626 866160741 552053156 195283434 35251351 890829912 140489912 407611666 439309560 637977148 816745944 229127740 667576902 556772717 697234441 566572471 132469567 316255406 778475934 987949317 778437990 758244139 303310176 171481172 743033466 8355975 265720113 846600444 163957041 697159585 270652493 35990553 671637073 258160341 578636343 398691743 265896137 214385979 923840008 671253098 818047932 734213506 417290646 823620182 609119833 548192153 940628266 652662286 38499757 586334800 630029592 68536056 305493868 455729337 64295752 761669832 571813403 860820931 352210417 191277375 86441899 761716717 521891361 935881875 458580981 799120410 640285637 715060273 822465255 448454262 148172625 916130154 811144379 346928299 568402405 836713406 471236270 706850636 2061405 757472331 312689827 296295772 959197496 810554396 563421617 493509171 68988620 472472722 669298819 282088409 620825852 267695180 285807697 705782349 577537521 603524623 536818358 641595137 577096013 362169935 262995626 224880672 143736685 214380292 677654306 782566636 154525402 173941513 913545305 597810203 5800689 396844431 583157258 658384282 623739394 54316824 894191970 160884446 597203640 347589488 772249187 822832565 453555887 31737583 276691827 488900339 394786563 18642277 50416682 329403890 407014489 33350586 894577843 895637103 123812982 661691269 143311660 780990906 75777260 871598354 433641672 48948582 757804052 467020102 828664468 999764053 989291903 279431573 50612392 280703685 816649247 160111669 472946144 779041362 156378561 850639644 62028492 415937420 101298462 6738082 862544705 657231740 80143326 629910392 861610046 881085067 199967437 869375688 90560024 451125900 990709369 777493259 231302203 688982953 398898341 101909824 101087259 127013192 432585406 990653068 352043703 293263052 12216955 131975034 499885505 226134104 924455342 277866384 9215405 609145184 597905563 344900633 935353601 143102266 576764164 610480461 31903252 259856855 541727052 80347302 172293774 552674392 59940990 688060965 363236670 767710418 353769864 515436237 516472506 893536991 518413789 843122206 306118060 63006036 655550137 790362195 373564306 158892199 235915825 815751786 223909777 690198209 174876865 248561964 286563677 219946012 319589735 216014981 873828982 820587351 923414539 658778350 341289381 789558945 233981997 754904903 289422766 957962514 230915988 711229382 745407372 584310687 103796966 368733491 168710679 458574669 518118420 199241631 135077882 731896049 4400550 826726315 109290483 452861114 61601848 643970832 416144100 183571427 562912344 343360275 202976848 914227248 946224715 331421064 810688812 862647019 387435787 982729175 485957763 251571517 674533961 485711730 244997381 294141007 288111791 25501379 362020026 1432948 605917735 55898768 313441930 237845534 279432206 10073972 955559298 984065329 898063131 297084904 366722675 750338075 380560255 733855181 854819722 565114866 346707888 494667172 1001190874 512308607 705911921 964384717 346547400 911729414 299974303 71960097 128909207 288515712 933352181 84468287 773965612 195996641 557757070 65749004 620199908 633684294 709620111 792969307 907230139 136627343 668248626 190836131 389966606 987143442 186377462 519830291 903875876 757564523 822756392 807398756 185304893 731693023 76021324 560484470 734136324 799224113 680171695 58535807 215675514 919326640 266247283 58266106 182779834 157602231 768737158 261368820 885482638 762579649 400674095 1426297 747826845 5503380 697009185 442770418 193187894 424128787 541122974 267128617 827110435 788810920 635132216 913046638 270413557 533403049 701622948 327918907 555595300 291403968 14527285 664159211 197372930 722038702 251837153 844095488 251528040 971416805 821026049 28871048 796721184 279825371 393565659 502940451 370819444 412437250 328207471 667559119 926054639 449402109 669106074 414445147 72871449 94540582 634687985 62126449 727711821 971607 745677370 864525327 703668487 859077843 985745137 759690005 320607452 870905397 948315202 762602593 798018105 742454659 196466481 830813515 821736642 326144057 471800173 630175382 125442458 501440760 204009553 335666481 602627724 411386389 232981775 746012831 454494567 177482787 990040281 140673009 696228350 753006975 693809211 915427195 203237529 308338121 609991736 89692848 202659390 120715766 457141731 103753683 462122069 998928972 713185604 183865803 376922069 977304816 873489072 261666518 85182902 911281836 983728753 350865126 269736737 811442151 795045352 105323168 528651596 678554443 931490738 875124233 725033003 569537259 611810030 979712866 881946547 63427979 184669995 469592235 290974483 980901026 889376349 253507820 485255152 680830802 36475366 980685790 544382871 315749370 96406428 816219042 212389485 608991707 836228049 999283296 425626410 88181753 971243878 307879499 605151222 175815352 916234246 794902354 888863066 901922477 112050841 493756195 638616489 51965826 313442619 309455585 542380532 746104510 176265619 195941921 899481828 368599149 364786621 679444659 147632854 967165465 671137558 707993495 733309049 494935769 577333172 596773738 19961517 459102814 966751578 927093533 556013594 250949142 780399870 788897731 635068705 504339646 246900716 81296933 337006885 552273208 662392981 682330350 608630538 229936062 23579666 314353002 419173873 919599745 94927209 67905716 233794248 405021500 403717520 69124696 468090768 706317276 394477686 273530728 914486364 549176583 145166987 247844293 292630399 403371860 924771878 497559957 424174909 984387651 613372251 417904321 149246485 682369195 431512992 712250762 711503571 440022298 60294868 636349 883213286 151311776 609130285 604045117 842575848 348720568 935638590 424978246 295747214 198976948 781062093 286123696 429190468 40873134 209487393 205129007 851151763 273963642 870667345 50074201 879706044 357165837 911404377 32300463 256228436 261697952 174692187 65006886 354810447 203880191 485913499 836127325 685366218 387113212 145044383 175244003 86656698 704876042 197986557 512094194 583634020 503764913 639664615 804913991 300255426 820719568 701282515 283361975 501807516 54719154 157182749 946956000 952199765 306395129 47003994 128820834 909666940 690954660 234306860 6187648 668242076 75546073 311156319 671896266 958625097 581975614 577120514 370365309 598723953 980869480 619678329 848358833 994125922 124182787 246003542 659997857 659731675 971534351 494166086 227929215 740298345 413831524 812850091 276823926 945681431 820609604 690632377 296850749 468352843 121863267 740705159 303413910 947602843 112415835 122329402 248983390 690552286 469225498 941696637 978898641 364397093 282290083 551359389 239418796 244731325 807677898 1000967019 314240918 494605190 986406697 115240952 240304001 521586508 353804434 703200612 755271590 141750100 421518347 764398148 212436310 881097511 584304694 860240321 688970565 731925732 105110779 1000902353 943493951 900379396 33437640 832834469 265842480 328368816 371945970 683626160 631658119 355431880 964574470 109202495 102331217 595760642 85624995 452787045 894199707 768083364 596936528 860047296 262903804 536282103 24444945 174112650 469534546 459564964 504177534 581866036 30793939 976144091 336158482 132750690 607310814 715643022 362264219 85949642 486233179 427468339 169829566 474791640 776241174 703840673 623734554 808561290 855683600 392058776 931480967 556820514 509526336 135459720 912470540 58529815 346742683 868999121 478479266 321626648 202661899 404661863 367537229 394944991 67245919 711745104 8772737 880721354 593476776 466520986 356345642 471944554 111889010 204036015 877321081 274339848 470352835 852400363 993884919 600240389 169728447 272462122 864155000 189826287 307355022 283611228 462697838 564371809 252745987 822073939 755320122 352641720 362648045 834036821 16926221 913255709 609546918 380626937 193030924 617219994 655290631 671750982 888633424 392693440 892793617 145456904 978961098 136777270 82708448 335663869 911483157 849615546 2886649 748690190 317200022 15534961 697095939 564620869 897554936 574530552 56697644 708363891 977376145 770432287 189210736 270607572 906050795 72569777 425538128 377043889 557802251 214428600 206898802 210452075 133103258 510910253 506248218 891590055 346839574 430912518 959059985 659376318 129763911 866107949 282126557 639126077 836775362 631831157 793999160 629644074 294066242 835699176 809490519 993619934 705528464 481702533 547630223 150151064 73270336 314039099 943555871 360117714 552305133 640413879 866561660 773042299 117342530 311343267 517616847 590529188 234673146 263985222 22014383 359089109 533416792 461703696 235885189 91739821 340459730 809272897 549011149 394012138 708631740 324057320 81143863 406596922 206959194 878622070 380494953 358986616 17773304 124167755 861628491 219882667 57935493 670112715 185392558 124332683 525993915 187351656 576571797 399875819 241998084 550877863 253350644 941798290 519506909 166533842 855713282 236300538 833785016 112236727 794736432 566897798 459776419 995523581 983038453 93100958 252398626 424980993 811933790 518144803 493025612 130526759 854227342 906178098 795387996 963869615 831302154 320075171 603402409 474728290 16620594 602533836 734821793 963427941 265677023 709300519 561104238 486081392 494234827 553975307 163914136 18430613 259222461 959271904 825273953 176609518 165853407 235027504 504299233 596233097 682000572 733217838 480858928 411819507 595967164 489274652 109174245 86215401 410032054 480585612 96216688 952113730 382748352 513707643 298757790 592008385 859576639 717920012 100919994 518607908 927772457 711280564 973261347 783259340 437694533 651736770 953044916 206378702 106533978 486195217 14060178 195982544 31894878 675776568 478347164 935977657 1001742923 390686637 337517361 602476492 106627359 536402927 547567168 780508995 477577595 672107989 312929423 239552078 710624986 396303298 528456036 368094382 405521805 675986415 711207988 180271217 22561963 690398527 44992360 56413217 571135175 846609474 629938458 198192997 571093424 299110152 438114960 27867434 215049538 429739643 167913352 350469007 991700311 61222430 335624962 959082893 513202442 36226939 546656900 363043475 107717655 125586502 179693117 105407254 870653462 108189557 660107379 283866619 42685782 618130787 660730778 401574304 625908467 927850093 162305389 966873621 911196615 688958037 236799672 44158024 894982341 187579366 768997510 956897157 407823622 555717551 959622647 548991123 402356439 731608275 836257352 162101034 614798049 158505840 783255435 462538354 995547993 946271517 681171853 778472677 953630310 922948743 86055695 999901625 85780061 115675940 675684225 396021274 300368893 855305021 10836368 832004831 122283547 103564339 204814210 624710125 231425517 485196070 484482487 808361675 4436799 806117025 704695322 385472599 551538951 709085357 268871857 834136337 513975671 646300119 888915817 974552751 952375316 587707019 114141245 72937933 495376261 164316915 146816387 403457871 406311191 780926379 160793560 219342597 545430261 281552592 826681603 662448798 905124764 148318722 410198435 166337291 107895043 152667521 684161130 359406173 993742459 381467755 96363064 770267294 857132347 439199322 528758582 759932738 683096051 117484516 788301401 774923807 873292750 858702137 502121218 264789011 791161492 145271224 141843969 922293826 689309862 666546467 432282250 897758541 463100703 744807046 46973804 19389027 651748551 402331908 380440296 229797713 486716953 733042894 501574178 881682372 420190233 171213659 686507291 765500765 888347557 993780508 409165571 636562946 357544134 547920167 856087467 688020424 931215054 123363443 799739859 746847337 364644056 933831569 106942066 755661752 870955120 668701121 791606120 724812833 419763551 55235788 562412732 758391097 641919012 973345835 280402453 828968139 299069639 797502152 794298853 330246202 459150328 836727738 95577614 928696325 159129465 414957474 632815352 691529865 434540435 735361281 754594180 677537080 766532059 577921008 206295822 329433232 997291949 283443139 345697051 970435754 241782583 330728440 931740543 743046857 14531206 535661699 456237933 226735734 999197426 766620241 767902246 206514372 697904022 409784756 33844063 768649699 390891075 106809595 50783594 857124140 34250749 491843218 712406612 591713468 711360974 834243130 528958118 680249216 366400993 623142878 330383739 981519924 955516856 308901552 304889448 376256009 160810804 982878999 769692804 284919879 199856375 520989853 711913096 103534750 634581946 389945899 852528837 97125985 736295745 295394610 429395570 339483476 274059883 5638015 270056012 522060279 334083562 235208749 574337686 432757597 185978358 102769785 242900267 912328345 793442985 449070116 860687840 391997065 784161123 108723435 150709798 562999058 381337465 509161990 277141434 996321871 722601351 810969623 536622383 697059032 899576932 128416221 166619964 327853422 81166829 853876012 999972387 542804335 554396003 947445441 326511794 122885196 937192900 206094093 560337503 474870455 24645472 509421660 855357027 222309750 85251243 911947197 47593365 890692478 902341216 966264045 715233129 589077651 3411267 523288285 690493228 8388948 897739195 695104492 922793220 229593843 230616021 951708440 972378777 6186145 480914773 422606425 449953091 23971992 871738066 800684889 855659264 375513708 7900258 781756254 716594555 624097004 601138316 231336259 675209899 131855984 612128149 857074230 194446334 73842753 425632654 182207849 188947037 543443252 236526682 296119336 300789496 32780785 723084453 584302196 176680875 847382749 839723428 341835524 223418763 707753276 244181130 987572625 180394875 105615049 181941804 688459824 255552630 624154556 114564020 322611426 229737631 927377956 300681495 744806614 916709518 68655020 299553188 903360074 444622061 807790553 137012862 500929550 698752724 439453788 953806491 415159066 175449215 960046364 272286551 677700469 596590820 858856715 643872556 409545554 147698031 425653886 310520566 882668574 903693583 467646939 703500412 646290831 745641014 694003000 903898440 724422825 640965217 321315257 492206136 83406138 110535864 925204332 247062800 764515090 199319088 228802779 661569373 259973558 984045446 602260029 972875755 507074995 532950100 740605132 362469303 211196547 696984621 371193923 1292053 755221591 296070727 1736963 876829827 819089543 978075749 174815470 556294938 886670868 420308727 874785422 807836588 863225231 946897777 65166679 889794301 385524691 599342858 340444248 216633747 668131595 515528062 799079987 869536351 422141715 31406459 487541274 960818825 685320115 224963858 354731242 197190626 989160993 267370404 406985226 309933006 172796231 805100452 447086610 168638662 142155372 723809053 562977205 248223929 346648628 653755895 200429720 437027394 560502475 692613904 587196182 682118316 257641306 152366825 626855820 592970337 727945778 98476060 391136045 446473119 381451151 747408665 218209460 690142665 351127382 850472029 133429001 859827581 923813051 915571050 705823314 109918837 251138119 169094888 649067032 982243227 380802342 214803727 737593903 824436079 883990759 110055996 218922781 400613169 936512552 635521015 661519320 870796784 274758910 793205065 718235207 598188896 334831239 550454905 644394692 504375933 290288035 386847943 307206307 900610470 376327698 823710012 33672204 524070716 308896320 141186576 79796829 555310300 442928639 539681747 974925090 104854646 229855944 573146774 155781480 164795411 171913038 888706113 970960728 570620070 591351103 14265749 728867593 242077460 486678666 524839996 635934477 237439760 76554226 277345663 230972626 974100140 456834618 195663130 735398133 640958282 518302208 291657346 14212416 762098047 312384056 575871726 460505180 540774387 825919243 331656516 777513387 825318243 255211402 221735601 456190951 242778159 355551597 819864855 791205903 313299165 75605623 568438477 526708894 372856278 270562133 968993436 633495815 115067932 244495839 437370939 250664588 289771553 346848257 550183741 964593222 845005084 877109888 966138774 924822066 549612922 419516968 592967611 785478823 535718948 116827516 96115475 491787305 661593893 18478145 630332697 971832006 876699163 681443389 742037349 63374301 7738773 590673858 854703168 569051389 67359167 188924583 912866050 105300977 901966217 403038721 417271775 689718446 433939677 3541087 868393178 396252684 923599133 799973848 241602910 129370694 500959207 713107680 898446499 761184660 678329019 678108059 431306804 189637189 490076197 477892267 507899239 970226073 630487570 716084035 94987700 464085286 266558648 325208878 328528135 567796521 780191019 864057214 97905028 824299569 813886320 469658910 435473703 288277372 836624632 368701114 731234744 898078977 358686124 538868679 457555875 452201930 622744880 145367925 550639891 161297661 1002076328 165215853 106762864 171210416 470417280 157987262 406084544 747929321 664813716 789889246 421637982 350539800 731700820 32979579 447179960 533588355 457975161 205486530 496173275 726437825 685531289 33250352 967933381 821061970 539972740 399596908 637525579 626213349 724124597 649018369 707837199 291346650 431744521 127983880 222235342 281383927 554386077 386812817 479746970 833497736 477021088 202206728 139947882 41148392 571441807 4816650 507669736 78489562 944451745 181177498 514389593 107547418 719391445 484323938 87168670 234590291 516282598 260519942 358123373 59401103 54484577 390794618 147621792 552864630 922205080 155057267 14482421 8112784 325098101 853978669 635843661 188290197 729547146 666775005 982001692 870912745 524560775 89950871 763944533 525175389 317394231 407705643 274378531 348618339 397762301 416335579 355543099 182427859 584691146 289455444 325243662 554162410 674689488 709301196 622181068 779762219 545206094 916808951 728646165 314204221 675453137 440571184 655367878 243945626 498937637 320566116 618425873 252578909 305027110 153422999 181123893 310273575 860211603 551755325 574654939 542317831 443955118 428629417 972017011 274544446 567999213 676743908 874137702 800913251 753114381 867589007 707894514 381931097 812385795 335004520 151207748 709564500 511441807 521795394 494260144 710734622 694256739 612751021 532324459 891754546 877230632 91528386 62507692 285088495 830572046 139549264 763930979 366599046 933259741 787742634 333465952 611219539 655848897 641615400 752698901 477560467 172469602 448373718 106173780 856579846 383860032 360062854 829610705 727527345 282520785 287798833 935770550 530694625 830274169 266132829 314247306 970505089 497010271 748039381 986702097 592244478 525410031 431940454 479038378 618999447 536614239 980824983 375606361 746520478 664517476 726818728 698826610 60645848 910476015 224189885 841144823 565746772 771302730 786192060 292455020 452089486 184459702 934427978 298466709 441428598 197235772 589148019 157831977 66246406 449431067 36203272 525996029 454207440 478046672 133957998 647214054 30930098 857349089 884452285 826673118 592173283 736020064 10295146 952608583 985472011 743493350 802285890 535530317 840854399 501740929 320576766 386380410 341166599 16004054 901793370 742867976 331271066 653592559 424798006 947815274 467532312 72514889 20189621 725461171 212290944 153187648 884771320 170865407 60371022 604686410 508958191 119934063 471104132 552908145 751681119 103584619 627170267 232639222 835574588 869295901 56217314 545740772 254951649 523591153 633559805 850653005 558683985 298725539 328209986 176577369 348861397 670819477 322772521 525923425 741512803 1000058241 615285279 782782557 510919008 139204368 898165734 966237174 511998466 803753766 738133722 4693114 81975520 887867245 853560588 821883315 917007743 962842258 49920558 393417378 502134513 600546485 645214154 659582566 378709048 108120749 591921209 557540365 768472191 317720728 217684541 972907728 422694053 267889056 115156836 844939076 835880361 13008498 906692371 40799208 846070813 681859410 93479129 799050334 799602234 926895973 381376758 583111739 259432875 216629988 423020658 208097494 102801593 516788159 547696317 824354760 339951169 994993902 675266053 391578618 372319601 210484177 468258428 137023730 613838615 664957365 81240913 274715814 587549661 41477932 662343598 13110423 115578040 399654928 186946949 281105245 517128062 141002786 742539760 145376683 411357254 802151880 854475071 942133299 344114807 57659044 883019717 260941229 772454943 839342947 9101551 921467338 27890572 564803105 574080466 993006153 998323266 385543605 785668252 612239440 548441694 225914430 833353385 487053853 295038358 846342469 414200703 883916145 938888080 250501266 455047568 123523727 999559338 432513700 996957449 93942435 89463896 797804845 215713333 105007748 459711820 477581959 156443966 162637018 215680002 152544743 870005435 44164128 622158412 56752171 197339067 918059633 510580735 48976799 194655984 603373737 232324549 993415160 965782496 552098598 98391426 851658261 895922674 549349211 538136721 888901127 176038001 916968584 485622842 363341292 302246480 784752476 214439886 398998955 996936328 407623466 89412688 661282893 519566240 991566375 184597968 105400166 793771872 63437190 916496198 532272673 496518444 832320109 564582439 876346110 220445168 99686042 644202790 368496372 529791322 64757529 317702145 731370903 785718295 90155252 442550467 188388084 480281184 76057323 25090312 464773572 564204046 229153664 329064982 124915690 619432013 581469147 567426757 498003744 599306278 399918881 396432151 476445749 285182368 801387542 674412241 475369516 447586773 422265381 233818472 646529675 297705133 251074172 956853846 818013040 441928588 134843010 371849813 409227304 846822760 490933003 671586335 416172429 722593607 984470877 903606902 606569722 909384431 447146047 296816276 992559037 796380651 825652128 726308294 844902215 6503149 951169237 725581179 685771332 138630951 291470658 457062846 12204902 629628605 75611129 477182426 312662218 507170859 321863407 426988213 853453356 704780375 415059909 175688420 573856261 404031335 526149247 840915950 804404968 625564261 363487898 744070016 847072742 200485336 374067341 487534464 349259478 699386003 376959922 686223070 960831524 216652638 15298550 581559228 584838714 975486245 791881188 364362302 696661571 766056086 804971863 313283049 932293497 740838788 115376727 221264210 576167878 45644727 365738261 687638806 297692777 559096782 308020206 258522733 222768548 191588538 120553116 395900535 55353231 835492923 779734599 344026490 194803839 642623632 387410676 98512404 128868246 449286 442878838 427104844 87617946 377520962 761322877 964833628 692924503 302603833 181525349 279565701 545850681 971671952 402478969 688206506 363619565 87315657 911911745 652036042 217849851 548013824 911480410 125540820 363308875 489514008 805988732 455776471 48637882 465517259 109997636 674744546 365100529 681057390 811202390 139767443 728182971 667689782 84173866 940971143 936473961 204312243 920369388 565770605 238372240 70644165 255559125 189357656 854754530 541325277 900737456 43070790 650874051 172150250 162814788 2736507 633487101 789755561 442895879 849117467 976722417 371965007 970906619 117844122 733742024 688408663 997720436 354955514 733775114 433207076 146586256 700610552 301266960 724045807 74739185 178173794 464585688 330028561 646398444 109807580 70623993 550641175 503962983 764348047 482082632 291959530 562186844 446496901 482607226 670948207 957140714 576819298 634793594 89199373 342988504 995109658 558344670 823025683 635676467 635000533 165488992 136932575 398480710 930746556 201204126 46605840 347574724 9469379 938932567 491263975 591362626 120813580 183230894 739254775 823267819 808029675 833822347 526019774 209037270 332830060 119045685 345938333 877662280 532325547 829261115 519703519 380749878 122878169 289264261 702889097 197977530 227157182 480053929 957944687 12047168 911120481 342947131 608146514 578197503 603645423 86859925 140909292 261533733 102476856 763212395 509125367 205637052 56620141 778047715 73389829 635011801 413760435 394433468 106789144 346634637 918245768 689380388 569568192 399654361 1752789 666941748 623223985 363028804 207654800 867352511 193955362 30577341 27411218 521780749 122483118 885126431 750712725 698818326 284264520 403434024 1293376 637477542 968485353 344069081 902339491 252100130 231153689 534762659 179640164 742205589 474476009 438941739 903823063 638586518 426006989 129087252 897080201 210995420 893779299 264340562 960587109 235207135 544787540 934111369 71731772 41802062 723501879 204875931 497793790 168202536 904649711 56053392 449524699 26298980 571881848 809063313 83239542 979648006 586548006 128411324 314571948 879623674 528104075 341204833 567183287 616844306 109175647 377959111 204932802 178038340 232311161 925457962 868811978 585372453 629844366 952057481 518699091 165402615 466900206 294468514 812497398 637476654 938915982 794875093 71739976 558805457 636893267 450012151 60740686 362089755 669634185 872529284 664848364 941202624 58906016 606934181 564893310 160014989 703072043 148344788 12039764 477954612 105095603 141733438 793655394 774618103 664432770 747145205 310999997 229186131 599578677 411434534 887261291 923810197 249597622 744728736 731774429 635852873 466320888 368329302 368062420 891134237 228329218 125884776 935283041 498151338 867874044 475944656 974010422 601341137 485733444 795526888 170671576 149062975 15984579 113775687 319712214 855055353 556795596 495178493 405874120 266492921 816694503 540900439 753620836 84260293 746130624 497960470 720756472 234930573 635251024 362965535 306780109 731252110 485883912 996523178 982740983 236571545 529704992 772561487 593549689 367778321 505267562 281692814 464974870 506106513 939529261 124377174 753159124 674008067 865913339 929831492 275509556 998143797 747872975 418800127 617923603 113134747 707328978 618341800 684430218 856573733 239621553 885347418 452254641 601522288 241043727 862962028 38113368 374558994 622704313 664163126 359180799 797564861 480558560 907779951 743777099 320338255 742721941 784445302 227913145 691342620 205535609 114791315 670500092 499389609 249138012 825647866 379301791 92184029 966921375 644559649 745097698 251627352 890398495 634883526 169347530 776076795 815615801 617391336 646709658 396510788 335041705 263456704 977701736 323028354 791913346 800048028 223126600 988541018 703983435 251122487 763117889 607155079 622062640 327719023 152643719 303491471 362232211 279595151 49314742 829362009 194710863 300605972 641462597 496911191 839698590 554666498 8198858 324908533 973958569 242058534 198986223 594532127 985597126 94481336 748336920 21698904 338888095 250090430 741963239 323370162 56162058 45520542 922976422 212124092 311272206 745507327 230947390 116337787 933385855 565438216 436318537 118335719 792797604 850402424 507758951 477534390 108037438 384058167 977641330 469010711 824852637 743133913 103769319 805489494 45599599 469689585 527687845 332786755 60527431 819926893 681056193 245777246 34793988 14459650 161557431 841515521 285751408 941045763 172012020 319353400 474025405 551437196 384682098 355215972 852044487 590814976 43780892 998560648 49347527 368097736 149753875 179734762 318729782 230127811 644822154 515028299 76703550 264266245 715097742 244168926 750793254 53554279 835078894 818368360 468620448 337124343 914081575 480157747 363839273 144641105 271966512 593971414 561437325 674575539 606399226 855446902 10652360 239625400 868267365 235400637 346784218 822731511 342483137 556623119 577482330 434034713 403838970 990547521 538834882 263190971 756987577 760383565 216749409 269306434 344560326 304302941 131926894 68523513 668743580 478099585 626442020 546810103 747970165 571239119 353650210 48730052 543426377 1000501804 450707410 403564456 146715142 553940963 632761155 584407478 15783806 962903564 653859060 74592677 52087305 165862432 648798466 87072650 151215992 645172064 805642162 659625666 223085873 77424529 487266909 996544486 649794913 19242363 967478812 191199615 903509657 806787916 168287822 829474771 192261087 153051848 967391946 626953559 218602769 913197660 653713582 575299425 282081322 486305445 811469683 140470737 388937421 284460080 252051314 391486331 421953456 152494279 275282842 19830813 764227425 372227341 267494099 781569822 412826235 931644990 90783876 632134008 925744695 352472530 438291408 298120198 851259090 210085928 271745585 437001473 728773600 794072455 521147018 844905833 424964174 917709464 711299043 94848549 983860835 978621020 670408326 270541535 478712097 85114692 603056152 952822731 872708125 592453115 427601504 671100852 569445470 958744117 762988396 426003844 524875995 137554690 168394948 797473293 385034516 289371781 501931749 23460234 265902053 977914672 457579154 117695466 769322557 289395327 306370098 160520375 224489098 174642993 578814675 881575005 304688215 613792575 333787413 846004823 496040358 296446311 890322163 856525952 989656826 93656573 932400516 982803482 150061985 85681193 193891549 317404564 351072475 891983867 900002649 699192649 964980373 764201050 593480709 882024159 678221992 168552738 506705707 354459474 151152688 423284704 714755639 345374281 829705100 589709908 738898736 247242380 202616840 853724795 260703436 639005391 362159042 40184194 842536962 833109994 619898183 201161232 502887115 753396016 270351531 370528481 220038926 381794714 639997582 703722692 439202266 824942776 64367795 604913271 243834886 933656862 712914067 950465206 46629354 44641929 467002954 801008829 64344178 191872142 766059687 330205541 414688665 727808076 63131282 877976867 798358242 828758152 483673419 531463084 598044447 727873285 451262854 677191089 905829495 155883278 614195638 395136447 214558853 151569031 178181264 129227934 769225206 222121346 971634575 827633638 728706821 462063004 790571591 570084942 585218207 134470274 209313405 746454924 948005997 730397772 214519878 55923854 151222689 551991895 960878189 575988628 311706326 991967214 791680435 532820380 281754990 77477649 732705041 377379992 380671643 263478939 657160535 327972975 307896285 802440443 809165055 426495253 51596131 58745515 97752680 236794128 49666999 625246416 932888820 517561834 833095801 527660769 79418271 240643141 425086111 333561883 130867474 855417911 704201948 899956794 250884857 509207420 454867993 649678227 328554920 11096201 255902064 405000200 43938038 430372076 842805668 609969955 448459004 940860405 822643425 852229955 978864692 374260610 928837151 248642058 193376024 497302032 571078846 942827421 424060287 698021732 642997094 862416712 780777117 553823540 569102632 883031055 629821896 714967950 493600326 227143200 260434419 152724539 766855076 245255026 584319019 301390979 893019223 937119333 850408960 91062324 963162851 286954908 293568856 858113837 336738083 666935057 554411889 215174984 660188234 18953399 457404483 243182050 227633328 179928243 53838718 532867751 219538068 613940063 367106123 588290216 929735392 759164176 810326679 645613764 404878594 772013735 203610138 383076983 313813506 523594852 482447592 500030729 704455310 889540991 441363730 151603268 474160987 771744300 362698926 431191994 376582426 200224168 351192130 856584193 622352628 318208737 644340613 698031780 994499709 522090526 738648708 58380083 629180434 405526972 536911118 438278876 757998590 194637443 438849008 843698083 987468092 574428287 212081384 361718000 160206177 77328880 324403678 171178141 837570195 571498721 16131299 958625147 413601874 498911717 519478250 103477818 2565208 918497725 344550727 331963869 839674896 900240876 556295054 452077530 271438871 565890270 287581916 68168478 488838235 626173522 305873228 326853949 458412475 796897261 483709694 439579091 956330517 740821539 729977041 820192118 212510721 619215186 991371542 824583775 10930312 274414337 387353024 824353992 167052346 436697047 11498200 854478996 984619520 166673745 770663274 768054886 417523208 626851839 696931522 464127908 643390733 854951886 292959293 952230504 149570695 668088504 585446442 824051065 554451816 910797351 971621977 820673362 503462330 754449674 697319784 394806523 340484404 228837370 701112008 46602636 109659288 622952041 262811236 685702424 534513724 695225602 901786710 635390055 609110106 100492817 73902687 219188324 625135238 589205447 753036900 446401946 867758713 958664366 781841678 294505453 581682334 414338318 866434080 677310862 699354123 847545789 575201434 788698825 210571826 669914145 666288883 354214013 88854662 437853179 782953676 595227072 12847752 477998346 446455234 35661463 203601260 540251047 647773914 707623585 446970210 245447659 589470301 723126655 671121228 320635981 803261882 404641628 878531988 130024447 138563651 764254093 737153374 932556510 317611151 133851433 957735255 173512351 276029675 257198449 738205673 665238044 895943545 140317676 312228052 894313725 929081994 641369923 4469578 593872093 132653026 408518380 502982328 382597935 406450757 417023049 174766405 123432518 834676628 673838367 187796863 810834161 380289313 958550374 279477542 625248457 145495449 208853848 954123433 132086781 578279901 232432398 520659047 627177493 527223568 210280945 554200496 114514855 706651825 724604564 991771233 102671079 150235852 219020330 737038461 727843500 713798724 736835339 591144205 645836675 947732620 893257236 334760772 130578398 109775595 326450382 988594927 899411886 221258290 742146402 487123611 375675551 103990315 736372635 222516625 163047095 310374671 567082798 914816448 154427959 400723320 716370791 568433167 447266196 727641717 146453555 958593289 525953340 564284506 463755790 184100504 641348142 501786802 801269241 45277473 304722320 338358719 154358926 712891693 186054494 725770340 894419709 742169426 328769718 507482937 34393115 907813974 188456889 318030307 225131832 100529096 71862547 453403928 662226692 783405093 936098964 581725449 209590418 435766394 789333863 528206490 169698343 363274729 110956127 514147564 241092941 974728274 572664031 584199471 423351936 206888624 444055297 817442353 308380059 40656164 737849161 974047105 481719769 933885884 855139377 925659267 13949254 943999839 71030269 880065770 906901578 98590750 200397237 709553786 828833685 245440350 467211638 733397216 342550418 729826658 597786425 1002169685 352212744 405561010 672239507 362982211 640605218 343662881 263170697 13704341 351687118 357888343 240905535 552373126 60298755 521932544 980814130 82098412 617950944 47145458 25728804 310065127 56531902 900824608 301286358 1001143704 75196676 328631492 893505002 99038199 104522735 350107333 246480553 750821751 922618249 288619044 698233199 928473138 76912209 242311631 795889230 556674594 521707143 919071171 301274685 954453816 439529676 993127173 321988474 387001027 608891539 59744137 6401737 81143290 21532236 764725447 887240297 343676266 818388287 877790930 94766317 492348481 638966576 755847580 566916297 868173005 99739418 702590666 685230173 678161857 962268503 482576008 596913025 773153846 489021317 541292575 77444812 890510957 669166841 702326175 75154285 512306294 883652082 743997020 112003487 753997989 901985918 533872250 484423077 439443687 147157221 739139441 453847980 994679626 824193385 474443949 50739380 633747668 487309927 324256774 274348794 254007813 104545503 785839530 301399147 745626899 174582525 184364487 862255926 751402346 29563085 798086023 415239459 128970664 956733861 817020770 482166332 534337724 358857511 899297653 735459816 169047730 23412155 651642785 119197130 875135966 552970426 1000275176 54962569 521738743 389045978 898688036 619277656 927360715 803186411 698620076 250271981 109629722 545337349 270610589 706220017 263658800 163718816 965642817 580494628 325481654 142774572 956272494 723594053 851818565 159515638 241957544 172430008 858835026 307448347 282945929 655143404 632088761 371280572 807551508 135351656 447075408 322367347 232442679 117815070 232149442 839317995 734330133 771304963 913478020 571204580 44364753 309751614 694545211 737910495 654673283 341320936 215105874 57061670 660146755 976284449 214212391 629089389 600946259 158832120 507636991 351141315 652210516 911213301 877033636 582848393 903801130 208813939 87898990 841407873 950901998 929343751 735303163 495427829 428779033 692734534 479890612 560524450 980973543 151667454 72373971 696104354 284147976 174338206 768845768 35341818 773189265 277805598 346968367 61556707 805939089 125924756 567401659 711183214 356932572 733717425 33120662 796898458 659209603 524542627 959043970 494735685 559147893 817099667 188665524 785252624 563205818 372735624 900609574 73431312 10063410 153210012 569468761 911598504 866341121 703175157 538884285 994184681 198780441 23320767 539396054 576175661 315462216 835317951 24121923 943556716 224848157 899985510 393221194 568099009 240571512 960608849 266966968 80986812 923679393 424734390 1000427095 47802863 824476896 605330767 264378623 949941148 602372742 834389025 981691177 820101930 211087848 807224621 31084747 368494985 501926745 708154214 373965775 649962624 548638434 836386566 563689222 986684661 792303585 390126343 39452987 529421927 269459379 671322011 289428901 622426133 37899487 128781796 432939349 612993802 349086686 671218649 307860965 960329327 843673378 380148726 187367372 150981695 89479700 342277560 235939895 500929110 388580 78305381 374975831 164530163 642792820 914342 845431897 446943003 667896583 309397466 971128668 69496416 760427309 11436874 265116641 386962110 676034354 659715073 326738361 420147416 844895000 572865512 870107210 46814536 188858129 314365517 96283488 1001892285 112338181 56033016 663948339 887906261 349585369 651060337 479278589 702230174 289964924 340366712 503822764 938113497 967823009 901239737 235992054 564654508 531859419 185043100 501369176 586578772 625850116 113787843 224884765 219023147 306298960 111165774 45437580 803996503 754177285 609043172 758871252 770970328 853064265 308109171 599004685 744143173 232093578 868238290 375999555 688665668 719185252 598098828 190066632 184196047 746844897 69680177 728262717 974394948 980035228 13639324 842326670 847745350 699909033 997517560 620939582 702661772 255664740 976124913 208417484 690267380 621728359 293344939 641265016 198289581 514753386 870109374 349973357 357354823 268243214 973949837 168709816 850636994 484783120 30781932 464343129 290870085 270268781 351881178 643228122 51107474 314687777 458144309 988379633 953205083 760266347 437911270 82763876 490760231 952281283 682043961 85778285 821162427 836537535 214847064 662972878 788991756 93288763 629889000 333043472 122274513 164112905 273909775 486553990 697840592 752955518 722009605 10631978 321928750 565965296 11224143 209138612 602334928 401937073 994695110 311732176 828664857 412317245 505410788 355611377 281335312 311606570 158796710 548073076 657893065 295941708 905521443 284018646 846707415 174130306 51124451 719161574 770126344 465339158 725461652 730875009 259790897 821033631 285100558 53106639 505766150 494058446 555715304 811891911 662913208 340394065 594679318 684932217 386982833 300034569 647299497 112755937 360827010 39291835 182349963 304353370 806176569 414665157 42268500 787076623 584720950 647337362 680905819 824553526 743316813 134816166 67228678 629371807 42355747 166125469 656503432 662850840 196108237 49138381 853610017 561396019 629938998 53820627 917338792 62430241 893777750 494570531 403484796 846208491 797730025 531298532 541981057 345712221 270010113 274112068 11220362 991504471 519961447 716117825 262448979 991442189 657765243 607124031 105076350 328149698 977335684 127194230 152426438 615795780 28644720 971123550 180492059 121299260 676153365 70760667 548779119 206443282 354982396 17794505 147343309 468995043 157282188 871744493 53203175 550472951 505252506 51567957 355303546 581764404 494267833 164939536 257968015 446244084 589979493 731876988 569144755 608236596 246488780 763460399 12296039 471412156 205863278 962495935 125176482 199214956 806017879 293214778 283864591 75141258 603146415 68556865 2574845 985456217 497074383 690508508 475069300 460213122 494433029 995796888 7866140 319214543 199736582 326076155 646313776 662764023 807355322 332321105 599196136 837652681 946696110 54571380 503984614 246871429 235851669 510413304 190901908 830386359 75026817 323407446 197737450 268913493 978337542 714297985 256951240 735657083 382230546 346865066 560602051 11559337 570690514 916619215 532203427 837580148 33155109 903674839 504345123 590359182 759308420 208280373 61140564 903678869 868089654 32321030 886103577 883307147 398218705 130625579 497497975 970397811 184390924 355010382 349981323 551666005 857245040 437956441 655850274 984078166 947546668 931299461 533337956 829925113 317307452 656068235 767710491 849492259 86709534 346569162 382642255 783603629 77463016 256673071 980866052 91296000 982353509 369668030 720290220 752422919 79068853 24427458 992080395 342017337 923016519 14237733 513965125 970009022 869895002 659726746 875288974 829306134 516899004 928544041 495197187 953959763 734145770 451045700 490031789 860819411 746929512 816151099 126170085 919517138 120188082 98632858 204801491 199719569 853629383 954247624 507209749 983265008 412151447 389076528 942703949 500507764 958730421 824685885 784109867 953582048 320543577 154915373 371030881 839882225 258915740 764538922 686002904 991445056 343616691 139077455 976233360 709514617 35415343 251905777 749206158 769940628 794035020 40988208 770849641 623069152 48503731 572833605 463503941 914787193 555788151 995546268 534339604 883167723 551912101 862822109 421830196 979772097 587908890 673497014 781801437 686664755 574002570 969711408 277737117 86228958 678326554 602727602 121450549 982495976 266390107 90642932 372358323 193524768 676251010 994264834 183850013 52699794 630800477 801913801 635384227 100320767 321541943 256142875 959759059 17318845 642509398 297122919 536037612 288757337 773912462 73989644 151570802 700348759 607727557 260727483 689588064 854984502 2536928 511905735 374685653 888655818 988131720 192732572 612855454 791077405 206877771 410210697 703204862 971821804 301375016 692026913 438220225 2635914 402555973 800169341 40645330 153717933 200731524 883870131 210614272 54418477 112391729 731275496 157879352 697913886 709605333 508607244 878638305 906255894 551047792 257168928 13125373 110879160 627055370 987125824 61807536 240118461 220301001 30099497 361276901 134269982 229654780 186925246 611418143 6878916 822983719 398035650 271845085 233399639 220790967 811944029 545113865 876857761 140027942 834602879 482224617 156464715 743160155 953952180 614707882 787843544 562543105 104601374 14543855 551728809 104319899 620952963 467567863 642942131 442538305 927478746 114714647 819335568 816159302 342328925 775275117 458768643 762328444 750081842 730924660 635971772 106111893 47683661 814882741 201164138 735372480 427820958 538577595 17673116 483685914 821779631 435354078 465814108 433146410 194249496 381570531 938995754 158536576 192878392 99721892 1000642754 735315430 398510550 645637298 65457223 162617657 715661470 712165557 968533387 62376011 393908534 486918796 900289906 246617269 326224213 606230218 271340932 548289906 298281338 141885224 470802890 142421858 484987268 572434568 174504609 952628804 499163633 661648377 173818611 618825875 352812714 116321766 305644013 765209073 800574797 592429832 310108071 822554961 157875227 77825436 606787022 488440392 294414551 537906653 991728345 196982008 783687525 121375599 950713101 719213688 681134406 345802755 190403424 97235767 56539392 216277173 442115614 472309620 618642377 974737034 224472914 409887052 234031480 20076115 738051060 383047277 928397681 865845108 831673335 95905149 387261373 517222199 87474156 260934526 190014235 366770580 877938848 491077080 366075018 593337768 856303213 406074382 950535183 634769789 309426930 836444781 987564142 849803544 68804669 17149439 109102690 271073531 799525707 828377568 775144326 494631050 476382188 757869442 157252346 862052813 623347785 589481839 886099359 451881761 117046811 846405098 194645918 260250099 561934967 689630911 340898663 28569235 737047956 580116976 256892640 950982352 559247482 930435791 70749787 883385821 330540924 31487431 382368660 577969599 23418517 698211594 971332371 23059125 854206313 598634007 885501620 333914816 859408068 732872937 394330646 1000958335 916609973 478240016 492116521 968699445 878043939 356660265 550317215 140729329 109212812 647075607 80500894 227124448 228429843 842750958 727128019 166164376 527988763 880206262 126291747 936015814 703355615 170593595 765272657 838957470 172665567 462431958 606302421 140094440 127387343 794129254 215913029 124581175 437864875 915207834 938203520 24363899 692743329 888824566 532710382 346002535 255630410 655424348 584864691 607392409 524684645 421579150 257460229 243859139 463191248 889493657 126257668 530290462 158011289 957144481 690968629 198850129 362298983 316771014 649874093 993488775 650871380 48965652 78049251 173342820 287190194 676498885 530604019 647479623 892663988 884422161 359426957 320070010 77421581 608960486 604548899 637862717 455420034 650531579 518136260 358548094 291890890 166008261 741080318 539875330 403529813 817281298 755710070 522474400 929377013 482106834 219591452 635264922 268636130 48928153 501445353 804845410 100520828 343341992 69137504 959603155 7549945 953130732 173955148 300911245 420513713 467674800 260101152 286219571 55021502 657745922 247201245 319535284 984480523 285641102 120359130 328080224 263334515 389851292 840738796 881244036 914814992 648481845 268379439 554258580 1001002071 341493217 224859487 426624794 37291262 597621294 109650623 152775696 350595382 473468084 87856031 152845627 677254114 736666417 14529519 474316499 736645961 307734099 383717799 847862088 666634033 217935247 914083609 769384345 336272567 545634672 724309651 166009888 644300110 917409125 804828339 216956993 920654104 386087017 535773425 78596631 292717175 67290990 422993239 100036569 876064179 918219067 117549185 952549648 648714688 880930191 341087330 883410098 189812967 801060177 204622561 900489037 366598553 153612646 283325228 277159465 427956346 859194756 98603329 537803990 513956403 862917889 465004172 963998524 107596382 151864309 698448360 505699464 720065523 486976855 297435951 945937339 835470267 519120140 641151179 808207619 416708201 602851945 439080136 60668091 279524760 263290787 531396834 342930203 96485269 853016776 277987729 377037343 494037325 682854135 670405460 767149257 891024188 107535544 208863861 244835444 171172529 687159524 397079596 823802449 389625297 508384736 277427341 849292437 858274467 955189240 173317769 845614800 316080003 88691170 104104032 384960879 2130477 726017937 652684628 818610145 923908785 353977723 581183061 937871243 129293324 770058294 261863208 85315693 103378460 677252258 396803669 418211437 646889088 359891035 457564532 893976730 430752709 751450152 533361106 663973825 423023976 15626653 473253481 460524111 726935034 200953889 555375544 970260875 288255174 875450563 422353647 85903769 906282893 101726713 760598022 449959969 711232632 967426588 98190421 602956469 780207841 195803340 986034477 154699153 519345808 311907023 404771905 979799770 590444451 360083137 155282715 171136241 271376498 107216638 880232357 638853538 253995428 689962587 280301008 668274666 445847343 484200120 53358270 851386932 33933949 71507412 367199569 619867762 709400118 983971391 533023390 251111323 484421104 381502591 343625233 572643169 261725405 750858256 910507176 224457512 739629147 834800175 7689117 551676681 267326719 519715818 906650845 337653226 503975362 204686308 487151857 222047191 897098990 228475497 870821972 258402947 422348840 775699142 991175824 129675211 46400270 2214929 429106699 128530135 987686814 58677147 567252071 918056912 966722386 261730369 358527411 1002360230 154204015 598861205 1000873056 639385466 583996129 704176698 66957426 893637750 998534876 879299636 503812486 305953744 611012656 129719963 149471412 114883357 976987072 8949872 143279227 69761236 162131380 779588520 279261968 306284993 422898853 868163023 247626374 289932492 979587415 440015049 507699914 252995681 793711490 843701805 457532607 543390478 204540583 516732126 546810053 607884453 949661880 609509698 197094518 136685778 55546856 374190213 294291094 599510014 579048031 506558265 52320852 953061307 361231658 41891923 1138326 784859704 612825035 59104776 261000433 591319588 88798527 994573036 496458213 49491769 924921685 135475074 519426100 306432096 132525339 576420497 835162775 241376611 460955545 897009184 513921206 538101789 705440553 298558894 967546791 856560803 316710597 4958223 249576939 500083879 459849947 368541098 361177220 259078044 450991049 97653598 602552539 605578579 151618148 440845936 569287072 152639402 299809687 932972656 470098231 919331497 654043290 841284567 188649524 280682660 445848687 40080718 541538879 879182960 329974942 542714136 195798847 735887038 165071939 8125359 50239012 604586110 454352701 905978705 365276480 723196497 941116310 9996384 516043642 867340748 112898720 906130459 448845179 430040688 421811434 582660422 383213221 399876519 852428230 732853351 453961278 431239206 808367071 283833904 123926159 768525836 922980889 461233398 563018265 166709444 146557960 167361576 695112753 593907184 466513191 751875338 53426450 78197693 744679932 93459515 740365477 127184248 654845413 172014702 151652242 192206740 941189761 997743361 94439956 445115461 928618934 626101554 528543455 925845505 241600878 864594432 954883938 440931623 533001015 932381494 639882002 617373446 954965961 118643238 867161165 395289388 458786656 70546922 333777973 111248540 505069775 212259915 539350390 150118935 492026842 469308182 696936788 580390207 466090697 956048944 933146154 695708557 831652446 49903276 410061891 212332606 829511092 357654099 378990289 771455827 976074396 329546688 36961975 298148125 741128264 443450806 436035696 988612144 946542091 283603359 237884877 257176469 752650847 243994804 954211420 655202484 673241289 395945183 71476174 112504648 292080999 296993524 520327484 295895203 859248657 515467929 88408491 930475384 137306272 693414579 480686907 285083162 672153765 182630715 406505194 424634172 57215578 383253066 548439048 120333979 521381690 93013177 605265387 178734017 666221100 227043342 658888771 612498162 321041705 79804662 282883824 272744126 484197810 196358333 757210170 302228666 431318108 195272366 558030653 114037286 536118211 29033346 133653302 378712288 693715571 744570555 529926439 58503869 194357193 897059635 450139515 935967028 86522749 562917096 83252181 311270748 42997281 357159304 132827219 579960631 674560400 26460187 298523645 601252309 421575409 792762688 131818469 167317332 544351516 777312060 47749821 733469534 841403361 23462456 255918327 887907332 822937072 62442620 732329931 10330309 518136935 989197175 219731931 63190216 942548960 205646253 544299065 784867469 729638289 793742113 783853078 331715544 924068116 530410034 725106250 413233674 471511383 30512394 904889416 590503833 824770714 784917738 241692284 743072942 391026421 251746069 648408435 383526428 945988244 537775437 743594572 736038560 179871828 717465446 94222492 505568422 184472668 468623950 580988633 631661408 896672517 954103945 354448271 657243319 890685338 194527508 60712189 28446462 255145619 202472288 85509752 193189865 926498028 690492944 601024309 637969652 44426691 3863735 577085602 971508985 179254880 31549424 400619295 371618 708150923 406789582 666865313 682983118 921881349 469583794 505084687 924071731 297537051 684396364 560421919 705122386 838148259 854653340 157655405 774273384 772980296 470377680 818109137 503468827 913111882 445285635 114168891 665267973 146167438 37632151 285356813 918489911 809858181 409217198 838869413 570632565 174759580 125445462 39991321 462891503 891050217 780489719 240824951 404097880 31665839 384146735 763372486 323530159 909492521 478329251 373210374 861352910 272614862 90096697 360574738 633702436 860128232 17608226 53047494 459252626 828602921 479907216 603740923 228581270 164161602 529415814 334348649 296907081 807592299 243059568 294404100 448385895 602429973 465819582 57818900 200690595 411845445 584967285 680354602 159281661 856425273 807512549 252868697 182646507 248879470 564418640 299769725 702389459 780458984 39298290 388459038 706549569 263689258 684094840 629470042 725073074 837158578 700834329 487916915 249010765 590167495 946432789 697302425 757226115 162303741 404338526 374952505 359178696 251758278 124165202 502006391 309427144 338794211 488750189 423797862 732787455 814750041 432276732 108199956 122582190 230564431 572703652 591818812 63403343 102578235 506583855 808066148 53342092 14051150 927722058 82692314 681603281 391470682 367985185 479536262 737885804 469247231 188072154 224233250 30756028 427077010 588995384 696636507 392944989 591927378 224246378 955296662 990677902 716580607 155540910 494455486 753290692 508444548 979168834 226784712 795694792 960213271 291803053 74977871 171195899 60420061 66935166 897601239 614230164 250004550 141505531 639751067 24640282 808659855 637111757 687794077 480689867 626940512 281462893 875970050 694599366 226098844 431383379 682479237 944418063 863756380 40402372 884956353 273533009 531188924 550164754 163575788 769424762 259322298 784437100 839456805 652262954 109408332 951285664 693475018 143295800 623066841 785517377 181029324 794917830 34605204 998424018 730908693 186878670 282543339 325580739 152108269 459598305 295590346 710982271 169573942 553004632 217051990 46679864 367250532 947355857 695683620 365914071 31669204 842276739 837230597 481970913 623766018 666076851 436189830 654898916 696149326 331081895 466193279 962026363 881717088 528611637 212351733 171745700 406461144 69304667 655879166 580541772 308427346 180709345 77969285 451882531 750282726 696449001 242704983 754178371 26431902 800460016 143363979 167000851 894892306 328604992 202443719 909416526 210473499 638123211 267947373 605948320 403360065 953429298 418466523 797851827 124528507 509932338 355562130 860089249 448566864 319428170 103104126 13051866 848690735 818312412 346139251 801879808 580325128 169772662 134552263 603664128 217879210 954268272 217361643 801095762 679300929 599885958 81114192 95609364 588564203 928766159 150922074 180477828 457325634 868189166 573500092 877706680 364198258 294730498 95603470 661697548 393999367 630714209 369486837 589656912 168969862 572598927 520845353 640278094 747192239 666975272 487021954 695373123 861759586 648869947 11023783 259917244 632085562 638776691 774153741 599363629 516690441 390181025 489422177 973861227 491258714 743115847 25213553 88655585 209959384 827259824 533928032 899321060 625494632 676967230 982429980 107997585 455212523 636769288 91478989 955312414 851032710 987781466 361063422 964872203 267320485 656226643 569361153 996183504 36762877 788412859 221560715 404215774 836275518 560883923 207929395 80356606 574468922 702864901 620597971 677310827 413290965 542837469 531749655 677016763 577416182 811809816 819557392 196951856 601018849 657832596 173913646 893488818 632338740 719612092 369743261 897484258 211122984 870476812 850367011 449548003 815779318 471759765 44420578 66740696 745976172 28101550 971729519 854393444 155823172 989120612 878211304 694894336 558814247 1000245916 765933710 482073850 106997891 786467406 77525763 627303569 529870863 487666164 610722108 507487996 780773838 645369549 816627120 362509712 501462405 79551612 751261265 831283016 691266312 498688260 398822141 886250629 870637116 507476468 99531524 868263549 144439831 509928034 266145737 670561296 373631053 477642423 835521932 813096764 902290645 296143521 985403530 266185188 203243162 165944244 653578856 219555072 511863582 600844542 796023603 784601088 180543038 356059877 756163483 683185424 779918711 660465840 56479149 915741874 176084860 609199085 31177759 167698949 201192964 472011047 831263673 625412782 426917678 33503021 352781975 739707114 725924550 804752736 676373339 418770899 231730740 623290878 823339412 158896017 188009916 376118517 497856012 402306022 770518033 819520031 22657177 493890232 874993957 730999852 927284520 282098858 894855921 554037392 346777383 439685615 210898082 101283198 70621748 371925734 586216809 238486108 308719568 99191779 434987630 976986360 801249861 961135237 598117532 105454641 510474698 856716511 386294040 531681771 447960136 19731511 163393060 668485151 141259523 213809824 991950960 697470569 211286032 142675546 360930786 101566830 842329613 173829114 7077710 614418866 670625707 413813358 819787551 429483446 230873787 465729578 235622960 155206016 444350752 191893700 467930986 883756729 65469422 288137771 256700728 672004344 566563171 352695624 348123167 273409273 186385237 967974543 112386880 666848469 965936072 570278632 190543086 938789716 526058678 228321637 812288554 426514730 749634200 378728358 201172742 611786456 60490943 735748043 288974321 479775435 204020506 177810320 994833664 450107840 247395361 21380555 579080869 341756486 960044220 769343481 427066125 84095270 761574268 789553945 403997012 560400604 665906765 906419251 220884920 830911232 658006436 321774311 76247953 211810290 760435920 841371279 605376260 163530571 29138620 165241750 621971556 34797273 146476081 814629552 626308330 890600696 731064488 1001732583 31904501 991268707 949224848 361157403 51652876 199486420 720305249 526452857 10407856 549153296 45476699 668822971 116289383 501960078 59201724 515700816 598068637 126242226 581775016 836306968 732444533 479894838 471337728 378633847 662844223 780800714 719599305 882008912 589940833 181168274 752765404 197665830 266184885 522034199 810200906 664391780 147715959 655304556 382062929 553167055 951039740 660817097 399105764 660378331 73213887 99058680 360472878 580043824 238540802 913638117 213519568 490226541 894896186 53049195 450195719 312159943 321402387 456361533 654958543 340859842 736307706 65708002 173927984 844973896 742896519 515481558 85259575 312597102 499990940 470590390 890090884 494718941 992035277 949470550 332177714 505863394 552179597 399103772 833602046 106171653 422173523 587023205 610463280 595213599 705119607 259532859 759425374 586139613 354534747 906780481 810469657 661884983 754443482 163991760 243431724 720656293 301203964 507873003 775233142 952081901 153885523 362966642 461397376 11794633 22835578 113857591 780415009 285670258 983893497 699908566 677816433 82933127 309305889 899992087 258122997 535847009 965146497 903056771 630381253 280064406 102124361 854582828 233130937 345647309 95232357 592274250 793863537 217856621 991114982 575458837 354710432 28762150 324058804 3831373 359644456 378191674 905237258 572238123 40453240 786241167 411977651 501444783 635734496 654431219 897390584 230857603 679120620 195452578 974875769 566463571 207847950 678995457 964062714 364598226 429328008 329748535 611706140 826320959 280247483 318183537 519551070 554532399 910361511 76063506 876205308 697715661 960194372 413615351 755202445 912626114 282702582 813612688 304996563 140080554 953503319 868865590 859323177 836193128 143661378 68190460 910055254 753939137 762702462 395658611 177494608 697900829 612682950 867032959 164386452 671155864 93005545 552853350 631323212 125755472 751201270 271011545 589071464 288293119 494540322 135022408 682516714 300044370 697155947 675905583 806788265 153640280 967246019 457163886 919827583 54036571 407386442 794562510 951305515 740669598 494007019 445479555 288176185 768102748 61169367 249794364 332445586 71898002 264587350 502614098 279920670 67273193 593398347 543498935 772745187 8201079 903001724 492254896 741224475 753052066 525948923 183345434 972900955 408014706 360921712 346299379 174150543 964077526 136775973 450957011 231018624 610775576 486995513 801896016 249977884 586940627 274876789 61556617 608567474 364884846 203112374 332832685 639499067 116057221 476736764 523505998 338840148 536712721 310895738 662118904 252603907 151828407 43066833 208645300 602498729 906707234 592643688 508652098 910009492 800833337 740814922 408468236 609344402 2922901 809873415 954325703 486739026 614432822 968797318 72297960 286658181 115517148 313133240 165012291 998242157 769797705 443546090 367323637 84024318 265237244 681626640 414968215 309699584 506476166 585492870 510440123 693440767 488987090 786975462 160713685 516980406 455964943 307915209 908912968 154617848 189262950 669094876 87241592 650421224 707757819 471161608 498363375 42785943 225738691 482193827 638595822 436733491 990357293 227124850 567445183 829623574 389402937 775292015 963917007 805009088 287683441 391767652 770870312 104621780 663362437 442209032 699865266 314993873 489226946 500241231 240191812 612520775 205296637 370365784 804983992 525188426 105974779 512731142 22523512 844672863 997611716 698138527 971675779 337889738 866118199 270866981 558712015 835270156 571356568 202985740 710409020 557068967 926836566 4888939 36189712 862218152 376838078 932604033 878349091 282628533 191053357 920011562 715057937 199196396 849874515 522079177 729676854 370723859 443100515 151018869 336572925 456915390 147707244 26916124 237825239 624758233 690549099 921058150 122549352 614840074 892454354 345387826 968478157 317179256 302302480 761782868 762884162 651041047 874809229 330521434 320308934 291266832 919635685 438097882 928486770 968999205 701489597 800572418 402236919 379257089 703222833 61717230 710678005 18115317 96666539 668949853 414321101 682925805 122416041 717390016 551368646 755731248 473457754 203175772 894543094 983797083 634950084 998556975 743073345 802250734 630676183 624429528 284057741 935892021 193109669 688023326 859492007 830334944 74607106 739622155 671258912 375832301 873129772 785342220 26298051 334708995 183484579 565290617 676724834 803855837 488817756 132279686 199517292 574977512 472262104 26975638 582195014 911634552 778873076 746814904 877233817 173831482 751827287 53195397 64189350 964416198 834662917 806344189 365556071 140175610 132340363 444917653 458287322 480658832 318688564 932765381 590610084 357764310 334285042 664220797 102613033 180005519 942343384 936759704 680234462 131862500 34958189 373634564 211577617 109791578 130507652 52460521 579616608 239487925 544337285 421903243 808895939 321220916 165339929 591327945 971247279 480111710 864062161 736545684 779503983 8984076 405264856 676561822 724109254 986316636 989773739 649347933 614072188 663998721 907893921 266281806 7242377 359995764 139950284 377660460 141503883 971735167 345025695 446672518 954936706 186736695 840666044 963995474 596876300 283081289 876713198 850165453 525699722 924093636 924195203 37356143 650184174 889568420 448945459 585053621 202630018 133818450 284689437 614230353 282218466 801776465 452660278 148645132 66798723 776598855 502415024 210683597 162890319 382556222 460298745 850518527 421716403 404770885 94257915 833922116 188674857 1530250 214296826 911771727 39093916 950296595 294847320 525488971 118978303 464577080 367291544 698487608 480144892 616829424 371522499 985130743 66879421 456740295 257278054 425768675 700089219 544263929 220749975 263671350 288602911 412502246 946880964 888649904 528371330 59201219 997663748 967374809 661079031 226461064 981110423 682752861 262753935 739832946 155216291 301655074 846961610 895497754 177617782 416472867 368045045 907683207 995422165 104121123 366064130 70225667 877552920 143780714 25986106 150725565 685626031 622372376 391387311 987186468 557515620 672625484 25737915 594631915 853234582 833007495 979377012 54328266 91754731 313935761 412327451 253205372 800334771 212978945 806971638 761487123 726940522 965681035 253890400 896492216 408183111 123218371 165647243 302425383 201548890 294151392 255829521 301346064 524631337 448100567 1002104754 214489315 330455518 488503008 214749822 920853270 457940373 465715482 421317499 623623189 145377871 736940905 950464067 41159534 724096801 921386310 858149639 18497236 457571586 680943647 288380321 474245396 801195841 877295737 405916722 88192431 687462001 522051381 453594587 124001860 407136163 661757045 779872839 666595844 216897297 258972421 215327935 274884095 749140673 730639568 501347893 5274374 330719070 808339542 145269415 24020419 828143783 343634542 646206438 574716384 462411349 856562799 36252721 619862345 41308416 301551920 517166302 833603199 67810669 960968964 567191403 67118002 129520297 645170718 527010446 13688471 125458674 937984406 269097534 610855223 331494509 887668702 202524858 115840164 105505594 201265120 66495273 739008129 616344932 539766913 1000597832 56642340 650102333 879276108 575862355 119021099 856943488 738909679 55526052 671739027 872574271 660967734 251775827 416854799 517894501 724208696 297810486 497311322 904881639 216083911 736558844 608817927 70805047 499033208 278452409 722503403 435087435 437883961 614888791 368609736 543231310 649927546 64109016 873243753 434396793 441788918 257174536 873903371 64295978 643831544 743572999 451636011 271455261 847852087 765253694 366331206 424921284 315714865 258111620 78738584 136309362 705116155 727435499 16842366 251904287 329805158 92787907 968200674 91499335 811232005 574762559 486710178 296027386 798916372 861279633 437207942 870830934 345320714 129854485 272179488 927784660 209343030 80172821 783337860 779557269 912217000 686609920 115979176 550037994 201777642 818976309 943427962 812419791 215835334 571292925 575684766 103947149 763043565 726185915 119805594 137127867 67228054 47155521 885581837 87875714 621087524 804834812 422691762 154997793 256083556 716640045 327638309 103853265 707445 412374187 708339616 754962707 644918062 315673264 831033780 554533181 684997034 137255449 892872262 903245005 482310471 995337667 783216775 101055317 483058487 770982745 874977651 258222166 51229992 687264078 334039241 324551470 684173899 522028158 905521321 374926934 562765295 771164153 846678833 631088058 657436028 779871104 249148343 954073558 529777947 102095227 750282331 283761585 209008861 282717508 22606534 563177132 713200040 467218014 868687326 962919466 178834680 395204596 677502035 546226218 317372820 96635183 996762934 500858404 4768268 320382919 776014304 404965031 749576980 624108309 418581011 477871993 311633985 302313826 728605637 842964879 531883017 939276687 67409144 241689539 584690936 990580658 67389071 917514273 791949582 518530626 563485373 390839566 274299814 574607246 163426316 202843565 173426315 755531012 683265877 741084447 171161750 658425603 907757179 968489131 990216975 485466100 606540667 642314028 781429123 557131233 822599913 6350549 744859899 374413479 266721397 479646069 420454694 74009966 781920384 873720091 865906875 274263357 206436582 262998158 497136202 139096145 190129735 357984635 832579848 212097597 898581709 31863766 472119627 864610014 78303849 3107780 925329656 245819173 854054990 384414958 900309329 851962005 951991446 709058306 499327860 104737392 147116175 948492429 402384380 789000461 687086805 74911814 263839001 798131518 275463446 75715320 892516611 608637831 33199567 328692039 690505839 410650598 662050941 1002057803 998476161 93499458 939178292 806653291 595963126 847880880 736214749 926357808 330919670 782124880 872551533 523209100 335885230 421707166 613645047 109721516 821422855 507011539 170143616 97838697 496734304 712539463 826377179 413660528 309662984 243242384 755899905 257312046 359036851 291561026 889266529 499715361 218094288 158807786 392148994 175929791 531372858 48471299 757238185 822442674 347600296 720958989 429465506 659429091 734833217 564676420 407129379 153357216 263521290 677545005 351298642 411029536 220655355 948085595 88696751 805569421 483179937 642542682 144644999 492025189 732975701 719739086 145024015 412399022 653148885 398607676 464555156 814054410 936787651 577803216 107585812 847909665 379616873 130755104 324536681 675046569 218576088 94557707 194726608 752179913 442284639 300678386 737448121 940461041 812385732 302861132 990660280 21697593 964991457 229771546 222280064 956189239 581570011 251942731 929889998 329054899 399533888 85843158 707030453 499969842 88869381 786810513 55818233 376945032 962418079 212370768 332246741 82867074 906237880 290343457 703228335 655190409 44679543 525019887 701158116 363675085 388659196 383069059 769689427 259467381 522381037 506796276 898766291 955777671 395600307 135953179 703874771 609572410 290391685 606161528 339477498 706251398 51422279 956662255 354530569 918919569 86157673 940591260 930016771 206912862 396540361 750471798 685624689 142055982 104735121 23557518 506778921 725234911 969826866 120601284 498901233 107331426 512707952 202833677 652567441 473087304 190586335 539342226 677533976 712735489 37674634 320857128 118469133 311767590 246581222 114489694 65629961 935000927 234681894 453969029 94808287 363245950 637819961 308021643 496418106 113136478 691199474 281553367 989375391 933010457 157891039 767636889 680446046 642772287 242216791 775162615 350102397 37916985 760797057 363572245 732154002 84102252 163223580 618970529 861944071 254315744 579830885 199539674 514086157 10523093 360570139 492146271 107829025 314956228 477732620 543843263 313021234 321005133 17460845 180512932 175106128 312443304 545764340 142770271 113674817 777534004 642957850 127968074 885254718 857466277 792303379 989190589 415389381 5906797 447988078 955356042 44032239 320165698 749648450 437269085 735370429 385008631 929938828 342638195 525455574 150913574 485055002 408889731 682324796 36120273 241753941 710667376 268677236 799720325 234484448 204126084 373163626 750772615 272980475 547368050 885586021 678060816 136896783 425937627 801925117 231470803 348644072 776503168 160167461 405961625 673763989 986936487 122148187 77079812 33821141 360957617 732820617 915155631 742426721 45182470 671163961 299096612 648071709 341733687 594940674 730927390 917221820 403950499 788131502 322781422 714069650 245478978 30931459 177502743 797855372 919303682 17575768 795328338 597891458 936891500 852733244 494301587 186372186 292960569 141249531 43683706 949505500 512317828 339923453 261243148 490863454 317156877 462038531 984442785 626399969 999709229 930934153 813719410 250431651 260524750 429687821 16120617 465804080 832452897 683387782 776470971 521186344 182989045 631322274 105655447 938671197 940487203 395904565 323818430 97808681 863742616 577473469 760897788 877214449 442353908 915069409 967903722 844923942 265822111 974944945 708603276 273142420 648212734 949127759 181864800 278094311 185772847 565426871 825652696 294122731 1427955 640245479 295686134 485996647 818410115 232199675 225951879 545571905 988463083 952542424 860376648 621389019 109788654 979807117 907131278 256405655 186864460 204952728 29236126 337780152 446785470 11086482 560450317 195111506 448631199 768409656 302263353 332487224 298864497 883950618 691528694 610911613 787961997 927638744 998816127 836377633 406670257 330275833 296199373 531446245 446142285 969300348 437009470 128231326 209925766 125059104 555833785 442867431 202899606 324652687 877734743 434986327 489607166 674250269 994558114 452334914 655953889 730505 540487344 230510150 97563158 372175059 152534115 435688165 933532464 170944730 641031199 852375526 153466247 644422373 599726233 553855385 765656475 872068478 594858877 390421190 393144368 879223354 728406125 561574386 971737899 953278582 610218599 40597424 661580452 526633129 423563278 827164521 390143449 618506626 513765700 562229731 167302339 15112096 226747217 6127275 566201446 522446754 842321008 827528740 224691209 360666955 427321098 649513291 632986153 399712225 748605537 773211083 913201973 95915015 372433982 167895078 110781813 290696184 555997144 954368050 550359398 342637130 631361488 802585488 964285974 369832522 725257944 94161511 653042114 726170869 42455841 915349614 772914588 851964726 820119979 724823600 988591987 158849386 951232663 534274622 177306630 126697387 44773084 661839901 892973071 960256626 770521398 655427846 875112436 977795503 849843431 50594598 467410129 849174108 509243619 387534527 151040684 721016040 7847640 219089516 676423613 293581822 769737870 333727278 69428335 579540135 903344198 85671596 530284840 85880642 602382503 172693268 975955953 131086603 655823895 928860869 473727175 75024819 524772822 261960462 793201121 478956060 173441670 216107894 357930788 67319928 120904917 235405656 96595618 204913866 503737663 68441514 810152335 619830058 536106913 457710773 682930801 174999201 673776127 765182126 859386825 933143221 443451013 551258535 578473049 994831667 173327330 386388563 701808858 309786295 958285297 537248845 962845402 394403947 699991628 239542745 150967681 543666957 708614816 756745944 314460340 825402058 512038741 921560251 519064817 832336390 891148745 871259338 161427132 936934906 68211592 358832192 923944623 493365942 438233261 36261707 379129428 435970428 714144793 137135729 4677651 541042785 942470927 644543267 878980987 276802434 584292577 71147116 643992585 13606244 326915637 487043359 514525299 512887642 10435188 499231014 340666968 762561266 716987901 834153203 476350658 517628468 322811303 891737160 584408800 271658233 309795608 48362996 104242069 92546014 530987811 534538427 10594561 166646192 620683027 931541761 620780609 230976372 608798671 180650871 410138362 306904486 855352795 56990142 710316086 914388210 335640704 317266143 489804498 896159203 767934688 698885024 776264204 177505705 926429331 351438332 995637979 277202602 256492453 711018408 443939796 936017056 573947226 500416564 942452899 75513354 711560280 553484536 909246551 814215374 873298825 245829989 787621082 409250884 988398771 891959996 956082115 6301240 800677734 792196278 396341447 518575064 389668982 515332596 133538816 579256477 573355038 693716027 32860724 624012727 464309096 125765850 625442260 71475217 828935955 419513259 696972641 143049343 272191459 989019366 190039786 203060184 757786569 473581877 610374432 580483664 652016637 12283762 89866940 518704353 90758081 715498533 59600929 671384402 529391589 838139355 928915825 86360262 577740142 539089207 486212985 56244984 111245582 949054899 669524576 620709121 546350100 403185933 453449405 81101870 339970849 212663050 689624893 361826346 856448771 596965829 83079405 115903460 497020174 14988989 176565759 626906222 481768497 277964152 234465533 455024258 290036850 398923758 888236124 347636948 937468227 956128176 888010046 983952459 678983996 576540419 129403674 130989545 198548869 176890881 584119732 129236670 141403538 809134980 928437161 696906751 126195051 694263768 512735694 956168510 16050109 675532870 305997922 535426656 14570978 695656168 657516470 983779670 762588226 484353298 368969887 845660939 373676298 832359858 669823245 199957038 328383849 795812806 796146334 634713336 635921141 532384658 754265128 348839489 760341433 4351477 340615827 871562811 524451935 359629421 422300370 482281371 757351067 823830318 603902615 64069671 67769826 158403484 632593478 291017386 60163091 476801352 936345298 430655291 375250439 103202293 570054201 217283159 776138708 216588575 170448745 519889786 264696842 94223726 659606599 443238380 156556685 682561504 160759562 107527940 953461719 111146012 842214737 530761816 571974495 434478724 458497206 848388889 508588414 259499952 842442008 63550891 467803355 714523147 369754462 406175540 247860953 599714736 245094194 761876405 300754873 260087988 935072313 334605210 28744137 276678080 960257623 396737472 69840484 287748298 745034665 513277355 88741412 111440152 267042710 772378339 264250724 689381404 908103993 256934237 571937406 48124162 558395533 385894929 828658881 265617312 215553438 534881053 734272204 659970710 314753442 100813974 668909816 682517468 91490859 516126048 828379508 181665138 433330481 991845591 157067651 226261259 501340106 535979575 708846616 567020189 754488621 269817583 190506817 978804159 163550809 739133090 139592881 130464330 749469920 809163197 967940163 12119918 583910523 272818654 882182917 981372256 320992372 25443128 980738046 395011746 572493930 978987812 314201850 822233156 989351754 479477920 561002077 321189566 82388405 825182647 619336038 439066542 939543737 145039526 628392594 478401272 209127684 838355347 432757631 36946406 627104763 994640197 62110480 594445407 713409481 943911485 758523208 901622966 842083661 376791069 278954055 436623232 617396592 309044098 272381150 63310224 369150204 264788020 671179291 897509310 514627739 650356264 363622747 733831629 426913628 204978698 816536770 112547217 556876984 679511592 193125794 488573792 313524525 549581836 185181887 749891181 493110324 170053806 616966329 880047277 348315945 507947716 170985563 995334417 207957488 384810295 869061087 475991191 583961998 507858633 656949278 726118802 960389026 336217239 956183581 699163001 255050286 321888457 303402039 934712774 966869671 343405342 425663924 235201700 434329635 966133219 41066461 357476243 316218529 186922985 705532934 660802551 381453251 977458698 939247537 396465994 887861270 375322563 842541571 67490497 810878603 175398959 704472603 764517639 941787377 446962304 268283998 304802437 591242126 406848211 645395165 787471909 74433140 60825761 634930695 189949312 97410704 452000615 299537238 449708829 902660549 269199481 378697157 276772068 378665413 814180371 163747212 938661864 522482595 430034415 934080412 760783733 178790973 999616329 277420063 922051863 648422244 398798420 232655881 699031026 803148025 816610724 693092829 471455803 396599622 414845936 946019064 222923531 471054145 86812901 333873929 376337148 380487371 297983568 713550876 1002214427 843963364 198577883 743064877 13637010 164613060 626281450 495601841 780804445 722564322 534026650 512295305 512692681 476028051 518576090 555243682 469271718 636114164 383867060 657490693 929467093 126133107 192469876 29836176 502965609 371006966 314958881 648662551 686392905 607698153 951843942 875392334 851807227 722611717 964598589 558658408 245624416 178229087 275894119 812155287 650456621 443348640 20397160 173983144 295199643 915880444 503799325 480446616 260194378 261961749 660378909 392450960 416612347 932519248 891277087 519835438 72461850 220617294 339943153 456521712 990346758 158347942 148673363 254979887 996870013 987700888 578815751 160757880 615773123 639856660 829635023 411721767 485462969 868875103 167085384 610944424 740378191 444699229 825894095 33655030 453710105 379367266 211046014 682844876 788917246 631606606 379422170 512309034 412285010 987744274 801733057 980385584 673772636 400187082 686767307 646185597 666558127 545245236 442112021 336630791 135860241 797952899 501856019 817199226 853202370 260122678 779701737 756046139 490527027 909023090 101949550 803399029 809316069 717979886 995371848 346188145 579883702 970418199 880929360 215412892 134571019 357306834 944530516 720859588 64876584 704317778 256487086 73231549 95726258 489233784 264207455 557017385 664862676 524286428 613520736 362259050 903668927 527716298 439311377 420119370 171597860 11715700 739757187 943855261 111443717 838988882 738274283 943637933 230734571 788971892 110343180 764152914 695310520 955145367 399053002 80440526 462068415 246482758 574413512 879931675 98101765 572553460 423392974 712638156 622288685 460182888 154882639 517181091 62192395 591317145 470250673 707879357 303647243 174461498 422023683 474248637 667074842 355224185 44137672 885388329 875976468 971293348 543690653 926115480 686757663 40680975 21396913 823286304 932894517 866228866 309856145 514531913 757341680 379229250 611087883 183439467 210719893 602588098 523094481 881983375 977597516 370444725 928387965 711673125 99437090 558311239 263020642 514927286 241193756 916433400 315548407 37874420 948683680 256850398 310337063 150173611 886769014 195096899 762543475 899959188 128423356 711512109 93216248 65228458 741759812 332541258 239981201 350384744 272927417 416612363 559624552 228246451 85868052 847660267 341729109 182106985 246832392 336757280 126651236 215194657 286987833 5268858 431650415 642988268 303152107 713406805 957097096 998706502 231185863 807378009 476844822 772822324 348090956 342265101 326622406 768929822 296487677 499800395 83065518 296140661 596881520 963599808 520261662 700233819 391548435 613378375 86882017 345315686 503871179 614266765 41272724 126971256 643633645 275344867 314829887 975886750 963133066 567998703 954363922 511809616 633624600 358053389 332769232 19181487 849480788 144787191 979358324 418556884 863666434 480919334 102330297 482880819 672293835 461659187 257664610 111986565 602675739 155919906 401632949 483546248 217005842 531402390 815993619 568393874 579690609 431048781 382167022 483056939 635450792 784954042 507905467 223322881 597924692 803203571 354522666 317717705 354791813 550802419 478323143 585201510 455828003 600534835 439932299 641661161 589195935 301320225 869722945 688899042 677549337 360461164 942322592 496852908 56075391 548829343 898936222 733159962 490741107 529384020 504666255 141658514 596945637 911699068 478070381 458610623 80486038 993793873 356001013 163835209 920645025 598727609 254112046 823580859 270408931 366743345 645183707 247032102 49718356 570565266 853448501 586276574 821656727 891989450 362167098 337368042 705029851 317689442 59188104 375778356 956462676 538766792 68516060 641302507 900344845 574455895 966138629 323031360 798750440 560292976 9241038 685782485 998988700 804404534 875540964 361257234 954822928 974507681 783876858 346884137 389955603 219868999 495462449 950461912 570038344 302945186 359247156 695199146 799410809 907058478 55700451 996403961 39431306 62322742 3455352 399610500 678757123 206963907 841979197 319137469 46587263 984067369 413901914 680609623 754422110 743408723 421676223 976652137 501622805 128858743 917340806 242620005 408275148 455567588 3603627 179643575 903968624 668287776 35626018 167609743 840934833 461509692 767552681 476024649 159562605 883188051 998765476 782840489 981568602 463111693 751119167 348139895 210281415 919496185 768819046 289921423 879882416 671805425 532909101 232115430 122017890 606448728 517635034 458973590 421354606 301252695 895130875 229809291 522907682 22402607 703721571 615012081 344804486 420965389 940653030 276000406 37864677 361383607 259039457 842953972 188119069 88548709 235110944 912117620 977151187 555026387 907918631 679729768 300302842 32139092 63527455 983225220 996833912 167245043 306804241 203089704 634799770 838639273 422531403 714668487 475717579 874256741 779002582 220188958 137963232 574979560 54361591 258658838 405407510 829431300 478136123 663395125 907889311 724340838 783781212 143647074 867304335 873800881 757865431 825995938 69318310 282103647 211464375 527542984 955130786 776802449 497815987 482167739 264905477 892349925 97829746 395999810 637627063 213482490 224403345 802344396 239221095 493967183 126184478 570688164 394703576 215302290 655441810 902792997 946178416 92737724 370306982 514856161 553722444 979955737 203837112 521626416 925419232 517004834 576296375 771661911 206107949 150817211 969397048 85606692 583761078 879981062 878424576 331667210 128599219 541501663 379463443 721987503 499202850 454623128 785520336 527684755 719038053 284582170 783454626 539502492 888641692 277747584 474125219 703642177 656642662 166294656 266743806 26904102 311573444 782797334 320193968 126525969 570763481 675745468 479527619 526041137 157898830 276481004 709354191 544036087 656102432 487135431 337025088 346870767 67922258 251020890 620551247 442602130 36833512 456527025 698793386 772028174 219830806 598407593 962117831 77760577 971714898 335010611 530513332 923865576 949812039 519216443 916578332 868900393 906432938 632883892 579942407 964753683 355234094 94392642 928296962 809424713 927386623 620738808 350136043 406603597 735513571 486494067 572764056 16788657 879884216 612388376 318828741 184214829 662686810 706924051 528240994 415417088 572742406 584828787 196761659 265265099 278409880 110598069 436841024 512489233 961500974 451255684 563769648 313429402 620412333 48646868 478229360 918669069 919175216 483919504 480927298 836597156 734370366 638200568 488312506 29038975 201016845 596898614 276244133 669584231 795187774 749049323 267207909 670149554 150437962 848799576 511904082 298384207 899220208 377256291 197055282 285491743 867109869 217445925 655367413 168964564 725564072 94696136 80225466 686080447 264177065 775775894 874266861 134434278 311906803 304829344 21831711 487007661 277597657 550864919 304084919 624473373 559834048 981505758 640576729 970001733 455985822 641860687 29510380 548951468 702343275 187603733 541208118 809279831 218240002 916943173 116598570 1000661573 624233355 975585008 558718046 952983069 912915067 1000142922 331569884 789759273 651134153 133767302 519971931 909662242 213046660 803502179 208447275 667792472 991437262 946720040 73437681 597257738 894157724 999133899 662270938 768193076 46410275 448340840 117819973 6705861 96825154 620204867 996650704 589519024 637666318 136550254 653148002 594453265 273999562 202425380 868248109 588022869 115210050 486589861 282938542 194426171 291165717 654671153 444694729 353425886 52228794 126740705 589519937 300342601 336747881 414353857 499659412 809716315 427300594 651856467 951396469 800137599 818460712 111135580 280936843 320068390 943345008 614233688 370586114 104847346 553687695 673829637 328391180 968028466 262001800 163390212 119792031 922528048 44902650 940974972 31482312 40563183 506649410 142199726 206399918 128204808 890331531 992914988 184790459 337166784 554007298 812340053 519055522 622638220 686355914 17885381 633347850 137911637 611200954 562516167 537087716 169887341 802848261 498781139 753776610 612449366 294625236 1002261521 66188396 36266748 766817377 81239934 214668524 892173990 858840264 88850905 603687168 193244317 554731153 26076168 432963576 557087431 434574356 393112334 591805045 822652108 137911007 427474372 966302946 740285941 614258312 427495957 913449475 418822897 887912835 240188563 641098207 763019211 956393599 907587157 858864692 227508128 317098705 645000442 256243448 339133416 14894622 142095937 166728388 603548191 867578424 210399225 13746017 123349754 922515228 367750906 111743124 209606210 253554527 607494236 585789559 234043574 518611890 479697186 19243572 661073036 926549457 534257002 66323194 152939386 489536593 777013832 154133310 508079424 329440603 998317222 467626253 818969930 525454152 87960155 369146541 435911441 704461743 31274293 241534918 923207842 347632072 343098713 239340380 641985261 250533214 970019301 984608899 92992346 310804992 571655593 969435845 917088915 472061092 444512499 241936241 924827872 323934923 362821657 411429166 573991057 935316527 489703878 735872103 701562200 563171196 45824838 358774372 760418453 748306573 400548379 699968268 656093402 659913106 631709590 106677672 478235281 685388197 229858734 723097324 505891244 624990712 43529148 336307357 483090635 80090168 271384382 828910977 605638412 830423318 576636288 479684574 725704751 468694660 98229306 762499337 399609682 243402462 156826230 442685188 175791824 260918747 689924691 2241814 141429905 428252819 266640243 95264200 754059538 679459599 954175391 69292737 875282384 967731875 826499037 950559901 559349413 151771111 851410441 403852963 335123663 516981334 563424238 283585019 789367299 242097237 126815310 155664459 542827855 719516143 749494390 220824639 171477484 81828914 73207655 61931617 105793653 208576926 911268304 75604438 633182993 873523848 862819441 593391766 100709982 106395178 59237502 755421058 914611221 378905987 665219438 148221073 590004451 714373366 424035642 151938030 761887176 143073883 53889117 728117517 908448363 481237798 783543725 54839658 129370026 161923882 781448172 191543506 965036496 1000310857 319482314 860748338 462163905 441931481 988891411 859088225 182534657 490376975 180625580 391680383 823770948 862245399 477289837 65917131 976204571 297296979 659325183 734980345 490935928 640707431 567413640 253731897 225754916 238030493 305304028 143840045 995662024 608575558 59154833 286575319 995734411 199077961 751134237 419753738 659346410 292755851 600051516 674137591 947448409 827817849 925199858 705810728 555971935 759124493 598676254 807573765 706750255 925285876 690601761 288567341 357525253 467874887 794063491 841846235 407369611 944133605 692450863 973315107 402853868 237221569 806668305 123894729 889756624 173020399 29456518 523289333 592542862 231444263 632961087 340365696 738244012 202107857 846594608 232517332 733540574 285363518 873761432 738273828 263375138 118853864 2170028 501105333 256918037 232893436 730335887 920230718 415732207 102757034 196901703 481618681 243876283 568758295 73391998 290301361 611389118 187303666 203294984 427863584 384339565 568147572 242463577 316463827 462494516 65368164 483453286 650582662 369438277 131353874 622789926 645208011 286740742 505379793 324957565 581113796 943345444 372924509 618432390 221825642 1470018 54891296 608698046 365396169 628287289 291289626 532729442 945476439 8028170 949266505 246845611 795249217 178999395 163085540 614741552 464568838 202634277 403458554 552351162 411270188 840541797 453400511 478265004 959702310 857493579 5711533 511559091 887037990 198144570 270198886 212562916 489455736 1002294352 981615594 799039267 902406586 337792117 824646865 423603954 642781237 505965353 352525874 401770284 458925897 287639148 763204536 351369112 952696432 541143679 152010708 209038669 412862655 535743171 412354773 966290920 321275518 119979767 943306504 997088364 768443285 670314071 306635559 219583857 392008897 222400110 458420083 483192098 76983898 838349357 406508435 601831705 446804667 821464533 610932243 479568409 459098682 10074516 565834950 71475650 148565210 683883950 261837526 638944487 67878792 835896498 672409763 713279560 388384035 864887300 48216203 853016413 33004276 91551784 387816312 366127389 291240573 480342242 616764878 438507599 410895492 198038740 651992439 413365025 308119879 966716774 733473656 952977747 537243968 322228705 221094121 129293024 9761697 235681324 457930290 149783699 658486403 275408259 388492667 354464990 966438784 418741860 167280856 179523554 370317428 259966920 703725183 756989897 312444181 830268112 909027377 647796669 1001320405 295087533 198293450 468442042 13828334 671958240 787833312 854465766 247899527 968569795 620167481 34736917 914799239 317354030 709198524 229200610 53474882 443946607 748931778 201396299 666760945 974383635 916787623 484803956 214505091 227989479 646594285 275279541 42868774 780473716 299289734 692080536 979110498 998637898 99495180 546294259 612864793 149955184 797096663 412491925 952022685 675138820 463151074 556399313 965576158 398060795 830621322 490186324 828186952 59572546 577934942 726512430 814497089 882609918 462972089 700453569 932696876 481771727 436833852 406602202 278526790 401099434 437008936 118877550 847895069 651701846 949249560 13024576 501581723 369276173 624270861 383683956 146135983 403287257 677391513 341789878 436834151 929537623 990623284 508759444 141993518 787705012 449140862 472852005 442801468 497387599 817020818 459327911 209566571 454387015 807423648 70893979 641764430 121536920 887880944 143492955 375779783 542096 723178124 494244399 83176256 496528319 466915788 619132036 385455929 611768738 190774170 479546959 713447119 30246405 36188481 862065184 334117833 42693487 881686722 353515651 692412034 829170970 837593921 679879543 597326642 50751675 734727171 368344270 579029831 140795348 114857820 871634715 841766686 294243329 629433654 647608154 909347327 378605956 276224296 805834286 332061317 390657321 661977141 934589298 283553721 196435716 853187827 624765826 599323757 670957256 327017295 44279528 576663762 833888100 602172385 904178266 106635572 707872056 787361423 276695216 822387375 834871627 73755808 12728261 974574705 61428112 455012961 393195247 499764872 22177297 976386224 438724572 84133792 12993656 43524123 117291564 773537947 450187473 716189076 138546722 945857648 858243225 815115084 310946128 946352274 907292161 309908966 378855913 779129452 167227549 538272842 163337547 196838491 43482657 408728265 962836846 407634997 209866112 57358879 971419405 561600424 895055952 564910723 226148699 869273472 993233203 277726331 518161704 12288384 120768081 241583856 214805647 194978475 800051094 56857394 375155015 424906904 874079246 70002450 431860236 101130167 916765809 826134862 833395052 39566495 389639066 911313037 480819681 264496074 127311820 879994177 459685831 573768172 707010363 579936805 530849061 546886524 203178469 986791214 401669039 958895198 431849105 290836106 905801788 877191014 962148908 652222777 440171873 218726991 285993880 420507870 713993634 449251602 512522360 669693549 339312607 171762123 85657446 170520295 520553279 809401020 845956448 494378124 406331907 246574162 187517226 759431550 241189010 374398912 458332262 95761025 805445059 351437849 737931592 812346248 462547682 357084514 772980787 83540646 834486615 170986170 979969585 794208475 481018277 979454309 818334038 2609884 155358305 674781597 33695938 379542737 558093539 891267268 529028558 577235397 90434363 442261213 965123677 107403181 640343728 431967122 449290428 738894666 143180173 929350011 889055292 802437782 709008889 241905709 192726805 909071956 208789661 396078479 929815989 751356184 547958340 764173132 619750145 963814233 247315645 778077552 252087282 558673797 25098189 890823487 425232788 776835477 756115522 199517842 722185483 554827411 523840407 67119362 463626836 402394520 590461515 537122180 614288751 935779292 447637611 886836043 597819563 454225803 730233808 836448905 306727412 85582576 778879835 959542285 576168087 685707750 953511053 183078967 952337086 112259342 414182403 539818131 543715981 226341965 739303765 523328627 410073448 329465079 994940547 438030631 929189957 68438296 575277222 959749923 309503157 540550199 551232451 343932400 44890793 457001505 365182541 797428111 325637370 479172095 495251752 738078195 331359044 185251679 661052406 278701336 85171536 218869893 74470544 434031991 904156626 81497951 781064580 949381428 841480609 444983101 83096285 515385945 638129768 721629817 860949003 912308236 595483732 466182344 331129933 41739212 928200652 184800530 698094316 872987238 670353659 951434824 785030154 209163248 883429276 854161109 97888666 944412975 570085674 1004829 457286102 707236166 533878641 190755495 469428023 837720213 186400985 609648998 836940770 288224277 162614437 725412796 963468761 437000586 155770712 632351194 86509436 834296198 75850510 172897537 516266339 483887918 377153551 659995987 569810570 589983141 364508363 613042817 736836556 571062052 850448764 110940108 898219558 851144642 450683361 958289063 232826984 123447615 812054520 265339464 552604877 554143030 150382436 842684836 897861355 333376240 195478717 392428732 850045574 922850843 519662896 643113899 145421551 157989379 187592713 889600111 887926144 404896332 317654801 506038533 766491364 725577003 69725245 681485295 336950352 708399879 707973204 210130466 190003696 965975936 742513940 504801011 953130761 734914110 57033310 578853578 46095751 241569 748735796 234564372 363795805 988010407 164017674 820666077 74103005 219222228 902255041 993571924 72837737 560637202 94428242 235646473 715639282 532920527 738523744 132616535 559123194 315499757 425979470 386734265 208218412 547079829 537098890 415267925 681072426 37161951 647990504 857013997 788526416 265337346 707959341 104079819 361329393 762207882 55764231 197395210 723071753 993209734 288785920 399895066 465384149 35792978 856741232 779993770 610912648 584104136 6810406 384144589 75972896 198547544 372590043 679724158 691127761 864057683 178985575 271578007 705113273 633731227 695447381 280745704 678689656 285978650 444280949 920295366 207548233 447089667 858848598 272898918 927601122 63277560 494496288 478403357 16878696 367557420 193682879 768330826 609842664 684134910 550579781 435569000 535086040 647270724 222764820 846343182 170774260 550154975 228819605 978540692 66490856 521729778 970061036 939971496 659843314 195779394 187145876 277164836 770388718 131123725 567099720 107173953 463475325 815888330 406314058 361458765 6108079 764728817 909875867 603783841 239877741 582560431 275814744 896786112 647177517 199523657 476642904 221438077 825076820 56607848 223070872 694862910 559611740 131032632 6071588 710698372 422553257 152435048 558163913 553057669 290907183 504385243 478634092 510339838 734689103 791566112 77473454 627701327 548562576 327079387 249507687 61669982 854790968 793788506 6525998 152020187 166130437 391122572 936675341 813397868 873983506 19914570 614936979 213480899 882163944 904903871 849301781 391870381 658023650 940499038 768892334 22561540 426803906 771849173 962825502 319174471 886695198 267700576 456743902 517550491 118762577 605387963 572962415 285762454 10803848 762757035 811243497 355007411 457490509 104801665 701315575 993530918 362275916 647951696 112055357 523566421 478619738 227566147 907031262 553353649 42268934 104059223 305375276 927571669 331984126 396556703 225514501 490683358 176188232 899885517 925846769 777526274 340612712 292851075 924708638 85341754 655534858 295306843 574761009 399432520 109437735 944067624 189980176 88216392 13059899 474739198 712348344 538594980 896913346 485028413 459502353 524730197 177210717 205633447 823964265 840808052 396659446 452659739 691021809 310742215 694808323 799329867 238355942 591701775 951169975 549596507 705553429 916192096 637302228 280390398 975009150 180374240 553210587 143057825 497552640 524824904 626668909 430358623 302813989 30434818 644493676 207709322 642594173 390149268 597901967 136429855 990848249 585574939 714943173 66996623 426752233 538474742 699666542 678685789 200767129 45640998 864967141 514140789 49611264 60903977 254650429 528908152 583123218 38323795 115050643 458859655 295935116 104266107 412398443 796923671 600835988 994159641 979448788 525355607 733651551 757985168 713531985 786477565 663087767 480414614 317951187 741526435 607288911 632968914 281962419 574931628 618450140 358725670 76404187 482774532 957018579 555613849 811745009 54697 696077984 527639794 574009075 995473365 881666649 478799292 481346285 377481147 760306427 380805055 521741135 994631305 517268614 359782047 152625195 648808633 499952746 679139831 822907594 24689154 228641042 786858340 620606945 552525877 821907908 440374650 401278276 972072809 103690193 999096499 81872651 274517135 906956464 778594040 322292299 487940213 911637058 580632212 561175288 814191924 112291481 466281756 507937605 544325150 390271818 169587368 533651773 359411681 882681528 674524734 152916817 719504523 643019002 311079186 402586686 1000059670 918314031 678179799 446570364 570608861 712073520 946267525 139091795 463356874 491392905 942805101 21689190 898751995 712465434 99354639 612555761 487468818 922140355 893622837 20702098 71432443 737223575 664418029 475634596 427365329 99462587 218391872 522143639 322536835 994865414 990145066 971628563 610896913 552368931 158111893 84427171 577245825 395326881 674948264 931807790 372956789 873458918 30020462 79301054 21407838 402662842 568355266 16947923 153245585 21990693 429253786 770183431 275495982 387776361 60066030 975057834 433310594 849757156 993912088 909387285 579543587 222137569 695163484 339127019 624816357 541500964 378482567 420028794 926697247 297406308 583127711 375310858 549945095 573977145 1560385 116475214 554635219 854096448 780900402 825078875 899314832 1583599 334395410 829532038 803550385 153840858 176217983 361369687 631292367 771750564 29112445 22277338 292124152 665595792 14224545 957320365 375780453 919684794 331738162 151201484 829394224 455996840 291448255 22043030 143943236 814602400 472848154 402620489 305246319 878393493 503015958 208479517 453942048 563767441 314339002 416048228 183905329 424739982 756986676 985056972 150882235 93633541 233402457 116631662 342553393 213159075 869156353 117127555 102596936 608290641 430258551 222524082 868608037 727970609 676623811 182058335 352910445 998684925 111107300 220154852 103501860 577252143 460503266 228320066 108777130 209267169 572146141 173039413 24363375 231942458 786341422 189259807 728438612 893251519 169393750 673163992 848974538 475203478 560032130 469085982 953951363 6803021 54769929 20946506 896777695 556695855 141246949 177993914 385646988 205357319 119875620 111799271 93934494 414009026 458945489 876954505 663264912 376141532 13101615 835644206 338303221 645888165 581812384 261978419 234675153 363843508 21656037 316054741 920139129 84906409 136674520 820642173 776048551 203077106 163988449 646158908 742849708 424511062 180331986 96307732 485680993 961353017 267216969 62090442 74547636 63393406 672683035 957660527 136906977 494810504 5468629 458617781 746757994 969935757 469810880 66470155 5739208 870671013 862229428 996172330 16250152 351061969 348567445 96331016 668536541 359405040 176957233 817277018 664120964 177534111 609121112 895018857 185523570 246432564 622046537 242759852 637805477 612986885 180222241 675888173 198274218 694195564 302955405 999947942 588297155 587743563 179821895 894337377 585124121 123851629 226071349 164424196 268533982 79164470 683921680 879280874 502794595 979992534 317841152 339226052 71248900 892708643 29730124 471092070 43123137 174247034 780892446 850121652 846914769 905619852 115915717 463844565 972875302 882349053 323918946 312927331 381249306 821272946 746910354 654460883 458845149 933066388 586185516 542489548 704514133 963240454 255944696 219478831 647375263 192352882 1000487685 197970492 36019465 143454495 485309920 484127743 580213534 168807608 924249690 399866522 415948489 175809497 653063450 997161915 642601709 129423894 837167706 29897354 523198512 58929923 249257840 17541605 625240868 422050921 783252857 588578552 958133720 447381272 238947644 459003094 756090189 123953115 604031286 737304020 566465947 349806165 736944313 439248485 359331236 48761497 568262296 394748454 380502114 254247101 2216497 194776110 689528101 985184385 307993095 632119275 462844646 560907377 908264259 44243066 677264036 796899183 690092032 326476713 367309156 670412355 718951525 848736483 389990515 92158479 457424023 899008378 145138737 934580408 754643079 667960611 205252511 610332704 303971515 387895439 543363032 81649500 970774361 649057325 764701140 851982000 919829545 418858337 699477244 123326738 159692349 278986484 962345332 800406035 667103005 52225243 961464578 784313370 10871605 32175248 515988961 44949990 14094292 861280524 645103832 778625794 233771807 602171219 864924428 706646097 26434119 868932791 10857844 350543500 248040686 714369369 535263213 235006346 546368403 841832258 682660619 358243853 982712926 842191311 963021699 587720511 163029163 794950192 364776611 881422297 168063860 751113338 564198366 633542354 746104385 69255347 690795212 296242661 248499020 499940461 347495136 639603465 527631911 597700953 427188630 612578590 937231021 238405258 624918820 453821893 636032138 675134759 351001956 576632297 112532292 364573934 185879757 595168643 615231591 143677956 764817832 690139666 178789598 377709275 31144649 221346318 226594725 37504434 193504028 498790072 131403075 594683393 161989924 385880962 5750504 191069816 335913930 34425424 728164274 56329359 508364311 448027734 662931212 933155292 286636861 61156472 225787845 477437730 97902304 455566155 479491993 141828265 529616806 244652885 146366857 589627482 370088865 669896530 128905415 739404341 362017262 9081627 1848163 274184954 978872746 35528058 866494328 496755004 20440319 758367877 101427002 364962976 372555601 13103904 837828653 571828507 306568141 914925811 783480039 456616542 357293026 46459966 948485419 24312720 765977525 234604741 14362980 51096362 855139407 648345535 757743296 146824224 299393550 824327986 413411754 198677509 880085946 800270546 884347900 923549743 346047676 365559893 420510372 555035751 930419942 396018913 535674971 449990736 498408722 913418422 918256138 204814625 441972626 341497166 37194791 323671035 134817128 576561359 218750839 76066128 10985663 57379531 344499670 76283125 147621086 467374205 269453652 268823659 51306304 172116475 736451388 498740176 770624738 83205290 846115016 998337516 224967737 794066615 549844095 600117044 350213087 942476283 863579746 145908687 505320733 494455238 769939749 992151173 677601427 539955078 40496323 74372083 847390240 405471175 876526334 672625363 386733571 865038871 406885057 512701696 302869702 754008520 941564747 497500247 900656962 255446302 200918798 19306022 891040105 737533172 439223571 770160231 110076676 660710486 932160275 101387074 852064496 147009024 24005517 943015897 489178535 889839775 205714476 88227802 329111906 573706636 274629574 753232274 428899552 942439956 812729278 344286772 505688626 423721475 987479876 980115539 927342754 557519616 627071167 544060765 950807107 177248704 892803403 101086886 699845035 706757745 458136038 102898602 917364492 484653634 685133267 842898632 810154806 654993950 939241729 483202190 842856622 446412689 893785701 821977852 258445644 110334327 350569735 704158450 236499301 472718082 685312029 662870365 446060563 727374258 599981845 354072840 371432996 57479272 91163317 134099090 509901849 285986388 857500391 794447761 661505763 746679879 117856876 722123658 746776878 236582094 185684017 868970966 579351803 908995600 575612999 932815154 905217796 697065000 75991255 314424954 264563125 69095889 31552440 549111428 455026287 709164343 874888634 125429361 912078113 635582218 750006010 186902980 351538538 603124717 584044978 804152010 495639840 186918227 934176694 191552974 678056456 170586132 626610722 973538335 357515109 703073861 953873162 474786561 975985284 449979914 6793736 933639891 376904323 507769074 111657834 283563634 557055033 156759964 340714032 219222494 27474031 649189022 377686872 199532203 188246468 670785249 274776967 578925504 263102823 973116067 704862711 65039595 239944314 554592604 842436242 263519431 4542815 958221874 784496710 870765272 151071703 570437662 10059659 79814212 695378757 236450991 305120082 367802726 813091509 589843298 826885285 608520886 107049327 612102607 700281307 780212027 724529402 313923051 185254245 729542363 384602915 512695126 204952536 981479057 142035979 479077312 852001318 229541242 857713620 209826026 642521772 620652377 389200172 471227616 303330612 772471711 885591283 293846059 75803303 402094457 744463376 355024704 473458316 278195032 891026805 867398110 667457141 425950637 447533413 309471107 601379874 232429212 955819676 59501432 39953797 496369455 746345046 660219868 460194637 10455190 831703434 21860508 535464996 614657511 196586779 472914591 197517133 19990753 200221775 758590312 597327160 21504927 142692346 574384683 383969016 408120334 49890538 322226609 517353271 823257159 839189362 96456772 393038413 543613821 937593307 462082023 242388999 140997599 652152945 926389146 622942777 75227709 844808514 729169348 196945502 717722655 776025989 201559264 590627855 637188403 274950793 214713216 729934487 678561513 900467501 976340668 751348978 41081764 93537144 855431992 450754619 365045276 99993937 925621016 217247185 513958045 610145966 400510708 252877494 499821001 28741462 982034494 293339937 919129878 861218036 836087302 176198556 497943700 844847775 273684389 131161374 279177628 309831734 991446917 548583538 968829412 828361986 332092645 283381691 666530547 531262320 773232074 884685297 290621423 140126429 846682835 675384931 975685264 583387332 754362843 657976234 595945097 789726814 117030899 759921551 92541926 846830093 680742044 552087401 81688292 552085494 346281311 104258204 628036852 216623775 160437819 930993899 568174951 795112404 240571166 719684578 946614499 982948729 934588318 861839467 842603152 940933037 585691766 656159455 957094327 861869866 264769901 738281228 595409236 676352118 947327345 326074086 500963480 635622921 302197287 780086189 267141888 171586454 162843261 57031203 186516058 222219062 91902581 209131417 832626572 377409255 304361858 183382377 586726502 851944270 794482963 422406519 803237467 687593557 695510688 36947223 523844440 659136600 412285940 639811950 823275280 46080143 148338463 119211916 211411117 470936883 439739159 717274348 162124299 554440767 250899467 841264516 541446068 606566262 692604543 458503047 177685830 96381976 879895904 375409292 482879325 291100924 574606208 514658824 659072435 745448727 772394583 241549654 898063256 470163210 507567267 903048664 254037525 1001993562 890396480 675931154 763229437 692127637 893532056 536030062 644445078 232391747 66739559 903776256 442720390 930383083 839348782 972056043 371412383 686270962 656481507 578921384 856369874 903717359 477266510 704803951 294075970 466932739 474772834 671573044 117007142 883272964 443399727 98574609 779666665 867919215 298693015 973010896 312195700 430058815 118597049 43704514 648184546 397618992 750730391 981894848 705914706 272252852 376669101 416549690 846151215 522773019 782134080 599361246 839736864 481778612 426917653 380298357 308752499 795993702 967990763 692976009 736573880 358233528 330254289 955993877 922944102 750912129 365734637 39872 450407448 318916785 956182173 39338958 59252228 982406643 83057006 436801247 939594983 176737488 486167800 972493955 616645913 401307157 916137780 939420166 418877352 920213550 151140877 19819049 49748211 675099077 246066517 779611891 616409058 914941797 825133236 922309472 986241750 604878222 762420750 821403162 892113700 550444025 51047219 700099308 93909196 62900628 802209622 226497182 767980329 181236825 34610665 355753826 412503299 525757063 731293401 410937977 768229181 793387373 16444627 541396029 396401956 802604657 105004378 31737150 652577560 418438572 557491687 136818593 127068143 570699947 621353413 284073818 184682686 944774425 935008080 540423061 44626393 2531514 632304568 110182902 838113876 999623420 82905335 806530065 728051173 776299588 413665740 993780005 619722216 837822836 667050457 136748363 363176 955307875 605282833 318335583 605139925 318993031 292317802 628926380 885041514 835346246 97866705 857524547 785696927 315726837 25463538 387377358 134353686 816714010 280877702 927562541 928114674 322183456 476388551 775684288 597510501 215049788 739150217 765335755 259170118 196910395 880461765 668599998 810188228 575447724 208535493 122447464 701386827 223962231 320422447 449535337 24989311 973122278 63158238 773177754 910569919 636682510 718332086 275929080 668026658 510665410 193549949 742056351 678098128 299333102 463607319 992535628 245736717 108069551 825798423 478254041 929034192 14755970 170030573 268251995 367123897 764408873 469328538 51902176 719104480 329019662 763357722 603183785 726182400 624644879 522249348 844237841 28058858 132702637 97429182 542352302 509965387 276831513 544416013 748888413 925666096 411854995 144021955 182466449 265106614 239149143 204684303 855983324 148690411 589131105 694276817 549852070 664038411 87811265 359529007 662253449 358338227 248232059 653201208 559465514 522581096 100668394 260182875 680704290 218053643 904969455 13635535 141499171 751251872 90082049 538723720 720916273 802995153 642212535 325348288 647915306 878948289 881268072 167640488 939025666 778502087 198719473 769928779 968466948 862992345 50117297 577459754 70163247 571085899 675484330 184059855 754102500 826478508 887832574 580259930 138049127 246686448 629306672 258546705 694829201 108476730 387962771 949772932 49958677 65935063 418190398 742811054 559889464 448850089 471384341 317580976 929830190 241144946 421000772 149880925 727335184 538940216 725880995 422354649 323574971 204922529 472529103 641494458 615552024 734716356 496411145 133579722 76258762 652528299 314947768 489865122 77263419 671253073 863250900 591918107 686551590 132359152 921563690 238468181 346931086 430625512 122082238 727778079 602095525 398690545 842796659 648047757 201355841 479915901 270155605 405000714 775347818 471733867 374007373 327763027 928458872 878733399 465910898 15699856 569958116 585666192 175035455 968596396 48257349 498480004 853334101 386317543 140042803 794387646 222467777 911490672 995859067 187852371 594589235 940804677 296215570 827038049 334327460 973359476 736907370 301886601 162547552 986149815 413728636 640622161 915045518 713053779 156092207 8807242 891882604 802697645 241735052 407001500 320807318 216350116 711395943 140563430 755125212 262826550 839457128 926378670 39245523 896929418 796900405 111372723 271613053 433731146 330110518 2307759 265494307 917892675 774906481 640705232 497612216 359686715 9580564 218546889 152736767 359457836 245608609 783806521 836872616 65010159 478025694 858758519 576781927 28651373 431208795 687333910 447737336 230397173 657920 373914276 539427878 996391517 514257818 107074037 291550198 323260136 572912980 844915494 741109327 912684692 248880546 444369314 867644154 472351568 195840055 449286222 331367522 41604484 333451758 874667901 88642739 379181963 200470768 194098352 136125152 394348980 209150954 215327343 158979328 432836707 643425823 162741360 70585159 437954162 529328200 945122194 299080473 896241593 703505948 346759806 284451440 909274511 493213185 151625159 85564795 596354761 276612923 508215809 721235184 975278991 609462945 567953086 432212715 946661582 265483559 128975030 647549223 95015220 555594305 242053914 83868218 76583874 671846135 920731180 639884124 574759805 585235336 350757182 886389208 530636883 223282524 670867634 452771306 179132378 435109848 782670419 665764764 801153183 301796866 303171860 31908220 494630628 363308954 135944299 315509368 827393409 387719021 849000770 237423959 214086481 345089389 367531316 5993001 700902135 438390082 1001893934 665031925 837531495 201297095 516893791 651327492 52741996 985936094 183939224 552788038 168561102 814260720 18955154 32422647 429938263 606346696 808247114 816563609 505743834 697570623 268817597 18076489 906741108 991019261 721355498 333764020 975747326 355924922 532136197 805223079 780903221 789856464 771532613 207307078 706477139 756945357 312870530 284197624 529456546 878204978 364284043 334895900 585228023 497804894 785936823 956996271 290466055 960795483 798770824 3825521 498870043 808501330 465471248 69752104 323072996 191170874 458893036 949123416 45085006 524256043 151532497 186271535 860039026 854998682 146425305 937158989 615763364 999905710 46349132 515438587 759421655 828760616 458955005 94910295 872318938 820424714 511139012 814789593 279166833 261793176 535744392 498059373 748906617 424494891 90622430 166370087 343192429 643021326 668896675 521613997 788434164 494436396 165168480 664563903 491706249 517189736 610029673 189090192 663395024 661176835 391832247 761821778 513735682 345774113 57305680 990438773 785674811 101208464 306287885 216608403 196910473 534567884 266777508 221061424 746677385 499067285 242004840 53859640 29849493 919008125 780833227 672547051 935403604 465023146 795435721 581387682 17900362 59012597 568700950 628058445 262881032 552996484 854759756 900865009 213775720 383396188 592251673 98920928 501038900 359003602 162067604 801852545 849208649 726174477 235603575 172267887 336067759 967744510 558361920 159198798 937297184 679917125 95128814 342767198 263145935 382138504 669419033 36688920 874496619 221522477 991234244 714335832 309207528 510141006 417873745 121139248 782196749 699538835 968844792 402828561 149175876 893018710 184255535 865461328 280300388 615277379 380865471 319215082 677456606 936344807 250568867 534830408 860868946 257838877 945840971 750376415 708440085 558372447 118483523 27733334 61295617 194562281 250169171 633868933 763637828 728744714 704783413 180177981 651567270 956309945 578432287 724714153 111765618 489254338 206457398 676938966 99773787 636545900 518365317 628368724 178404983 151570243 80802506 431467509 460458584 253468189 252426243 861092478 898430600 206156161 424296552 642526328 566445590 275412297 274807931 11952955 173153167 642010149 780049142 42432666 95403625 596716559 231887888 670661805 441456104 60224751 403748790 967441778 511188641 876265924 383771537 692244745 764638591 632728021 406823435 388824282 874747121 597432754 452291551 405434138 656140980 635235321 215697250 919681431 711380149 579406030 860824567 525378879 287339694 144849428 926220049 431826659 831389504 465101707 526595000 854035688 785106066 778274419 138027954 457994033 438350364 68690021 495475786 640634937 954317424 512641934 269240005 807194092 187483257 897489581 546414145 274988261 963806533 747880200 511510185 791897712 602993803 910139596 916450233 589124211 513561655 782877548 251433170 157272429 307824228 275138313 573334550 300391504 774685249 806041634 745390713 735570150 340445506 817758427 952631473 945488245 103111247 58492848 176218270 314559943 452837016 241005527 999652187 560131956 482199285 59923684 713282865 492750500 735631224 994935119 419830154 966173028 135878717 198355792 632527333 981560707 473771468 828084510 989493918 308366180 438784236 160123228 644656331 576550563 356112076 31437937 339997089 3015382 312040912 192042880 567509477 931154653 512990809 200212972 639023629 9707067 166838443 872890449 557693326 231790949 286457575 858345688 105907390 757442833 529379020 556569245 589780039 911827100 316212072 640290479 830053597 883378868 482696126 328790853 618911907 992001633 578002202 690528236 830893431 167864032 12906049 202131214 222877184 107113335 577366369 558917993 485475215 510108387 747952365 9793741 869619168 981525010 329748990 727379014 407577804 466832318 511663951 797894216 840840293 810586006 127918930 2606120 793539710 84490088 808953291 445499540 285795365 534993326 697084069 918774044 415524949 368343408 127528280 137738412 268313801 831390122 446319946 834461265 525555145 374355358 331842805 360785985 228260559 340326290 757282855 504376842 308780381 449000709 942939838 595058050 333388016 466781514 522658389 604341855 344904998 210446310 219972145 55588254 331106090 422446081 647362747 328989470 305831373 748450404 527437344 747210905 478130931 545588099 144635651 459941745 360541343 136529820 344694673 93335307 973516977 801410919 257706437 294199412 491250305 476407236 629879871 995558142 762613869 481938710 66994949 807496079 486730635 495826687 564007402 392599742 230092192 987622588 855294738 945986750 152668431 616497050 323798715 269320001 50118684 594638607 935074778 910095789 922048862 535767724 704889819 783538657 635941056 953343402 997606884 194185323 766195213 169700297 232883469 813950840 566679892 405002895 323316912 684096913 930979395 666621850 30828158 7313595 197975789 245007640 660707080 680697037 408341914 988723577 479516642 188632538 985898384 487144123 3145253 838848131 308198339 605931571 731738084 205219249 143801185 480730074 885700649 494192178 876866703 392046114 475898023 370732722 163922716 124610820 228336899 971922457 893927903 462382029 686949584 892343971 457480520 249004582 821631244 840572357 72004281 731772452 774501217 567876990 928547780 396591270 887982929 608707986 852627614 723080234 505587473 706086763 730628844 108570379 131059581 443276653 574335194 518046669 305315898 460832428 468655283 319829149 53955624 274460611 168699085 460466725 131554334 309030925 182592148 994838123 192328488 159606080 672817921 148006523 949551417 114690533 758354745 472026629 68115952 852671597 522473121 170109829 437927638 359300761 851687171 761096581 341598755 656015351 682787324 469862141 21051032 439140157 395935289 859566884 868965168 855577408 784278391 100350396 519991206 895964277 182687790 26050479 409070621 415988021 487490748 713676398 483335150 443163946 937974479 75727492 518950172 509624158 915930603 616922250 247802856 217450378 668547485 960436947 896873466 562970610 163028446 236712907 816384225 34380528 828756203 877857802 399085663 393901788 771418187 405936584 786601895 396137949 111794315 911750883 816491972 642445119 108937467 70439588 262335911 660206572 481949892 229084674 194515673 649044597 907912762 901830966 175318212 354022365 935468724 114748230 109635914 426058322 986256889 797201755 229891503 143013142 812471905 40091825 593942278 360857901 485253281 646605475 697517112 281378624 55502190 988584247 29153872 107709777 458631253 919391099 265949995 610787833 631199525 477178868 485577001 351839042 783377350 64128157 319335537 541920641 748996360 886571889 603707642 116380395 159358471 890435708 535169049 7522846 165170222 234841509 64324431 156101073 92460457 320320191 567019153 991142243 682483817 117922090 768273889 24811403 73026925 736012835 259276699 343767069 591526943 818666306 520639067 401800478 979066531 452362051 153318629 685353119 584895481 770804219 868171464 915990749 436688879 806170094 913722119 483508688 718565567 233184911 905411047 730361401 178018916 541576604 351840282 99062812 697648021 628808514 353178311 143805213 387964092 631206044 102505008 135102249 403632791 938895151 957135230 679375833 577332412 601005451 71829593 775881761 276814032 338718813 308061161 880169769 588061331 540737721 279063834 578070341 461240549 890027249 968736076 650045697 501981513 149634654 268138213 368103803 240176237 505488277 932594724 395089153 990610010 758584898 292770912 318756554 317508302 402033707 865191325 898761750 668043148 824381284 663489252 860258486 275694582 925851763 189501212 309555917 464624530 92291269 619306701 612262223 276619250 288369145 228843996 633437501 569978135 61006234 288830958 624052334 704821924 872895282 659865012 734475406 376187798 264954001 223072601 90956452 161863235 567694853 353422990 111841086 234352908 712784525 739468214 420587583 553870273 442845810 386868683 39839185 852563178 869991396 303894030 880377241 732014339 915811343 690254636 517218441 302523833 463651203 813024479 941455627 929971950 592863108 18008697 309317756 284997179 866392849 696363559 180684232 279357398 687101713 941330204 521167121 526979521 812877293 908530504 512829474 46883111 416867464 417711143 208898926 160633217 558071954 366188278 402553920 214325803 687138808 79232450 932878841 411444113 313018563 785321618 724449500 178237292 105753438 671553503 977226987 798469082 582116469 674220250 129998669 996990790 732140293 748757726 703498612 711538390 802765361 808500654 626641466 588078866 417707858 283540849 854590726 522052592 331515485 829542108 390917139 96967526 971394036 378387240 467925342 114373320 239952854 155482793 973957635 941790013 751213073 988057659 17678347 574650083 308349291 515228309 202422036 33772265 855984600 325897058 751705901 533064381 541875856 700902223 759801942 789030931 702309118 742797813 485698579 525956503 671247068 983239351 151291382 164337719 565579431 416628149 940592431 602533000 876142299 837411321 123262355 6238020 224382797 551104741 858143877 580908453 942309807 660643481 720114742 438002631 937772100 735219418 227589988 109321377 89391383 801393060 105133160 782793532 209584306 461620007 933818865 592270956 222711675 492702337 51369659 125264015 433709057 493292119 37249016 451281501 522255075 87884766 330468167 321877907 608708361 161895356 302788855 30578163 369683967 982828824 977792588 862427334 669098124 452421160 321891856 414281470 746895822 922517933 51845053 674017953 662605012 599090746 397574301 285248792 493655858 828335611 169048687 954558982 317589437 327326148 155359052 439137199 50196992 376013185 663695916 34498287 239148462 869971087 941894938 176747271 28892868 965388580 992587957 753230116 747842462 188963986 746254915 740065040 461010312 788639314 51503735 398701777 623553173 673573543 627031130 729567284 984459506 743920619 249361528 523827186 104899961 244769503 595020020 62847607 1000280827 834114478 330075900 39734409 195242779 914415477 150525162 777842815 198351778 682285378 610711891 759994816 284650220 922887391 793489270 716194914 703954067 407412247 286013756 950191453 214698749 499858264 337071907 70029285 927828556 59662299 994819404 985387077 527391076 815651443 636061756 313910027 807717589 286883000 278229894 281405327 214039724 753525567 407457391 424146519 937792467 551005601 1978060 426638284 126476870 934654260 811691203 240345194 232770405 266922273 262609238 728392130 655272339 591063381 379458396 961887977 805440843 985389799 428112499 891151487 976031530 708720127 620948816 777169251 606774597 859011433 514348020 137623791 462505817 244155196 141559038 798572621 808800988 704517298 48316376 893306086 175921459 61232314 279453750 390574738 985979404 799769949 412069174 941872536 935900704 330960272 70192018 561930798 807422144 388778003 160027608 716912129 212803634 637028255 337196305 61988494 379353091 547100534 878548338 955639231 887835947 87003323 767254480 368968197 276595694 847599663 619358129 264160995 626341703 698161526 692904303 60544150 187494827 973942494 225739225 549372776 341196426 46021350 236832277 18279375 252023552 415130921 503750199 882406469 91398920 169202135 293413734 771425130 535214746 622098486 149772156 828207023 89780893 655752850 270956771 58508371 414516390 850563150 103694223 352492022 632237210 306250359 742784630 331671323 388827710 114694855 699950141 98369553 255567144 575429311 49621071 201577514 574612339 597784384 663804067 61044783 388709761 944016791 380262885 781265628 282311226 923290182 286540072 461279392 383233319 7825964 105029583 686205258 164484173 85646947 393488986 812444126 405876919 955797331 483931116 580273706 251422911 985786713 353608774 176772311 297093834 693485942 352138446 893637757 349458817 860537950 421490275 376473378 470008749 456969706 807861921 430093747 154153777 175460017 214546983 502158736 253953572 63474682 776652420 208183763 228893255 598959257 403005162 703069396 108569130 157213913 3408821 467303040 850172959 308470292 917687198 674618178 131006651 854967200 367580634 578295806 66170418 939545310 944365370 176089265 797165517 222770016 557431067 299856200 551299054 594805002 245065760 485380900 637494985 138249576 832990723 797447431 379565933 252057180 30137636 63050170 933721216 714289822 676794422 198399509 617956303 952123658 44466428 9132748 522938165 265290560 848045826 12984202 796485669 381504351 561113264 71814511 291356671 108308236 133731250 597027427 702344651 874687867 609148374 612499871 931400982 432392068 599037551 419107061 955762434 939148122 401362251 226008682 512568262 87525744 318188590 43765596 637613346 777464717 442673322 25802513 622001495 56055361 465850045 424093842 634300052 468604044 619397941 62959160 217225606 686483537 470991042 425619999 69420369 417430883 419945863 908465980 996978523 804462010 236459838 870215165 57365807 591560322 203238359 541460451 522053532 589282442 252990566 612165749 546718690 314008619 243324393 523788622 572191733 596879428 420385946 196034902 624361268 476379229 65909002 629440405 218852617 727377174 950038872 839728888 234578270 974575158 372435921 116179646 331315657 162487262 35660777 430799617 682830797 234313163 698420851 170590554 786997344 265626390 961076088 359903170 819590475 855957597 655701690 406255156 607238937 117492899 200524822 139698776 974897381 422808098 783712499 956962387 963549890 496771580 324702321 22192961 718267022 535542271 201831203 558859535 822162557 448463923 833961226 466873057 764683942 584497653 542704 797466481 559243684 777051872 244499748 605587565 38367617 49106783 658315935 996197949 286550200 786640540 989824277 473301913 910169218 598127180 159909085 710555516 382753429 596850343 220782252 609122573 813758312 833265943 964912936 362673072 887112464 581829340 45544734 595390601 317620521 590763461 95342469 488223662 63299151 876866456 289916710 901263062 234166433 642911205 750861389 487348222 442501603 441855756 40287049 727999272 645877093 245212703 111643936 936868272 152789992 405073901 283149117 182298388 370877417 84954421 487337406 212690122 87885362 594841623 4035196 766734066 286812219 445262473 89379695 868170931 186800731 136883876 828106087 506750564 729888587 211681285 685527453 162551888 541583806 613140275 537261922 947128064 923608340 670339584 366465490 509734161 229792151 342193187 345342840 543608947 82602376 644535594 726909119 852929075 972957 156477731 819351520 198762840 207732053 952058959 147997063 651957303 782171294 456088291 54505256 450860767 799414227 680213065 846384577 907493825 25199918 487599585 244733815 650044870 275464313 223405000 245280756 248281234 256795177 347797681 411320874 206784447 227273405 245830054 231930958 971469199 248074024 246606043 46867797 600152276 425980561 360474421 567867074 958055987 148929944 171241128 744182895 262555956 980122004 760239679 163335061 808635075 466959922 809650109 417499244 552767171 738660117 605862236 993147599 662242772 573808532 39736491 671094942 490976541 679918196 996243105 50517275 882694495 137421296 252637875 859389908 299534205 399379241 848241181 833349155 353949740 933217490 739256760 926356802 401291014 762157750 136459791 336703782 748000411 31066721 865990925 366232118 957298014 130801613 826590470 734220945 744207392 580881620 217096666 77994809 169274525 563551928 994583580 436558788 162037581 510780974 866514456 21929440 327144481 30778422 984219751 534654453 119210427 923143077 745780427 352205277 826890976 616626757 908576287 513429862 469150768 277061292 292718106 438672146 966961989 108488129 947938273 939774006 191197577 204787581 148954459 164566059 41375430 59001150 803619526 510229005 246011397 686010512 522162679 746844770 749655533 255959972 841413676 776945246 833646966 465574144 764487704 250330906 216965296 186960590 205791279 503807718 662701349 972192768 554317838 41520250 996860438 807373391 866342676 771243330 715404601 384327053 739848709 163462550 848245516 414176146 589336999 716586327 340967074 830067289 6660881 747219048 807720640 161078340 287430405 859918800 570750984 693934484 427707416 505512020 224009281 94580087 515052580 132881368 994371736 863907723 491512399 879853811 730438410 747835873 302627716 403665816 449830347 908836384 126438146 187735665 303243277 4425612 491629253 594288356 525457956 728459789 710608579 546952266 936985308 591446958 32792652 635380709 857216719 151119756 613277399 983110073 447434754 912251126 70119498 847567132 546285975 731751104 117770854 200587914 836154222 322097467 407261385 710330960 487711470 518185284 187200149 777624214 900622551 913744382 597639655 986178849 965411440 917307991 558433495 478454136 655957808 873336761 580946538 666472217 93410949 573214459 223829229 705780492 668114729 865570683 587130504 706860879 944971537 277927299 594163862 381500112 795864042 241246264 739407623 970585707 30162903 834588880 458508796 440922080 554161096 665289916 202382782 315814432 421828721 886445386 229253788 448839871 950416652 368465816 394671707 110078924 924050470 235431379 233253995 702281635 215791221 83793411 964418710 271250607 831951222 742375899 122484198 524121590 918056137 967033456 204799207 93811816 485927461 375518800 121900807 905767082 199492217 562264247 879332364 878925580 214029711 267880786 332670080 352682163 484170503 389129049 566126387 194438159 1000738623 71014342 802862723 182370705 31154959 489145505 434993465 371274486 762267131 940987291 52847957 82471533 356138650 216416474 305119465 231837107 268754365 131882461 517835130 110268593 313212790 540702133 37448377 892462517 988716098 239210193 359430467 245002667 67119753 500707075 571997616 24150521 697143552 31298728 573742008 749273668 549619841 439381981 378228181 625505709 20243999 817058752 663817480 345017454 71029775 420710496 520450075 434311122 927164155 920199614 359679882 496009397 195002651 70121334 832369394 397937531 907410508 461625580 308425905 108292161 400078804 388140863 407042888 16330016 722204190 481990959 738943567 340537055 279425015 551302011 818790648 967332041 525669535 908864562 527726169 646719532 78802102 142168287 700326648 393477202 52370731 693226014 466391722 265097807 229640045 626621611 580648060 399809516 551927026 302449826 424355172 392174421 142286438 761002294 765540034 236769811 876973185 742029664 114870007 844149797 454806431 806020735 321506530 273955961 96099838 300270628 25677550 59269887 775061145 860152728 582692474 399338001 13202746 125469676 268936617 195233303 217397843 929338730 163503575 66054669 414340360 652272255 481427480 241594681 285764225 680957964 475508431 460868377 438552307 16803699 833390034 364385452 435359880 414956564 501412568 46345037 422262264 591128473 492361740 170269661 112083860 358588480 906296660 825400289 867266962 8346018 322998094 322207855 990472344 185619474 205749648 754074953 378549756 639881565 863748448 881722471 542668458 669114999 286356296 147633707 544087237 674915247 235850956 702522660 995643160 276161952 593926990 841339597 194428652 758630244 928743091 445253027 550295451 264307064 744567719 169085986 898653977 547243188 527126522 565913445 642665898 157347870 648020470 116180519 280716597 832880177 129606273 566517945 723687938 143631268 754426562 908307864 770115150 284139452 848458656 674561983 88254879 66158301 787996860 506117189 745549569 32068428 683416647 755297854 204498976 766718643 822373985 309442046 51492525 438782255 91050975 955602994 352912391 303896755 361694735 505772229 135008772 40935546 194660296 428225698 53264774 112180467 109042551 132372174 203334120 301816530 125187224 586958569 784723256 619960116 895456759 679055407 240078805 43762385 541428267 126987801 780644006 444873172 365297635 447348887 969647689 622561233 924026036 795724808 716905902 106704963 328626728 394039419 40921329 74281390 745854650 681824262 849730208 266722408 582198626 356193529 381649748 721038861 832256351 38945215 142296681 170392819 547696400 417115591 299679527 647291092 672518278 703774779 779723967 939162052 525271565 444824065 102125119 300162103 915740201 231409812 476899973 568226359 62630489 321884172 59458017 850616685 131785204 920174048 543290468 331097764 910114753 594083451 546819101 119714561 17616601 375140819 597011206 206195678 398869478 682693221 306920879 662058864 541960951 411509071 35542975 555850245 538410285 711414333 193682590 754888899 474858260 265971841 358627943 305059917 622368565 201447807 462359912 506765387 600083240 922966966 899431269 616506834 2035043 525533877 731940380 771148232 883411353 972084481 736640867 71533604 423937010 908185277 225185554 116567166 361143368 687183018 945119195 156390844 10319572 543608346 296443313 807217546 483328983 82200353 696076390 43229027 548573757 605818649 855345538 602835153 324372310 768304499 832333868 784706449 713507805 271595913 387083389 750031037 901846907 761854631 822348247 787972809 309421242 261388724 722051588 966310573 443907218 859081803 234847913 502827702 185539224 917405064 812062 991791314 420537398 257830709 506701187 508272101 816668342 580915281 279940809 401391675 189846390 199631542 796133770 79316007 872376611 295158707 133709788 22145617 302905710 52286546 880939755 770817183 908152692 149570645 968218967 778805250 2211387 962005227 694868831 845751195 887164445 306697800 223378247 611427277 989880404 174223860 860791510 652371523 610387011 84625819 629385905 480696438 271721029 39784424 425501963 648375243 998946064 915158780 282209627 22312003 35310234 167935271 623594651 170556525 300632567 47171765 818151827 228459519 46661112 892003271 78806351 37961691 438683692 390392817 953141992 400446002 454806832 191930310 573276561 1252752 785054429 432089140 431890025 290032576 559051327 41658564 673303023 414199492 30522997 274281711 295910058 850481087 114565116 423012915 877488870 927475331 61006731 564962927 49588166 406054560 721854287 863176230 599036574 785836670 620050876 894394799 770733558 721642790 39700641 648028422 436192095 412569642 16842549 618470363 659762837 336738023 895734403 27823926 15974941 557067328 319705280 634070665 574026052 608004347 413565540 312071383 885573701 415108579 83910056 847685064 763271352 427629518 616484010 922381647 426905033 937066746 955216330 602693672 782651001 487210530 878468694 517820805 583900083 775918714 427544142 748626552 457853843 343191083 316161284 859153639 624071896 393930946 211495775 31521610 693121390 187622534 562962923 181455436 905686942 487006743 267599905 972492247 216372881 517718977 164014230 942954787 245449305 367927679 593134839 103453164 747231947 272216792 88372830 585502270 229961965 102583411 613170827 528908035 845247035 663677695 619000200 449632796 692830824 766397261 66848268 68023566 660374993 733467203 26122024 729968650 32223216 448141387 767362393 437978132 204598648 469922087 179609474 718662328 427088770 990835570 442956028 588418130 478688289 131726748 743723117 319992093 252744434 489434070 772637955 476831972 666918727 428660820 676055931 568616301 114645975 854070713 859539611 301013140 258494045 915226968 26369770 133372991 904084446 427745028 67219339 541322493 542781069 358543279 246640754 222351153 546846871 772946362 796671825 455858672 293115548 291353481 683684934 754844635 976414816 200680553 555070453 995058432 82201320 780193983 211363215 610507480 702705488 332382694 204254129 267387930 91669719 803580567 954811262 823227657 543704293 633441911 248280500 59878211 54293417 27054470 440961318 609657052 152120853 69267051 212862649 787742812 977009526 978721981 43597243 968919025 132636948 84343686 42769290 573510782 683099319 740472640 647716550 646012874 175589970 254212407 420807127 503276903 463565572 555018695 654397358 115224206 524808346 106702565 679433072 880005772 700720333 174340256 65022593 724364786 221753976 895293599 467554049 38134389 970730763 741291573 351427539 266752085 221807948 738893946 370349520 114873489 334874149 879120445 533876130 610647412 615176886 627579434 154035381 226608801 181049410 876570141 350832697 979601754 225078971 635293501 695018441 617995113 626424050 234460027 906330510 976985451 342000680 312225243 559614876 405467782 361327260 181008282 419110582 843913592 597373481 702682054 532925496 637899908 633418579 367806579 497912657 979031611 303490191 316245739 24780333 313710508 619601093 818185138 225827044 801066616 87432916 864078156 585440822 894684919 993456624 789204344 493580446 829108378 757723534 277234493 841945229 825233728 454241504 146046662 775854245 873449610 694889705 463145791 270980892 507157957 958306153 922229143 436417193 683587455 801613670 125175630 356500929 116847191 297282715 301222437 919707086 691857113 658656052 491674721 695820394 460812674 944486321 683839159 314026402 207997609 429368279 929347884 703417262 796042483 206785477 223064298 790947046 984158216 546509009 145364260 331313304 862427769 374114744 445995132 246855700 158583276 473887600 357790025 359074972 391478088 180078647 987984134 68110807 561529386 155651931 292835467 784392090 67599830 396579150 151057288 180267784 695580167 884073369 930809774 3076544 883565185 218471322 340145327 505268082 936526638 482481389 82254374 797740224 595853748 974029868 944651227 183641667 177386590 391612134 220951795 929773294 986211107 572865829 368198789 276982652 553735486 340845500 375534052 298698910 772824544 874374666 374322529 216744974 48512449 172632812 103711931 200567026 167253034 278610873 955174029 773781268 733675038 519088981 438681986 943122694 593054124 859122606 461697834 22791654 777516126 509964982 952598498 766021496 961923865 289468473 228416864 102313537 397201662 219798267 36534113 241808334 752183370 932338243 731091012 12120509 199253756 97287824 85511316 158919657 942737668 150995306 24753302 469727189 430263502 374702951 913703216 912622181 748312300 701662973 553903427 635502932 574769706 793881633 369188699 991443367 732403573 942383316 920330725 768602435 816439796 899181006 696557185 978150412 120100083 763539899 34951486 329531121 166462771 620529401 150606483 488554016 389087865 827976401 638798774 949032248 621740287 980402906 859997763 150767183 627644856 470095663 590853585 988857709 377697370 404499285 988686412 811786069 618884472 58131042 226839504 748594337 426534352 243683740 609212387 122824838 257147484 163740304 190943650 651983575 497564824 455151392 961330993 339181194 790842901 172912033 444008519 632170616 612343059 50031847 546664308 55800217 652044375 241749988 329555761 44465415 978134300 540196616 797350242 327384135 580761985 151571864 572027708 894859793 516191390 667944465 44761320 367386726 379636849 145830504 476582952 550536981 345409810 474259833 343576838 347254981 794381712 264202405 289815943 461452526 65322333 740053496 259954831 573530646 59439390 463712957 769483445 94232148 343326453 349321498 954318611 964735532 865451055 510840889 330177272 918458821 688851425 242114230 434303139 810514973 610529586 40500027 329623301 502648095 559332736 141381882 912203344 453744360 425100500 490098953 840893953 164192489 189961891 261283516 284575974 53203736 636722206 773815300 996539103 709614769 345394432 831970725 620337038 549037150 936236034 528813183 867310423 389370788 59277075 498462285 99345901 148703885 287530585 890358886 112823821 297786706 159824119 187544810 606773323 296194522 954756990 134864732 40496656 28978463 77752731 152885591 312460991 717142377 923285887 304387211 783199979 151409056 8341272 120040927 274818203 153520538 422440587 971537550 259664707 933749646 785481641 957483144 405513096 348040842 807670599 303720587 59266653 79674670 444884347 460809777 901870316 943445253 456601581 29376278 606922293 620350710 208174726 132362176 255783589 125244400 433695963 668044054 433935578 108417278 991150372 812359560 330562564 753765418 676325881 338157567 314143214 957326999 257422112 450408072 882362499 969303284 882304187 952816483 988782229 827889296 582099585 193573641 988569949 105926788 319779599 506398661 841060970 570133786 959618305 31156089 369413070 692866607 328558960 953927377 745803304 473658300 505749952 646853076 384591600 940034937 607131534 668316405 981772263 562652828 73129084 122930752 729475202 358146345 228294158 155432808 437403784 320817290 555471935 652206426 184792371 798432988 844103679 232827341 674597932 897132916 724511209 545204710 861585444 162757831 560070374 897089658 955989692 166378009 421336167 906195700 554215061 883462703 1001107482 325073092 949637474 20123683 543536250 139398678 157241922 894892612 129306259 147974479 915482744 691922011 667740010 613659392 62506554 346748977 865513494 757088367 697634034 943588854 276624221 907114104 839671128 556032710 106311351 479450529 532152566 35200255 898133860 581735352 467107436 332064925 834922388 548370826 237695528 981306759 188363894 627487563 367341628 815376192 324874208 670686245 658979890 756456306 333381732 903220537 185655828 985322961 679181974 930796574 133889775 140796830 808702327 916681099 63200864 734553169 92904733 772541233 307844691 310770306 759591918 923308517 655943143 48180568 105338567 99448615 562301714 203752563 805564544 108608780 832898135 342993242 241960212 528497579 1001522166 731493509 655823387 492718273 413769128 474327026 247907383 822574836 405109895 455847650 700667780 284820146 362299460 289981829 458464761 471802196 270944466 250318510 663302499 742372635 291284502 499367689 96177039 46622296 1001360066 171717258 152021903 407133562 263080468 141181931 715419685 668235139 438045622 702520083 37266709 514734565 787028971 560939135 331513259 950016281 12021980 975776270 701954504 763840560 436108333 911064123 412611126 943059932 166124449 19653589 386514821 982801946 812381838 503047356 200073276 954148577 687182908 187822807 875977959 273808081 868484696 599066585 81972532 708990764 983003859 745012381 194848459 427345051 728242646 891998798 960848967 750838418 521213873 725042223 242891828 902601024 869199903 619896515 321603320 556552624 911818402 9537881 793666648 247276486 943990474 920847450 712981565 316889986 980625961 835490343 882449217 125918496 938761194 291994096 826585803 784008095 139682925 886182801 649604217 695204981 8142199 462143662 325755620 52079386 567893309 355884200 577663834 764415766 693229157 1838907 571485882 115845848 773460310 801310326 826181697 673627187 112849170 22603873 359058912 160194718 944068653 56542779 82458351 781135757 549532299 454532408 475635796 290497263 746731013 683865518 639705912 451383656 365231574 656064474 926794459 973749511 526124015 548192527 889384827 305233986 423356384 542450784 387871258 921950741 903258589 868498351 373335046 917938814 926752823 527718778 238975088 736316366 602105058 685826927 846902720 721021343 867557769 564474195 761858106 999883916 875179260 935324696 150265408 657501979 849764740 817468436 961040685 744403334 607126473 215016884 387686360 482864782 373338335 106870913 918189511 649065883 564958907 955844627 343599206 771748050 237366840 447680624 832386406 655342017 909187446 457077526 310134079 145864028 796762915 901884295 448484539 737554988 834315937 637591080 860801369 7459420 350987926 559686591 914232813 170955949 380653920 850279114 137021462 262123329 125406452 966970451 141753336 133581810 539299264 806488615 695704133 148863418 13744557 687481191 55114213 636086761 779069020 13113218 624323079 593841400 676350234 136049228 120969646 836709910 840131483 691782047 766046121 507774297 597826397 873147785 448349205 835094374 351531247 256410622 924950937 822081588 507829436 491669353 538585205 395492672 81779932 543304887 580093319 763676654 660178914 544835435 555238913 419718798 880701232 993372798 411387139 422994659 454791162 788065068 428502971 440584317 302480306 22611640 619781412 927622811 370516950 824537600 217345538 504318091 964317415 855023586 387116917 472306535 815576656 415813436 1001122594 847918267 179154004 771169592 435525316 610809114 969437400 540310387 414491781 575922286 697568637 907705694 401379571 157876769 701696829 160490035 527167260 90327766 268126701 339135055 716054678 538991058 384525431 193127070 554219 260589289 136965526 280793818 442636798 105411060 969762219 172440656 301300577 255894166 916573742 347849798 143260364 800292855 125073015 937701663 354227214 475151522 347808648 890846315 884916083 268277653 694812388 699394266 276301155 635464492 474798304 174926348 562071227 906654813 407169201 245732225 743242852 427428826 736598908 256823183 785537974 556351006 461025535 979795589 534445179 480001951 764021279 361470489 796668719 929705816 511150001 603361436 720569079 455769141 575107087 337670715 359631441 214563531 235612220 897596553 191778641 68885646 173214390 406474017 39609452 658113195 282380505 964059506 576592915 974304416 794606893 895620862 949972716 502186727 351079923 385261788 446098793 202061050 964340216 467993460 384152547 401092307 906519738 165810905 926819830 660965229 821572337 780787919 456950244 408493437 723260079 450126759 163611430 418536561 334137131 200630028 383585453 577201525 899353806 187805529 486415008 964790961 487350093 559688447 112460724 446855311 875610290 983687118 757552633 153929126 641765284 924150188 56071737 80098302 201059502 209573583 15840376 393587492 346866083 698237568 892213019 51978067 472642606 595655709 86667564 405250677 531416627 373525518 549438275 122836511 735309299 371286125 220518444 744551157 94703478 112222299 58975690 842026082 81381418 243614463 953062711 91722421 606027070 808568562 835486018 108795764 844661041 394874659 955517474 935616577 797284714 173796906 225597518 920481707 696466289 297872861 892284349 271702787 123525154 778532209 96108441 119141330 633979035 890168130 923512362 186681218 148790156 547543248 790910919 836569356 579145751 275126668 653928060 587487526 455096727 370504203 876962059 596835403 135439217 610652165 309699152 161541032 910263979 813069193 745137714 671359968 489296148 114311673 868092793 242241935 996726937 9501409 790928314 452053024 828153876 521025285 455620164 573614249 828903259 814423584 335763983 896614650 508258452 612426287 511064280 107015801 644116019 56819580 577665577 858671069 159796815 504305682 385169365 146718785 923009408 46908157 857530398 834902953 229756589 193008602 137945072 498093252 728619993 561668944 975255222 440260817 28526989 27212206 782250163 769543973 953070881 441930425 221911341 399257895 106253753 188329391 797635521 630603605 498251937 107673012 772039201 250106969 941053092 1835963 859271435 903646692 992040268 190944813 472842291 73195071 440711915 864507960 900406442 167294332 752853515 764763217 111445444 62652721 970251584 721810462 155866142 186894228 255250500 642904896 264805083 856146057 478179172 137401035 886522554 297480740 234747849 226365938 394293119 875912571 268796265 236195765 219557143 237334358 239446119 982216707 455702983 349061964 252279193 83229665 697652636 566041038 50698224 407844436 536345741 456121179 165308280 999171075 616802481 7708086 869656970 313218749 616051866 689686582 514335545 444795739 932482912 490517170 893351108 674418249 988793267 694696131 663896786 116466008 865788873 441075687 540550067 108183900 267027487 100109322 526509229 645708127 94725466 570136790 363523509 51481030 500071819 93853219 128062956 802829617 471703640 2516051 118940016 253722090 620667611 444622330 995596946 131486761 762615738 902873589 180011435 299338517 807704200 82800222 8097419 277182992 856610455 532481244 758422054 288040238 24883899 915865795 869605314 668337540 125994010 577432371 331853604 701012613 826679339 320683888 822887970 564523978 894148566 60051092 222947918 962416263 291107459 810670064 688316138 839728959 517611220 34287160 692758266 94038950 161959998 342295762 220312255 223458947 348337646 838227215 169762422 55850562 793713282 824005936 557477285 723120893 74402765 256085185 106597294 308625829 297155326 627578134 561438649 627380115 373226607 335941953 838309231 148062021 876475104 717390248 760254612 968342013 698114364 761456349 591349585 864038315 12242551 243039378 85602108 558994323 231565980 505540827 296590793 205493607 851950481 179218003 774070749 243725896 41199596 167073038 765480115 546579978 716567130 769533184 830378857 845940660 259775137 387219123 685848844 257747283 937345857 793204868 609067233 987641016 251738036 319705231 112537308 833224101 925922794 40337936 21303552 826511151 989321029 868412464 583231701 530843958 909196964 630144414 905453851 405208501 68647600 430348347 818340305 686860961 13698999 478790336 668520901 877551335 750822291 769148860 58338253 859399306 386177208 700549838 90708190 116779461 962047539 723462573 946749761 208793140 284828590 733194476 453212664 983626795 905145114 455191995 318357891 593877606 701241898 636689545 277685814 75691087 332815881 839585179 839367147 544063362 544989125 588732847 440726021 186908950 708932499 310845141 931445376 926248327 439470232 401655859 835096964 825498951 329844401 752463997 571768289 364659047 806803730 146623439 523981143 9373512 379592342 530402170 946215592 232113642 604642688 251400834 420569284 548551987 162617840 957931961 848120117 113331595 389091929 403407577 269727781 365005115 789311988 989537434 815949729 431186805 162986039 374469078 289280539 665576539 447146937 469301039 115085028 716273852 359557671 745340665 231389201 408781557 546099299 805209341 220074599 364943457 958367728 388900191 794670975 386778950 777075018 766489526 139786235 800127868 156282860 800321301 329483789 276883078 142980183 112715032 299824846 473585584 512172573 670969843 751677658 390276819 6674457 125582295 438248844 205349325 322228097 506543876 698973629 516413098 927254343 342968192 92230749 575786704 415002224 979650195 469126458 335394127 62655744 936774970 52671779 460082136 56962205 68844420 555866158 1002058804 731721334 824910536 577917410 557887468 87517524 39443187 789319202 735634973 810527825 312299424 288746520 570995810 748068602 999187789 423990110 839566040 891493493 900034273 951462249 286321431 53480325 350926565 258342011 647886066 695572390 566179846 492782926 981792486 597933330 342130923 576937615 310877459 167098617 72566828 617117123 20751229 140715864 847149879 294796041 650344119 716114922 927273736 988138683 633727005 791258461 909522243 453423383 857259107 177341421 603784546 806588724 164596952 740088787 802093883 931865397 584088703 650932440 240072132 465614777 112174934 662338687 673410497 31125813 879953167 916728141 593384738 611349968 893068539 1662198 801021265 627416714 35429516 522150034 444600899 991666900 333296215 280018933 779642490 883611666 688416383 88993231 463471773 904174467 28902567 729398205 909923090 489143828 856552180 301249111 27379222 362091512 151746962 443347341 980964828 852137576 789817002 403701952 675614857 153524003 598928712 119855175 441082518 251950430 326790220 132286071 266411537 189185295 905696713 714326251 794380084 136289889 650063909 57756934 659790669 402406798 144485684 930861400 328970788 245526072 682890998 105141277 76531569 322930496 248340968 736920681 82967231 187243123 925649301 122158752 505974757 79035902 462317561 327160460 145876460 161011205 765666393 977587360 793542678 642138677 616665003 193955847 915313481 353289883 542733634 184389038 360196982 616594656 902082775 230492605 398772310 369211597 55675919 655823713 906570399 833997495 670153226 539073384 695022014 516806258 913202140 313988436 580752909 88779951 102054521 628979987 141182783 139974792 717180624 716264722 583658465 62174677 836765622 598514256 267260911 459924371 513021901 463988299 267479193 154268131 165798253 48218439 388879231 117745035 691005519 770468193 716047621 605076179 264813108 176724270 626002593 647125198 685081409 205898162 230550794 498394397 614676995 347997092 719254021 798212767 737576224 337044033 599348866 706395319 720826316 423746170 316058050 307908239 613178954 680804643 786608746 86087690 543158013 242603037 512624563 666015325 167709603 688046707 698638745 872509556 79282759 130283286 368060251 898310562 357268488 790301527 717639525 434532253 34208091 2691606 620708555 705251889 123379211 437231569 177364515 560850362 138888714 938069906 691198158 190047714 755761517 548499418 300011445 675442182 387258350 8333047 184805195 864405362 996066658 360083588 100613662 391684065 975475397 893702314 142570642 898083674 205015763 7905969 506129419 566181899 604721482 636226856 101286112 142522946 889091214 244360628 934760969 863202932 615653358 880442346 21148393 893009090 793396088 152678952 499700251 758622837 328742520 285819360 632776201 237266040 908128480 173419298 882318375 825304004 49590970 555390368 695610203 761634318 193444934 637150491 148478170 102550586 309562362 57014274 665874904 186332650 822067981 25935558 515278684 98939789 334842484 675637873 274284268 409822128 987395676 870767645 285877034 607784085 157148337 690709109 511166048 802340201 634834027 145662710 880331740 594043492 827322292 955004435 406402464 749838950 731645988 802795882 156749616 664066431 366410410 233990311 397221362 247416340 472859566 381252108 144549998 404525508 16844766 964547496 398673928 669346042 108898381 782976387 996823591 482427287 868072164 833441100 905154517 496751699 34224390 143808642 189873876 205194927 692204799 266453572 458207776 223537127 601017408 323390994 231033909 971232979 684468291 282929811 654063605 503190642 602074758 916417860 164689855 452722188 952080715 465518919 617212230 450581105 684499158 161093841 103430083 269724512 468412383 471468506 633392609 157461731 299255474 54134448 701905175 307467211 257672157 507588312 532484072 895103121 538934570 265744933 159585036 523484485 90533394 623891743 699994091 761722397 34754834 390228822 300903501 192254935 310056996 353793891 987027151 912594458 350200972 622069626 303429013 803776548 527467536 644330269 479585159 800036736 490885811 194391845 145480793 47568644 599430245 47555773 105790065 312807160 999248501 793454712 466834541 491101103 11747745 15157591 382776487 629768978 915155004 483960708 11749896 160972662 335066084 438909054 628776430 14670742 395830245 975424329 596603123 90765559 283238393 825295979 720770422 203356776 993952160 773610216 215827648 204846560 896670569 341870786 949612104 368322448 189754626 852718150 645290328 359479473 186555752 870567144 834495227 894536429 689735349 855805993 253323526 699461546 289473453 182296282 533938314 183035748 365650208 921301698 925183852 742391163 595045790 722514618 370000772 708467876 417790332 848821047 694756565 466583824 642201133 883697523 162517742 898460 547536277 30792694 191438983 337058948 880136569 813465808 244410403 386029027 154206425 11657443 298235841 889724576 307597080 314265587 100136523 309949104 409081484 634365932 507839378 324854962 480414105 504955964 341266803 717555388 764644337 727793136 582316256 643221271 422244562 985313295 998816981 548361509 25944363 415108752 637908179 663313375 68032666 911722215 445817036 824300116 293250504 946524698 794443569 743136666 131140629 557008339 664801153 529765362 230352092 76835966 170687114 216552872 329988909 852460260 452828431 951937141 672996077 500602693 404022553 578306125 324172442 990011319 327581873 612003609 477891376 779825514 340625483 50507603 195949360 867055228 701079513 942112821 133102607 248361540 142954697 203690791 23429232 604877437 26775303 180373177 363968362 616471310 863703778 811383366 107096694 80982579 713513661 749206356 784355843 200090514 631558524 732914138 831158839 339710289 124597189 898305419 811980038 821198312 187687935 888235788 865200847 791618313 983446568 621395893 395520702 420837036 36832847 420624951 750905595 464927882 324960427 409335887 871520818 472190784 760778049 701856779 588734227 695448668 627125654 906826284 499974559 986373150 53004319 653146643 595389175 325601128 99042422 925758183 458879323 738186189 224719645 746081354 327359193 874544555 726705786 26767290 269486336 169991447 428169584 575726379 28691488 192264718 771851085 608050987 704469019 692143461 500162794 769446265 583133700 164150017 646774975 977382560 366495966 261213948 211986097 755050858 21328650 930922240 724929940 882939505 395371137 966131447 643674297 684298502 793622905 176649375 104179107 852128216 924016781 475798171 289192753 660186225 791717544 981306469 598683230 194249215 145320889 160333469 694951620 380300685 607576156 414410714 494498549 237458414 671610382 747933727 182457551 906217344 506938734 930803247 94222887 235952930 884267467 558985432 291083270 669250845 849721015 947729870 932305369 750382934 642020310 518696296 212486626 35907443 406963131 544567836 414860835 586258590 638724882 307761015 721147667 179978864 350771074 172571198 532209016 49718009 565890466 173060627 87933295 37037403 772628421 177323147 510088625 971953881 503541299 71572080 711094203 500997672 947041824 206370111 834697065 80273134 919532893 62768410 716884318 152655846 467656118 590685591 943661186 424321886 714647042 250871322 193275663 712584024 317087869 446110027 39300188 636944241 489765797 213743924 837119710 478310827 369649371 783526928 280211888 69346907 20426618 694916718 927919606 122818156 435213380 72722344 79646688 912361258 729062910 828962065 459604588 144747639 680340149 849538191 47087553 486678507 834103937 64522449 183895887 54846937 464292347 413475738 273599898 854506988 447065856 54332496 129630927 46753225 74549874 177895236 486934817 106225050 759893094 542305073 309370130 97511063 232953269 796569389 175888816 434407560 554521045 774079901 166912749 564667509 154389659 371103952 80344544 500543948 231434381 257335663 380353430 491803719 529033778 409090021 838356069 44065999 858699696 934698948 238907960 623922576 318893987 220953408 936970997 474359280 867468844 48205736 831918554 965720047 861670638 578149236 618897303 696568594 464515581 123820762 35774111 142324773 10232434 791870784 712601405 96471283 12960728 931708880 971842618 437123308 586375156 57522431 929277502 116742528 994721940 315140748 55792934 644745569 565187771 188354797 79523800 852224423 960843002 10231509 548067747 294647944 835309162 386943785 490316405 121499678 578745009 272765067 683057862 588212091 869718350 191547434 689620795 994341845 307950699 642608004 573600940 531689907 511639863 419221511 865253934 874812667 545769364 717294883 873059750 183724281 516242876 927828428 927283229 285114826 494582585 779211959 151831774 613236962 318263353 16672252 593670241 965501071 816135310 74462562 991239659 299575151 120723968 742557723 346789409 868445000 947683234 285928310 328811539 385597486 993087578 350065533 593724829 227686597 707172708 633740296 311020800 224140906 33596782 915877218 523895722 400994780 99215066 43468796 841267254 961491132 565487449 219392868 760574305 751391714 496701340 112116949 146614322 463338309 497128544 404595995 522517447 975380942 751458219 402497282 103961362 537951149 517730916 291527732 23546364 237469668 326946830 867377007 866585893 257070515 408220276 622333828 152313087 349253584 705387651 242005580 369782006 956141128 16588599 961729072 1898163 334870377 725469880 437513957 162153219 872976712 121272393 23504989 248929172 426500337 100570643 985327854 557419404 818655026 211268415 83551316 552489920 241626355 411939177 950755202 653504872 207264596 327326739 779127262 165151778 865413655 665089715 663102405 493731415 237757316 863253147 960257336 64492755 36437937 869549361 317418633 706746534 438259669 540598596 507514963 540024470 922184925 877323099 46341347 772938349 370259659 708258960 404281665 675863496 424994947 960417761 112021353 482922190 204973603 259856671 377822231 810592964 986770744 60753909 288668971 329550472 438901755 525581023 846816480 642722654 722964281 129281371 991390876 180574600 62317057 957439140 617223494 751886302 514064586 547565223 557952035 752000588 327474868 722862588 141535077 473427027 20482802 399365568 261831358 558737385 605882716 346358614 735283790 358934096 659280194 452846097 671768831 607188347 268147850 818978751 975089714 536797475 569177601 293526952 684182249 974368399 723278250 829698865 257701688 896949579 144559014 531718238 313092295 242885749 474662352 971999497 224105364 173194408 632878892 395859300 13176005 413993284 653091433 277210859 300055712 196731683 354132547 252767325 556192446 471436600 179990690 362177774 256348307 798481404 815672394 138492244 50186746 869419281 50974083 761946087 178517318 645591054 315001510 258953515 743394393 107276049 353247171 431043399 985216200 254937805 399086339 774149060 806622211 639577999 250371392 952267922 307368852 874571381 127169637 465150215 423772383 11817773 203356270 172541048 473122579 972612287 68270770 880317729 591046351 958402502 554120121 837685674 135965480 384388187 354392119 647869398 549658085 164761677 238852955 232855994 439569487 266589508 196106168 231156637 898297638 871698461 440961061 612867671 279834743 437942482 134474292 926466356 146733864 434607167 659582651 731864558 319963917 583120895 960291200 236929135 464025625 665006879 718708666 47104178 180338304 37905165 950821044 837435415 21330053 255515440 496881607 521542762 756410847 582788171 215070302 268215740 215124152 820567301 974961392 342217471 38157612 505199813 948000461 440140068 614817958 923630927 674650614 274468970 265022352 956807731 137290217 49918816 722686308 666348058 143258554 994386485 69275628 661038570 442372544 527325013 772476856 197804002 235824809 907638420 83418763 620223715 364721189 868762686 208419625 492598562 90071677 766638506 683870455 999643933 221603558 778548079 246011972 583762915 611665711 256886146 398189102 907654445 38587160 944606246 691674298 525737046 806291730 252290269 979558411 534108311 461300613 649573956 234085938 571017768 798461785 142912809 194562698 135001857 649246728 848638655 292251901 261344865 316063954 795484238 533348749 542758132 960050923 463477964 176510769 245170842 491666543 15344733 794162894 96866270 825662321 627689511 937121312 346315922 936649527 771233707 786164892 153381982 323064594 61524405 891170011 53610062 562825838 683546715 523923606 802479101 710862559 782707700 12231895 882166840 312574235 733460308 613043142 968178722 503674926 668988099 139167403 997084722 702416868 852993222 496603988 652899212 823720577 11032619 74886053 63091030 57360191 672825188 711493379 649824125 39981606 532195879 305959684 246783374 576208622 306068035 340094656 764193515 723483517 863703713 388010566 522541574 828024748 767864413 108563004 906045576 199318535 911805775 624107818 452066375 383156408 927793864 63915917 477223023 70008871 49583484 917118203 217153571 753007550 980553207 351825607 736449623 202121266 873257899 289558721 559836852 30104489 992120618 674831645 749116714 822902725 61995981 522444746 853636278 525059262 426697201 988321820 315676900 577980676 496280002 758540828 157659634 49966040 4683776 871189486 969431576 77272430 719059439 317761953 34655457 764097570 732023114 575473945 79895423 692875764 600338074 709340561 378411902 46670749 34110739 576786898 504902977 997564021 503899433 903440641 802767305 798699575 353652038 997561483 692926741 230523664 921615112 586663572 387562273 75126231 650518789 43228522 455117546 1002044979 612109313 329783071 186757110 892769243 540251635 472408357 186970572 750583382 348002609 776011651 938212489 526571243 887277010 235520333 219356014 355502114 269066498 327198443 813248052 332792910 994600441 614503440 565720838 728950168 517195133 517218789 894158128 552703245 848141482 815720193 543639948 354436750 827686749 412027035 425871801 475398645 308829223 565509816 723820592 244959804 480125025 654376882 618255288 412328010 172446960 169975215 468064728 272306246 627390722 103808628 149189000 37041342 179204538 21933507 40093285 757736617 545309006 82061809 26242647 654006010 710915233 304027148 476939878 154676060 125385028 627692866 294994011 750256008 863850133 563351295 163915279 215510441 720348978 228675040 140347361 402908363 785455551 442968977 311060306 466487034 552910847 17502722 979529409 482250825 804022745 275210100 369974120 889317259 84977328 901627775 417626260 734220153 371516683 557179559 404684895 322768443 526473910 429052160 279426028 302077638 189726706 459430578 279990429 972529563 458048643 807547419 670199461 380779415 544702640 177166621 350804958 149303297 209195099 98990381 510455962 333429398 142083685 403857405 40405143 100725940 946400808 517234383 329896361 544364064 562492579 161714933 892622009 742844432 833277144 681990378 129848434 46295290 503767139 825457168 750215699 20200752 106388115 164588645 807580261 762713434 724417578 205243595 36504076 791753605 15874475 698063255 354323988 846499460 952732968 779536562 770965586 758865268 526183576 842066498 341689481 710783586 994045638 207552015 345618125 374378682 874626703 919299464 980555782 353857887 817679001 42025597 231341363 154606807 120235789 168717052 87204028 796866966 383733424 848318582 598059093 7836889 948353330 946089459 538134241 11223305 154309025 553071473 841848706 545235308 623077654 638259349 308070672 227909436 835970195 493631308 671023546 311906363 906890784 821264214 851070262 133928765 406423102 507617666 982673659 698259064 682272404 191888039 96045130 998866205 182890148 991958702 397619657 449857375 261068418 342779199 301303049 608369254 151436844 667063140 272909584 887211488 831946300 516940052 262331007 326772195 7261482 448131167 172683383 259772023 247516973 164095319 723042569 748971317 770341695 45184070 77738415 708038782 29625957 88068042 60960185 399599941 339088715 96402040 848676975 675888343 770909500 879378175 514779318 48727821 858057018 92132618 263107865 933473679 85115540 714329690 561667412 558384496 893955460 32803413 443223425 706905082 142572386 648021003 481592595 94305454 588947757 258442819 36377054 720026672 407750423 467951923 468164042 639344818 391340235 989604824 428559504 195435820 675174942 389575202 585980501 457888042 734097285 607574257 592674506 162910380 773199823 452988083 346280183 914180857 67670932 6075802 112757173 804108287 914220926 744758661 585353404 941103084 19092241 320336546 634655912 772957223 951060486 696852980 955729218 1636862 617972575 31805052 439985699 160325513 703799729 647724611 319612064 909306377 100703159 129874211 576583959 502361669 581349944 358365021 989193945 379368868 144083787 302266342 270998716 598402955 880922336 678349190 620380449 580494841 760591477 526637623 495230469 569963186 943976726 890060905 274113248 269281455 492427529 275711926 202294197 789966536 193408648 166481917 755566150 733060428 36485598 982469707 951644612 317848456 984822297 537724213 4120747 509740295 808775090 1621437 525754602 303747228 176205495 555580821 748998334 48949490 95702117 443996059 492674836 38937524 815188041 331355074 799398163 362158840 856898729 63656263 815520768 415913128 341325761 518973642 641021109 649703226 107573290 39746117 152528665 145083522 364963662 645466371 377431781 87346813 257858701 892139201 45070750 543670639 742900015 617355609 443858387 666890997 871205278 912129635 933998795 367593501 207885275 672402721 133119133 982924135 513122453 158724386 201925930 63315331 266597230 414307781 622705000 388110530 655650990 377685918 934988551 429293330 629965985 518991454 565561385 295700938 489315294 433114625 743249773 739526444 533061961 963867438 289837106 326472856 714358326 902896939 928140043 11117240 609466962 80082370 170492961 185184644 192612464 965745940 493956192 342714561 778183539 616083974 127369834 484726646 392308678 91289630 549506752 136606732 91123467 525523659 516049947 657733178 283285153 640443353 788372635 258318532 810253140 823771138 256360275 685713164 876097208 48574495 4642327 184134915 952311705 919382544 252255119 766723702 807730258 134762058 314295949 316794660 179876787 412739888 884210940 99773572 734884636 918287905 706030251 654419379 519075031 302018380 169539840 391144522 756549527 313632543 668800057 980832390 584673701 300717709 556998093 385410676 397775924 877825663 146389375 405994426 325752065 75944306 997647765 59489405 915423717 426411339 988806277 396468396 215577628 813417695 78586916 834833954 110670848 628066134 102379796 576872446 197021044 250616618 690056520 112371692 966240425 426124205 773226411 427295007 933205899 800217185 589503505 113536901 645797338 322505919 336975838 563267733 752686990 93608707 608071787 462499894 839365357 882367032 392489808 217023885 586187825 914152090 507186219 999044905 626865290 334797397 610351170 738084519 321745786 296570490 972394772 611603910 69256746 471551067 557307068 999812746 262454128 761975638 7141529 173678982 940297790 465035431 406727197 511251408 743971301 824468492 395246319 266899287 300604305 658590357 203920214 114054767 713968109 923300202 826784996 677212105 788899532 964108346 724712357 384223158 408926960 99972343 119546429 235609135 903393452 523687665 809518756 10865857 534235647 554912042 73613519 746312960 797713659 449440409 580683564 985901796 888542376 177237613 278608411 184289705 127162921 262473738 312375409 561661998 771865071 984692077 221309387 228137803 284333613 409687015 412994836 699696859 110291909 339852326 957781859 276910147 544314044 295038156 564247806 165082610 419194027 30850508 742759499 526665649 581454037 38965294 140626449 67116926 717479919 915789857 715779885 85787825 796248425 56380740 718172664 549724393 49771572 599898914 547660203 906154179 409911477 351557622 69559679 635742267 439006639 791798502 820478566 306463381 869457056 398604017 849484792 118676309 677934941 862597862 568083613 859244168 460674230 541265282 530815660 196438945 386835373 83275207 542408574 913962892 160422253 964786506 612517847 425464958 169753325 41152122 401691098 373225740 281851612 867366185 284278827 973953641 826249809 771476482 108757103 651113661 365157461 827481890 382018811 695106290 766741621 358529398 217956481 535518862 151940115 598822840 670599520 668728017 742919486 82747112 194855138 616568121 158769046 600815931 746942490 296351014 164738535 839048389 227459396 151142603 830275085 924994838 202052218 808741902 595799386 98440138 190022150 268158316 740185442 257008935 66354119 2105501 963593945 859573340 334195674 287190400 150649460 704225049 589206537 477064445 361334400 51256101 649581892 978248093 368348262 499978611 840006570 864304076 924809124 560718788 661590481 443821821 678873699 482939675 896484003 150401173 652690089 997236478 51112772 621430374 418432345 541035772 65019973 964233355 959890022 205407158 718691087 458103279 554567678 438946623 904816441 931026533 262114026 514680116 391831035 950185685 680925912 315806303 184077299 367495965 85581718 561541678 667111892 432512694 142290475 980137207 968547463 603646028 706945499 125783806 624254580 241527033 125272560 743362627 347209558 46184448 694199485 620039349 462658650 757216472 544907356 801735252 219883245 358952034 916358701 528979891 590402789 611831959 773090773 795383021 902006567 737791781 584261037 411013450 791366494 269651951 538293521 516363106 529540401 769774464 93393004 799698603 686554494 955959098 12295636 529222207 709259931 280352373 413734743 543940885 481178830 947827322 92873914 111596815 47689109 28542244 595035188 327905065 363539374 796019727 604881341 492181083 410231612 895386234 690342628 533223849 718808677 618247420 195770202 305663976 437296803 475685881 695249115 695002373 600736414 293702271 482870611 926735159 772866698 599395236 661203541 525053185 370168927 913630374 938014662 997521944 101651927 22252467 733453854 307625750 633451021 583865320 349195764 459817170 348094210 431678092 311951043 660477778 937406480 233037815 198594342 542544473 918862599 462302315 378753110 887540373 713249699 506891442 262278272 885776068 171802708 816177388 372377296 232890769 282223472 463007158 830405538 153207970 235127015 661536746 293037391 772457972 93036370 668914862 162053425 262209150 639382790 743206287 446845374 337339175 569424354 954647345 756944797 590772459 851248559 423898410 194525170 234334826 230255152 667142994 602136027 74576915 777070499 425926441 328015298 607425623 324244383 611415232 622317035 445857883 693380868 533526778 776063416 25404652 880576984 165097537 74822711 643568049 481801994 680987522 337964847 657429951 578614723 122344456 674203052 957813728 62248499 180282406 863491198 542144856 807029135 675533434 124542165 539043093 63117492 489404736 623617680 375206786 475323026 744386228 919230361 578113627 585284376 927385122 52738851 530810438 835525537 454816481 366967715 472912112 22733336 202148207 270208103 1001697195 269720478 922657701 814641299 880226796 538667137 388046499 357616908 224731240 938221655 383702322 186570079 817854843 679406399 9591661 476172612 346958157 94084182 520979026 753757909 968556902 137459138 552605218 236633905 574361380 734107972 403668536 477745122 131426140 446346528 138762554 305463179 492132249 156304064 845356399 367617415 404177346 656175895 301320216 124146578 99887836 808150039 291639334 318827091 832274962 541156459 719697385 383919847 88440410 711045567 681177768 292449874 881393204 960834077 110090282 378417412 784230881 675926229 43054390 494237780 365048501 701957543 715530681 119705472 941803585 326613539 71049304 310995269 159619693 710390812 133941230 171270737 431478052 995907174 361590592 968525182 660413273 445570272 576702945 512885959 911503288 611843150 360852576 86050498 101711277 574943990 487578760 992645488 781141023 239703328 805745625 912000740 83997251 290123578 405395279 972130105 259541639 700744938 668282134 569530321 225924122 818896265 810542837 549459339 328502345 27693955 947874105 885882373 419272256 510236943 594390617 226455017 131720213 716332817 640770727 100501904 269704809 994433755 57093244 684065454 329038315 73330693 242474638 590999447 706381665 500733022 355062605 37925073 125035507 350834700 644279609 862061411 629724864 119779385 682780396 580035980 617270860 129975276 64189040 771616514 160376110 509935967 390117800 609610343 972112674 357374668 404758528 247739496 158252009 322940368 691709658 552071034 629694318 902629569 389450983 439664138 106971363 644136421 176227674 186748524 563476257 698604549 359001405 907554301 252556917 902426696 449668923 298332041 318065139 692918287 560229780 845235999 62059858 954368513 377779212 475480100 884498108 736402711 95155941 965331108 332976963 451597548 472291092 361497040 860685275 860077231 24167875 465148865 463779161 192942071 288166665 835691457 21904714 378369944 607157377 955507035 580479806 662218964 45948760 870620242 175962703 397376132 237158668 690937187 373732589 832958745 122310492 523524447 638780478 640381695 171358892 511478618 201379938 635099186 767073306 833334154 890257229 947049190 530801905 296001055 745252483 634811239 641716681 537527544 667981741 453577168 489182574 592614322 355116653 228991412 602306909 140289122 579566493 177262071 177331466 496876554 584898015 391592990 1000800608 100682452 533383879 459966892 729447708 362157176 941480626 331630027 965650288 491907673 639207623 94585993 842005335 640737997 461305600 271191759 77371918 336078605 726571483 124827812 411042589 382497127 465921531 472213349 506532588 705947531 896986067 211043244 79938148 745068469 320578655 657304467 359019638 800130832 854001902 766595645 75637192 580692801 239609700 945118788 781120307 482282404 634348608 331055272 228741725 296770746 996120377 727985630 686642728 739163531 310188061 51780482 240903510 8095944 443978135 144899576 581692517 354026210 314262581 158282659 380058481 654439473 553391824 264885170 111680322 517452318 307991314 405116401 802697561 543902761 402507717 247955392 499426257 582653780 459530068 6932473 375675082 960157370 20533996 330418076 666829552 407316290 979023787 363564178 210038630 588192680 460251887 275401504 410070843 895006248 639066480 276012919 646523673 43131391 94349308 415172200 13292014 1000335642 194347372 996652192 364673314 880677519 759446607 21802501 876404122 802185123 113454921 546901800 268127766 632267600 225532612 950046044 915971362 218316734 314448870 210286335 140579219 498976396 608923322 169380495 621980245 620946716 833207580 139983255 304150255 90599377 319882499 448322033 197596929 381332972 609929733 90291468 446843460 75014845 834366407 447264461 377786907 224916237 217897535 479895132 453369977 27187589 583553323 991957276 259457176 281486169 529388827 702729213 202475225 339041237 53174486 935545841 896133862 720766455 195783070 285742596 388340222 329852023 171771686 280698610 618647119 22709832 667659884 948335004 175561828 574176362 659146641 797794272 684203636 93794455 630726203 713471928 979793433 920962608 204765743 293979558 996477333 402619599 616997017 640417747 482346542 400616892 560120331 434288322 591330514 773760068 634578217 70009999 353921286 253511554 138474958 808557923 36115608 510733991 778011696 171267308 440335154 961240433 152642811 870506784 546770326 438148330 273244147 21349188 225925650 477028702 716251352 180437744 859254550 511211287 453022554 979817772 815043896 273415782 167989375 650826456 869652471 574677697 695176050 873995433 944923342 691329431 841434940 858068865 459191660 732672692 969176554 411720433 403790838 795888669 204002433 779071590 899200352 18927724 363160349 931231497 867110693 401555425 305353255 693961477 258479348 254154824 457301038 511935639 654980683 857233992 699483374 698016803 138823953 663754329 547303240 463629150 600225978 110014847 706616647 401378790 393144281 539240285 338578712 827058433 323950774 652246234 428825199 622520873 929014535 672226596 204936277 913753823 488965666 892288938 624762402 781037872 901073806 226872580 305028825 606058520 177687746 134585775 764944321 203216827 594612629 773693385 963633323 376764648 13722009 715813397 286139938 882357210 425208734 862653973 320836287 837695723 599104999 872386684 849368279 687490304 166183180 471138654 110909496 198717346 504248629 773924470 504386525 486770572 84392180 672208619 833210107 429847158 756511962 532840904 909082280 56670331 161506014 462422461 654945804 410308961 252783513 310489145 737195283 535742067 839504683 605462435 112894209 917104677 200837570 368453567 582628565 331077163 529351110 529419973 497784278 925886775 870034600 729531491 127973706 208785842 965315952 192506876 31100673 994367123 686802027 469114244 554647462 236004770 526883145 589534697 472283953 243034331 142576385 214965054 840479783 377263253 676302618 173104107 188593520 996141772 930393229 306752987 399995581 617798368 339398374 771690416 517484526 691379167 950926045 561973688 687316620 840944246 565460278 74045487 486622987 663668431 166256061 933480143 937362783 306592815 741464086 380493798 731404480 895509298 368617614 689736426 936122612 698000656 317881608 812125390 955803547 769117379 366132765 205723706 38401100 219319802 940575840 236969767 536478436 909982962 711522770 351669122 957229707 245039505 953029168 629976272 24062425 378464585 662238055 40698087 679055695 239448842 3632642 33786152 828412014 368823829 793946307 341966520 783131944 300644549 876143887 535660192 486671389 813214672 827652007 346199185 640811946 317341275 559378203 302292406 656905219 225160436 450381616 468960526 932489939 969016652 58853021 367877695 193717723 376811828 455099867 934281710 367429402 852479584 331845729 640954454 996430593 439389139 801632838 517757797 288897826 606071868 761319183 593104331 674651434 781817834 261259014 557081561 751817348 508204067 373657849 785185578 293628665 468210119 723434911 848598740 551575234 529305488 423008401 335232869 499672349 667005366 479498785 123685912 556684625 705774094 269273565 702474373 915208260 510816932 591934743 324520768 404910613 157241781 225732054 634925320 250122094 104638584 870500258 712616161 225489892 137125975 93032248 989468396 321543748 395561486 244270339 67937616 309891682 17450151 126610475 539488689 929337755 562541211 476360114 320497134 523367270 94000193 390757979 131486029 301528777 651616225 560967157 600638134 125656113 290671334 839161673 789572970 894205524 996073282 479817506 799354385 168253968 948144415 991343596 741094263 256616395 524639358 223197592 846610719 53977553 921930079 816045101 784917392 742682928 466264052 62499851 506657407 889312339 788700627 11958333 209068453 876646080 710154741 916193307 786092390 295622799 130454227 612202159 322856460 839923801 727541290 357271596 311119286 222475296 905816672 525180400 57894575 387290026 42125546 841994579 971245635 688258904 184395871 427147586 723013231 722385475 149505765 544485249 96365753 492384696 583558555 942946293 534203782 473224516 734933015 151919371 857881378 173428604 312615664 53626941 415897659 592347353 869789497 511594986 767641891 45503565 107052160 87846363 186026599 137356381 146510079 412526116 827595324 868103056 449582992 876476487 549775366 502014480 894570942 929665711 138155535 432073020 439533967 203544730 251164080 97120935 898397671 228974186 267881806 878497662 775743252 21372352 334190890 630207660 907487457 692718698 130948204 789355072 415849026 480967590 599352745 734620018 979144399 156675613 68848839 261560057 543306708 576053973 647550221 281150990 774137268 272303338 570282359 694823545 60272581 658169996 151233925 921610209 124856450 518564125 515663237 200119432 221802384 696112082 926268439 220643713 296317430 221858443 221134339 85187208 59264847 634955581 735928995 573824231 614629952 947454087 219054273 595077164 562611999 22684249 659339854 311509765 618107791 698485156 769610815 138169175 291932547 599985817 142104389 383877187 973680752 981243598 352219368 506343392 298353593 68474468 14171311 384868751 674769541 865561194 563304587 612734769 263332920 856161255 963194838 151882075 460600052 779466116 239003169 871926124 613732494 504816224 877328290 438473547 876046570 528196693 779247939 589802864 126258000 603914494 493275005 1528774 710872755 233210464 397374588 5390767 37088722 675194304 347197483 39712863 582370925 261972522 600873274 425053582 178784526 224364344 416664034 883455712 298150343 670952635 169674526 139518023 700411294 194840859 564660406 463057741 722418137 933655296 783359214 590169372 960712527 279947586 661896864 923513129 101024980 24339611 510562789 707424668 668850344 190310021 629189642 770120977 14289311 641237290 404573570 119427872 314741246 313948209 124764654 230654759 817687640 598984324 980598586 742904516 404523743 992228727 550020601 45292865 273913495 118481271 200916661 803065493 767657712 774057390 279487159 735095213 279285753 91196428 558592988 274279478 449611929 713446665 845150880 998035186 165515997 552274626 938768384 20079788 859989318 118244368 840276571 847386376 937508884 75984474 26103343 943980905 727444483 483874358 303360851 920879015 769572983 771409216 818416325 278347435 555555341 306399468 848931854 816470011 627846772 645008370 558560073 857701150 540113036 646955368 453324864 41197708 709613130 549521065 711210848 748619578 595318715 753809035 898525258 493261424 234731551 288810548 135245033 259508582 83217768 265085270 657475358 501423792 74549157 476492352 751560371 415937762 176988112 811552279 595604683 688401665 216111212 542001474 141167568 646712015 357621380 572931267 553953100 677597569 471472172 487237393 356209299 824218313 543598518 25585733 144613809 81055390 783110873 984020069 686367521 769174162 511099650 956419404 679358743 842783857 546256268 965794984 677716456 990134791 686149300 792175134 21869607 831793285 473739014 973286386 69191098 926795653 830377326 218530751 255522753 114617336 422585694 934877411 209600040 311780572 843508052 851022636 813054180 335352327 507147272 641207024 566390219 881824964 54688867 98548845 22277963 124771721 831726139 445485377 883835297 741090833 307540885 408857705 543987860 696248018 285899935 769706404 110675907 183241289 724107001 828954120 709287228 408779781 367336088 297626284 930384368 416425701 343319001 503313821 737122820 93877196 975707530 769629609 715541727 124115050 240202257 496687444 932370482 140052613 60245641 901174839 353433487 521823619 828570853 812350285 362995791 131072399 90469142 256417360 230737261 79162143 236900111 317041254 295850398 200228603 625461348 330845936 848021434 844142077 484943946 801914631 190679524 583990879 118221278 753984745 342402110 792809549 356915379 75647144 128133392 301580478 740578518 177050832 757928953 295258636 609403144 62071399 43783397 807704220 81940518 481496860 24256457 858059774 381900026 972330937 232645261 98565628 407647439 425773756 285105084 14038072 62854657 223890505 359119646 535094520 83631065 711797124 773484967 987396622 407152197 528440180 303556786 469899048 175857390 482384033 199831209 891399854 941059705 521091431 886804481 640464351 687894428 114181781 891872230 927290648 12828517 531377080 980804699 179398381 872558943 228787161 411267299 637095162 237837883 681828700 902791434 753365438 611072663 65306153 503713395 641651468 239076260 950081465 341622534 317596216 824358268 418056326 753284311 553745506 988751298 292712593 10146261 18845699 715264945 400409375 127787118 212451037 882828153 69422843 711563861 282423955 651509745 123042970 52449714 841315172 603876502 382289720 356953959 886800896 148486797 733496934 306209472 616701952 988336641 966353085 371781156 74798845 366395750 923388967 302581536 789240892 933656253 73791351 265151670 266704611 629271543 159364794 931631278 807116533 620473490 879507699 138678181 193803113 244545153 477913793 477737026 942045508 269836760 852843998 669072295 53194779 975475535 653237460 735788945 137831819 985082470 454869766 858663282 72982465 437518161 843203307 531339249 727888890 800909852 692273492 808674350 655250171 571048042 594732420 479628559 551847481 377110709 347292166 355215854 282443145 714327240 958357319 213917105 968098813 915125432 53361672 238963223 427819725 96597253 163892233 874409063 457806595 133191087 581250222 42733724 589202102 723139089 381813521 712191742 731055110 490053195 845803826 913599253 980663657 856953281 540966994 929358565 947509600 457195257 156467954 447175442 199349260 674930959 396384098 731083283 248563284 970443126 911551022 655054554 804347627 575016392 729937845 416488617 169627970 751638585 431844574 301151820 140867237 756149569 433055592 478876177 36612490 534843452 891954698 537829272 897886766 28763842 733497598 240034823 565120808 916675148 59460129 616582454 927691837 241222138 148277901 490623664 161739868 189293387 129452485 207805814 618636123 805978537 679982831 149281429 307886551 461768839 854328465 125105504 412411132 982629554 200190384 175028728 26393776 211562 220315649 466434885 302070455 999560230 168665341 489723854 386796233 440532716 439336043 658650244 155117572 645649193 518951585 157874293 636827718 968920193 91435568 552594798 848967146 908940452 277679245 292881756 356773463 279036745 683747150 157415586 406824203 260970469 47846591 473774945 800851901 699063561 446670647 352836756 365419797 279346263 79419078 287631778 207588993 780767606 732679489 571053824 316628635 859031959 588877691 48661102 863234952 284193717 341330505 482230946 3041836 944791814 181125216 845160985 590642724 514083198 425577584 39252715 333575417 897188069 124034485 424450668 916171009 90848945 777102235 718217276 750966797 934335626 695556072 87148727 108236526 95137287 467393354 805515983 791089101 911788461 663269411 685761281 152041597 321774071 188667224 889823693 355398188 79710478 774971808 607665351 204419629 803664286 256489630 27581704 601976492 125859076 725987462 243901085 139781825 887759863 490959199 380089837 874746716 575295876 600562023 125089900 418598067 76569168 751303376 669454502 37130543 796204289 332758211 774326365 827556200 236847647 547532956 61074851 465405209 519974588 612316274 913372046 322881664 731326290 465777584 420319242 700205906 117274067 764642651 278030056 719479615 290247760 256001730 83948073 928506997 179925906 67645310 78956868 193393513 460870540 658493830 36618024 374885757 182393717 407991194 83205073 391317578 289844270 609042182 641112974 504296156 79672461 313330232 472853942 521710100 373901565 588177963 369444643 560561450 701026995 983776274 284191243 860861176 607180249 261200962 741334522 584753485 603618602 259257237 20012976 133970823 234939395 192032749 61534536 472109505 783326173 360987103 142565014 572217588 276543930 240009053 162797746 803559184 808453801 121474407 890617793 875310305 146841510 772096622 26970497 861675340 845590776 740823639 425559855 567423847 83337481 26614348 768636982 954055203 872401298 148792963 472427803 590342711 412644088 286260985 229841960 814628204 271256938 408213664 926034181 975646916 295268633 339195405 893882897 737992847 630369309 582132108 244564496 733311716 300174702 1584387 790798299 74210781 840697228 653367522 429716260 591064231 665668978 115658375 114630897 834978414 286040672 793029564 535185328 651869312 524316427 30154092 921883300 347940879 113702137 78558840 334473239 248559598 600903387 794233678 701373138 339793180 548846174 425542181 926575395 309669973 898294708 927706907 756554829 555727449 404586704 811987805 632162635 274042258 265218124 429407726 727732100 224710058 450102323 739617179 674479309 37563168 406437632 513756244 687655149 909422210 443551029 615739356 121390147 521244538 541113228 316356742 743263112 647324199 961409495 396301459 316194709 478334292 782581500 223041805 680716108 226377691 641805943 31058100 424699618 462000475 249431742 863738554 777597228 302739136 84344353 90532427 709342723 735746140 37453517 484333088 582065183 351017809 120792670 718691670 802225508 416382876 595012077 292736326 643224359 503302079 732144900 1001530418 402404579 833303196 222557737 91042733 593962985 716812050 776417939 712931236 834259629 904825757 705035261 36089394 492849975 790336087 19319841 262966065 400490491 872128400 396047 819987217 342360099 714040959 652500840 180695846 797989259 248254459 823986112 438940537 31206256 682465851 518454451 166247747 96749640 134068944 539132062 942774298 637206046 600033424 992308428 924947581 411499362 508292681 710596914 523115747 499786837 741448370 275924158 413836852 25829122 149322106 835663590 396207413 198533153 129923505 460371536 143236758 768627714 766368756 94677778 253599333 613667330 143200657 103744562 70577064 952180772 480834714 354312728 930754702 802704426 763413972 986340094 692253632 645002412 227976325 737022277 33791183 503071722 815248515 116878472 440632865 962425506 568809306 564064003 986670020 457850922 290635819 64502987 902906322 572370797 891265939 677791419 162894544 867259616 37277413 349899127 446817537 259531991 649104283 171874289 44055900 410514052 864984390 323564821 793573495 636131721 985917603 111543501 855114966 618952085 122949541 687289644 496638873 37485407 721950502 240174763 136008837 352756220 266657664 935429077 628645870 126141925 698698018 675379139 843128142 284419607 395732682 812878197 595340558 32390945 258761225 778486968 850838768 192927674 694110545 966108933 240750285 469266200 492846817 437533768 65871817 853337422 896742522 155957933 347820289 476301585 481878125 423139390 430686043 587067235 607704648 174892080 93859966 473894399 147579094 451915074 287562312 876341788 443322835 845008633 760436356 491063971 1649547 350716183 75335076 567416678 511149662 839411591 930360929 129720842 770705923 440589968 642670476 426524303 736632298 616148135 623482573 152815070 17093043 454920921 399310237 191412842 142874660 177890072 528941651 878917239 372813729 64286384 133173312 33727064 917264007 903662223 116508512 7122458 65887415 338314806 422570351 617685152 199824509 344476130 593995364 274472615 402414150 459594250 15964775 175071422 94674859 71596720 849922221 433232357 565701564 834675086 943262462 101155427 157810779 810225317 642556279 249804411 150012701 884242047 444608640 864710696 318011134 111678206 381084840 229196197 242392222 632378712 504007145 204945775 521411209 273914689 989289544 712250587 662541825 451424462 654928602 114316586 795821062 960909268 425941673 740346494 583685059 460457148 717363976 435576146 754882994 78149652 517969113 402893549 216235075 258079547 998006616 871790362 538626121 251313986 664553597 669650475 37114380 571456748 978097997 471921307 487762850 829083636 192598851 155953538 225077243 933349790 446082790 565652425 900607058 773428496 721048599 798145838 834560016 914967051 120251221 467064478 685381773 766570854 154633881 105302902 555927892 10019435 700469678 988618231 893594740 274476315 671448665 427588252 440737969 758852914 51918585 10928234 610719584 562888637 488269983 391799584 827332107 420357208 790748511 814895917 320045774 851958066 518115082 611670941 957122494 830946552 54080504 376148938 227521462 558251203 242332070 693742680 368260893 930862332 698575731 972245875 183285462 454088553 57468168 551180745 24963208 392834376 362861893 743044923 770089859 578123649 578077900 907893304 38926958 131182730 273616322 676433394 567720973 62745690 694207446 781637281 312808624 347797914 83100503 158789509 209168792 21379227 538255279 415772699 334811368 620975429 434581990 207929909 373703653 112337849 829863094 489101538 879046239 466789172 725350986 742961560 108399017 387536360 41657576 908685670 408208192 879959141 970962772 359879377 434428889 37087583 164074300 455185880 937824789 542608026 900389693 407372010 85150755 145127561 31238475 911140824 82335648 950112823 841992689 563010492 265291756 519038292 780383166 474898606 508259771 613314880 686685102 117573759 747503953 622062103 353891761 362669422 612499689 13506325 40603126 91446318 2609809 522989235 639468716 433535969 660883949 493741791 102977058 446344922 595653918 936264531 671545087 963477428 613254496 75596104 394769626 996160022 894978487 931472621 467905503 900976076 42211174 79077637 21803771 989003888 356888182 661395162 903851122 456651244 466685217 363501806 218950579 300589246 735237513 912347221 258740702 381408738 984330971 426690972 4695099 210526307 44544627 16495278 893558993 961508624 481461822 63072101 379925713 682134719 679668668 348082118 323161508 256847215 944125568 379930269 721683370 182363382 153854916 706282980 531573056 88442438 155356881 72613679 73205903 714267775 255555197 255573093 87204133 148557594 510081531 91554284 224983910 138009299 957754089 523991025 562527221 546474775 1277373 768119858 590659739 113137359 597657320 954202602 723916664 249236955 288549381 172713675 552727152 274739085 385182470 857339192 848133571 578942596 167643409 393372616 188372057 815057777 317050209 754508536 713555766 921430283 140007321 616711619 824680684 557705238 398206337 748213696 913890887 705357956 939566445 519836861 795091537 982980376 608440128 915722062 91929191 613934715 20205854 633591270 473092917 507822913 368934149 97479014 139165211 324606172 621474078 368141943 230883367 733341018 169780869 344239293 103269754 242012729 546660709 379751635 646706112 417877980 140954860 604997292 930705324 656239832 612136252 521269775 52537449 543344984 480375422 816251799 694478942 350946356 410754127 491578895 766235200 340638485 499677290 661428636 31138657 427745992 411307393 84885903 761548702 291880857 891002886 804061539 952756569 786900850 110872879 752350768 112223583 907489711 161359728 127220707 314116411 702294674 40748824 77474675 967798752 59128267 65211952 771428671 113675413 932967047 731692639 32577577 996087006 83739120 898253678 490571999 587821384 293835720 582598422 506670307 395494078 893420985 793271026 978094120 730007368 133969741 138627523 928065554 968326726 583099018 979946002 951550797 95767163 909446804 530846359 700272032 954773651 420384912 590186232 576236312 686644336 296176039 788033621 29509243 384336112 975041729 233660080 451034456 590898869 140037115 713899740 206429180 865417696 374333833 277486662 156473542 517386272 538342774 844934484 131196402 19756294 837948651 591749369 18143645 424939901 124838372 282722413 461697599 113979281 921637711 159995569 521488988 580968957 886096577 334458381 425221535 473877583 809296761 625278378 455516292 722474755 291036353 900759236 217188744 634582341 852944409 542371410 782156303 263581188 328380690 601713339 732503364 589069038 29202293 444565935 273702807 20314316 644080328 280559392 280807465 434522977 654020870 114476497 940928147 362307264 970917024 523190068 11436898 871630894 399545268 876890223 460934370 734438691 610226327 377368505 443184901 1512738 7759770 991199225 46135592 455066364 248241313 780183729 595185269 405469576 467753898 970092327 511837993 388688823 398802387 723912580 444561523 569425032 750726864 81107808 186411361 985645579 605453065 119383755 172210139 156335341 39329807 115540791 369668765 416183158 860695618 133535034 733307178 676027664 923978325 335589927 409522026 265587799 550227462 862188934 149397203 691923956 792804890 483533042 606319688 904072593 143435555 597210610 389013288 250351230 799057933 181445459 320053413 25928984 766618679 209584264 565323341 816026106 122979192 598635369 406109213 359261847 35585331 600645847 255321008 348427744 146512698 386700976 813183918 232854514 96234969 229934710 761815755 512707381 654087224 806909769 860298603 275988124 115797835 533014630 506372195 297017662 745055162 534865556 934040025 396080279 520535081 306881738 14650024 560457652 753544401 914456812 526038904 291208442 732640940 200240566 110055829 749591309 561767975 378061369 420712133 872748787 696000499 799908398 26316782 254541340 832700597 676870715 431476565 928946169 996694022 616642450 975012569 55212638 33328642 205410870 146785126 752727368 977113573 95943420 635037921 466714608 973994525 37907195 175289532 545565349 949677863 325664014 651240957 61024768 944799259 550091691 427287041 943757461 638467613 328312692 516420913 496696771 927535435 264633699 368740837 421870119 588060869 206036114 718599902 934095616 598199491 389576181 591842030 288383189 737668510 165843218 186352129 536813552 25096580 680418545 870960193 706159260 68565881 661976340 294349852 874773470 750412233 279000881 114872078 453861220 829540804 190638958 736405674 800828944 88327783 579434930 395587445 487827249 229572765 809553851 323762385 112792055 689825732 217647968 580871178 39175199 19174747 862171957 77592126 110270216 61866895 968392900 31924469 519860031 940700506 660576889 783552349 767397380 956220200 28715025 720464482 593930728 237421131 157829327 627264253 20402294 84192430 68881666 163826187 796858978 528072010 571047996 875636253 319514127 896813612 188238655 704439885 881532033 76682328 879160821 186407274 111392613 684054854 165896218 627131306 21080939 670170407 871434318 25046838 293137265 559113531 488609883 537554773 194161162 563918582 343913564 380768478 987423687 1888786 269374638 848783080 266821661 586604999 139904424 82497151 386448046 982015621 227636071 35557391 479439093 243764293 676933054 460064504 645576022 834690019 14313184 587573342 761913249 869503424 309185295 184641386 963807575 665203387 340067793 64737889 305728793 316363690 254186271 407075567 45649122 271543682 18916119 249131742 828041100 455985089 788459232 46757506 564153276 746837588 422993937 453395532 593203371 116975022 795273292 140284303 494227113 884976142 234454611 591426423 62131378 729935921 506875102 300048237 425515898 885047079 300365856 833896176 455117265 490317573 996575541 248206665 402977869 544161445 73026848 247436489 615865528 759741700 166650161 340518666 565707481 280757177 676695988 641840498 961544983 76744118 564565631 896217791 661847651 983124418 209116825 978598165 307747583 448709179 706946614 703282320 85826225 248625520 891518405 102990914 341427635 808252939 854370647 735385818 677206392 996291888 590646161 964269998 627762280 640849787 916890215 360351003 456260043 441023264 886681501 941380584 622882112 152125382 42588171 496977400 892345401 794503144 809923577 377228744 933965847 722218837 335325125 791154743 9108270 803412281 163496787 716192775 839346244 155689013 732776860 194353021 204775403 977170958 776074108 129219587 321983965 315898634 296179950 715935653 626921566 387486641 908135146 274904448 34510046 513811802 912459329 521214949 712303534 602493131 591431390 756470506 195481505 564247338 54669471 348742950 280278718 130909300 356188832 346452202 493711063 499688184 324654478 503633718 141664652 1002284151 90423110 175068893 754756143 141205377 770345695 118953191 552233660 818378389 296510678 448644270 119065476 470966621 165329043 145185737 924992011 505498303 238985995 945011887 803375068 23547397 980690218 98731040 528365622 474249304 359546448 847800448 663255724 7176905 426348734 109467581 820367382 609465563 328378125 555214476 59004781 781600324 541813269 954442024 971260393 54229085 751647367 127467046 530666100 183296408 748923474 384661755 737686388 534848755 791012397 454982139 449674946 930773348 609576944 950515640 553166527 837977884 204947133 732778266 545712608 558954397 192207044 972223196 974781735 169931254 813725110 927997202 828682146 892694245 979049394 653377204 661275777 485020976 730062974 328441113 814103865 480687256 805587877 198883883 598995456 9132659 61131353 437812257 833414821 627560643 40373604 694104983 903403677 108883771 671981891 638929655 744589988 132011185 888140527 869687401 462432687 677493664 547083108 765991817 213144457 599391151 368680334 252561208 736186194 320958129 943863071 589232271 275176324 519586978 201069686 535673845 75503994 986470740 832603740 855524854 825904741 610989705 702459236 756171475 688658185 115809904 326148957 717464561 168436655 787387436 693002899 606644795 332982794 129783136 215726638 648615554 858084696 207126675 17834407 356160097 125106790 288688462 600730441 635313119 562011029 764740990 384986679 973684942 907630282 665881449 977788160 42242597 258157340 416997544 974840288 438987430 385824430 437855818 951951672 324353235 213280920 671410129 439847630 190458252 958645985 453719627 814622313 957248331 795244674 69418344 868412847 972326683 200723865 283518576 286942427 625854486 687534189 119673088 641052200 275237653 718158453 478893285 244806400 594653720 742035997 162251224 682167246 842687472 821454646 996323605 662411073 616034280 920062174 673691354 427733179 78716766 139437149 108439539 692372381 613171173 382049257 229317607 47231993 211690357 718227740 454841948 187691717 359233033 709897980 378688723 393092771 105630860 323745478 106500204 450501530 345783505 394369173 511450041 48746829 922980563 725856037 313224595 898705744 629695294 265530196 948841133 568984444 26118895 196748223 270919659 664624847 499428443 503411003 999997480 704479893 788435676 533948982 516700754 588312971 524852103 553069769 407856928 624575508 844554408 734938210 842372359 706124662 410157988 433328206 711615475 929570400 367956851 546731932 484876660 713549435 268243199 469169835 897414309 229101192 189368482 722384126 388767778 287068338 288568383 606780993 38689532 585373555 321545351 289108976 722721490 733931720 566492138 472182779 441536003 153578920 582206552 320022928 898008993 273242084 382335848 343556815 234255322 811395153 128557098 12561782 671318953 76422832 415221777 323429961 814789306 64463224 208381804 865213927 623035384 771749319 946925818 135489811 654553241 673613492 300315547 396360499 665053739 652594447 771567212 650211706 556511106 303869706 387675335 797915640 941227715 470700482 355178424 65139424 146872957 149925174 766825662 651263722 1001143833 483791203 624008595 514860247 510897315 592171962 614710778 597405492 872569212 852889796 520419530 654765323 411762019 166328588 77796044 20913180 116363543 476730432 93066639 833296462 446492319 814774253 465349670 662937575 619086160 26611632 530209183 995632228 316551090 829271767 798488326 183553064 121310036 742429254 769433019 265426045 739665752 672651432 7682296 593731092 20205885 362404662 45643859 718838620 843791615 257518114 221463518 187951526 545744031 191590919 171937239 314157020 470412080 796655130 898195050 175245170 150909103 218285538 950095253 327409856 285971419 336144171 496635944 1058964 131862618 78814516 749725972 174582118 665551981 564059156 664569919 482665042 558391448 790874737 534567813 39365142 786433543 199973467 246574299 6031608 967709046 640297237 717486326 785377356 433653920 885392825 792684635 23413617 189186438 931515196 919648664 713635439 533774469 648234222 359071708 867572309 176750559 362799309 914136330 800833936 595922907 281244880 885423737 207102944 209354586 778491133 105670420 80854874 95509720 893281269 86742769 815924387 329556751 692249999 503834652 340793105 451308718 842402341 256683229 601220847 478894625 875664774 590770359 894107806 510009506 337380928 144695755 34736126 739110818 553620488 756622721 83005078 514773681 72207850 544304003 48469848 280952515 451735530 520232290 980050794 610250973 26115518 885676677 954940809 103951795 991173044 578428428 275022743 293779770 250651784 432605874 368903268 598673963 240224427 489632128 256323764 294129972 273345698 704363620 868818157 242458427 526782089 64920175 929519177 42657595 653841854 430336715 899437270 532465141 441559664 737612386 670141704 817587463 796526518 922183222 714760819 143469114 187466319 654431844 16874622 176267828 764266056 316504360 21436974 159463860 362735352 769071288 249707910 337142241 214379626 947819339 673114401 27544187 495572493 269160003 512155789 482571771 840751089 650241481 776481410 106102855 752127986 919000013 918729190 722694867 797537806 121678288 800849288 358704764 376373134 467223515 904967548 124893338 750932820 208218271 802887131 818459282 613405317 846564940 918710171 970407785 330393394 793279194 399806329 79991109 878101814 474027046 754107362 506141798 781552137 429788632 11247120 381508454 776806860 776301123 476475594 796550490 209062608 836797040 787031670 960276895 871417684 332334649 902374342 425456445 167862376 148015719 358885454 378947090 10233512 196941042 791985934 68811031 990046526 357297968 536466572 310413907 879521798 279328214 161892886 493359421 712610783 644663655 430660713 417084301 112085610 222346532 244314882 351968606 542372493 621081823 46028266 934777864 948418133 979742790 759421221 878244724 716695062 584184368 975935270 890438674 447725855 448405224 229069966 640781101 316313586 779252474 878906206 115310914 753623959 946930091 186322128 535918959 814322048 89879299 810989834 969688498 999791433 727798285 852981914 57731484 398906021 941063534 701300255 667205591 247798978 787927249 353428570 915436920 545867827 286706701 74400610 46719321 492373637 177730398 312689454 571841829 696342609 12432841 545606827 265356481 882501898 914922535 20287124 493013675 158073832 127012621 962973564 241187472 401696020 961167905 794824660 790764934 26580888 987349986 2472178 358341258 538535678 453380859 911261932 243213527 80336911 519739842 86602922 175052281 664676695 190992292 849983052 197622097 805019025 248779131 400677750 976613504 615909203 132465959 486293341 9032472 61921771 923596892 601971166 392580629 920073436 259056970 874846476 616437738 167156693 396392582 691492721 470332779 638541142 391693888 503813595 484003211 436579779 631138306 161557014 609059242 746997526 266162764 151126219 770560522 767615854 858790359 568475651 212483188 896124529 731725996 346594798 724101191 171527379 859641710 282565468 428062281 627840973 934243205 157659063 326993411 869342346 896397868 156976309 919938589 330769587 551613758 950605790 413437907 433112895 385767614 76284487 732281836 692203958 532064351 800268753 857360441 13342124 84475518 364221436 817001783 856849899 894110673 397184631 383995429 43085445 327578163 69368248 291375351 968552936 987026554 356980802 399934212 415060683 438125951 948565008 138724270 974818263 753585024 573525735 335795759 931081554 606213025 819263417 181789615 49812078 284558539 743870995 346895977 127962386 974257270 646496563 954431173 383504227 485570397 87813338 274440753 131054204 5359346 455738418 255555653 519933551 950368204 432612647 4650579 844274948 810421579 194401636 749662860 150170012 146685180 801116596 586150387 769645327 107980078 907386682 118798445 427641787 963150586 215976827 949078797 279948342 653293145 700107561 499089055 75512718 437528869 612315836 963515251 963739813 984732686 73207388 392103398 135612960 871128181 859955932 838501439 507573028 1001693905 627000331 404128722 765109986 100665127 604379100 853077861 904368555 939523392 480387203 754359281 693066690 586374679 650648341 551797368 999235228 436721239 3328366 644355051 404145448 223640056 974494746 178315303 987007530 794121235 761987240 9428351 671798591 213588820 579758727 543203923 829114919 219624225 999692095 148819967 617720901 639751922 741184453 7609918 325902596 826938660 705748351 327527914 463156174 502717656 60508603 146802891 919765965 24222267 70926006 470676666 426620080 234614491 17172634 367258503 702835674 495233438 306246540 793934713 810170940 71221524 869190935 268090375 872635774 797108014 647217333 59638414 794458119 568345926 814869717 941743515 864382125 427445758 733720950 44727553 183567856 216488604 828710146 876137429 882166375 324032129 700511855 324803958 251873734 78931733 229804772 512791356 805427201 521364977 108177948 877284557 78948120 27253758 845176761 952534589 381357604 865304334 227432572 80220689 241745335 939199103 113720508 34075133 657189829 107967351 717279222 533454694 100226700 106311871 997606780 943655199 690032446 380890805 786852701 41537372 149416461 684813241 854778175 128991178 945843335 897388695 223858739 765102977 452957527 771643541 751993892 386493981 90518206 625715570 559261748 600115193 500179998 122663756 928684381 155793006 349857825 854221490 437434799 555122274 707155043 660307870 932186365 834224392 837417020 223896536 223235670 959839136 914647340 506370074 957902420 920758628 416272754 431790487 209991360 828476310 57956440 35033765 349888223 568522365 28000554 50150035 941313933 20097649 949200466 581267297 41247542 714116079 279832704 725357935 460970715 108978982 40208927 947640553 631083132 767191218 683763592 713383766 136021862 882048555 210414033 110490494 460417295 892995968 12591135 930119856 153831475 787684464 849811047 909677720 312230815 991087160 70894840 739421364 131322801 530594963 124480270 852087906 743552934 653008041 731942860 264581766 792542121 838199444 405316223 908197083 287783130 443601936 178435702 288143026 632829988 302086584 385247521 907639125 54402819 358183083 793040975 197969273 532298441 316926701 444404054 462176896 725850936 796440068 814539008 399901337 167701222 282556094 551630009 696842503 22854529 943245506 174983846 336730989 878971436 68471556 872679125 558878819 194669745 947814065 314799638 757625224 433689985 395324901 457424583 752313018 492257807 231712163 868266094 707803809 181147010 973769489 503050763 703161414 135839286 197033313 426038326 892641054 873697513 380375274 624103762 950860826 967597485 20553754 480999547 654644003 932360188 990945620 260144441 707248841 54280388 154430542 33009659 268657943 547438692 488004787 261997603 36135922 770415245 83073327 775633223 862142187 776660742 651095403 152528007 902647185 587431752 292654632 685705198 5845354 404725584 862994640 429657561 587729950 230035755 163137311 443458341 467706725 330451662 641152456 229526592 880923654 443538105 447653815 351318021 599653670 320672933 947202285 272381682 330628230 740676543 365583557 759514218 68159120 375428422 86331231 355573341 437486078 898153350 113283748 890455613 434894502 510884317 832044978 724187133 857112000 242610142 921583080 568070332 894803585 458930005 822324888 661724452 831787885 640935203 525794003 196310305 659685406 16498171 78774849 95595787 401578052 622328530 663969746 664364654 100669229 326286233 533820308 476274235 389237388 115249428 880581214 758408705 701793995 473877616 219402425 188618036 763865098 940440894 950113269 763583886 437684610 469679535 252320909 739074150 529045080 65774443 153276132 581199982 265486123 306736947 400388063 610842839 599433180 557693493 606236638 34137186 888973769 819940645 163820064 472122488 747195000 17025913 63296959 974328967 902690725 126484561 906790603 869428551 397806765 617960482 249674794 393884225 792065033 627101091 646151095 546331480 522767907 868923077 886219448 564127110 773052147 597815220 270059390 239371008 990681169 569110002 162725258 574284439 668333198 362723558 589465690 1001369568 500487091 516050325 346427055 314043363 612088942 623495883 855978853 188926743 503787926 643570963 460826873 836137693 330349669 132752848 494467706 943153384 197846786 864882031 301939302 391819382 53519378 837915008 802270310 907167610 419902203 473333637 717750386 37983769 383413021 684334828 982863540 850379780 627937667 794858698 862200254 56609178 610700193 786993423 798586352 659093360 420696731 954874976 739343043 930126439 215627716 322493288 17237208 164676156 734838686 360912753 148680254 258988170 474463360 308951141 311304610 698941527 193191065 291229755 638805219 637824883 13354932 353577825 663900812 283516654 297602790 413194520 652489121 915911809 93537938 540015528 567505465 90094297 395093660 380381578 422593174 725678967 559123314 529967938 888223586 565155343 980932052 973789001 550567625 807148338 353417257 64742864 466347280 394122239 789319821 487064813 846486415 367986009 907833858 416455113 130779930 824406053 5857324 64379463 517421796 101640009 703859153 871586861 430704817 342756764 495817956 947748713 162086639 744191557 602079284 973191564 87755006 771250070 291411557 191732202 960600919 477046869 168043844 768057993 221669669 212154950 30614471 927582351 528522384 716125297 270098275 45332221 404718804 68804873 150495775 573023437 222638123 352033111 333645431 465758936 144806033 408318779 352404509 822602604 104239214 362441259 734350860 150938851 862748076 997404875 434259350 801304976 407783351 905113456 986230201 184924506 609254584 481308536 632210615 946182653 788377457 531010162 283582444 899683693 455975873 688735651 262994759 891331574 986564031 506688775 660776582 663269586 390852023 792988604 194192863 260377643 973532253 248381641 93363390 336121605 671335155 769441778 56612275 274471576 827413433 856755811 9404835 48419366 529333854 864986307 194396974 127243713 221783118 228504750 21933992 689940769 392190595 481189851 494779843 121585548 53967639 566101536 207872480 230712848 763953855 977715309 167753089 631667853 970043887 589010979 54825603 42272681 861830945 631967882 117996238 216988718 22567675 687757132 26859646 615047376 193873733 519233111 236148409 900620964 553788522 702281156 794544506 715428476 331025068 665694346 723436068 106186429 113561043 620912029 704969500 832353854 671701717 137766165 351718966 173346576 75088580 62491537 442262636 742557451 248596244 674622888 757644831 985458392 155699838 715672253 265592333 378784423 818490764 233198289 109094551 590858361 445355232 776784590 137756971 274199710 994142223 978384570 466918219 183720991 883297573 826021463 228957215 40166832 88765280 775937028 828341868 941077830 676139955 76477173 634212237 611922845 654042024 674158443 158997613 352072907 923273186 250959297 853872511 119691433 252050709 241302186 296207202 762469916 563606073 343396989 96197388 754204919 87748049 985152448 375009798 516921227 874747564 106977483 677505366 162362752 595571768 935537506 172142871 222764910 305618604 520764828 660886175 222949776 766544474 760728809 671490352 254060532 443859920 187081289 649783314 101840376 661961568 208072461 935881965 359497684 659416521 36057889 601757766 645063855 51815342 446535679 102048054 587042316 154248310 870162709 327732106 16574488 808320355 673814925 607622216 758205103 520133111 488278284 414500626 822423334 478080549 57291759 593894784 605872415 887154326 942187097 42283294 389704205 489378066 449633081 640921685 451041077 101468877 555224525 190763355 699771051 3345088 783001275 384403264 783121414 9764540 229636875 375757972 649046603 487323433 228434219 501327170 273105213 109201485 515624629 853572513 831692401 38227375 634297523 800454097 343520905 963973503 892037549 875793344 601077276 488145936 714146113 941298265 12169108 684696309 347356291 533136984 93092728 767289023 710939023 480287336 221073743 809721795 730675705 712442609 379937666 357395979 631869752 325950033 458932667 651819830 690795060 718566063 384299665 553049371 311371661 75983663 312614876 432744100 422408787 305300848 616903508 414750303 155320175 800472251 969288463 88555486 8447807 619740220 265719194 600425419 627762462 509366805 389532296 326201670 865487629 350596165 725533127 219876418 1002115814 930472189 678089300 651744847 450235663 773107388 57025384 579232485 962871198 254054176 846716640 220667727 901726839 810299902 245895321 414810732 253322433 231196029 232693563 212871759 916778073 314369487 634592879 99018726 129672925 577322056 879959168 189777780 650242456 955479659 736449972 465169451 756320543 590767474 892089621 768581495 158733168 476361063 568792231 878266341 53025554 209831831 502148397 75751555 789300886 742115012 54570116 298454897 577146209 545023152 309011467 478396830 329528782 40037370 854932894 428841040 416779544 682613351 241945452 374143160 269249337 57635431 276471980 901864863 350307249 240189305 402012173 570143649 341176925 810041071 504548275 665464151 706042014 539895408 21487334 548807299 589359381 790483777 143301027 329858996 960466730 463675281 276740141 735407004 345974319 546102320 306787279 440374390 169880526 180744750 981012449 925560828 92769068 579277852 27876775 681366417 704413652 851927772 537732850 463068032 641071146 109929979 832658761 749237478 737773519 628148195 414063753 925115147 850942035 789904276 444610914 482514241 266886396 317266700 241247917 197051953 962494589 372799681 241494704 77114091 827883834 292548153 788547858 201468323 728079934 744761978 58019502 888505485 445218870 141001608 122059075 629684868 367694427 160394632 136094382 942148517 942192029 18666044 745942245 268353516 393486663 624455185 629060434 291720717 766466459 341340924 949115410 58141623 760321873 613879111 730351434 432369025 86541204 726540888 980918101 734947221 848665884 64406090 710570079 238440571 323265088 521711136 29551193 5936822 987011469 50937718 988131963 421459363 808508418 457879400 486345100 433546481 829093786 940678230 351245662 47325534 40722057 176389471 829231953 354739238 587749812 568704004 258925748 330953249 3326039 336122278 208206544 360236871 481793953 605986549 449223270 895036861 408604814 399531664 923644692 934005803 387084420 589686766 874332425 491524728 863993138 157262253 821300147 978750553 785326027 542977674 911415100 294632277 44379650 183136550 471427711 933866921 673721425 506197756 321720534 487316072 321924669 272453611 207997646 653566114 579630930 258112046 571079491 380091097 93753664 2026153 370682962 985025387 953931506 318890188 402513228 438057064 884260404 286115687 510833922 768843015 96646557 788871735 6430030 886229259 626166857 386556279 612648927 267285598 680304990 131532205 647164021 889680169 451892350 511579849 828042976 338564073 503791240 417366513 875999717 564418333 985596268 505851334 120193641 379929046 281595881 1001999507 44438229 335337542 548670521 177628168 338903184 524037764 65580938 365437597 853953031 511041194 507696455 22532013 983782925 586456883 947369575 882868453 84353212 329271675 556724635 166747581 277151204 918292240 454214679 228173370 623597594 682642937 929409913 100470115 302945416 9566424 793958281 212152164 498416014 655710900 650137483 688584393 405125990 475104804 191156470 466988122 446639133 573961764 408216615 840200525 959183029 650934022 603222927 218724918 888545515 10160591 305913443 520888002 967790657 389288902 217511584 91918528 454653072 907678134 114556997 639257299 407237865 113887102 464611924 612260225 115463501 170316413 449163893 259744808 157036295 5046909 824550901 592514061 423764614 106694287 521261409 877802778 123103906 507548860 71645265 337946371 168318682 246918967 795233486 376538634 974064782 207061102 806027275 599997703 470094252 239493607 47578500 196917883 554372233 647851456 413708866 371989699 407020100 632923624 741720361 919693417 569997027 128680970 509656751 628667378 606381054 432731274 612537153 326593891 820895674 267626386 496192493 350601594 42639889 659365846 750430521 74638874 646259711 932715036 700014139 319972135 702846779 608288374 565482813 222475539 302544476 871625582 377008611 147940991 722233 203469662 223238355 673387621 755885481 5994647 903110831 136059157 567042955 674286988 996206112 341160024 825408753 141146122 312388149 634318910 68768674 675317201 994879589 250547190 138185726 680740887 80085107 606415387 373839823 94401941 686072292 639781112 772701844 367469272 416041818 156079535 23416026 120358527 52041506 286338954 261332910 11644652 762981171 209245180 105826092 241707677 623200158 603853459 388109332 307321744 411372673 257109856 273283336 980496648 53372207 269885815 247346881 634562568 31315156 498971516 475042398 568838197 661912122 881192524 581049844 53229984 530324143 503394511 309779252 806065694 507935925 686667823 458373124 920210823 773739454 934685922 320520861 89348101 805182931 388159615 568194052 333440834 765626739 212993740 24668541 633724215 964072110 460224000 149434971 139280200 533526023 666354718 958629582 670830083 748883872 270259361 976743031 901636761 749789237 323046617 990042013 774736863 304129439 369067657 768107594 385868538 909363597 923535571 598118302 782462753 189642659 861140157 757297480 953877836 187868697 217673398 625129910 485749582 465124228 910165201 297735854 842864956 197223207 657145447 689376270 408730432 723672763 508324507 450489932 370722321 910103037 957070557 560985364 705009484 219374419 646826626 362056239 186156862 85072820 271400115 372947020 358100069 770429661 140101415 6656017 65580557 407688312 70315352 372558726 755017056 761938167 180802491 229798666 156389397 74615307 449722759 257483028 348280514 306698906 626061726 187098078 103773174 107000552 800376164 164458431 301164060 297368832 311243117 249483476 651523911 623491029 202437826 951467416 358762390 502193978 607424599 749708904 684803751 656967154 398709953 765050347 602849719 20576790 962474896 495544797 452667907 107113683 478575714 275720450 940963190 437157582 603225709 1001459839 665525315 720235108 154442569 287644328 439947451 479852833 68831401 85923823 956372955 393206340 513006485 741343016 692515526 518135993 76203386 887708686 490093673 117344236 443637501 421994997 902371714 181632581 103569757 267376039 750970091 412556669 810793302 867888190 641773255 192923024 212997018 81006287 619400214 590292361 51430710 589920711 414983577 724472312 255495203 343681517 893104927 951070020 172307614 189009033 398755505 86625401 343141380 256951407 897048590 409611268 834789511 741240789 50485266 974044175 238534869 520375362 362454242 788595461 526037782 301759114 942884979 988765790 622414971 736317950 105168387 445928593 557930702 18773172 615021868 752258815 510347517 147958235 855785784 494577054 63631239 812394505 809346735 982445867 712949447 649244620 50857091 965154415 78433540 523044769 216064436 192791109 415141652 435554920 186663283 449704569 383829656 748360985 419252730 663108582 656367706 680027850 566905515 83472205 190378442 383808360 540207500 411123240 650041653 947617692 646702643 301685940 627475021 152805324 633154346 770599052 659319482 86116166 181257296 780284422 246638450 813411125 561917712 178318772 136127845 291633331 568094735 420356216 621412642 715460854 188902984 819492688 558759545 716656964 711125343 694525902 770103246 689252005 879720669 973202561 995104396 832390792 427910204 50885176 286569608 419801545 412377164 195890786 53805693 472976882 758581781 906465231 746069070 756231413 833325278 587488174 768189462 550361333 685106590 106017596 384318425 289024371 758922681 640564385 508647078 917848399 791300641 376668577 468259876 204931835 777124189 645489846 115156094 353342642 109568119 752118381 203088469 239690236 646813615 504450268 305950966 226158793 255469991 545182362 892614040 266858317 117619328 965955793 420189640 364672701 226656715 871225028 130145163 112824760 566471672 918454939 831429515 685520528 925566212 559386091 361623477 923823051 40038843 831133619 119424681 609353067 192218109 150239722 383992944 367902360 889145990 150894049 739496163 579609340 940163557 752301279 649531409 658544286 807608020 964972697 162286954 408296321 373911345 444367636 284076815 138792035 556211885 289115499 259270495 695610633 261325289 675377204 186989903 155530642 614969583 174763073 392227425 565024698 136486628 527208499 742311299 261734588 240450685 356907933 872529398 86207574 669524164 629006669 599884114 283054565 983083786 524031229 897545321 81363117 391390899 891708925 746458114 285208103 149219088 233034833 374031243 940553734 332488207 371733345 555376710 524599252 330858929 973644403 31666913 954098047 175257808 807747144 510094608 480320790 154273980 198186076 981909631 47721572 395568751 973891658 997387326 437202364 37091710 586963568 407432474 910621681 124690603 234299927 591843007 891145638 769933341 223418951 567849261 649621902 441964954 120570790 481252949 885156849 67922032 966199102 159837667 180938283 893551576 819840047 421875654 183743650 665040911 541344929 189571494 821959270 297227865 572166168 738721195 824715970 108956865 531306525 820941324 716502517 373595670 216466124 90124556 348792212 949483889 265497618 992981461 119701578 545199982 180024514 121435323 828173436 930676422 110147377 718833085 701710172 20819005 436032391 435993339 53119208 484731366 781719725 683444467 945781888 810256704 707666112 735224181 301987450 44105925 78520523 395097476 928375124 538178998 238928409 813980523 58940955 892426664 880461056 127471864 702265849 177316549 588390470 20961159 441347018 482562753 711866951 58877873 387972969 216766133 757334280 470803958 771915821 722251227 337312692 404673221 688060323 616070065 548866481 497966604 719178988 739566294 629771306 69496998 405451092 288015696 938581736 965505928 225612358 463421305 732212889 548441329 221204047 353545423 752236336 350838207 199597228 941204426 48592419 78591344 373207814 604173694 226312637 497150041 867468709 227486035 480692824 600805640 873936977 576186841 82873773 943032226 444718092 11895233 182925410 218304340 723114214 9112864 232511196 604914207 976659534 591711524 197512756 422435531 361450844 303792025 200057731 973554223 54015533 747168742 381186040 349754181 948701820 742822302 580236695 214264454 867449151 324291908 398528362 369220669 439550758 231049856 718381321 354407086 576147422 338537294 466369905 374987238 11486974 478555527 225199631 281211389 140284354 558880797 854359000 606956813 687562202 668712249 488477119 254245718 372949455 398720642 144966916 266064778 186267137 223215484 695189206 503184110 342219908 19275549 973328785 663191196 399650191 182949784 715517412 63882356 159743503 314528903 962174380 901909110 917475342 762984202 772521636 912449096 996054668 530271297 464195611 46271595 745771161 352602352 951804702 682231380 306988901 800228620 375119989 970467242 429236938 740947924 813488445 82658710 977233172 769929195 508682902 224857577 19868878 290283475 152047096 148641166 351669067 396991266 262021422 876600195 78814661 493976994 670158885 825540069 329097909 650445126 741187110 372855081 831866192 58546109 242484738 744126015 27091499 463731573 650787172 356937495 75235805 279450698 114041022 844226567 520409130 911419372 179976633 739593545 795256784 863497262 47214461 953886841 197940785 462279003 114601063 408272296 172918256 28848613 678026811 664507604 974070050 507963005 703113128 811657936 337506545 550783613 328268341 777687269 863231354 317428529 535772337 460272847 303742731 482072483 549074766 369557248 376223338 834782814 566673810 907722538 847711315 691673131 852652591 981431067 525371265 86052450 783474436 502327642 116016756 363148408 73018468 708054492 797522257 345805241 522976346 885454216 294772157 773740271 146853012 819505676 494632597 379887909 560910234 479882520 459184212 976513491 178283455 788017073 265696439 519235549 561325104 922661050 63394320 622970903 11845125 187167301 836211094 143391299 498436823 776540002 978121502 238818508 954368202 930965628 169889179 383723073 964780210 757969922 584869425 623563487 157217275 434227939 180602339 945017069 224259608 252679077 582578441 510362101 406291010 192469253 479446747 268976969 250949815 587014526 169590118 796846873 595270256 73595316 361414697 534184487 534754309 693455616 453893766 511145947 229294575 62929081 422039916 524865577 904844442 39684242 502336713 377602104 772749573 432453933 625177852 112232267 350323161 696038270 310182794 211951064 385282844 427362511 779715169 484829974 902332198 319774558 780791195 351312345 923206698 864408713 863517194 969387212 308972472 864301445 298244216 423199939 679770804 330168566 658189411 673563884 608297611 296617618 737694396 183448363 855839364 937947007 396238439 423225812 840747129 936640980 611751163 944133861 820044735 274109776 603285174 484119459 67027217 278885218 376547465 582638307 641925993 434245137 375268661 34627706 784142167 934777967 787689872 320127563 78491182 140565228 147075215 751416428 883673670 483029438 715506791 941306423 491638958 300351342 620852525 227179759 452478004 95787087 278548578 99870667 663358913 162047887 434498933 671997637 143151310 744294273 699393622 193508496 888717436 939419609 234941374 648142134 461820575 507577351 737123343 582092452 545213689 280545680 764421575 710819550 481103999 941114714 664945275 651651868 277435632 190343334 497378392 947425720 888969664 999477066 647709130 832920138 293115565 920640410 490065456 444616228 104093123 330570754 983528744 824646469 827125507 905946293 768815258 585121267 428732788 973416033 824712707 592893325 837550302 416320870 711051694 278386828 638215546 909831947 17317497 999855955 395792912 822806165 791822008 376985469 771973676 693911152 747242921 202428346 824593623 330909615 127390218 828145190 860681016 710272802 150383988 199550959 10780925 299954826 877134430 277941746 732478101 982138603 979484496 331903391 118468094 881607104 126750562 296037705 70792640 430628052 619980717 238027441 387400535 982087701 236944012 410270069 715593202 567059408 481987713 114815510 849099036 719665780 926136358 260188836 126225140 66320161 433808158 249613418 173981141 963109521 891019237 191813961 564578821 775404225 18133093 477257646 349637827 135375264 200356579 144043519 730809181 226965731 532849196 287906748 521932729 901516652 797685926 584258344 467791051 354161306 700606934 666406923 674140183 956296169 320166952 702252204 819579945 600836572 937642438 910271072 30968190 725896141 670769940 85964479 408223536 463181534 297073311 622141180 417942569 407295375 828137735 617127334 318955714 444376230 11961194 49903480 360981472 86427403 179660042 305356022 568197243 249774289 927790814 793408899 310620515 505676014 324784350 519458519 873060530 527238980 186285836 644320119 855681182 343841776 105808704 389101393 801467327 478079136 921828858 705086473 312062645 881110640 232474715 473147313 970972758 939466930 253777147 771697330 744728844 662005902 817715655 958728884 347638818 597619729 898796651 173280963 754175019 658569174 50361478 979666631 526190076 198707209 227574718 456079267 163301042 338280816 180381494 316407626 323110733 228680095 996202440 988945332 806607295 94113003 197523397 414898485 786150295 588467215 404441740 32699682 445492350 176148008 386626844 185825607 71285496 999021241 924092636 833143236 968760204 665834856 409914955 280404136 363882016 675862224 12946711 7687138 110741232 499749287 483865090 97557429 735666450 464855274 962159665 278826810 932549611 416024811 706128750 186743125 224972752 758808626 812962369 236743492 812693048 654584005 469338006 210101361 847676090 592735491 615557189 901715747 314523955 68142735 506442812 625693221 6320325 161786773 582308465 3071540 147816491 948896289 834080267 407210013 472548960 354379497 250603744 29114058 500490036 324562400 786920973 360353196 935891675 90762609 404425681 662345169 291236601 141633173 171918247 43819223 250474557 917887860 405745292 436830557 855487359 862742194 726910540 626779243 593323232 120340342 682941282 284790240 706473895 854190207 747135306 928980322 244670795 967482294 873137445 302300659 500523410 767565937 135928052 138648260 681393921 853759068 53843238 660069551 153256271 842232506 802724587 239917392 18724616 904888904 310273680 591623461 392425101 455629641 759694984 679940002 231366954 719966217 896015148 386636603 266788873 502767248 847137666 147397265 14138809 37551324 470723015 956013576 133356187 451205907 837118173 751248015 27769259 890272269 294500597 659222897 913478436 315975674 261337165 2440762 31906636 796340789 103284484 24975629 443601424 317720321 205686787 992743084 631601462 268824926 236414721 753564000 137620769 957076205 632738765 61192174 969311973 327090049 714129272 157476025 273476730 479236096 626542724 534613335 508831967 327016203 706175664 875514730 609298525 401135889 165015903 427897311 550822118 580700188 705277048 734946084 32576001 230591629 931343362 855603312 571558275 723784604 507247357 711053317 538435781 822121644 363822339 650609789 581107927 25314499 793331000 513434301 235708585 155201084 305001120 563059008 331015565 915700701 548943313 659838715 617267071 713461601 295416963 94661670 707727252 703257354 298372206 834159919 329790639 635132401 290294037 211467146 409853764 404847254 666803536 828868300 304230766 167298789 791812657 96434673 565609769 367752922 552309808 249394254 100337878 509269271 454976641 456049867 956761546 407839604 469250681 744987235 378125561 874938441 564322979 455580866 476678052 980473918 321464303 348455729 381028327 995370325 92491985 61210870 984755997 672190152 778519246 871292287 300489803 159930572 853318623 272438053 606937491 222072115 66697013 765717755 169865246 151654725 371579617 35324668 212011292 554118724 967365702 539820537 171945687 963047641 194954908 694134607 343551391 266073486 370818266 700638665 138893509 768656150 957734480 646616072 792573941 385571959 703960797 775618741 966383051 559733483 270310011 442961581 794749206 798062421 1847192 286782464 713269314 155681745 608621685 110982410 837271554 878876240 409634025 443065858 877160595 712615375 500051037 506247491 349633627 545045651 657849240 19571143 235585765 378609286 555425580 440258366 209173269 296470335 949208699 522902546 103198858 934511099 688834891 1000598211 952095304 284237815 390892309 947758076 224049190 312166950 839263409 10329412 536102034 442951869 742149478 257422457 230222033 588528581 817604482 889067686 932411473 53596965 389764330 954724722 182319552 20921657 893520493 256098424 479955221 599175366 882261590 673003131 416205012 493002846 288960409 894997814 690671639 663511872 933420524 977368707 283884655 768544962 869907540 221638623 883939949 4656606 1199875 983483848 389946762 930511915 117865308 694027511 853598766 938065371 970412406 901332145 200071993 1001573771 619767665 653917275 622603116 315515368 101159960 894071163 21429700 453566666 654285377 677135586 298446513 748424217 801473782 446814140 152852175 607580001 665938396 140003264 32657640 79042175 426852457 732034807 982255112 437228079 226711069 675973282 796782494 42003785 593396174 524518095 363768471 931041044 664238375 50844542 482610717 683404070 580507649 986411565 115732579 581960421 691835172 738494342 412512610 810280697 575704867 995414495 618693450 1000665965 2534768 555747310 478372114 975418133 835313345 579717504 973146126 658520666 857038422 45477741 493855656 594246950 778924316 557800016 715922791 740697377 789107611 98387893 842837362 649549291 759856228 125231174 386699003 695093273 442142399 509197710 45121466 310070803 483283165 778808264 982796497 38310699 706820166 179191396 881573646 483129852 603918267 468823658 170059238 631988465 612191541 621135130 203540134 109542206 595519373 579476870 672522842 4358043 283462401 625739432 141098917 2880348 970832232 342333327 598978903 603674385 691594975 650485626 718582496 798448640 289002820 745448560 284067881 713908239 249237410 971060735 789454982 373895133 40836059 473863226 654347708 672609746 916771850 586754270 737359141 933026295 636467277 43229920 429227717 274129866 196755007 717851816 718620462 491986663 617138800 887169535 65333221 615543792 924334553 577059822 410759984 475595070 156543762 399070616 145200340 468520584 712961380 564457485 130980908 818914650 219445976 369668839 782087712 92116291 639465904 970375633 126195067 622252225 573589527 575153101 591226281 902935838 921338084 297261958 533893779 369701772 88443856 227518776 465599876 849266459 509161659 885099351 657833768 828560429 264267455 118305576 669597588 645978905 946319903 669940160 251980105 918644899 596743521 484927631 799827959 316858207 688298634 434275612 643616370 32718118 695858496 45213966 831426548 863626605 642517023 863972522 203360700 835573392 98031412 572883569 61404662 590995782 273164180 845856205 770430789 207836461 114908929 134549836 681358262 281780987 382286184 269498538 893427211 248749869 754536698 124301492 976083185 867795288 563130846 272275190 705029022 834138420 293749848 69488428 836299258 37257396 146901532 557517105 818329938 843593640 502111235 664101226 662771666 206587161 857561126 75123580 930121389 63843370 433244092 989009831 926923487 905746446 453533486 964492772 532265104 307143302 399357177 694539002 574395872 549718228 854554912 923475094 484709784 661699510 729499297 347024696 933099808 354862420 532832995 370091224 585491055 259278509 321879644 739445151 92214668 731371661 195243779 152170385 127264102 214849745 144321421 19388669 111435471 571316311 583242512 449519031 246948863 246192253 807373313 139643893 38551335 963707749 465577643 725233939 874927303 34459804 538373837 224062824 306240905 814900806 665812072 685426470 417198457 301289401 486002120 624427331 651495619 708885954 882195260 898812505 429540385 377878115 773293830 479804444 893616738 419075857 569386977 844336870 307811966 102570256 572666139 497261443 554505273 784022051 812421392 858927798 871999566 174849255 472075824 529896788 807626607 664956988 568572035 843402354 236099547 369859444 95802888 140622516 10814489 364291447 406976398 394312261 810538421 128277357 692208026 669857475 234398315 951658659 616892610 926114400 663259112 230641825 835985096 796028274 884477400 787815170 883350094 197947183 378836480 444730920 156087112 502425408 587954820 372508555 313091681 155219131 400786171 776572923 749794630 959626234 646479150 355921955 349615085 880670763 175623059 50015109 913791792 119032422 333388071 853811733 913302191 592159023 785460841 474098429 668388239 173315558 672007452 89406716 198858186 668970569 378796723 371974620 122401369 225676003 377970439 57465778 194120134 339534698 497910404 429548055 467713934 554963446 108279059 137109142 955703865 453895530 957978684 179805335 965189163 318294726 641501154 901143683 680543744 770222562 744444955 646340090 633028087 765679392 856295381 590329580 906612880 143111173 886284246 325135274 888376828 850097307 198849488 314704492 255356782 141631569 56258215 477399132 468506523 405328124 240887991 352651788 890557045 495224384 983499388 90017259 295315610 918502811 990909701 376087243 964257097 578359169 235439901 802926565 876157741 916588185 455388138 143625299 749834367 481576557 745529620 962558491 504120968 325169733 592829093 968803185 356776995 99077972 763670067 629004111 670916561 177246194 591741867 459938040 822614106 176784260 70994583 33842671 275105650 495693945 428602677 877570617 599369665 488052568 662484116 34754801 643599794 879293912 443344511 328010593 116448212 311780117 956029651 818577878 111329455 881309996 499027966 185929027 724368539 467189427 706136453 998746376 152438746 882121617 335820195 918083033 888436065 589678634 615258605 630537057 621706280 390576692 614029127 952141917 53439897 675434010 901730414 520767978 195487356 281236854 757349438 62412790 255283950 534608916 696706305 779119128 517836437 503915765 717526974 702703137 837047183 510483586 642129276 534613164 176644191 472207459 979388946 678708579 798651847 14006175 227590301 141382516 765595978 273176417 208469114 251114729 43024554 762687900 966405662 726640893 142472799 968699173 29284336 936773896 545078001 504426579 139614971 647939611 139160637 659084019 836204619 398855223 611054768 106256988 825093337 506525459 498574637 298215332 822627561 955610996 184457106 613783707 487611313 272249701 437279159 949076948 708514328 119668628 824587380 235233201 326342424 527797072 100875567 674910796 710582497 725154133 3629222 934842758 634051705 144794316 698195072 804678582 363243735 287116950 699392668 225012757 128570985 453938010 751670216 565130882 483644500 199352902 582950720 765673404 762570667 390648804 544952509 58309464 139671269 56231396 46092303 628179846 248066744 72585570 515636978 887768714 938147060 830252288 671601942 841108237 627201341 315516831 99733433 136618278 52591262 399240166 480615160 780219345 547904639 783988617 925780547 358483440 612400452 260224387 348940920 416164255 38855412 846294016 310075920 170811611 398335452 65137876 160449757 322025244 718439470 834371699 640411294 160648527 682748949 35080973 786889526 238133911 899365682 757835929 228361282 102529564 868746665 356910011 952346365 214833350 356390037 471487899 653249223 618212790 230627681 529487603 852664150 584385757 978894393 874172539 116282236 406804952 917084974 392381550 368218238 200879472 109785927 317724597 417333887 793088199 297821585 631837128 387347960 739151207 60844054 478810181 687951097 276952410 216971198 318172026 816526216 161154939 425215924 328031097 625284407 729235787 481397192 439207203 727246541 868508432 8069856 185559355 434379804 253561521 102737881 99650416 187485525 499464218 29712670 978577080 178053788 988564508 998841278 675241759 222313778 331581097 88878261 369353124 17696918 491662413 494982958 378884650 701197660 420971883 938488010 158397572 613027926 423283557 962697315 998942652 833940121 571859384 122720933 183556450 629263694 165972965 220817732 728977459 829469374 516379431 730690765 718121178 308230251 864763470 620035945 781944841 385191417 411235436 100808793 618459180 21765791 192809614 446841090 228659696 40477239 303396415 118827083 79178151 2125570 726289885 54681979 243940790 594146732 393778494 69344836 966842576 619474030 662930729 355543181 222462324 593306401 98723921 580982986 14976280 201759341 404589764 448179441 132854233 528747846 930843778 465760131 403415110 551300551 598635659 931860462 976420708 262394359 262752737 327940136 182103253 355354372 570389111 11873105 241453831 413462548 551016359 258827223 955140402 912671388 918457785 310826475 107414956 54874404 53000118 654109189 191192299 578173980 142372860 582849532 338282086 642441354 358590609 467886243 1001868702 1000221278 431035537 546105860 988253888 419189135 323239734 278335975 686650308 840972397 30890982 139736807 785281616 748439193 946192533 983282792 436870690 521023557 709056768 45568379 890889448 923113325 29202090 894765380 234555040 735862276 731050901 300587967 222757477 415539697 113805898 731194780 3373384 144066666 422945107 201273133 745808634 778586686 496099179 290249375 956578034 241325607 952276577 194398631 808269551 816104187 889933020 683601590 866391130 894430334 329126172 964796743 691206848 579131333 326662639 76041319 24006717 978195512 568219048 334433991 15888320 464101824 443651660 731822276 753302869 201872888 114971539 868204348 398850577 812260032 765136912 229185104 971060347 248582255 924888433 942166275 584532088 304378004 465540841 422657423 111126767 133803847 592924290 800071690 39164328 992827364 275694181 342560008 69543426 280117182 241712264 451602020 221677061 19673910 295748142 461165887 19145050 856224993 185046084 25820950 50931964 7826822 254063047 332176401 39831163 631301926 810353557 412232472 518345774 734917542 455757715 372579977 132619304 901196974 428757105 417858318 721601998 801804135 509107848 140829441 619895868 457926190 48384650 520059405 268007880 424068199 821787887 714966301 863270141 551229269 721571825 956374963 36954697 631024627 291241190 845793701 400416293 826780076 918571932 65217350 114052396 451116156 859801971 313150280 781390554 941935971 306208242 253482520 136917892 680988048 900399603 7583380 394174063 255055406 189896220 644751504 856452382 900089063 188329341 134773176 666955804 724435815 137179188 445981184 979902236 309727052 669147613 765770866 902427630 915731274 731140834 945197075 777775946 560172609 304143299 840994723 168792865 657737440 132230319 138427445 321566346 85591016 260551652 343205685 258213466 535385286 907276742 647247095 36820032 980592628 836937001 157439831 844707974 747508779 32470721 909784728 616316283 990230859 164454921 772680686 809668192 768387155 47402486 214783096 932717289 36477406 607968364 62167197 527079608 314907713 456676435 612295219 896147510 271837992 638691092 73539098 28395192 472127093 570655304 818322668 513653643 258737273 416665805 823432146 103489932 537904663 619157376 795797856 167405691 860492059 629436192 887984209 287345666 134157743 4606339 611815154 12667762 618762920 466230989 4195377 467909847 174986534 410703271 356557822 832191397 413704219 729069258 50434471 923969172 761402820 48031917 489377017 114077545 12850019 770466859 388166279 135235511 619209821 420037358 378129106 357847481 482008566 211607825 396907381 708351300 80114717 852739969 869347855 204516933 966873570 186962016 688341178 715932900 120158376 986752058 405668351 439602228 236669343 279538890 632854935 832139298 100433750 51452867 532209554 735034224 553096499 308106396 793411680 278216597 235781344 84157186 815581539 23321453 339169489 796417907 16241057 214758376 365102451 752749631 367132568 149386625 30749760 496076368 841816266 672786324 245140424 420382311 726033295 841526051 146472031 479216053 617047807 940718006 792316842 580546534 300150059 55576661 685301262 34446104 931733305 697844272 589446930 880215524 209067995 566785556 271940247 337869388 478848157 941226007 821120254 766790832 16262188 722946217 76511729 927603233 780708929 598368632 790903956 453474027 67374725 382415419 480679901 778006061 581634785 930553813 918881410 105382721 265295046 732347493 412845358 381501197 555212754 648877364 418195970 719920814 514030413 491181485 988991737 197839410 7030827 891727953 636304958 732780093 140467964 622259955 75582793 604235888 166625521 552467159 442313775 309875321 439607925 268428266 66183193 821655217 126606484 82689076 463442658 100971185 27384042 604205529 271960947 917860133 450102500 651433044 580967914 732445188 475907298 327261612 233809304 310055874 527796325 463263423 833963312 59490977 967684581 805104150 359460693 903088151 130052130 877347825 708724803 842720898 882800144 552683381 100685032 830009181 369706428 256886723 360546943 157957680 288603457 837434733 921669507 212356695 12795143 902369805 122385444 890045711 401002733 975146209 680448450 810218532 463524338 303971349 352024817 60877381 544833482 456216312 213181987 332122057 324789079 947159396 57791203 60001815 464633090 738346971 124487764 609265494 626822327 147785190 767372463 747070036 121042007 954710531 108614266 307354984 155136062 811210881 11329503 163034641 664030984 288866254 53287601 319134090 939267990 613255886 959607913 911886842 488037541 688791798 105882626 372913415 517094280 725137088 422833857 415203785 595189954 107822124 15677230 620508538 130135475 651409597 517871766 928962286 54346322 623544054 7719457 779021720 972178604 798879989 614014089 536285336 548328755 862620334 874280336 596275201 55737907 886391665 404727969 917831235 941177537 80739332 131214274 935040800 906204360 202777314 788313486 477281521 949236325 907348744 178090676 129963354 721202401 360819250 462805208 756911401 450697832 798058607 97914890 721574462 191419727 732137950 116848492 962861647 522695944 741140953 115321279 2177190 616340887 310585073 603031906 444225560 765972080 336854242 487301870 813102307 88749205 269593883 792341081 428214158 699685273 867593694 534987255 466593276 341986694 587146066 914212927 653617910 40897021 5287499 336672449 784529500 810143047 71905598 641729791 589463215 352284677 524866487 574484794 615957648 684211377 522435144 885992797 493721803 41093049 170742890 686819470 424570361 683392386 334557501 518854115 379902589 484267289 464714166 436943768 936348105 162527482 340463237 709018473 543214322 9800510 86041266 840381846 801606163 436993850 731792137 662788121 226785803 547905400 476362185 476730775 631907201 674852595 375837263 860939779 315194453 829609213 133028906 608275547 164812908 776640737 970694698 659463026 958096452 197916409 596899676 830655852 642902283 907133565 726303798 841184701 665531505 385365811 627819220 637003725 155689648 253170113 230573393 635291517 563900480 925146903 743441978 533300692 623640852 504022371 890998654 711589696 506422337 299595355 55694987 239295970 198852904 384595797 900505107 458021901 568344830 142970727 286808487 981164668 785552011 802135813 409922765 508907568 219123218 243400845 431733351 991508810 541750831 409790747 961803119 757737771 65056618 232165212 18159883 579694232 251988472 651453611 261073428 454501444 35029227 921660694 401219545 1002025095 422045707 532809788 608866650 861490675 487464112 934800137 118082060 45935399 355690309 846576255 822969191 740356846 399246851 884240476 289209764 553654403 643295290 814822270 403514410 445561166 753831523 558798031 934711362 573670787 65782281 635397509 890227931 690469954 256844837 661912228 995895488 721235451 4400263 278061536 284535357 754519995 749771011 723328728 922098850 561376703 375834101 666150268 81805348 314921382 528811499 957768061 800919483 688842962 948626434 578253448 88599901 924531652 591388382 494526964 777009885 382274085 64457030 449540814 954934032 419814147 345920234 844976382 627797072 415277840 205776283 245526915 52615858 70826622 812566315 14899271 136116791 591884577 833821676 868252384 313408907 462663212 137042260 698614893 58656973 786326222 270522979 492740473 843539780 596645847 558976537 811885208 886123282 860649867 516388592 658451380 23966244 242591104 429124199 295551807 23125048 555612989 622580796 975337722 154079731 651573267 168477742 788003236 405115393 698396596 388551543 301206101 347422155 632351575 667365681 266497033 261206602 177579660 124054242 475160987 917978107 65196232 490536385 258076141 556185206 460854745 391028155 231528344 886097523 522729796 54204050 62455057 379353678 121838746 335536878 799386043 818440013 581069712 132207886 889968901 125856712 898972351 155009727 369061454 52292850 698672254 270019925 235829035 969681849 909371087 667649140 782768931 458955854 586958653 841366982 873830183 147138252 472077087 961031370 928010080 361965019 462714683 545963616 888067005 86063157 565246270 520741273 977328302 613819063 264329786 481392362 288985421 551416429 710367970 369675754 367698122 10967167 989358982 752040912 97885263 392925663 38226796 9817029 737269855 520469974 134931498 810207378 733347031 746832696 741779810 873870380 995146619 584897680 260639854 373474943 657264291 545270382 468821598 237465396 983262066 3256458 935489091 760886410 838903180 620849640 73010495 977568272 100927290 497052600 544795297 213358688 228184818 587047284 869242600 559951131 920742854 647085047 890061257 822036319 667578076 824247071 92407612 43433760 708682083 48386630 118670240 901389745 328333899 796433338 691435958 588121993 384251477 266568076 861386781 45418483 161833287 225285927 839495834 926094610 124248597 119905756 878425998 194751719 999048525 463715035 59318874 353870905 871799539 374241745 617847165 242100384 226708906 556338431 400569923 91205707 877212743 948395182 786958249 718699425 115230282 916863009 166233066 488270246 416944163 733150630 598674350 593080970 337773405 133580757 408923588 436234500 972625007 951753900 839174860 322822165 581916033 212629944 22073984 629564081 949514430 239844891 102585559 251871072 451855006 674799603 56808203 53681763 289120407 157059765 282698393 928906147 798814416 762988004 143726819 172632658 588906314 72916530 277701687 281705230 104502006 553563051 642175217 628133004 421266720 898289128 778204422 426131675 159515402 68831668 123120863 478816321 71095040 392144283 772017522 767140874 796127094 118970691 416599953 388596644 892129494 333137246 430411276 334547829 466106119 31705269 8894598 318311881 127677228 33631790 664238143 465246496 407665709 994792142 272153201 807038413 26026675 429394299 727406263 360111940 538642507 803537195 488194076 709950731 127965413 415399628 949203235 18988380 460978701 265290238 325456131 623013693 213620051 701393418 910572311 431018203 711507940 447993153 128442474 918351209 654787671 301765934 674962949 473507829 990207646 870909239 892835424 619004042 763355896 978709590 467661959 571873176 655854684 788483387 323057357 194792808 152074729 757261187 389499044 830348807 260343616 377485035 54589141 990227937 300763925 532799521 681492337 706000188 666332208 841935062 973425057 952749620 744444878 701832712 796316782 403405737 744244308 887191428 861470211 602692656 175617995 222633679 404260245 718969334 76335082 74244089 47867062 523185110 95985541 604035624 278866412 88960406 284139393 532535593 234301597 397946566 478782896 880634258 932830247 459636793 611811601 179403222 21690229 855871195 931621309 226515668 678875522 949255375 238246591 876459138 240150576 736854782 793231175 435851407 163675882 88204840 667728024 54984092 350851308 967615937 684128224 537353518 263964206 75786846 50818131 108908232 954305374 238193573 919850474 866960750 247029947 626540475 146353735 104183037 572339404 450635633 787954924 430742889 772939787 498845719 848153058 148699647 18217250 582236668 381825164 811884094 393357837 273337852 933715421 980623401 135828253 715079279 588322572 322184904 936978352 312795692 643225236 323929837 919220601 550948999 717183739 628890437 883784685 561688052 738049837 260773592 344621031 133644877 845192381 939676505 507572197 222596797 903463335 883681460 721675036 369439366 935237486 266492105 802478443 321082906 291537408 850343935 116020758 333599910 34654899 720088871 254158370 920259979 441869271 849153688 598720564 1512867 676575701 102000364 957113002 794658410 897525961 843261498 486659179 752158870 194806823 884009802 593336303 510318061 9653727 195357930 617839431 37770935 902446498 414356463 183000624 520996630 516915938 580217160 148264551 736268438 639864997 345007178 88031277 222970993 551377982 590015680 150936413 15631369 437058945 441927432 213069818 749227145 758085085 512494831 537110134 409925999 120549590 523180965 271149297 856769883 982727913 525629250 180512316 34650638 201699038 341887265 307685492 901525893 641978321 765172716 78657511 409988792 332686328 634894929 669641756 125987354 469685547 579506219 432158295 300697607 570627639 207277820 955122976 101831386 417311863 94332274 968756652 400191739 883426440 101459600 343376832 689702156 663982643 394615882 318562111 602381448 838065600 706238505 170339276 951401172 511264671 768122961 427994568 878961136 962321761 972717519 807623857 46173743 189330774 814195402 693397448 825269270 493408272 306263751 689402329 411736685 642245339 473725562 55852926 655564307 189955841 280862498 883389385 411170223 369339978 603197352 271530796 131286454 48146219 201486716 272946458 341279459 662502197 352355097 752936646 38712308 887503967 969647607 996755465 467645658 931974830 603597580 845435158 114942479 948253670 896292168 257462353 439023077 910816307 683833553 823317496 569613877 77753548 982823809 653897933 593732910 222827100 542387596 989830170 956760002 968150136 785044218 468381242 537625795 657501731 948020902 521720811 360244085 10280832 204767179 3867421 105045611 171264506 243507306 103424916 454178049 562418261 216669633 868197158 442304447 860887218 135313834 434300958 247973405 829864859 651423928 905441388 701013714 651886081 37039224 873778822 387887555 499179743 368913096 476442327 272310096 794000698 931725652 51854012 994870230 80969684 259335090 746482712 38598997 790951582 569253557 839973036 476465832 913449980 324540986 161754678 20126028 83284035 530837910 209079079 891439991 132717685 691559287 157965464 629616696 149279512 495808604 337416594 57159053 486242595 653418799 128597918 180035823 864536373 926444124 336501840 695078223 977670846 80721169 430163981 467886085 923625118 143559703 871203565 175095800 437478197 801929199 144629462 637805847 871692665 933514321 398774979 417815800 465245850 230481128 1365343 379198388 797588880 485461062 695188927 939340033 443486608 784358757 48344764 386113788 11259348 999506073 644166439 880870572 156485193 126824054 561203570 446200863 630321881 633469147 839651030 172190752 329397834 386207615 927843580 362066720 903458284 464682423 482671665 938914195 596977435 962716396 318600224 797157084 245086904 553043824 602703063 884207506 797074661 369183671 263912992 680368260 127221938 160117641 869886556 202149195 320096039 826618206 645472247 450464835 887755385 187850447 268875251 470314678 954458911 544358401 137991254 446294720 72254434 672297561 983616825 544602634 177937506 476096655 11526119 187171036 435650145 255522616 360302281 330601376 540435982 620305475 548155519 597872466 2402487 505768312 149205566 923738256 715385504 548464445 46412523 81364357 356945004 723413483 267369332 443608616 13878834 696149608 794711161 124888675 406789656 419531664 680735393 594279294 934403217 979041911 307355275 599931764 540802815 675569204 874178820 407917053 889007941 892257240 404341260 183670148 345271598 436486535 592477694 95770902 873769448 877043899 296488046 945624252 371827869 280425337 250834800 724444669 373592802 853061953 192149276 274429358 842801849 858476624 267054304 964316511 226942626 508934774 685497239 273796340 739401809 577738955 853664656 305719256 796484178 330762894 304488046 304368187 192794819 456612447 882197684 799896625 464343649 743607777 227987734 172492872 560070084 877267236 153229344 182612416 488348823 680374232 328651637 42416198 902222500 667153109 429510124 777535543 787553503 152742668 433109499 399179400 177286094 285249153 681983679 334005580 653760573 962682942 424967596 469413989 315102291 610345838 535318388 144018008 717706574 518887701 453508313 84656681 424250731 988575935 570204104 504810063 511274162 403030302 62390687 99063145 738434421 991848918 595898178 150709500 399025218 260545760 77865861 8058013 240132948 526615172 288253854 276128897 475051855 893768023 660775208 546328702 371684594 64764049 265276624 912150477 729823898 992443423 126429917 191141146 456757017 768040064 378022104 582196785 80237516 59244237 2666024 98657870 45443987 27359148 796905476 171708143 161322115 113392026 301511891 627099257 236878507 13801488 98869581 386368089 238826809 725057155 55679927 719006699 636215078 841785789 122410680 187458134 987160337 878950551 708818606 870100917 994461532 542422855 164654511 228164000 982854892 569577262 279910624 190064344 501100872 39489373 463375055 293225478 223810115 429766020 186582817 850296706 362985141 717648147 739739413 379169355 460029527 431164498 811982322 185666831 147388142 96570255 482897150 276649997 24835534 6526314 244046963 138506084 353145043 627844344 669262721 816674206 686370978 743425062 180193564 869969536 797968013 410511742 162020875 683711403 545769719 182412750 913603244 821000129 410418072 442919616 290703479 58719467 478127883 875164664 631207259 854337080 549741707 356821866 606294675 923117208 168268828 898831195 715168894 48798158 374932829 859690637 245752546 757000637 432499315 415295288 59167603 56994726 651575067 321945951 263653165 375016788 743941940 111490673 409983495 699253407 962913616 251871071 915607406 30327158 223507769 654091086 971880370 698305796 306264332 518021806 235536148 488672632 12998233 216394249 522288462 667056789 965302605 971399095 26753355 98327374 189936499 953449857 513250240 57042907 900434188 898262332 312981131 62203940 936392907 317929927 30207741 416908912 210548759 206676165 212550344 988869558 558477556 448466269 742609070 623661682 82809944 215827271 737632212 120729688 579824218 756533265 540025680 755180135 427249969 360930285 680586196 801062336 371467402 276570682 918856567 463087324 113279506 514231899 135926220 678740793 585729854 196937297 108018574 739141710 440170822 321357504 194161393 992080699 695939633 987657136 172183293 154020305 539238348 702084420 257302269 151390899 885142053 948973517 167073454 190297605 327659345 293405574 395959801 271586902 71812624 299698016 617004773 328699340 940082910 141502980 473958427 740064056 776720579 188212744 774255389 15254117 843735872 505751639 942279320 785089662 528989942 545905824 401381118 819094040 426970656 395829604 586459190 449388444 533375308 110951813 474411359 439631857 754276136 410638015 176939211 830850665 717797051 803394778 287111114 218021184 230074002 608591416 488445188 368627085 268859504 171427586 100728891 637913727 237159372 873332839 740121695 940883739 863893883 202725517 756382611 332543304 51405766 802359033 400892245 830798694 279476890 165424054 218102933 190059232 908323009 218202067 314083422 186157748 722818896 825262692 274424130 535045156 278437067 84467188 408522361 213524081 601953965 919979435 587677908 559309455 598235467 563699556 232418451 577624940 758895100 303875711 91500860 5595029 711669328 648949887 733238478 605820817 16054002 155327225 832336745 762696639 183153509 298812486 176664976 762794144 647225077 293261600 394511065 273791486 806693107 548680340 620963864 79018576 270905851 902838635 489187304 517443972 569994850 908067693 26814959 822214133 206019316 610431269 463250159 310254755 666960772 811234839 105320409 223851419 269612671 521295968 501860632 639039841 823959440 241860003 939600465 420267736 902133713 508991695 663425507 944912658 704313568 837742077 576085477 666002892 310831422 681805033 879635854 516436143 507112158 532442017 320382220 447867868 699003974 641142733 359573114 181272033 818208653 441526583 174722056 625127262 609474304 460913496 74503506 718484845 541969179 506775613 290592132 980209462 975100417 527512958 659118258 345941980 281029911 499929703 477307285 564881806 878780805 596501480 652366711 906333657 945746950 561420561 419800524 187051579 270705330 450185068 138806462 694825632 416488030 658952891 986744018 546299372 526372108 363067651 394790875 400944195 683501809 489042788 74050654 548438689 730467748 408279394 59563029 247758679 231590728 692623766 456334403 993832791 253013213 443141790 130552732 481528652 703548477 135793300 551737301 673250278 739110370 244861331 23563871 157001742 396982345 778769573 777583887 213747285 535710539 689617917 857927339 464143380 692843604 505433902 827742666 165506595 457865142 176146381 725077169 332258263 456235848 194682587 197896364 583416892 595055965 371101560 229930371 331588250 466143856 361782804 60250143 66851904 497145293 479284220 23966066 727199994 37310890 220204954 341083172 885858632 997208894 886186991 412735125 214531181 513390193 624951290 941617761 543544184 384734535 459641835 454192670 76941751 184923189 498517347 97081698 277114471 180998547 940474215 92030654 667015516 53297618 187521870 464339671 811631358 941230600 646106801 13050277 659483175 974630708 889338392 581252952 332512579 298178942 402270850 381735575 914386054 613416201 124033265 69614259 658067820 825916497 736154261 563527534 155921024 624261964 512079388 287812356 984902793 280411762 69569720 904793289 176175262 590519424 352081162 303631476 742570622 529307050 977174022 990108361 316617943 53019646 4020962 210299110 563017986 241282926 146656740 218687468 781890161 363365934 219856049 296045174 202946309 504456267 949352473 539246325 53230203 198039222 947395580 532788616 44686847 323841252 447253267 109842666 452192514 645427281 171667937 760113652 81225279 139176306 231471881 515037056 99994250 648497645 844361789 225333836 392358839 482398129 499785869 677198045 559298769 989881288 602011904 811382081 3561796 203335664 625762658 376806566 383667761 367366893 101837932 6631486 62814517 434735432 945965944 116596697 843612333 955275212 548707502 787848505 906165996 863833693 522398566 950969257 70960217 761802959 282433750 116772417 74256425 352844493 478537669 101983938 728743915 249347901 588463553 798423571 902437019 513538203 753608460 312705964 373387296 822219051 792274865 264005965 845759728 762526449 142419175 115371260 518287740 982989715 381335697 36143137 947526289 464001221 344355445 656257745 386221164 183705348 908165085 848886224 345326292 307020865 612606823 702286850 317839867 879403277 809023086 551835558 247819771 360135619 425190698 270673971 688519202 199799792 754141627 577528985 35304651 260063373 883212273 411292642 36987707 215801889 771858426 112221721 815356258 467594694 645738361 600649196 980212513 850657462 209631558 335671360 666853104 223314213 774885761 112130285 417794508 287559195 231536979 96914753 555458216 161763380 385670723 690093838 86669165 178377730 253234586 819235840 83969411 248976381 454202147 922247773 797893609 34119063 421383580 584301944 689857605 999798683 573376739 215246944 435531232 216671118 120239674 367603469 584577186 636791313 41942544 449489974 119423496 679289984 863989018 264363222 363639839 984020222 886562555 410688216 463703696 579903701 699430312 850313013 601830044 76036660 578340311 40364402 686181743 876307926 624607466 735873680 768874439 415415947 69287089 712817620 938755896 22848919 440801063 170973419 401427965 257637989 156019023 123214943 209069161 499266804 948419966 608709156 960812940 458244017 537504553 425252801 609625378 993502787 6769265 2609170 293823740 629706658 862224357 402622589 900838463 998209350 464565823 803948200 120796523 593381718 73305996 816546260 768207331 725842256 294673885 985245966 535614311 979481559 531330714 292269021 758337957 898002095 635240703 228634831 744700543 218112530 923940071 702824349 101372709 339862321 779753433 508508749 994812571 731555077 986165186 851346292 680282237 524484178 989283462 62272329 442108177 61281727 464718456 310934118 63387599 30132867 329000548 347350391 521369751 843198046 824492991 248377071 960123287 446566925 997532967 480417383 625487264 803599527 548073198 622933597 602193164 806776409 511234 787863207 613053358 621347092 820375071 180237410 151262241 509284059 701147151 737492281 394086088 901276455 770148478 379965644 374763858 396749991 886116901 136239436 469280603 313721407 681398851 234024279 958474735 491172492 925619453 895041354 591425849 606033237 90348832 299003278 362216600 1829335 454977706 618866822 1000963160 451136133 933273726 468761402 341174667 659014534 158129093 28578383 652091822 612176279 961255538 709199866 75719484 951276878 239027481 911107279 218456128 299687019 83885752 847407701 282260327 988092619 35771264 275732082 339839605 197416213 464691190 253679366 297833482 177870596 156761777 595822752 520394996 451208298 778981342 350554821 131620700 355001548 195669443 823323042 969987431 417541951 72625226 808147105 41323879 900017791 396451647 996772766 783784352 827358553 927406508 395626064 339072788 270893813 852296231 960626254 682620368 933549133 333562643 437486195 321829424 65235289 296203063 259096846 934511419 671956944 885496494 775264827 161115643 415090882 56972270 181984256 889399507 848970182 941114208 518902659 564658975 221171230 597479743 739749658 18758309 884735539 777767249 467012815 674033089 602186405 354670641 2020715 663951148 439312694 495249282 211129425 389069610 966266118 299972537 708479945 544467996 119753460 635825748 686240548 707696037 99464129 661997609 538790322 856212642 17574363 817556021 522764997 146184979 273718519 46596420 559778387 552139913 669587143 817481758 665878122 623255340 601344758 139340418 404843484 86676126 955295789 646970648 959570453 998666979 928022462 98551545 577376615 294972370 817965156 73357722 698785184 945346261 823460519 558228509 629165566 265678004 956453756 645574915 908926877 142395086 202337940 293663570 661650666 640454443 626392308 824813840 472690966 799323937 705846313 791192573 924659793 221876626 791409180 738526515 235338517 857525226 169143164 197107915 544492895 591971115 156998898 830678546 737485507 255515567 157869214 58663793 613977662 897365590 699266252 856138593 137110260 156088471 894245318 112831547 607883366 63309077 177985108 645454963 407399854 792359655 195515200 449191331 885369068 281306318 808673142 611032933 848371441 912950398 482304329 143173927 294250904 393080037 987707998 21029108 363594748 139237722 429450878 158375185 588188989 702133467 725273321 375403326 98539495 30663979 558626122 482614020 610498866 827451702 893501586 88862973 706574833 770678985 225955891 653847837 350655120 655423618 388139376 518034642 405681941 746953665 518272224 317056407 907738297 823253936 767240317 324527529 396949873 581292966 224221426 366002274 625399935 373176731 271807309 484377507 433461170 851378386 816657279 823146273 761597428 196899866 715276695 624791827 537627944 775498271 127782508 631015203 496709397 1000846746 227796330 803322006 205728142 527134569 133573941 614428710 348991824 624774614 701175791 331775663 533285723 518531230 825895274 716189197 284529790 497844205 562868311 17365760 737836842 256758062 246202134 316484732 997230227 893935501 530545381 157954358 734241651 673875842 592505167 148845443 860729150 715415755 1001267377 610334923 289840590 925456782 331351011 295154923 227777698 310199702 925977135 965069918 156420758 125715762 165694778 594216612 722028238 31516394 146698940 359570865 649038306 962618357 865662642 554981560 799408261 311560851 329149689 706164482 124081764 988969273 668055712 848466442 847998900 983895970 278585171 812564400 488253326 908766426 552466810 551131561 214551462 102274091 969048005 894549139 535229348 901251046 20274928 789130207 84262456 859668954 780076841 154918725 600567911 6362934 77134131 44995930 672155654 261218202 993511936 439586287 299769657 970935933 148485756 626729886 655935654 863536015 391876296 742960940 347655389 125857263 203272048 315135889 344002030 427535470 896122162 593011118 842356867 897219251 137130694 769052163 145911497 905459235 287047247 512707597 162757298 96830110 842936434 704162033 880017356 838235404 26408962 123265485 851149723 980651058 416917704 866938509 444238157 784131048 982497442 164500021 55350777 696625340 525566285 975702584 460980538 891712314 269161489 874670591 450878694 674287031 22883715 138424756 391270154 668172339 222874680 15320673 699350635 400516916 240395746 299925320 858378012 9274150 92960848 61316930 322629163 746357995 258842876 392766980 507568135 486350020 59307887 823847822 264849961 754267845 225738102 743142015 829085463 629093975 407624943 777037536 477269312 26287689 126248185 674044551 661405139 635121912 73036446 815930220 220038233 865305792 997179637 564100621 181692392 809212073 272561140 306849362 312171615 716699597 190218886 534750695 718879846 302789099 600995902 124715856 639701480 181810731 576883025 741074678 267628254 299094448 189152449 283161964 997795479 301920588 884048715 75642192 128462990 45259253 898101637 838416286 46203679 329260708 730223942 366832383 562854747 183066622 452298408 517633378 493873159 777991657 804495875 64038196 102946507 939963503 85028200 186230408 911055177 722172788 200508845 440922281 14275506 809660867 149673515 256128026 307938208 854692723 653972223 989062330 855575743 631448946 825778695 231141697 836505775 96759346 527608327 914882443 447239370 389000207 321866903 634302231 70018335 815539993 165132419 475924733 849054980 884629113 789988933 710267875 745274667 873983546 455852813 599764971 571743253 561317449 582404781 608283736 514637001 98370966 690905327 982872409 575700766 385234957 405765919 671452471 819900349 25896091 750187783 976705239 363053495 263217669 958908400 555947831 317345403 924549829 766196847 688298868 63672380 150212741 502519573 947894711 950159210 959297869 712467475 185561726 761216388 189355107 872551966 812255054 33061461 149464529 618168980 238913221 404410123 135019019 748788964 363750142 153624470 770702871 479280728 918297836 170160662 860271492 903910607 494330621 809658670 195844117 70261536 957364875 886857411 789867576 304636652 437525629 551559610 167341242 610611017 652211346 709100223 949924918 354588790 77981124 598017155 643420961 113579132 65650225 695165092 965452744 242809292 429273443 119737736 168835782 584687993 519343028 310002457 929987741 177584382 847484594 45041157 674426869 895389518 10190077 824812875 285198726 493337235 959461287 139354867 875043334 393767860 736398046 638232233 387931225 110263769 324688499 165637527 750158603 229419671 33753637 721217135 714534625 28348315 137508811 281012972 810382449 589018706 78002590 912419484 630158093 575495183 378738285 18940061 599763643 692397510 715166720 814469265 546802284 183336506 318736586 856001249 576901483 166745263 895900964 61769648 366157265 544226279 147640631 208515906 381728409 725715630 696835394 703431585 739161457 277035647 625976862 538591968 93987694 764487414 431906612 246868955 413667120 741922547 470726232 819067853 915590711 678000626 53658673 916207672 666003186 209294893 137976172 521882056 353886469 742004241 301787458 979195336 740498862 578449112 287372501 377931106 781582235 428622943 999234312 561480228 380675896 133265144 401600681 345302283 325337536 168721837 706280631 268855634 568341560 819621820 788845325 128069606 558081862 938938623 31723890 836794797 390311025 453609578 994850022 675242892 505806070 731702550 88618815 22596761 43768524 400391885 882290864 397248754 414517734 660357912 156964809 754012636 762593232 144893899 885657439 470889072 871645449 598068091 518199847 371112364 280530703 673809835 654533425 976976753 383295215 856150668 556122247 287957343 180305769 212918750 208327661 916772572 640481005 701773976 996992399 256054921 741762766 139161566 793952692 30353481 250030977 169313214 524732981 213725897 85323499 93969630 488434842 805065546 820729433 128792221 525766518 137305883 747882514 832009257 684450101 298466257 277765349 527135463 497507367 869554679 398641336 55773140 373745929 973162939 109347399 771427341 461584415 543782186 676185346 265374128 768802226 526501944 552387816 707726082 709822037 577744401 955673570 39064222 146087558 753111727 850791983 198285905 713304835 885976253 4367182 696425986 66959599 592890923 695181112 172725362 94160168 774188666 531312820 447159847 459697799 627663731 694195947 962191040 606430203 427706282 653124920 482014428 882401453 528186188 825441942 285342297 210682930 739384331 78645226 159532209 138615000 896062622 163823898 658569852 350852156 119410184 230767730 920685541 643280321 489122612 503479596 521637936 589979224 818997506 949541577 479364899 305025894 401597052 777387210 234133764 188286276 528607768 29715484 307551788 1001998592 626726327 795765673 255945634 658552719 580265339 4007130 658373880 820495888 432254247 522334885 249193688 409033681 536768789 296764804 802468084 25876421 720324095 524671356 10551049 656759146 43084673 155433885 65795119 812301410 830972044 950370853 845405330 143850969 270051023 678353370 993262828 796292281 124665224 295363961 397307540 891856460 906367657 738770561 960085426 390614191 46581348 609434977 171287180 554090845 95813455 646211135 312973278 254308684 548585963 931458146 436742663 805742027 397640140 933378525 894693387 357282847 111636266 717650708 244258717 840305363 452391221 663036482 464183610 446987786 476308410 173503891 275332913 323769858 744578034 75039252 387184945 840249189 395038080 679171811 82159284 794613882 415838513 862718910 549472108 865414757 251974747 864144614 873428260 402782717 744178067 488586037 108597536 370260378 858620365 518071217 561392611 297366303 560105832 467786 94696673 630017738 470515499 761447847 297188430 40921033 528183456 539940456 279386736 476022747 536952067 47515842 757981487 508822790 323094183 989063765 608294508 718890600 550402047 533304198 723945219 53942092 419276749 694135095 906353563 418196527 689734339 786348069 633934151 340353708 612919530 159359038 256146385 377924047 703004181 673275548 811857195 324043741 946844048 855966946 978345104 433812456 914359178 229061897 742386166 661935304 685890426 511116787 577147166 939774448 74859699 909396204 177095963 720162423 779677055 633166724 683304993 6347249 582870809 106104801 369873557 184596675 769136622 986059749 564732872 14071305 763172033 272147465 803756992 317113668 220172465 180367205 114808869 990435975 145170462 609998128 689424470 545133510 652581542 135556339 237190894 379104214 179153927 357553264 753456922 877312762 363836626 106066591 143242171 276618997 741372686 965934149 103195856 834329234 177276199 676219855 227055502 808199300 656235089 410863155 691117735 175136040 873431409 487852767 800142336 582461469 4138144 73243922 865474892 572102013 378924608 480916902 349841147 818671144 629689964 255554910 411739659 293467468 588937419 700431411 638121246 919589977 724855257 419002487 140826395 174659236 272765051 500773423 798936962 127179665 205575634 852017531 510708017 142392681 696847940 959585101 90936619 251780461 182864349 488335381 520529747 246005949 597603113 94247275 751500500 508105374 44691374 866800448 108506914 494203604 807150047 763994709 423765404 412772892 359632996 676022510 823337180 281757798 794715823 734797849 14173918 960800353 485837855 259942582 76002525 296774658 716916224 414796118 152671668 59353964 145726197 469490719 68569313 40247203 910970626 230100185 645131479 296987309 667958465 706351681 922135321 606535162 935443012 100993668 147684663 869203090 6127178 557568510 570344189 243026574 244423070 851907790 106619930 391590853 257283383 966179291 471334501 558965255 685459506 473887352 82025612 306793273 337218593 974360057 493154755 719543216 584906798 170542140 53098350 247373625 777175649 368353970 774396264 638045601 155116829 432316249 871901668 875996961 902254714 629255430 29180292 250636081 863792341 718816056 173193228 16544552 521544 711878252 461895930 946136792 766718287 30850637 652852911 521836034 950565906 724697451 379857925 131427164 382617703 829180743 432345766 379040414 20962207 541100588 783500455 835405067 978529533 559200316 259422221 766964783 690433220 717757670 783191409 746693048 811119238 364246570 293547966 861445107 744056256 381946011 76416148 287711726 305019661 846248274 492371055 736836472 890725496 605403986 743365423 865246880 36843539 807276234 264495049 331327042 634044714 807646960 818599761 795327621 222247737 476048544 620451195 613166126 940937207 972438398 585976555 146312500 159678809 904339464 71886773 294292135 875485783 82051836 299809515 920408568 978394450 912737794 733447727 548088673 576242724 453899583 29108171 96175345 295794993 981515736 201714348 748051887 452140164 101264225 226005546 795651951 679369293 527792253 326434861 722249910 326157560 490760323 737573157 513257520 391450077 82719835 431521251 1001127501 118926440 551072399 65367820 426810767 876594324 723290288 243926627 271608800 422509852 961836784 112455052 212003771 592422851 331991860 248956697 929375947 845677933 861388929 767817308 959935945 231776489 21908868 888226147 363278823 650463483 196029913 116436759 269741778 567136367 460544243 435261853 87128923 144547674 982781004 509529361 47209314 140959679 261608564 983300275 775311809 283444143 477258139 503558362 946795592 979778011 929880477 332195071 30082601 282661883 348889120 67410123 706704589 183959954 627649207 395961449 559584321 715195322 213114567 268926311 129471246 25434446 195735233 185340623 241423144 773064243 197425368 517718848 280861581 98379056 415065652 198412707 604473518 222281448 515869992 461280612 872099262 844522259 404279395 377516060 184406023 135646487 104212829 782450059 221293982 798120524 19290633 383418232 583612175 295805940 651402475 497853034 520047785 651081996 677015506 717668062 277142296 683262316 201283371 721869264 518686217 806787209 622580331 1350206 194145398 498873949 538161128 549520243 684055756 798181134 515937881 23866921 563066268 805564885 79126781 57786015 545820951 744348111 74864532 242006256 455366456 684420716 219949908 577789775 752275966 35604178 813786044 697667100 849651937 395076800 608914294 429076728 361464764 607950887 523201551 694086857 832568031 313686835 945580387 851685837 838017735 282533318 195190419 761394915 841309143 938962777 269281117 634205827 311282815 806212457 645441302 678983458 901612679 723241259 617283992 343230811 541855212 863404238 782189846 541868977 196980583 574198369 395128486 883596656 372546645 657918335 464513124 706579692 962015782 67176658 872562888 742277289 153867568 100519491 861992166 572036033 787155466 161119760 791312119 707608228 35470019 186769827 138421822 670734549 456505480 4567915 600400716 491813479 744141486 557188024 848389800 363888700 87161338 788414489 462667709 868955450 524467312 75074900 780616240 723961540 335362683 470105048 280447758 123544981 245227396 166309239 460812871 600222908 600425669 731062162 225069554 173245176 922019947 688218104 799080649 676920574 279653205 415209624 771929719 493115908 879556902 398558684 761206211 871119444 307800601 674484954 117187540 758407157 689967646 16795200 597989844 637772560 92389828 570229922 461702096 157177866 173580269 418888052 56457713 94119524 615005089 676852519 219144532 813767429 233636664 625563483 148369475 746339131 914390960 512191429 887015488 438419221 539363531 707496306 572926148 883491074 114063133 607032056 311088424 848922591 847922436 399849912 844256403 451268406 957550669 899499296 366618955 383615092 42114415 630283257 873244848 240435965 827204681 192019344 167894055 467917701 888539468 509782722 247024925 73261658 707899370 511409102 364507410 930668195 813042311 870179067 633955083 750356656 182362284 416066675 80171967 32255409 269508302 128197842 317575824 206573864 282559727 380024717 42666841 339786557 921007085 941704833 483710899 248718100 541251343 387616023 802229902 486275621 61797844 167142940 918775969 590590944 133020476 645176186 125333020 406154212 111698393 247258857 856269924 406119486 972905792 775906133 807136954 453366875 494462362 531568907 582247220 554669747 230447123 400366676 988456553 185679798 843335160 789675302 772117251 817353883 217467545 386893310 802281118 549359881 336488856 641666067 967170267 984858362 337848225 929508376 872345467 898892369 393448889 963603440 971912669 287315463 669666440 201537304 789344839 196274431 496797695 120534774 101997662 811636466 270616293 881865716 374780677 939373911 701682258 298762892 1001254772 488629736 285548152 484961313 337504348 270616996 973800544 318460946 956879729 258380873 220839367 600891625 850407439 239481999 718260574 251614278 818384113 543470508 373386065 133881393 574416319 16403877 7617988 603352490 430580141 339370251 813524623 656896905 916139018 365563310 558987700 356164243 174660416 197371290 486219890 365374321 193637716 93486999 270845130 380513857 54399506 9641225 667987695 223677608 344722493 948481113 670029596 812534499 620945338 832631228 113425046 372568674 341635660 978686285 301499771 899266357 380108923 595012887 958647652 607773867 56687648 975066655 679102100 47342581 744258274 297260708 420830539 689503099 12890932 97553439 418909963 953858864 924302173 715412113 830425324 259598098 939467328 897345400 880721088 751197701 16241812 912619074 666241485 172588954 752664355 986671968 355000445 354069103 93721990 21389978 934118084 964088350 146541555 465122729 247243926 775938903 668773270 301511492 861837209 808460559 374151812 153477376 302684946 435983795 200452133 433011828 633302256 42433804 479049360 134250150 126823532 541874321 403925326 293523689 106098853 622028490 867952455 109063654 798236159 486181509 316130504 989351167 107013979 401266141 90129173 456701246 550990119 189689799 801126834 108226903 684173650 100832422 29719586 722451625 337846370 146059257 520942106 943523248 631762385 201264044 451263697 736797910 245147602 297124772 57056014 507713105 398735839 946842915 977415568 6162625 281407367 804025485 226655173 251178025 771542168 593077310 341840690 612380374 712888868 825368348 609393317 143052459 351494428 435285876 321600611 964486964 7886737 958645883 284439510 779218490 464808343 41961514 837488874 297216848 110651554 608888070 560783463 628192126 252242444 22543672 944467967 392614126 336594989 642639644 621164811 6420671 934739422 829865326 793683703 619465125 756796188 323341974 688148263 599058391 974278224 243510465 217482256 202703050 531908506 912347700 6242951 282594684 937346569 40110590 527452843 882646507 701533319 299696830 876941293 881178059 976798850 9615303 110266339 244486002 292777112 298512408 442880319 995036956 706530015 830166844 754153264 689239865 855283792 44036162 35957366 314755182 553036158 225213759 117296415 232950591 481240565 869135546 783480120 428486131 727470460 297458881 238758865 755643746 241316173 359838155 490281168 381392275 525175836 68811242 934757799 722210139 736115061 359544337 799658010 888390451 875110402 687386756 938075536 405951714 423354214 451641954 144577405 408681964 466436255 708830315 961633691 11277758 37680769 826233036 367372924 535838655 179244434 928937044 534642656 465614952 255425683 78900777 77752032 754263020 12140425 650775487 708900165 930830525 498054801 853732854 90449134 429815553 543035096 244203661 141720737 976639941 393013183 881521839 655447913 706537806 851739992 977724000 262173801 593876759 606609563 133905432 558610020 535145959 722046339 524820632 156674549 421982444 81402509 253090342 318024849 392634776 687150797 564241537 114370328 386519417 60195506 680636412 571416558 970134964 48306481 960372248 80657669 556817957 654743921 487121283 535397013 634237152 438987730 187293783 59260624 239673473 304622421 340260251 904970785 743342997 840395884 984874566 947733738 126540360 177858865 690773139 226876222 744706634 790528967 621893624 462228213 692844050 35526346 352422740 137601698 869219172 957274138 504628438 180702728 1001232020 974630182 820886406 121462849 516149296 486536383 657721744 118691826 307537026 243447492 821855540 424596751 752239059 188030082 720060430 23079585 120058040 601015741 159748157 209492039 510910906 686827798 683896271 27342133 601008106 61173960 289729203 807452776 658622145 227166370 445907027 68843628 626435566 132097318 138609588 721496564 186407037 555459463 52304714 891123294 347192102 290533016 982319124 130404897 722042213 558164673 461449243 974756540 81617827 395257993 240451571 26939742 319896403 45437891 781147595 777174980 731431525 437788881 660770952 899344174 375880524 996165306 985456696 846177535 589580 989387861 635481705 483982156 736724004 961894487 572851157 901295717 672248678 338262676 977860366 768599431 157743272 850319168 731920978 122912673 314355511 853311868 935719822 368080007 388447562 480809450 722452381 68375005 251179688 503609895 8856425 972670298 314963191 568129414 508821281 797939651 275795842 614576474 51622043 297216246 41940684 582014021 398832157 158813400 895504047 475345844 808458121 598311004 599491604 717434699 574747446 904914378 777413710 644745868 448228825 970493529 354452483 465427636 168897779 448597715 913312092 396031922 471890615 777292561 829206739 604339172 787559565 714014163 618610089 212034906 724641608 31379893 637721373 501835857 372898178 348314688 234594431 521793857 472638840 379858552 826682110 304240145 11104981 701809738 711138757 839952293 499411175 407594965 761680143 674157931 303545954 802426500 743913586 731835223 211021116 348134274 615693689 694462029 617280317 65758987 871356494 895842135 870847972 787690990 398500515 504574868 57437382 268185102 97879975 238068308 374180295 812377817 924928495 371185604 46013369 337892363 9639605 913645032 367449883 87142826 760307210 985119088 898781163 259257952 991769081 834937129 185858337 18929936 859231720 464354659 68891759 991331667 873523211 214394627 53457789 576516955 736655034 165805066 791977362 344430853 555602262 568100243 641571067 635992216 3378123 537179004 841949694 836514504 69526697 384737899 863837207 469657918 657650882 951837786 976928749 615944607 716698637 939940473 291732591 533480209 599646090 709885969 578073802 202078666 937919936 950788104 99218096 308665626 386704850 291179159 654079112 922981696 908515422 752625678 894228073 759031222 615984914 65173575 657951277 392036850 841074640 952677703 572760793 810606265 186264657 626558519 406434999 610117041 237318122 632082539 949834501 860744193 692291896 656520556 746241028 134996241 662956032 903063110 510351590 262163769 223812957 923166401 409760558 837453160 612899131 623663065 447058989 127863145 94886195 101490774 33811459 13857326 685378053 582373463 682523129 864668823 677469706 183781403 384513334 711223088 763043559 259931310 345659751 275901024 92170627 218862696 672279040 514937792 656835986 458074817 288173573 974127009 589297132 776749789 841077852 655986173 838137020 137475539 171128064 29307182 564191758 833125442 313921640 122121772 541353725 29887782 537080218 211033473 148612322 281034394 352707321 2324994 256060836 268284890 526547657 750252853 791342711 965329563 917137604 590221365 893036820 552732790 712824009 372867962 817408168 883479083 754779456 578098575 104245389 950973775 921613996 806503174 412158840 194487940 890165448 875328532 118500993 488559660 401944365 847671630 77518570 20903002 38638668 362951607 741442707 244774679 388281222 414009497 440824042 168900040 892460369 785461784 795521532 114858229 475811040 604057020 66773760 939283275 919424206 791281322 855549051 704932602 484283182 396358899 378049800 980216824 604581696 543309356 665075580 820910487 168657155 329894815 835081549 938581328 694083567 732521614 933830654 819367290 332117151 266470972 784224415 621494309 859589913 158345522 141417096 512651689 201778460 539208719 813591026 234615756 530036218 692789371 959679627 848829350 856956601 86426528 692878424 472710515 128518793 259182376 439158243 719016989 10446256 67821229 111114149 429924408 736129221 639720158 124363900 35716662 699995210 951680427 554379857 829722535 861018085 287635170 785974400 149935324 282075151 559389341 755328060 904463068 60182955 608096384 534490120 359399243 648411343 414055907 832559702 547268106 554082244 342130046 681607891 123302041 862040641 349963283 344015685 245453268 253404047 305266584 564662859 294691826 234043858 975819079 212971245 552030562 56542319 811591731 207408876 779729524 923239446 922347071 275337410 700916636 302853443 128075220 870210636 437200756 455001044 294578428 44772480 785048352 272447003 473415630 382289973 131762851 941859526 371138758 450280183 480406192 984057836 832797117 259491219 185684615 476675291 175713736 816430378 435524054 149165385 223202079 542188514 223205353 648565298 484995918 153327597 185223750 549286639 891565144 950906776 57966378 843271721 110351152 981684318 852355691 389837332 757364957 202865022 713164535 404253095 101940867 761616560 975972607 417381806 140321948 661333067 702927385 728165138 13566036 972646454 524029880 304094284 20669646 679077470 765580537 107693142 3538875 352150741 201458982 361235160 779530628 99677201 7604713 428617405 203234999 528505016 790905448 710381708 982574737 288858428 427284811 77299146 61567533 717109671 202466526 806025516 675859874 683893014 91062152 200529412 103292645 298820666 736202176 377792667 609227676 886953586 967765171 381949591 122808963 496247100 13888009 337631135 231293014 554300653 738449545 682190162 514578362 473354887 713447741 406880594 384249697 85671907 937409308 501559343 785959755 680935664 183198290 57237773 466733782 271850717 788606570 860785873 702980203 270759644 709981685 197763415 221608027 788547796 473856512 182710788 275393378 33015862 900109090 675301225 491203992 595135202 301879862 569479329 540141950 632687359 822445404 992808969 191312245 872675596 316243580 209785297 467047843 296830372 267839096 705637369 429275180 375855669 978285119 237187238 271822961 504994577 477768630 421553792 314421470 624940513 862738120 483002723 515838670 51484244 228122795 601879125 346185802 406702169 32951239 507146424 759385163 315612558 258892336 852315774 986944119 664390502 128418879 290604746 380925704 979039535 743089140 162520859 845470860 555585905 439747139 538455567 422654980 362151450 152032956 94970112 511409059 319809287 662614404 477196864 295393149 528180780 984254139 217996144 138547852 5648680 740345558 897188132 421668965 411452916 915053154 601002893 292225857 595423569 138095891 467592341 170483344 44773195 442706383 877807583 86214018 539398329 97928957 852193229 9964450 527560893 380884161 944314322 632837259 197002419 931023116 810988864 482223599 174348310 695644193 970361085 363424095 613893548 883757202 859011871 414184465 157121349 69600556 902170276 299596884 354020077 599774591 266829817 41236942 567452534 27253813 6577676 159902191 593940571 181772551 82590584 285443210 930160968 455001979 253403083 902699153 676427098 79820377 729101816 700948231 309079213 614386220 145606380 122417194 659920368 43256091 359790667 585723669 265909074 228299359 778598841 775609561 119651828 823150369 784049286 494445994 760292337 584226648 102443173 423633902 804948653 260661876 29315287 321483531 89881031 538254300 419766884 144549567 710126766 287348193 86401957 927868472 37785754 554280649 985794285 311818138 235918813 411381564 901520285 261596981 409218901 270108387 350620313 463102070 679527542 610425706 316619693 498500534 812757732 880501296 725749013 955735033 651373378 95612994 899332415 862963598 259981019 145890043 611557828 749832713 433297055 402740594 891626179 716272870 567557829 686294637 780770131 330644115 512768422 828629051 184059662 425310519 454733231 49278624 225370865 207041653 339264863 653100359 264950970 993966376 888647621 370458788 423439433 119959731 665453768 532877117 611985999 871650403 474715238 362698487 109202455 496988006 200215253 496066396 854126276 406861810 589309237 701610471 583800673 294418392 436831513 208157440 527380209 126027246 347288968 270265375 967587806 782910764 37344148 300659089 724401798 544546124 668181800 478504539 541432287 198637813 972325260 292215301 996537357 206930517 240723180 361683793 893197472 646807658 36944006 629618080 359407971 172857859 226202239 387242252 475553877 482168918 233326863 455613816 441949472 771233942 127729376 965696194 735023928 159725413 670826267 328673532 904916470 545203405 626336991 659451885 884095837 946872875 592554625 566656304 409373861 163505092 87854048 169834793 705836128 409671269 718315509 538170530 871037520 317325961 504446951 885393129 361613587 36602723 325274923 605251035 85393349 366247173 541678767 77243223 451278391 386604609 509740333 947987328 433803480 888395388 194000028 185477926 175874036 150941868 759310870 777093491 622536596 458630514 307025408 792156007 426863897 298202025 222184799 146664732 840408724 616011877 596470405 561728829 427178601 989885976 865956314 649641342 46415308 232707163 145268464 710160087 153301732 494935364 539792463 983121342 710643032 480670189 240493328 160912927 86783766 956062113 908822518 915573673 917294821 9065182 554044742 403066518 794851734 742747273 410191308 553992565 980466460 871911975 695285864 562792042 56080064 986320824 77744449 54041204 295324765 682359317 708263556 564278073 925012388 589790549 985048549 176324921 798632531 643336781 925200208 937760493 785303301 681010399 977176674 604713200 489983946 824586226 390587893 12974895 486345666 704554848 305763460 457431590 80211129 939892275 707428639 357177293 301819764 462931015 692524646 556660917 30771404 997327207 247226919 864304901 692987774 495498874 847721123 332772740 69153453 991077107 856115212 95395946 422723464 274047993 55090080 704562727 128018142 808780592 820204190 860208256 445845469 186802509 797424437 193777012 825247405 282223584 585109321 829301812 23201699 785901476 827814358 5990952 807056063 993009676 469369246 255604649 23236777 772209665 932494302 964909124 244501541 75369595 203174304 23865119 37748721 851468076 934763581 95015631 807689104 683530275 760101540 759504293 949738190 551460592 885492700 502632798 475695077 768628160 706059067 71556189 280549738 943496786 159435088 17558782 705550774 749276988 904956603 64570364 324881024 449061461 433199332 765846073 957708017 921391863 536313696 151278463 889122695 387949800 333449732 945366657 168257999 654098479 82337793 334689830 427390416 218263936 280574333 583551660 127111246 619914193 338068868 10174696 108163346 395969764 722588959 809443341 743437143 912906821 952113095 137605860 307032708 765279811 895529050 588951063 233665075 713884255 43945026 222216238 560314915 506364196 156858145 210330360 426541749 531757089 85421819 912303389 974903490 785646959 627431280 878435157 209390399 584093902 841166661 349841200 547195434 900735520 460154610 748370197 445945998 321018894 1001888497 145420412 569415703 162240426 940558575 265287909 630261123 36876797 7144094 388983332 848905800 798728717 956756108 722205182 733312466 639614502 644028627 434578047 158147710 240785166 312019197 73416569 135075175 355382190 461657861 556509659 744543666 936074674 906048645 565641341 580419054 554485664 808145517 308934773 855228605 69650412 375661009 705268604 235410453 287796672 647480163 33449179 347667061 332747918 848894496 751713724 22274018 607904079 413877234 759372668 40218548 703056321 84567237 8277140 538934265 154854178 182735989 838044492 289953498 689627607 277865052 312130810 679203132 860205848 279302643 761189302 204489259 647875982 872853823 509617041 205409018 386290698 127604944 161966356 912500738 108892956 874217606 347231987 330151914 859102275 819201677 896089180 466413434 343021433 44458098 327537297 594179691 578086350 174944978 366006655 469422791 813044329 852350384 552164488 143628884 705581420 425581263 74255798 118733914 730823501 98744202 584280807 640222795 361830786 835656111 11938081 718822121 707390544 327977299 986153556 407632096 492750040 149596195 255787712 464605527 903405733 657888688 916071420 383426055 662310057 93180773 184861035 94592760 371863019 909827441 550736547 776141678 71535636 865910148 521752016 776787609 838666240 346846517 856043987 976470983 961500508 918406612 168881245 622448241 326614580 309653034 391965673 668401226 629121631 364402097 265134187 547430884 588099804 988199476 748855223 952543721 642713252 337475555 27453872 790138831 576094728 460085276 807793080 51011204 354156354 142391059 772701300 566811763 526454760 287327790 965700953 940235043 371610007 154397126 546372213 2111448 159783445 691149123 864410744 69440175 909207854 502560264 917863179 654420840 232960582 255410318 411035978 345915780 52599648 429077519 425336507 948432328 982643673 180936794 338243201 117344521 893297277 867405787 664552572 473910061 541838405 267599881 675850824 616103001 834126217 586088376 720236286 501179839 917162642 616258544 157280290 194787571 407157203 22248412 84953686 907271153 854415560 921006100 664940676 296347146 622007576 455320508 239222853 343561905 66061634 81490351 54928427 231848226 143359893 373772673 234047316 118726297 11554521 433525167 310209999 735717283 370061227 536941278 28645718 721687006 221015996 404508055 722156548 366177553 990933240 27993084 74627510 240185473 393176533 221631400 482822614 661886751 122670658 770213920 578635353 611417684 279549172 430420530 40025831 23585446 25299056 323038861 121634088 440270291 693682182 378795815 852917111 374079125 63131996 889826090 53503678 63044221 1026593 50253070 724245299 476403938 52088660 36172208 646133314 998108065 731683266 502106846 989106139 659266462 868519852 930864331 333960180 569340676 343252726 878395121 960438453 149421237 550348000 727928391 853485350 752150247 781135480 267825406 572724939 805762050 560128961 198111405 646897853 174429795 757144941 54747662 771492031 1000376663 472969343 882853082 11349725 876813465 619326189 419463520 903014627 471860143 332479518 510805643 430235520 342511395 89824944 42845330 759983632 231316750 26567956 63831006 395157586 643389927 618671825 623281794 345518183 754225603 861507923 445615503 102273520 971154507 459459622 895909915 886420791 455800790 284728690 347598880 454774582 276489044 881344090 328181704 374634691 806549412 592475322 752492838 208333352 114859594 539585985 794433402 377442882 183289180 576357741 95145964 794717478 834404320 625294377 628559097 138611868 88241950 323380607 202039858 49248623 193363602 396169749 313469598 941169458 545313367 77465362 230944140 304555190 876165834 655025380 546123126 387800804 878217180 798187783 868046281 487874668 22026575 823119174 757280683 364627407 556135572 587337932 394780578 118094807 951232698 784681300 312100204 429367674 188127204 233998991 492434580 281483071 54839233 127727851 136578221 696750689 41251185 337099305 813303600 696260949 85436222 927498313 36836327 600749686 539648902 404980177 570091795 93863635 509213315 532451050 552205250 419404789 418591163 692427784 212216597 40458771 921126705 225006460 883007705 760899662 264806670 475196474 936955710 942112694 992733938 966094336 605943995 557408421 737691879 664090540 557347083 762518029 597022654 578671240 938629318 177315653 265277147 372929925 211431856 25314890 1001869707 403181638 950462292 526726646 369412605 472107952 725132507 260045748 45638551 865167655 947977908 940440772 210620870 694458925 413340020 30551983 115013535 759457214 538025514 451320069 94354759 178531670 528583587 975371465 758280540 403597113 978892680 956635931 323923929 638552061 32319472 228818695 74411353 843445159 529881132 341083155 541915105 971269896 256295582 697481330 634531148 175711687 190196604 965556428 662758879 220404683 974541027 383634910 65884146 716686807 144878347 727573964 686338484 398997558 563439498 923162047 567011998 195164395 155862918 200585123 976173010 171381516 761352918 873420882 76732695 405890134 489129192 5233128 125886532 415411767 676731897 459716265 680324514 394677562 619050480 805428090 398264646 856303143 481569231 944670126 510328169 48861565 90267796 223656506 166289420 547041498 131497883 640907552 638985065 535877516 144349294 453291710 695622275 469938264 558870014 452126174 22403920 352415460 127902847 840153529 577151040 586241500 862358924 135522260 521288160 537074024 735967449 395938407 97923823 662722686 560236840 634135555 780165806 794748309 774543405 802159038 853810162 441386647 149191470 822803155 704035296 79242101 649563307 478441494 825189990 868909735 256825522 572463617 801979128 818234842 49373237 448439829 380541531 631955242 686501333 709353924 97245784 22811004 736841436 350783742 576835039 996882911 166838488 483580735 989572428 733057918 216211263 874202125 394429902 643441094 650095702 962136089 990441861 687514985 133498974 194183925 101945528 767049246 36829752 560209440 440578665 267511675 67435983 849728299 756035202 29609592 562916641 968214215 603249089 236624309 754967614 1892616 991803550 807746158 682011609 686122845 988682291 846966082 981299344 581479779 620232568 242697482 481961288 406501789 105090554 919121854 228302545 207940279 72175290 463300227 636678375 201355374 53239281 737016875 614970654 123547365 179060556 661712981 250682326 252610902 8565833 13829287 793913014 964463412 10869203 542817809 606127594 538881971 785002124 680991212 827735797 855020991 173897777 783356744 878318203 582466364 514090366 837549049 865343410 387701326 132643817 903895757 183756896 24539792 253870015 990333983 570358478 114116571 488086395 251703338 445536148 530234559 481274217 225091136 722696012 72549860 894132336 688794182 281709928 777572881 810471244 889042451 398432866 474602274 268276568 841300028 352571232 323401641 787038287 718640285 450750647 247291986 555587657 958908432 262836016 654910872 849935105 482095614 679559329 950475211 252175485 2767124 173867331 923388201 253048468 966474741 900557862 579421304 798499080 423122115 49018355 254035111 421507736 228547560 221011246 165577618 495634580 198515797 559413591 804149041 722494091 454094475 582557109 376824712 487331511 183700716 293070542 449387076 622763118 792293600 112005670 211496587 788025550 298550525 292626626 15384633 961247845 612880904 32761576 826635585 691720164 707840814 679381563 63078596 745512016 68449393 769645732 527501361 406403178 952363681 900576173 882622903 126859003 498284050 543096357 849674621 846166333 102625047 684639235 802562871 728456100 55987766 813897412 960319375 163549811 74096450 827555443 397183380 987568815 125152304 35194212 863352958 487701346 28335299 187488362 779470343 198632772 963513999 648696671 3799537 101697646 303854644 652210534 242484239 847345867 711830140 503114469 261566711 229040473 670350926 872178515 207687557 929813179 986527535 600598586 898603001 692440560 856338793 664041248 544439492 644679982 731965038 477589258 973536279 803549205 996315170 190891465 209962347 779109148 134824806 888731176 727361884 601877918 16053365 854754516 72412946 574653975 301680321 197267663 630668552 618586433 308578193 535680181 320637569 206036782 299101677 560169395 1000995039 808025706 690916874 136241813 529226649 852391633 181513561 975985215 33182307 274508326 987828989 579949418 444274104 681903748 989208419 999177185 305222302 679538814 330828655 944192486 408741541 216388398 809040248 711167625 71347045 146926543 514993831 990402229 523570230 769919596 140407801 6083534 631146375 359317828 254696876 435621324 899318582 492256939 489296303 748283222 542066987 709532027 825635909 163043196 817038724 896222392 741856465 596290754 889069150 483483211 200214670 344033006 56162559 90554520 789647119 574983344 304771724 887794551 725549193 669911760 759584631 859912165 71189925 24576720 58075942 902036711 815156844 770102166 53359013 732891665 69698321 294227050 967068150 676854617 9619911 420815826 931125833 79891351 764267245 793554415 258467145 933366449 252100973 504894344 458546223 292348606 110410517 879579623 390362062 5508501 106890669 860022717 772129959 974182649 513325870 799949436 414799969 329918366 968037211 965679337 72054900 349351596 523989296 954219018 776152999 632916013 742847005 460166135 674296792 207757282 967334205 465305373 801562397 356054841 380405407 222102721 808068970 974642876 938145749 128493727 79931352 211427692 663958911 302768948 594153529 804054978 223594679 192425196 319128299 356054684 506164732 189269756 319213453 921209616 326223615 707371612 438207732 448806357 352811366 299067344 772578495 819492971 406728091 438198357 307921843 902683836 887458224 248160390 628397686 358305140 802955878 94175324 196027005 842877305 817445529 811228894 369532307 620529263 966081497 243602365 977910557 727143918 798604190 997296734 962236631 963987634 280685696 171999742 148446936 321243210 970394738 462443212 921105321 210830899 315180397 194469178 971811610 900484986 377821179 875156254 111251222 549012272 850074794 971671550 582054315 960741403 505930139 574904010 199171415 808072553 529934109 450735563 255192604 467304156 754586462 926876761 453348038 365516232 94694913 705077761 384701370 834064006 442675373 748807160 308525944 254896014 598485902 570421824 826162199 636400666 815505739 748773413 727737576 974329725 726815413 155358013 657031349 106660607 747001478 668561268 560937630 648289685 422627702 623920893 889002524 422724172 123836710 148667113 849957974 964258668 612037905 189494087 926260738 266407128 426966327 443240473 688719182 386604187 388631122 775914058 980895040 342806603 793019364 286227416 616600266 225517548 555499045 734820932 104094831 262207039 35732877 687295031 670114072 884476461 537620089 583360633 12150778 55312256 506493413 381983832 926661266 315146816 284011346 898590946 649792433 427392512 476524554 935649230 649077782 239429517 544623903 900139887 716432948 401405555 868259034 766412915 204548216 370518921 677682664 330104190 63308610 103604014 688560875 502745200 478946383 187306592 64772232 389825803 848746381 687001511 285409848 261098808 761245087 246500062 933007029 874074262 261295430 859030521 675691413 444701431 228334416 695820964 164757626 269482963 946301141 122231804 568639458 256679225 982232744 874679838 717500856 544447038 913514690 872522565 247879972 353825008 243530861 951327445 277162667 845857797 542364702 715438716 937108936 118529656 769891088 38806022 851874805 815115806 100424747 493577177 803637127 725355242 115618486 977303074 514721983 760222371 812425864 843763579 366884791 945543459 753673704 318396948 68616658 831253961 679680972 213278128 893465483 592498849 9137139 440768197 849494753 188953223 653293964 849905688 919202081 682298905 119013985 757900219 419670131 16809212 565999645 506503454 889224305 528814240 110942242 395940485 476276345 579103993 759868810 986536832 31500263 767899618 216059557 960968396 560377781 546696984 448226291 91913830 878699981 786654910 520430724 406260559 74861156 761817235 573767127 115382895 176782038 841122041 313827663 104122502 994016064 290839687 549438919 360467919 379841396 416163179 823201558 101003956 496705346 331853088 125643267 781338543 970767036 744336987 991825521 861900828 453488677 498346689 141960615 748185109 442102777 404349873 706151454 462783115 223526171 992768191 59185550 40191896 124783952 167066299 881706051 292851656 223294040 699296242 76019646 705609525 954894653 772583997 150351826 554653418 578788796 167835179 489599554 297433879 197550896 503516087 780674940 562176646 169820119 142803636 239785613 149087329 230349252 474105008 96788527 935506415 261090961 269345992 840759942 143767839 654538620 380004130 57682075 672372030 551595149 534967889 317084634 403070966 352248926 536601806 685997711 571023619 74948986 720708912 926848208 682147554 27407875 697881547 999836538 53603933 437375269 903556150 511458037 996015867 724475165 430093459 914865863 343323076 614593673 869397162 80934229 486857259 906584594 344486181 807844891 240389430 460432504 760071138 263429271 806661861 655357860 894377070 304570136 396164821 221234031 905565661 974131111 670694001 810044127 6869689 835011630 517326376 799718443 492565254 452780126 819750519 547462364 777408458 251207792 862093299 401019144 877324316 241816978 970548749 784958834 853172959 490153013 781390459 777328352 429516993 579720706 788739024 21367177 48276112 348292150 901116769 607951106 806902892 650459723 727114083 841642087 495855714 848645602 304261990 806926231 440165850 517899460 746505097 26994209 456987599 494746923 675964217 814436113 401148417 76526821 896062672 198599761 853570267 397793719 160273948 365033899 704003411 284823740 644097066 765120724 96354391 389526591 361629240 101589260 634753097 590432526 72451221 903217510 426232089 963642994 780967271 625690419 15034108 285624248 84512107 133708824 794084144 267700525 487956680 811639814 587538855 643138120 510797810 532353410 984610671 715051774 77733872 350892986 882088547 798158536 40692994 423616387 584024948 759427136 887023240 926687338 544760842 59377611 706365951 999751467 727625070 821826571 594012408 206170784 252934735 335273185 729445549 906478700 921023823 354580409 576883233 119346193 853888213 486728256 26251046 671279175 303768359 515905004 467599382 233974121 569404381 623130280 8897991 780298005 812992656 680795030 273818640 549726283 967433471 441038994 947431479 561823107 805040753 499148433 43237931 754316144 568999851 714755895 896519862 110907750 115770717 458076733 898759244 999292366 261098831 177503234 899030356 191632709 80607086 35271846 822523180 432907111 664160076 138154659 168001530 546201769 812344088 79099765 187285494 562800381 869430672 275129291 758017515 697445053 445941210 621402039 870060716 271366650 433783666 711391000 157616211 44738325 530184348 280468790 476534663 137760200 91508716 502999849 138368836 425242134 909425675 988284639 911673546 709978112 298006229 674240932 969047050 27649456 431993999 147459744 640788052 475420355 300962237 628504834 983902731 969015983 514306874 348626521 90141750 594540019 689485191 892596870 273119502 513877459 658923445 694035495 757440582 267846798 781919211 357240835 138842800 403597705 710009591 727857372 881477997 744874517 25916974 187151452 411665395 872632022 127462990 83059151 327246780 589247369 99980774 32903019 729248317 903454425 926127923 692944682 845323605 610238389 750144636 533878450 295595784 981572730 184453134 317659228 881965600 196516810 919798351 21307528 391109037 419255072 598144419 482162682 571549579 409738517 970135932 76377647 880998165 827406175 1001477283 726935437 523059226 981971904 589511540 744919614 316534452 825672499 862242499 206966083 710246528 685614047 526704890 488164639 160813248 83278657 192774399 122230331 982293652 353435645 609535572 630362436 482936009 691110092 366909870 200987282 930502239 867261477 255070357 574790745 394495888 846265194 370537369 415148578 562930696 716739075 472404788 265348056 936365235 9679725 94456240 936599194 890230484 659772314 727137379 763565058 847621973 611883094 978938088 28158417 861886873 376324457 619573953 950623723 15997874 503418101 852093001 426053057 263186261 462128189 712612584 172342181 879711947 341108089 20762309 509548239 664066065 115494612 846806379 201730269 34170484 597290072 980122033 229421471 746879925 934442852 927462300 655576298 723461642 118165669 856267748 468849526 647917832 844656695 786807908 853610267 565215834 686754468 169635221 442717518 206078303 345698365 959572316 890527763 555480073 719936851 917211663 450252218 952782396 897434666 93213988 759954363 123987593 219248888 100281020 753777932 389633788 459924316 439707517 708902379 555158472 643220176 753513940 350834602 640396652 467556515 362384383 764603496 476481252 50428169 492170962 419237365 320986134 312666744 785740368 379002217 799014673 181213588 927154430 998532546 721198772 795038450 197246735 422892862 130562307 439664240 124650899 926695734 81398982 228442781 438157023 460564858 19632966 331513026 307397594 994791923 377664648 387033756 871383408 999825493 754744645 735552880 692559233 469210654 980403208 714284023 264914460 712114739 449839489 247044161 288666070 890973995 541627009 774729218 471818195 415158109 315331699 407897208 835041339 770200292 467334111 579964436 717804730 647963214 131221559 174282241 710123409 619204488 870863278 459469955 59224027 913957529 767143275 903165732 731910713 896949594 142571952 81678586 117446095 400520842 386034276 330840496 483448924 757942534 643763166 350249967 147516396 466462225 677871658 486738505 556245001 967601562 442155594 308749666 307759916 880096995 192268898 519837214 237884986 155717637 518620008 463775926 626552739 169092748 160572506 728969424 236439208 557407958 352721740 786384986 671956443 684762901 542715769 108737302 512293580 2563899 462914585 523607897 521549345 109926972 568919014 103379992 576794758 504572812 141819865 245069797 619146901 677015786 51550802 488908373 960651380 842455191 412276082 755965938 447521084 65868898 79708568 497227403 297903251 452125328 357461957 171506536 286535921 392744545 998088545 624976676 15593621 378933716 417027527 339588590 909174506 664583797 499900565 1000057253 376907427 651063405 581293770 795939209 707607312 841580572 853441589 281816282 352788811 582013648 952213221 975327636 740160947 336116312 164659577 575333842 899105908 934078362 531473211 272212314 301706679 681686911 349148521 817886387 988565952 47968624 406371708 617747883 714223782 188988842 472261116 741180447 306567956 739442191 916656315 971103969 39884421 820685025 459410349 941505165 772947790 734300377 183992573 208156452 942700743 266098401 944213110 187299335 726058964 244373343 485418633 61317505 269527030 58936141 774425707 697726260 8537704 708030804 246847766 725888420 620828151 290543332 522143709 658994625 916239479 700334519 70927346 673110102 801906787 255827486 208853765 771184785 1001155233 188025208 86011398 171555885 926405325 385257475 584762637 614440178 919759600 358008733 646014186 664772730 741156548 283828229 779189702 192406011 667089089 382970572 46736075 100077552 496242729 224559984 996372570 781157653 278485000 310952336 467618251 811089058 477105086 465657592 988297037 571179269 457624217 13389898 131175250 955524512 797711699 725283258 765178493 208243291 896832921 24631431 527951448 246151214 458899924 664759533 791981566 495794671 784058838 254827135 286611525 668723658 469616960 501652189 223617881 795437828 322731299 958199113 242898442 691095357 410490996 667577628 623190708 864779198 194335727 163540026 40540264 358007364 672909454 76826983 861338632 147647862 243493799 334710185 976194153 90410937 713808685 102123063 678902560 853644962 790737373 407781952 671822729 308028590 353115655 842381201 683195547 748056445 944471610 278483303 395076642 1127382 810177219 591034378 400123204 37255570 365855388 740351514 531593902 374522586 648330864 281518452 710787841 804410187 27712472 477256245 350566845 943682244 787999612 136207553 546152719 838507734 901064779 507549973 183541648 307607724 72742188 282401218 78571108 127768149 116855665 375754367 701856429 681128995 969132106 546564004 360565311 554830199 627931485 744412238 933053060 293764860 571232393 908444879 67236161 346306565 532727918 806494203 915715381 837343857 477364470 902977728 777842773 51291170 172227051 186333452 105351377 563188898 775767394 965634647 731255734 618450922 47838305 732253707 448053157 204842144 663412841 166826498 378602908 162568568 614118462 775816883 8240326 649170280 526321549 456203841 115291660 350055710 119574231 918888945 176501193 576741229 867391520 68359942 32264035 137756883 527311624 446800156 162324859 815556660 347315196 829502430 944758649 312582055 743731004 520183920 444941340 161291730 326080601 983483372 459603837 60569388 883207194 569958551 654610196 119784386 271312954 496443005 648367286 859772061 409343713 237590380 122420043 235241153 121595394 809061773 577830920 964969498 63033791 555473864 255736353 844654047 633435740 968262781 672413115 823031787 671398632 676731812 412852575 373895004 456729744 372379706 330839231 431417551 191681140 975632677 532626042 858960020 335018492 509700595 492666076 913780923 774701562 951993007 954414659 208024794 62407349 714743381 768352651 775083468 842912538 889660179 80006845 846340832 880419303 49200755 226747840 692471773 932884437 73409524 908982610 159001330 806776088 361146431 251081365 932016208 437082837 888062302 700888076 413100868 657659184 356899150 213589776 283294348 677150308 585450280 877282618 100926358 307537057 761601240 969787917 789250036 816826209 639071607 285788004 143652445 503511161 488155901 703958893 227031816 687719348 322232008 105206273 985843536 710776252 773347200 684679920 683129433 616847595 227428159 67935492 206675159 497452295 697873615 482462287 504102927 203261683 3899659 347263870 609569630 355171705 752138789 748382366 900969468 576346910 189647135 999706685 831095587 524445355 936320222 115954581 327904204 288912663 863231008 159259128 20498744 4805473 779491784 415629135 934913643 504209728 400868582 689669197 328316693 448279451 847630295 347660015 356509469 672966655 384904165 432694042 819035244 403061023 466384016 194573825 800485949 212381364 191267071 796221805 777825049 340675515 358329836 971981372 476146246 429403689 105627806 305804277 352577715 779455648 267198669 960788345 455414632 509289643 131154895 187048983 841120528 719139737 823451913 133996919 303806120 199711946 258952062 794164059 425514979 778738287 546861377 642844810 530629494 170793584 348106462 884203480 812232193 264199982 774212365 999770563 348914260 70976824 634162375 699801635 779631419 327884760 829261835 235937923 456422354 371723784 153635016 767030817 319380102 294884360 553242984 848744634 527893692 530351828 864644767 291889932 692778165 12895762 580102172 364417024 468356162 38716445 321111085 212082775 230857028 548289194 213007403 868864933 356725101 207184732 118380565 358283948 158725906 666656263 552880936 658218586 625060551 437669765 340952398 254618895 513553917 917625678 711017763 129419511 59855057 844883634 186222022 620477235 518034325 592109148 936950281 424040798 697752856 805221457 97114802 170806295 787527557 806154850 748451379 791665918 85754247 107417626 80431559 472296776 645736920 484262624 316241703 245799577 446981606 105001467 684410312 990786571 741689668 224006223 431299398 697568548 90079580 938477109 556126630 285300251 425937354 615995010 870113655 911051489 977050093 66794227 387993341 196186220 659271225 952105935 529425177 323408669 313730413 12717714 565566115 699413417 722295023 810236967 303060167 494962998 891877782 860589967 426940330 755334496 848312350 316100734 99265300 256428099 876513435 62178367 219436273 320098216 526265057 204163710 792238195 826524304 587617410 619465804 931252851 211220971 406201836 710848082 969482293 855084420 298544307 849964982 271979917 825291162 678493599 797813099 188390428 194314349 151203038 972416794 758296409 221379840 237076136 625780278 831548096 450931116 768875720 137545877 70830292 142763844 57171083 272510476 18738203 828466067 769633893 763162053 416585452 422247923 34364305 538710496 367516441 153659902 219978212 779675625 263506467 711293686 936216774 341655882 965315396 414242600 904764758 840027508 635324756 855366272 389023403 376414922 239930051 631805708 562614229 505812775 824569665 280606210 127264044 494498666 701999921 802609575 792906223 675549841 972624135 666296341 704019649 524082617 705408773 802864320 394463864 709436462 757360462 280688396 125723501 175140937 222817643 26330096 133224122 306754213 168084548 45948560 234369432 158437294 540128415 898471162 380713544 163830581 652981555 614990342 12756248 809768655 274050658 364587483 622303923 707410468 898432869 919912762 175454994 781499280 358648643 387765701 110861503 575292865 59246197 534023340 810398632 259938904 1605947 364808887 522226006 22747174 606106804 861508046 130891791 855866519 451226575 947789285 465744796 914412957 771064761 303005701 65221590 274367548 290955177 304874265 978757429 687375413 802401642 300266500 863589176 80246784 399921286 226867768 360594024 605845173 706532174 74494179 454591869 349086732 70623323 642967169 707014701 178750249 450224979 662951159 736002791 16357236 839819712 740652597 81293741 428067057 117981379 223266446 386991012 696675763 740487593 274993704 798859833 888079737 440979276 677950382 878366074 219375527 746395585 998528860 490434069 166816721 323636963 197594973 608422351 139507588 486201345 709663641 932283479 377341527 120787674 780839252 441765580 199739206 521242037 703037016 219707815 797625569 349432838 30209512 797158626 570266849 455839906 880572824 89461369 248198731 970515011 13063671 701248147 460187304 831135461 230475930 506327689 297986315 976194214 452081215 163644796 105952686 414768177 203718124 356183251 330601808 697227816 365854617 650786324 175368974 912224004 641609651 292705648 186470140 617230639 607023725 348046919 576823380 383875557 32160390 453408844 478194501 254652396 105747938 355037220 956396390 577673373 903901441 448018678 130616809 590506349 211019246 19742586 102064746 854787395 927708709 626026833 128732505 454632854 529709001 710760633 670436098 104717920 980607809 697628243 200000262 197164681 510842910 330292270 32708204 272410055 451102956 853617104 974687495 12373668 476770955 734492753 667878860 912475734 41031213 100688522 823655662 213574737 786742035 461435453 924811925 195676326 78223561 668843419 222951406 270421326 662691098 843078037 616599786 50572930 266454725 343490006 384303485 5368401 22874777 477758753 220221586 482602808 412684934 680460994 288748368 198298334 908118109 464254777 507378090 328346129 125768688 347968748 712508153 617304468 102617124 925191987 579747902 915841383 748267054 546567416 242699338 765854898 58495213 459804310 677664563 813074182 132638574 701168755 728122156 890127615 572778912 381249844 504955181 190104415 668015534 934607819 35449447 654391690 58724563 801442934 158864050 499506488 567157775 290075880 559693090 984781638 289971533 893048443 656856820 480576462 36337534 153738323 929392617 132527727 2648500 408509916 413835758 188226411 504953546 956042241 32954976 137820627 802142621 950526462 382925864 577261539 739125879 633546661 165354593 588032086 280330172 931725811 231862062 600977834 129230735 61444508 55039337 633832599 48309151 719145013 126373019 85201350 634522272 418138930 152080799 458556594 571047185 255030310 30274485 414754506 774905269 878604816 745633665 179300075 287008988 708050115 32484741 210898148 63318020 95706463 432965317 384620737 593026330 714309039 851020611 488180786 293650047 443566497 443339920 329106778 11978509 161353133 853076123 689581838 209726615 596291999 936576674 648890231 817274775 514993468 947585069 952349829 269677881 735161553 136497766 946791077 395486399 765825115 527883381 636542489 759798096 478332170 724010336 328102698 486688476 225407733 24501601 711492784 690584257 486447659 215128702 868003098 865273992 729525371 319322855 987333545 777096072 666978237 107846083 229078371 137355477 828643065 686291568 661208456 538153427 282762392 390460860 362892451 299610083 459235077 172530782 383457625 651241225 666142331 831098433 358178746 829458572 110461148 562580146 81327690 736474729 722390961 786876892 577251629 651672163 893198482 601282461 910446171 124451676 750846081 405424032 188911522 31753423 318580449 900819570 988064590 227121020 321848207 745214981 281164783 250233192 102440526 740840106 233274965 845230614 542930709 39712226 508988915 996192910 382934842 726172879 844286174 588637105 889856579 798238617 970716588 107698417 277256754 93003244 205350706 392934757 351682379 136711759 294621109 64098593 486887016 616049191 780352776 801947834 201586589 361003493 470610991 983234863 21066003 909907982 170767460 823007289 482084265 523872820 950532716 900443589 406344251 268266750 226126583 855238226 409839906 703809204 704972334 195063347 247838449 2945574 882036180 234712286 847144955 511639736 140512877 984960929 188070789 849416104 188559667 296573310 692187982 87244963 421333739 863302900 218843530 598395955 257653735 434886244 564134621 809830864 198583271 110611679 981122672 574001654 972116026 904270485 217612093 763118671 292485420 365351821 827955838 423469182 462235632 25264679 398111484 976262802 518512049 586101156 919636091 221678119 288414176 31259293 885853506 685250254 90148841 47309180 468462018 682398037 157223951 899699186 19627842 753162557 950503484 809750038 124970597 223535954 745830004 87408677 956138466 303134177 375999998 504380342 836455717 48174293 972267100 232562560 473843414 111914992 980869434 757033522 354585930 82220489 426979518 452836899 553623364 633570048 69242257 897217893 357598527 105465034 970037236 141103985 432589397 286341503 502599572 621964594 972678764 742076983 883858842 672573590 556668343 956472242 1002055055 118371650 800433034 825530968 160102466 173126812 938537326 341355533 763533142 179938932 590760470 284855656 518395317 112415456 171071043 633486396 64029341 670394205 473388624 543556878 609881219 503248638 277096482 905184779 791322891 48593476 332728029 1000967616 501299095 849666813 881572463 544581179 743509453 764974136 36961072 222988080 204215968 103115362 17902995 165923617 92397753 276818788 348672258 437706949 196816250 997628691 558174407 631794741 123379415 483105567 409931335 90615854 938399238 109097486 458709492 108449433 481399967 403334767 634705540 229549556 200723068 996128378 595289975 709770061 391667671 275865003 632461288 137547308 319270534 248844155 899003666 51329947 630497066 426362756 209457027 221062448 297126827 584752666 669652840 783089347 938103077 371727994 141937541 579116830 22258694 677350700 361521449 946937464 623988352 988437784 741801292 422554203 334106693 840385626 568973919 714027381 51022773 763170459 183789595 645218492 894702554 101230749 940349259 800979406 673137066 456031564 378614761 117791864 265380528 222346709 22411585 407245606 191496090 825621881 237957138 977562578 657699995 287536434 771904581 857466010 712553207 609673144 207694183 56698270 686293112 680278310 494496705 910587476 467506342 937148665 730257629 978648297 911549467 316176897 657162547 372885251 584428994 423681863 413137220 675324465 269360353 71694278 683557335 2378290 882989783 754002562 210340483 479461910 639265443 397121210 671649520 321105236 711262723 208270713 518226842 351936682 294815431 235167081 504045851 464277639 257840724 164389227 215461770 20993929 845412856 515905067 256744864 910233754 203777767 421261574 593892612 95351680 38059751 805458925 174209518 793947073 359093187 231573365 819655736 169873590 247122670 723056671 306645115 87030185 212049676 364525652 546145184 685995276 711485545 417918202 508986673 243132751 143765320 748895380 234319235 323256397 90765415 223615873 496750960 575261588 453857100 760431764 682543247 232472801 127030853 740462163 90121230 876372874 134435605 20645396 33005873 79668857 63033733 675587545 181386374 722840203 933881367 960405453 209708901 789432992 546767354 755921093 15055599 825454005 327303883 476249038 981104123 601501214 760802023 701273214 393728795 132578947 830637713 786799521 805850523 169134042 930272852 992340632 670613503 836116747 439897623 67505507 784903885 568938364 974532379 626567666 485099568 590996619 60032890 778198300 850774294 23342050 711580523 684467879 564346410 984404636 680276368 548693492 343447517 87256278 724478799 768160290 635602735 778609194 639679983 315058991 525872493 40598305 350838633 78933836 122184443 595645383 217241341 808020974 216158800 810410402 228896557 48701763 263767210 895374374 101634361 371673041 101571309 618370860 513968885 987534839 483919401 740304936 388889954 678204583 242484632 433274605 991213256 132673611 600402533 849949469 924088704 231192791 541231644 890151532 150651513 282322064 292090505 475621952 428174895 496656943 283853065 152924482 662036616 414613226 722349696 55110503 303529994 703301807 35384928 659002978 920622466 342192127 382969026 151329705 625152199 313350244 764239234 650712849 845137714 843550581 141362688 518822079 283346206 867800671 982077448 18623693 183152388 949961947 264104639 884936631 839017631 863045989 998407003 698607212 293974615 854765798 226492787 839603350 632520566 848817651 727015114 244418480 572962993 315083347 955191021 734754815 351742202 920893155 537594050 693543941 139089455 721785612 929166633 285582408 981552574 828717731 499632770 189355638 392445218 59897662 433841506 663575983 144602995 227727555 186306195 339594169 657133491 542257728 532476678 840098658 228605586 293850655 897885048 894342186 603868408 76845160 635292045 734594729 979352620 541389655 836419614 635286319 417026412 2675329 943198243 799249272 18354849 621023521 574174536 696486524 910214355 809349942 914299478 826737852 846497939 804054408 798865049 489988947 879839335 764721251 223867758 784627169 56320675 281044469 663519142 68513667 214672653 54819224 294269649 735902934 35361500 287559668 726186460 165496138 368444884 99504146 237638009 957313402 42041924 685346172 360798403 921598704 986041327 510652398 787686751 686132425 666084962 10164540 619914347 977005579 963177174 47439424 714423600 433223493 455711357 7868463 959059101 845234546 920837006 821274751 39890885 454038458 281139596 708681706 279008914 793868944 398426184 746220559 547439743 904696630 600554521 877052270 512965897 342180099 105077141 917599081 135634683 719387051 550815507 89364728 641050158 254100391 695673706 235327218 239004813 368198627 480956193 522311300 104098229 806867787 68232527 227255547 504532951 332184436 734098343 332148664 541512723 308843785 515488928 897430558 965661300 71780087 397712809 176390322 21756656 84343055 487072522 421119236 551904137 49231096 855543621 885893409 746273301 187162870 910026665 634972022 481501465 549666579 66244013 628925398 401845446 528055698 111103430 485218876 159974775 592365418 241189521 251577676 154490302 189005497 7041886 740568609 976415109 244008790 190819531 664757943 771086477 772017526 727330490 48112453 552364281 830654270 49269235 533302962 98587415 381768818 927325067 756613412 131830865 354805196 642700970 83829411 791253149 202636505 930708226 59510253 873429303 798106858 1001193484 461506066 451345569 610949890 487865653 112248435 616947847 698758125 105923014 884541398 678991803 794924385 408499186 871075002 62226296 260015021 244052092 332465186 548475140 91764653 269375405 734555354 636455478 664500770 708075211 582816854 133047281 346848451 867965689 579600590 955491810 484512417 77776863 83438667 218017362 577016637 48576225 874606004 385272633 543249639 145674012 902691947 885108403 556673083 72053841 899250542 424646081 9978788 499984943 810448250 833289207 672609328 956510581 788987227 24678047 114471817 672436022 416823916 99270532 91118705 423040198 6020613 659329810 70129112 169456326 385170945 160480020 673692699 987065174 876292758 175348987 241303386 882111798 572972120 55520486 324611501 372188672 471411668 830101458 969992560 41999799 332077261 810718827 422222657 643408665 14497451 734147972 740471136 178196242 339103627 703619430 904462746 711355180 108229447 249712861 126699768 499531492 965817912 396336542 610441477 491863990 725015409 152556536 670758103 693672980 616296446 118677588 728942983 284931494 539977506 173786693 376002668 938722274 155247528 362812184 666473886 141772811 513893696 613429985 331961095 349022763 925398007 985462372 184488313 707353721 85581687 723242145 119802002 910848183 30249594 730214324 458659053 341278222 769894894 78444123 867437865 746758704 427351195 44972369 749847196 658688245 824782185 657948512 448007318 199233747 294404675 36272153 329457333 972640121 48173448 131000997 500521158 539611213 635679070 784097477 89166230 107888093 81140842 83663526 584896453 617506 131362114 446539542 464075533 448467826 648005909 857966418 460142239 920993241 860496183 819808919 533905778 876570666 948400982 640665320 282074596 22732469 910862900 65775846 448591982 111373255 575212879 320459602 3034661 364335591 390209071 25187952 504916680 180183597 247769244 964212914 666426990 707986821 674818094 374041064 290574176 332348125 832526377 600153781 245358429 151938744 149251492 967138598 44349306 906702164 589652053 590388224 997945520 891655409 442842704 919526147 136912338 309333277 723051972 308266865 965831155 73163090 912311198 358030509 186513563 687632941 830176320 492872289 127130494 473309140 117612442 708156638 768915046 748824365 953349933 1000397231 446169427 674189981 668134336 70550960 375019852 502254482 870442941 127376599 458204559 746218969 20036871 493095966 654499912 289485900 771772630 214952533 700013711 458118839 959830216 476406052 556717461 841049984 906782822 704355521 154205955 339291587 110383825 232577210 329323402 672926615 479387981 748308812 566578422 19027200 243257660 551111816 787446420 714759533 537303577 895924067 772860446 337352751 612948984 142734912 787434913 115715548 12777383 879784966 391587732 550354494 946709678 801064019 796440816 17348932 915891508 733473771 311801293 454184906 936870638 825216974 677181629 671948305 610309560 321885067 746230928 4959455 136159748 46627015 65398603 645979983 131267148 339458150 142715220 619729453 263135829 980426020 297578043 524580922 50762092 804185536 724967594 483085746 609408529 504350001 164997389 902158304 833480068 193864409 387283405 781904280 906909706 80351105 494174119 302082991 497172833 300292277 401717978 412230595 732680293 497949699 826140700 550399352 943973286 731783674 872865515 218834747 891032214 384139098 792714743 299536143 11038445 854762804 95789935 765655273 68868045 118334480 922330755 500161819 620482290 7199395 74836209 548671915 573840351 459129876 398576875 257149549 404503802 830066968 222901733 210240192 870220206 787468063 776071975 360525348 573410894 619993533 861517051 554326257 710167035 539578962 930632100 699453106 402939109 302456668 287286621 732252446 476936071 832627305 395368885 502271714 675681028 880620881 407771679 787330678 490651588 319693948 926794344 328304337 281038567 191905730 496466722 576051699 632166406 485043738 485350816 802705869 379819171 952186241 892694171 278981996 347404097 342926377 853683199 834154558 489518589 579771646 933448489 89209421 555107935 531911334 826862408 810452857 930321416 107584585 959387692 179813173 380972724 733641255 925230153 276475417 505523413 167862515 609106212 854687846 626258435 614869541 668878042 963192477 645572258 466621735 405054479 49416898 523881637 940963481 84813019 191004814 165802811 853626204 483775255 654866120 29767490 779769861 642127206 485985895 141734244 795096367 616889536 904922175 407859948 637361730 602696364 778738046 578456846 526086502 808076892 465631834 289582892 924647935 731015616 124873422 22823202 731996422 603182537 509231301 651732974 80908027 942861487 299726995 10835667 849860076 437707497 957285316 828296088 465636968 942458977 487811688 391900806 142282829 167957768 782311189 276757651 671044893 386713058 907785934 257642561 331540506 438526021 463459413 681705253 569426660 881050964 447154173 923381970 417224821 209312584 973492543 302102077 221383980 404712406 786552151 795010899 111422278 907028161 849909892 911413674 446981374 509014492 539627900 569993727 130002389 936625524 414499971 121414246 892163244 630186673 414893409 576918546 628252902 789564490 668195914 70133527 797081379 993971226 911880956 806601120 568477760 673554253 112798089 120867934 51836248 917249688 55785468 347412031 632452766 650723035 95580189 440135720 30397227 758039339 779553531 676619042 435387969 887591098 167302471 637139875 904786697 507283732 61007334 994856308 688403355 121444489 496859140 311418835 288345326 687860229 946699516 568340269 624553248 343387127 439242974 211144158 264526117 34748920 87191707 686945870 467742039 83824930 133171201 65998502 775582542 651861560 892823989 681658143 36133849 29585488 716382348 39538284 312043767 443252074 83793617 836533089 316463365 713464232 308859259 864261836 239009887 345471713 707396915 448903067 212507489 546779466 413102835 971821707 176420243 729479210 463729737 415060123 702251838 805951291 366284110 583035686 165125715 800039771 28809735 303946396 636901309 956918953 203536720 127166609 969031825 68010926 144661445 541933242 701135274 433042811 296597944 217683416 583487962 635798770 817185912 534433141 508972646 582381737 968361588 492128016 603347158 799891576 705941954 575951656 759996466 296967109 419241955 373131813 712796117 203542883 621515806 120453420 463508263 692605505 913973602 569689759 385163906 351575808 665410568 474823745 164514465 116995289 5945216 748794383 1728529 790433909 416166299 695294054 152954653 286289553 233447462 562843105 991994119 566848967 809935586 753379763 722568918 151652764 163145527 896129832 286463934 599223556 870536561 309248112 367236648 45010462 564092296 634479090 293042505 695655232 69706632 507011937 40858146 986268668 974695532 750497799 560466938 4896648 669359100 395969473 885946488 811346351 765732114 511658860 319134185 262729159 516705687 437533417 143318164 500895213 601850507 97368280 74758782 232964896 863868920 468605669 96999277 964489456 924341169 131852699 816031389 178817240 796830718 140569022 802598634 548815328 996176754 118552416 455634238 765828422 463732263 510835394 443101198 17929790 747919386 662921707 367783339 188899771 137325030 687660016 817143768 68114472 927696219 487233004 717908196 940289487 413746037 216211116 456157732 229403009 1002344564 459778510 239182531 667533127 6524352 900341357 963187280 797145514 769481147 680385412 671808025 471992190 392447427 199277962 719029302 255183501 723614718 718885030 936792562 220628132 693482867 947309887 476891525 840148743 373687298 122301506 352826011 518691296 710192403 949718068 504352974 397791639 919233789 353159348 960867245 663456223 702019363 611537614 921503275 113270181 754252727 795451168 298498663 264934657 730463260 238866825 705507580 415330974 836390148 264640375 751669417 861211879 987938132 437737630 274001819 546311822 415337611 97889763 757659847 496870435 372081003 957992392 489433537 493967781 267213555 96652247 914817189 448448318 484863675 984825604 217930563 208185481 217136765 867931932 974675943 405935817 251608274 372653496 686033597 382439851 973580857 172756175 857860243 835703842 430154439 144762239 529550244 555963420 144588090 331532333 668535004 360722604 328356340 743967990 832332367 47212099 939687519 525109619 424385026 537803962 557793085 274150326 629524437 264302149 421435980 589073330 208342373 235958864 401161990 223390332 937818874 817985444 190460146 917440080 612273624 737252432 626012895 572306654 349066174 88805904 639744036 192868654 742240224 944207523 930797818 495531160 604795233 938421713 344508519 702555550 424454648 587137618 172326488 792652509 724791219 786593215 917751127 81376160 475426553 184780431 182614195 651256131 257703910 557127747 949110597 605220529 496472193 127636496 136796300 901231243 352092406 254517970 176489216 522157392 936062695 757677411 141815136 30226987 320907930 908491640 426348424 37494108 725530676 208496697 207356516 908129858 215930545 623750311 553025015 529280038 976546995 275299155 382514064 497517014 373540061 52170924 787957977 919655208 448144009 799096538 727975837 456665681 760268384 877479537 486127006 525459589 390521410 38595385 454042614 186558038 549007992 466767719 232239736 311591691 236543992 526238256 71972955 282867136 715562263 866391799 683848334 20462143 244103558 987256678 17222663 520431247 308620792 153809096 76475436 599020592 857401103 589853700 793161333 503389937 936470570 40091531 448055366 27945071 217783719 238099807 115959213 890509578 864219228 697342935 326302587 8714029 717150814 438556240 242531157 137109557 350388163 887024961 52706311 597917888 23041643 635183953 852707022 474228818 628932666 221029641 111982548 98051235 389561078 574446709 624205603 144661092 974617920 586155826 664668937 608728218 394784991 955230071 960888674 782697592 704376719 722948217 92767234 814414576 426751057 439429357 562976648 694175580 899444633 266877458 804886571 715412134 328102020 992505045 429525704 124117933 836806392 182992047 451522104 619663551 952438072 209667174 500907418 577007406 337298635 851507018 569192891 959479094 955383147 471744470 903158322 481226655 250830933 486622418 232583065 591409260 862293853 844470437 643562883 210254121 220428050 224371216 514286 642981374 710408802 629377441 654765763 545872001 528150663 41431140 655553450 357580584 111414691 35500446 85295002 184738420 982768541 116815825 49394242 715305575 56543948 739536007 414116919 295818546 853678464 90989051 723810030 738632757 380523529 496501775 52568511 213179300 239820967 493429806 96246360 498014724 979661120 237240449 383479269 509558329 188964816 489251183 27663368 165242051 1001728629 954885249 431334593 593408881 986212247 705134418 526039388 334245887 554050461 510476991 371449001 269922260 611999003 914661992 901909164 952200101 847205825 168423133 323079106 350543944 502006268 532899897 301479649 637305258 376686741 295212519 213172142 440148646 910411609 598574585 131268341 257262253 125020005 216115653 444027520 652113874 784416963 88944372 654361407 101809694 409330140 190232767 536934182 507027727 927272618 614478586 478818388 35101769 178923359 386822016 109165023 479959679 527152614 223080242 307181202 923237824 794836418 568775174 319458685 844670554 536670499 558479426 684700013 515116275 645152788 434450833 435236548 355464654 155680319 315247126 403782569 176671380 560649597 402774552 513369150 474140454 39888807 148387349 352261993 854754096 318053872 246472465 399558538 253544744 36657965 137934108 569134814 335300658 679580369 158966815 450731209 152093216 79388858 853404780 645788318 83590958 478048139 852405367 523405454 308565173 960131033 418475113 282611279 177301516 230042436 241981514 449952276 932260126 679805153 802912248 830752427 90374186 555911158 290979420 603490459 750809884 323334142 677874743 465393483 791794614 326049733 422244511 455031917 603550629 587477644 632406830 55140683 619541388 668816149 882357836 236173392 159115884 292928586 67739213 321744257 305726706 517954369 803639234 42860724 84197770 837580419 172447052 892390895 836496245 532240074 239571585 778425377 62416736 362355392 819016298 399526569 917622798 791752436 750664679 222933505 133479089 129529523 184699646 984030817 229593209 14388451 709284402 821514434 366031048 481341665 198064155 529598730 849317061 678328474 74389678 324966170 124663116 253924831 802757441 312814231 709045133 942062435 214500167 50757902 249264571 60053354 334015822 213373908 793816469 60782206 24254029 656984535 377535761 868786622 188882817 611647023 804624673 786114120 925196131 495544769 415357651 442026898 884383947 425900694 839661191 651080731 135344739 101589029 763825813 686278237 942752647 297467365 859746276 44586239 776939159 814808393 511633524 188002052 540229547 728959032 614468224 837723811 303911500 593042339 960052557 842037041 3573181 901023844 559850496 903826716 984632065 782940030 512379086 180717490 333993389 848799929 940438542 539377308 684300249 520177342 669040769 287141058 435085797 126661914 64297702 176415119 997327231 20810258 790775418 607271481 704015831 390569756 516066019 144305395 583817222 288509649 634497607 416654205 763910717 805462752 548398114 363741799 768554382 157426369 156286472 784526983 302077687 945340421 968308281 985682753 999677754 35868140 318017480 150760063 474856983 240131627 341233704 151406914 27029997 375938839 637757924 104668244 176999678 86295270 348500898 606661662 392932651 297767453 386506355 184658050 3582986 167624516 514533092 942636677 701024951 269425230 331925030 338216000 431709453 420489159 790931876 175681337 109828676 82865974 345085719 487912697 928648216 157468085 358596147 775524580 367160520 3453903 698164309 675731294 545653642 779810769 280095171 497975625 806426501 705619440 457830421 487422236 809340213 791692000 247417518 842409770 387597302 48992653 197043551 834398437 333905273 763695117 680775797 324346712 303486865 197717933 569755031 988750767 851926220 45737712 302593569 6438468 585627341 133163347 55470808 28528135 115599071 382532205 250426392 425922259 196136294 632386947 413287764 944854376 480483905 812252528 223461148 399499975 465235559 518836022 631184656 724343832 306103053 548168821 783216592 418272805 260319959 669673386 623984311 335048424 975676370 65031332 635951570 985334264 530610220 237197972 719977314 624002857 889955669 224506256 919334943 13929347 131729162 773595334 765149777 651001222 413907675 558069459 921020174 631312561 50926377 534686033 234821524 91447015 58072747 138342782 315024196 990610603 228540033 81451616 334246488 516703577 547422261 531295835 298225882 497387915 382751163 168468706 551497014 177533124 466186965 206083413 618986946 852250212 715230672 377734214 250875104 446748254 446287717 361988673 418242499 762436145 249936783 351286819 392563914 27704427 794906390 916678287 794518491 206585483 609503552 495372240 547038155 833984227 340714121 27290792 498172268 422076569 879637484 380937675 456110103 820782610 120343702 917917844 21100623 448110140 836835689 733268982 819239967 277056714 527085174 854900095 12517014 664696542 779035662 642286559 866527636 82935133 789303229 787863779 845880270 477722687 399152387 475526963 690077418 666952989 435312447 167120565 729494727 117694084 770979093 201914018 545777107 783082957 5307633 928792588 247886599 849077792 953589271 642663781 372835384 695229453 778543474 809654285 117748329 732305709 848503970 616523153 247786046 335694301 159124304 578590882 320327647 164842626 398987840 278080136 704601762 732176396 848975772 423238420 558959645 256457722 17434659 378783074 472402862 434314489 691760084 456277348 153303754 845291308 914719419 538631588 288982348 690693562 30519597 646204116 101234739 296035449 465032084 116665064 536990367 54595333 736668012 385061988 555000227 136671764 467332533 6335260 868671517 641209085 294336207 396138706 675586739 60645652 483633014 230102523 190076987 947881287 116835340 912983261 386606792 695675470 704279769 988564960 355910789 16738676 448134489 326142143 359053583 218104255 324729839 892911004 131443551 791246937 730383681 968682992 614289437 967058149 831529736 655028718 347079409 303264683 926540446 531172351 803890981 221208493 400374794 154257344 782413921 573971637 487741143 9786311 950890105 467332873 991589838 641469682 599242189 330717720 860167118 108152179 288797115 356900781 885094870 189682350 877558990 531740504 213968194 148485709 626638840 903214627 378157665 983739165 601803540 526150929 974648047 622273770 940901984 168414262 351693583 736523673 564991099 178055302 996408249 446607745 592657301 702452127 203456884 9740588 525321024 886636255 955012044 776660144 904804459 209827349 847652451 973805285 871052613 753953557 249851911 610104568 740335330 991420115 847445098 441760224 784280489 301831867 614211855 558672797 490766443 752400463 26140897 122679298 533711004 599685687 407946702 461290876 960164248 118336151 206049473 548672345 573597849 10932621 323633677 744544242 63371689 754102294 887792364 114607603 376111262 573726018 473922062 14435665 546524693 244919669 923754741 644463241 778938819 28543578 649147469 526377087 949631163 782207452 17461749 666098699 229218023 912472263 840300127 468328894 722059963 131854935 707470298 754595266 652388206 8257744 202981341 757219950 805107112 35061748 121227060 388352993 4025466 668683292 917396465 899075102 413070984 505359569 136456106 79891537 105996419 349682874 652147853 70271809 870089897 924071147 572370936 197661708 85300373 450544165 123953574 812676852 364676295 866993568 829764031 823431074 724131710 606944445 334449832 718139416 526303222 866385764 422884651 412416826 374567149 987382585 67165961 164620061 196645506 817606101 243593772 39266327 546814321 254566679 642714453 360718300 161648878 259280742 901114298 642463763 39876733 443184881 249020204 771250814 623549616 116216169 791577030 140161333 784333352 503317932 842730588 609644595 724948516 280503398 755879979 116144875 344666321 650250392 942893553 880750906 220451823 906002290 667005840 68197371 186118420 462759308 185132409 159678778 82109105 54407225 913530367 494121892 817669515 726917449 945132696 301234839 342817772 393116705 173381278 841883148 735327579 882943105 460749323 310132302 539662761 943045058 9116889 256099215 281716589 691327710 638356803 198223367 946325652 577891266 633598075 205471182 381342154 971891207 882798881 669324064 407383352 613429153 443441695 269894074 726936521 427157030 568703359 916344272 177587199 388859649 57428430 740772043 153925864 694956314 735345064 700302908 896333665 284955139 392202680 444664373 475714870 376434551 40950157 441678862 676930162 336592058 159826048 346900668 869006999 693392800 859062695 806772023 328281310 197065052 653958784 534670992 283176155 540344277 265402326 491304833 324873441 161648873 817553716 696923453 834453828 76443612 82536971 912618973 518357964 106808801 73686617 613304863 35460904 742947154 606021764 902156620 652645786 650968073 107458448 125601619 911206109 544571953 841117513 155439350 910678570 653852939 218700970 197415727 486613899 877548116 276111422 78517939 508314180 774047148 83713153 670636597 98793065 467853374 71125637 208713983 591204436 221135595 978926075 573005668 778355014 828879117 290854577 934988796 744725593 97187375 513341473 66196909 87288529 13820089 183364200 676105763 968752269 690437814 291886917 813293091 707464601 92227431 935637332 310001928 833831893 703637075 908743163 185073386 835268299 749587423 137679983 812705943 959036394 98305027 860470684 448533706 894838942 110052670 993592725 314865778 530487243 629057088 240782951 198707171 102574217 892061504 382631814 309779469 2883520 912036272 684987361 792744826 625909516 563063924 834418985 994277590 701174072 555842031 97725182 116723290 451022737 232399457 719893985 873404286 437299127 135903656 467488659 585513696 762461206 833564185 389901805 158480275 110729794 304698946 148413982 293616652 560799863 378732099 372307487 90518677 119929522 293786883 69711391 902759267 888664028 485927542 79106538 335196934 176140550 513115728 463385356 958892281 998840611 367258345 146593974 546805793 582323206 541481935 587247041 365009825 991973630 467785696 413442203 516353545 973237698 468917374 839946487 788103141 618671006 487493868 323321314 834719909 830950410 402634996 32397231 551216291 667276304 390095338 752873555 184650350 616104638 640434948 558751457 417101110 109711303 803661109 601168875 261825349 568111645 823994984 459943087 414689632 395277569 900470949 553520862 1686965 922684 789107022 534465786 61681961 570018561 129543518 484053866 532302734 175695255 479841754 345590431 686290021 618697645 516282400 551194060 705122681 676852780 106225378 330450334 243137635 734284529 156039359 296688899 604370208 636032486 724894551 393914900 168444052 80867774 944094825 830086854 246419982 886899179 673420577 3847688 529917009 119214072 942935953 902740605 728587395 388858788 604105642 981798106 854971985 129651180 330597432 689404259 806981261 417700214 481684649 818257260 185738628 227652186 722458022 677239840 524343439 786162930 664853301 25144358 269178629 994443152 54237550 525640046 842830169 632063888 976943987 975597593 872792370 864890172 761697195 174402630 838485831 916975520 81343953 648438242 791298739 245612115 95373000 802535398 394513116 613707075 996554613 547763402 824210858 608254638 465856438 61210206 303368941 487790927 24191568 476945624 926040112 539276138 743983286 782268251 929761393 772114582 88793502 388453330 627826746 154880598 229157820 782589266 150080570 488207718 675627772 74599603 559299452 918606556 227145772 52086535 185396568 639540239 978512207 905880242 976523763 618909673 428234562 808080082 693983281 488908319 800783534 458256702 433763000 222080057 90620665 104507924 774870853 554328074 784116276 220053186 313747778 462215677 154969856 786891325 543232351 602625257 14200491 295047994 467227677 99610072 932879836 705754798 488940513 210096382 413677374 860996429 15978750 56308513 709914547 903430061 639183731 921106226 310858961 140251842 595976865 488375099 568649499 432227427 508233060 523003153 45947642 533411347 265225645 825000488 367572804 776667913 699031021 333179264 725198926 191297844 496830289 802860293 98634986 453990795 733449471 96457559 925855760 478530961 649437082 546921291 231229224 814211228 704234146 107555870 769872904 131981323 343935708 195104713 74212314 274460758 332167989 444788178 392470234 584419441 127439020 517656140 771085536 477256572 721009146 751706361 109009625 248553198 236442176 242936674 554053932 20739820 339010866 58714003 452664541 976144085 274826003 101368193 300105293 707374405 270863747 405080197 523538710 4364781 684135728 220447700 697023157 299168835 925048922 233985216 675523887 923989275 485322941 404281951 698928689 464081347 81445946 176275787 395560700 883899213 636486086 128207046 437788580 713351863 195598895 600067456 389007822 316157480 873753564 918226101 892759337 1222427 764241513 324139078 563120024 887083048 572350161 413203741 917950972 787051196 720207250 430026064 891978844 261017584 788569130 833158481 7751915 605391481 613639133 889825834 715653667 956653644 428317604 630250975 719952056 962328015 329054124 391446869 11413151 504900178 575137258 552324037 164001581 49233815 791072179 594249571 485389296 10213040 800308997 380997437 561646930 982316354 686828219 105272087 232764218 374058220 757739835 763323707 743690305 685812400 592922731 65157362 298513298 766426808 510573692 640794743 611771735 904658233 776220874 720043933 676484264 280256524 794402321 308465483 776118593 497722410 261290640 730745169 265477325 882031703 595580683 462302894 814004551 194864877 147774310 590597382 100616819 58893139 588232933 564009885 841379935 754245487 93651876 522196083 633605455 981165405 317404253 418198612 439944529 430427497 128704727 44324175 628040461 85415420 785663113 232579174 484777967 364208619 124366802 385698015 537312953 208118851 369431053 857105807 883467492 390473422 374341522 957705691 591696168 680860924 798627262 533249199 260982079 843735707 408302308 890803976 452878902 638287204 669396429 229088765 493926184 435936396 182347877 601818077 375136738 43737299 75874154 706754832 67707706 773321596 133763028 421212595 471137647 150129100 245511935 478893969 431230912 159202158 521565253 824292974 259261971 408985760 250096055 106409421 346761599 815001200 45479939 879631228 132057940 836300041 660065689 297768205 152147094 217333127 912366453 992151208 47773805 55018137 954184709 348591755 544898353 620036083 931675871 248541192 852474793 489304129 722097889 438497755 234097224 115848286 466620236 509877475 565826051 546901401 802301226 609612753 984493491 799036534 286471589 452673505 764351232 595604392 272105675 873255870 82254597 97849741 449674760 326850126 168818167 482941448 301550467 516806334 752332748 700689861 757121320 146498309 266270746 192152068 497457636 933273878 647380344 893225722 932498771 8615499 656677882 504642310 548578265 389213909 11437314 417545043 939682730 784864807 119519225 424550248 156083864 929026317 721004260 120749996 787667011 451878520 547263986 909680496 20910677 282044109 105689664 748613471 137320239 513896959 341796927 264170425 791139354 602810774 830609161 348067759 956733665 314743277 393825531 386866108 466284016 632633192 520471574 388218201 552614274 63699318 424419291 676687889 59668262 398560852 237861414 299809301 921336495 936289051 457332694 548503138 175957763 700082388 305702788 350925281 714058113 361386643 601054945 399811869 601760581 508097800 118634053 2283295 602749776 299725337 74621493 109315535 351866314 15085101 584521459 491722842 235855493 986596231 161315934 215083927 119840989 558661912 212203632 140154568 767593748 233999838 741848315 604733204 138067477 342673221 212319432 328106930 147306877 419072856 178474205 500318772 44665487 755227192 328383300 381181662 958209297 682009501 281140164 369980020 913844481 673837311 917788316 1000465971 949504485 77588042 428630808 725144023 322656600 184717920 112326716 383060475 147606230 167820158 488211070 66329383 943631241 129820046 315352058 121132179 76043165 812332620 38736333 975048339 869612317 911157986 615665702 549108499 897951710 238892397 29926061 619863135 842735801 445466751 366684745 421971728 623343620 247992730 110744169 924795014 908966232 109789208 382339417 97888586 291374692 132802011 264751355 500851055 780790833 565886889 412733345 622535031 204556944 449181237 54405638 730295414 717535165 918686814 51873796 17100824 805376458 752309537 875444663 142095298 546322392 118496999 873989004 444917929 452895695 614979556 546833812 504062963 899890107 940139852 565449961 542185440 940190425 983377117 304565319 23844755 338598462 46541737 260543502 355251845 259902786 874942858 664448681 720107464 613997747 783531368 637426611 361639995 54693864 954442121 274672437 319849020 699046425 372158851 433137787 145620791 172294198 814791598 968560443 360551644 690342227 686809279 278503407 701610063 653779684 177609181 878340538 74409001 56219574 306422892 905435868 509680166 197440509 798547721 440472913 823965066 301577092 787629839 677464786 776984242 578974375 681519922 272991343 409890962 196428907 125855269 589962717 500039028 11613958 222668206 854261882 406943003 19441322 828157382 180441202 818615165 717864610 615624888 702585428 443213866 310564795 53622208 731202163 988631994 216533500 182452104 85185399 203463005 38776726 836100443 894300902 592478483 739035762 72461325 299468096 988893428 861366355 839762949 870089195 977675082 458853683 780733737 664421930 767192832 826475278 274124466 42857682 871506239 537794710 248582294 666022317 604144570 775346521 702617100 300715273 791523408 318059810 174775901 990249527 104702725 825014632 608767981 216812407 582757098 636255672 385214557 202679642 129748330 705606332 439029975 803105494 777325891 504296208 995401922 458311624 368193663 277147487 321339561 35934067 34693372 351504899 115481545 54641891 567724939 356254096 39266901 385294770 256737719 270872743 671966760 901113855 132589163 1000831570 455143736 295891806 325269645 995617165 949245959 773281136 693951824 816634531 848242763 369274274 499968293 303141620 32443715 738216241 511244680 28911748 275186624 602018973 767566341 348981907 932600565 342663703 776130822 440134514 229886711 105930648 83672781 424384920 896077612 295103209 397033832 1631145 442649504 305032208 154583475 856471468 82458104 764559306 67007957 260435878 881348275 539142269 263334443 377972460 888565578 362286840 209598909 532041062 696925200 570878199 798863799 571289626 849547099 561129829 118366516 497723186 261564765 510949910 142137629 230529315 828951831 342051746 147378976 621426794 308376097 525526420 496348105 282415645 166676342 586075093 553157781 493506097 122592321 172408162 145232241 444553689 161903476 121904865 173814475 797770348 222515818 822008630 170496753 222895984 908137744 904186150 628040767 479777499 80069212 105596073 423456880 151218246 373341450 259445920 949281117 761439664 992841337 10142669 72099604 229188884 820120932 60766298 417914340 762434693 38070650 268830594 186046820 752451530 674135625 126745266 449696722 933067059 998320168 51695655 40976051 645502016 140113428 74187735 635048091 966850149 295972820 7089412 398821810 841350505 497103886 172608506 5526463 134976255 552400321 971758174 79192125 802117522 714432589 356269748 37565307 772163416 803294087 231250767 127682768 469100055 844535444 745641905 906188469 572923265 583523497 397912 291105604 791389487 770752991 920512521 186315885 809747240 75471338 944100220 225795027 643000724 59766206 581171664 272045868 462281138 673421020 264153561 443306779 338538997 979046483 123873960 718377895 683219730 583328371 819816674 183658623 897749348 620204323 662961459 64767456 358033505 576449330 299877307 242636368 359100051 116162998 959841042 371494631 111368194 898719156 211641130 158319408 224541101 991805860 199742563 842818040 554969704 810054507 866068465 650436439 393275180 87255488 524214580 816802703 10533611 58034597 287041224 559674048 104899150 882584943 608028982 782490046 369179387 256143663 183819474 658733607 179887933 112096280 702816435 40794981 491515650 881958074 908540001 413978216 409156661 932350506 110688228 299902586 188090255 519918578 430228914 684425335 840788389 600936334 190231421 132642294 894706825 234597227 532765338 852392552 692176908 826243829 930224677 38307810 734674424 831276509 322860391 647917054 151288441 900524555 752688873 347958946 453948100 487629649 677910403 233174761 33673331 545436932 574033580 399067515 263985762 768368287 334125301 592666988 2792842 599777378 719362685 351120703 186529012 868332040 439299170 666856747 456936527 166844804 511941677 69026419 853460644 370879625 447097961 171352015 533044332 421330972 453252313 233602206 546575985 187677227 938886545 799261633 728812507 833788584 275382500 466606206 62863571 929884468 995745158 341183326 953309423 111583737 754780574 604937525 416362948 311527706 974940647 839846072 440038196 574367480 79011766 345378 944259672 779470435 348813810 989643719 922385141 531133367 346680408 298795608 790630792 356753353 270176279 385273208 157146004 144115079 450252554 164871134 521624354 335449863 153299061 395358183 276227088 914874223 959997636 683751811 901683005 563499883 381436103 294229460 460171329 468522997 840145316 859636123 621647691 463925225 538994896 990928721 612976784 747262084 578800623 888869330 460385597 48126974 66607792 661193912 899828429 646976930 714473214 344924609 882938032 741437893 672159005 328205449 186743320 887872469 322605675 952982220 672625589 585269917 167723655 470414201 15118333 415441230 741731809 352899561 239128615 415605904 185581381 556091774 7828080 191975383 627719605 312528790 439111782 323871272 836049633 617051742 571412758 328946768 637626019 610534909 763250824 960815153 718810220 750349258 313525245 899821732 324945592 352358314 66876498 401809931 101605388 189973722 20249221 461574146 289323987 592329124 502316088 857144971 881551857 166587991 141544947 557779748 292239880 471523232 185987081 908977447 784949589 479656307 958588866 594574484 767288242 536688779 594636414 434367004 455750685 74090814 414622914 639457989 639125238 846896778 975456135 241695270 350926178 138931701 694780234 67409515 978868993 537347557 327807758 530196901 484591635 803367447 61251063 607663286 629040405 466414171 82228324 228445537 278785249 763658523 173768181 365442348 527036200 32428479 761060548 232411452 493096590 843634196 463040767 553528534 83623998 992735345 411480175 221682730 711949008 555434791 754965284 902374345 860298969 340735211 210995992 881220499 934063532 638658168 417249674 31013927 587734810 988218346 196924665 885706548 567302665 525125257 516283310 43340866 388227878 193624877 127876113 169163361 86579138 260137164 660082012 170573800 938234262 978230285 333799969 451097956 440537024 233212259 722710199 76577700 385913758 375847228 517594702 460813725 797534148 902140965 732191864 454565603 522312487 818465217 880668761 316033766 629258482 89065566 15170788 709793617 273852802 195986944 951503542 922405209 28389545 505408437 828772823 621119940 211666339 53882022 589777436 671251705 855672690 99338516 600285351 767667500 806830832 805587612 213331280 846505675 464825889 936320589 715024706 25825125 387167888 620681584 145968284 425919904 36669491 973273217 584353890 505902242 356412215 334190247 630496050 414152976 493753641 617758318 808477577 332575482 832826025 750986256 519163217 406112283 408236105 269061186 260180436 287345678 993227290 316059321 347896395 404819607 109555239 466030208 383940787 472165653 647463543 995467494 802217929 353737416 879973947 419476122 862269284 457835061 177580813 725242022 952445091 299284608 435633149 700230904 148611994 713406756 251819047 287293429 130644290 213819419 596976544 236815491 710578531 250339391 738217619 904336817 297813799 966949273 939176375 595262006 286064573 38530352 939010848 771606235 271903804 84231767 392606844 787841114 741990334 794563862 163875507 218311115 142977112 410839645 611663600 484230840 579220854 820297588 764868167 805154500 154089411 877483718 138100991 230115291 279678477 815032595 691293951 51803159 965285587 581996981 843639956 410338945 505880807 940915653 759739971 803263865 557604228 645720896 791356723 758427542 64528724 940405503 888433073 812778604 647292679 550874800 237324020 366149851 601322415 675796479 398680616 418850330 651182410 775279249 84656988 408512361 242885863 803912770 24485295 141288938 235037574 573822330 456571691 723717533 269454431 310694098 277498441 447022830 796913437 877681662 534392345 235111725 468735783 395809443 392704782 882368772 772266058 797339905 969998864 285409207 631704817 485331468 682436051 741965548 382118624 292513998 130984691 177180577 936888286 980162882 748075570 353744017 394819966 898327917 469929317 930884471 347961175 127151279 148156149 284657151 756593359 909510586 104468206 75436989 261803163 658055731 794681036 791584403 749556013 93994558 629313873 433460213 411802585 649558965 780099692 660586289 4794497 277421412 587609751 410174366 252481736 520610817 99496436 211413708 776534149 346670392 752091098 910584905 194878274 1800983 430730734 673397340 357556728 760512855 375167698 903202935 906597079 279556460 58597759 165860750 606191998 917993971 583365016 268913606 874100299 441067817 59832898 536899286 22863471 886345940 439634108 737283326 31876955 917445627 153254339 725001975 919011526 141536410 644444666 129861420 195220 383199829 586507812 255551203 129382529 902175557 250609466 184702516 642113356 291821436 989341389 961091262 783556437 354181968 856992933 715594277 425755389 216062834 452917205 199752461 214419634 717442079 256476581 111752695 138857185 731487687 605309687 727101881 309626719 873371991 872765502 541410993 627363492 919293689 393873626 944148738 492525137 283741509 63361621 331338907 803584968 963473071 239811741 198988738 227336963 130195109 679323203 928481932 508074185 189538404 122446800 337951286 759287520 441665463 275600149 77729520 654640947 686106463 865687686 713965904 732725505 972305540 179964166 514905047 25641032 221818530 484405642 228882494 495989183 819936577 681560906 461710235 306394528 438379406 36793111 273062914 540387907 261047445 64078872 758926900 428545055 945983052 711855892 26200238 800327141 757455115 130342411 467119306 687220507 167785756 969041698 692645473 328382014 28127960 545569438 463100963 814594438 532676939 267367961 495896513 397594065 314737251 325964386 323561253 400976281 50415699 572171053 73446045 937273323 225501363 353914778 935402631 655674990 135113069 308635661 478571300 960526443 913176843 13744852 214477457 740226166 422638139 719399547 235839695 373769296 132555422 406628794 356516920 921181934 95887742 64107254 880516603 932119992 216597285 990755684 836062676 628627294 136897336 894569930 594073414 664240337 354525560 606316866 144234924 708527299 152047229 305571397 853787973 93899812 213096738 173218520 256842759 336781715 670580738 59594866 207308430 931590574 404741624 801363413 829614363 311067112 359098686 991019157 559939198 372201897 983495806 380633729 579002247 549182945 656867655 814699893 499310958 409755318 946173316 924666095 891065404 954219399 422487680 242537405 276549031 959867939 88869600 17009059 496099538 364208431 791151960 388060917 481511039 967645166 130032109 236696495 788851756 423732871 521581605 471795394 816482434 647414372 433554836 638011381 388106043 777226491 33108335 223348399 201310194 380160929 842888548 974573216 453187025 93306800 70860977 182311105 838307961 775874955 902282193 871013242 542269002 299498326 771452577 336858664 748781941 98936632 572141416 253471601 147427396 9495244 175195286 114736193 852898367 211684634 677454160 484918225 922286042 452970599 163659178 671046291 256029593 915174986 427370361 302396634 798934510 505390852 701551273 109360040 817942861 208011411 132990827 373793982 521188585 25106232 962211865 358538489 155361044 206788582 300083455 639209037 28923883 586282758 534943741 650630421 847756180 896031304 700345057 70263079 927205342 559720839 373422753 776003548 98338671 264065952 156568819 313992095 363243385 210405153 811651788 117752504 666281286 325253802 863959012 910796417 342315832 935680744 407241469 204800303 352684633 473131547 856240221 535499761 841588822 187299199 184395210 237956607 202145695 379501230 337442248 452143913 371360737 191067947 742614199 825764559 485301443 844677568 901650823 3204218 941972875 257566858 746845415 150803136 473351449 409439710 282958504 148314174 215397157 897462097 775466836 787701218 876612217 766591915 650713641 662388914 558852614 68764059 805344035 184092540 610338997 57557877 151408690 351465945 832492587 900086430 610176603 63758118 163112308 662699984 692941360 122616469 984670168 184105833 95654156 680544859 28633236 733961634 20167223 85805952 814309694 931145781 603004781 459357071 843376896 570022096 708764689 71495055 894896587 731804032 865781689 147546143 607129563 853848848 427308741 725072130 703404782 154414682 237768802 856516259 212379989 414924171 175643765 339578503 92417005 105203508 935520546 606007385 473408445 437126152 496519385 796608688 928491234 454091853 889984132 590622112 437264381 66501413 34885170 788230483 240205755 130307380 740610939 153564884 135808651 246915360 129393660 803406029 161842609 815759136 488534283 984187733 903744896 443727170 218087203 417962931 23498612 372291777 606364860 501106105 216372614 863420958 59784679 463941065 583367980 971740901 100378599 920979473 236319147 283652938 194859955 253086328 775890453 133167959 879625541 512155259 36448707 16501583 883477643 769218364 343983744 310272330 942938932 104411881 950652056 481007750 904828027 323638888 615328584 288359008 62758739 674016118 463268733 705154219 354934602 251579418 914248652 993110658 596400002 56074315 588848436 826181984 741933232 183041776 145626296 426628720 326224507 317323942 345142839 699330721 725886269 728671036 770562860 141061335 870101120 155333252 72949962 238406666 842304762 661443503 622056081 592510731 713593501 315643089 938559275 699768264 362761822 170726632 245617062 63466979 905380987 914071942 747970683 742288270 756181804 332489787 173431828 385190263 483556505 711197421 177822178 264657487 58893520 734826078 928368308 186727573 797205040 267116177 841153614 195694088 388149537 873438824 408800487 39103603 545331875 386307120 761773153 749523002 118510206 332015674 961931222 126698898 962483058 654948002 534869015 560657134 903963591 37685958 532310318 953982346 303634546 523406077 536474049 974723898 148680791 712390126 315692102 921686537 331290537 859745167 932767553 20607481 463620479 687535215 43185744 6311496 818500800 443937363 655576310 927722453 413411808 183371676 360354287 245366445 177586127 168757499 952797851 85549784 966175605 688537504 402151757 10338508 572437295 131643671 701645094 788203876 918671410 930275311 248498565 162635847 907971010 958672023 508787396 162221191 148398065 737542671 674146421 137203912 911391008 387809718 308357294 268333922 329281022 279890920 382730427 109216721 830145899 242272842 281227286 37156546 309844485 827992639 77248598 328580586 874064261 611144961 602949395 13146031 967226163 885690756 574557741 721703478 949404879 826689127 545038514 238918934 647401486 442544773 193706632 999327391 6617936 297998446 770069474 601496432 609509505 41944523 967601825 348357943 134202809 257477697 155741114 263287279 533342521 157890928 931369698 699265790 915373829 598726834 306893677 741765973 24088990 823053238 744569258 242271213 227725796 758007589 266096979 716997557 669806416 627845928 762786450 447672186 602167402 982892341 907495705 549453699 310415573 502100071 375726774 769708409 377696571 620315265 735022021 436334028 299414122 857350479 387133759 794364119 369867535 120714190 349827244 706337615 330686305 57932000 986700111 530777406 481143512 825131924 582144964 120828721 180915420 822422654 864271661 353916659 651263020 298935648 985745642 671232632 506142267 560843991 699487731 637678067 320137382 401588301 312931653 488426742 296384467 414856685 940461559 735733006 446871686 328639931 510729434 69682678 248639976 944131788 543800192 84616258 2235699 690178933 890883155 108004832 525398108 598962182 120611589 594387690 688755532 521938254 151643762 65383442 557119702 294489112 930026766 306943340 11718798 445220408 647084852 829300870 718425984 699228107 32105706 404502859 19748887 535255984 362683451 689298430 472009807 878556834 515636239 390611512 31439239 292408255 380378557 388677846 502144915 434483788 940865431 714840772 977736381 476387510 98772306 296009185 226583836 739616725 876411792 777075877 541322337 114137188 510693718 408921577 932455823 749632642 683922079 619174723 473428624 99602799 536025697 103999236 933699545 604474978 184414523 938872512 633476975 744178020 984857562 223939618 327781789 461739361 704007401 83226410 713414546 13305543 392159390 407373506 67698395 865314141 219953103 71373434 20839260 631306628 13211618 946715222 807397316 720466971 271752999 942785865 213325687 725476589 363282363 600530077 522166078 735595044 439681520 771425212 381035568 122303202 84785323 432409337 630820350 829219931 89997373 795636712 794254989 971544526 757001674 528134727 328324359 798363952 979760104 288090928 409500165 711974377 203497175 493463800 463821267 7206110 455658897 845739734 360828900 718652682 158984713 598581970 960648112 829886755 891351388 982414197 663492410 364913488 946951641 718659008 787223544 597126122 824007951 573711124 722284944 54874306 922696818 9569719 358056057 984294503 880985721 709200739 157663464 906626923 517887550 734480981 624391106 612135391 943879672 344774879 945676564 626924936 327786812 749331900 719833407 135385133 813666847 707351973 740640176 98721098 926864177 31911366 128138780 891850678 390882067 762726473 41616322 748577805 721226359 450508245 757313063 650056394 174719884 623738971 976269824 488415705 129710748 964024940 986865006 90267000 442586069 554545995 695506448 251568054 786366451 251995135 614664089 262084197 366193839 96195531 509783087 18801422 766290571 689838624 765940129 644882689 502939053 945394056 623964552 846635969 77868315 881501535 260297829 746872881 470887452 699182721 501245839 893443102 893351415 1000320998 836398111 505032631 788343277 747147384 783126048 405126086 961388876 936847478 294391089 629058192 31377070 140269978 763978701 987872682 508016605 920713884 747523557 115449192 505249926 301573363 165223979 559585118 65954468 707139860 383085243 285930 851975769 759320734 1327585 191046511 907943332 632459256 350774758 605740521 605290811 394704916 994669381 223385367 744053769 511426708 497495293 131637030 742577624 160590716 860027107 968032457 146815368 792891700 725077719 725512648 256766302 159474206 687673045 60434308 383995325 767475055 764770713 374150682 25499284 233017347 923506437 924116342 46008206 84419360 208103651 690837868 540617522 640387456 190140876 287932289 882896600 654106068 740543215 908045208 533227186 261154433 762765318 84721057 763748019 658767703 983910836 154555291 341770673 508287375 773633197 373798404 17765499 497182314 528970284 340749833 934213000 732128672 52338721 860048172 484707584 389330112 760632279 759129980 160093565 473816380 17097550 492089738 998753997 49291110 953691029 554046196 908513775 564445805 664530579 681783307 680403259 990646400 213950082 619002052 28258067 86288855 136292018 10790199 874781898 212796071 181175316 713673337 405676439 745110113 509941251 457186491 975461393 993097380 729360491 857920614 677179797 515465150 569748683 640702499 968677766 64294574 212810180 840991123 744486302 79817012 585850277 460694145 814735143 898543832 225437561 902821530 103270320 36296989 123086801 214780155 319576241 290608734 286139571 592916665 502644189 261322431 114527498 897846346 942808389 303095174 845012005 595015623 818893132 897016155 758405163 272142338 663272948 778575255 318020704 661614503 161594839 739354895 931155785 766691382 352127893 251845292 1001114966 470511885 884113692 126606623 885445038 980494480 558682210 520617307 307772383 306781351 782516722 504376814 536452029 903823994 197021197 745313697 340173275 467337604 621746044 838885607 370383662 195224356 320593487 426904784 220464414 52885537 176780689 925470757 711473952 42873637 777565445 496692341 695635524 845406591 605591417 627868328 766618623 869649499 109649491 557299469 862129989 787200184 990398873 153122472 316678763 331310689 518586965 244420408 212667091 578610708 355618722 934076371 723908858 448464296 870280409 622066039 293184086 420007649 870670805 874672343 838578207 676427944 403217610 858293277 603966648 367471471 494095397 720504839 712687897 567314170 497357642 457815771 958627487 838250799 401692585 152206690 112904086 919995412 753536150 237815865 591251361 432008033 589868506 690581829 390634873 303724820 185393557 8196927 984409968 467003471 261059051 347101264 45945571 594593376 801783098 731683642 725597533 63971543 302708825 809950640 574914489 844221556 680541929 705788472 607354074 228126583 426296043 473780338 518323926 523791857 616802577 760623648 581024461 669470212 179286845 911678813 591492083 421411334 735413100 192784343 543147341 515159798 845851486 234126078 902745813 336946199 447297099 290141611 989073886 269808546 264514279 504589827 98591769 544342681 526306560 465261039 426800364 644739670 557268045 25616138 481658694 807525538 667602570 435959359 547544409 569705412 466688484 180120561 29225683 63848142 899149114 686233517 786143776 345541928 293597382 779725981 959743592 892439998 400350648 540217192 461845680 765502303 21863201 241193053 10811268 214747283 45725194 596902377 647644984 460827598 829262467 346764907 719310511 394113833 91869109 241875570 819510223 339744776 283688979 93246418 36649694 91131663 339297562 779102664 739234658 523264480 195487066 29694082 488417335 589195765 714941043 984855536 666049729 900231116 73296695 369545032 668034591 560484898 401735610 528148068 302617428 451151967 223256350 227407154 733480894 550826058 296083410 516159304 484216748 144931270 518294525 223529653 150472626 971091880 245737292 48989924 655838076 512226824 926251559 997878451 774740461 884104128 202090777 253053247 95862017 130199480 154384051 977926894 43153107 132268815 514752386 868476786 515305936 556347753 32331839 481043552 883239875 278204522 574641094 556530004 990645118 160577878 8895746 262608327 418819556 272036388 589895256 448275605 509946588 410671338 77816004 869059936 41089048 734933823 329317119 730638423 945474962 374449061 552349401 245105266 494587776 484220654 342439631 61617996 862557676 544071412 655097678 492898730 885433299 601306111 77240895 640178892 152548502 615090702 161428454 363030534 243818186 807877639 297388480 552413988 935642648 693525281 580880007 132110023 392623121 577559006 751813627 818915388 407227581 241681110 504705640 817007409 359707650 752064518 141879385 34241303 383728142 486775338 40499160 554156907 195996868 754842440 928100578 719669329 250460400 317266641 989508258 487417640 677114160 402528070 328844947 64360501 79556689 879656107 8582117 246189105 124448207 320426888 495108373 938869822 123163495 591929195 832571678 687257992 619804939 800026083 556110506 684972269 354215421 591407144 692276470 656821505 865457730 521680916 742208817 811567202 372038813 879309603 773482862 40109306 641570369 645489516 741587676 596232190 29361713 194682378 182679748 792009894 484993185 103437705 580259098 738210125 278813416 654976055 802114863 241963611 999335655 964101782 795731018 706190890 568020582 954847575 328494782 16340218 916980086 289803632 65926006 184714169 715071480 985312320 526092624 928878590 547564754 710384874 752415307 384087523 141018279 416626929 356765971 138161454 349977896 825253367 150664082 526610360 303897213 134349393 995467496 502826996 258859499 103046108 701165128 907683229 950210068 382565139 162938664 314759981 514459754 821755881 139658673 165627701 896600736 980456372 329586251 49776457 578680900 290298043 820144553 251364996 911332132 371200442 513236323 67338141 148427858 523828667 896830989 523093461 925800454 786768132 733018919 293385056 24970514 1002270701 520843121 995589561 281603867 276818510 124977404 202061157 255527086 941045970 24456966 751111505 878157884 995173905 860379510 89249070 178013367 529031968 610465065 692496271 354509417 39891211 480638095 152946799 134496387 270746089 546320700 992378865 820929357 2558132 460932979 777689275 315849806 191466597 498660010 253991632 957467101 924407074 273734268 644127246 605319566 403672883 792343468 977804238 193506554 620036377 566482045 223941002 674887291 40678021 295558967 799817468 666048938 983208243 105011272 61422953 380506343 242795214 107987127 219033012 749077534 85659084 589158280 795434546 414830872 376284320 605277461 10608653 258336678 176621272 775484957 12272927 224392367 209691579 722687792 59794656 548266157 6214225 929576578 903611551 403093197 377586146 733570111 928629606 681327112 963110842 10756266 354605723 943423691 453684140 560767730 761595602 464081777 370846082 929571008 849548420 198330816 534871412 418584465 98124674 41047317 356266653 17175962 325885750 898170118 213519151 631253921 501551539 162100739 476331817 678027657 196223398 210870457 906856572 560009763 208627356 505364910 164064004 109136503 2961817 235981081 295309041 520069732 402909336 374798631 990145123 391139490 99455289 196556319 858328096 43808843 992294661 108537240 575358304 258684098 605472555 480579164 636656830 571156228 677143105 423083227 538780616 130471953 719865994 545706504 433468678 973417379 103396301 794601944 170870623 630807169 108438750 532099022 505322784 793145153 796824636 727725878 217747760 252184268 88444056 436961422 743620063 512188093 482699351 272809058 411247905 353290768 640536542 188016336 656880174 609568569 135838307 278473910 56650573 983063653 458094340 526182210 833432656 471971147 550882375 400478489 992761023 294198874 231922868 900269359 140423865 921823182 448544582 573643975 987270417 637355444 10687452 848191853 749699867 325022725 958171918 226840885 493157739 713455261 606259225 122373595 969242528 525164878 530542261 342002365 76955237 248321041 455656482 558908680 227800637 314850921 650618769 65176050 910946877 606092491 936384108 480850622 586274673 857668253 401215604 163953517 760850826 325507407 63146132 952713394 321505985 533272284 129613967 768460063 994480494 285219974 888735178 750526041 903263979 520646912 928746579 413622578 375657378 502464845 843802850 905628232 298817373 804109930 153979069 999741457 576575310 820742889 270486308 254196529 615180844 349914265 538669611 592399930 193113131 335363843 517900656 762979792 904060304 276067947 761688726 319215001 842282326 535779731 456793460 963393329 633300257 441814054 58871371 502461164 873102270 464608420 195327041 934570804 100446692 489126179 24812607 778230926 130435688 310575553 100757347 659225894 569744747 539389133 309124022 879322231 359824552 372516180 83931872 159282863 786302290 521029991 209077826 151101250 247149203 755984615 669018602 706994446 622137082 475934898 553129721 886850100 94450650 576861839 296148569 775035878 883920076 591594713 519066268 97443364 847024871 82303146 490482982 771320059 170698445 510733424 634842547 710854927 417178419 768312649 159270827 847515539 440521252 177268043 709498211 690525400 356544953 431772328 942204692 591157458 544303350 751919726 565591189 415010314 935423279 30609681 247908638 184399711 605647652 617052724 393824535 734417958 577723531 628798447 32420507 295880711 412406428 418389386 330750447 539758380 216745421 72100379 291419445 334455502 776561701 657361257 386713232 646447744 814761505 830571297 622519521 750144848 95359323 653031023 694359610 624547892 816257697 666888296 612131816 382120083 602529547 79184483 832954904 581011997 826361966 941445559 247565579 442403283 235459197 178832741 352747718 708994958 283898197 994341954 363190600 769837407 841077767 978411834 138269392 854179280 861465180 66290953 415830099 306843895 503991245 463494311 304935680 427205787 718691887 546227681 174799974 631185367 240825699 803960868 491470611 574758180 499400958 448613617 520908862 453148354 339217883 706271820 227823894 202675987 498855424 676157120 665160464 138672299 57370079 74921221 146701438 643625595 787396860 327980770 500553336 789528208 733357939 369333306 500386298 745583596 848740065 876141967 903097044 212181133 451458478 958241943 570963687 746633211 694487742 180290205 838433830 301982398 537567835 896327537 442952422 816981243 959161968 624151138 394021057 501895798 333262572 256758953 71840927 154747516 909848541 531673138 724523031 707537099 198990346 897436017 589404265 997353058 961681593 44409025 94506663 88579387 882569098 661665896 621749539 746528308 842352388 693180802 908500155 645399907 822152853 276066123 305778931 787524807 413268862 886622661 383494365 635059861 439325423 548538747 275844590 669678895 525565758 665037071 946063369 472733825 730553217 455545881 347869495 497583743 297889423 463481845 332117020 72722858 923159801 660146273 550934812 504835143 681792515 419477664 822279406 143736378 548605907 455474359 992786280 475526508 814423210 633167778 115639414 878427858 421723537 661962768 135559164 443205030 510977084 706211466 211001481 453315691 389334133 514215235 970912536 866482119 199537244 915739226 313393351 365628315 310978667 917945269 556744727 894010758 269970984 217208108 156863022 399765762 170379497 521401151 455484439 565125923 335738759 954877168 769549364 852367477 552057359 941566313 940691173 404337895 481496692 519321783 343535180 334542230 776265863 907826406 984380091 77123055 596844936 531925508 260233172 297152992 769439707 422330865 628603457 281323789 980973641 988067581 737276670 386173316 111824766 6590191 126283940 213350239 408236391 506708096 625444126 560760734 256480237 154738119 467116160 39124052 668401255 542970391 62872528 790670068 294541623 85243030 571471505 951536017 785374586 321386373 558569241 455103747 777215745 762355649 314485197 816644576 89655645 957834732 66893552 604103832 577418974 159423073 403640893 636733208 33886464 548022996 204977763 802780204 520685148 915442310 808974641 338058427 405869993 894279218 595222764 24085453 520754240 941912974 57405490 944708731 418722022 255706919 986534704 501076754 861977745 217741166 844000621 591969185 26317055 661931434 689216238 435882022 679845052 483234633 710198773 861447446 804738259 67663624 133831366 699993926 946122552 800251760 297596016 699483815 16452927 308811092 987200683 972449063 14931875 910702976 91744905 819287456 249008372 978300152 874041269 947924557 42349860 487027236 974918092 140935061 400199835 241989109 645954622 685498257 255085700 359971123 566707617 94873741 707785810 270370012 793889007 444435176 56515030 759834157 887560064 674821804 845014630 231463144 667387261 934115355 485234626 185990871 42744479 187928653 688042077 883676497 188532747 441203602 734803202 921688253 871209194 954220044 263892615 892107859 642286235 968886245 741442215 265629674 223821136 884067933 52061010 534558149 215337016 404659254 818480464 501014020 92989444 108038626 127193330 685589695 140199713 283779505 26472149 810649004 740230227 837072639 742129786 12328343 323902460 932044686 514480990 550405991 997736018 410535095 886450673 602064382 674199182 903002238 260511945 171196805 809630983 182935652 538791204 453676990 767760872 301724145 788595146 67991871 375295204 948634660 378360141 918090830 427945539 895480569 171105185 799956248 123773893 68154902 714915739 32177041 560997109 632731202 244722556 830756006 784717195 721902164 891959897 302973853 826009319 246378001 226141800 82914480 933422256 501470857 852581269 30435524 304391641 489478252 962492770 797028594 50406960 863449181 460960246 993019998 264793117 540394898 844016647 992995132 758684549 908506623 188567608 766389924 893642864 78328820 417278700 139933283 342584226 904814740 699626935 830802107 641364559 749738828 577148127 456630603 702249908 578909279 330476206 121406901 993345504 531907674 445258451 326174604 584523086 424197035 124176195 564819776 616341878 337793636 188399176 708336600 980873865 954401230 773252661 767442762 716737027 786779835 916757688 833734626 472984153 751904495 488330283 706876114 849131862 482475825 17659138 497261409 287258958 636536294 444611379 909992355 761255021 562900664 234389241 822986642 56347643 20102818 993581571 198079420 137392735 511320534 393644972 600646465 438150985 482425379 819321000 51814537 184321942 141236934 787549613 154388553 614510064 571006906 677160878 765978616 927482437 695957847 101466237 579050579 41998722 302456650 63081948 282971276 223648428 966813993 824022237 774392415 391467724 894225585 933861320 388745626 299551743 273344049 671611899 825127866 855997453 521058302 508938234 867937106 345450689 506253547 938551231 884560954 396036233 266333003 977301778 84366907 666733486 1004291 104808936 252332403 226179058 34941608 596663707 378224062 535164651 194011165 928915130 961019219 894040902 778990596 167911632 658311221 995019512 142724097 380834249 323373088 346417045 965813175 40886854 159028420 253643720 465975416 10544525 887034157 458113994 296576653 959536501 611074937 864666015 122896701 804456662 992671970 946910225 580718342 948912493 454180563 681489600 116793027 385865936 993543542 896438914 246227893 473641385 374745674 839271203 60695898 573004397 422414321 770805787 698061665 386368665 792598693 666935691 648508206 519114111 879640469 960864908 369949947 218472981 256394841 873043248 67165290 828827397 116429672 489496043 182751985 694548180 601598360 687530567 920881985 785735130 414205722 349264327 252883306 14831152 273947633 117951700 870688501 830418640 545337121 791267531 571943306 768885612 803767195 580608856 900260583 730554882 19958654 925368973 762331453 748988711 113204414 428356394 898843821 521067679 171128066 729983486 692630744 661047873 253773801 571543183 99548167 96874520 351943686 354431759 913810749 336518518 564916112 38970652 806627421 433406727 76197466 733037118 644745814 102631216 828093904 900275606 372461509 322520510 943211863 649827090 829934620 753144007 770640985 587352282 551082459 247992532 437756762 693981140 499605372 648602463 404113369 614757607 500713282 367834767 69148029 106361289 672771634 787079038 278938749 724847991 521463370 446553010 706672746 765375573 277927655 538070111 42186696 279559764 485848279 149799557 550624317 754349800 57861097 780282232 208018075 201337631 580850265 752792839 596339312 794270046 1001949029 858521653 903101150 339628301 180730473 369889535 792118552 189975540 47312627 304483997 791001419 833504407 533795644 421800038 368801223 700816868 722118573 296370601 638677773 115692743 94763568 520431057 703411689 525858824 805364362 476025215 553168769 932875375 992443021 1000484809 491299299 12109616 22669329 906822353 183455222 525092682 351690039 170861766 605524116 752983100 173992849 400304569 247196600 141082051 572479264 527379419 175361918 840175269 643407931 346489529 237014674 427953258 569488598 339448141 704760934 618842506 313577860 557232152 936124166 623046876 547472885 713280851 262054598 896019448 893119795 663529435 247977024 532783007 251180035 88011758 49896825 303452764 47139810 874479600 529210306 906665272 713012862 339573100 323847440 397578860 369940711 591815715 238431648 72337466 309957896 920056972 202092972 281927413 902609299 717255853 938331224 905612029 782291634 136498141 503984701 123155320 137249914 402241390 898155165 23968351 917173195 268030501 515478448 174578482 468353553 604404468 340620915 895317330 652991487 803481893 658201322 214030943 94683265 637579863 430437367 507111433 338714558 411213322 874556509 188592198 940196903 641856505 730123163 413426026 246183854 284822030 95970285 865345931 695085732 627186033 346424945 16120900 352796781 967910932 375368837 333934693 639729446 22622138 182241815 75476480 320119358 572782666 566054986 823189769 695685728 162050506 188872923 289458853 901947479 167037457 807280677 138934627 575268028 1608593 762074460 488554268 893060943 639450698 991136418 153956017 692950816 431066115 469459028 948169235 799746189 915703289 81473288 799668431 563437040 893938296 757459068 645003988 640429551 267847850 915588889 261373786 543115336 713235113 548634243 446282586 741977341 715174934 649799804 347117308 590062157 369367927 526676699 837078790 528372477 106061523 310087886 987605848 748605007 422072684 887595639 809801116 194370934 890959815 500692984 765735725 34674485 217701479 926922922 249495664 859660902 545299542 264321218 685819119 134498288 44418875 298210363 88381515 784160751 118274588 194754333 975596816 885606166 628488622 167383890 214437970 210037831 694579507 359175608 192684846 939199270 736911202 160914513 705562724 625882756 831842671 805541022 597505106 275651089 885877514 611954454 609307196 812270232 77195635 778727864 556460373 307674741 613877447 116954929 880502850 647298341 808340564 110153039 48464598 205923858 319750876 142402204 79685350 80943751 517813911 726470535 428223605 374656092 11322149 738589883 846038578 972416992 849143696 61103758 935581704 604418729 374804361 622784004 289160559 781156417 701364495 15299279 937535919 804036072 939612756 963722050 579462099 434058407 1000039991 992057239 711661777 828216216 614542572 113717897 606163261 24526439 634018928 892264093 85077904 257361137 134604679 962368473 491552010 610093661 818391993 496120224 932449862 98401132 190756180 965302154 828049289 956879425 452221169 245611253 893723265 419135774 100624988 831104413 540598771 809940119 777094700 595813377 598198219 248222563 452695046 421841436 20306538 958471309 794677936 985031922 170675719 776470550 11203237 53297411 32510813 577330837 361103262 752968225 463660198 489030817 346570597 551793074 551034966 480392250 611330219 494946984 31166988 670266359 151214578 509745032 491826275 817609496 778868566 184687854 681563680 937162309 160436094 93192113 581133247 39267090 363813449 898430491 202180359 60999460 836188409 31078857 184530417 299131604 582276680 735759724 621660605 519004829 616310008 432547920 688139849 413896296 970617988 31981768 903185500 376351913 576884069 226149134 396185734 852187226 425367941 459043881 524056654 407806591 934099311 863119767 640167718 895617451 597991284 882047766 238029362 726353912 863379443 373386740 801636132 431189314 89760187 233007407 308599037 951237262 808072992 961446600 824399941 937896980 918405611 494230977 997852266 709185189 905823693 170360473 589399700 320628602 100517066 539020189 17548568 392973258 355182634 294929669 120848110 581248994 685813246 22532242 122409984 797672229 380152913 433589293 182741988 967366621 141795814 376005967 798057336 838987187 105332428 603767200 477113402 228172859 270072960 574146461 853368074 185488678 291248824 397192903 236368556 793372735 740421520 255332598 894744049 184051410 272852821 273085714 176294558 734653323 200926185 447196860 206605039 740694134 721885650 52700820 484240561 748212400 736020291 610675549 533759675 508653944 150582899 335464276 321343774 69917240 487672114 57885477 810766769 690416959 634679088 70977088 683265782 51565491 22170049 33118442 80214748 683292835 387431071 306282833 240584212 625791166 481097291 963094916 810775576 923880118 267696501 942302762 705378090 189980612 424251513 871384773 774608833 459269106 794497665 669165254 90363695 454656311 105807610 841590368 869923321 391136423 636578224 210373020 46358761 777188527 120869703 273083183 520972487 863964281 973008806 685300890 189624553 632279528 762599320 133915271 921545093 920371358 279260878 358043253 922462441 498877325 242659535 533080478 282809198 704184807 339448808 10105306 378556780 481812855 767027505 204572319 716467799 364075784 250456612 306340324 687965227 20158238 618446286 309057623 192004118 680787153 165008482 253381137 887917703 855875945 613405437 127870571 238584887 31673780 547078438 163681723 866134940 113334613 62302523 548477973 692533373 895335536 285646028 910575803 451678108 815350984 25290019 904277315 974275908 275243604 755708806 184015547 546471251 748490533 72025089 959855339 718884636 983045182 882175941 26491000 919710891 934989844 207827815 386203229 576086519 820774633 88831589 552758091 19250755 836239004 967561027 32045600 550274639 749333129 688224041 259659017 970142802 349028272 258104536 176037153 563950409 368074238 772707181 323083656 599746877 164674601 484036952 401056858 194338431 600506181 810365089 707713346 593790964 800106177 355646187 215676740 814216368 974881488 839209322 55287094 173097304 669820733 145358777 879964601 4950321 312506898 835863551 310044598 144850914 186823311 607385367 993671722 861045950 336886701 111451294 814017446 883800739 133916288 366178558 841860746 301231212 810982608 58768726 941232180 198486309 465541928 72399393 563587943 392052991 948875440 925338018 519148845 668244966 845724354 567813581 253162489 977768536 116808684 404191641 126461699 206516412 739701910 314339757 751911422 148598824 903347826 130128479 175860276 715805347 179006396 453267680 579535348 704165529 10921980 536926753 25739676 897705617 966890507 224675485 545939747 928408160 18749696 132501913 240206140 707698366 815196448 868200284 245905799 757576981 399630977 34748855 274133871 570877873 561148012 897432361 797706945 574864497 788291162 357927080 598542562 475698789 230741527 230847856 345600667 983393528 506051862 490929023 447905365 727543299 813701762 470488633 323058343 163081972 7952944 504002584 594562970 468391505 584458834 867364115 230927373 694245773 219833331 611016652 486076064 820050004 653928673 456646884 507901301 615513879 420211581 60926333 945726530 546389150 206104927 478879890 871506259 864106026 146218107 746744808 399229045 494584410 568306940 752931871 640183367 872365183 247435095 8450652 655774299 284227303 755515287 130365939 174639863 888703803 411880543 153373478 320416288 196405231 223349674 564866550 402321312 465158192 955809164 373499020 373291474 466393253 526633915 150374330 786099990 752892280 667517299 643681703 34790166 620056338 437418609 130681221 223104688 980485539 346451765 845195285 695561159 203858004 701192832 184281974 190329862 811602747 96721472 350904759 476763664 436429563 228010721 393769429 492083446 509061774 858685588 45823368 909564838 619364116 747400342 970933169 983431586 851323763 747108560 664838264 308943656 804554622 568176169 329579300 463588062 468521326 870381480 687452199 521439281 821746180 646345126 141577477 115191748 575863693 137568415 203824261 821426553 781315370 354405899 227835598 638465879 610275679 921988346 141499673 963108132 516513224 381092763 271653489 290668757 290894579 1318555 422679261 124475207 660010260 280531013 243473067 477253014 839064906 552440721 181534379 21868187 142201488 264374031 892664990 682006321 733713547 389160143 33554292 434173786 837825327 328323107 548392139 277548658 412653786 321336929 330966272 482897789 839598661 355064238 43079737 443028623 588069422 444316155 943198748 401384226 403955819 677210459 515643369 605058268 409889236 229150115 611001356 811384201 333997787 815398449 953420455 549628661 6156862 92925422 803481903 89997779 213959868 250952823 333414448 36188319 502256427 629342762 718517276 773143056 859644999 303614783 449479543 370726394 914371736 34398589 64568194 727328018 150628876 320636422 973748594 868290314 245868059 714421322 721518309 399991491 444304552 563550052 300588769 904991689 223501682 464878541 877329054 175457458 5758573 264626302 591505659 680579346 479620222 171005495 797392639 484773768 950171173 566621628 108825192 164484959 61587380 85669561 700888475 948290609 42343322 643343643 165351620 573593627 557666325 566530491 733574875 797233229 571352985 777415223 254489082 703419808 563666023 30589886 910900632 703945070 326202321 360688491 611361219 123550308 724633944 827488093 540171754 95480022 58761111 810089179 122964797 803236999 907354448 954314523 909128761 496027772 474429082 148017055 799974587 776981688 302038480 752856157 389687533 246014884 969394094 63904280 484213298 346216482 661915563 94314789 466872557 80262195 1128050 449125941 540818865 750120266 334622863 596088102 157845326 133310782 53163642 416417152 469533556 276015060 725352276 708546258 852602380 31632931 65929397 359017017 797930163 286858240 594093762 793549668 78186192 475782493 856103990 296542835 165593933 848320942 696935892 842712844 44213686 974690049 789811088 849445314 248082597 50101774 292153439 899020660 134999972 832002574 565978909 514471887 561532174 464296547 837696273 152721698 351267275 846026217 30323872 643280745 454242586 924275913 430331842 483481170 183436185 72412638 920325503 177841689 457356118 409870478 885161202 441210483 874986285 56816107 412518678 111464173 971125437 56818165 462003259 839045554 254536282 226627783 745726992 67492864 904227106 627824239 358510934 105159005 657839641 11880386 522976258 180688104 172029144 710881136 489115670 234297281 608076889 160047579 126331271 962060277 521156592 848339488 161522097 638987934 896868510 807207638 213020943 915958068 375024164 537794148 341692887 455038532 730806645 506125117 656859159 80323629 932306473 244808851 390639102 545219380 799308333 835059509 7588066 539544625 429884472 386947420 997399539 618245063 337196580 548293292 647304752 268770648 846150945 299153454 539324911 767151839 753748937 892532045 715419211 362071747 511869044 118256739 924459695 382747857 649669095 434115406 841496309 111380730 76699193 991658291 583930396 771325467 430879394 884973104 346093593 291788068 542930012 757450930 77508458 116521841 920374355 98821035 28806993 596591112 847276211 722483285 201306306 618178409 180190738 363630950 367392769 560685740 777871462 905490012 178814061 800191334 849298493 330883311 400288324 122528267 509649467 917097072 962362597 500763596 792740912 974824821 636191104 814741040 433039369 714260908 431409696 493587939 552464099 668728910 880438482 271980400 46585292 146044304 335745948 281891079 138563868 321391575 813508752 369667105 86370812 226265450 5675973 826704712 227234277 620640983 738020254 789834421 823640574 920338158 310008070 402801345 655791652 799325381 479240966 95551072 303615039 175326159 833464362 820518019 104963950 735508523 825072022 527883080 672663597 121318453 642506985 875847330 358319639 901952078 878977312 391927716 130427480 566778643 389252850 848394440 844913919 142138006 674473987 488908605 600048770 835674527 614608181 793091210 354628616 694890408 205186772 816206879 531799990 444148764 398116652 462224091 567329992 754977916 845190532 571283720 526498709 97743445 915669784 748162338 38270896 861725407 192066313 99798943 361174098 150626922 683270533 378387814 728487932 97795376 568976407 747642573 917534669 779408745 6627726 150092382 292464265 737104921 788371319 954083591 83828035 1002085572 520305560 375290310 555800222 912015131 874083478 424335961 566279644 978775918 57476336 943509139 322750987 334118159 860244334 744592702 45577048 595424190 314988432 519124778 334343479 548680193 917756723 785047219 427563266 93959799 653457859 718319813 21903319 805813356 838539298 946603366 4442547 37895583 269996394 366588505 322504582 381328060 486944893 941393236 505417085 883790762 450154566 836273463 110071562 576130662 92645286 263340610 391488354 349171550 478641453 464796158 81480201 698957883 882298244 608858457 210672285 78253119 919984215 53306587 569176474 784536089 211855063 663182084 256312457 483946404 284782135 570553723 514219181 967725788 565782280 544258185 31764172 551032883 964660929 466847274 247102596 889273343 48910995 30227145 726044543 537927477 661395522 181734369 304204797 384761506 108242243 954272993 320035425 850298428 812430091 667116875 557018790 145296215 637212850 103712007 94591322 307822251 611373011 1752797 366704695 289167934 288639167 348228041 594590486 585177461 791656074 624039826 17249474 994057826 859121828 786759143 361548106 12603482 798982788 580614557 881612293 899677318 487123245 547282702 119581259 160031596 513034388 929219797 372590361 595734789 714467678 59372701 186602390 233580781 770746705 125376079 957368771 768010726 424748695 548913964 478478920 908442106 764503846 179234082 716222684 933671870 714815403 434892755 379968691 854195631 951309720 1002039232 563351326 439113400 316223063 88100489 904907367 529861091 833874420 112790797 880715533 927761093 466211904 583477220 543613512 692736983 69763308 250010303 145407034 290906588 517742861 839225373 753242867 958370301 863844982 252426624 682112037 297676593 968247605 85886301 671086806 147831588 244228291 216350120 274191412 588779992 193687835 366741770 419753960 368880751 517196656 109596564 954033240 897413893 800428981 954453832 964429652 69982901 924304638 866183433 765088715 489548107 113543247 572998301 233707048 291563025 742211131 133697354 406687035 908365081 610964588 611482828 461983461 234123230 754577469 868308124 947369191 923454690 365595161 688241612 627722629 330736621 613549939 36016975 131375276 691590205 370296980 172376652 481206730 440580612 332069785 44149115 852894202 678682096 527500445 41775425 763159263 116777506 120129032 23650540 65026840 56117534 747881113 384164126 464028065 36773547 652191083 252446888 500140176 749291358 676871751 430632100 398281844 982261503 266062487 38071968 29787680 587475796 870265326 911848267 610677218 845085916 789885317 798775594 377110548 348141982 277300758 459857051 287512749 840988231 756081395 20448356 834061282 897767246 888083578 408084424 551801073 722795178 822992061 8013482 546067360 385406084 796447053 577618737 494819720 264713579 879662459 598788399 325976354 350697847 992478939 466529212 893833479 323791569 525485753 649969017 522997103 106432148 670807604 76571903 212673153 460242188 258505571 327659421 675587610 743186898 341029208 837086692 9936576 748425267 687661928 762548292 680641170 816760417 854475552 287225428 430688580 346063577 447355829 451317146 510770714 205502706 58822446 864628763 928614385 800753534 53479590 488431082 913773552 895652070 519188503 140981896 288678030 572345075 147617623 699611112 155335238 102269946 29554322 90715684 782127409 597752143 391514751 843633692 461290849 816091225 865055489 978121020 339564053 150152366 226040624 99023812 147692386 108675987 9762047 765397682 881733588 712636917 969849086 65336406 527884756 389184442 489163644 391174612 389371132 731985974 320943193 514081476 696603730 179499336 134288099 646146814 370741848 730064170 392273489 142335192 159403968 802876393 294862333 953261602 875278575 419275631 109576007 998536232 447450023 243528188 128821822 454824655 871483673 447565835 171820584 554338440 735357257 424185986 54126458 329109713 588582143 280993321 395159152 262413017 508728260 454332220 171402021 384365625 794201276 260048611 614200473 203096602 950639801 303190156 214516296 719254939 407462799 882008004 85241016 50142617 468475917 412995433 635310126 953802700 937136114 854592262 785957732 877567870 932192221 728437668 492234105 454898709 823291694 850659872 345050061 117489211 507674184 974248923 227217401 209818894 335168734 960063662 852258634 343695870 171228086 39373132 739100613 639459812 286276283 255521882 232341673 32309897 543891171 641309755 87000276 590765662 135613200 965974910 452071299 338707867 944925458 704115655 960905424 224393906 674111138 473542447 489101747 600341548 705437969 715847732 742497181 732301692 152234514 944799903 366422024 347328043 693782524 775015265 673221959 185777932 582929697 194605113 873679574 931366541 957011157 993469935 580266440 860864890 499803894 525231270 827864358 616700435 571647258 630606212 30109530 523948209 821934332 487472105 726985537 979075661 524319418 343404204 244779756 636382742 814035697 628134419 547243362 970472753 97147147 132747496 884809605 230737317 249122377 799168340 139950959 538122328 473468852 353405819 297648914 779389570 437106861 138736084 518364867 912527832 815602486 219310620 966749025 514087147 494233722 390689919 150016667 613144706 596215100 526887399 987983723 139660457 609373125 336295734 478625211 189249232 159086783 732816324 231272920 933796522 190725940 228512375 434743591 277897597 228782954 154641847 771350111 282755725 1001459623 300023800 980122629 810760501 421609154 913872310 283819825 977747368 178401596 622440622 430678223 157883869 517409841 820057669 622589489 384095477 773230417 578642666 598555050 80449226 402746404 480028556 227493486 354132341 680471217 890218310 994736988 253258076 310754951 383233920 302404757 434401264 93178407 118316591 845125619 274402162 288687708 375676370 537495868 273633994 222032722 804278578 633838735 462162680 702672972 248437325 996319873 527493989 123944300 441065574 672446001 266710015 270449193 454713102 572845456 627383179 938857018 77671159 408105738 48224558 266146417 626020748 29578169 208065338 853742615 576589237 256691718 500938109 146096754 567932680 864465859 300284965 941668498 353902442 214180323 526553828 729014304 459429654 522373785 183364723 799566290 65849242 115680051 36422331 467040241 617643423 39693746 102965805 403658844 657501930 103002121 964556000 373312459 955920889 335448672 981884286 892396377 906925868 810564846 727715303 991938310 599420352 451660382 486863161 356718624 394445903 503905173 107769833 760865700 37072537 293847480 515780187 907293896 582868303 610609695 775907180 404501251 778129813 193917270 84732817 898111142 37298104 166664113 424483413 886775416 734130335 695959636 534177870 273403374 296801060 885476921 994432095 461299379 417747599 876793227 724956185 779362048 192291522 133692607 726313821 103818258 312548505 813559973 602789467 173933900 728306075 629616536 303969153 339797437 405146782 859274412 253267971 269182129 680082925 142250049 187973776 495873781 799140967 57752680 812306501 400839477 96520883 511746763 635037927 525270331 493013739 483103614 858634647 489401505 582280597 543171145 708170507 91241981 747177193 38256665 992172050 978641564 99559787 349451196 766606043 886481454 790882059 989751135 601288684 869208880 674798048 958516174 192431258 835097628 925831598 380154387 796347110 343454102 377511700 451424918 439204379 897405119 188208585 778651952 468768505 209969315 370505392 567802342 169114743 720696110 687199362 300310788 864673552 816881792 305823404 870746197 2680052 658248814 285857790 300192601 198026663 55019175 562363897 783996816 64426286 556900427 39756763 69296567 406740115 783500198 595137504 36968078 748633654 985733251 846194974 390686304 702479595 160230517 507169498 293489533 61583472 897225219 434778028 846252474 160468969 113440627 336905083 268330646 149039687 542559755 192100065 675021841 902674106 214233778 567742947 894626368 959641754 327865025 543973181 576438985 876865206 852059202 458939388 813446744 532714420 120750293 611715194 903264985 1001850715 887298822 675444440 611408968 43862017 695044692 954492603 971626678 889587296 317637066 371814074 278354160 388321365 417767985 140507340 506384623 32300192 54846048 489378943 241597944 789753202 608481665 873410356 633181417 995235668 51764354 509316495 400139078 370807935 257297333 731898385 444304066 718958152 501815106 420058054 96296749 802619117 168943841 698372819 856564281 544096304 376301541 841270848 944620396 75859521 801413186 262712109 978880954 764105118 802507249 395596307 482539661 282372729 290515034 590085907 487786996 82253108 416580836 785239430 143236034 853758934 371019420 630247435 40151890 820783256 813427751 560765747 52018105 375140646 263464834 466657900 812686923 503005326 541043458 240413331 426845914 670010274 417679017 335801988 574429482 979867725 577911710 514794 56542101 97733692 912320387 480065082 273951137 82758852 110111029 332040938 60316028 69749708 284028369 186620798 157970041 79524620 802882125 583950912 435088270 804941680 951274583 110028771 168095071 691837201 234210505 415030785 868497290 218615615 406772958 1497614 587505243 639176223 941659281 960763046 821868823 286302522 127856138 170266301 304048793 190176863 683650119 488774891 486737629 613884999 765036313 963948607 831355328 460816161 92499893 349834354 922768248 394389361 848870761 759880979 21700831 556406477 776404282 262034490 250915315 114232000 175737406 926035241 936068104 905111991 121239279 184290830 739204935 108209033 13545747 938024914 664259654 873023454 565948581 780159114 643702564 533430899 242690178 538825514 983132438 428853760 221610800 679794286 835412269 946175101 776880081 979608313 716669918 96113097 329437972 726207731 629185082 889505758 722270458 724666140 718002874 854035470 527884547 990200947 645633896 116604478 536115951 343722194 910791203 940075421 143120096 41733561 561421275 571975305 156861503 439127842 194665981 679730241 242956552 596717578 816404657 663447053 829972865 783513227 668191657 934520788 427132214 830625870 971638356 393019324 260542770 89805509 698532789 266891444 24507069 120387933 158240577 397135920 684859402 489512325 873559116 633310077 371201025 74099800 317308509 390881143 935025998 107745067 811484375 77471472 397321561 466719786 416089080 908655442 459885158 272277906 731694637 932653811 708953629 933485954 895091050 276782387 118589929 889896693 637387714 103684413 527786236 769743420 865110468 341278945 771413980 789657454 366657700 735229793 464330275 22225143 55084115 890634349 658892216 810535785 850896194 790205217 910143335 149035170 102754119 191427974 567214708 415325083 847806600 637098022 273763266 836155039 627579771 244822986 664433639 829184643 548157381 696316268 617117194 845094108 950816143 953218830 996599278 774099263 372239704 912423529 155381260 215145261 400686628 296459624 542908533 188358245 445725451 624522030 948634758 99225830 564934629 294742206 585814515 533086818 79200986 291329207 703918753 401746170 566473100 861828441 8086309 655386334 577050308 584531878 103695747 7888404 756086957 369756145 362831481 835830341 175150214 876320234 277631403 662916491 839196574 504169457 444472838 942244187 977452957 938184548 95944543 782890227 284479955 418915788 590014847 559282975 745016492 892766163 212842447 297616554 154483134 677475138 661936060 874958851 848152932 498516073 74356930 305987697 718630917 199361141 322572379 563210155 464756651 999846433 200047557 180840092 416640031 574688031 174319243 689488914 878446852 143990263 182879936 374189548 508869128 350820931 742461791 272736306 956409091 616752979 353471780 255559723 207861244 776216109 68979443 784186843 28355792 703636366 869014414 56263175 844960136 984811276 54118298 943601422 671943599 124329639 1001571371 163681429 179877303 572127255 548907375 104165211 406883268 852585674 607235470 643397898 919276139 796875911 294825836 818348557 832346161 728007046 141353565 411215003 294136411 599030077 503459154 346864095 446537158 600220117 746640947 408449885 413199799 594882194 794989596 618312221 631017395 299792345 375500225 372291360 299193675 64654653 160217322 413918702 936412625 448716477 912107049 636397693 247709886 647644142 633414444 663764050 245276819 282427101 513855992 867653036 594224988 668041890 546692291 447554746 931887692 674211155 179890331 213204479 894324223 799966553 576142068 683786715 558734913 5103233 620213109 729682344 970239577 984224475 793423043 530759642 693005446 912905239 594628288 335705585 87306724 941402099 664817556 91657520 476183091 771699975 39963689 60258174 178811826 814088940 554663897 525143722 48180949 224550121 751731200 555526094 412652659 546633338 116528376 771285889 434159482 914800137 18069068 772433002 652296410 488627401 65945905 619029615 12031410 881342742 105915964 245869104 48315372 282064753 179987037 724924100 846146306 755037957 987985749 449076237 632479835 150399160 773114014 337814967 77119961 811246270 578657568 356069971 748084223 341624759 842970379 988407350 120805521 347628280 775488889 833269253 535793761 575599603 351670895 439460963 773871005 972330081 237861045 461003938 530807225 674687936 711361392 845850097 797483130 592834706 289187891 367344400 677868467 727994324 1001628347 817953518 30304036 953306651 981684295 439130228 893872117 297822355 829935968 570836500 290944108 92195934 360658856 124178896 95081784 951585587 503915200 558773421 552410186 762062378 119480297 141129854 371362948 777944610 568489639 275804196 665577921 836741559 548513892 355301206 215405327 754915623 1000289259 222364865 488201086 115741909 35002486 40642684 2485211 228063378 654306310 912314308 256300658 253428650 582073964 447832289 259975703 477540183 994917145 579671838 452508274 32005229 200156329 934769896 449025994 191015766 871476897 205835135 501182002 720106353 109465610 941207793 790285929 970375071 828444819 597563590 194152853 717109105 384784428 154985918 403904709 993986656 602593075 36831534 199763201 400444309 108825550 304144088 487339520 269644049 671163407 152463557 321708210 70765445 514369350 543841912 495050377 963051615 310536545 511698604 573590271 244060167 424000043 938374793 650707646 622783219 888159471 470074420 713791326 726238015 798838003 418826176 714209363 111749364 864815102 242651015 632697456 796713180 822180186 344934956 791605980 463006588 813686090 483275189 819877169 89530390 903321995 573853270 157346048 178441458 796526857 732663230 542535625 870658176 310066993 323240506 644286948 580653184 908848843 418570486 115434739 507191789 44232001 911023500 564276254 362670521 988642375 284281762 72630395 961235340 662046259 422655381 612160502 661754409 846446429 298901355 166898404 762191578 824693705 713514886 433281103 841427305 997089278 783474275 406082987 327082046 110173124 797103330 513902377 865129914 610477636 404222695 47587483 23575831 44585238 976894006 513546475 705470198 593950082 829619884 799611593 144733123 326455449 542458222 745557224 905027255 48675382 18904161 240511510 414850306 835302966 51562975 610691976 550399180 890667207 395757752 155151975 408523208 249067791 306296947 549574919 315055430 637605066 353903506 690710079 151394730 621933501 23560933 666830119 955099484 965219354 844970609 649154978 649869484 890739035 912269171 637078085 157504967 370221283 196118934 607009190 877347782 828653356 579221561 88396885 877636443 627364950 84296547 869061911 460942564 531969537 311817252 283438212 57185343 47984618 606387442 891670173 319054262 283370665 268932764 466726617 465157534 522392893 673978111 218313531 5530083 208522432 323769258 177636504 541054439 970962030 581587459 994351489 40641556 429288925 393745670 688367885 728573146 586444312 225275778 950628914 311239493 984189937 611032181 28572717 797784682 686249241 480659872 542007781 924383667 108575202 859984721 768151810 99675247 525805893 906227563 674056292 824259557 533249727 343447076 192570819 743877234 892080172 834320354 956520340 61472774 947087711 829624084 361228056 711916655 701788522 649797615 94920610 607258927 776869018 528653133 96257218 112698533 5934686 47492870 639587783 781892947 361230024 801503723 286438999 627613723 581350150 849092596 392473612 272967571 295904911 35761950 841223270 513756429 902557198 666484643 236427887 730424680 875787903 752771034 257663137 578739635 677788466 660967318 692030117 752687106 163767101 68256295 615451768 657695511 829677384 993626534 143888360 857407107 80152194 126808092 487437450 423123028 536724409 828305963 828972890 15876523 747012552 991826123 400118448 683090124 401753502 633249763 192420082 639970082 939193248 19610029 506919188 821954935 671834942 469764452 587068993 148168007 479476329 112018365 580350374 737377615 536066973 675202487 998936383 689110570 310717860 190717637 882602981 316145290 826154942 824525453 857967649 582738794 158781152 286370022 727738218 103093923 679736037 723816767 151997213 24732688 310581974 615366211 806199902 281224778 357155022 408715945 433001367 964170924 893777595 476090011 386186200 913190546 266741910 100485873 495551751 919183704 259124378 236845442 965362298 214030074 536119651 402862077 921680783 451631937 613353612 214145698 330292080 549176271 436822542 290427056 568807212 425108658 547788549 633902242 155881376 651877965 660940459 665211915 525132838 667542559 159676851 549669478 394302551 86287025 183788147 480029558 951017254 197003659 660332265 946468849 710763547 489993455 512180352 157563165 377375062 729568573 704191941 362795561 756982132 680694135 456071265 332557616 465002016 685213544 521384824 192118460 19092949 602890471 734424308 997608440 760403017 453694574 253267799 749953079 681746344 913621082 106039744 327679331 993555102 290632913 951111153 275835198 304930864 131741791 506696647 192093837 16169766 354482135 86828917 643861478 304137316 597812 478507107 642937414 665254333 90916810 539173905 134802678 906673709 590768119 411599337 388958439 37081085 424241761 686595783 277624155 889004821 105720198 8568309 371627190 507682 844825919 539835736 718627325 196274795 899717803 812655412 77245318 564885377 544342739 808302571 928454474 832020470 259004682 712751346 994712829 567134080 807954509 484403956 781795409 860613493 123493761 895939269 299148588 109889411 629401676 225519599 939387112 429617301 695439664 504073830 72385448 608501497 871893058 934130216 852255446 277246969 502629516 696000083 879699115 993412020 527326341 228789573 253839963 30044165 355477782 868616226 827298626 95968454 606854148 376771156 62323850 884190024 204612082 692587926 519795302 342350829 127256606 261219063 203265440 841808941 493008124 335410791 601307660 780199313 233435190 650578909 39433247 656461634 916097918 475237183 571994718 663924194 162602108 16490684 519422558 555403700 603431804 904846528 29197406 953367806 484219453 456393812 717267024 569683034 346254991 503521066 724178979 404332800 133401128 935412780 688521042 622648332 424873693 761319191 505455754 676057543 272907312 845613956 917420969 590409313 485550327 526564193 967201499 940629457 340541386 661237149 877133267 437987690 658201124 501990809 502608308 697135356 65240978 379695654 196615918 444815494 352708206 547117747 625998635 576364803 113696164 519270867 163497061 751579521 114211524 246237053 1001361534 101385984 761204637 35469500 454660011 519386948 600462894 242808049 609726913 473297287 613862866 136085386 199780850 500385487 95803203 239611825 182266709 224368426 927955331 695807152 111885658 1000690062 193250330 910225818 442575693 998261823 222615637 949377670 598021019 813523629 943046003 850993053 133533762 770120548 39938806 461087420 982988078 537161008 997145061 29039204 119485287 314888620 565595597 426747351 631368586 753964044 452282720 73117034 842263926 895732233 42236750 716365461 850515669 622250623 819169073 156729647 655219739 693593672 130861153 692246748 940328839 581324089 384155428 425132785 74598139 320654626 372571125 874931018 798114106 115573338 842433950 63525070 960332801 425512569 43140260 844508928 50930425 472406454 752782088 920522946 205986547 554377062 180684658 842687122 600319938 844491663 511470 1000616207 337944388 301826501 824935461 954868262 828507285 440555528 973572423 716560508 362065894 769174194 511362015 460211453 299022116 567967335 72769642 92487142 684949488 118745084 743402686 796336378 164956168 665269119 108527850 928581761 400272964 198819420 918864264 561436326 708944534 564624099 920475737 1000990026 790549393 854363451 237502419 948955624 38904929 667852138 93073260 446932540 345924650 61938408 29853053 993772301 496977888 826673987 71926408 39981888 515481171 319985341 454189674 132767711 152725346 876449656 291761193 329774604 25411066 197877524 188578194 397131968 654074930 329104630 608016493 839895057 222869339 293311450 583140596 571595109 994063379 977032717 377021689 668221802 694763219 519319258 94328020 430598824 760649979 56297515 592338076 490582555 111074427 771359247 183245385 526943506 580900022 370798484 152588920 147432767 578250484 265809164 144714010 369654732 981003054 354594335 609406185 217709233 197583751 830552222 372111603 378128835 937674320 130986982 752777971 738022732 882398798 567439474 354769961 750526908 367333254 294060351 791171079 827621749 749843050 406141211 8740140 66508949 961714572 87104220 336381578 475367135 54884443 67263554 460392186 478143924 844434503 330746476 351107514 196883984 936685728 926750868 174968827 462971425 424870982 67429207 828740437 984106325 381951895 182735673 781161462 899222283 941188330 112050270 522707771 350388475 502446617 566458991 623302262 403602415 801926005 862142408 929506123 386711800 435261350 86806513 789663401 211430887 64202091 442181408 11263456 971029617 980579077 170430612 280037461 489547786 480827137 743053135 992457612 107106368 248809652 648370085 168456676 311451945 413040586 938163438 21058464 468969068 561404008 266635188 370487272 80694547 406391766 258574117 160116272 310258944 76947346 299984060 192070665 146431206 2528699 766095761 239816445 855176538 103469874 983127338 434027583 686509429 426262817 106549245 228618699 991612762 767683993 584749251 82629054 954435353 512220935 477295707 75197208 361978736 894776200 766327192 900575174 551853811 790237488 596888663 597394223 293337630 373415996 978665005 78639954 695540447 358737507 518728709 718070047 880269535 574114525 912038295 50648245 933103400 801891122 246324169 919432897 445643727 581586967 381549198 148267725 142817838 949886791 147033695 579421336 192749858 584027034 252331770 916399365 100567133 475230788 719834499 300940873 17574213 455347311 135351181 743989072 5439049 468544523 894211726 855526834 983522146 333806208 594441926 927782470 491465891 97725647 544944872 636355824 113669814 28247310 791537118 121796085 716992618 440933940 500326291 816381865 318426331 960666406 187491402 442230572 912065238 472875606 667568656 660486158 894996786 598969989 875387346 38640730 574012438 926965687 894871779 955374848 863267550 661787255 470452465 712000937 987156956 159997626 748493851 949983681 123100331 282292503 516854809 896635551 874776358 759625393 858181203 111560328 387511176 588716996 623713197 817976928 631799175 601963579 441194631 648011867 483627327 523453584 1106226 918168835 485471937 161424963 954296322 828113360 640371340 343998520 542892687 644702150 793836517 424669692 346320807 252186132 336949833 513500126 953314994 501541896 972816302 220118658 660596831 643506720 435331696 768633667 367981656 141515659 485926671 851359283 930775038 284050967 668920070 277422594 386891333 932639817 416908590 362796502 428408910 68323596 423040794 70702686 270453734 792511679 20348953 762645464 862851886 288696863 581256852 511867443 626712734 418429971 158303524 986054909 162054721 533205736 138110100 919124001 832304874 426395632 847466003 865290410 40111743 508304570 238558445 145880381 395604904 660176716 288961635 82422679 973784274 11646776 533559506 920937371 320528891 797859384 131895306 525350447 49868748 263015670 523183914 564691874 922842098 504423747 403333382 971752842 739990053 443935863 969793076 634414782 706755676 74798688 777012477 49380062 635196090 29916596 742557815 314073823 926358943 889333271 737429754 514321850 301526669 945925700 996593547 867980745 858278157 513484907 450583397 383545410 745401271 27655349 802358227 959099436 479518887 411984563 521392217 213209843 961825248 264621458 951377194 105073238 855863894 53570937 636485635 877551427 161412395 235562248 218157763 843932402 261761792 30436205 10877655 393107216 383726879 653183515 141376165 856891334 73390685 54853114 770932223 765991840 557388776 227347520 813330787 239267221 21781935 271059986 9498793 613427805 423514358 4846223 452940628 913582922 944757285 43216800 417328297 85919169 672481601 775366826 795543792 112049572 126366920 806465979 799425604 548439096 812259091 589369211 356163170 10414023 10699656 114332962 876231485 382858613 212969979 593655444 874441953 98580653 725598195 385718858 53803487 943623525 198974529 849472267 288070143 150134942 663992054 433908074 834515037 679929439 664632790 394821578 162725762 927509025 255955408 681945625 505541001 80493609 563473673 599165884 623234468 764680679 304549438 199639155 456688079 564274016 597760181 352371790 905182053 588236337 296089852 609386784 459959646 960039920 661031036 898190596 827808355 76305357 92560954 860694216 78885997 335575153 979648674 361724213 308941367 99486438 577040922 891073852 886971808 735577136 582371173 690269157 730841187 719384283 283717755 563020192 130841610 617576274 850619418 264593236 945620295 11285890 436526766 792337977 816281670 918534127 962308436 668148813 812817319 7255377 390401787 217293971 779775838 962940869 709205377 474693053 32633552 274137250 863498674 507447313 560167278 358069698 141293062 721520984 571530377 727175769 999604037 959345577 504242991 40612488 363994268 180008081 458956521 379946021 14707127 176766608 682081105 809167122 659394426 488704187 681428420 185145892 704385265 64347416 224252199 446443349 861352089 442401008 505883107 683248201 305376810 109939598 966122425 352830531 644565436 611894855 767663193 765541664 5459298 252132616 269092789 818032444 1000915294 838843898 179355868 650406573 54722650 609519538 716635742 327735662 222168890 776195522 386349981 2199008 676231139 348053540 45176739 920249123 450903943 991331407 121678613 120117475 264718414 866543984 198338957 28500705 333053751 790183987 231425324 507217232 512346772 788501104 904432027 117570168 81392882 111485164 204413284 856926083 689211435 871940736 469739722 642931309 353229687 241175787 312217889 443238144 276503826 695335370 680358836 386263885 46726225 60650833 959095934 332086871 549427229 943727055 953650585 639641119 786736180 860144121 93577449 855363719 124071649 821013593 234369481 75195252 722441456 870124314 267977190 938768888 539555321 464018161 863727668 627142384 981637658 205279881 10790469 332816894 502137937 558992651 865029913 748364856 430487933 882638673 734576616 312391383 93504374 325915703 216171002 916690029 302172974 131611681 605255356 793393222 250271312 585868567 116092250 975831521 151798082 276130334 129805950 500221036 101476579 920314807 408744523 956045213 734490963 308123150 370368300 445335295 113426198 67807421 448767236 22767905 127893747 1893397 437027541 542814558 716052158 368424277 952071036 426971868 600699700 160798222 726719475 95883307 794562939 8853641 210450385 604059174 426487702 827570997 755420222 355851643 667448051 911674245 569993513 71779229 42160335 263248760 917332978 367622705 888906806 557825432 201556165 883387774 656403361 914987856 664051518 873029159 628163408 214098566 240088374 220434593 634258022 188572517 304726226 901280796 98959326 259468488 224873693 732282401 334348720 182952306 96305720 642856803 307020193 705897468 493090253 701684694 736439534 369362725 794072306 887581166 541433740 662241361 841943246 531893880 709711601 156956528 47588705 525221099 166417126 862565008 107447627 621974920 14326845 922904064 886195773 536673609 803682621 193917743 2587221 966127814 897682047 560121777 647652912 420366285 145067478 900551569 939393931 476323459 541368623 762583522 654773122 439522366 618526399 309376931 875396171 284393515 190636970 605243067 765701237 833934595 323047333 586452160 861235188 465063032 702701159 59908252 991604072 61005280 493362701 96463940 263573876 465857852 289453105 189002844 939780136 21210632 434430792 953104058 943305071 623756394 531790261 798458846 991529606 472538876 999601206 155552755 87002782 189910792 264888568 194572091 530607514 981810634 354110633 396367115 663306606 403455315 826362814 913507029 457868040 304660037 721043296 529078045 581879139 72841853 813069400 134769041 682908324 648292000 276062273 192815436 309633286 954474410 514209610 105784776 887613616 758151952 348605113 643918916 719988009 238384558 166878269 757568180 615924923 87359437 580148532 187958463 345388913 118462634 725476625 43479245 620683861 52364511 470303410 471114097 283346741 879435170 225280622 202689894 739763900 488312820 87483884 973716828 689317531 787200942 328250073 371325078 647586838 479836630 466410913 795792008 416344074 258514860 943809922 538056838 598562568 141203430 448786830 35707642 277178245 336370079 579705914 84455443 780521251 879853751 284541150 161733923 858898747 437884784 37549258 431654862 896594109 547299351 321332230 587030549 195772546 569241724 120972314 997699655 213093034 529345228 101407837 547821189 214169484 685343560 818023977 122373675 275776337 781058426 967375693 958167966 496976156 718193049 143951991 99183484 828891102 990170491 752577267 737356267 486501602 793173238 431221196 5425139 789391105 318485836 118681134 708916014 273422508 496794746 922065268 581571474 174820562 576742210 548200437 937627735 104215204 818090821 384804560 581822727 710068187 260346535 420498967 402447160 739351674 604644038 470494668 765630156 314703749 912181825 148072744 834777866 141662093 91447614 96515028 286790098 773505934 305297603 994661194 316500783 645739702 447717410 136471103 29376831 250639605 981807502 680503362 946478918 236686620 606158365 984248453 134154918 704364320 701240866 778913525 562483361 306134018 118246389 811051678 62054118 708566424 927627255 67976504 282756937 746963085 674456435 973150657 712351715 99295961 646989886 64384042 533896717 670025911 143633515 266848835 96391055 186236106 761210446 952301582 326494384 780674910 276856153 376298413 609082076 418928392 208294466 19152020 529793084 776103771 612349768 823847256 501214499 783295136 432659075 179756542 833827547 339547652 143545234 387921381 459241690 667825920 954459933 213852171 729021004 685618174 376835706 260509140 917352217 223331256 831067928 855447382 237497415 638065972 363504703 208979242 961704672 283340959 450824733 256241992 252875818 947477163 14461835 460514838 389228794 801333955 631767168 599305333 818032520 27866073 550182451 494642257 758540362 18801017 99694 326693966 246790458 676314003 637711548 54637039 227476160 832561261 110350754 357683831 629073759 555390171 56430922 166131677 599634971 26802374 77679815 633141531 429566774 742886718 400869483 917210204 294830453 552052533 117673178 799371241 732245298 323978252 261803542 453113328 518132678 358447357 934881233 421940715 819119191 783778377 259886027 339111815 416020176 787664920 227768988 921728593 838650554 700744893 329341906 367228218 76346410 629342969 798974150 277153007 997009200 479818871 1001910017 163215548 163521043 901048022 621365877 909520920 782342849 76115153 697598913 307271051 980641660 901535641 819103559 841441526 529600088 96758273 474184901 404577988 670927465 546856084 449575027 663889410 243690397 39094772 412837601 138018380 428068178 906284492 868168241 67714045 442231606 59373282 98614972 641117492 397067290 873187336 197943087 33921205 686093945 731194302 833570696 743905532 197581182 374128433 745048717 812711507 179557527 342047222 367027867 775726346 71184612 547705826 971399133 378504055 817281412 400846209 880792480 37747056 712264981 763952841 954243536 439149027 163702342 187599048 460913794 991866356 695008637 517077026 304431196 29459692 987505853 4643071 403717008 989552109 282957362 439900158 541296383 518784822 833021019 824789586 89862008 631511065 124744192 650252128 793119320 780694692 915277955 577157469 114631253 369479627 429793834 822198835 198187570 757457353 186905977 119402731 170828730 823131438 35845323 652402647 829820565 187392833 127571098 770608869 384922393 954782674 711056855 560334070 646385584 902009698 452064765 27299550 341587152 917878754 72665220 307240818 940356076 812669474 402377409 257712470 515423112 387188600 372489575 757751036 40880182 145347349 103324865 843648057 560672288 69703091 436421432 17917296 287845466 396546140 846440310 457730343 342633599 427200823 15281575 922304060 686739822 924755895 157885819 356025126 851869262 985476674 178018683 409243267 120302849 689445087 118040006 109703442 467951269 356042277 44687999 655852567 237727244 148422735 27898899 443654485 608377424 160778588 409248416 777898083 43698415 923260473 455320567 720534743 222487411 479907524 621565718 667758982 653212474 842338993 954108437 505503429 618805405 629033741 822604616 339797495 452893215 920240683 638378858 147818505 160449959 25594728 250483721 560770956 887946726 303836310 744610136 612123148 709337480 744611132 118193304 956975128 584775251 199706034 490748961 414650155 565085839 849871791 581750706 504987700 863318157 820527392 632681255 767915519 391939075 511930512 255554552 751432406 249573281 822474061 978818737 321590198 646593772 496198726 697968658 48308182 311757763 753135262 858642229 497519242 688867718 448452928 55176553 382004146 332005762 110318275 1001395676 541166534 77221336 703759598 471198815 208400807 935025242 522753898 997205251 768846006 233635302 157016891 168984080 307081290 237693238 532304304 113966894 486108285 202637464 930338171 533732623 968094976 518435437 266849486 701294975 811736482 889859338 676405592 704801067 286783089 642253383 974501068 818492500 342005952 584344174 712191348 684264356 719625668 179936440 684051096 165229957 143453357 66006240 254476594 985717186 374862000 265275918 185738573 997672460 110055009 884608103 149385520 576785278 672745804 835006005 437952096 836565236 950890716 601768242 425669527 961629324 826213019 452564751 857593934 437829969 499653899 789407803 904355750 641412864 746493692 825574824 757610633 223730363 548925940 758341917 561172688 442490832 120619329 539841089 85650528 987891452 952567351 794029940 340885219 193712322 778549586 191689697 910323506 592228597 500867818 498878957 988214670 112020257 747383848 641033843 283993331 211153030 831882162 407063337 842490877 435588204 881994532 804033902 990160570 280770150 408752094 970248592 587396986 812429623 570709171 725629066 997722316 720508888 531621491 746156519 34063656 533053169 913497142 532052911 769426216 482622109 988752020 192514168 998525945 731737009 556708233 160405153 284415953 236343906 394422192 647715586 921367970 396329511 444171122 469301140 961423916 748698317 973071512 305738852 528672792 928114650 948106550 98298921 281317641 280296089 957567198 434997353 680409301 446560584 45802472 150787527 827595942 497496990 412287983 466076437 160130234 742917918 928497280 36685992 759262590 4748348 595036925 204799281 176932211 823378632 750331312 69149075 484526450 666921553 991805406 672112482 312692648 599189539 436228144 430690707 556697148 167521207 339033796 621976592 151360396 958764472 33776024 579227097 2595839 214555488 944177875 742686286 120022523 868078865 862359441 958813564 840928878 467091476 848294076 678342647 485493575 290267116 213214968 89616797 420091502 306859520 680893700 910463617 242712798 515396588 474411036 355315115 932377098 10445726 976848539 258628222 951776746 603284731 140626381 408437960 280094569 654177901 375298869 953471814 494317988 124210399 453164780 666001536 174591612 690175927 77097464 549421757 508622688 310947309 662337436 465030006 99038346 569102912 644852704 259640468 873355365 656912196 784807080 971191161 942727251 875986523 544827645 868274225 53144592 922419089 179728950 876181520 240545336 212433431 478214210 743361070 352588908 335931236 111637736 455269810 281648996 525380399 973921832 411266051 89774324 820015213 280662426 625728878 587104679 792262447 936845835 249264705 467311181 914810659 930111271 390867415 968588508 615359704 276744647 745643763 784171262 400829704 337429638 663674037 601519581 42198681 943928315 934687365 608990789 653965503 628957611 673552443 405949006 338519939 236035070 280899114 957879479 457068092 776405909 141113370 164153591 662728473 751568586 916455670 724868897 70559136 373540544 538614110 416450936 753276678 610403337 232816907 388075566 11348990 503221408 773533971 402843918 582067596 155627980 933616803 674053838 132094484 396955576 197684108 334122653 333644851 463472844 828470356 560317061 59005839 705358165 298345737 999797645 147223429 405732481 197601076 504673270 615985096 888755076 751999704 662321732 532659922 657197032 458939825 83981570 105770917 173374967 849408553 655160670 902471413 367318679 664453596 287160736 951668523 959110168 280022210 594360273 92799830 577997111 110809912 152276154 309457492 190053719 43491224 75951568 555187164 35401173 288073845 214269392 957679078 835021287 778722378 43319981 749034900 259405647 563586346 589410134 531518561 604599783 308152345 399733780 211189543 335152157 95387704 601079971 435502169 301214807 273628473 203259956 584603397 815822064 828626441 61708794 692636833 274385039 727939209 137942224 755255162 882311132 729024226 790896741 322257858 308990322 706604974 734699391 546289864 50611027 306776625 899114000 249392992 574742899 955057386 214071688 309845532 707628860 306755774 984909168 649930609 555685166 931606419 555516744 975551770 756487683 497792927 146496959 622276133 644628085 365743137 725244817 755816255 746532916 735611094 843473681 509907781 107646557 239206592 931185477 642251366 198977764 298288950 516459097 71216006 508620532 369535208 756813993 987309565 681048990 251437366 688604703 440837580 790244404 77220438 345733653 851617510 10543901 957411871 842950885 739628400 231174910 200651956 631946755 356961776 47121599 505770698 593517796 500504169 986717450 894419917 963462517 670282947 538698880 447921875 898691223 969171508 768183887 789502049 371917827 49507207 494981661 457088313 871315894 90348173 583821801 672515595 225450942 703587481 144545954 759150814 664959509 160375910 44586046 562812406 383890337 698744176 988371522 499791659 473703444 974140052 890075249 286680061 584907037 927661540 493202257 310490591 822512034 842719205 448513624 903792391 692558185 900105157 244346341 118643767 535679163 525874742 627164009 405719941 880511908 728974244 996925261 652085064 721797158 69576018 629577622 628359311 902689903 943779995 904514619 444263246 479314171 422085386 173827947 196064354 686403788 752354326 141704349 614250430 590262246 549425003 489008058 559928842 490266262 527815894 313630071 978345622 41960122 430934836 167950396 472791637 588553673 551305862 146464719 545476981 531148863 845891688 203535536 142704925 945722449 3351442 536121519 142091853 322014555 751192175 628056658 889630933 718170316 944249216 326466901 191875100 210504561 367510583 822950066 736014260 553933698 557890173 324310667 38046090 515334249 545922382 280817396 750192457 762458634 548805380 542897614 444373729 641164807 818944745 874946221 67046366 829212025 131227640 724580346 359892982 513599435 190679531 232600432 897356935 976362796 23586207 872612727 70342220 475493307 836371536 464462612 856473832 91248096 191150719 480273872 641008269 925073554 747989839 161938376 355470422 32763174 588180443 14610360 712457602 541949086 700921435 419513895 263460894 153897898 622381483 453781377 773613963 538571543 999026647 531940579 157877708 948667203 29517864 282476256 408224738 955014382 559045728 753035773 773350649 276286790 414201001 894194216 408611166 166487076 643815144 173219224 716471753 128679876 248098965 463676167 688952837 147654219 652884711 218005512 760771009 901181456 454386143 883785042 36600398 223257955 145049488 76446951 33637634 679011358 387660625 639554318 800091069 338699926 990616818 438733944 980338401 257678618 188088670 252188594 264748902 173651201 62619831 318846251 493219005 417300619 817702797 18428576 1894586 541384847 877408640 654969761 269727275 986217083 136124032 637056090 250207933 138563001 979085824 36158444 673135732 259014828 424610192 513378180 525892129 735786464 597692056 863966566 60670775 993193226 728593143 413033834 478179130 786079005 793424075 228766071 142910667 991077418 461226206 301730930 188312170 211598031 36397892 54004785 730842217 777858866 251684092 616565805 359130824 481202331 711671763 901717515 134604694 267601834 13660999 287550705 536986480 588988213 161455721 63679319 557449140 64259139 206962744 976495663 798306189 745833383 203591661 129387494 954627891 285738789 591794540 472149227 717467270 59068772 623536821 723259840 459717141 957583775 273174775 27455994 789233905 750378147 60056583 642618756 564151123 713959726 273941657 840966108 8967961 112587160 990385979 585719457 22190505 237603024 176412077 681235950 283005379 209536532 610619510 523757219 680044583 708849754 914039623 202404412 603596670 586981738 772035950 191631288 724812902 1002063387 537310776 720092874 766197200 819802304 496614094 185783218 910742447 898608430 503663544 335981607 995541243 616554936 252685426 931183961 427558863 442596443 224634507 105010524 451862544 545210174 784887244 727429821 431151777 627833536 398701343 861860382 729503238 795724341 634516635 733099717 940050769 846575152 169096771 967548922 407716574 206372301 586532339 385293733 601369613 543129744 872374962 313565076 322907162 637413275 306151949 474211397 266768743 300772418 643351461 894338655 4380210 399197407 867901679 303406441 993135300 180311674 869761393 844403639 112931449 525155707 994493056 340142549 691779452 766376474 466689562 315366562 637580041 621980700 917374901 400303606 228462975 575790465 893612214 49060040 671293877 861300400 869075838 905806585 356766071 202962330 987793828 582571816 840995169 65892274 76311075 822663332 622411227 368461209 85558597 264298226 810313814 618934931 707364244 50105523 649385650 982070568 849442564 447196460 682185629 887078688 823567226 508185047 626865915 259156931 184941715 898256063 675895264 260014105 599929061 652028329 984857342 857427643 191179431 712157045 892133628 328979470 640051786 71769966 125909013 479679420 495046404 460138578 557587806 876556108 619004172 775395615 839914365 722635910 233539343 870105370 409894800 222162591 925711502 606001342 207158962 54282638 260544881 385918576 904631986 297737262 299293 460861088 487630109 711720698 857033381 456561234 850804907 822604328 727689374 944061714 196757805 538053059 155986588 615493575 886865729 259204922 31905044 477375051 716661220 864143959 937536248 547232707 236854272 614767783 718651109 650533653 804984240 201802195 328879729 504787751 94510656 517033320 885578735 538457812 412298096 243977913 727625162 995463566 458709314 616178295 683019865 418048337 768854864 89836445 27928412 697430370 66301003 388396122 475719711 202739953 462169077 665746627 870659913 552828938 960337015 33386057 519027645 204169219 661861966 607448944 692487401 615603734 465077799 184169363 767671965 508882984 64931889 615668449 53157700 57005911 393035610 769647830 957427026 278583200 258612406 205421493 753493888 612396466 991753487 100538506 156968070 614026061 366032290 834790010 125339503 974316336 535400752 729228772 124513213 482943232 242233263 416405776 712587950 471640325 367162317 550848408 399543200 354721477 85759456 573108461 117578581 242495849 345010521 573985239 146319341 169652241 538758048 357481905 915266205 40397926 994020151 6405203 414333374 35562553 428436554 109691324 704845923 801098524 483213347 57504055 161756438 660512702 401522290 818514180 903337659 626869191 595625014 922555650 59904169 631498490 958186281 656920271 374279902 739845384 182939626 205670599 447697347 76480616 822714347 296357953 99832276 960869026 152654412 508362850 303917392 262002512 817212036 235997749 445656507 343575753 42569751 165679715 53838851 907695238 234895089 244911754 690849237 717883500 851507994 256476441 689474236 810729931 313062563 189988113 626290599 744052310 825741725 142818964 255167029 769964588 393252709 962907730 254183313 275035530 314179749 586097807 85822860 768759848 439194149 175655196 534271207 631860810 617051966 894781834 322744597 958566613 185602120 128743599 180121701 605449865 442265774 685739738 484301056 827198763 969324806 103953468 164205961 411725445 507880457 689653052 900351913 139068552 25017407 492178214 793128103 498762928 635520428 105270094 718580142 880903768 17647473 669912743 513702210 769815862 945591682 333627252 202131957 235673465 450569318 439278177 205703217 755663742 345792081 673483403 659499735 311267777 518712107 224936699 474849099 865304972 179880784 208850299 79217366 347311772 772510657 70678035 690672086 478710621 177166239 484244009 561913306 804758817 873191656 242546120 18129992 187608319 298603897 38329548 572178091 51794177 548404322 499087653 332182005 506328218 31130071 894152875 93979034 410539744 990127040 80899780 459816230 949217149 670449192 474094421 258262336 311388051 440469169 956293826 500665073 756481726 243542201 252862291 478909488 174747960 605207064 870261441 451365001 69346070 973502564 31001568 324226850 748768438 411038390 148894838 937607857 123308330 275887537 692048752 121352398 77649700 753565352 481407041 304201654 321384528 581982658 444209452 464146944 729015365 875132894 134008397 249447825 281034672 720019646 321247711 974833068 584546409 495576090 16941575 387223081 30916205 286393505 103550427 532635515 350212680 552168099 207541269 700219048 2893894 459417100 120855279 780660491 700391610 906456547 315848377 380905658 3423172 506292250 322847820 496790317 395246716 530805802 99723962 681554238 619286205 430556804 15196024 972919759 33847031 189773625 325691943 617010872 821345160 92550623 188696106 210465667 888429111 746016405 555833042 155393088 335026481 21426424 550075919 286330311 890378614 651547811 795338865 268939659 956777545 568444401 320305287 537307396 629163928 101036053 761991648 739017716 182636708 607600760 614048390 749537676 614933288 372398410 592436498 598533479 110401169 954553376 814898940 50033700 861294142 140656930 128543964 738179537 826683695 675204366 370502426 231171538 385089657 469383740 173464012 263032922 668318662 310608127 669764262 20505175 99048342 16643535 728713626 829166329 742372386 162540754 285670332 741995066 217601153 443864160 885654987 225995685 756814897 28489055 567040087 488036566 47436611 323268044 73914573 472922585 504904566 165466401 972075972 481657219 95929209 650233966 699014811 462540517 669064073 318329964 126526461 525553424 168956350 226056549 801965626 342552758 277500924 24619494 570762090 876298710 44312405 837740994 412451825 865449159 665516092 390954806 261424862 507015162 999968821 760170266 266083601 641445274 92071096 981286271 443668991 845901186 147592260 731219096 834866118 830345739 154634672 70712822 970537413 384108734 637891604 349173326 136098082 12265176 744917552 656328031 916948657 357266130 980506534 643763531 75348700 402058419 298452396 270371266 91190167 637638862 452965123 575722506 209324855 194632880 547057316 980090958 89708638 140372588 362911614 50693691 326535274 965246110 322734212 531311220 200595832 897085516 479463322 248400243 299976072 981918971 662796015 652050705 323700500 174903736 619410780 150332266 555907648 800195502 737311599 541609411 780760789 329941781 73973864 404248537 979536571 508181128 460488547 556234290 435865170 393791877 809274173 819736 120761578 495017789 770740553 161445931 257584493 365144233 424708552 889098760 687414553 988062910 527443049 820807365 167069837 865036529 308765822 842658608 283302238 447180948 48878086 798930305 91708823 116125884 877324129 384165183 553360616 36887689 295446652 934808443 268848373 978529535 644919248 257351250 783379790 888435556 108777667 296497247 178360193 803920243 695979283 833611029 228639383 874486867 852996134 86262187 690806279 882199911 943536997 198990385 863751323 803080879 129752116 834172902 303912726 111524487 136510560 770707524 552228246 312103845 932701113 528711677 780245843 495666823 756207714 253780975 264778553 993450095 334578483 630788450 23468466 484390042 779926033 350209216 610183301 638361972 420766690 94693080 156555885 422568976 425147824 337130848 724662850 385811864 91376467 485955843 475567256 588552309 99770637 89008671 415848229 488489821 867950272 403679403 441489733 718847701 58905835 358411056 560185909 728155345 639308987 804181080 631307802 436960021 884003446 102722649 375096398 938519000 621334486 409915855 753900947 560256329 305887684 849318121 745029766 812167200 515845977 205447485 575465770 547650842 174783274 580940604 562452516 775406058 384572103 238710052 563252112 972956630 125452543 233514355 304361908 799284597 373451355 979981010 45628221 417970973 382690201 787650145 322392308 987262516 898546702 144938348 362957855 687222420 570790978 847165409 280655578 885744646 919070810 625797808 468656576 547407982 914872625 669023727 953420270 532165775 947284677 699016914 754540211 635041766 663359473 384552802 512991730 572705100 174436673 196643119 449677211 917521544 129064319 170684252 830188149 899643592 611070022 298389896 584034679 248465960 78604429 733392911 296620579 57576525 701408158 594415418 167975657 882160293 624065736 147270682 870330668 22256494 385095499 316102744 76938295 517487824 805597705 77141897 900572383 236840615 160567748 536162524 131777239 520083605 702021551 796878862 305518431 28214481 819328480 916454870 960247283 349760034 753393961 904098238 832346975 435506914 510699216 920942938 603964650 676022751 273683791 368907879 60523197 1542208 28670477 910677546 942270187 542735096 579774638 100764956 456198059 955647794 242046565 562920419 975257790 687868958 388225140 554445994 49409327 480631727 796302503 799974879 807911691 210507902 146006003 157776061 78571012 496621025 298146619 198218067 288268821 167494691 886703578 160583701 774766639 33279900 382677288 677108674 368871436 717565842 338034483 577371449 725352524 96677865 94034886 308818753 825388305 982444706 613344875 762861821 617714284 350800109 826047781 752785375 369307126 419351134 948384434 905557121 231235330 149666297 546103986 775432891 521904921 742522608 381220083 585632521 320351990 67567214 681693223 378686018 105388312 538933273 20853948 828111063 836268290 285711827 818918837 985088261 331752415 874359950 792059484 261544709 506167402 742569455 150080321 773556146 198755847 394523579 777191399 403126651 284168625 651994922 431302925 391858877 224978124 443078304 498405984 678318602 396536986 823255631 974525939 593692626 615307257 544887410 158304479 749812454 419655409 888940658 844589776 818990060 291161972 299164173 156134616 488763888 564368735 562341184 497072934 820002040 286061810 329457181 480773551 247679182 591553956 411626656 280055936 625391356 162115888 898442622 351993394 229218347 662374260 210152606 686045799 768625481 779846919 274513747 357202278 656215668 374410944 959414018 719026776 225640471 49908183 928339991 440104232 603338361 137788926 923901100 39250980 547884382 526932060 34614352 918495320 835108062 107710067 285098195 844512765 302438001 640188402 479092029 927217471 66331863 956222142 294319116 265156614 693049385 728613416 35141351 417662095 119090136 769033989 169279148 948675823 2744439 980329204 960416905 716066970 843280095 404352671 597721193 332352345 152333995 831993920 196554263 475890738 974456066 671130425 655996740 695518229 598672356 102913791 546743485 12476065 192500979 77933594 759522655 845712921 180165228 182665461 510064526 445748989 767069820 900714896 859299892 451486656 47154177 907958840 423780998 419405474 695559593 955497985 490805945 509833538 330087651 957364505 279969301 757151382 812984060 980229918 837941536 935134021 585152368 16507900 877648042 609695185 611014415 605514433 205871523 963840209 463302481 411586297 736794134 256956382 259339677 24782227 981488723 279728326 315290238 156898854 113684866 846958092 528932340 7238199 585224288 209270330 426274819 64335690 523506682 46479078 880669387 20715672 127184394 703752130 275573447 480025330 718724854 755766869 92236026 660812815 701016542 569919404 1002072468 261724126 53411015 687701720 668474005 65126644 79697851 726342362 701317283 812409026 60874736 692444307 911748026 735647882 733031389 67426015 59823752 251804166 814147003 104577519 256958767 751958344 30645241 742891146 811018868 57704602 790588328 942461522 91211305 846719648 926877303 147253277 308426384 849031787 534657928 923000583 342266972 652700795 705801877 6148548 468881222 1001888733 200862967 198542524 313187506 524654845 94503157 742251899 374478467 165183228 745421793 5288444 236864974 334059827 498990883 369827628 949829694 134643781 751241719 969515658 696764067 799978352 443908682 426310606 914545919 932664988 162750772 521688860 707913120 251302498 475025422 274392921 448450026 354438117 35399307 86206660 15320502 11719012 441322266 751318390 850808769 266428628 378007830 141252827 498024190 654030410 811292828 485442200 902121416 198509740 888826067 509333088 766962445 198115130 727822624 359543316 972458515 214031445 953957210 554154806 219941602 21380817 642199175 756692743 824530281 668894957 266875486 303616334 720828995 258532182 696877016 142214878 899801391 310039693 942389487 655023355 150809782 20656246 63038019 659542785 320286961 514534314 308196748 265130112 523333240 778962055 793040042 446852058 223594409 456499671 653241989 453384116 823642404 313659317 877951760 556204193 943192666 437931779 39447371 882422715 950124724 634140439 518542690 325156409 678851330 784059660 161279439 12173859 988824692 765627301 165413683 116700555 828532636 351266350 958469584 300039025 998070328 824047652 450840357 227361177 737624710 318138029 284850053 81340610 686682521 162315632 516054875 674717250 285665465 343174073 85653538 722843507 913800066 75609780 100536329 393021665 593825256 762522226 412849870 477800546 559597937 474118203 160873270 929078576 431594511 439556862 229045646 316829335 217006555 424047477 455836293 742305328 157773745 567322583 979061286 741750010 499217152 74776858 554495879 893125178 611162004 472299141 212678619 400111069 26520980 865510132 411072022 684579697 837885502 392209616 868834211 258708240 162838557 719470433 753858085 188074628 464615028 667491278 902410856 942811569 240768249 738025991 677230234 120204325 846680420 544594673 248052599 941983175 968361271 110077438 265018616 300383260 624068130 984851399 87090675 211726376 736538036 516791165 396344754 8729712 800680661 610387267 614420477 927558178 97516680 573165129 346938707 409773597 974106060 907092848 261362529 763801054 625638753 96856532 967719214 373761188 638517951 727753513 453376566 636957619 856772182 434900546 876970606 396282808 638138350 656409715 458615998 347451965 530918597 104111166 653781628 539582823 189329319 673693399 293409203 277496809 922043617 349788708 499424210 558280362 731339981 577099436 438082277 277335274 852337982 733161493 900542357 813260507 431718571 973839989 991887017 983688550 269654464 290096433 360680276 960800832 40761376 445719646 453064249 614865440 769509198 49454754 848339325 98485608 307374187 658472570 503691448 460107626 183781689 986768598 16519197 466689428 692662600 392555777 997265432 383801703 274589072 91951259 221084597 689308286 798247049 672706934 199636146 772262703 703144493 347909487 455645687 885606940 922613908 115432407 75663922 446839999 416476872 249459547 868559514 657809703 49617621 211421103 951309726 390984735 413901984 578482216 128416421 195119290 827142159 920228333 814225820 966864305 726539549 436421058 732154493 655597651 154219216 125802921 444183617 380317413 452591831 408888527 776867355 193393214 704296505 254429802 532696304 919779931 557141516 862574691 242477876 569179937 594921499 476947246 512840191 107868841 104770827 170850046 74357648 52672854 158781319 830972381 994710850 979588963 402243481 561142990 621528968 571328747 339296298 910410599 185216577 412021160 473650837 475102121 554843954 153584157 597197891 853240015 713506545 680706248 152062856 846518144 525557991 995343516 755530388 340323787 748245143 616728280 992645994 303184891 925783595 108885739 383666801 244037948 572970185 400719627 443466484 669585033 488645850 317397237 560819586 829768510 740965238 245499182 461406226 493453446 917145581 805583717 1132590 414620692 205993045 20575635 458787123 809102305 836028855 195828235 120753136 428422822 836912584 3024891 655910135 335405147 87845056 855196969 102681071 107942232 186204487 339075111 16987325 853303432 726253273 653230754 665727539 760017117 423282393 966232779 355327548 917455905 901146973 309992432 663996628 910424232 842545246 598679941 350940267 468194619 898204030 354141582 244079031 216736854 411294682 989734043 590140634 242901296 437750145 883695857 462239661 250034437 981809154 613867515 672769932 541089798 108884588 23883688 353625405 598698015 651862453 442620260 448255300 182795282 533470667 780919487 203469065 147796623 443580339 509115871 876289077 46069450 505843871 878833622 778017611 993189267 120245810 858374785 601216080 207220927 498735748 942723692 695999018 546792600 591784558 207198591 441230704 858919735 174872321 80671374 734361034 618603974 176162265 798006815 38546400 731096311 809643036 444409160 750842501 424118856 915087274 311752529 574399378 296583853 233863255 767821474 412832926 954570496 706507420 281580873 513552168 622757645 265647942 117297871 845031657 576266971 723711025 305240382 762877772 146495724 953335141 275992581 681762500 19354730 59672716 699495989 75333596 504087999 991239803 916336810 425768390 554406814 175735867 943522094 636749947 506207418 30084555 884472294 557706130 222584775 944969632 440327653 713103895 810333654 79979887 772311343 676783905 84412741 889881181 361347767 641583495 698586276 569642336 598389027 613848424 209909468 900630026 115893438 889178380 193518070 447363614 870615360 156100761 787239346 671542500 401101692 678170764 434616812 249394850 196179418 202714285 723114062 332072105 78845730 276096964 357827431 409003793 958593227 176319889 340123197 294720988 290051734 700115515 23818246 286038526 724208946 292122152 955529125 939312339 118997120 385179973 229575423 896514789 441127629 942050715 32968391 127897950 5747775 808562342 579006993 943227814 710655720 630671973 476507838 698353152 760491614 731264110 446644395 298158424 526895216 196954135 923313735 257338076 799652392 656208323 42091656 741315391 808696063 980014224 82730901 941855817 394552125 918777253 234095468 831037308 523848527 228970050 676554163 725919225 338570956 495919588 321791641 114421658 188592614 127187812 249796853 4413190 4454447 461686819 1001807946 638483235 868143431 655861200 381378862 191142053 921027992 802231498 636941206 697074991 768473620 727012409 459646964 490892753 80201905 15406110 553672348 139132417 174058099 646009930 65117525 45857504 22117595 429764413 37583867 999674831 846825623 85037868 609844190 134723677 653471429 399493359 832401669 510560524 682456742 871884005 888156766 252700100 27757091 672870925 690356200 224657608 626491801 571698675 1002114037 790986259 551370858 1001688749 645121015 875016117 64304733 830351281 26534963 658879062 885551475 700925312 30664800 640018503 602644286 772703867 998655220 372864230 884200583 508547404 108057781 89547949 906424871 884780204 229485379 472633216 273662418 862910467 198972629 181652488 698546833 617315970 253013527 483489415 654120128 747083357 976105195 960459283 217651518 108658075 817272407 389756933 513459454 568570212 362957941 574873262 233890811 879288575 507620124 316289030 669058264 664002490 461043943 500389534 941971148 221995281 658279894 850014767 120011605 38187053 288428804 763177114 743195045 764654677 428657577 311114025 557299831 238726362 167455359 414271400 224430834 25141509 566165597 655996282 494771550 703641778 12415042 676096456 526193654 454341695 816153038 401068556 942150396 234258624 532233845 41655303 295388324 345923183 449978244 553029728 449739652 679095588 783509629 843112658 880039501 216971589 877789147 380383559 837097509 859030765 460826270 457144501 833985917 79413905 522485078 4963911 874722739 820160626 318842632 562106203 292472253 760687879 625326292 345651332 987324593 798946169 386784020 74068485 968756983 181950152 8576732 872616831 403832785 749126528 269165137 344438300 804999382 702652673 744588113 534341260 713780923 427536969 604477930 706636919 426650617 231739019 276807920 103967636 885022684 449814457 198868152 587457745 436186236 374569296 194079612 456831237 742342892 873498759 175741532 579627750 570447693 316534698 865747848 516650385 180232282 268932570 595179578 120971481 512089015 622030493 451270503 23016938 722861077 561157245 536560958 576177014 980021784 498583768 663286165 639119713 950217430 648896986 604145633 453737334 939418069 843837815 346224072 715157057 852512970 820341691 447704594 499578579 867155920 439981706 664487208 13431856 726060389 614263778 6326685 546642252 6576768 882716531 139191201 905733428 218523109 351157434 817461216 266946548 647388892 416439043 805164195 871242773 192482115 109116390 232835051 958255221 490233084 615242982 444012378 765557129 702729550 383982148 436144300 938074746 831533565 835063413 607705063 727233597 81388642 214104368 176083318 44525319 752729787 403741672 776266524 450342608 565045570 775421220 818103856 610026800 257334314 279380350 457354316 797571781 363333487 952804237 346184299 744635655 719056445 232142690 297625745 472905914 14113483 347129419 660289646 46199886 214530939 137370054 10898958 31951001 340371749 161475254 6169134 750480385 704590353 149126564 555785018 951006030 55048806 982799062 937612620 807179513 262357491 251860344 599079858 945922493 844687739 561573759 920847423 284528045 388537101 591061530 236466257 852779149 250770387 155007266 391188139 402990706 360898813 254286132 999996286 27347618 202826419 417273389 234671421 374320138 455766629 818629444 728964549 214727920 315874653 521310683 668461516 444395333 64842847 393697740 300203334 173978837 517735419 478458007 948087004 430851349 293289842 617071900 330505676 476651154 600134536 101779003 291103545 695193660 223674144 227315881 81422840 744894625 655621999 4831835 58260426 161572823 871538691 601368260 12745356 348192625 553807981 852679954 567342554 29587729 693941075 895202691 807596128 897189443 294486847 790992313 906971352 836997352 764407264 775795747 419181118 34424500 912069547 851170703 415691365 437275503 575178485 832899715 723239253 566043587 715757874 465842618 662551308 316042004 590025780 975428590 355638817 968115761 180856609 45848355 821825367 196711725 232437120 992209890 692862144 796351139 557710236 433197279 793379032 571288614 535079396 958555194 577294378 157497752 471399393 275863263 361288462 857854401 254912630 373117276 643455518 162370657 919386045 327608058 551297011 601044352 750269586 18286437 537846374 867931489 496229583 367596370 361715861 438177600 660839252 652875271 972815399 945172288 578014941 76033989 891643028 244079168 533205232 335386969 31057381 513093302 810743196 686971954 625843871 61353997 836402239 14655693 787116872 428201086 360559469 661432893 986497049 273307956 371361322 994790838 1000533374 788788202 266406890 508943886 302452484 183392066 166141790 937738150 88394072 229302092 543170921 641454089 403094634 740665379 600455602 115777306 734296681 990324032 538306561 87594021 432623660 354381301 776713186 81903098 611595650 70660560 477606339 959319007 492328057 425462352 189667899 796416839 288283888 341291886 379480470 121436091 703480001 60090209 755158026 680996063 833674170 210519914 953889599 669957794 562350086 429730223 188208043 965458247 197521131 557044735 226100379 252697632 690470042 783529811 475949854 349055770 579490617 723039275 687764443 89039744 336296553 145926232 691349712 154957131 251424105 141691144 541355287 215399134 155078368 898525655 627109657 625999675 408471926 909576812 845383076 629291279 215848380 78634274 152591310 671416695 152302660 41535059 989064397 97012024 218893932 452387979 655294387 403037303 280093539 671039183 128104161 466166582 56718081 243727227 470159893 834175861 987829259 594958808 369142535 422515417 977466015 273380975 6732940 771332053 695163756 892747981 853976958 555589965 541688865 137640631 302044950 925554807 423927799 368315875 326286189 128612467 238928579 551848188 314773594 827248985 341431051 36862391 935742436 742224900 362824800 731407915 834149687 890512747 879056821 131275911 607153060 250153751 727606332 440049585 761411663 857473799 276148647 763850061 877324541 429833082 645085757 684482053 868458737 146343037 742974148 254275839 698192741 585199673 823812593 72583784 92166213 396413418 746481640 436606211 844035558 636673225 487780589 122577437 506574300 288049196 262214525 517406782 826692949 56655476 965392130 502270967 234749079 663840309 146067530 976782503 486448934 625533944 828407077 435796479 728106561 369404775 858074739 886834668 919051340 362534970 560652394 40192768 979632062 266736736 855345640 600124173 285455048 705629221 879981497 131324965 723336133 438432389 934540908 157954 319503041 85312547 168948385 332293280 503507904 972807320 721755368 588812221 37911797 100790059 826437264 369882433 611845078 796457153 537650116 271831788 490063981 447263312 424901691 45163112 679600861 220932011 250304451 196912443 676175754 895815687 563291942 2736311 944592238 103447820 530419142 869041709 11902326 843462483 311815710 492775809 185710443 391642626 950067820 83063274 126913779 443524837 169952000 244459077 547177742 408989728 449012050 529786751 257482415 278425204 506855419 308551614 805625897 575958355 218862958 449910047 347072324 710136358 46523624 199985062 191153697 151858625 922687928 610754483 697829831 254684282 610302237 612351756 841211742 83879769 224056144 232026260 124408718 364563338 18988975 455732886 290511962 320486653 525890928 804461469 716753969 142417601 889684920 945821095 375843152 553897276 179146072 873756289 453718939 275625994 1000318270 631404013 681882383 820144330 123874426 201151550 28041925 932705065 973674357 281152911 626512672 728380713 519709404 921768849 614228937 657196611 623839099 485805169 998834257 597355601 529892146 485047693 963768666 331112212 665010425 302491545 1001283753 197273171 800970801 271335479 158308284 831147080 905345647 41327654 900152074 349153506 758775597 664430042 115666385 698773347 598108639 369993137 519502178 266673732 23438869 322770881 971618035 51959853 893663527 597087997 356553157 598139722 299942744 423334476 930834414 458838455 718362689 132912650 987885877 834613140 299689615 290631846 256552324 193828173 642962872 174208537 446888371 350062909 857820821 288723569 243027299 48511621 854733973 838092986 292897159 459837048 376741544 423421971 698856532 718658458 941636935 178618138 733885482 825892819 226647971 909909344 779533624 320030894 100417102 720707153 91824164 321604937 892018601 536846962 459768690 596838957 639296447 85572877 942538770 494880149 548592475 782361041 643380329 301354306 339130556 190662071 265043700 848305421 105596776 324905947 383773570 539616852 216825459 117847742 955931022 536781530 429205707 494293762 318109061 483723391 712569099 266513163 89058262 584111157 248287625 391905146 822384997 629600286 564810904 270543464 271793958 690994007 337306126 664862532 377407912 918946021 520733109 818836155 494799469 238332204 955985221 978836777 683691340 389169006 520772841 513135225 828790089 105622272 980285563 170382932 237383280 605724429 422550108 388553574 23759565 442049595 176293250 759796930 624337622 749685534 961637840 792076927 818981860 18238430 426723923 859214846 344480665 414829878 387496650 31831387 707497497 853194401 909949502 879856724 578409857 763716186 824965584 262593795 129180030 598651177 2832909 610083609 553627398 286195770 470915747 147147940 418744356 374454060 245068096 747015458 632393455 982302318 184490441 626611677 6202532 750109264 637309236 238929932 383614041 563318042 247587122 830088315 918707811 43875271 739372686 466981991 804452784 185886647 839023179 758728250 934905603 666467325 515171427 880604477 464668832 200031565 569658824 360646352 809587777 1000444340 1001187539 354495388 870474536 20393975 494259993 532463478 244806209 181813233 327847811 318095071 311689313 703296892 939431119 368653738 969700285 662805798 241229417 246598690 992496296 710604784 80451284 99095692 738016751 508952107 345694786 786673329 510142160 497700477 738288648 756086328 315833756 910979057 875092096 287259635 184792678 274979051 3744747 172667746 568044946 643650061 639246775 541942819 29626304 400024218 243275474 733722731 524669283 971248982 965165090 32825302 1265390 623690045 936948566 999711764 892423104 39748383 99413105 758992104 993856340 377000032 986332032 572231606 274577343 999957572 348882998 780297246 51899113 981767123 821528299 193161892 41521778 190630168 606285161 748284474 759176506 485893508 518707200 580063228 546038434 481170828 484971504 560250731 27847216 538543759 768726682 6841825 562625070 94268153 590281405 113912765 657417911 594418820 176053184 157610166 434391119 604661632 697894371 54797124 275036836 265963651 235971699 23477585 659240902 643010899 855106613 739454898 431522094 442954254 409913677 875209459 385413279 442775415 271943705 83158225 992150887 428100803 260702579 963621172 851800499 485233665 315536626 626622351 701194197 288763671 549635930 152488613 501124040 704947271 899067823 668147239 44938825 578749798 979917644 1000540357 666921405 117623238 790775705 186018102 952664814 293874019 643889440 809081993 827804669 229570031 712992542 338237779 590830705 673380305 470231088 693503647 122417906 309949978 247530149 750496642 382529729 440204062 523232956 836079124 370440533 545863429 459330558 870579373 948814226 851130261 520403782 642965974 399985106 91953796 881116474 832768115 643403654 969801976 757646616 13119161 950146173 945103154 997462559 376460805 571265864 317169794 296405943 512904276 96117074 804343189 552461176 967758679 492352084 845841005 883666053 229052788 334552203 387079104 213121213 790025750 19155865 674861764 201133637 230752898 118397390 572485226 330057008 248539138 971247449 140084372 593329346 943851449 215593594 306314087 908732903 520837244 969515919 424172712 447683560 438663267 307281420 621816291 601550323 2427580 950069246 984963565 342620673 729344390 824549758 478579540 799995555 320725584 291580417 520816668 284864802 260814143 386312 645502743 866282917 846658853 98477699 405418278 638555933 803941623 593342961 854485398 146121348 780622677 129976845 259318690 145976947 338110259 914646363 324308018 98787251 985612882 756162914 479925567 252379486 400247404 259169832 304702416 690721017 3413499 997667950 370211070 813698866 701450439 462631333 511507214 860403403 342570270 56549582 513438270 640840733 766099583 606702404 506064295 829440749 367370392 991635545 120247569 240523562 545699536 292472097 594478884 869052338 697777207 245132494 777059563 208202458 867377050 870569102 802922856 261871812 571190579 742571211 391367034 912099157 951699462 125165972 837872058 415759826 290015461 397790123 751509439 938754705 696512283 749269665 532541191 509719049 440665241 437581834 473601489 680858925 950683241 742253241 86204000 307748487 330835636 682907200 801838033 115624551 864616013 5941073 941711262 355016776 126287804 853242264 549434844 962483929 318635647 114346819 35367027 510652706 610354771 718221832 329651918 612955898 171767455 855128729 968686251 753401082 934101918 360656033 755691203 72319753 122563557 465840050 62569586 258157165 824558862 449491268 946924660 711572541 77942994 566230722 571486171 600249338 1738394 777066131 905993539 830369355 907954485 336111084 105845367 62281749 752298310 991276954 434825716 450111986 885909171 403570251 536000703 890155132 7245120 28774568 941573548 37469946 28285463 958942134 395370659 402333402 187817897 564760503 273201509 627857304 50462826 354335125 402092796 401597356 371092765 564886010 427511985 817697451 484796140 676930585 932974271 435529846 606863312 750625477 94730322 632524448 684285404 480461713 411254496 339258592 998743108 17087647 783100371 204877710 315503319 545581561 469426412 677180569 400915301 759498707 671798159 595682269 942669938 361434750 9163847 73011323 258563477 505265223 203507972 593771540 766201517 725429800 175772129 394734616 199882018 583602952 104009945 7744813 459627009 209930118 652307146 675005667 982611857 159045598 479805020 164955520 803434576 435063723 874330361 914147311 160932908 256985016 19670581 961796841 278351835 866074736 63283420 544852787 964557022 272792606 881644157 190144913 48100395 679788541 688284127 755506869 537153471 361180671 584506047 526163632 433809791 589662051 59210879 407788015 964160269 589282223 468567459 812621479 811796009 234180552 75617019 372807849 132960814 538458562 101763970 466190341 134009206 15212881 309661994 170630167 716944919 244040687 948932941 449152825 997047292 440591868 89456639 960225613 311870777 969481566 187882648 395062556 396372564 162447674 62538102 343607009 682079776 871172327 797917378 14028445 951998989 882219199 642546399 864933822 632059523 382202133 799269463 369027475 99545426 582785227 353016991 284993974 7532155 330244511 26656590 422192174 470141775 360015338 42205595 682596426 165282286 959317079 469024887 916561331 547005190 286286757 417257447 778582471 155987608 282017500 370750630 902781014 50461428 347278535 953698553 387831192 764125485 473746834 501649992 259590736 91344790 434880011 936733309 749032057 304829084 218844849 881273977 371364505 956614183 911619595 494302167 154539570 270503918 369285241 555193297 157720841 520101690 684845673 321103183 381112550 601882179 519904969 347899177 984974890 172930593 976018170 34406772 734420418 353046082 801870754 483721634 689356115 154227053 430231140 468218355 762126700 724406304 832208903 750592634 622313487 957670017 881426101 5535818 884477518 302548545 371416466 545002999 535389551 277973017 198436083 924410546 626905087 197033860 404484866 545441691 405228020 717803047 303262095 901238319 413663879 39702652 165237041 832054972 5824426 789053223 681346429 182877185 805629886 119731393 526796284 80631380 548350692 125700117 820412888 762839651 743159474 290425590 590444983 487096856 501072797 987423268 317274096 859648140 580281003 225221957 10127287 100907477 451820186 222115545 686148271 410329420 494020289 681926566 820449815 32252641 841852304 640218818 237426281 733995256 111696634 394042233 770578197 534194416 423917751 567332611 76824356 336444977 638822098 264043518 74272753 259744699 540947441 478521167 511553578 170616860 605042904 118473071 621506737 21112750 812532840 664926684 760505439 247824458 401292934 728772905 127476192 807785640 682984114 748509884 147570910 18838577 219660504 418407727 319972176 376744735 996531480 683258727 493731047 18403927 663877746 190460408 131769028 808229396 717579821 210992084 880703085 138136481 499649024 568581004 231432549 314986769 12893322 460111466 498126277 286011307 303611458 787644030 584485627 878345725 632936484 310075648 545782696 487131725 840059607 372350267 111987436 155529941 468141649 120917313 102526542 267905189 558578146 775718308 652701819 135525526 548710903 319971363 525468312 700321167 451959762 990316480 630516525 324493706 230849629 372105053 119477350 99554194 59094896 262992344 630003478 45557023 834131139 920896736 723421524 742852091 871224717 806347339 566532685 834091791 67482791 436790198 237414649 341453942 861403300 905164200 543552394 150219187 881952753 990283559 381954196 503203155 938041563 812258435 285918403 621986517 539508464 747705266 536568838 686110937 49360337 553474275 100619884 864846712 55431316 670653673 487456178 571118913 845497715 62091666 374683563 984322210 999781101 218919847 57227679 200862301 133267263 35856637 825790481 389008769 324536170 778909571 808334495 963320784 895802673 861270113 453576938 578352490 318034452 443243261 886659002 136889224 257172165 19658984 870037791 57877235 234953083 75188603 669165148 175717857 50031015 266848549 929074192 627420870 309414923 361201371 638835296 729700690 385160431 839984647 939030271 357243001 84848774 342121108 117308572 994161845 207651658 718874808 333491952 671237448 588938338 843586567 290573897 271180871 552629892 648247935 885583978 496323595 368152720 410682169 628473405 991389040 407529010 519809614 872998196 206589444 91247152 933506454 550657642 11607972 349360408 216042296 408387559 437858666 239260125 345297077 577457439 896464445 209956394 437733904 849053622 815241632 405900854 435497082 96943863 316428812 191243713 616505038 204170205 610936480 30151850 470826629 917568058 176800694 624383838 43886804 348685653 463107694 209986880 801642338 780734367 341934127 841052777 951767622 872806384 880517080 19284174 955167974 115675554 893107769 232625503 288406333 421647058 701606737 250596941 491739915 499230455 593647598 230523399 420012663 178557124 1000410993 709116405 412112798 953837623 248761665 632934414 440376243 667670848 319266549 999464546 606469380 705454987 650106552 877195445 60950481 756047230 495686218 476423588 795356376 242386742 182463390 547045546 160507969 540186073 421107218 921915674 123107633 910019568 879762816 934135463 1000522965 549123567 768012700 913368918 875570205 802659586 968815250 527860283 549669871 514024868 385167273 237624142 898586469 794251124 32500063 129528011 874948237 914065585 411539349 124254817 80560346 503074630 409462267 215615791 887048759 166813113 155184463 685782077 215512704 729249569 596356567 218119478 683361434 461705838 522045642 978493274 310996107 343809610 382823516 406897619 317852738 62352732 188213388 353335038 445007377 487040852 363980414 151749548 602317902 182656661 449351163 927113577 729618356 36547538 988074231 996202795 436752871 965649579 387394878 889769652 81245584 661701042 796228540 819955722 443221589 62625519 928713350 900263954 1186783 692200265 248521540 954189858 183419189 391481499 416431950 684773677 294921475 287611387 506628193 948891130 766394541 551911863 92260371 356421062 961600759 446625232 872977822 144199127 435353337 939522189 772181103 609361554 751397723 517918293 241059141 341874129 892217485 118160941 120391055 762284932 202363231 437514391 541746319 202735722 215701857 154078664 220763664 703399747 558642991 817721009 507542796 155063544 924592203 634176874 578833691 121745693 9899937 442520378 588568443 185874068 306743277 344027179 506482449 855800010 274280809 972519340 138520509 684403983 275459445 101962401 989481841 135367008 112151025 315665981 309244935 870662136 330422998 438351981 708626214 960888855 194264315 414699503 129792355 768462308 569978205 937033426 392677611 867154934 973187947 639096392 387994760 717486592 358566390 62138246 866733046 221279660 604422595 599045416 662834280 948747408 941469148 577905076 406930367 976538503 390797383 795882389 220726483 194011367 966441496 968646330 916145209 702595349 707261717 91360020 470873961 233716689 24659458 176540705 753626053 671476473 72902570 610012757 502079140 267525090 398851776 912936740 719140190 12424341 784153168 49643398 914162168 430336402 866282450 266045515 595408055 111701919 432602030 187473673 133037323 293342896 540336963 515268242 366626112 898435445 398236665 602689684 631628156 484726478 666616885 480969961 245412390 61959848 927475150 63409911 58252112 864196708 593296213 493095694 913640595 515175551 936268395 732120758 810243133 772406003 157451418 792377598 335875568 342537061 873172033 935259953 504695376 658420941 112656985 899542780 43395656 672168904 615708416 723676019 192753640 184007974 896653586 925302763 34301154 845595806 215171793 628983971 982250204 502387761 293834050 928961193 881788378 227900372 461341034 391383315 445004057 966510682 416458793 601031431 975893416 341923908 739574414 774599288 17306100 768547133 554006218 767907427 189357662 218919928 279638152 501002033 613279843 245912284 350485952 960374370 995291254 297250378 301341504 592201532 194914950 266361717 435698737 19181096 438470684 597958017 581120010 491125573 247360632 655937433 681365370 677996579 257392033 938971758 786690347 893322819 579732027 543410202 84153660 131884356 343879992 584627657 955516281 660508742 391048319 279331784 681456888 53444343 428958520 278520400 362334365 356388214 577024172 55787859 421330255 590145827 180644086 362517965 656722295 75350365 699569671 600533683 500926687 636355414 243526883 285531665 576467991 922727506 227978009 199662924 254926823 699491431 572000855 2954539 146193197 4838484 25172980 604323589 487173755 462067071 628961602 437101936 293971365 825281325 393887760 951153560 943687094 497269417 742637827 790878750 435468001 398926172 776001095 734280426 81513054 840582051 980861896 731749409 155724717 819838491 213804821 184719339 353302097 234244572 757890055 677720362 620131348 557091131 696439726 186257909 324675747 701324645 623614532 763265909 508067711 285532185 817703291 603790689 921251052 71917764 422182807 293642046 93245681 501293862 381891429 99090777 66259522 699772453 612917592 91382510 977558567 882068343 980104866 982246948 302575449 732562453 397200498 735231911 615844613 39144777 289586621 825984440 892759660 490817195 344627773 898855956 255498260 75097977 489798607 349972956 179253920 606636846 894500092 446626055 215657932 695689022 128011267 305817942 309661972 320196521 226811282 223416370 302946861 346450472 805941177 342902285 656374639 995993881 178680664 634723296 5473278 680946000 715457408 592241979 184187624 213019022 382482425 555843438 496991530 642948883 700848047 137461291 496152355 792800348 646489178 924259287 590153623 224823501 840636587 826649010 64664093 832753512 78095329 379702471 150929511 848815810 717472466 206688534 819512599 161665719 506573280 763251925 875324614 912206998 708317260 183972553 391958490 285265024 961512433 614964180 55289650 361297594 596813531 4170150 935523469 2174438 352695895 930266295 159944776 648822142 762641051 104311096 236023941 856104194 118016020 911965604 968862040 145550068 706418663 916938936 982526098 837268032 62532054 432308172 399419785 460458152 698270528 189630675 312379402 259266993 295531556 214133082 585046077 359171845 641383370 888863138 419110717 269270116 993505369 783921017 644801440 528588611 98412787 704059113 768693666 636611014 42590867 102195097 668754536 58732617 928332144 819714369 716106487 872282566 812238419 432866906 470595212 237531558 824303243 731915959 490857628 973502369 415211193 681903694 226696263 262442 44214663 502603029 562131079 684897042 232330493 77826285 819734506 51390021 390032827 267979549 539116285 57415137 2477922 973754249 342479106 398071674 491666101 532314866 143569203 258521888 449686760 897274532 503204818 472535556 212651929 478572781 678465044 62653426 533638649 3205099 124763524 530618293 134091843 956550618 557059926 110405930 824173372 1568397 624964830 113332281 605384558 898758281 874225683 818555186 176816737 77248290 362374238 815900243 759442543 537044651 489342284 903324938 541433796 577790573 154707500 232762694 327458145 711870214 744721891 554578575 290419444 776151037 51462783 624951843 430196896 227909954 785482424 30507306 58113495 63931136 985986325 416447254 947036452 919537958 303422980 886318467 451383608 270261082 994296880 523920820 936800476 990901767 369232797 906247310 54416087 625348312 643630061 267692346 866268261 56699805 267337312 835771433 462195236 955234114 873822280 188159666 581584141 558986336 966614115 198738858 593562766 380570956 402688121 940955459 920590500 56794638 197875209 730767817 522848968 564394997 468185253 394431603 974806053 849466759 552403150 891690855 727448440 182861705 81916866 948561383 873116634 339724452 950298755 981329158 984809116 860966890 688739985 35137893 911013532 141743252 399205006 487489488 814311297 615647954 679335373 613392819 109771304 425983332 930577905 506836715 76090109 140434320 425247672 692513763 620016447 142977968 658390860 976597454 469262983 675038064 83673291 23175416 236895800 380203237 115784313 768509156 331554396 663019017 646759280 972124109 188750468 697585497 24129617 818518595 328581144 943713045 269465282 813361332 53131668 844479265 212988988 339661347 419514258 457160276 971243723 24326264 90081174 520473915 994558029 544358375 799679749 984120592 719567974 623604456 54316136 340241914 100535104 356204148 203126964 325732422 737883474 722817147 410534830 169907380 515126611 110295720 155124009 917836931 586163641 576201131 378869016 106270135 683548681 522843405 342105795 768824124 271294669 32259825 744315847 418609204 390981824 537106485 829064907 119277354 272522305 88959413 85249846 475947110 252747740 732497276 912470226 129681990 607937689 61680894 159091699 519759843 524168503 411674096 637340889 619002832 58490293 157664187 170840749 908465473 563240638 905998032 878161817 699617712 427485478 559606525 332005939 740019635 18968381 379396232 617791778 643804364 331401525 302975672 307832848 312000414 295813350 888266565 761496457 595449060 9821894 61069763 266657823 31527335 672764994 134449695 670227609 924757864 978971902 903423827 280309662 367587007 863468266 808466669 118834782 834619393 411577785 835944576 712495645 130287877 657956614 112271021 772804526 560630537 751509243 134441428 890792331 498560988 887593874 385824905 705328211 147285001 310948822 687957851 54862656 265381191 837328028 450163394 801652774 43600844 278295923 186176753 999322254 505605221 44144746 450487866 611927133 452175788 765758572 181726605 735061593 47637051 648332694 720430525 868516990 953155589 528505568 122167181 798332372 935914596 230728860 577880250 522758797 815063757 415772072 208789704 340616351 630568639 190042501 845580174 1000164268 782635734 874754279 66909621 182224401 891426464 321794756 563213145 149567592 649622349 288611508 842562300 472363749 985357943 982112843 987973587 486029181 146403370 708329018 865730227 473644589 536730387 507979307 456591669 947648313 716592270 815331151 100054970 390579263 469723028 622263140 46560907 479380677 503566128 707997563 514434612 107025593 563445648 564796077 593564917 900635997 110531462 991999662 784439840 403959800 192739100 485131353 622381513 773913415 983384932 247891431 565069287 233595034 169409244 53124274 68690041 9541326 196427333 195850555 491959844 923138807 801906821 159216463 828051657 62979801 457630934 88757430 637935387 714764797 777119345 381533932 625393971 364483061 649887061 601793935 980437036 684545716 461222110 337062997 226093013 234385196 701281183 463406204 153753545 660946943 294583734 746916505 487886316 798588507 306783771 597557653 285245495 813017761 751522745 780534063 388063283 271429139 257054817 577634589 243669672 899073936 884418588 512046194 607238178 523273134 507965000 695536557 293439723 342287242 855889888 303973615 906767745 418359227 208129424 170055335 685040263 289888548 566596749 354090051 9178571 980816082 63816144 67560733 305829908 966154275 250529676 590758492 608776835 510770100 177621456 795096089 837133543 650645974 813802360 326972183 510197755 598598314 217203777 386849035 368427128 859565837 554392184 298322203 875853686 643416358 971892661 477915789 382476073 1001742047 591751001 512416021 461385818 631230252 991258518 664586434 757336786 668028646 872833508 587416390 954172456 593513670 896744520 419609744 94618559 660982841 865133569 355318287 829159026 873223699 773272130 955024537 414796743 521748644 247027209 40596848 986455846 756338975 308067147 857427189 395900311 934752703 845482862 470230603 442844906 838596830 664328586 571863328 365742548 833184766 971627849 786470226 430419811 982085651 349486754 47192203 225472955 728669274 881290057 917199900 191331053 453646467 977647276 32257254 676376809 349978590 320769950 493274957 738123108 799089310 864261742 240604711 480238938 400830864 152165766 118806534 357649685 54580628 821158391 565948311 896652029 288075823 682291477 537531355 853540176 412637445 654740062 583518179 341994001 500462437 345671330 983559974 259726784 134055135 308827458 144418351 582376067 271633796 359517161 577152295 671564331 212271217 327980773 426592348 370461946 74285317 341321646 379015002 816764241 64076672 112625042 492543304 977726610 902250121 453156708 833313981 560731710 176123813 997147978 428872838 156261167 700417067 199911374 969994579 959411118 543444113 79309218 414476508 866733608 405220286 174686184 837592583 308318060 532075909 281396491 134180520 398295824 347741169 473725003 496630726 298561685 101205463 322819598 898104969 219842330 146137147 250877222 505935081 463168905 106063194 710277815 411064165 229923111 948109361 683408499 51835630 531735138 6441408 888053148 409175037 755314669 762252743 526850236 968174467 605864236 29314248 713150164 840493516 493604795 571656002 822688564 271866564 960534282 327877828 856008911 822088293 935171289 176047599 124310295 736091891 147661632 234663762 602800026 221299701 596308471 812387723 149334527 500711800 1000565750 157043060 959488501 992004597 186714950 4367017 563289321 402972197 491487198 982320179 942332189 641611722 477255076 613409824 939191206 208440292 343507751 262012179 370692395 902713536 385174678 534425443 325462276 944427258 787950275 845355468 831047668 177573823 831558642 893872245 861606018 29042692 566418398 190059914 684184830 562750069 495748264 165792035 846307760 50823443 532310878 716780134 248996941 866368993 84102131 986015268 303429227 886425596 978948069 840573852 1002054589 278677857 526375318 975603588 849957073 541157456 272349770 860982871 104719518 550276782 641687479 204082971 192588862 986438267 351413902 412661173 120217050 684701315 44792656 815862386 649748780 863264854 217866177 494988244 572922385 420197727 221264688 192074596 726634357 220334831 642679675 856623844 279126645 502410720 485142775 218881442 139462534 991465924 914138269 661745256 45726256 318412952 753593139 934008551 478418365 119232244 415298860 185452513 556838801 785894159 960746300 346705731 728884158 597379268 570535767 229852822 41206314 373956643 235213855 753519421 442047903 746242377 340866745 30676962 423246797 872491024 978140183 742986780 502868475 70468169 208270005 133902495 931944651 756561370 622475088 305293383 372925238 244740120 282849667 116454591 451807935 914383621 101058142 502904870 584221259 918737582 265653936 719533121 931824316 159081258 269275439 169851445 543611997 636755442 272438470 965368742 411065016 554282083 576620310 128756296 446241005 385817513 963467181 569531815 746797774 220086846 775589427 374465083 820449500 565558034 766964916 214536188 708687629 795703974 907063945 76870748 853907072 441932331 412679078 381438076 886629250 166126193 346172721 219362939 612105316 931713507 103043077 77410939 252913794 264375107 975055432 824473535 894432554 759982459 797502007 228528962 762130336 150054130 827400766 136041990 660879457 175501244 632057970 904012669 328563084 455034029 917124861 868693173 62697994 308564429 390481989 904810052 44832769 456068487 25736906 479470197 520147077 489903299 899524310 459052740 918024505 793431738 108081411 651912095 121179468 736533741 781957146 518531864 62737422 825909948 39421681 179496736 810179527 214771292 18348164 356626861 352955788 671299917 382041772 382199399 81880305 87401790 639600658 316366383 932343948 652582835 892121403 888358945 810321896 239001192 273096539 802168761 664214563 993427055 809973765 765267858 152672334 630109516 324895110 314375215 471722725 718085532 948873354 184118425 493742087 220204409 889972360 303235838 386457874 523373072 651893559 932251998 586984020 208425947 212129609 325579386 435134550 46375658 570088077 469236195 715543582 944974198 551435793 452392411 267038686 797961053 59143412 673756532 947210881 837220383 333851465 772819985 895876965 768984452 501357355 278963132 668999769 648147462 343941653 484152418 316949838 669294602 161902224 882357362 457492593 123419527 917642040 662384999 54783572 511740050 144790499 831969126 291325705 307223917 330777475 595503011 577665418 825013377 1000289007 843318709 104989179 224768398 323337168 557064090 371950324 540675998 17036449 94145700 86957657 663176647 268804873 866509348 861297277 441744278 953709925 685523050 810177480 389346609 972385953 36984655 91233556 247844989 101438450 293910427 559521102 415253901 218906217 857355584 547214087 919117738 957792742 513952698 8208004 148978666 854218673 334151341 229918453 226246240 447872267 912179814 185671296 639251559 687058745 346795658 805153232 8622591 754660471 525517372 20188018 556492940 53448087 264135001 49595730 835676664 994992516 551114452 479483694 870156983 377674412 29634196 527323976 811137509 708800065 748191901 823421027 746901707 467260684 266228980 359917 675387309 443142838 809968709 61017023 175997785 364936776 720227731 922189263 462675776 38412333 215600446 141929283 943703188 894236070 668293267 954734250 63958506 800399557 363435620 659039692 92285214 314708879 658045603 505761094 704526934 990069526 299475464 348889689 885205376 308691811 379396965 632591329 782112821 519823959 328076360 188746820 438826603 152946040 659793579 261774907 705753670 301473681 993720893 111635154 769170531 857555622 571817067 975332782 623021351 589352052 829324071 423830381 255272081 833057097 310288464 297946339 207829217 446636515 608792529 687534319 597790671 608063666 644939457 753538767 274981638 455156605 569043127 48262086 767809676 3585925 862881944 840352080 132078167 271024254 271632150 323597183 380653923 391782527 906655926 141576987 323912752 154541856 397668231 454053350 572121429 579748698 957426955 45915821 268452178 986819290 483577888 282546364 370519064 417878508 472849625 374119257 786715774 311639529 858575104 263616484 616742766 703193289 230140933 984851669 473588101 118489881 864837062 106822560 326124456 551014200 684471135 253909394 489222086 131820594 168260967 148348151 651951848 884009964 929273579 285753304 941295850 609971235 419753197 14833213 446169707 464244003 506548371 940156978 154697087 226421630 720571520 669742030 460188482 577452867 525339462 569258655 391716856 270501582 304694751 755774552 180063710 695176301 582392318 27474860 32652374 617100315 613994984 703999127 381704485 689055416 73165936 917326577 952833449 200896244 381175761 907705309 57586456 11357318 706589258 976970399 471122201 235032559 116963136 174919834 190642007 713307 530228995 642683668 833763442 832370191 463074264 142501389 221052666 390960643 670802427 865593728 582756676 73665809 535632248 208144942 949940830 572027204 137072226 599952269 637151366 675329405 699876663 106754366 805424558 181994375 420088184 167807979 673363458 820477776 108788758 882236058 378643425 856770761 533956798 319862593 242145355 305730911 754069766 831203162 506293899 639775907 654083590 927347436 457749255 42712506 636004022 521539192 579179588 943667350 93033664 747881361 509200224 148768098 257629712 148156218 723149916 855824192 383289824 990400293 959509995 277758835 584870717 714940116 414584215 273161724 517741931 47831320 561477887 244479356 188984759 173493707 630013326 758853669 811207668 460898304 713775327 712875402 984965308 961163886 739652426 339760099 847396101 291023965 465891395 193763242 2772140 341699216 484112227 712384175 28350095 918993829 56169581 770096647 619905035 74426840 42263623 249849742 201135333 785064492 472758370 815135443 934305701 977197112 398593599 134130502 825177924 286403375 540148370 682971685 50556025 296589239 563846338 191127107 546810864 794185592 898364851 810075168 889645156 717300793 740241719 330591929 181599072 613230717 957738949 849011323 935679607 760390770 806628480 31803273 585910100 763689915 757563055 139174736 497461069 227514206 216836780 746491240 587534874 389271030 397050725 498797527 345368618 851837308 469680381 551115643 807485017 594826100 552710314 108497316 628044609 723800445 195507419 884333536 82849594 577329289 672896329 371260382 121484558 925394201 259327025 389205959 840816529 551972194 257141688 644048074 169774024 905726284 326844508 417719895 686794166 176621736 554360413 11249595 943680500 558077026 634486218 244487777 508276912 283785874 371262471 260612108 298003207 24241037 286793881 664711656 88368354 354252559 994859073 806665336 965988118 972501152 760393711 457639125 66301440 369813605 496905202 546311676 723125309 940934896 785705557 444733642 112587317 371363741 246315602 586191285 444066402 659329413 303660785 774473798 51339481 903414858 342568452 863725291 282011392 130297505 467485864 510859709 300897282 25905822 397886283 988849912 516863732 307027561 964772079 196703140 159955053 337363220 930118014 921960585 569621609 343195954 507428324 552670324 2064325 553348847 20743661 957390881 90229422 941598447 463945883 150562659 625232747 566029610 14284866 146504713 65918694 962386040 707089508 341528426 124405684 216731976 56085122 695848572 15647909 269023068 926170577 647963217 650503061 522492443 353577944 833977559 100689150 497237287 997151017 873835531 766328806 240370591 980457891 752684750 265400227 824071428 566207873 971129252 327973422 437152024 532310795 454110773 105895364 528031141 932718715 449481660 772501734 641435136 749375992 672310053 947542228 175292341 738166971 152496066 863906920 256343592 521134393 460369282 897711007 755968552 342387071 132479614 3175398 547041096 434269530 244530525 940215193 19582265 477739464 146528772 271593322 222986093 809436218 187421137 465879652 777456978 208396600 778035623 387087569 61448691 513396450 345477487 929360004 289320409 656396481 105137256 715996592 497164769 216272102 795114313 313087768 51473922 893862727 337381483 503109170 41316273 836006805 268052132 288612098 537541326 1001606574 992061459 284597029 159567760 39841476 103091335 995144590 906300129 660405966 715465817 188345557 842965758 631326914 917595548 800808991 710467357 957971979 315794674 533674196 975878987 865300986 133087010 185409295 41644087 7766146 418862234 328966435 524071576 152269742 28201997 766149191 86835586 867875362 46383364 451698559 802127719 822723910 567983857 926024429 386567326 410606821 659836459 99700977 715547742 23402420 463523090 254303987 246794115 329077713 635488038 29041927 267683787 506190394 119499593 437650679 101556547 427683583 674657172 731795062 477937084 970019926 804125749 377344855 496163321 236899202 48962191 491425538 315916430 734115969 47222805 558810606 847716280 593900781 859000058 345947390 234541693 405269430 178455940 965142571 681052231 492122752 948609611 795332634 600063932 77288683 905724849 826557886 473459924 849911354 458073615 923182799 383533650 176991986 717823993 871106149 256463442 366518488 870035376 130117401 486815296 738203970 977530917 665714328 686222715 808398639 285093818 99339292 53800976 504642058 519951519 298416532 918632630 919808725 21984320 548698260 660297742 148163886 957449389 625398816 272574848 252685744 138143191 5235956 421843783 471952426 70169700 780920936 28243579 28040349 887036299 602988115 814319456 818428806 603163240 696072320 30675415 601890589 302949744 993876735 389144774 827829276 45605813 281388870 212044468 611784860 291949830 902840180 382803389 456602532 325187862 400549397 247210343 980274126 622521324 295369040 226381447 908616920 600236295 746579526 7825505 513303119 291433962 377488646 818679206 719114676 972981946 117767187 59973577 637457493 520557796 32484973 410245298 220673890 812993869 447983808 808992018 341126307 591674949 719819467 581461491 100948241 12774205 988552842 231260932 776927012 23333436 154821807 823719303 539897181 574405399 507984625 75565374 537904630 796662379 827213999 483620075 266251284 544008545 15256525 310890568 795364902 957247648 738574895 191097095 373602534 270637684 547011829 294424443 182744231 50511165 815163831 498960383 650638657 788057605 602161735 399815750 92200106 222473934 289311006 4934293 53009839 541191676 423095384 896702211 500480224 261789028 939087400 855782606 378503099 349496746 641798893 909773163 56653017 758141250 720896086 864790445 19252284 17002382 137929981 49668091 216985584 114157631 533160544 978178191 778119822 174325977 283800369 621311971 467684300 605073504 617869947 677255203 26406934 846091882 79299621 833050103 78472186 501983805 440058783 745161146 115021638 879322921 70464915 128924254 855053110 397139484 315236958 915973439 691392036 848420898 543764741 812024009 931792256 903191312 793238789 974828686 437937821 750494190 829176465 337260695 763564463 578653797 488749160 607097930 760387199 813394226 604032700 586406241 969872794 791019706 853719774 86128436 212629342 658838206 610732296 447232857 265539381 798214809 569769963 127917743 567395560 377257877 683666745 187428060 674179606 166857121 469038861 345874476 825108654 461083192 749794010 14357719 892224486 411571323 5194285 553804020 891765630 630715373 292559864 473673180 907312609 961162186 388286347 103558192 713787743 646287891 213248263 271408501 993690782 655082954 306838808 199341812 658598561 511778280 24793907 476501359 512922830 758740632 426801566 397611957 753121582 5211908 519748859 341234905 858618242 138737046 811281125 166197936 496365237 805158373 358517382 19157763 95617145 869534297 370469602 317328194 24778650 958262295 66789314 944565207 560969046 784840747 552395171 122607594 70101947 498592249 230108314 625923612 105073101 543208307 969374920 590167740 711985996 406747959 14139089 335404331 567213504 348851582 145765994 320929101 810852533 509062732 871913815 457764495 806065551 850190274 44342486 915974180 71949576 390089882 851121921 746222317 792353794 411501098 241930080 331988260 148995187 367245449 192486093 185911515 296005977 256699861 428366387 635460028 122026896 924200254 240504314 773353221 639088968 864425848 651500567 222403901 135423460 351906209 261243419 839126427 845235136 895297414 34854696 69025256 345835764 748287921 303142737 422286694 413938883 135559357 940406060 914322247 788589626 894616379 916163808 230133843 820535167 806892548 542624925 639645411 957271481 821669494 164696594 861408656 855975742 405620710 774773545 758477538 857294448 497154987 918399435 218645290 792456521 483408702 341134435 383369625 811720443 302755138 129373573 536079079 250541235 150772804 826016663 932732266 282636079 965254536 603082389 494585639 374924946 575747366 840659437 939440807 383220569 214907042 616629831 353026054 686545501 364437311 99521523 616670974 417130050 47324393 723873177 211039833 764839890 678580248 659291880 232449402 361349785 449867143 401327 375731058 629521844 973684096 319916150 632572339 459212652 843401760 510042365 48085472 479377475 314132040 567853311 631997753 769307523 569615898 488786841 481641003 29441583 504847327 379212231 660237325 287620958 923715126 744693530 64861604 101481987 269147512 547342435 295067232 49532757 278205741 277833624 185541080 294044709 924316913 555755572 509637103 853985985 125052185 287168261 514573950 413374617 615875826 149098177 899538079 561301271 208317144 191378649 364100957 192731754 322631096 139001528 412731358 249031059 862286539 918519396 512272266 643953556 97388279 726780896 728381796 963244349 399631114 320571267 682603106 599798615 248625017 474088619 578019218 36980426 990504734 390267561 438038952 856478195 235952854 581650266 912266554 67542279 120675911 270719445 396193811 448185547 325675151 290413971 244729378 344232046 688662774 582926445 827218949 339344597 413745685 471481370 596404742 965651834 86651390 878349492 694479929 155867866 375881613 710136420 247565171 487855136 955637557 912405862 450226484 832894390 605971158 845159763 364354633 504712158 817864677 520666854 363581607 455849603 719459407 308849620 69332565 668934015 385318294 934462351 988710182 153866113 808594111 965808257 872295070 239506186 687395648 157285861 165369252 398755147 993985899 763318506 990619645 329226994 943561636 535105419 115841323 429232648 20141782 208628268 670617463 597284574 710637881 469505435 261906695 881260719 730728042 637299019 457762632 207407272 69538512 467331827 331981665 233738261 6885125 881150018 195180477 27163554 39608814 257742640 559430990 216917543 476172867 137223029 116706383 660693530 961616196 376284600 797177819 383533331 406223814 302285335 268758712 175428537 982624067 840731391 125157972 523888935 3682662 385993497 999929367 736913356 193493401 106736369 492907742 325673149 150633032 455640526 415984981 935490330 473142423 935937180 227872898 44059810 243222220 248602805 711826596 784371988 430483403 269357272 66822051 63340497 939701973 2617984 678566855 21815228 483708671 284816514 450355833 473894548 66150578 257820514 511981262 693820926 195473736 488072081 637726653 303766003 510583912 890236843 220228963 177522086 629092361 252389467 964668014 520838636 853950722 448139081 365329270 320243016 298503823 381068115 385991029 293818184 38170420 781390157 79953150 669191728 679457370 113713820 323405950 119160620 898388857 953594432 319643805 985646340 720990566 192493788 357399417 365304805 877994283 673583334 299325122 314465450 501509455 112272352 813052366 410464652 776962406 168020901 9754479 819882189 866085444 45033934 502727274 530453151 587324954 30980562 22731169 645278338 22517812 408744218 435992895 784897762 455916625 842432201 260409633 457294509 209344333 354561411 563469417 888512617 555947187 7519306 70892712 365847959 198721395 802609434 704561840 283772642 899400448 674075608 499495097 891291982 293023957 280602809 224081709 157261949 289119116 397154418 661129135 174192944 649300926 999661414 27413879 407701885 841898992 575478868 324767407 159595134 710905894 280083039 522416352 32828657 30858573 748078312 850206708 723303137 790164532 428575981 876276700 952668390 296018302 472252298 993240546 333334426 130056575 987865480 46257232 767262276 840097771 538393718 80521562 102897156 901067642 383122311 248695352 510059526 174573912 545498095 299606587 853291039 142170683 511236057 657397789 731069654 187973007 782739463 298212129 391622101 476213744 465926248 11596153 832452396 402972990 973704746 167265529 905556482 824358801 544559603 10035160 398437072 728271953 62036081 166797886 809544664 298249818 573671097 806365065 572949089 467614888 600064160 783341569 793490432 665505609 617232694 983423283 996528145 727270676 222665368 338140313 519963789 990742524 345259371 385282773 628580663 168285489 338657138 349530327 809342485 986890398 539440992 366028348 119842763 194382192 359642686 681305878 777773640 519869658 958157452 557264031 793569046 904989263 392197670 51728021 178779109 657165496 989055009 891564609 996710813 651078519 846314273 629724475 942869745 995229795 385132650 778166717 7662979 61846233 858321169 425076542 94145066 336174580 48448604 287636565 782601700 260640155 278544821 642946921 39370528 517585490 63985667 9564332 943544320 507928800 825871742 845696132 568866785 356623034 457063738 487216053 533638565 396277429 361177442 875961821 805516717 429669801 944935787 742583833 46247393 902062089 760088336 279412960 767163401 652734106 151250244 803772968 797042648 254524115 486564454 899761125 609690079 259612816 186222482 987999341 716129711 266018809 845820219 877294463 879201124 887547235 88168780 455562398 912437779 321207788 591458702 807000660 79339037 695962507 365036670 559680002 448352005 414825956 412614653 237659143 202868633 115617220 433999346 528955324 492048377 718630770 57438117 196640145 955685976 694023870 483828641 850459852 872526362 359732264 336097697 841180777 358622665 264419584 793493122 916820826 967789302 571265040 433231488 532885330 744354199 462885735 291269742 13459800 273646993 400428801 552379173 423529685 421934982 267961276 435411801 266095531 101415591 55738385 301226233 539265365 36653358 199988757 92597009 96794233 90811186 498803896 148511754 368448853 814462783 426146970 545196679 267748333 886387023 642409003 134390902 489748278 591996195 263219984 413906576 538562257 883056729 971446837 346357052 634106493 193805856 503439584 108780756 821372572 556340401 764637881 981479119 452671607 178140410 313305663 655534901 319047397 223785191 656847619 16536189 477412660 56380903 734722395 279187610 676722585 620536721 931316809 854198676 40163336 468547578 163622839 418089232 478778846 893336313 72240095 856933484 22544180 516486622 164633262 181832666 387971257 157738926 889575207 810544109 691447631 394466719 472639782 504786638 607913548 75366637 484564082 475664088 375117949 763984762 308333695 188329046 534804495 626442170 789901780 581527543 224488126 909959414 893212911 736165284 163210605 249109275 208759711 541923359 851813480 260051836 964791432 90321398 630252277 639673002 94309082 557555286 674546545 235131142 39448109 525611751 213552664 57869451 446969938 831348217 314189586 607106386 583121420 944957627 997680615 570309718 77253163 941413869 846406680 140312928 601120411 783486463 220859363 205875770 2231116 924225248 315016928 148141060 564749433 894845481 327126917 255691056 190030720 674536371 154879841 415982065 966776749 791093451 121544617 547759959 373328157 476675238 274528309 199032520 921564391 202057506 373403978 369491810 431628236 738994453 879905691 258674666 956761472 473699937 382028639 507313073 354391934 277732553 846138800 996771386 323042087 860822490 120211240 730898011 81091962 613514792 740613042 631934912 781577357 641962861 364372044 636806809 307236211 841487761 809663260 346853696 310511401 147499872 463466694 891122811 182957344 546116056 635800921 529635085 555009268 327973321 609986736 876543255 635089378 71349829 266924659 127618069 491897945 386068169 942324724 903502800 736086306 238658678 856958196 142011858 31506255 949807230 847308592 553920435 710219367 915251240 826259417 111689338 962171188 939440123 155096479 612969191 262521346 1001300294 32639069 994476324 598941413 937115904 829032679 346645444 205754588 767393621 913218674 654767895 167069223 513591959 611967391 915062920 470344854 840220481 36384290 736546163 152153208 264501858 954508776 968928989 94758043 609680870 733393385 100499288 150348811 78140351 959799625 115248336 757133341 207127111 698569747 355011075 383808685 628055705 496145582 781124059 866592434 899017008 807244150 135067614 87191671 512327282 630610151 119993498 375337130 427851858 924070508 9561190 1000200959 281829199 670665180 522482930 930603855 898313068 424262634 995361653 792338916 680173358 927175336 848595257 211343737 347471365 790617717 441272648 563156547 858098231 111536959 558078657 632500918 66348926 237635103 825818375 176609859 645000550 698703178 21752387 345820278 459138416 899452935 411478180 837317150 212941263 668926415 780117053 551468851 388962288 326105673 553809481 208503961 442344741 20644382 283520121 10764422 207882640 556002245 74691469 545568730 305822667 859023662 931642972 978112216 77961039 581403691 561603307 525866396 650806817 597367664 55122695 697630442 499939715 549297661 506359609 837180993 646548225 971335047 190221790 21746608 838733203 898302864 768706054 747051872 335147418 92895403 602967447 103903807 868673710 566430360 643996233 768786968 243988607 552562751 941185793 872570073 525371943 100749469 129067569 987505345 437300144 558881530 963386187 881438925 851904414 901891837 208805247 61842651 315770537 826211780 403962431 794334629 119570244 540223071 623164020 264923323 499865797 760303431 646176457 927044861 246730332 228736706 100226182 532446870 623418905 222665686 249178975 650151486 161301132 437700461 433262874 545584421 81674242 817254075 298639939 203534918 311526885 145201136 992984733 165173791 471925363 10317977 606009460 464699623 490954019 369048774 897630070 28505175 530013977 389846201 583961395 297491188 451758792 81406726 76939695 552660315 358847178 93626609 827930596 847835250 681778038 230344589 803412904 166913798 546728401 751794695 329289865 662960927 594584358 471879977 966066110 751986560 117214337 501666055 337442602 201432627 552223785 783928645 643346384 42500041 605087830 663554660 474827845 220904094 337379164 311964406 565300564 460360199 563856555 653371695 328574321 726685667 590644706 481096073 289524565 951437174 323357007 157189010 863207186 977062956 78324008 788309875 810456639 38541888 934742423 840551482 212552625 381793022 536084432 585572203 561583887 376020475 188136207 185540316 628319479 185518175 735919467 166323452 133290412 337373947 696466432 446205992 568577822 450680314 272554425 580872522 868631597 621427243 885356779 626619514 758871779 519803294 523019098 458556939 855146690 323450807 466278448 53134297 351030666 288214421 600216785 563288185 959159977 324249089 305567223 456588168 537596625 788301455 675498484 856687347 286516676 344561871 720718759 574285772 173253498 923017288 647408862 114219713 162124207 461618150 838321119 267579984 128151511 469064822 462222601 390279621 850138388 124848540 271210511 125103629 902486718 497872805 663537386 884054473 721843831 805859567 361622003 299746343 910259516 238578021 437394059 669834936 241620915 4856156 658706945 993673488 69015028 77575998 636264450 344445685 376401183 139693231 1000481508 785700752 668183923 527363839 434960493 670231934 98931575 978331550 155484136 560966490 794028612 170570032 970059758 514228576 127332604 970798366 267904179 465568153 630246079 944096412 504305272 949961511 495801452 450139947 265578042 621862676 526596940 828573617 877971358 174242585 850828103 645514126 414790216 88776868 243084292 592095266 698455275 565185535 231696446 805813188 966502985 285730049 923090749 238446164 790658857 428470123 100364312 80357714 786343594 69509297 809367847 505881376 481980437 99289136 448407402 834538310 99214476 611423372 379394654 316762611 518196857 631826186 90270332 728138053 43131515 155623140 81037754 199316869 33742755 848142371 969130126 204818714 526374752 167814394 666694382 477417510 703305095 670411707 87442523 3560668 923342223 56315350 636394065 444574535 621897853 396895156 596982988 499684397 281865224 792099057 422965037 332201383 837202490 855785645 937716 396696029 795826103 294859229 68198637 293903682 710611899 999468186 405763021 459699312 461518782 385490273 148588402 834786438 763390080 268214058 545108124 837913472 726307834 772729734 759000897 355568186 328561600 133134511 835610313 323887845 990368557 288448772 220496491 951282900 374743694 194266306 793177606 484385123 244383515 107286166 586162120 470324058 908807219 767546558 123671474 432071711 714790252 459036935 796854875 318552304 816114105 356427131 994412447 172155715 692951780 281619812 153133508 246260430 691682892 650917530 714375329 935167524 325499461 978177700 263608279 243923165 477751253 381068434 166138899 455674931 826898723 417765085 684117461 36367041 209451023 62197713 251603716 3534307 916111112 761106809 878803278 160774023 876201869 511156267 226243879 668573482 111248480 782961995 865818264 10248794 584325158 210963392 512406512 357399644 472721712 886816842 741598141 66776947 959132106 931588331 249320425 236070412 876136216 340835785 795634327 866047858 738293069 300799767 363932354 300585096 421163904 422969208 345811286 847912754 181594447 1001209416 526160076 144873064 251320819 44236146 100832428 769125002 150149755 991279664 21962931 71290868 757532892 825321758 680690101 997876826 552313493 653298795 920268536 403998375 384723688 972379505 874784877 163639010 494132966 286569291 728568074 530272874 455012776 34551529 812102217 769748338 430937663 647523686 893805428 999398444 148153255 183026022 348436825 93395101 655293839 54035615 300476235 915636807 40559614 339713157 11781108 104316293 790004679 698392037 676844530 255352472 764011573 787745632 542562620 231633251 196336615 292380751 475212093 624839635 179705561 948825523 850781524 493121428 196435383 101534278 797085902 153316034 512260586 346515913 956936381 334373309 817760949 230746851 623149977 895303273 731741719 308870845 468578946 316587567 102495377 635909367 823223558 907261093 604636750 738976205 41184992 518153665 923213838 764924905 829806787 772757836 748385400 354098629 538689 768987055 351978356 438536494 598218695 892381307 143727654 976663061 862753701 154145090 522395320 225384413 641834656 215684193 284751820 927905788 245180017 117848491 215156231 264782796 872436144 992525967 578015047 366041438 839028425 785797485 458911408 532965883 911641886 94943858 638352102 929553507 319041060 606594584 788702856 714397206 794273455 723156723 805055185 218420223 926159646 181998765 942100906 681276257 325323681 802489611 860212761 815863723 325997301 542009342 286285045 928473205 395625370 61821809 454398817 276450559 949578393 813949166 498265473 620574803 179045177 479964823 843600301 106616811 587923235 896243199 41861218 721298617 668526038 297175870 572131355 107614789 163128764 318947867 790861182 190368231 733670488 724319831 882097118 690011818 234271647 1002366768 223790711 127194636 471130827 166188873 337820701 889781267 330494213 147134993 285310888 229760147 740939911 105763356 720010074 322476178 99589567 439902652 779395063 609036964 139369722 991235098 385119650 386418306 730804054 664311162 990354360 657025275 795043451 681850955 467703336 706580855 449053713 394026493 212906564 248500269 632364629 404164500 668861236 867074543 392795238 206511728 71714346 444383441 795794928 549010754 559180045 832255524 738660505 744671783 288387134 881513866 342365327 791272324 24137617 34974043 277258795 557028030 39485688 407498437 311217416 834198031 654054364 168155441 820175566 335241276 179399602 906082814 41374282 56385026 925101301 24860725 298464879 244959385 427366393 135664149 700076221 609746629 469454961 237277967 61391114 386937427 902152454 38142591 887828994 649219465 778296741 943915538 232948906 775226560 28533226 120464731 160631477 381006086 57117494 294447879 546164119 849083933 676913044 937991743 939193885 129293053 231998087 333970661 808759154 192032063 466769145 438278141 436493202 241697028 987498590 454919048 936983202 718460449 941320375 660791827 429568327 289615805 749605690 634258024 366176393 344468419 457123849 147867770 720110339 900673254 416155400 301415605 425902656 122653879 627483088 244560285 83234353 875222692 307585592 600174492 770943150 113059471 729347185 281948267 981702021 841433075 607170615 379966435 454372496 367061552 512559994 174082587 297882669 154036777 182793255 945480744 608954110 131873165 488204548 400560643 722372369 993139903 515202334 725435586 876202905 864216846 642225267 773462079 393719000 814707084 685208499 949293328 354307572 760765504 240531613 257457149 144345663 507825650 965221835 587897818 401702496 108145891 458308475 87828223 161323858 252641430 929710804 555335580 921854318 457485843 157173505 851797006 123355290 11783149 311661179 412040785 173233638 194985367 482391045 791349888 867355490 763398417 672696101 223745658 919499746 185374562 762253254 270232420 803857443 600767749 410778845 344668996 777036508 633191410 128933229 333173438 195448524 652936682 980875435 512156505 463759071 398616126 604317872 685760770 732734412 973655574 475011662 597171947 235161022 690750295 806005276 14753003 411802572 688669185 307026844 979988513 487429633 514008993 367896425 364794901 284227672 430486691 915387358 31814260 790048234 437600231 974268184 959817341 854793737 616280828 218890338 465309307 230519254 53263250 215048936 439331959 918550023 499699670 21344997 435097302 531838159 932647530 434094125 632712652 558668257 143646049 704033685 457447140 386403693 915657198 528278454 264956192 372148992 647082194 591702776 707282175 420665272 831104423 231974777 424303653 331963497 570052435 940392089 946968651 273522836 938280905 461243521 893284326 191789306 424160055 357490381 847422397 331127960 756574797 466692960 41482270 18609790 177647474 510586973 932304045 36016879 518476422 462178024 641591677 268774990 819580854 967574934 165690380 78077776 39563121 45645873 318529512 351920185 668426058 51114487 283643808 777991795 635666555 40332750 436201205 348130090 638831665 804993676 715318728 326188585 789779041 872057556 208408140 991950957 639986596 279279074 442444328 525208226 151780348 365249476 131008676 984216806 976518805 939857124 742627944 196736215 41203857 161072825 563550959 488388780 935810885 647414702 834270542 249037766 90911856 142246979 627406223 792063906 386097182 671419609 371296592 519077938 853705 556011359 346534537 369573672 860737874 822938665 138593458 493083472 244564038 565560503 597036626 887317785 927742663 660462845 493968600 994891576 961063327 677725247 253478443 295289195 666654010 735487160 491298806 479156815 149939707 896075764 896554600 410570147 800714125 265434821 634812960 128960293 600095348 975017586 56279537 329016058 313749805 199547276 83737721 38843717 780360416 373514487 415859583 936850582 609797284 222620051 256893380 122892268 416736090 77164918 59953666 539050307 652588693 254942729 817292173 553901462 833789943 270212814 1000182976 185597264 505411961 497189885 918859321 814582070 854802615 287449089 865153733 726889594 849515256 78311263 43676392 771109498 266788513 349014616 308367514 839303258 812626342 794704877 966284359 200703961 151832770 747751959 719470228 634201178 895502262 177011662 933531922 508518980 702901641 168018682 41236081 9985114 737658361 15290623 583130747 460715351 605920419 214304206 829312897 475371282 544009122 370048773 504105726 407896526 533480239 430928462 716909263 41982206 88647130 249068585 723891664 6461161 233325471 14450650 981333964 828917326 699644572 993412303 928483671 609211938 588648163 800017185 960042738 673548667 336684040 452504533 354985595 87058668 911797570 358802666 181388561 692523954 568559911 406812532 687476679 622761919 530563423 869619493 713163577 566925855 833404103 253034560 149488122 286207607 565043922 44707307 264565705 130400401 462019817 212632700 528858638 46151028 99294074 277378978 933142996 9948852 560403911 335226402 312710203 96069457 564790508 530600510 292418282 748588624 705082986 277969007 787377463 862193206 381788713 717706047 929612281 618726782 863879458 115593042 91913992 619638443 888801640 685860008 929007080 856353305 183305927 839042412 729874057 310617703 753701322 599546337 986971889 422667940 50932551 877728344 555953330 269021470 204285861 501050039 779163130 871892315 347471141 318345113 30065513 800355416 328343675 798768308 755714318 436683102 610580585 230193291 822876413 69060140 623919008 267419622 854860297 248766656 666245173 120005726 559450372 694542488 12783010 797220088 489383105 459775042 361813612 779626433 650132732 171863350 232608568 978194418 274366056 905473663 246096087 78399646 394607762 208310998 777839983 121792398 280395598 860178669 777482791 884409180 991178108 413978112 788863308 896929907 566165467 51569822 98158270 321350977 224322415 779372808 492942154 993623717 294872641 920254776 706259306 246460117 274683908 279597587 794981575 340881832 349596566 517244459 403419316 448138068 77209630 947616395 311966747 149212140 29443337 531888082 225211440 366340351 133721101 146650730 895341089 719034783 337416680 520611982 291238501 976170214 260027332 681237013 705857132 380597839 245254655 790878211 880499078 673153046 781371791 614568775 537870453 605743656 352653226 931269753 692184614 903313776 349347884 670149084 628428150 115063444 606332121 471114645 896336409 449242186 665705350 456427015 584057429 365193921 857177742 691475257 249384745 75866698 503267470 498294241 92344713 424544813 546727639 849374716 195714339 36705289 17883672 903386966 694705089 713063893 761669179 323588413 782162829 198606787 113764365 812263364 20924685 1463054 16723546 998275676 927112673 387556614 776053396 404284810 468891854 116290754 493835858 64473752 96204267 833004447 984996671 518164048 125972703 416299448 711772687 427861467 882761072 576886941 495029568 933748867 111809329 375310688 430751951 733569373 29062684 547397988 778154077 932911539 550364629 901297336 291761282 163474749 632438342 411556939 225103775 94756491 677219494 538473829 533126512 13390136 473010629 228363109 275451904 824251091 607393684 196080303 918531749 203356189 572703401 701369675 646968087 275973923 959500176 956720199 67973608 304271933 956776832 521756196 819224763 306620939 429726741 852159007 467418126 406246861 30369455 355855236 459228822 186427109 268282050 233705793 51611863 862372025 879591004 37431794 707734818 796685491 635278422 472365868 141543957 479954261 627368809 285917797 272552648 641016360 816260037 10190503 608339846 285494065 360698065 962585545 51846598 127644773 162484823 849176125 35625828 238758307 525245040 101625883 342858906 665449615 490173690 411628682 968253191 382234496 14148094 884201692 766393787 784946502 438159622 760334855 510605435 98050069 147427982 529277388 917462182 373469389 149503060 486142611 677745489 934575662 189531473 764623602 669665267 168725797 363378668 266644453 608581781 138647933 327852687 552292127 271091714 768374835 232270647 146614183 161821608 384241589 626397299 291846401 520325634 741616151 642886109 532623145 881842749 280598998 988964647 721489999 275848385 595452529 163297510 675984157 247756888 159430818 767079237 477002993 34956216 586376035 549814672 226579844 575544406 602713029 33571962 863772444 700883901 956208336 766877275 893918363 696360937 316394850 451183461 707361811 240556553 690863178 411392493 514594180 715217212 123470939 686974056 358240785 827195048 481827011 62643162 754177404 122154665 539235986 156747134 165291529 518525881 787948243 362502454 303436939 719745347 363993189 612530210 283295487 812573117 288068965 172799894 128154892 949034237 942431448 950182645 458407403 964519552 872702703 397981175 910133084 815384522 53886858 328493080 545062668 659413647 239227934 111467684 620400028 776882419 337561703 731656175 781353497 119848233 157268509 218873904 220326070 787482767 37525403 249614592 542583737 353523074 137521625 539398870 10138643 239449372 255568429 392927366 173187006 179460836 333054748 65376481 262455950 128170022 73830528 270158260 68394164 514542382 70013812 715326118 86805089 785633449 256379402 164392073 290098864 912838101 951866535 98306687 822900829 202115178 561069921 260225310 52995088 734671973 896934345 433232942 695049210 794488555 568769896 710093915 906697829 993067476 748835808 920325361 895599810 736241462 67131638 158591583 287200676 58113871 522057725 274436718 570689074 568582588 813341155 338086433 629489697 735580264 360511286 388136189 596821115 797924145 536660096 639920250 307329971 606495402 370511344 881732738 875479977 893559783 808588785 881408476 637510658 502279075 625627515 6665556 674564586 260957752 625061001 729191120 893205582 947468012 696004363 506304049 462652440 885104298 756033341 870011770 377567692 570762017 714620922 155793391 294924013 965384757 31885045 285101390 769779240 4368473 698721703 555067005 11619152 923114281 987461749 428681769 108899942 943170211 487682730 36724535 1453278 929816183 71691741 706996469 171936649 866002755 591663805 540364388 657877627 810644747 103232050 742232485 940344 977519036 180936293 393879788 356295503 519706064 394756050 61900929 208764791 31133038 721260371 754345227 642764529 250974929 368840162 445619698 262401820 653020590 919641115 89588932 930796158 891724262 777389088 113896669 265031826 229428622 973268729 749714541 280657539 581786739 315259106 275905102 247540601 365863673 443419780 499067268 141733028 749210980 982239061 766370809 93018237 741648553 521518318 271625251 540533187 618340623 44972941 318644346 917076468 318384839 554447106 988339789 188884468 627303700 460044598 423536671 828044260 70884771 577875943 388025674 419164277 150783175 178034552 128729783 491127130 210336929 930619880 958192544 945305175 135432864 107358613 826803357 921065617 142481916 458842936 334097349 437486469 308171938 437203537 336700914 303689450 52948020 5576837 197241594 126678643 237801443 230332294 768529024 556588333 528112181 540977191 604118123 242119961 849839104 179013664 430005467 930121112 416214551 793865036 418080948 768784388 43626369 184295394 419571688 294853962 394951023 267573856 764145047 176934870 403764308 702140985 517808332 337895201 658390780 298795854 336670623 662069658 331950775 748756098 1625343 601478960 976571897 52513280 301857165 887162775 965203906 202381074 986964830 226692583 496901664 647392556 858379807 199366239 22741736 902857954 998839299 412942435 289139071 373436696 170155874 279182144 792680270 731244718 898169586 847868138 307335660 767930311 509608165 871650287 233507633 452244992 716362299 848814642 836279671 919665682 459996151 175597324 972334318 872816925 637123487 845687615 128663762 161272584 226848011 732907433 317421396 177371871 587074884 529058918 141415988 28879737 786572319 438842615 416317505 879306775 949574086 849811396 136235079 414183216 222785409 417486108 23374810 728822040 59891561 486583423 525143395 267454727 674153966 921359517 155899027 429510880 357703542 391069748 419789478 371094031 807997235 918509013 641424552 812532032 368423008 992457938 490392889 43771971 907602102 617349067 297103238 218847618 534991710 269760119 622331745 957804153 163075938 493356473 201443537 472369133 819476456 968506748 333823161 613267284 475182565 614683135 796000049 950937184 986663896 898189892 323132780 520673594 695317461 593773568 894523397 991735788 683830831 596928792 845326206 100067769 728574785 981929187 683802421 373568813 702500895 953287864 481090153 793021265 631658682 347557271 184310799 845280816 343590050 140449993 988437738 71395303 232953772 689344823 273450517 66534222 965537576 520103606 619972227 862710672 772513686 133434803 169575481 144215026 63221675 573304776 835405546 822463527 851750507 124483414 880118300 371164149 665513266 127858198 552289452 371756014 768402068 525641468 47016820 886131708 667012998 204136954 816990672 618865693 446432877 809596578 591014486 341386298 606915596 157529602 911740408 582478864 266363107 206737189 449888627 424736133 668029872 332141681 829412342 919400902 180166811 110115618 579369521 739696057 277288781 351093022 979648195 42473351 560433006 977624452 221663198 909645776 772989208 188265050 762367668 246011025 836486683 642834701 748905548 525275146 398684719 77774622 434790219 82572603 69938219 112197178 623488843 566064511 883533382 334905584 289781972 52385732 15273046 514821207 176703853 365849460 581085046 361677817 741776046 688773965 645384546 269307545 991979909 751965457 1000919330 62309104 179024856 608426700 172056074 216694410 15070289 135850674 984314989 419377618 401319996 267163542 949219774 778365869 552484650 135141494 218283064 832388750 931404168 53743633 742692057 754986936 53258351 334942636 543454478 618114472 267240394 303592818 104373762 780990432 642062389 804830556 162023053 463542449 712749262 533195922 322061854 390903809 565598720 121730580 40666078 569805201 487216827 596085909 496270548 786531143 828171801 408371223 343775948 162274918 329668814 814427769 655273600 913704396 480986754 396140742 513030493 151630251 272102962 220573707 228818500 253674186 148911659 30237049 539510342 65409405 804725065 593328946 618866636 401853482 856673770 357745034 758510320 88475239 37692561 414214653 740365494 507436969 188921740 911829822 23142880 623034208 258677477 993162247 192761855 28984861 258811975 630919285 52361095 513919093 787816807 397524231 746349116 380937249 47043925 664660315 80500212 216856443 895419891 96020616 472619026 198656973 809152149 99066509 956721211 557618966 581047651 943889359 541652863 111576480 49196078 455000059 675564525 448117884 251538578 782260232 144539724 361596202 850745242 288927483 233281145 611518824 127945004 673554047 38836348 697712237 240999219 370203016 231390517 34825033 175497851 996108620 486743609 378547954 346928832 208168200 6256639 178720828 65044857 391217003 865916352 174856605 879797773 737300502 870509308 302127935 709134407 959726442 970220374 168285366 904767246 98874385 49918128 101859844 131134108 818150237 815481740 247859756 837838516 566816945 53698147 877135952 268692704 574887982 490219615 501911860 691197504 167989392 796645379 988138052 515055595 634596750 115770135 786357671 108935236 85709938 214200792 968586437 706052821 140133193 623763758 254609313 850639963 114205383 975134181 992682043 2775884 430157778 905055213 299087997 977308382 745557208 733928406 562914518 767803814 835394073 507123274 793086562 184635003 240344635 465500681 930078853 885221735 186406257 745479248 495709093 89526824 397248745 538244356 363060784 444526613 475366630 580696299 352624665 287648234 174516133 933054706 400729339 787880089 644612435 71446215 471975720 949739309 72590706 461307838 608601505 636760921 893612313 761807328 916892244 861742894 14705133 645096389 943179276 898623792 159755455 200410708 833866393 890977689 746705796 454983431 455627255 224557152 464374099 105662302 24060542 292986542 673733838 261702402 593318028 988328662 402316727 517835465 323549782 834458874 765995957 875654701 657442321 643849080 720522548 826131612 360248340 482632048 349114517 701702713 905462271 583615125 442882387 226413954 616011404 241686743 110295129 715047786 201481516 572526952 409263568 866177346 664150229 762643941 696477044 934857688 672049851 33039728 675702924 766273809 1000056378 282992352 604299741 448353771 303761222 259004528 313616927 788679277 868554295 409366658 53676030 697915970 111162970 649454726 478632820 371532186 394609923 499672137 92473711 836254467 180263355 71927778 486208577 760239174 994035984 106381359 13198214 417171346 352771179 207721264 365673745 458298309 717897377 285963902 723572335 376020018 675793652 508544311 741610220 703568913 616718692 860627156 432939777 250602630 390056908 984770821 341239169 952201266 298176946 272070648 772497219 357497505 580380551 888176252 831715715 350974919 782784543 779009635 104884454 283471755 863563943 763811170 503352322 891325038 541573094 351567949 872701517 75050049 402121109 451352175 281964773 177981738 857261230 717578857 370676440 790594632 864646358 503424929 116070036 28742649 408933781 773147642 114893305 217863878 206748016 273500274 584378963 846176976 340758024 220946747 470932959 209647939 916318952 352649089 273330709 728579581 192996325 425968297 184275199 481681854 314357890 765391402 394434550 6291347 157049509 807148845 179729123 945713158 441462337 41602977 585545168 398701802 578819185 105071332 428938456 83711020 950007229 527566060 305044601 615649937 932483602 595551756 324756198 368484767 846969445 494217317 370815078 961196110 150085761 341013636 688309831 608850015 187071376 843480310 418098023 104115049 259452813 654871190 192361674 836509502 154800304 365389340 853435600 400082065 189604822 807989163 671680897 427826868 516268664 68504674 843052054 751120986 235100849 758072133 715859895 156233914 563469562 479663921 322470273 924351308 998944615 691795179 893656727 633861714 824386600 560862982 52019326 458457051 160984675 457703878 138814482 773341347 136210922 235015835 614401412 239383639 126916792 325950936 253639304 595953693 583509002 673415574 779028389 317822194 979758644 506528713 197748588 405856561 889950845 777299777 663052305 670567255 686086381 873103022 200088982 104207813 105174748 211228888 312995708 988827425 687125318 912697074 175915605 669050160 18758255 793393 866662795 54751001 173981885 623204402 475426030 675251641 15352309 863836099 871281136 787596240 206760926 405564564 839327344 123121190 325176273 892056787 155867881 232870723 573662234 955512822 350112085 538792245 115413850 951625725 901131325 842886078 698860699 332976192 760389540 167322544 318444262 284763384 506188814 935791207 738510072 925108716 221512704 507689766 888857223 965629805 404507561 577110306 758129628 386305637 232421717 631125481 986129674 806548465 541116104 119252208 501287284 38000321 630284016 1819498 220490074 343823581 436997165 180172174 750199274 259931379 526943145 361678605 82823762 801088425 800215850 785699480 667821320 174753435 266404560 477235089 710318968 308597656 197171215 177984228 229866869 84419453 619613402 201893087 605922038 962233135 536098772 894804185 508143560 473594395 463307973 530734712 73559513 663432186 538707174 751708263 37060932 906785990 461208291 456142560 966964188 561893886 845935052 791011315 264454977 980603646 750916427 975760134 954233499 812716473 201312416 109836741 606020324 204446341 19228969 689976283 610953098 544859826 687935405 227197856 189930878 387963741 568473472 444049755 313376839 241249555 304484221 541680516 368962466 903061451 548716245 884492128 151465060 279968413 127388944 543759874 693638027 426436703 52864627 448039554 368757452 747389641 126272452 942394120 470203208 522290216 189959726 785299836 65505741 526679920 199783272 290416529 326534764 988466306 431436280 958779365 871104010 933912845 857673068 868524318 342204186 360735973 303289774 896513574 309271522 446548402 444775220 83932531 656100588 922329494 785932588 883369415 297692445 653724711 92762662 824113406 409965485 159746736 490132857 970494770 346099858 128056164 815810780 895113801 206397515 125208953 16960741 584784272 663321867 768311729 671859043 846480023 131762765 808044734 200916038 888352712 640599192 78423465 982185891 689516563 437034331 697315873 676730304 497731346 409378584 988677958 57374029 656116133 132468688 240462720 826220516 528041123 4513002 925311120 401074314 320653623 186204303 333568926 324771088 301866401 575858218 260557555 962213891 441941616 233181603 530153840 636960925 636371619 576289983 290103435 769293279 363034930 257592921 338053860 742740950 375898875 575342951 446532157 357670997 660348649 810767258 953801529 866787007 365652600 241350577 449750874 863642855 952557973 202672539 28735248 319157583 699731724 391744286 901943367 202741957 81822519 769697666 166090627 896015157 44429238 714158110 757678268 995989618 361441685 859007561 803802337 320532357 988532731 456704340 186791450 870964728 358342435 187511015 746810076 340770161 339753067 85547445 312303489 644996874 793203733 226397650 83055483 276631523 951036193 674031151 788369024 127342464 303633857 907463749 562854524 29047160 199204450 981776636 861130480 399020816 553087611 911676742 577242505 610760896 332752570 469263319 770298765 133005012 150135442 806572046 191535791 683376690 456958276 480405739 464587111 2668135 880623332 532067188 251603904 100477042 926830565 79298897 15176081 111477577 281253137 829082198 398875344 281178391 69429213 562181233 890697214 722156287 786928461 791077742 681645822 343956046 761188122 614521793 702979968 959348517 631600445 688119235 474626561 832975996 66997336 207029945 349767327 165754243 177401259 295605554 130123907 261470468 413103837 402467257 997381685 849475485 354054432 834337123 423200038 102509860 248387331 183059156 777393762 77332703 505133419 263267055 123787079 236397672 944982072 593938727 729139707 91717160 553394674 880727228 838356878 281826520 78332099 751292924 162026134 319521187 356933596 781101306 490695466 981046717 27068853 636291592 214815361 67140014 31598651 562057144 984066956 729982615 208988287 738399773 240032299 613601148 841523077 691694266 156334037 239196123 539437697 939777401 518108418 637723854 366076225 849932986 760165821 521939632 677105798 921531671 941081158 760363788 311313947 96172404 347539188 634071595 697095064 951487508 88859953 126093763 579394709 831969355 671883451 627402984 369245621 625477898 385268442 638630774 726387048 519503148 111330298 412460740 341075736 400071501 902241594 206253633 518783668 437382034 199989396 120202283 795436060 586224490 899689622 568124355 242968417 670864124 136706870 354372974 736794958 256062682 117612918 456199411 340445989 493031011 370651807 506486342 577421721 392054129 654235356 142855834 857256768 514637117 482500097 693705553 454021329 643168438 636141116 96713449 427680838 939552768 26272943 738295328 662953581 213859113 679628367 124319207 993977779 991232703 380322969 798965898 23042970 427143024 355680435 268685684 490596088 744838025 282418750 669188337 608169629 885108721 322605681 668897462 13048213 668931805 200326019 313950476 625344394 710156125 172503655 403681379 88334382 425139174 770469009 417329936 840808405 77212425 871789942 978969334 413256588 926036588 888146537 449255970 589305076 213066104 566598447 122057492 623699695 989341519 749928370 220063310 990963093 362098896 328544621 911258969 772857404 869613136 218680910 85200067 371840438 883708141 620868182 476927043 807303068 876700839 149916708 864585839 436512783 897068155 338309427 592404528 887744876 868116493 586200577 10092715 759774539 846439010 409857105 818114414 997778241 462390899 175308360 527384382 539466325 998037661 288121174 732943090 701728950 861847296 193165690 408532009 501228458 817173912 470925828 5925251 471100354 249397318 31755355 247575257 295753870 172102901 659325457 965962030 521480633 602906608 969053795 379716693 982817702 611156560 241426812 624739507 936848306 333327672 324728580 951268005 560174380 174718980 684710525 177580655 894400232 461008296 970944924 611938847 962152772 985184804 134638807 577186169 398256708 368746148 802615184 630695987 122016987 188326022 109698147 750288522 592577839 417311690 151469786 605657499 930681370 218934370 306791896 886958792 368964227 686263800 139135113 771682927 63482413 831161701 671185601 195625930 56581799 634684435 189826850 523288422 716346802 7704857 703661802 766607677 921701938 614248617 180012613 102134120 285826364 623431922 56969333 793033253 769312822 263748340 900304740 520389654 461226475 655598433 44492553 584585153 658774928 584278450 873618171 587206466 801206803 409937360 519499541 810863478 884236994 674650209 368425058 441797916 475288455 764832300 910939875 625628202 112708375 939161471 704396760 545768956 795408869 565405803 224101876 564003314 573070872 318003603 204717258 115646441 792198876 733126402 626886259 605971069 691800768 854271943 465826722 638151642 30822445 99788368 330779072 573246448 921087623 426684766 354898734 784781033 36678008 423235953 26336931 749785134 606576821 379242569 463869802 710587305 583450265 817847345 479554131 532551929 169585460 196913749 937033098 758129578 926928062 820088862 392332350 482055909 897693598 106480517 598103026 15340069 193053232 405533860 51287791 247254843 823368098 53004555 390407155 594069130 862921996 309785460 508677370 782160863 544746514 383502910 842648760 863508999 511810444 556103458 771596552 874050122 46760736 30735846 784006886 697230447 655610558 223817496 253602477 926387095 787790313 951391524 787899800 739790729 258997281 149114609 426518748 422068744 6761988 732967570 22437009 279128737 896848909 381129202 65531890 761619462 893029536 314808258 657725500 747715685 617175610 758495202 740029509 622395730 49342114 944911428 680449922 272343551 546065564 324957112 406860985 742174657 959051641 702367038 784083233 965351471 290172493 757554955 349214014 880433152 371829797 716652642 596325585 678356226 87988599 755446990 994288217 30549491 257997832 401662453 218922045 953802301 713375596 290597940 781903476 528201767 660760538 129764244 376470380 72258867 623720134 748406260 73048387 609387179 264358471 49393592 693643334 30477510 383459075 467874233 248571584 73175262 630934555 968628496 451520757 802975374 113170746 638188000 556016007 358892768 402074877 494167309 758537429 115282523 296407160 154956863 738189741 930841010 156492136 286713660 805091589 370837003 335738736 955362140 719737315 864490850 126447886 235473727 788939587 719214657 936807583 560448334 447311186 980897709 842653788 998548803 638527659 72297573 745726841 231679765 268977555 37427270 883829430 385729800 727601468 661613882 703109284 380032068 923742456 857536055 303049332 410473249 89407601 44963511 495147007 964628765 323589494 545137507 509271729 21150593 55150068 229222213 776281306 352299987 731608811 173410385 421592114 77298666 336935816 740159545 297371422 472284853 460984606 798214881 129065553 43707638 534212174 197406291 104358751 997276719 403989357 21765134 648979310 762580931 560449675 960429135 186761897 472985465 905155597 109359840 472002063 929145516 204629701 721144135 935324135 66729096 712852108 547199792 531815977 325153180 424237408 166739619 412886999 140058414 415816939 343650636 964048893 502746494 201827549 71995198 142350330 215606026 783799639 74889432 971854728 598993059 815991508 473162863 437180476 636602014 144874741 260247709 727528859 312462362 488634267 40925251 969138147 414008342 997619004 342217702 157208738 237011432 860070662 1001148591 287328487 3694811 587384741 696530039 31512602 505592886 550046308 740549327 607388221 136491037 360284013 240798727 131015194 105908405 707627697 359659742 941458446 70793333 268050539 293821158 681470866 172605312 528801426 986366736 957941869 717919370 864605087 78811075 440963641 496146420 93618962 626742589 862606466 71476347 991263122 899397846 514450895 863218109 727763143 515338080 393668313 579316740 799516916 251092709 369502369 337282376 195851502 818871810 500189685 360610688 405688125 256259345 681079649 840600694 10694287 921997209 120045300 527104068 454016242 423295844 691046111 428767894 486533940 516205021 260958087 408986190 219169686 110829859 899298458 166680864 708687021 679249856 499838931 515802822 631296015 815993710 224194584 229546927 257364207 826225664 602203786 251110501 116724113 167938702 439244805 825599273 358500892 729125660 434141831 442631043 16942284 630855201 446042127 134009494 543959883 554458779 184434811 700662192 73596246 3734796 340722785 649751552 644938123 911728966 47516029 163362004 604854973 43927747 725635783 593849689 426358928 391500159 632166920 899549688 492070048 76785583 9305503 730069657 945920818 525944152 650997245 793071256 530354867 458988161 263841039 286467067 833253479 325889326 163634067 623466251 493819535 337071835 592639409 338949346 704998535 513310073 126267410 455995979 634403688 94817763 74244729 750457236 449093667 220134509 301918392 86917223 197570297 82339297 358543692 906638906 632172449 394090753 178530730 472640570 346805189 533316932 670542516 361600630 816910189 48701414 859599231 986488243 172458499 849286936 542623548 943193102 243324078 821518560 472494841 550763956 648982350 783462254 483085463 297125466 359056324 568032963 709099753 456521478 686547157 522195704 717109616 805654924 29851077 683111817 295150794 139619678 672932573 873148136 706306252 690357022 747930941 633383113 320755870 702177108 79142557 561844036 50545887 994396518 865714189 674812309 431127659 112520081 653764812 363199579 881083586 346268401 37829159 681520022 599420151 464182444 31771434 4663949 994169393 177936124 606238934 218723874 716996361 417376962 670725579 648090871 588736088 777057223 835726222 536855668 989418227 963697583 580303338 338756146 840643529 87500607 224702940 492489536 701738480 611817629 679441307 383057395 49745523 903401168 35410259 860308114 903914359 656799300 954118962 993397385 579116848 308378638 193664717 741238828 253412903 367686631 364805021 123513466 247362010 806638688 123422655 531261313 576089987 422134628 856574526 858400798 8896267 850178316 605553148 201962636 73034781 582061523 615266881 606749444 802436376 163170484 305952719 517688507 437076626 979878865 761149238 979499781 1000930554 772097558 339988234 588248451 980207006 151629852 351116150 117882418 514363401 486810385 873957999 256739884 825303361 231364905 262904821 706468598 589058321 670058138 864407920 63540109 19152890 487380734 187660479 505117692 899809630 331905978 391387565 382181524 898501689 411037341 496122951 856953916 101572926 256725887 804312383 503718244 522178062 708856444 267987258 991851288 398058112 104373271 502147543 548219404 523811449 756639120 170907854 653672276 542461927 666003689 823350002 299326106 730997673 386528223 838484688 82461378 520090725 912213719 754561602 311815238 955090787 737511645 462373284 490240910 860930776 313393807 320879945 602211362 308336339 557780242 683242385 526038992 859034425 585141044 995831806 872983232 555830918 880891851 421494432 77577901 166373669 551881218 308996860 799223890 440785548 186499724 986971974 89727923 581596727 679994614 353068713 251302668 816839402 494436962 889895463 947528939 826295090 10141037 128303752 315320205 70840835 358255781 104448257 118247267 186843307 339768956 368372432 514362426 694630875 304901662 332383525 425171833 933663487 476506225 880350321 787317025 951616373 195973466 215379909 452769800 906058775 537993204 275681698 225527974 478833546 453764783 475803027 305688375 102283259 197049053 694433897 627208959 700837447 19893139 716296731 27304141 740270500 857577117 696092357 545904192 576548688 215363268 750312685 503831678 459777307 665179739 377392266 520945480 148452244 552895242 749583110 192039447 318886584 112590078 371151401 523731079 274762620 712632122 888582133 265986666 652254020 262777749 422612729 226181493 970014544 663095248 756294224 766062119 523691967 547442434 349661750 686733986 155960957 157426071 937039472 110645832 530192508 745573493 20471526 19672054 27917701 40763747 635656622 321645670 117550962 529399572 757075762 435051557 167162897 386611702 728158823 391875018 63355412 290653383 811068914 85346140 137450685 886932224 770332502 536998821 687909009 367105603 128238502 286775720 760474790 354513901 411581706 294980136 373305992 24773842 331782343 114163120 351696733 405125103 377538928 478158385 513015232 756367939 628643773 252368930 140814523 317680929 11378034 748199978 591132668 886738565 733761870 943261964 871573780 422001271 185126250 334062427 339111464 614163910 789385042 583350980 551027753 238526570 646709891 824213403 871239281 791251155 289418260 99397729 228103887 203342034 279903088 422090124 347069266 393023232 282094718 381852115 588654282 730853433 16364393 733047747 203738996 28773502 266486726 219192484 950434141 470998212 643723254 368355253 41521340 838183967 307419646 720102990 812552903 422883697 977834175 92503824 96651281 535195507 685851798 86660741 380515882 691386813 369270849 1404928 954359901 853956941 283313503 441382737 877292445 435693343 115248480 212636910 803391804 261493122 455666133 407476206 355610701 750055393 653784545 770908100 557522454 962965521 598914586 885419313 809133503 898682952 294174664 928179092 633405398 633887168 267532318 933808380 770442688 699648886 701055070 574196142 643378836 26126540 970496715 278698528 105065731 611699944 875568240 984909997 555738210 242878351 448200244 330160460 379221566 448787400 787490068 871042976 955489246 534725388 395992283 326799268 937569408 843952989 919351084 738507994 722422771 491790426 264496888 435275362 847831375 971397659 863562264 817940265 975734099 512368121 419935833 320375646 94427983 383673793 553833103 531233239 457510860 436609879 155406928 600902480 658297784 907580924 652738217 816089401 678407390 152635227 854492983 971857795 88717990 212642115 278481452 584713104 353554545 411560354 17929090 966384708 381447004 926011046 894529205 530814048 967476752 926556074 543411806 317858540 156201731 280089027 381932311 719952306 950776463 806413023 968000026 643101315 283504257 273531650 131023435 597690572 609543901 464803342 144050668 800091459 88273501 66697665 559003348 892932386 603655470 144388210 623845120 273492069 553431569 170979890 623939504 820434657 814716744 365628208 147410886 995332369 988218264 541502300 74860567 995041716 834005019 487821605 874350345 202776236 701946918 597179681 680375329 843938180 500354998 602965637 432745040 107917754 808073918 445701883 145948636 137553255 232656547 190086491 499118343 191535457 870562300 210721770 208363653 155534553 188669362 64431724 18082640 187143629 117916202 331802587 711791233 746187004 407989777 367657955 914464949 387791786 597838710 214472718 596458139 395704941 761453872 167456327 727261654 153419365 70563934 679292123 169009743 62184283 513340437 154973249 131583305 383785257 771366101 598655858 818397372 557502547 240730135 503139363 105737301 55196220 740965368 600715626 164258048 319744788 977724710 588185998 366184889 465942853 174427404 255352033 150341745 42701054 817274122 940118218 419031347 201082126 619518308 681628676 316002010 539445032 99919961 424269213 164311824 329884372 657519464 78083054 612409452 877074819 685125132 497444003 590470209 551751180 80368811 725285496 480921668 265977535 36411849 474108734 978887703 920613846 701910164 381046554 437605837 169821284 387916965 664304949 724674879 176361400 148543553 964760398 310184847 674651595 779142012 393634878 545651240 936769936 380690466 917763235 178243236 474383862 156446945 907899219 215916192 162635674 250268351 109787690 268079548 229233221 381569333 831534560 231768064 533893914 920528755 607695051 753729970 606741356 780959663 418131350 656476784 305446831 263612737 628971923 426828654 42660554 931538990 736284181 222535204 10992863 677389492 137467835 408050335 189659358 408281268 490276259 874910345 717452433 317224632 343432787 948254491 537201701 996212319 318118550 872476462 733268354 165500710 389414367 431578953 494971643 881009820 439164297 554631223 46020423 511834489 776437452 303379276 910074437 893448691 724964335 116920734 274929507 907466556 569764402 672729776 953450477 206359517 525918715 139766437 666695430 822066735 627278221 505400541 706840440 913341600 981782126 936006870 161744722 799052305 686366201 359857285 886307943 68381112 422610865 128509678 115101069 985841179 526537778 574640409 605619811 320623302 466011326 56412215 12859181 996773317 257257826 460066002 371320917 58305142 338974460 809713519 700228719 250877976 946055437 260816666 887126550 749566587 877214542 302475489 444986894 857905323 150141333 93036710 49769662 600294271 49329086 514263949 917202703 25193716 886037828 223293298 51286472 464495337 900229515 517954104 867495648 82160103 86141568 220624020 504437515 661851260 529298617 78755275 361147160 723108013 138016451 412779610 51796750 165811762 809148695 756871660 676315824 958627740 218600328 48884536 327727322 482790011 751234952 999745944 431732961 52380323 351660483 655068129 382595017 858297980 505391756 746803906 447457107 197370041 855918973 66363651 843497773 247555332 277327921 584224920 408419592 370492766 289409337 906396199 340523888 349667671 347942600 221920471 591083058 708977715 513250327 117284188 641185609 748345791 844179053 646004482 586794063 872771378 739547836 147950325 484445094 434454524 218953835 868617085 933507700 463090160 596485075 983193344 502651243 872977981 840408049 974108290 124518210 877461479 737924360 668365032 721172681 981068248 289971400 462540974 64439036 54288264 595360866 828896076 314250009 133782882 658048992 126345441 843707319 918209164 629891412 192368247 171138632 738334015 559448098 440196628 574350083 752613714 614680887 125779104 218397294 441906670 404927805 846719943 99857404 500710920 111413762 203120884 150186205 336206464 999841835 652433087 770502359 768860624 48666997 320451295 780949740 558767497 432495942 679438959 855887269 142351795 585789302 673905185 46884716 279296979 90300810 173753312 290602843 146583039 832860127 869632256 1480046 49643829 784358969 81610296 987322525 104489146 208559632 138655310 451442376 954317332 916104697 193855399 553983897 72509091 919695279 403036338 713776913 214101107 472142236 812739446 342668292 892722029 657862196 429436974 714019574 38722399 35053432 714447624 366045526 377242459 811840274 540340480 768739935 270893361 143749208 6305873 76703162 894008615 33756338 637518774 484843607 389340233 293281178 912081823 421207168 780700153 488198953 811027738 811068966 567706834 985215879 421145702 52618050 171036217 896280092 899380134 467764792 510328961 435003476 900259050 710275815 101410229 423476721 439293838 72975451 448711633 536370785 93465903 199592466 238660310 983776031 851406512 362108614 324372806 754641288 119521122 786692999 920926580 363206497 477687083 524316932 247298668 841183293 957065241 171054644 348439235 400507520 211388652 479642061 688344146 401134382 193748211 247286693 970570000 937783668 774592766 443922411 640921990 591363989 782953991 844836812 724971936 269855174 211320858 243897214 758139572 964035534 988875098 889831124 790251970 979451517 675502977 232407283 160976270 454993484 308294984 444121029 631249529 447069699 937237919 610143343 350504150 68704735 435948197 472735491 392729247 648630103 13186598 85535122 120143218 874699319 25166795 859790113 674390475 257915435 751097299 920133140 116503265 958634168 42037566 517416053 355829585 847295104 244430045 87987010 520233556 655909061 640188697 691226064 508486560 760755119 541331757 619154215 171407210 482873316 209601057 466249617 635079173 79590727 551562228 826002065 24869050 759468226 171616487 952694363 621766283 784748449 920348131 332875803 997339622 41511112 889003599 978841050 96234142 602403466 350663197 274770140 521000784 262183695 276398178 214806904 705534015 669567282 742293763 366574219 262234535 869746941 164657370 215864232 856491280 881289097 418482861 591670622 716904953 118633135 900111820 689631492 9864299 536539373 258597363 385814556 54609267 433289965 716212705 246571648 355547622 956233514 434506658 297915761 355049115 383903862 244537110 507349590 904883642 932785708 288002761 76545292 430272712 312846682 922709197 62596233 609519250 119917108 774402740 447939028 304149486 418484521 890062722 588194245 998657287 74564658 274643158 973149538 42074930 220653303 359595500 980358887 603497410 687068268 42452237 665494884 712677484 126047215 486411322 376602159 647752746 522916608 137170880 18665273 281265929 675948647 176832896 692111503 503584200 557181097 599990813 861115142 534045426 456476316 777524811 417350432 513797010 96424612 5294035 452035338 256394391 781824947 662316833 888954311 26215774 967840475 303280716 803741036 569511335 354233692 89780994 871745086 611771355 61382488 65528078 348345603 270975520 960785287 414414453 464751572 114640104 995661780 573751223 4381549 864191788 191536489 608294288 619206287 916706445 523979872 448556618 504532166 317369286 50496496 82186417 821725326 508618270 22222171 535826519 285770123 787942239 778909354 598108415 45300482 977642556 620801558 166070680 579196899 793767318 13293828 327404586 254923000 227807201 554648713 879656218 999515909 628778954 566198054 763057424 138863952 352527525 754733810 159280901 161429160 315341315 429599394 614021463 618746081 672383565 773758925 548294305 465739871 954702930 934864920 391204264 38922067 846099019 290683049 679029805 66507946 717775761 493507607 78308230 293311794 423030446 101213489 469976917 234975910 458011660 867072319 479479931 89429281 721994677 724438987 79103509 874750742 489238192 659340595 573818100 873696457 4090227 797584217 303011878 189761157 619527517 256339302 872837426 33232506 84097948 288578545 418119160 988294201 732059228 516127367 119624530 881394373 293547806 720450989 627163836 187399685 905291051 828238176 9955806 762966544 916183340 510297200 455597683 472632332 713290312 108461671 163620832 821223981 407368934 369465553 668563760 569336801 711133135 705042781 803890227 814836509 613519811 402177267 551496024 940273518 566325544 818370680 526215281 881165064 446538649 863933790 33309949 860929150 783549671 410557210 754323029 374566431 441359019 244681638 460617247 818623326 769406560 319361195 295045334 647866219 270964847 913633880 732692871 581257568 151230413 319491643 590123239 178757466 830441807 47994295 863506458 165061532 175290956 824669569 123022457 684141435 68799270 424731017 966950520 715165115 799896067 762252678 768809093 364737864 179655410 392060970 769878235 258827439 388419462 326725003 443226057 602745039 678414384 361076498 343592038 846606576 304673486 857214020 808864823 368645650 358565396 578205855 54963768 460214527 999825122 224381868 427559665 811379313 445462123 217530107 842807988 816439337 18932681 90628014 569622482 269713575 817098440 108183564 948320223 684454287 183634907 510912769 545172441 476124064 167254617 497171745 815294542 607596291 928555894 202972687 901323825 684833324 405032303 787808378 955729484 547634970 153804710 782159768 861451577 176971305 207537567 738943263 104286140 285172432 830046142 876644495 527420108 164341502 1002046818 101580397 761868354 876383061 341929956 635350914 443702917 432708084 76481965 374979097 242259036 763444757 550769230 714909867 248855566 16185682 680691117 253619230 441935302 912498266 644839326 64162292 382104604 511116053 821186379 736330300 465619503 820542512 564079295 376230851 966840040 959452071 18817569 325319398 642567822 222214304 235386796 45302871 713651599 504471967 908994727 795285487 628327926 216391513 841919947 67141795 208531023 899197674 614640437 829205105 847758176 349412794 838439548 232580244 557914142 68764907 450216447 735396746 595298460 188890439 761941338 788825230 753177504 668032481 183744941 17098120 330231063 985740304 801320399 778194254 566661887 958314221 416530874 744950026 622290710 509261080 236559042 23557293 945173431 561968118 380699254 231665629 271961557 804815312 38366525 976025434 808015454 566288575 174213015 81310372 971715585 357654398 480365768 366994967 11396719 559955639 338971034 844732141 732932330 220199043 295730131 752247268 80084422 158741236 89294360 197307676 213898863 793969349 197492246 403663796 682298117 184803188 582254540 244807546 46596081 567825611 38034311 316428151 558917712 946377793 657838096 831143073 242876679 754004678 869241138 998717613 908081499 785776192 734947013 453141019 210235157 463641919 489692586 164021705 208940198 591511542 420674518 298618521 699997339 128901208 781427836 918735742 9934776 441821611 713208711 696686022 68644122 262014814 562990076 322121657 574892588 383455209 609396806 229056598 283466782 773227029 254361428 1861390 826211986 759817075 404255548 596679519 872923863 302004751 907705054 187618337 660558817 253013679 627099274 17942655 896710303 128638535 245216072 908999645 873569417 711744613 958709618 13378252 701786825 695612688 65264584 184712327 719079745 458855783 581886254 441292321 572660029 586098796 691234151 129742315 898639562 743368938 322198922 591007474 723199966 960791191 955269125 489142447 831522325 362990725 40762127 94166595 251008253 887787679 129107217 109398981 402009039 457186278 929133212 921076879 97212735 322993568 223735295 743229849 517964157 536977696 855073576 388969898 158156038 60185495 67393032 212118511 291795183 158628433 650842345 40933017 36718932 32074065 490350195 81948524 200376857 906786973 794948401 853472201 696352731 937868608 811565696 815518119 439041925 343725567 275011865 227434253 566538583 639863415 182122697 248538820 756453872 234087318 154631298 629572298 294848592 273806824 516440293 772023225 28577500 130213022 198388785 994652088 148126274 906452800 358990387 316435167 727849501 726963623 269465094 878089672 936758213 970798192 743044178 756224919 346897190 830528159 226022807 562135237 857230236 984527737 662806839 899002478 623137501 349656694 723163344 523703175 567812986 364358839 76553198 445294376 969302758 136324952 167208401 722423883 237335019 919066279 743343408 768006888 383490294 721887051 523243973 17931998 92085391 719643030 952293529 202614259 863679809 797241380 704013822 586308540 903972078 738570054 327252368 477191741 856761420 787873616 349357853 198052340 295647575 508887752 938787635 970955637 775990456 989307250 608938815 367111672 863811103 478278377 422416004 241877083 222036447 840818817 4677320 153456433 221183412 698458414 20445916 695645754 710656018 730032888 106641014 269641433 925340294 925729 587892742 371073053 574451812 601983674 304626012 186178793 41716367 318908879 700830961 132614847 812522069 618951667 546418940 681000270 121003265 156987111 782919131 833997513 200282445 459947748 220100103 449195890 910437301 284261643 825116870 407167255 771996285 40074699 460616001 823183532 47103376 211946842 303066998 265029743 992808306 454311731 690228352 812696189 574028988 897628846 26989067 738858436 682449028 666029888 164661212 1702868 991109551 941842766 422739196 777190659 394425575 778483960 919601992 668033924 580530306 385505292 453312579 458786146 15683388 75649099 553201995 119377391 702932895 732939925 348938922 403343080 86881828 162671079 909660570 115696389 906589851 863939106 285688303 612767749 556440336 947965219 41414810 586996349 800941763 355489186 548926964 799474365 899501124 167053721 533386816 972934301 959417961 437147686 315189174 579427345 728750439 892598777 376091637 427610839 322881610 127685685 367776518 409541766 974836245 956799965 174018965 668246372 771915891 169631852 120358967 322261223 582494782 416964768 206013995 60848321 546414878 239374461 108619055 805580322 268196282 544200732 335534654 199929900 973520230 702770832 580126680 694678076 679627446 475513346 754489233 884543091 672058495 72244150 498155357 205158587 787906391 835229924 151672431 707298331 156379704 462777566 406847551 646519951 169558745 412880943 835172418 292041416 833670873 570627275 193943731 261039944 656636779 950457573 346403685 692606979 543804116 418861190 564726719 103157465 889129786 899803916 553960138 673141042 642084619 67186228 613094412 244511179 238324971 107833497 687860140 433096690 167605289 484676253 181478143 375009245 15634550 582729836 213432804 794961407 589339797 362853087 47269541 183456304 659124581 502684606 443671295 836872236 95062084 417637330 396819593 506169011 879808033 220789287 543315097 531622805 121187126 956885252 498565916 272704420 668999082 834364457 341043396 851298717 195263839 899648037 850642117 555582430 413627988 421375984 362152185 24009227 311058613 844791051 337057566 199921524 119113069 37359289 175985852 536508767 544923069 916178750 962734364 824123185 174773690 658214368 33036936 51162705 335989885 730062401 919175291 875425490 27130495 173124731 830049040 412953037 513530681 214556031 514198881 140647074 452216226 356419984 532231666 787719464 795291531 66743450 554721988 957829913 771491460 147340565 443170630 127933941 364851213 261905613 385705426 525464616 634278886 257085483 246860950 175080434 202486396 251872880 985629043 595154361 154251462 535113308 658372788 112675391 767538783 827811407 262589838 985758657 946879481 839880204 56635520 691833761 986049813 233196687 546896728 183725230 605270379 687696218 64292420 586116671 259095710 610844359 944046825 673021904 839737013 237398871 844599822 436629362 942623911 17280879 144003827 237331759 701318515 693935379 965262030 346089456 482266856 252423297 277457457 454297069 406494022 654952067 902344997 476474986 851117917 640841663 86845868 394147334 42681706 525192255 388832742 858125068 158211424 513034501 60686252 262488481 285729536 472064452 652505694 766477630 711514690 840640944 213916580 608287212 592579898 57888715 504072181 268219065 834322569 462113020 517673489 512288235 823050317 366173111 899623042 427698530 994895687 899554029 595709691 428284080 384563297 156122518 931480376 804530502 13620007 996850826 577511992 897689003 668820753 73254451 473857595 23318766 625742341 828327425 778327015 258211098 940196404 90780372 596273435 256226397 347167469 796243806 420614369 312073055 779821130 82262138 212921118 872043457 583745582 94136247 390579993 395281736 19456515 289762474 558550460 220255338 883354282 135786122 441950292 350623652 459615515 210679135 201884118 942651297 662927180 280514317 596948875 138188917 798003965 482222625 875851482 655156739 152539891 493269861 377492090 33316425 518313321 923081529 4215187 360535396 490655971 86979070 969332394 339235914 238260525 735729706 586451478 114807004 165950767 533221353 151214975 59720385 985811368 283464451 121923370 335804123 801271611 206505777 162828494 762124156 507794634 317388613 728821814 841802345 728917580 385473537 800622325 960222243 811133194 115446438 31329413 801367133 458655460 913359632 399728369 476489426 603848323 926300987 585373632 798316996 491025770 891443840 643772024 162111126 974615143 681314365 818689067 658945865 905533697 231177034 2661142 170101030 831162859 102559551 329020088 619492370 821495604 907318183 577750270 914582315 250790184 455776035 82373468 691106974 879746088 685494737 387256075 501210386 977557526 283391135 871118457 712789683 821015234 439975595 279805046 959983769 300785934 992221198 257699046 930825356 592941247 505138524 144966147 965338066 332726581 473684329 657079540 74071961 381031131 783659441 852866418 102289395 72198944 889084928 51840066 330548948 119642798 322405353 605705517 24617348 863481909 472806619 418107390 652521654 571549942 459008078 873041168 253300177 159661504 297274139 347536743 424269019 305430727 204815750 901973640 717383063 666906072 350538407 403406908 329188739 933302937 115037034 690938998 935967469 40943402 439031762 351698857 289426448 706563159 942889714 465052709 25007491 995152108 723656294 498716997 78097794 351978743 965332892 763470035 648515291 348746164 913161324 723556016 34668092 701540323 275661829 748545215 461938428 407464523 534283183 854439315 660930749 512982455 770795461 307454737 172359278 487805787 773516707 404611543 162963756 776997596 603463089 972552740 552171437 564544149 885115779 165303521 693046684 642151627 866913488 410695092 657773171 597150061 137320719 479066072 244772085 227128484 832845459 283479035 308158281 689594015 396000741 147305666 248101010 463048978 560894836 255192660 424752206 58422807 16034930 490305773 939012368 670855483 467556220 437981327 508175428 540095127 30084000 283927781 699585978 134481804 120168735 523739874 175381897 574669164 709821867 789321975 702630242 1079562 265974466 112444250 139812629 644026313 394814527 992241655 930221440 289497797 480740583 993504733 790395174 709703004 541686300 854802530 989119458 455614306 154193636 574342218 23739902 469366273 839852962 667334878 837460431 100485407 234175429 941873785 150417967 981721422 626397426 288327964 862266774 338581441 955244446 248042902 875355477 893263464 909257045 883924494 222415872 988419856 717235599 78769040 809296445 219029731 607130038 962896637 377354900 919328511 960308311 352262484 81733719 297486861 275998410 72521752 445372940 492845932 686055168 123570967 403968867 47385585 262357429 366893835 920582714 556090787 954158401 89657353 487861303 149111858 734424383 393777855 961713169 359290457 500387440 972865638 564970155 714353351 656323520 362002091 141810000 29941452 400512078 675406556 256638711 5273654 328134505 926401244 258809599 870967152 133633714 593449638 775406484 202811290 641224990 953801632 654838093 215568329 601633155 171996928 615340443 185723135 414691468 403676014 137026467 745107570 701857096 698372524 820972648 51747911 915334711 212149571 917920955 697824251 242437143 115607995 998564 519769185 31069635 597894516 46173446 567082347 261225918 698963028 250235054 615652834 558321723 138254922 123256374 700719646 441505131 222188133 521652649 184736424 656952008 686931575 317743102 741152885 149770905 717968967 437924105 259842516 418720675 965362673 551482501 533228072 80872033 737018776 162102482 452027517 224022420 841040239 616847527 670230861 244568316 842037628 568198357 815889272 257450180 936726198 226455279 318814688 35229700 14883141 868478073 98697742 409231588 729432396 120980285 873808127 544370400 923364065 633743156 934696305 66865321 667256063 996671894 128278482 470885431 395465786 337827539 606691569 644904983 419410432 235113643 166100072 823174733 141483634 750544705 498078707 505619295 706256297 852737841 414534609 921830376 455132950 955939970 69256971 165836489 354755825 707104944 882034497 973000427 464494286 973902730 756993393 875940029 363843702 875628042 585192347 697726481 116255417 563576686 750918720 326747886 137933418 484343470 184304532 407617883 646832692 152695293 690169152 322075166 903857027 93203003 179287818 816321352 973664704 236016989 563130034 998774018 391015966 128996806 820778654 619300758 217670192 886630595 624983010 164657849 54751654 309332898 678028231 699756978 594649134 11522383 201251514 536206688 899904590 457230574 610738794 79495903 626763684 605366330 658846950 912623328 81825524 343976418 572566885 378625660 262913118 703231132 475673321 208506041 22854114 114602381 319714915 424120066 713839609 833270439 869411240 669226529 393832493 528040687 886083117 555748101 543951016 868157362 934837596 816538265 568658428 684694249 171619171 199026336 754172754 329216068 152784421 226641769 16235817 805638329 858906639 839544681 539671515 146937002 715810982 643362241 870850618 894181590 906769799 348855991 417902314 282207749 878991702 314907930 432272749 984464067 260546555 99177295 255198620 5100364 203175854 176609486 78924873 602765901 431717285 6804204 708134693 380270113 142262658 682845577 49954876 312891284 973549174 334356787 713821397 501854609 664150404 908729825 253028438 503027415 980595699 194903888 276938315 798383781 949181815 469093591 679431054 15585202 302180076 703604113 944906001 401404065 584209569 949358194 498773695 812684836 553773782 40092927 369196062 388452383 47331612 739810129 62981898 954140117 663993881 290419690 263739462 961807801 556241292 920784097 131344089 172054228 927153544 192222748 274750678 483460066 967563681 105536318 713122473 715834705 420938603 455096275 582693406 628641481 343847248 81574283 937002079 86002275 7028598 589689338 397756048 931910551 339873158 303110515 956925100 14426380 116664335 143548171 19811636 72932874 354857487 448516184 997219418 718737194 648326657 253602946 723056769 377788112 533072953 409276874 539390995 923694903 787199157 993127837 904779405 944816690 17489970 114461201 420464184 723113425 794555930 274661027 122151637 103798172 419461448 887495736 514661528 299809003 735245686 823716620 409357483 573739745 835931819 920164634 83783937 53680924 814722740 602722843 313108123 961225045 116133716 692852864 507523261 31002308 776227646 472799635 939468224 869637381 814989055 138990041 658113359 903163465 17031518 280188668 797563092 453102306 783595673 546240013 831712853 77219186 158430058 50280359 423749116 473399295 70736654 720971217 171678495 432865804 941927825 355595572 352248481 646289343 303843378 239413728 653313281 61270684 592712952 795688412 826089922 451694106 795829528 515951033 194143974 672958673 409016984 826442902 757574393 83670777 867727196 10120459 893299820 671063875 667514024 63320198 806220455 604339921 558730976 966100349 306395604 245949363 670557162 708654820 607569829 169104462 978249446 942301260 763424879 434205915 595295908 530447541 606664524 752341804 211822769 188311027 714300320 360094289 35906716 903949960 542741804 484848772 168576453 673555114 946706239 730832888 676990615 433300691 455706486 406454459 30971398 573540305 162189065 304220329 836309340 741610739 90892783 831395623 704575038 330854880 315119654 252184840 46229393 9562942 360261290 158742920 482243412 889809889 499581324 879464197 193179996 472796481 285712424 715588780 985397585 230302299 688671491 33639763 946785107 625204708 186987073 596796481 398364343 385727007 777318185 675949585 669216021 917584727 814029185 386101450 772561574 547412299 34541644 422833474 132394172 956477487 195923558 621272752 709581018 734178722 403874300 602219320 388718954 273937842 719223812 333014191 234093654 599893862 749690804 396200018 235483626 574658035 221709576 795384780 507631512 796243793 248387648 947689514 872545482 938210927 850935474 415546288 618219039 786819868 733152265 944505392 486256350 115896838 51056541 436467999 828615654 591748802 73037258 47068342 53983598 667292164 628720956 951080213 299822038 865695968 990026299 111543488 393581986 113084300 196391123 647345453 391705492 166755761 415752457 561909055 915443139 553374162 236874457 503224874 309652362 798390373 465138045 769928191 894277979 994209410 787158238 906116479 150652796 533164389 929897916 180788793 497044854 557980278 900078592 691743530 748853177 147745604 15727999 741875217 80341790 828214343 118868829 162787792 562616257 510206756 696730104 298620538 413161706 24759155 667867941 201000804 763886241 490257084 466163545 555849433 585422737 654862742 203632417 489261308 206009254 608955105 864353969 132087608 109810649 489341418 563131442 276923342 251290641 652504990 780566781 230768391 702401119 502650680 211245224 896706540 289736566 332861721 448868096 633938758 327587545 298106928 551281260 296467309 903075693 296627358 589116498 322955262 486031383 867014834 669548505 500936896 758380539 917700913 960163217 724446897 614026662 703428685 682082166 383052455 485987391 385716882 82788090 818751329 941256824 277137170 249213998 475121033 514493286 284920048 366424045 107232985 183751695 959216883 814868530 405722137 820186509 99324274 3814219 660217144 39717025 543284439 165976127 706519072 363220465 277282888 61371931 300423888 488575233 71378283 373144934 880668328 371267924 647398419 487155627 626551247 948162417 659465643 295907941 704283046 630116352 293890106 594248796 534635175 611678956 7310999 586267387 349232089 549632765 449764399 236564274 974981458 167434999 132702496 170771617 269018649 139935355 470234192 353428547 799298684 891635633 528661176 988781772 660269921 668765761 613595078 163718634 584405 661323459 20837130 264274314 997898109 260031167 858117067 933911302 99851753 529914848 66263974 40908835 7300688 73533172 154213784 49242645 302609711 267373162 802345269 575427380 296961998 569336332 858962087 798371365 53569380 705385350 742183837 909353937 641941552 607434654 743865745 286105797 931778219 602486884 114822642 35719825 818832382 75989998 69850192 669625178 161537990 721908411 479570534 928526140 922103330 915934874 427825337 377560332 386009382 260108019 499265283 901758987 412615470 312108347 858657332 742241043 335465171 159213485 650916070 858949083 680547561 555383317 945542573 953046655 909390116 106928266 505490307 511856211 937858214 642685942 121008788 749596789 770321535 950780374 94515392 398128749 889271809 922859954 134449516 622838841 456395188 50879998 515604408 684501938 801910587 979942680 23921754 249444449 484324660 173155406 760812429 852368254 220240199 994416660 898074703 911682178 668305812 490639388 517065994 728111375 410391152 59327505 600697471 835244199 556105247 672540971 110616573 217410919 959170047 845427178 845405624 152789347 706451865 323985583 577849719 580312542 166104960 930272817 827543164 19444969 745287228 71006778 288608641 494206165 649938616 863234096 468887713 357356116 958000079 77769306 726301480 151571678 150088303 633535790 596028259 808729710 4236039 488647703 334252728 935460282 818843517 128731010 838894875 683630540 753191653 524962237 66427793 242565810 286746300 716615205 291408545 691266876 398485473 648653652 147589233 800306995 891808480 607996020 332062763 776382809 381909338 7423126 145379018 420321940 635911914 403971604 420104350 113737295 842497776 55308248 823489846 973185556 879277512 506744741 853278519 918389541 26562803 827844778 662495848 176979017 699714726 491334383 204241431 442131982 550142008 389610817 891834946 372454801 978845249 981597033 763765599 694242472 873020974 119960862 435786188 272241607 396053271 894672554 910968891 829850322 97583526 397011231 106954595 409100708 305034492 294223968 142988007 637513236 384068465 623774307 393389867 156835331 734975076 328543579 210105071 123417992 469654608 391199376 304420639 492454945 572103902 669350280 950367145 263375230 709160272 555540844 232656576 892007859 430883312 409780846 645222428 879564645 985644264 76097122 850952272 19794194 392079609 680114952 526906660 698892032 806829012 378374117 327893863 135669239 100490608 304732867 306200319 202013147 801074414 641361577 943579503 44945169 1871605 243174103 673910824 822886301 882430713 329765078 148791329 166008652 732431999 958931171 59359496 195456252 986875981 804777466 7517490 448209157 555773912 755281904 316686007 847526969 766475286 914994686 874510192 517150272 803880487 13296510 930873068 779002767 461404815 596354623 476886098 992191732 578248035 578841356 699961966 448611445 611897099 510054256 165545296 311728328 123661696 528730675 428092861 13923644 685848984 859756848 49221598 688340688 545303239 663358363 398147340 41181174 742655268 284241514 721191800 843505305 111435974 84768733 884553367 724134439 886156851 248829563 466973311 240351769 880200259 977731437 284258957 437128372 642061391 632618553 209801274 7958312 311041255 939318019 583541630 598069900 340076123 490211874 969450116 413262099 759776267 142133517 98639738 156798225 391569558 184920602 65076581 363971987 976691945 622172332 230699992 140560500 324740947 984554512 972987341 170041491 47073538 138566274 625157508 791487691 443517477 21134147 585771027 302740203 2690738 930756872 865420240 985325420 120416592 13125203 735186412 943904754 209647361 536293345 379370295 630706962 407131886 206008922 541835109 914420057 264728626 786893307 869697330 403210428 326214621 83593935 924216590 318464023 416825028 499591317 416139519 858614201 336552096 946049628 812264259 781576336 945218352 474304503 107994147 366878952 744649330 191989565 650243483 7933917 602783467 243370631 102797929 600024573 311873056 352194216 954404618 644013264 392880429 899242502 889862710 43128191 659877341 381216793 908144250 570846190 107997917 131682396 289166782 199924423 185629746 42303237 394030713 657029819 688338836 122689523 947782300 993387506 19326383 750710397 987912788 875168245 446347246 829768758 232766074 346655539 924891509 813934116 802721842 522840328 576458294 130588137 31000872 193354832 141637357 805366107 701702360 588802390 391506411 636560267 220972131 157089715 542308357 881720236 853376901 880430229 494799661 108331881 820231949 410316090 449792592 307647688 328420530 226978747 175845662 360361943 157935745 139085090 908291606 657808356 554951957 505298617 942883903 424515686 826274667 618194667 910393227 876414474 231456817 117062707 264625365 194807653 885113397 31309333 886682574 119692183 698284609 882437661 228817601 919013165 652830132 700578020 237984201 11819309 893640786 707998888 655405459 443018441 427320550 564444322 415049769 8413311 18369150 289234324 429006469 780592256 357943767 925156565 960885259 139602647 914537750 438159825 616966563 804158477 503332682 243882245 186467520 361942499 650193713 300591109 596134004 163812306 704317224 336248828 496602838 162549594 568750556 175679787 805403090 624335670 614405207 514367616 627364755 558791351 618430951 321228867 814818790 513984262 486987681 844845541 770586493 361798341 413334101 176464691 33604014 454046617 577817687 295818167 343800520 244407353 732436926 537069185 36543374 710711524 856943063 995427201 432197779 745065653 432595246 575873660 563272125 74703920 166989796 29562857 235347061 444631496 494278785 86467127 728104217 159449082 702385587 188839566 449403483 779133521 296168540 671116174 670641462 933071871 97353954 492781012 393263230 447244378 373697851 718056135 731286021 626598575 440728696 271932460 224438925 789005885 8884641 742461063 256258492 541433634 270226972 169750015 997357829 683266142 278854893 334180315 32101805 277322248 875833371 246819877 678150565 771826574 146054268 494952320 826470543 209286060 754301799 287566446 387211292 902035792 345491734 655699035 293323309 941713715 79557869 591375543 757069770 514778833 902831076 206856175 751890519 608886592 221414602 59758858 265602057 652207673 466651599 385003375 104712196 496436646 627763966 76211645 539249396 301949043 827071911 222676068 435098290 836009337 422704119 707721375 842139539 63681230 696742093 926792464 278111660 428341137 31261740 102917803 196199183 649635968 405281860 316627943 890283018 610710697 305169520 278909151 485400923 416324874 68336435 349665013 830865281 45136621 296265318 879137518 72518506 441781143 88567073 100408934 938121994 848002841 544238566 191992615 85037249 413383070 710515943 347634644 471214158 85566275 569286348 649717804 555162160 26162088 619544947 81714426 794649311 715516967 518748513 647002488 557237145 155445507 759315675 759137058 99369323 624946850 382421972 306075600 900923372 258353667 16971335 429496331 918997727 506336244 489093684 24032520 626017766 668737219 682441346 119578323 916608963 669171208 963556250 577695449 515860951 436521300 51288761 250481290 491925269 359982621 248802602 145888360 698394527 907041545 753797162 104046822 96780115 829049947 775816710 296657024 887551490 864845830 111645983 887548386 587541242 377272449 80673111 11808380 618112308 774587740 23461879 237776365 625878392 564782397 739297144 468906119 929424516 232470583 504048872 129504766 243742367 72034535 326468813 752500610 39791443 172840698 322700158 781579044 395443652 150463952 257836260 598373970 294614157 834756558 216937449 246941181 391854920 249870906 558838630 70273231 580386335 612953176 33502737 277660956 730970828 616946314 453958273 92270497 344849598 712623310 27774493 185969589 120121029 949943973 338099395 87086486 835119111 481426994 365060933 836734452 943948896 847945381 215797323 5749263 464633371 621283591 872598285 214334899 419197423 41541516 705929632 781355723 618243384 867059649 299807975 707442426 806309408 752483403 744132055 441724789 751156115 905704681 611741276 334044443 539777328 1001650182 996750602 906131510 946780188 329920266 964523142 662151773 431746805 38533801 9485649 499519366 977112446 518986569 111715055 388722793 924985438 990624586 50412511 81420494 500552171 439384986 683844307 465126380 1000846006 449150075 895226014 669645770 176775506 278389631 488234422 794331503 288415232 864244570 280415221 326014185 36473464 462201187 683311502 266362856 408848553 573423769 147625754 930725516 345747514 900425941 295591172 68428350 40304969 795916221 823434841 627101098 711767834 112824077 139182389 145679034 204069366 998601765 52792227 338492184 400854365 910666071 533375080 127422316 405363680 620232945 787447017 529755135 928837627 135184744 479463077 939843024 198118551 381264837 284471634 792658848 82457296 854946154 377600334 296917320 385747057 945022171 397743629 10847290 208445855 415181192 139025125 951222701 639356492 908920838 612542437 993124530 138837703 783484610 113668791 656017511 727756809 105886393 418741502 159968380 682441988 240878683 494900179 522947545 61496675 254046069 49064826 957575051 368853306 963481627 615225618 368775367 919516050 161592901 392711212 274234829 296061335 72281953 37471384 372282156 250729751 128040017 349230399 889077147 63434341 552589043 717519790 606928557 354930774 518061388 119091014 591092574 622504429 832054968 616425120 806067314 182064192 982526034 43132969 753638302 36927988 651830232 446012408 822867585 573929637 939756805 877590856 80808084 955188029 292430110 709975889 582474909 450946799 238781603 115428159 170922686 211732360 629255033 1834358 916290971 187217695 582574343 458328555 328264342 255153578 31937163 483513820 195269266 661012903 763498824 671812235 500592451 689041706 560504003 658753551 153718563 356439835 221059106 656989076 207735615 810040352 46324615 595008254 414131044 417813824 495703320 554105407 73785582 813649499 447676664 834845578 187526058 788322695 1000281033 996334590 806112137 993152075 320399395 154593107 485760523 47338332 515051745 475986622 734915310 31087065 125814429 472849723 392863249 143678450 456143699 215923143 600825228 849954659 411024424 19471089 650174379 965057411 967519312 371536940 872560127 398632767 23928845 647912789 479799098 745419820 17415695 594303770 425580669 846163840 694102309 354988687 997685217 657169884 1000366186 988550400 386388090 631978781 818989437 419061513 634806466 917722510 162066468 170379323 364594453 434403146 414173539 481581679 316775278 652218616 957820049 460031484 816977153 398111963 724128124 51791819 530645575 560081956 525461283 705117252 652279011 970244681 35575078 904111819 113401343 934620517 347415577 776410422 832693569 838141919 347921364 422993347 31662479 443056785 999372362 879677252 46003577 426330607 499695876 504340594 668250882 355079701 914750115 70428351 104836539 724114638 195045319 32763952 269052936 832447967 585375549 487557798 179160142 756636668 349365961 891236898 850829165 73089391 881323035 418153637 600318935 138099197 120131442 101432206 799696917 566741775 278410896 243133225 89649921 755858821 302574300 248702128 36568812 895020154 305510 926008614 491848837 593995083 855573333 626929998 259616227 695741851 17468985 514513915 125313109 753143845 673420053 985604767 854251474 934541827 697565703 540844369 892042295 638485184 288570148 377674484 554343329 908457968 672979956 129344768 366663664 545656065 812944415 300880515 395077725 10916742 758029247 705502412 641844691 162268857 34158003 861961318 338285099 798125479 293780044 595171043 121044228 201322075 859757775 303738818 711446338 961835755 237873406 338380198 903038376 851761763 248354222 400162981 956167651 995722334 252375063 817317671 666812618 609722356 743994139 677151723 707904107 95670659 976030197 845290223 407378676 966968935 864090716 616449937 3627465 937507015 751481765 849451805 199694098 807181286 613374767 222406197 415537037 785587560 378536788 560531323 875635304 671339571 999451619 184720966 96177746 314088950 305688295 64025174 295428279 960546784 54078130 10537961 792909901 933473755 965332010 16605682 845398225 180720879 357369614 261285828 632208965 618994469 351659643 443717933 967968733 800061752 449444151 379912659 233147627 358492412 686796691 430784240 645883047 124153534 184029287 800510409 753756879 701758927 648075102 581709400 112681796 926323293 863562266 387543435 157980892 65499769 588671331 811106241 647869676 659223651 606821412 172631209 208531938 222463952 656862593 955426163 990469004 878450392 512931338 122935770 994605955 504904897 93947926 970723156 790860405 42166404 865058424 863790379 210729754 882982552 639193207 661471797 84765240 118165744 733763182 38788965 941907010 251916185 297283691 224848979 218041056 849919282 613043039 463973822 965861811 490886102 911783463 131549349 235739247 253890083 996504115 170171255 102080197 534825330 224797029 972943449 975595598 294458230 872347837 636816410 360733900 250251662 730638600 646384362 450939375 322191842 836530771 623704597 28187498 318084279 918867458 907397215 205512310 211099326 401405155 226531224 187022006 792480273 314936941 804580135 350271438 774064469 528622902 805898543 605633271 305891877 433025785 454133810 812785972 774921438 76345328 873788946 978820301 750067564 297312471 637668586 242407694 264578760 746975125 655433514 983777817 128277875 560035305 565904120 17542405 876177830 542653176 418078477 648065911 63251845 346823669 816022505 105043032 67034692 719624390 955832431 500724808 175244488 771300112 137413660 592506909 210728187 180232624 597079547 522033417 251337674 368276051 162403483 189265704 224952457 524401621 695374559 601613082 569766414 952624784 27286117 41259703 766930614 116145849 219442481 228659374 565197603 555122249 920997276 14998574 230954625 371106050 437095641 29106250 987331056 452687131 312177468 821132067 645999470 641424090 684603483 48723916 602566835 803822084 738678202 426692100 232848703 414018687 330063882 579517032 468063178 828929144 694747780 194614327 831352064 422789086 164758194 333156594 399553684 678766290 15945055 314249576 742885642 605868000 745610816 236353073 635541600 630676480 468598040 89728579 468128760 717410252 121183554 953435549 933754431 51417615 338582105 279388885 245037051 676175460 571160761 315851362 906794681 651373991 53193081 748276116 81891854 861773586 876635245 104351462 877016845 373438490 449725614 405281545 477847227 784965522 200957033 993613693 229327504 332539810 845949915 946463103 742223905 110703808 843752411 591635733 737889286 898170603 182664734 834635022 679634586 31598985 76258851 968920392 716718717 881210434 772192235 175856131 302272905 88261793 489106395 745127938 529048518 834943640 192936543 245011801 178289804 669055666 198581307 90291734 551974702 64360916 858237414 784491686 659627165 420687966 384291082 741514736 491254020 50020109 955446076 235633697 534614306 874598627 143420902 805651744 695692660 168406723 458941146 803842350 825980863 232279419 822607564 569060399 797689855 92304178 672417834 855357764 53279429 160522912 544655688 995178942 616917150 891492582 645948548 806029275 974896323 527883015 414441514 843336416 715047778 7265841 395715097 637818175 299860517 386377650 894041338 816556786 408299596 570771731 707471880 910742158 674293037 130034784 768701935 355071237 815750282 491578441 82836837 956971010 284507191 561729891 747834268 118199384 433731371 465528999 233408047 39415867 83166109 602449943 781835413 835516894 114543966 747078959 895155258 152163380 435269524 594889339 938796307 711972911 654264364 883910086 336669608 24768414 840276161 375870131 617680518 814542771 537598168 277481087 666669181 599524405 663736848 92066494 118900819 900224708 933306081 459839581 592630569 532012935 82860529 719974254 310476011 581443373 724415668 750141908 517565977 566364271 586295996 282514410 101359048 574693685 933859076 891331465 144969376 180491023 751544961 235028511 304116662 560668981 118171630 302782034 430053245 515412823 400447316 134330477 592384326 345179377 677719346 192532127 716867782 888694988 575736372 401807222 286250831 303218175 272131624 555852656 584340371 818243427 812587000 563859522 831258329 167085672 399126823 678088854 651459970 597047890 306776751 393200882 926354622 763881138 468555164 55105893 52177062 775376195 85066989 654802097 983847821 509216228 194776415 535985796 238019880 701126928 318426272 493117707 240485994 827364512 228755862 723798701 639442026 941510343 751029520 759620556 390684773 925292035 811714071 376955778 951907709 833189986 931840831 16927956 506354111 872346334 535530564 881704102 543361598 231477570 39410355 960585493 292236655 42531096 244504977 131569033 948655973 338573999 663692100 648926553 293571693 143421658 723972132 271176452 159334678 641435177 273688158 163953387 985389465 820707575 793428423 367303487 335408519 497009115 481702339 329607159 106392733 538875629 369539484 927069231 345552348 351811795 772491418 969970182 945900506 509692437 860230482 767613551 532860696 300010508 463475481 399938278 829716584 483258721 896594338 240719824 885273372 576700429 459644821 29645309 37140379 922578075 136554755 895726802 124189470 320828262 704031543 504295414 879729309 457896212 999886189 753585765 510715767 50240661 82105769 57438224 765515315 694646808 837532282 981596134 840378029 775267620 295810709 673601966 774654360 738449091 338100112 907302876 910504567 296054519 792710172 314217982 259420396 396031604 765437774 553685669 315404988 555334111 627424136 404561257 999345861 242977847 501866987 543504192 480427626 390019593 796493631 97990381 684981334 929735507 769141986 15208444 64168680 718682212 402027466 514391687 15129550 448502292 573941120 536608472 528755378 489450776 426735850 18352273 916807080 1844627 922740964 471842977 275835392 995771040 516498727 945192435 660084135 469099275 156536310 622485008 674620905 401693273 314166168 711109219 758490138 326253646 513910146 5390860 527546751 876166707 423763624 624695625 555109508 898701757 297006374 486473015 929750845 167089491 696742098 818299463 397011710 183764204 709393337 40876808 724288307 800929164 764573841 446045696 266468616 491781919 501751691 926674963 696752768 552638311 142667055 942581204 902854541 867726049 390960014 330366618 111067038 149648182 281603631 370689697 336870681 370415507 471886450 970092283 236690797 805350914 189029965 901567539 99616720 406228709 708084448 511347860 785984791 427447668 1001162198 181750261 213292945 326833450 62179082 161591986 591739843 433012990 445756773 816136796 777256517 684734713 640982059 679681046 385150146 624306947 452081713 421179275 567579873 893674957 610884745 379497111 421209419 732176344 874131488 181642907 539379655 343308403 219564252 274293241 747207307 39130157 670668787 783203954 197405769 567553677 335055790 645243439 434692798 241641733 797964538 503473493 790795227 939405293 979891541 361073961 127978156 354394385 881484254 933980674 22467220 416260716 258320340 397630526 487073481 67535047 165933121 364522963 415763603 625872616 880013128 169770007 872322235 523379616 865184712 106997580 988286484 941259403 703243069 679651553 379561126 169225417 77632834 677034417 203504741 755464282 684926813 127363035 755297371 482284897 572790906 986941059 365388606 533922219 810381014 879507441 841085486 759208025 217518921 10335554 934909470 409922273 687151192 882099907 787647377 207393642 725004353 875306857 968252405 745026396 40476102 96345273 42567743 289446006 599645532 88183972 148743259 425056458 698783633 424159698 72408725 816979979 279416763 160545274 875218043 547743734 670845486 663192815 513022661 461501483 65160224 659508612 196637917 27892286 639959993 769450347 275378030 531646239 637109905 770860299 972298876 601595890 192881211 574068967 132430051 779824706 597083744 473756340 934973952 685315192 247434683 478181543 169626786 619312026 359858177 805315235 678437856 561843360 952093511 9871071 503521010 489625633 301159087 208296522 491306071 596362964 652247799 838177211 548601672 426396050 448266112 188110069 735754527 10915641 759641932 398020039 202257611 820123055 766988446 419524582 14691969 980496628 338953647 223672103 454438850 614098094 532168996 489495691 150339182 238860454 132213849 585341335 707407305 67313726 969941024 893283577 325090205 589111687 680877066 406350022 407824733 396367129 513006290 372960833 739009078 593347451 786284314 813753919 334894669 931047019 303835591 918894856 576170579 975303730 712348233 209080859 154394978 76346815 768219415 218934548 6193855 816733136 489484348 299015291 842031702 296645169 202208633 401086352 189497446 738622568 467143983 547423326 296544318 377478420 479794332 265459062 297415247 960401245 516054301 150163159 458463746 42884208 470645108 197629125 76156243 180676285 729304577 157272938 919079038 803762154 300191373 314386140 312586693 119702888 635147935 231897608 810264670 396511070 642256928 982294557 558853877 562528169 95702138 231379308 148318227 933330453 857609468 610883813 280915285 850393434 735762389 36512114 822240039 408438407 736784780 378340608 104443951 878597340 186806267 149508872 710774980 148213940 660185766 664972206 482873400 679775900 983242542 95978468 998228650 81437359 424926498 841505756 751191233 970090070 58857521 122551497 771527138 869258378 605772785 634693576 91039754 459305800 198597630 355134143 284915293 169777861 83059844 514328108 404231949 203008869 761718925 669167173 406107968 81871212 429801040 134684414 639529385 878769583 494784521 507884274 168085140 370913146 665583439 476896717 8014947 853383498 297458545 73751751 832672860 138436703 238388394 934386463 10310281 361215996 946622420 222188152 319075411 90128616 264036652 990413422 322526935 195306068 848303598 512046469 472166320 166145171 830913912 486250671 360766964 958850867 568587511 422021824 298074540 332995567 880251780 175559849 106475900 123591471 988226049 603493946 951270867 81181158 335511053 54937979 4664298 550651963 721615044 139670452 198532216 925210571 856328347 956640069 177746042 363722332 88002963 594263014 489193314 572010882 313337845 886695356 709355139 754442378 378515260 230270008 610802561 556470407 256725315 908329013 920890921 208562758 818555447 512596313 444189844 418308869 395938028 729786720 634239048 182061497 358021338 282688473 188006448 834809627 348362484 966007053 124578692 146295977 555468751 99208655 974291593 398737581 11871207 253598991 525396974 728128332 232186047 572215397 180909395 827682115 334102891 984244557 43258392 762736409 565741025 792146890 984825949 96295014 414786883 231727026 319007393 190038397 234780009 862631578 163269687 248397405 397523429 70564580 260413074 327634480 711931556 427154931 262390964 355915036 645265404 607240927 477551397 191877281 1000529414 720373868 1001395138 264618175 734779677 730297005 455034041 596361289 970339450 574502656 302437451 205334887 382952820 433988402 342795017 919344484 200450992 694555276 790857147 674143898 80356557 692308925 817713710 962090510 249908395 173824918 741201709 937767835 703110233 666651985 536456031 27802408 952491784 99504416 410834059 318303054 220830145 773138524 163634709 281541119 168938061 700201249 651953618 901773068 302571266 815843661 603652438 386466382 736545752 323526268 76264774 138663362 758906168 344733861 25760026 940047235 644938010 456693463 380023440 275473120 385667439 452108598 108864940 703429873 867307569 70230223 57176422 107381110 289508274 739406202 504583841 162890326 326246872 32721643 975787907 102951039 719753152 163807776 443734536 68478760 370891578 605671522 212912468 28516037 366885546 486796822 256826474 662993436 75806876 730443461 710951712 242401312 821679088 419328024 203319318 751439897 783530074 611374050 221910933 580240287 67944061 189850751 798763744 36774324 48535889 353576656 310191941 599813687 241805369 638618429 271369046 538280628 332192845 946278073 826584930 672124134 243625817 655304108 954269468 155061053 245964461 291811976 153921511 259902637 500156979 965866043 803639330 600265760 860778516 517377330 143924822 889397551 640301071 185762675 930773938 992026752 222676000 591926718 541561926 432050367 51197050 670065318 647480516 713128047 959699604 875591875 44550345 807066303 821618940 467973822 731443196 276205675 98014820 722600723 372889236 649267898 380995398 538373328 224098284 828262749 13106429 708248575 539833375 639209367 129837669 600631282 996805080 500554184 591884665 980849731 335125901 304281366 58546608 118224285 438807407 611189108 11852446 8987947 621242842 493583340 820080415 669149976 524174649 388189601 103620366 584646131 396985078 874304879 440915865 869330751 790625677 994892289 577520897 837348529 219661045 15393958 379457190 676153095 456239287 513552070 265293346 561016533 659318560 788150973 623031099 157453430 286914361 434410090 924891295 660489275 961380754 957089693 929454301 997291890 357102552 838327268 360401219 542576249 978346026 227949697 396142196 736744418 338100907 156826432 594227024 938370626 590975531 609462891 251476943 841316377 910680558 164479124 569711705 466539171 299470660 112625843 575875664 851400565 313228253 669113775 302737740 232373333 491662623 847200094 907614622 382065396 39555683 952936804 70674315 521443774 679099782 403343787 104803414 960900758 569555365 357961143 123217007 814801006 388447663 783789031 307204053 570844123 465783256 457129674 887640722 577978513 798073374 359038545 330196746 39511495 514634139 568937932 620163683 428864359 916438734 562258646 373326106 280748410 526476480 602855686 584025778 230339707 753665177 693619586 886062180 734725918 737719114 125397141 759452937 66275801 485852927 794221389 638652984 39463454 559714578 994455932 814791648 650560925 325491550 987500696 120432926 679019360 764359690 126683811 464530105 159977214 168506403 289591136 664343037 128989611 983502096 473728246 253592807 280105615 299234846 785925263 849196419 54715526 894927874 581247743 554924678 24635948 9631776 692092468 947753255 545523420 434121893 671920005 633820585 822903231 16788228 736234291 688500199 719698000 329650074 99521281 552931132 429987332 576767672 991117336 185137764 678333127 810004243 844890618 983451359 121553471 431632596 534305556 583913971 412381963 856263825 231231566 447829387 583969996 108595162 426980359 592775209 224227494 39279031 858650759 292080333 761704455 936336410 280048570 957106518 80870721 631337562 435652490 809563807 191978388 64419055 894061952 172513212 421387970 824858898 333746426 25423214 842525684 285138224 310871234 436543846 993703447 666530655 127352293 542514494 56665961 995943000 914097558 540561720 116048369 405213875 175376092 836195978 976423038 617712884 593599596 711000402 45960582 285367363 441512253 666160884 347222945 843346996 511060289 362879093 923757810 44876075 17804383 323132784 868788148 607927334 86810443 973514616 548578074 896341835 463459751 567495794 968279493 103813498 327148326 318640129 711623351 378330425 45016837 919340123 978016563 929194064 198728144 995696951 820912456 805116321 373682985 789338283 819020463 903460178 341936089 406967578 630463785 18437557 325638575 894762767 862026614 205942814 1001110553 262814017 629664343 894563698 161205700 239856492 16753627 690258839 654798156 651844297 276899991 559996684 733985590 87065256 541467469 763562364 658088712 795105665 247972032 61855840 368497725 260855471 22515235 5470995 391246574 253822162 111821064 983024171 965950102 640685687 321803911 433222697 14976699 761282070 163663191 806932235 366458911 720917771 530862173 248527841 872843372 801837337 323926712 364785653 723330112 169441222 926141205 873106643 863637413 813597295 590651210 171994429 334301054 713231456 637805514 293077050 632095591 650020466 581111073 678225969 839785530 860754633 563972857 336207178 455745643 131550102 708693451 995151280 521210116 888367318 911505009 143469126 993515326 329509722 759463293 968170727 219589731 244045222 515350633 573376096 354385087 820969628 307435102 179983202 246213542 28576518 410651165 319091439 807521693 632967571 749331391 108257127 469259786 708721292 418080666 367606373 326087535 574786863 425288469 428097428 167634452 258360684 263720992 233415515 900731483 574115887 755252965 979094188 729162860 798997865 651292453 855641838 402605113 607651513 607239837 914405639 303245584 831041075 977764019 951848416 942875258 972875796 805157441 906720379 494016527 783556113 858521242 828611910 761477851 810012172 357475334 855781463 500232664 881810135 920288034 178368289 425744717 363328360 670843910 509456512 757825639 673655654 941628212 48845042 377028046 309292164 555824197 402592394 288883220 115014886 151463491 710265749 214017587 384066173 664884598 373438365 98730188 158132867 369104107 629073534 443497034 936191637 608270648 897547364 384864113 834691991 513613625 532968536 767740743 317274835 843017659 139112175 939612250 404956177 121283367 34831861 445831823 95911997 951139664 259547876 758997505 548246465 248590932 561328891 324688636 630298748 411428305 415726919 522405192 206402125 322606260 486142347 63734747 293008818 548950249 714828389 729777885 948830103 164272373 955078942 321035249 797404274 746977145 643817210 632063565 401664252 666066016 203001452 642969500 564447644 996463301 49154526 25545803 226021186 314770453 972480528 961796574 220337204 403725617 456288375 243280825 66970890 689646213 231136648 443324455 961287108 634178281 222162624 940171526 835113626 120482163 840113013 983480402 684531257 711996703 931784292 811489896 255398489 992975237 849959838 540034599 951136587 57000239 897284593 162725071 347579361 560003018 486271037 34918044 191861546 635364787 667720443 232757979 943033992 546895241 797348122 542398697 837225533 530647918 66841854 777694890 469670525 494728530 635087944 945025938 901074063 390377719 51424103 174849530 284338749 473181460 592985970 304834264 681580308 97151146 92525386 254965007 734986305 415474704 984499605 337711397 712984420 479343355 514190428 75816328 584274729 473620962 408266621 236612797 839788383 1002140340 782156820 52485079 712628414 886967059 726312463 441607887 416554253 459240389 10556671 102220404 615522266 394323656 496629269 694019847 764235833 222441488 372037531 461242511 89283897 883847551 276844990 365821743 76287423 605997688 851974155 417292216 409970135 389122332 743994732 810353108 773202640 37070404 84227762 101268642 592153726 966747618 323344560 793896006 259311708 760785709 681458780 511154909 251937791 407705511 108545649 615364639 596542261 642037878 302374443 106906246 13640603 95376266 265603346 796762341 754964872 110282976 483929763 933881874 241922732 796498520 379945916 230157025 314992284 691305577 623881445 677768030 601107033 820751113 886790111 11446445 438053557 724395434 766651272 632552425 463608763 942839672 778043283 654089161 168591299 317416657 335799813 981064949 757348597 100782425 861360791 438120348 189077574 922166213 684228036 568643667 242477428 882354667 438739828 955496284 501283621 554917409 215998650 398495616 114275165 233711377 783870011 783156746 211552170 317665254 66316986 709179755 567381542 19955261 35457733 400139596 540860642 621460009 328253546 140226975 13550055 30499488 99887265 901674027 195827921 251182736 469313149 875403357 914163581 756465309 423559735 152777097 543074658 350199911 279011319 82704688 305905170 359028545 485709526 814851646 606554163 990923647 56360652 811431685 879249653 463529385 832491494 407139132 59332379 872013324 150397577 622452955 207463778 761931487 633653819 243492486 951341739 393026842 840300397 766058413 330151289 501492549 696344602 407088555 105211898 344625636 646104649 825889919 777299258 844514148 218591335 360313269 796608187 896062886 888594069 724248438 72846460 246171824 645779732 764514488 91146329 39426403 969390308 847275336 385129967 957107102 742507725 554344911 264012638 567855236 220485202 77328792 43183084 808197356 298274733 689704809 300077135 271732847 49298140 864148143 508958878 774119500 725619671 822226615 163736627 183227534 726332020 563551246 770912160 633481012 141598598 740867593 532166153 511886007 955336365 565300443 697020979 54622124 620787076 665276148 129839840 987531204 790619960 609605358 24334717 196632060 895362397 958363805 756403664 941318000 688556046 497827155 470204218 306910640 345460615 726562200 89399001 610274252 19753564 574533723 627683448 719211545 512949191 148535717 29924407 308637172 384151464 453262814 590369796 416981138 618525122 638450032 571586768 822174958 41690868 905965294 57941842 515312530 503236590 745716738 593146192 264806064 125036544 384905917 499632719 896500895 63429758 454361540 984966231 76099084 687475689 245620988 379765094 818328179 315292021 725973806 821814301 875065300 8401952 199610125 352393790 680898711 240045649 544801455 627958470 943041838 630891254 766881358 702276164 659745813 101048156 875952273 48659004 65213435 833943291 338401246 639804942 151815470 717838075 582791764 113337355 744118680 383693026 305452314 594801489 257027615 614463222 249336461 575190923 467066641 629171984 39600909 470588127 804179720 791940807 156414582 984170008 649936070 339623024 920976794 167251379 728384939 629700906 68743714 911368807 671087168 164429320 2068731 926052522 126164043 117888640 513805950 505531024 862977575 461460990 258378066 624761292 610861187 897940738 988361895 68300742 457634035 433272143 92897236 982117434 44504451 159220550 136155455 972758154 585183708 913658784 979972704 454586562 416571242 155151016 668635947 897743123 855942826 408871461 747083423 496503569 50972398 499572265 352016003 652382587 994320694 119855573 863703886 628801422 149166968 607263520 995155494 499514897 882175679 622240041 614255327 422912074 676151735 321880934 98449893 248936215 799437637 371945659 569412090 291648548 853349277 501376852 510130588 658862487 297314165 293262330 962990224 366292251 52062020 243103643 916439410 101148921 942244053 462213894 564503536 733621617 134598307 440512501 751748661 75855096 477586560 856111363 84176475 309394521 879269982 530171216 423330452 135693222 68783164 342294309 189923007 942815136 234560130 31083263 477919302 855002702 324862441 720347945 864012630 344420668 294849454 549216860 894087523 961063265 731890388 997792908 678067877 671433695 44992060 562812127 848449942 63687941 63024620 395842196 123553700 878446393 891580151 494687344 80760506 293446338 501597994 892083000 183223697 254381719 37137937 604416116 17120433 996257593 168942519 182091680 760976823 225858479 278303166 390694478 377906715 302032663 36998959 325633522 961560098 693676394 111547254 188476147 722291026 831088089 243992810 704324822 92002826 708520634 300098189 843507768 878223282 814888952 225679424 539632834 833150543 919020416 602301982 72876830 266283814 68170369 510206352 143718642 912417574 611563676 983218235 121821166 772102403 997609038 755783183 165997728 198056938 907760281 716569931 212591910 653475375 995743950 15332327 38219822 606578016 119127374 785554386 535077705 845185001 630959762 238421266 843799666 589964651 30972858 691644119 61694959 332996142 198635429 626673193 283029368 44028746 653116348 987073618 267105206 434454453 1000834436 302668041 132256240 942419047 357199946 981954525 860570215 915541906 755656153 121289327 30021190 981419191 271308955 520763485 285661534 949962758 7170279 690182078 453249800 723552349 478716338 192271811 205088180 122032209 769662197 192229647 548829314 741330255 76226814 136918802 150007415 49357831 318988763 782703159 681542839 276721000 569300666 414904799 419879243 87224981 351402722 626104449 282822849 742972002 229452177 677636875 252708566 46889149 799104983 518210902 396151213 396577899 166775658 752517910 89429667 255816704 109705722 470618975 996741622 756080146 485845815 929814397 177431718 679534180 120314593 786788254 276524464 189937168 710124484 672100801 420798869 285653031 914868472 995273023 895425448 417511138 873034213 850943461 630883284 982211170 230021628 35564885 690017721 602557703 857990931 436484278 211150541 438102959 658534509 379197593 226075857 208057400 75158352 120713245 129358478 232402288 832120929 998103080 935807496 308942392 240443393 28962617 230103996 596201209 716006462 900020171 503059504 194675078 622579593 633366749 515412286 876730202 396975885 906070146 542305313 107896336 473962333 489570493 740050803 195623558 56825206 51109213 950008539 178625525 67857158 43326693 527273371 76087952 451342365 884618228 634590418 772291653 556829695 538857518 484805524 557567429 486915868 362249423 489230058 879837163 434589994 519292635 937228827 913681977 854959534 148344977 313000861 945257607 254357066 814262503 92561237 22335024 974617760 783398764 575524074 578114576 320313061 354706762 366312964 339903315 976835666 923732771 869633615 723614333 150598497 1001033067 334711509 335531398 211531989 602677899 926538930 121713099 523839732 532000441 732314728 443529953 498665232 886587159 746591338 446499592 87583519 251379262 968995518 300939731 662331747 566225671 994418035 122594268 661629806 191105804 953545691 317748260 472158528 90803565 78108606 168606242 762354318 512843648 936429571 43305837 338497837 760114364 471255455 428810440 877335991 920164023 643803820 197078268 243137924 798633488 753361581 687406094 366134586 877248780 49924850 861877236 4155371 217025381 825757500 552458302 750580920 33982085 384769704 916513666 645958920 348639784 198507739 690102143 905808462 785766473 676407620 482366783 259329279 127367263 193239574 489102205 829088291 248568147 294324593 586260448 598969755 649174270 193232845 498741008 936678293 513021024 440604065 802265017 63601339 839435805 543390292 451315760 454832799 651736025 523479711 212742513 142242493 35065860 114433117 126169591 109855808 724287015 91199030 641864571 243017298 316532995 480700018 283538080 514940410 694592961 660952891 377579993 42509945 441878398 111166290 708388233 787384801 95073529 212610294 879145992 455316859 368054053 497134744 582802375 716553557 156832471 102103523 473886122 696222756 295310288 79240166 674791176 527737615 936309844 293344765 927917337 88640125 882050059 275278800 230929693 446245283 578988942 155258771 260668270 532742049 387092710 16304079 726655035 945880297 211141506 368738809 30557349 928052896 570252541 427179294 922518226 377435137 836357275 880474865 292180600 335334818 745319239 88274770 204444941 542595657 159999823 948604261 128684148 974834837 88817045 714847337 335460733 803142966 889774124 536391325 187437380 928357353 290009841 851232517 174262863 169501573 855899641 373756194 310045130 784960559 656452577 605634221 741041747 618105813 359565266 145250740 740266984 83216263 235762612 838194354 869203695 428273392 655635060 430044612 321743312 362062079 392731313 471799457 579461103 803564388 933028848 446059566 737024945 405462299 31005084 393727142 639747270 55713612 139392956 189294122 133242503 442397004 858114811 945517715 663758251 499207161 259914073 228854795 851174285 253130302 209130316 304721 678334878 603527967 117785275 142141481 229693541 581764158 89652070 795830775 245828718 953814410 748662222 542398274 811116611 30942570 316923445 662219655 792948944 992977343 885631601 459858366 473294372 504801856 200779485 367193021 730054768 561477415 311395235 396018689 532237425 71126453 921232788 603919257 586356939 833894193 904761152 716539663 687558093 45131157 555498588 195678436 92105230 827626277 623988065 294568110 167786827 922043366 561907925 187860959 501853680 783979859 51832102 90501436 144303156 728697160 30207199 349439176 19383465 481641560 284423458 451824002 883106193 412320692 695159149 247951720 716382315 520672621 413443305 216847956 308104576 140651498 595059069 641787202 771626446 139469961 422098363 928737301 131558362 681619609 694422782 555133707 548405822 648862091 392892032 778178541 62413415 572264405 264087276 127366150 895245280 146012823 87074545 464913448 712659296 868754920 105618473 583667304 538149371 139103457 766637355 361859146 41468968 768574007 78651197 760799089 724058398 138562760 892804109 772316789 226563719 868885582 747071249 357083830 19309480 442390204 552695398 265578692 950707650 538309711 408480910 557575902 897653824 700570924 995229688 790578225 516139140 575915988 373672366 667091195 534688081 705816114 966171462 378473211 692126392 307704449 418302645 105338317 373135742 697552270 113832068 377698830 587092678 130190199 435007253 560544211 370630927 898434037 810328017 522528580 464009334 245530600 609304238 715199291 537178001 222327225 716544670 444202184 684896418 621545413 948135150 804320626 960987840 888960979 19455712 303520504 2118934 650097521 115679619 563368205 982331718 771828490 562391604 835089255 509027542 121364793 39234336 838845645 806355955 825329512 445626108 962227585 240371040 399938339 954017633 954183544 402505062 543455432 52275243 373525417 777425204 480519654 929107897 662148437 829950325 835500805 177809533 922420080 139489500 464422231 266226101 193322833 569362690 64752794 326496667 800395782 179846970 335107803 925531076 880265257 451688834 480950399 329866784 144044478 191509828 238544956 924626660 978077077 691452184 670886708 119915195 106687009 504699490 681287807 778728411 94748479 94332267 476746447 946019227 545700347 270413993 769571702 467404941 173291589 30080249 767875397 439162047 825475167 148513830 312208879 175710840 255133203 792855875 651522028 723207594 504950624 576188119 100177467 867852548 861858522 68926288 634171883 614995007 780042057 312971165 487682566 560090043 493651355 213094471 428303069 278326665 805935973 587345259 962709180 564097355 919652094 352552518 766579920 40511501 695172514 395474891 590629514 927823052 74358570 802760812 882394069 475781526 547707587 10041795 660417597 497655560 41582276 895761009 423101834 26647074 780113185 478834151 357984875 265340285 615464360 176402023 232973751 261267111 712887326 309441246 45362087 686863341 552360600 99638510 15124439 61356681 439268525 902935099 871017177 604523620 554255958 450637830 530967710 451998160 879725971 392022409 301096310 842273147 177516597 428345144 587989253 238762139 326603488 563180358 269432397 154521002 592208180 566518541 437564359 37997848 561896464 535873895 40184915 559193341 249590833 100763206 593086132 174907690 41563027 502899357 633295860 133371990 196481644 834302774 181497751 347095859 19460545 726890927 443514833 61120599 971761924 607757461 105211835 986364821 166092849 413571632 847584014 776295021 595020978 70895471 883914347 439412362 936945260 720121585 968604521 541375753 268823156 209238634 906059935 804513156 703165121 586392075 775744794 524280354 375936201 730253804 422621331 608951078 467822798 950541498 947680813 98590394 583331507 509025080 207156635 148391799 677726697 652970740 375849475 510440960 341004805 406465630 16475517 17253002 554376282 172411165 206858011 959784191 715686307 362900900 974940886 445490762 151072812 93488220 834358808 305762026 509245212 873981088 730914069 867218110 178206582 604266297 102571538 260789747 761644669 287225033 655174052 917504997 449917843 10091539 93433735 47546981 363809201 683625716 793129731 886683518 487171601 281283799 45612528 87802475 287536952 960387082 660986775 851773045 406230181 681902162 721666638 435813643 235808052 350538399 382934163 771150770 169487767 257561942 340791344 540193191 811042996 553356679 225067289 323445728 137310423 192812236 673293897 90776881 318468405 918570556 695506290 681582677 465052410 477276358 814173556 185707374 498642418 271272860 620062675 245204503 474230079 458204823 938567174 355349643 84690152 513217396 231480821 314777503 893709940 893795015 73043996 863045100 756776366 817106625 478875520 352003584 681296784 68556963 333984213 589655501 18666570 721850054 691014019 971340009 175191623 378404044 540190547 704118629 881433143 651968477 610276201 810809767 840002486 33946469 900116036 398367267 148474790 336653340 439819970 288580091 573187725 69684931 519392517 461162382 486867920 522647624 805348014 956673711 413230394 357391597 731446078 231117024 497443656 1001647786 886877028 413797047 491860697 604749286 887509969 10293631 566781784 176141201 6851990 877438125 382467959 713084680 402415744 838586396 718371598 207452292 995034714 943096428 570052325 876109181 150708664 133878964 694026446 315115862 611653482 186102744 397642023 640706147 8737062 921945455 333358242 828286847 710259617 401459875 980205686 986660058 6540900 970241220 546320217 493632103 643514395 289221349 981275598 623575031 248776008 877437880 841599410 466239483 417847118 304800037 71324679 671084044 646028090 336297186 768581032 832359138 92911370 197696333 760704815 121767276 320459415 356169170 526791111 117017967 787865249 170957447 487832461 822822013 290911270 337829865 179671308 481735760 49001632 958529746 136117050 790522747 902807601 221710521 658186459 719632491 631601483 732341124 50366780 416899150 316671808 236563233 990805201 72636235 657764570 299612120 480358380 819366608 169404901 757989564 735470520 23229386 549462696 798575706 880770470 121823574 79509446 609684201 910806198 958520322 921692137 258940599 291216680 115871149 986309081 925454598 992735223 394332234 863096324 443687952 928459536 539958890 381319916 851461116 278112952 355537045 793240782 990687704 524078554 830517889 153836546 468196185 340828643 480913645 339894303 458556704 916379565 381157125 222883561 552838078 769476939 776146501 503773396 96926304 549638674 941576183 635750581 515564150 276687917 70029340 292921325 18828280 30060609 959702689 35254730 314565598 309193564 593969877 2935421 605859606 84842106 836782462 978507529 875395089 500009292 618778169 994496721 698648161 654919935 202356567 284048235 421045286 97090032 851628391 904174448 165008287 432930135 96233971 788409216 576446792 589745553 796730458 669858389 816066515 323328136 765742329 514159042 948575112 972815926 699881950 478432339 698003489 116243116 203185112 953339927 790747204 582520724 404709395 277445343 935022067 126154704 879669707 547953269 399844618 137955046 486674781 993439513 483969968 13242916 932363607 598812033 50730221 23275930 403024613 387714613 51398920 456402329 156766933 776598612 425143321 568728084 493516156 137423132 625929587 133338056 47382552 404030812 536670389 728298322 996981063 45152319 776983466 186291178 524984429 773393400 734125224 259061568 386173677 118481553 333671016 3251568 85342834 610501768 70185492 518875073 630161544 396977089 277572854 11895151 457474307 609394026 316943763 74056035 836223678 835398932 781948144 931071135 281979005 26861880 437056099 234348452 166322853 552031366 919314805 758958881 326866533 981580962 789775159 378316124 635733611 953215874 291518831 415666462 626864700 835835871 32067088 942011027 351718652 918207537 579524450 336583229 309091441 308690146 939296068 682034149 462558878 912879185 180968681 197139197 404994322 19421584 874301722 160058395 272570687 238489250 17955068 80073218 609685351 229082014 572689644 155529119 758878512 280070836 527057786 111228282 659502453 20494236 416220304 226525012 955443540 887607578 583053979 788830528 171939794 581951747 225274463 557958804 763948948 257459369 422383674 641997221 798562855 629841199 636556677 752956114 620798647 255075157 1000379252 886855192 331403620 994691881 605146257 508162187 335288075 49063657 497285209 197852221 346536679 274983445 694143808 397509542 188184593 843035200 627376849 207262321 757032768 869240233 48416280 492064676 960683600 67824305 729333225 143680562 413145789 162688378 949539239 229554537 306789334 991376184 437682001 732029955 615735227 16449540 951711673 890322310 436744853 195509934 125309976 52287144 561755359 950575385 238430502 302834533 456561824 618866602 995961499 477049520 294571820 662293446 820731153 990235912 457499476 651668600 942089761 506600604 914538607 11568297 809833656 717624580 935804869 83119133 619515365 112710947 179719270 69584813 670620456 230484146 922915106 822241904 730402378 340480889 750892879 433094554 721571052 867589950 394682670 693577326 71327606 963140666 250908378 932853647 773286431 731949468 415561698 14802554 195690424 776979580 257331498 314809494 390705627 843020327 23560601 896030658 58745999 428390892 261554027 400227582 229596105 188464849 466298465 756676013 807017599 91292688 106790003 145713905 842738463 690163148 135310075 617738212 314339644 886953925 1001096359 475541907 290030091 786083359 966211486 20603367 21591375 930307641 279090887 543679866 858915230 113616516 600241457 829536717 476468866 30215196 681992505 470318524 273216424 510831435 894936049 126996659 405458289 856353243 958444286 178091926 445312536 407081613 21943595 421503802 854019428 780397488 748350751 482662296 956999438 964032350 879718935 508954101 465456281 814260006 879647009 479397558 36408050 498678173 443977382 229793021 207492632 50635938 5068471 938420934 966166117 945557411 300868262 922755223 628948612 512134689 840887663 697069886 105704900 157108659 831888919 330631136 751869982 816334062 528291284 997299603 914347160 989223962 200399145 694859082 349445355 68637578 928055196 240809929 115664048 232752054 929284696 874454963 187527007 610896000 842824263 350609122 602766076 300779345 273967345 489005467 557128983 93384960 876056435 224725018 721451576 752421778 299524758 126537477 595159371 273380162 671668391 109725108 73775609 580058706 127438903 643798116 672987646 390753627 696091183 931075641 901466418 798386965 807775901 287802896 141647015 9192548 840770141 938840540 321575217 656273877 392739996 418055449 236592735 999555932 443547353 214852810 790865033 29899127 777631569 537609762 551524862 175997510 153010455 44365748 772438002 248429672 540380150 879008875 387323914 409051194 843066800 621768222 413282849 730865657 830484157 273061875 822387354 330185919 291961154 601157078 948835217 911752319 484145635 317785367 16358640 371654410 895864075 30519382 281363030 921578617 551722001 720773131 568690910 958720847 866383438 562058441 2023304 899800293 520172521 275671399 308249102 737271869 568399994 307046129 791578426 314193461 752891508 966452343 852239217 963160236 588792120 247144805 272666089 747395395 875792722 935222419 545483287 468966790 574526259 679763109 989098071 791417958 557926589 648851948 511135992 5124610 84682566 168854745 175119312 424304732 913625175 265501909 548945416 312481939 328571686 584281832 129155119 165265383 69919781 111613302 787675848 555623137 461755349 393144353 508172940 514571317 548344183 984781530 791178996 416083607 138037265 517055716 943602663 221902468 134755813 608071374 386747842 391381201 154258485 749789065 308941716 976298127 809457896 84916829 125076868 147315547 62850737 70425137 119599374 854810734 203239669 785874121 19451238 197565155 683851202 124720965 805806829 849756248 82714775 277567291 323385528 617753060 880093720 155110548 614723888 350247694 827156847 49526861 926178243 483687860 891154317 606727446 652650912 58396279 369099710 640879942 187808305 935786944 336610986 524185121 85226772 701795662 735379252 144923189 14663339 615143341 753544771 345867026 334453150 541665517 926815811 533903645 431948050 751544314 404203288 79145835 326104980 420448130 606039468 530679051 350383330 613140926 611482656 859297701 414098118 942574496 106365319 54183186 133010165 681850678 262771567 285469895 404949500 752656682 370650768 447614332 733977311 458900250 64373772 621543751 455816700 151751823 412654414 997244564 176764058 157998635 883950379 702129339 159574251 439940879 23887760 357977594 520031750 182751157 401278569 510464243 389767396 391639071 728581327 291545040 399552744 820377538 786060528 863746211 476895254 89544174 944218090 113676655 542072667 172002818 273825182 188346551 894356686 839722901 677290699 674120293 488828566 701996643 472510232 378481028 924280534 958389249 256423795 710067979 226043315 628364783 360181451 133185043 188409544 226386226 718953113 708525948 80380020 346462534 218536756 698502754 819263467 744203552 174548504 631195134 220211377 821590694 479023401 571980879 91799342 437731805 4495226 871707905 150720822 464159362 790988565 571443424 138232104 717972246 601213591 685474932 653596368 52709026 92322668 594205305 581507691 906445766 35350264 779203201 80585289 596806871 316308659 769647913 884905288 697249018 727156363 127326038 610222659 366044435 173695038 302162169 996152489 487677984 266715796 288953302 526408776 58299963 721750936 392831016 290562751 294126143 653385351 975545965 803091996 853789574 28676219 20477789 888466388 776604940 861065248 430616056 696131253 859269411 353784413 266594820 494888334 473388088 161751335 451530732 132257845 261826180 25373920 870004890 108577158 929677623 990111583 692980940 614538384 374583674 983867370 413790351 287064009 802956894 165506676 162908689 451663495 357266445 284961987 745888823 623357352 693113375 456013705 402791106 139618726 327788181 89804858 13313540 779320406 273430132 75962246 240974053 969879528 105440857 169898097 933015837 678119605 830581964 924768950 378142557 820719940 365894271 219827906 939253835 184720293 571840104 150775503 438265982 348162419 201481475 666330721 449197972 662496652 483926503 272345199 734542881 295401608 190853627 191966130 566724148 320157278 252318149 699332969 168227065 263923988 648281683 743932822 1002175424 664325580 589025350 414175304 575836568 805460017 780861760 23911410 326473630 276024214 950133326 909027128 1000379833 586665867 239976073 315852824 414583799 376413188 391243407 284579809 91242858 867084293 383919824 440752104 103111781 599302360 322528172 109913285 784988039 888577247 584163184 841163491 409345805 692202945 719722856 429846507 82889999 665371972 283718794 87455459 871400742 992822312 53569864 704108262 444706641 158093595 41949362 496139286 297071756 147659545 246350982 605804121 59516064 20162955 783162132 908957302 591761126 39747215 171515436 434795001 638765691 736869771 98839117 219144110 265544534 798149088 681867610 873893342 451392958 454835213 348782057 826600600 621236459 715972567 761312315 296470499 682286686 939548667 658831697 432305629 265179268 505390339 216058153 221168397 69634386 816104714 704021020 445964204 829185577 974836933 42673525 456177356 148258055 86636252 890892187 822713584 741589168 453769225 329986852 296831758 783447330 68744671 613705476 351711593 71972852 775904518 736689838 455543883 359949603 238443151 77031681 519581253 385836369 802629587 298585833 205698181 107224186 505658293 633166858 663180921 758340453 388388850 478980767 293201589 864202381 724099575 863322512 984046500 547079400 304748440 240268278 232051963 704489221 289401919 836631168 591576629 560264059 121273357 716433354 691205586 670308375 76488460 760560363 659140714 850781819 487275292 352560004 698784928 719870972 331314714 103308591 391243515 889537155 432941602 603042790 726535084 709978949 398972961 157460891 643195470 532206645 658828065 264601061 384221558 258514688 253025079 958144264 418904622 733118512 38795701 788779916 428799027 773445960 255879489 544183586 128529587 252956077 162352324 968137706 890245247 213942837 163883463 770170680 31152518 632913883 680761832 334069287 767678229 763480735 147902066 22844650 95051223 245766464 503540053 650012165 125681970 555754417 656447723 288578570 85302395 902875281 796316554 330517338 655468881 710565589 152612007 610746070 620580226 323237975 1063006 742433047 120113574 360488096 17807051 465200869 983966090 16215479 362198168 562833042 403772037 739127136 49742576 544940099 302084747 718232717 555550811 922401872 304454198 898284918 484745195 203583755 635796027 299782867 207848791 51474348 267805238 454430329 786390587 629628340 70888252 999807332 496462847 597436566 587253964 276492466 669331260 673773239 430971305 583679292 746858742 279337930 547365926 876988354 197694521 783025047 57400604 688989947 651364774 469648877 922798137 597213016 446931216 535822816 722065167 949971063 757267473 433671883 950349253 281503881 1001799814 207000238 287268067 235778262 697376607 998248761 634597241 264269790 453975121 362842576 201701815 854986948 480814787 804828058 211149707 918533618 613188641 646015 928644159 976818847 314181125 730337483 40653448 571849467 847268583 272223381 398849338 193729511 689955786 403929178 404257761 617081673 865419603 929993672 492110216 787733198 656361618 423368306 616622060 393461152 249285803 442081915 336672428 221419816 364241965 91345068 381040205 35524690 141793083 200627180 500194977 371200261 737059682 781379489 142906937 560536092 540040055 179859087 27599914 490539113 245712080 825039283 73579191 381729398 320023081 834424310 438565556 911375122 50863950 267020317 488019092 175517744 322535346 53354794 561773539 490072685 493214069 681224805 457604670 335889082 55300486 763757188 409968002 36419416 663893927 236939517 628970882 296502499 159911008 757784754 435039754 821703781 42568840 933635908 346928501 388204574 721227350 104234233 126975452 474070205 560978770 391090781 986083178 191633636 631579138 680802752 403997850 371261661 286370191 108304605 771087127 5797465 657663931 515932038 107393719 539888874 910955552 93135767 973530529 957404037 355562718 338881399 883367545 452310833 964822942 567968278 75298378 20615618 634976426 918293766 300574655 476451044 90726421 751185661 91783004 559538934 271761531 691225946 161776440 53943940 349342910 651735931 97018980 698061112 975327399 692532129 683584026 36165267 444861887 690240024 196162819 910827671 506260886 50528376 462291437 840807981 330813632 677711468 83328796 252809448 696307252 610280666 299072302 857744015 22254433 22268592 237345792 102178601 221873253 261837892 765780229 145875501 697107327 579683783 948977353 730306580 926454679 52189275 773069858 16622298 253516095 876977293 268179814 427101090 816870069 241614442 668630844 600703947 835022386 122130432 233908483 676265361 946311240 646190668 852609142 941983967 181701404 924583963 544354573 950494625 730840397 332608365 4029305 214427158 921233045 548174164 494847085 376882716 399324064 254898167 171744115 511218482 463984195 416548418 311040688 938095234 332049041 35121112 564342903 374895006 242717565 365630679 264303531 784440100 416156307 117846600 677010412 426880889 922994668 394109326 409149555 351043627 848299434 549983294 442549471 875553577 228767196 268473490 570519897 761700400 368015006 240794818 772242942 181630621 109018949 212846022 331269591 246368440 410849644 190177646 135164791 955708711 96317153 211469619 605178605 708171284 653405829 97723165 861253845 83667622 547633089 980710777 711287626 31364599 420883215 75508779 928485394 670027494 276493269 423139581 177143845 419838848 372387419 99382122 833693051 903086497 849570773 214767283 286693728 779521479 519821622 236203120 797818002 54872666 514245484 489219361 752688617 959404804 281364296 766442725 466019101 200664715 988505067 723668618 88729662 319094974 675020476 895655700 177243580 872258709 149681817 869498416 59446379 420987832 221465897 58832302 606344583 653390176 426501145 412163451 249825392 283961071 220630404 966798369 906908950 838802341 309651964 413995034 770391807 510737554 894319968 891032692 634118059 468241961 185396333 845127029 934218243 213469062 314349529 128621145 962568804 829176236 26384426 267701682 125075651 491634969 365439042 99464868 941245292 434532893 425564928 145367881 752456703 667602901 346116581 302493988 623766120 30078726 857130863 101423891 982186965 240596937 11267343 995310555 225243069 920742457 660968916 959856925 903383791 377616244 914270721 95344057 63349302 746981935 838034393 503983953 44437453 559035606 645243681 52300827 493904660 651306945 526714086 866874441 353698398 211670473 312775074 590298793 926790187 890989604 937904985 55816508 665574484 83409676 148657352 643957331 978390740 43684009 341516018 91921730 164746225 528667375 150171882 102947032 954439062 118723470 393925026 496485935 216969111 941078410 53257289 476888163 694723375 890803152 536840951 125652013 912078569 574309494 54585902 57449468 425056427 753210014 276112761 539587230 960511704 540631128 37749706 860576163 564864637 437256625 842699050 112233088 844385882 615531284 752550225 951413461 690190485 815988606 360444912 575900577 958949264 342735973 759444451 590072516 222397278 233943737 711753582 939363645 365165368 345928314 503565526 671477206 315949945 658908801 828885624 388616260 166826575 178030784 544338910 668249977 759175120 623354124 855297417 220548211 109242606 17524815 882359040 364890574 788734346 351036046 564369336 266120394 783211867 594787988 964242355 757776084 845396823 242945340 470158196 243659335 277646769 788160201 458582986 155016896 631539246 146020456 459260093 682620488 675491564 97606678 771282943 942367733 69843457 291026584 373093295 515154991 41692006 460316039 691335489 892764053 595506303 636870633 872603919 477970976 602237658 26215011 966865180 359451084 476269206 695195914 786736693 113366580 628120065 605333215 647552570 837397353 323657822 584017951 854624652 356970223 175995951 90226157 145857457 278944874 65624997 171266348 802113046 318381339 609674146 786602644 432741143 509540160 511860231 969215837 452892881 698307635 767026793 138630577 933631293 790121790 535359788 914200323 301543086 12486089 409079482 538544794 17512621 709328175 698977717 852967294 485553312 271556081 337549093 959341120 687828019 469716757 222921757 506645371 383467115 153352551 487209946 34495757 928097953 750462511 667475854 147892788 584870123 646372504 180996805 463701177 60569015 899118180 145796241 390285883 256449311 810180066 519157638 684002814 728528741 356684266 699832627 522757906 226133443 1002228999 180780358 781225678 64521219 571493956 842776420 116775696 475143532 437925772 16964373 862929684 71222733 635742952 643878980 391198938 41180354 949570551 387963523 882430853 509193192 653379273 814616212 110050042 160845850 595392359 934701572 363844034 123105947 516204494 956676928 901617542 685939725 773249852 190156004 87146286 982996861 744531939 545965797 825261403 10958517 28083631 144920524 897372369 759836336 437405294 505829641 66879012 222350825 617403227 851317619 277517406 424375551 532357784 636464237 812295016 802004223 795754080 728863747 181589265 646069660 269417461 270694678 439374720 518022648 652404240 851677387 477371963 368521771 321580904 842884329 562856146 762849733 833336036 369562708 680921409 542450558 192476390 988393792 994680510 942752890 656694387 210851838 705017923 883543679 4526042 595184981 408088594 574834928 441506280 588459389 978527603 196515636 711835733 500293121 689806377 425067555 481164086 869232008 899737574 274497429 69081848 601466551 654520809 136661607 883600214 826939950 217470230 307854756 45658885 325292693 858832843 210097261 273928420 495116313 37665094 838896392 151458890 423273087 820103685 600629683 740883846 579012134 760213786 115200078 304499138 71097229 760042049 226583257 985825479 384071265 79614434 153235796 87531495 468659839 403587802 25187046 372835886 489232739 899101839 64106749 954844194 467939043 824805949 195061814 674078330 304844104 225625013 863354263 661743088 334129106 658445937 598669308 281167488 275463264 47304989 228421299 980147500 785129649 616693540 588046110 413930828 175948510 823532934 891694329 239907076 932238163 412179990 317905403 704197942 778648263 102013081 704626594 486373802 642221820 423697585 351764331 689986617 599660896 115651931 131347836 622950109 924230575 946741595 799801609 104754882 698485407 520923826 842568691 573307332 415156946 489573680 505273728 827784342 690557829 136714718 69505450 570071765 688357767 44093814 24779831 142482418 428194136 698286752 432777485 754861315 709482972 127969532 636246474 286469651 544106093 195270259 512800922 663952016 197904092 940761168 335349510 174698443 635141622 140777586 303113768 304336418 753704615 515354490 955109753 669767268 607097563 239313524 451438883 606385241 334892850 449989781 789797859 89763355 421713469 908605512 459956135 364651897 62184774 7504280 598110812 908941959 132506398 516977628 368000795 829775497 92246096 561760226 253785168 59154461 921247162 351796250 83330546 389614339 330895582 284089551 133764193 862265118 613898973 954000859 119288343 453570653 853913848 885693584 270599097 355803947 1002242917 519620743 85401520 626433921 678171587 943157386 477857520 104845031 137067774 817718058 664288475 750669566 338849894 16396352 666178592 922276857 731727366 440858289 621568117 526399465 57000892 337198273 587221514 372578564 106230696 153563605 374275787 442579862 590001524 97938343 560572467 507241723 318101465 484522574 75964565 956622638 871979733 501619181 13506539 702388522 296664422 952102018 677796780 717295285 617897704 682051986 140759136 375083976 684922057 515752799 62218345 489931729 444077707 529077206 628443515 481417590 787580726 640671321 758484654 589653874 886830713 185466532 432588468 89941366 934942293 951593314 299173405 579103581 765957357 568075426 942580282 341291100 524759095 125705177 582740822 340686986 822122726 430599101 653500667 4793187 861686384 861820748 865658877 763279959 268692483 583982072 348537899 852931975 22598904 719967854 659757048 9027169 942517210 755815531 90928737 66689123 406792949 658243652 165416022 81890407 1528080 917789484 470201254 796753714 686476704 776606945 359516321 905620791 899673922 547538445 699865418 479799595 310293615 303325145 486909857 59324104 596168292 911637358 386806889 266487285 315872349 204892174 144267599 50684426 151556176 820499918 679954418 244278007 904534151 609877642 232920447 5435539 804164312 517912611 648144423 473921634 748995920 419611796 577786053 72507406 247067792 977332824 762362592 866860361 136253180 71998884 801192356 798087724 773203646 782477393 720115451 657136366 88292223 533042329 772761630 621751937 68774391 399803122 927106787 844241752 589738794 266289148 1001460193 38021120 660463878 88235645 605150870 204087106 903253766 358958873 830410986 356847444 208415513 572703540 529773890 542683702 93580570 70516014 879269391 226907559 624883907 664321328 445162822 419471306 235933508 326629057 207153639 649059046 308423736 449714486 320990863 841554842 656618578 804760971 320057685 893991183 654882498 34479339 152037177 713239040 674889821 170693957 979452827 366789736 392831398 634116819 270376853 593887606 893723980 680901957 839559821 497452011 770953453 302566922 48619000 797924326 894113246 348023424 246670159 32398234 765173832 24655436 164727941 573933276 270035435 113793407 681439443 880116420 218458700 808966601 859569901 291366822 786082499 427791862 726411843 736831261 489905136 651154197 542851049 830119256 194147028 902111390 386444643 866521250 459520157 343465359 985551382 825322266 231506175 769227437 31354622 915820829 520679782 797025845 148822899 410133339 24019987 76170803 899827189 604526172 559470306 874215602 600406530 858454424 534449433 72663159 251656393 43435323 177846981 88562325 839225341 511123344 823864516 1001810387 453868412 987530797 829401211 656085845 162372459 326004615 181949517 989859324 831328924 968091921 596665210 366483763 322361386 952333879 558582428 479904772 624630717 736024432 278151529 849309562 670294468 50385740 230459436 889727895 88902825 639433325 511003149 282806919 778507477 456994986 485247961 837279116 780565103 989094424 979024352 959612014 463153642 307670353 91772896 257526958 581443132 315791995 693656769 269186233 708225751 408889640 165397584 41074831 414975014 798176863 569092222 654632319 95287494 45969024 506809514 201561880 305529255 592287464 374162434 709299852 110458587 166376659 515706420 39018570 157486048 320571632 11310363 773272227 687152841 345144159 965101863 806918462 581598317 244530883 975295305 845234253 826255004 308887158 973905961 185588381 303771930 896988907 658474085 287392217 746434491 34198936 152042928 746925329 281570972 376973387 68206702 7490963 15391679 259645514 791095879 176574051 935858315 905810506 282248759 727889338 423973885 34604146 326900867 89009401 5884531 282356034 561420691 508362642 249948437 206940383 373211926 927835126 359048506 695609282 413592266 690458451 133706794 563863632 59004188 39916909 816045787 726705385 248091306 82744692 673192179 929187212 919711764 373970048 467262563 831621768 482578345 471799444 801740438 833315983 13584467 472052969 855422194 454277064 156820166 320447409 350836400 999323866 8606094 413829631 198416540 12769002 748137941 660169298 102140917 782265734 24488877 573198110 242036179 414330545 663032504 947784657 488894428 13524869 790065356 782714771 26858384 32533118 695006970 147914569 206029083 381114450 445649040 200868901 820850474 161629454 383526086 943431938 635367177 136281562 20094764 630003919 170373052 394524208 690891051 684767979 342708211 568464824 606667285 944898595 739319618 678671862 318983320 211915475 181217763 154117930 250536988 21971602 884999111 569785034 262524956 190514759 115334071 180626434 232999926 534656539 224533724 746668049 66998407 343070554 34922073 654030460 359863050 703821410 635561393 909381730 282499112 628885480 326702409 381907224 825857344 911577248 667728917 770333431 301271286 552356437 803081432 776522379 31032937 614021039 894915194 839267424 471283580 104948283 69929448 178176756 100716962 113609473 129879932 608388852 590111984 652844179 203872873 878967449 705227307 839804726 160157408 37180613 216457364 997641955 338203689 244012906 575379415 692900066 441561983 712227088 85091976 127737416 152808481 623772161 885173435 161069011 206668949 575116838 792006113 583509361 257721029 592457663 467678085 112504504 863182372 661257008 259534943 624799633 425561456 128792106 66754370 120543604 102020571 406950594 718819270 230907936 619835104 376634663 785593968 543935513 762502811 677872855 572185808 629460968 586462205 608482622 805776506 860845204 937066700 554793665 585221548 157005296 865754824 871514694 96211498 417724311 211672945 371031381 345167860 784440667 667392257 889256614 526427517 396765746 51745044 459734977 9478514 966800752 535889982 479269956 450551000 847802291 738021344 855664354 460162828 812757262 819447661 695550605 858537518 908546748 141102950 508441908 602947766 862452085 419231784 290048252 345740724 976410336 54499490 438800643 170283802 342021164 580498654 385782942 918575037 107581355 734029741 869278226 204595469 194350250 458330871 105568978 535407964 798186826 246833817 345782617 610757341 627404945 796231963 777911841 940812587 890525417 924881397 148084601 162256593 704631410 811022942 531884468 923439302 673699523 375887295 271001708 343108880 544027725 460169818 10326178 129483686 75330736 298821773 185671439 131813527 349811274 908142052 43186975 831351994 823208494 12825301 322096748 139107126 481199218 815568991 969582290 734142189 544075894 666320492 652472775 797777406 607979883 601628472 886132478 285975528 658379181 476055613 601171666 892598607 151209468 427164930 242626031 553577081 637036452 353208877 315547048 563344560 546759084 214266187 88028777 824917779 375293423 89133356 620651498 322037411 708385919 149908033 604756206 122117031 822336257 840003517 197782496 647387789 798263013 14580793 976834748 583839187 935273813 758785504 274324500 643304348 725464342 276044541 847402174 500265454 507888437 686414906 880910440 825136809 3366820 219109343 978660065 267680308 189521770 915696923 890949310 315685765 1001669462 871862976 57942307 118564516 266906460 239580685 450573827 973084680 572447799 829791461 129635051 803206217 966882762 167459733 334346009 522949438 652105182 692770925 45424839 185017529 944994477 858832124 658085918 902672209 416113902 362106721 615686735 823737981 354973370 762364265 618522527 259476144 278292966 841306126 816986024 980344574 196394691 676073722 231400582 506949271 858037695 750982325 465293482 502266931 758473340 712602004 183881372 247177308 44944910 488447269 128698238 483236750 256812145 992119135 852229141 303367093 588315581 183703535 316389982 112507217 205691862 665213147 820203703 383759947 666570975 484780871 493471106 890598766 846008095 138011766 663891137 591152618 806538299 842041570 138095066 673845213 593159482 919932017 652934715 234524570 363689910 97297918 608860413 974126668 271971457 574348284 676264593 869377942 540082406 321705832 762509833 504025240 84310787 565163103 952734320 441105336 779073135 756277039 67467070 324637183 874122610 115569712 54054543 62668582 687210793 424520709 798994473 693427151 305724204 181054807 915998010 345064961 870186118 921741236 80254423 372971504 79766125 374161193 610170224 987199100 703304258 746169863 933061475 496497725 616527280 864759336 951665074 92568051 694627584 78314171 274152416 880660420 361575359 566634491 431618173 92921934 734983885 870889313 434890535 789151704 354690837 20035244 491082636 345015260 233052259 758813503 380897685 976113685 871347193 279798616 636058438 287562131 894170520 646903460 763924720 118887309 709561859 678763856 919273976 476949083 118973937 944497057 353055980 656319504 785803972 90741491 673319700 29729669 750984498 295244000 171216797 287709142 768908474 506352096 774344124 769874656 648828137 686566211 212851209 212218344 33700553 197355429 708854404 488071859 419379387 316697543 837096460 884358086 161059728 611408834 494320543 963825623 263716292 550934537 395096938 600325743 346865109 417443332 279798869 480783350 518140432 840152864 527897877 637025646 371287782 324012455 887442696 567623378 129352809 467860362 215000466 405416057 605612622 175527829 354291600 41029659 971937920 851542840 237636052 176306531 117243118 62506144 504546650 974771178 970645181 603794685 317974632 269007056 538905656 978739384 498878901 29650896 327630426 537145229 568096828 396720987 733266819 423131216 58696779 370039395 540918213 832749599 721417882 848478456 578335540 257214340 558769539 519186961 612642871 150578108 797082533 52035390 247158169 830333109 442324625 575047112 219041444 179593802 391952224 884021222 441680766 1847035 529636226 826925517 464258474 107566797 584865712 920214432 443251187 42991196 501737083 467919164 922778656 340078235 273438915 890742133 389085814 712034186 148043095 242476112 243197728 359206411 767244230 60024298 166750780 879271494 577306665 433153415 737648612 684311741 64343116 797447680 793677620 69654103 401485047 984161537 898655405 900702321 480382971 827459682 944842090 3235261 396307476 915426211 537737088 764394696 906202579 959947730 913958836 174614914 453168898 693409645 165706437 733545270 460484862 571772877 90181808 517373553 888320316 728472795 848282741 498591337 968544191 783546874 407777551 809201756 384443664 895529054 434400754 678925968 76375538 537298260 32990166 806184903 218719568 83453228 953769689 742655159 406708767 479198416 555654078 190299668 914977740 132098469 60964351 942928316 150506932 893642441 114064372 102227347 26648349 325386209 689994317 638806565 100030559 757427109 863550082 389676238 859845840 889655772 171491900 321217605 216140759 708831111 769162399 355165945 604435232 590478661 187917826 174815916 48540607 536441455 29658176 879933277 916629409 119703341 753088675 342772101 417129105 573275768 386293669 681383346 855588046 657014117 31752497 537535316 846563834 550381660 351918142 623779943 96879655 810732943 242994854 686005117 985896128 215620132 784690734 631678007 694714475 575003148 166360403 966102978 681131459 94141448 962710756 360276627 49301714 512544588 52584058 83648631 938710487 3250335 13366004 345728383 401573207 423602835 374275216 93507087 413025662 86949491 117917332 756383664 774999527 217148676 994853733 530212246 508182650 258914391 423478583 530378434 253215477 53770837 930988934 8532923 971489413 708968745 90288301 802669045 425714488 252961048 398341078 513112641 409390274 17649420 677863286 894350300 788875886 930531340 485752739 743662694 449370239 247694342 400503293 965964441 353162190 446767890 864848401 864454895 328963663 698456267 27503644 35250015 818052450 116704218 493516812 189471886 248016015 356499411 901243030 715455466 153709556 54109358 338572126 121311521 488240925 769492377 240054724 791583284 100436409 254352096 161002266 751092551 696832744 149733017 569495281 728340084 433644272 730149847 606685738 970248902 594462510 243335984 997067907 652026210 873719848 891464401 641556591 811126847 992005627 772097668 493378259 807275794 455483485 229261059 496133477 373893464 746519550 199659896 578602105 700516216 343522911 47772229 708368628 941189097 480624503 449674962 806555850 743522099 669278237 67000952 882470445 102751930 888444493 903730474 521325432 981070221 833931261 582599443 18948608 601488398 435969607 167701702 51008301 934983985 34968795 487121192 50658807 108980549 948158174 6247478 376741646 322983173 114373567 674923301 473322761 555429757 497805150 591611900 327388074 234742255 966670333 565416639 155881823 759499700 181771924 619843745 83477624 391836680 161421387 762861944 209473712 246174381 714684594 187528473 505912187 710772391 936153347 981917165 406140587 762083184 19671842 70818861 587412321 735002532 46871830 44235563 703836719 254062632 105693228 796866499 731408479 101789497 786166814 488221816 473440652 89029461 484241133 38362398 254923166 972131250 8418561 490337132 272060843 93493674 877014939 542994922 709688284 907463987 922179278 251604233 924544027 195732914 264165887 236714960 228097465 635195332 160260401 641472528 84198999 161891850 897463087 221020478 236425516 198604540 589715033 146534240 915508294 349894208 900866647 907015359 783585926 240782687 872037185 238360207 42464022 518779892 984511908 907063099 986287834 409293514 328600058 597681163 561772108 92128895 506033 751091328 845601742 744833109 918018694 709715027 643595335 101005955 916640513 11386079 887923470 699003084 496531735 875159222 779403234 269340888 230018273 72847376 561040948 783130603 550318752 231043460 93284093 233954933 900741717 590770314 837458880 910962678 360380914 274125052 729618589 213573703 463134602 846459146 849866958 629419265 624900529 67057691 536203609 116187325 980272940 15485154 198810447 277651942 385555661 825411855 323258535 101459642 47073111 57607748 853608550 851840364 771907362 495562997 549733463 358792180 658218914 282949816 430266233 476910996 800118127 150856371 642866290 178597518 347698862 214718063 331109267 524267319 592663219 608513642 581203163 397824914 120579860 437446431 843721321 850850290 623712289 641840701 603836636 483700876 224706195 68307458 974420427 746145482 562231128 852770580 753366439 80025049 509569657 494065256 78776759 465768975 932093807 969102023 687644785 608097704 993966306 286738219 721519905 408702481 25619760 882163264 813358496 842050318 454640008 988053567 17463369 292013847 676871432 487292711 915263651 499175220 3798202 455426996 238704850 666387511 730348085 577610726 156939383 55615502 145471866 410637542 168448451 412180070 657746075 902391695 508207789 453701707 636634044 9502519 498023153 639752488 545552807 779748330 528653029 599859197 598694351 355523834 59183105 425394819 351287952 208611074 310561165 438103117 986283049 808903366 301539602 975194928 64678516 4625455 872396535 683932557 95032280 865623994 93751644 145129094 715054301 975068610 926643222 635414605 551286910 282419282 782835715 983905941 45669931 781235746 15993270 457012591 467637308 957236855 602515946 944279628 790966892 530983731 5303152 730169883 570249606 523056639 197994999 257657993 516077887 683347875 246137609 126909325 672075481 673740654 960158747 367061246 174574799 424387213 584552469 518219477 266804923 68644669 947381830 569492856 861826957 68278016 142385174 123310761 820409904 502559970 801628189 655584167 20847393 636506630 218712442 246541146 904170000 143155899 26780918 120311420 1000408561 68947537 580547978 463689098 632699072 403051101 389986510 554906818 633430281 48623803 250753572 738710709 447756913 553286394 166304489 659846574 793130372 922675441 351254588 24605472 159909090 775647996 238641140 230640485 950027867 264355026 562579997 767116152 1002138052 678926641 679796016 685589871 329624399 737494490 39520697 958020071 648974081 471556009 111992578 123415655 464772023 657917303 295498359 753026181 652540053 830497273 477169463 113540353 508487967 678974886 575078869 362107159 836429201 586270067 118942100 665124561 46103798 767607862 744027995 963367646 795956685 323705353 493347642 186351599 379258781 583687094 3645733 704051977 131971450 289797963 515484099 383095216 139840896 192482456 685000271 299651222 125084287 111691439 770864816 565808410 173138132 969291632 670463265 975410900 134920851 646177191 615865042 672829028 801663013 607828010 236576829 892660544 300162760 616001697 993147746 424749446 577685490 385433404 972961568 253603380 517462890 860833044 125340495 847115554 39535397 631982176 694449268 412362541 430389085 891296537 692607514 631508779 143890107 640735115 858475145 726370292 120965990 875003808 173228997 288434063 648152143 879664545 471122832 401563979 239704201 611639195 18976684 485333973 916908157 285028362 428550644 4913849 242897896 530718913 946104228 233396719 874724268 297190030 699790256 341971781 752985368 442268011 993609166 244796279 893223946 616178803 613221742 203592447 42811540 57212089 766329594 932549775 966742532 901411719 801584311 632659035 672282960 103675366 972916047 769825960 72743025 1001112135 692335805 604574578 363093004 657886387 59013236 229939361 499993948 846470594 185286062 997095147 922702116 387051515 384493130 104156178 680849199 636320564 119182229 120790280 938190783 668641617 394984435 494628221 487851868 156464463 709797713 509304593 441170007 337318372 432361013 707890504 479328730 109877437 972595972 349707010 677955146 701085381 515326486 256717353 971925552 405395588 736014281 876843704 272146163 836390079 326718332 63448864 916121779 590269967 176189272 573050731 611727549 728492950 20083613 719104407 249256122 742530959 30862417 960046660 47202713 630666622 671217776 389678314 653575980 783449388 69546320 837886075 470764290 617744959 552569179 520433637 595432968 545619580 204404112 634742012 353725810 87192133 889423934 180216625 647589520 467440733 455275243 881559934 672155456 747156454 165870419 815977192 684801337 350446349 939861865 681628899 949693965 716039142 782658019 254171893 678668967 183026353 323548637 641599666 330625233 18473917 178240924 478222855 813346652 961044578 636198556 195905764 203391018 870441496 734918050 312912549 245319277 841493038 645809535 370161681 471048513 976933645 694616658 366621844 782121851 751425038 395367911 262564234 710602436 943484864 607762 215541627 249350576 99241645 363085789 984993749 28300250 396771419 152642999 774991143 476599530 612901773 88319951 12049924 873226519 192789547 647184008 89296051 335495013 330953777 619571544 581052013 807930789 211109132 303014475 332733527 203819093 288123816 359134170 615602906 165373672 682734745 77229442 429136465 171959419 589570946 309204739 795241005 630171295 131232011 70410202 94378868 270630765 440800939 641098458 922647814 459653004 797931459 452057486 527287127 320231271 555629868 836466846 552433881 471912724 431070816 411803306 558563913 105787855 353830177 415673465 735297544 805647463 936515512 173637385 770169711 376402133 647098431 898860203 221434720 533428936 525338138 671012790 719107889 659582195 393460392 434444088 24078465 935233598 732323767 248437578 116241108 838856748 391113436 26167189 576540058 765348498 584371378 211159832 653944238 329877125 32962491 36437331 229735469 80750494 590252370 887688310 216207907 579862335 175016413 795349423 955773633 422890162 99707231 879245076 45131407 127799458 445686876 237398186 102010110 170186166 692391897 50217782 679155080 1001501878 938786701 115024269 79170502 517300399 602134941 538551470 314364110 905648345 765665282 980150161 411688727 704457190 625768804 406812818 772484861 967177429 487085508 542696811 325012302 719678086 539392809 367723842 596463383 182591729 557397453 37627936 251173411 121226007 768618966 15243480 201907357 390375935 856695943 718004409 601237552 481185222 842472986 783676093 35130431 536055350 696666104 306113903 128536304 146807565 771987754 475965416 666854305 695149272 145405374 341706437 642851644 679281702 504003724 907668536 641065567 528241859 546854086 878803644 741860569 332819516 351731528 843982894 997898143 603325711 832725441 268408572 623841784 41192629 848668712 184780303 331879455 307798914 909231589 834684047 269832245 221046470 582771906 486953203 183655483 550281487 936482836 158324694 237709886 998505523 538698790 39721356 174407328 772482171 62509491 422094330 188979932 107823940 753813557 244596707 137897254 815102750 629863582 610508150 807008929 759968285 94161499 628210419 778641482 898404679 411955516 97804698 48240476 325040655 246642693 487713009 333086471 100608212 43235879 26655482 237146273 147924415 743119225 515433956 896824034 554560984 58192444 879244647 947125187 52659863 142084957 751928682 386203670 814739513 606029016 53599788 465413487 683002656 616084008 867794573 601073761 830734535 917228431 936479946 644283365 51131534 709374231 329824308 75360401 56757909 660182496 79817132 550273793 805417959 499058685 945818168 798430056 332542492 423727263 835855526 35964958 553886343 733624977 408479543 834646878 984843182 499034731 987060297 773582366 759709789 353226292 860395850 467484216 87100424 557254342 658571434 885499228 29942226 7635830 569473247 676202183 896301114 884593002 746029521 365857478 765031970 224584057 339023368 43289521 475187875 903806358 948187547 502737403 972363375 883233458 197225448 888202580 875629583 436273580 71405690 521429611 90091963 449038173 828149057 211808263 532674459 86470003 344506902 704454420 776935140 88868286 340108058 96396800 717083033 707522823 975785619 283914234 949388130 73089560 714524994 328481922 926196231 853470023 569533061 49066657 957985946 225962515 25201952 379556718 584487929 950236074 838473978 269258466 705718812 755764600 432471371 646752845 386391606 329389725 184508934 163587451 524711159 356732839 279062871 705976291 677332212 84583550 558508930 724015488 94935373 360532266 351482437 738091085 875879065 239949663 521927698 564799736 52455185 996996640 84224572 585902818 976019624 864838294 237848557 919368401 556386076 109285006 261196759 434467287 842992919 909244258 68019919 106124400 826720180 217673363 38180631 703703054 835981391 834961373 441868644 306716161 682731741 854216202 905809735 700086141 563516306 828502190 890997301 905924564 115828078 567921243 765985246 579959380 354408542 414194141 576473526 785125865 709488398 407708875 883879130 704097104 847196879 575299459 807197788 427336650 673036980 834693969 804215438 993486375 370959500 768524000 239233974 951622813 967014635 780712565 769572626 855267618 680339368 380301481 681767141 476831216 63311340 93123999 198286014 613554023 959896902 264667584 877395220 336287820 194821077 397879629 34564905 739541642 546880259 710266336 298198019 821383627 233163588 256273416 284864077 453830101 612773275 582826219 385389095 11123013 481214534 62874703 535327461 134270142 314733475 786003561 321823900 997974355 606486435 27065148 29703281 364952308 822696879 822136612 627598011 784833276 449122177 986354160 195836404 503841609 846346359 51469315 971900479 866530122 141655774 306598438 482169384 426054541 634181326 291961087 410616117 240124817 943802208 178535451 991992485 538211831 837338435 486942133 572611910 290684238 334298813 566438059 379316629 859530737 886503129 417085664 733891708 303320381 937809511 225856194 211767638 418759322 677197569 385340361 822804122 225303895 887362933 645467395 844352612 380475420 815797163 432020961 797750407 935121364 774350001 935138521 896092267 99884490 618495033 52722104 921317677 232527063 32403192 565624566 45409275 43598185 942953149 410660124 856242866 81120023 532974862 368223093 803834434 650383964 89029868 56462628 772855155 66360019 901541735 912094872 578286988 386380251 94456635 152672057 911950833 930414683 7704807 905084000 112427607 247239628 941741014 534239940 828676470 826201411 93901193 114978944 284493555 976246811 331588035 351919217 387559893 862491638 94958881 98801531 724472668 235676265 907019112 763162852 707812864 689695181 674721626 300258982 682261792 836166901 664890327 363504974 300724214 214167001 636796762 904123155 667565252 338463357 864879030 300315292 787857555 553526541 258660084 122349227 166039892 103654214 848677016 608258961 458301112 724048132 176076169 50741014 860789794 148452942 143363460 280883490 494511530 855390943 562372875 897985751 837772241 233640119 190337231 635778123 194333819 203926718 50446639 841489013 855652174 676133812 388858581 916821286 931935052 352338708 995426436 861676814 157947081 356201315 710632447 635580377 998045352 630764631 579115263 548158463 416076224 758208644 521726459 138021820 524145292 580657810 369402490 647587276 490106387 100165794 516277906 348785318 875785215 92914863 629514716 85716890 54106795 409447685 228337242 427954286 769029490 579806793 386905374 521330047 917309783 673845047 735913241 656260716 653078469 145630371 729365229 1001941567 505107871 785414383 120600749 143608554 473832653 844303448 67114410 694295338 290797209 542241421 960323457 288968714 921856209 386524575 628680887 470015309 333529052 230778040 845933882 356779408 148421298 885533611 269291448 53790356 379088755 628666631 811097267 501705905 159712845 64938178 97807821 675548033 65329646 407569792 561000880 408931023 819212509 337813533 405344401 143717024 496570326 478083035 901073020 591198460 211008844 746308196 661062754 392042686 406877624 701997642 293769781 481783519 569500399 50483094 964071703 144298643 572915935 755407480 170679853 796536689 403909115 302523304 15428078 802660761 769182950 792485752 513101437 393131146 275587394 591875590 659960336 110723117 110440070 5201037 284886506 670248137 570701138 351149290 528876749 327204007 389890331 546100322 443793739 341890660 125036272 163796378 48971273 67318575 985105044 15262676 848795451 649638145 882566559 12084026 210871782 655906514 862935621 510111057 71090411 681334416 183150927 480254245 769607391 927988614 876029564 339269060 57902910 77699193 69496790 367834743 298540814 224571699 986885806 712433369 882558978 165253519 539741317 176120666 170339323 849687901 935618679 673183899 596171154 145387642 206461415 314806410 915636990 998791474 472030307 555861318 754409711 224373539 422087425 996747666 629854335 926359967 457102872 706414435 597456494 769920820 837405560 870895692 195501552 389252314 305764919 792520007 767578842 145757846 610201650 600397937 680188440 254199989 769992461 697923693 740674562 610197287 932806459 625926589 133119759 967949795 511972696 44932133 606095891 941213420 47822208 890906661 602652787 133469813 786564633 327412756 505505120 273104745 252843954 449891137 734029671 816661394 17964095 20627704 298266127 897063012 537339475 441397890 390038711 771186876 268420287 403852237 204103682 161851860 654695460 853683275 262333612 88118253 247582314 508125960 405988227 988618532 265748815 615143023 580873523 106431684 372245314 188794295 62717237 48629208 486079539 645648297 67740512 780323846 452978210 75998723 620071973 962704719 89979176 674872053 66095203 558350212 899723341 494175186 597274864 646198652 243477286 328416351 631698521 935891018 11575332 580135171 399937790 608754995 551306082 834525341 913598916 603967101 736399067 197319049 338578235 191807003 432055778 257482359 980797847 751910627 284872993 84909366 715545989 666564872 297324315 453451528 215311626 916793275 290004444 371721143 496974500 179049376 716875042 891688397 184420217 108066714 65142956 343711456 291119403 646856868 666716263 544419277 618542990 382872450 482551524 651455031 845732062 225432354 570790300 592091006 260425260 502815434 283132590 142921688 424173193 504545887 482861795 987391948 792557173 72072848 193815777 12040691 83679378 180825128 627535413 844076079 997388033 1000042986 566448774 47383808 553348190 489096153 996272692 455141853 30978296 750391216 70611585 622873550 102172818 496367985 938274173 714716526 90085659 581082468 989192201 725417997 813943078 165151193 105677306 274976717 848795517 84461153 269761529 715838919 577205490 554873168 456027754 802867764 170002781 968511591 986172417 615517677 893366110 54433927 691041436 516721385 958296051 980113112 821958765 924057550 486618389 312650860 33747609 210259909 454001447 209039328 125640841 74556387 883951720 633264319 602328466 731250857 201648181 945700162 119791939 542796685 2093187 545900296 456746325 649083246 722386336 792752877 68950926 535876753 826150334 527284423 847079900 604977820 545225448 940005367 495867379 969537085 612785628 352616653 821890746 604637666 774029154 357403093 986580328 600310319 361590374 730625551 502873510 135885511 118464549 277365906 510930325 912908639 842750677 509387572 301202860 23956297 309298766 14064479 840823880 441417046 136299338 594136855 312647819 706487579 742204782 846387376 95521214 659073514 503052082 344198843 165479351 387814345 222474689 71631792 29548200 746039579 168426322 541051190 699333137 581605943 680068000 183520189 71870027 701902432 430959438 17600677 860343985 37408510 384929088 215893574 320540557 985226672 378089444 720439244 103724141 296313996 456991290 841449462 107344015 788891115 585237470 349826156 427024565 615526637 6800422 73656876 737467844 28898930 770579357 140438649 565731542 221084829 5194783 409695638 991776536 593720158 318255024 164073179 697505612 842029423 332254418 857905680 309681269 273505764 904447338 863622960 500229697 459032909 951074428 236819430 551795704 705939896 781282216 866440991 754522506 207124771 897786929 145974694 361478013 330086904 357196450 771792226 969033062 564416185 611074073 661035261 246583712 273287125 265287394 553860342 317747252 831719369 606517519 518843462 803228552 26390137 527726683 572375911 838996627 737960550 92860348 864211050 897100049 772137353 756510567 366282000 830288014 701441895 906418046 140210146 370700190 711489624 482989288 834104439 101497745 604702629 184191314 647931127 11984081 650081940 379938115 63760037 708951170 982668456 60325665 802542465 963939753 733868013 28978082 622558571 394202337 924639390 576207751 716038325 753552084 817164037 578130754 72723112 65414406 810575964 406953450 254657341 746060665 243522877 122434673 173474234 758764966 74743700 329203176 253023975 687503820 407989091 10087918 84490409 483056931 26217598 868255577 843035173 94149381 157516333 219048124 747035373 724587663 901690278 947622747 548598396 773978668 760612691 853889034 552654752 13587649 785898557 99840099 154313921 413987692 348515077 593136399 138240281 999765116 547427675 38869626 704264023 995995369 486190225 34284206 879313166 495463478 250650283 396328099 815922747 460455208 735645862 378393564 789875898 763956816 310387761 408483535 127074106 511916985 989213369 405682389 942092887 735623365 133104066 842009120 614777199 951422229 870662914 703450523 639219301 240367544 315323884 601570263 915943914 339900510 413607239 91166277 864610753 900833079 139081810 73544654 349016636 677162430 134492043 562222815 100111303 126329418 422799377 89027921 20381334 110229431 978200643 317799607 158926286 168647048 735210202 182279035 332521569 693367224 433809414 380811305 187851304 138053416 689102687 55830183 816195480 985756432 240879430 997127501 660888901 110390746 264345074 426207386 169197663 996683658 928029554 895008980 615716707 986873665 552825246 532792507 678529350 884063258 670837241 113137059 622541415 1935464 213268994 81415854 20860047 586442130 884010491 373108688 923975844 34304991 603362979 197501619 40250494 387514984 171935115 680290596 156965224 384783377 868256039 946599750 543452076 946088544 996571251 599353214 814392405 695986442 89087875 205254366 382229495 612147876 666181029 294922639 826067953 736573651 63476437 100300701 691070151 872525078 668071338 464555596 385541177 58776442 885792262 143242770 15926494 383219184 243508703 971746070 166262027 283276259 720963975 613323439 66276787 386336830 815832064 416237847 434915763 646835803 808863300 526904564 88060572 856988063 241944971 590337269 361276120 260406257 708748204 175636018 253323850 59905960 545828276 228517906 196858945 136432753 248038452 909928976 886667388 279961702 889974660 518009925 976364736 436397304 997909628 35586379 356417639 473019272 155573168 285009719 321411919 181898689 110800533 465933395 805943472 716123684 260136883 462788754 953431794 789268207 640170111 71980671 155719547 388929913 462170420 543989928 592061022 449514091 205187884 725447728 246301767 484994719 259870752 212627688 964525230 753952330 757861164 668182995 193727677 794642685 700858412 418741990 652181646 279024551 453607151 662745478 49153712 801769580 53580066 448413518 971101239 574661855 175020379 438342652 323437588 861815751 412246177 916917826 901135742 618245515 160466171 776386219 790264673 687013607 767712491 473067615 828125287 900172200 369702511 653887944 68535799 774490531 59681858 646233063 831118086 466011241 577440303 501841331 235792290 775743174 795855030 941866052 999367565 201767179 32094565 67550737 876537474 701040372 964306566 242591297 430499095 225362431 142255846 97196637 978827750 116267903 402585430 736306598 677303193 737318754 832301181 426663595 168406804 557284506 759317798 902278461 813758288 322570031 282284516 815590950 749762563 617788393 562186450 443869735 864270102 274134689 788232966 743357520 353273626 539742194 815474721 980866888 461123797 727629827 227707595 170430841 434776589 333008525 369604165 50567660 491318368 813078195 366042651 523513632 755301106 179142808 887779125 571687484 624539303 452005474 637723672 477395031 53524927 655244965 607986593 290050051 278149777 79176499 114009516 255867051 116528933 71560276 685047637 753223234 301023884 445922353 166922054 594486378 378179738 962467665 760400900 477626217 478884973 736500107 895792181 207483217 687654330 118058611 349547237 382771101 782557698 345180316 134722944 322670199 118031653 816926557 236047844 226473034 2499359 858132368 181344276 202256340 802265346 590538724 493778499 691707935 94828155 596153106 589663962 472634605 543004592 510937674 873240078 627244952 879477749 190274700 596854800 253163370 346998891 123773372 570190635 868488931 459837347 802310985 213844372 252080056 109115641 924929109 673022348 127497160 355681132 17408857 803633263 797970806 652334434 750679538 285791391 717964276 75491698 959725264 589757810 753637768 94076958 125071677 870592928 249996968 681495742 212385526 86894431 859948412 325726910 672363650 932593977 397983851 418417895 977877764 337352565 260598675 605067258 296588089 789151871 168180183 26746645 439915119 346622380 626841223 442207093 612069611 597189511 763217436 446207521 61454831 812418819 83644726 672016228 297892935 293466020 402515853 943590280 832399694 346100301 189125551 867115830 198665113 432390499 801095124 239448337 555386011 890745941 477575063 443423430 595807051 535935685 809885221 551428245 336511844 145752307 467871930 334907271 720099502 620165387 198056778 787545000 939942667 309527466 20270385 2594747 180619873 266670261 951274805 104594520 396083101 168296030 893475897 752472696 270146723 968478762 646837249 181481724 856590346 808216042 282675179 234848415 250890528 396926974 958705425 67939910 285815569 297931555 529890565 516545938 569305413 748618559 50867884 298472120 207798023 361010333 504992020 892055219 204425162 617220192 247718376 939060398 762010537 823691558 564054784 759847133 57640527 564299060 702701951 886970278 350623404 959928947 303169433 788731696 773647212 221785869 98019631 693025146 446246614 969351165 154724871 748509567 50930838 685569666 556174549 976854164 275321623 846806419 970233238 425859548 286134948 595973660 172172299 56641801 994067143 133622673 225363459 563094970 508854752 638592555 953255124 373528218 843069146 262889196 553887070 719912222 605952984 509201995 210719532 856839530 681361385 775258936 207977324 424615058 245130719 363812727 333411868 918467436 131162814 194583639 641065334 653023963 818789383 743283149 140554824 956688561 91791086 744256644 681571236 558826839 40773664 249840133 585797552 4062451 305880304 884946233 205859583 148000311 856864631 209380603 21016705 841525149 389084820 281199136 351691594 223397385 695619858 645620666 323306772 818455191 976115179 467541422 587826137 965317860 196486108 368092767 814475104 526090429 804582148 905197419 418349972 245549013 703412144 708972602 435145351 128734654 394257940 29749704 416283960 792394563 709312664 497704591 771475323 895655985 976878654 616875276 275765610 792389915 496503878 814271290 471211043 660496582 771364290 103874709 633962245 282710043 226056423 495702997 435654456 11768702 152436235 776691966 631351720 177587875 110207871 812943122 411612523 7789687 436269801 955469403 960439845 66325293 127077657 596981674 212703697 196372692 325136025 853495253 214844673 418551407 780019477 768220939 984260812 136106278 537567163 310898355 717928589 881841439 823408851 508630719 363412033 892701320 268115438 361402476 568938797 234596153 597695238 832747828 252349871 584038897 820481375 405484647 809158479 98059473 19729683 825662479 535028587 955250696 305296161 239727440 464386333 94483311 4915177 98684856 236496061 94070954 528701109 978056477 734349428 956276833 885896702 496434614 523146711 509676893 931849007 105006024 704639218 416619029 498200938 289957358 547116988 379257379 544540010 68796518 874848980 31150985 838992952 438775954 176898937 922446817 535734829 853540330 709486227 401264131 81047213 477359630 344056772 1000389047 820959145 453183504 467246013 126083707 592231618 600622823 53744295 707401953 408366508 351143068 374495038 827980312 438775995 458826692 584972240 877486003 250755717 777363001 462775756 675612738 513734496 471997962 963414825 488809501 776359343 876738243 173956628 285567243 905802714 737062621 685467280 620371328 360975415 322319804 403379375 329212627 265220256 463533455 334409925 436222516 143874501 246990198 462206070 258958868 391255006 66174297 556155883 125166578 21962819 658285160 218739979 762847889 826316649 858292889 191845571 725971808 834537591 651701147 354647221 410694194 737057588 320616660 533836826 259552962 973336701 967190084 777165314 485411539 318215307 949894456 270201535 606214967 285778500 890805539 748152866 846620734 412561461 514816607 433135875 915687083 307657993 624933983 642609545 969281525 544020159 414268540 594161227 736749307 841620456 486199405 662332174 132658717 157849519 87753969 869080166 847390292 919707597 424356090 794638979 45151636 177807089 21050110 903698410 281587500 862110845 534528824 393658708 628632684 803774322 91561275 783312685 202950162 987730142 538207344 841295066 444551345 34275272 629114717 425130069 536752238 381915618 287914685 230356872 59084073 389120124 48979512 662076180 184390364 327893617 328558660 573753778 691340336 65724626 459503991 24300508 812222321 775825968 499706192 395805383 530692603 754363835 554066328 945503726 714323299 750804945 185946086 784550116 961022737 40917750 228639899 406690276 407004842 461555598 564921770 394124420 250706808 35348093 406402352 337293400 117377283 420754142 104017257 699303845 919374760 629358717 948216781 273663966 995519849 613128713 376253255 914086339 623666566 864159686 772791030 152193259 935678123 615437857 375937602 968037392 133590452 578970576 645568623 62799936 883612496 119337045 563123940 479032697 428862181 600945526 445045599 553553596 816960168 555601982 30204108 47946135 131223498 936098527 379924879 912598878 331526542 300549908 75409316 564626223 377750195 93300869 184696107 901165623 781131240 634768945 444524492 468441567 52985541 188091770 39324219 745660083 777674949 857316445 651798373 508224876 521820803 613384647 592347880 817113905 322821607 395139685 89158779 211314182 854738335 908818865 63511887 73287617 528866969 665630164 623567019 356823940 892867284 37044582 899994096 900236615 713600222 910871581 401093961 490655490 394966097 490297885 166214585 492876433 578424374 850109093 677519959 645243808 41089445 401433922 844727929 287919662 223371578 981914079 739024829 869048913 562339864 984552138 435658192 34821442 739037064 404364894 356971125 219685196 813826370 147366696 37609006 367159264 838108036 201365656 615856874 309840734 776989773 884202483 766310535 895722295 792184516 219935157 606214233 619977160 633613757 170114071 588742083 475147849 996504515 515984959 491705811 867958539 115877413 416375880 499533834 430520403 217032271 35855022 331234412 161677039 275102706 275568018 801706031 18212234 537289791 718298683 75809465 592062562 372173231 272093387 733756082 797005975 345266476 626536985 611405188 492130154 144727541 130945319 965901065 401997434 895209751 18919565 631486821 754847564 329547251 959073460 484203110 928530641 523938054 33225267 198552017 635511081 188471550 120826321 306200786 172516060 388456374 28065338 779912556 393466452 913664603 826604658 361570120 357296135 646147311 490497789 652967129 869721171 205126255 628724445 704708494 704513373 517099502 898491943 173578477 135392710 656943519 307211040 271656730 345114813 285967019 44406612 721085208 562483314 926969631 935595640 16838623 581045361 377369771 920154293 114768717 491502652 186505185 132589672 543772997 108207997 792926255 964077868 946512516 275939767 297384139 784029971 180821897 467254008 520298094 503133163 960274421 484574565 660016417 266916662 452274892 171870836 477635707 63863526 275521149 70511381 54379065 333700090 354436753 90709165 398294325 229377193 935769369 661921429 246583550 722043220 777642123 213276566 239516056 74597170 501121023 965567249 903819314 106754529 883802909 630525150 73180170 612330488 702839254 720683378 579114874 332291056 532981028 732566253 373147904 740315770 204081747 920746234 179132148 93904569 627857034 542181005 509301665 363842499 264535651 399628079 354465088 447854564 794032412 790291076 19930826 281968051 672231401 252765767 967068908 837453508 729663522 90725722 371382572 810982855 791394889 778098505 154547880 525217541 953728869 494194661 894619643 222730939 327320472 377976469 643084976 721379800 560591884 245619459 64821522 853594502 277715833 206511298 985806884 994245937 367913749 803629877 636087003 191054973 235428437 807512285 775421242 943478454 655402495 831632507 493285193 164568049 235538639 552048076 96156664 548844737 272804228 191648269 894469596 970455977 250039749 940222903 516081249 451989546 272920757 249384394 804024781 675987735 308883863 33048055 436574984 926929335 891263105 850193277 620830081 575682948 322755077 182890497 116081500 268690884 436667510 104102057 580937990 167886346 956922226 739091958 427216228 580588809 216622569 128018834 185529898 860130793 30348868 902090707 103329826 668154603 665618252 390778126 371140756 535698914 903351625 924922318 333368523 104293802 378824194 964089268 715974156 56231021 726355426 781624542 537591624 494802338 12229476 77195751 480507196 415433085 844609295 649548226 944117513 966644876 661774484 456114932 301294861 571153020 48224169 732922673 920680023 189471976 134360930 537046210 105031512 452858828 155684965 590435341 99894999 235208270 585227781 602853951 412942389 843299167 832482156 629282691 711134795 512837466 292565743 247109489 129846375 70756206 99827312 524880615 516393208 798495741 864735970 81430706 729618610 87913603 207836822 899293743 346976349 826271714 464379594 679229119 668266561 853489705 196508093 13992617 577135067 414113992 3498982 790143424 647221543 742907580 599253127 32804281 60777470 38351074 131870325 243659822 994115720 766625284 905170157 238513726 52895355 436579028 200718613 948373882 946099407 633307915 388579192 479294192 128075404 882066304 204053959 430945890 578728236 692858273 93473090 188427297 456242515 609571017 663285306 296188118 107885097 142434276 764315350 234236844 255644188 990035326 627730754 994699242 745443585 840792885 88048273 702807334 413326637 855920659 401117506 202201183 230884003 929501432 986574922 559802995 80631118 837642341 276890548 691539833 347444886 721361400 478482280 445956429 769444292 656066879 298625838 593254974 930463930 915082724 788736575 924043674 213640962 982728125 781440147 586620766 576491878 162254651 867558976 230177410 459654666 78119793 458797781 95368869 299738195 585874895 832568140 880504433 689469347 864436735 311318307 239143672 146407041 515504088 245934658 724770337 330602339 387911455 292421018 1001684175 172964477 894806301 578227382 713614047 6479188 846148840 483769819 833770848 520156555 361099143 151249323 524815100 975672624 12013133 198933768 613605334 564996183 719053226 938916347 837117681 827473619 874407063 420307515 107211187 481827238 27165312 405422176 111841754 371493511 416718922 842643804 287865342 286822869 218840948 967125934 311015767 565334256 93160302 473835881 451665539 64018030 712057401 931414158 403234083 509975418 215360550 637620333 402636324 516207763 691919228 66996363 705175222 689350068 357399525 907916656 29701386 914426689 533759216 646282216 494431243 482661670 71661907 345494748 794667914 877188023 515215724 95218451 416804789 836458315 501011762 944980014 917064873 476389370 260144454 560005022 456078205 464561011 180388340 760867689 413276644 716898811 841983151 540398533 635629387 84894970 547161697 761257565 457798593 12806128 764602092 546169752 49984627 894815382 249722742 746069202 330455849 848703061 5134535 402979816 851166112 277386677 205048484 835839354 519590037 607193462 422025351 471232167 346942331 499297835 491499037 217533543 964821948 700034163 466742233 795611385 281611291 801102872 151332421 156525727 249878783 873996540 586544496 609196611 717151175 942764094 986365037 21011659 108575865 964546883 202173624 171380324 417824036 49038663 930610750 587246440 791137125 507498947 711594650 62877778 674947518 105179009 767950398 935745394 448704632 896165273 217369813 337612746 742795893 733193686 236525880 866924893 309903696 245156972 952635324 617420751 400318094 80800470 801442731 815201831 441202699 632253609 693458600 704366400 427414916 106182176 808077534 187783755 903494692 552748552 699943654 536906484 343101585 895097756 831832029 490628465 397846556 944433589 910868623 183337445 268934053 176005769 5438783 714784388 994965468 875577995 458665568 233274851 333501734 638964347 616103119 485695770 375957797 406404752 179494139 783668301 253771864 17767902 334272779 593320485 974475017 946679356 515819533 250940134 579268751 626961181 299085034 541606892 406372911 849756968 716526490 312487986 346518803 995426650 654000373 462473569 298968382 561243859 600590036 182590662 629498602 249188341 639494490 130945914 144342949 764909534 365934693 435301697 650715343 103486386 464631648 730138930 953166152 795521829 535176425 573980479 186881541 933411714 272500445 882335368 317312569 56336819 935939189 16509349 975506997 687506393 69371119 297286424 370933897 655093099 502899595 793573860 476969240 427195166 646418159 551692541 626643313 973802050 150793101 199443073 773865630 406742621 81466915 229535079 708513927 837641773 812610615 121057225 112572906 147212072 754660654 226281374 725111153 78926587 261023890 898438012 559659246 809715121 432413363 248610205 921535769 995883878 516186982 782598507 711683528 927712811 335074511 341686146 705343160 905102049 213987108 638897140 299095709 557059884 372113732 924098088 297845178 51454296 760271614 785372887 667099309 706865622 606956315 871471467 295298261 189303203 868012540 920532495 896955718 841264062 897870258 461432973 233200649 953633179 632072290 537017113 357165914 290933623 373896522 683873176 928943986 708060590 633856394 191739950 511645554 208087014 548400534 144758876 286837704 523508731 200066307 527901325 741758393 128595699 2600395 406070923 613375371 804558885 288728193 227036476 467935276 629768122 168898266 650538099 7109168 933418992 164274779 661919078 848935281 723666163 552287981 321346342 412649950 572812386 164734368 206825706 532094520 812556279 250296327 218346065 306251307 1912282 69893417 69859842 651845146 398912416 209025143 632837691 533207302 43622251 470718619 168415740 558665431 670335426 672776666 693514395 745943449 567138114 922590254 863292841 605427968 576380600 126236843 679305732 48323912 656482689 710718687 952461140 384707200 245320631 293161462 891873919 702591992 379898970 131419407 712433930 390746485 726741339 297148078 756425661 985828799 586305609 376516053 649055076 350359376 882154157 41506105 85013248 685239421 101388569 912170717 851927813 722976563 576355187 526130658 360305903 869032402 23836883 383239801 89245747 789603896 370800366 81704476 543127654 363293062 988866176 175939503 97267422 889192959 143576212 142871851 507067004 168448533 675903300 386788924 524846014 557017071 442895420 694112631 405941859 271659789 621655762 284232023 751561638 931215355 809223422 471046813 123176613 7082050 348068321 319982237 724317204 168982996 608989527 477732557 412101174 320274957 298731480 236884652 873715819 920684461 844665915 629216405 52829416 486731413 559114463 575633688 243747791 851333563 964459027 673871832 29552091 848984128 770259998 395791066 135008391 252179211 848463553 809271772 932674722 591285667 779492052 56224866 904022161 949133873 443704586 300563893 308430203 577228134 686783573 596547351 893818043 40329162 676449031 821142574 165474357 991048007 694263202 611317032 682898765 652533403 632231040 119031279 985942148 745283135 674492710 97022749 273230619 574836701 537708777 428049884 205906336 84106201 173462606 27154530 396767325 333109331 883305921 925337299 706540159 437925814 704898293 218013679 771184394 936381216 753831820 15655949 375076064 266695580 777696612 690692408 182486688 790134739 852893937 163913470 388996211 938661390 374048251 137457922 74566912 816165270 7312797 275244682 158492338 315038823 581075553 147844672 320332330 481965192 530927864 407036386 299441100 872764916 215932561 853872875 29739426 698377040 19043370 469199221 703115915 1133922 300032929 878246433 159224736 443040664 802847632 256999597 223624383 220505923 10979852 920721381 299167812 652288693 198571573 158143564 487070191 115704769 717731289 355647122 961149313 49869276 195125339 173784309 349927192 678233711 307091601 226974839 88441131 77542002 471079941 56547423 58186857 770068636 366001117 216900971 394626080 462564515 361818580 323994614 98860532 36245725 407747879 419345988 126271478 511914136 914574440 597383466 374026868 352354270 694800422 272855245 984965911 653923345 146703046 402163672 587893760 593804036 412858747 402063839 385429379 922315718 751763582 74933326 349054564 533197472 799540684 541665008 815888914 464779878 838755171 983674282 264587765 510607005 599930186 840826716 29372393 338398344 731071618 573605995 36039402 308413323 682446522 901705548 706427147 900002442 537332787 214333346 804496857 606960849 426365499 168789410 956282830 828663873 408262057 813057040 588956662 117422053 295820613 599269309 429407920 671291611 235300215 951706439 55403 681745341 730493125 3387212 931670342 876706550 572235595 608474941 432977743 228606593 61497983 432784752 937761742 362919553 413756506 302254506 347951063 596780695 700219891 734031141 832034982 390531627 732153812 345349496 274163286 294791739 543258762 212899244 244942614 833472929 977759685 577611800 560422697 968212507 666177957 451400411 162449721 171050902 178056475 532894604 573996823 231911598 2994533 387059443 403283436 741962207 282380321 249241677 849811383 72760979 614293924 339140855 110463231 570469333 393056655 340594407 335259928 599984094 694086180 560257568 485135593 570049314 574592548 283546066 462001434 458163549 385266681 78833313 419171488 999168607 995298772 44274588 763179186 975769114 846020263 427901217 13844975 880387590 183146588 663858506 655782566 166627856 168476700 336442084 869109555 981257523 347668766 301578169 806786567 24177637 866090202 849269273 367436033 424855769 164875364 287878187 63890008 558731462 974488556 826195015 806943715 690162999 967318994 760751441 206790990 924823969 909377670 391089493 340773445 674731687 728026 819762581 610931123 534546593 471678410 796877189 312533837 638451549 633598259 255022309 90316601 926127301 571753583 664444575 873708133 771977527 738112411 51572092 440265747 845222101 325457207 733024562 704458064 935402919 9887263 207849425 100729016 921715341 247865871 719270763 360317313 566349430 56048637 991692684 472832405 38006863 685310902 397635976 531276472 595398552 222549720 135856962 312243387 509607748 65960056 773785384 99824263 431779897 202087598 924350716 303458440 248043117 78672319 136568261 451630948 427260896 786517990 648046200 828634068 78119433 735800581 931018825 50559192 146752493 224309898 353431983 242371703 219651247 427675600 355655186 983036908 758769519 656146809 481598046 411026504 581461364 773004737 848559109 508821929 205348850 582305607 831809413 86024852 136636336 509717507 709226988 901321703 977909270 506887800 958617490 30917003 19675710 491211460 165788659 451909267 1000232126 81517982 703160341 784187188 463768379 770948522 256144226 913851258 379780039 547219108 785386139 160966892 433320955 915239007 122036745 481427574 905212592 209519102 600839927 379486624 694111481 56817469 766150661 980763789 924397905 1000849865 630825911 155721134 379802537 357275452 36134219 302987059 956351965 774599330 933287907 277316452 794156676 276029829 433085150 105217911 366897035 262353581 414459109 830399839 346897844 623278110 576666092 902269411 215265840 206126907 623615544 316591604 470149932 600102164 129404916 391483287 54155406 682971123 771020659 623170717 201809458 909324616 514456687 210720782 260832371 60801520 1002122786 863219770 451031356 719794728 301536232 457818788 110829188 738710978 135290098 393930390 233797532 463193898 467378426 965286789 280941816 210508701 216834281 375867557 624525710 58890499 114220689 638839529 805397548 891754135 73521377 304125058 779016198 450234587 208284991 630471449 445087234 420520179 532841718 553768768 808059114 351799411 745393200 302598332 315564748 269227831 509688322 588366261 611619285 53235676 719249805 585202708 510691176 936521359 201593482 69917055 199008163 435426631 168438741 558910462 237496077 920664095 772533098 709429610 753389202 406577215 393663959 433712002 472702022 447277718 985552606 234785666 909914601 977260880 94022784 563078079 726548896 835999844 952865702 384716817 608652243 477760609 292083881 376102749 751624757 565767861 117955341 83106278 612171145 580223413 721623212 250513473 439917291 291458972 547069955 392927514 783576994 405495343 867323725 479659094 404596584 866924936 975941676 311779041 939259407 755350521 530428820 626602100 34798142 963805510 578267420 574776570 594153669 42543864 707779672 910157007 713969399 50945894 892067417 570650332 740703323 965236239 698095105 4866844 615593078 501697792 913415722 781074264 645144460 972192836 805241403 910457169 443279564 714750013 574178906 879204626 618721141 519457119 878409180 375796523 529851007 794745167 823264993 603363974 493777279 732291580 139134853 9921495 604655736 6632081 717301772 587583777 196335623 792205135 836594901 436298431 759584529 418226983 168619766 629607005 661982232 958164152 27446253 907222292 779905476 37007588 716721446 352486711 219615381 883601522 555814290 626134429 37822099 103965930 410542485 125197460 208125615 898604452 280644599 836854671 181979994 769822757 262193122 614240352 487708925 420653068 447081711 390014254 911812295 802368402 368238389 638326727 641432938 514928017 718928212 274968193 343734865 287555508 921401404 656335498 727225339 850106337 15687931 240038690 80038022 298640703 925904020 588246690 650346916 472109239 323223776 986678636 775868743 999832463 611768656 16030438 302180919 504487310 581109981 608892213 111539624 791884047 819738074 804311963 487175249 213669574 893816593 57770157 119403534 137689930 880456897 59304055 925101806 960867729 527893616 109205459 428631795 371638150 553471473 182065657 787916990 448333639 252459045 46104340 849042751 478862405 25786463 686631294 932540125 414652674 319739348 303382432 484421579 164281031 588924229 995547977 241079365 705234550 824353607 829953007 611646340 812173756 383276096 964775586 201425946 557821907 377338966 750871927 765508079 512225240 962786756 580273108 206415962 441014911 436190894 896188611 714416057 611200591 815026706 916369428 120375054 586516393 740596804 603313628 173951245 64102395 665564480 890364646 171328601 385352160 111524473 816260569 353906434 817164856 479300299 672671610 823741650 247359590 439493853 994623547 490027993 953748748 528441613 914387895 308297658 141047057 657566329 921512594 244201618 965126211 603405914 346561047 922965303 304229220 329590322 266596982 303557487 819890554 76332519 629159920 713711505 989571731 475176399 166590457 934423463 228249584 336626054 223747624 376519719 197618495 690702457 843054912 594251812 598802854 129730345 856703258 335256973 534346122 594841932 143185121 645135910 690281695 11696148 742455049 659915148 845588648 756564701 403702913 561100515 383752848 437700452 601342321 619365153 876630425 34987459 90340414 602841429 213887481 866599274 426580503 894742768 134954383 123035454 160069472 417027514 510659724 458982001 793154787 273296097 442830725 614070464 638632550 465966991 484435094 352915823 104916441 761170550 759091361 75489859 603880 238272727 111257620 860319736 643553409 907636399 978939165 370421186 645458959 699478647 686987056 226672256 482746442 103783411 105697756 908287637 335617989 895132408 51637009 932206616 753794211 833249469 339939857 282292217 978007403 652491213 273444687 140063993 654900079 457943025 91240000 711893669 25471218 8279226 113163638 590195 770755717 664093581 896766328 230990751 895350640 142617452 792492929 373752138 242826081 817703860 994865332 346966363 921155195 35938728 755917209 685074006 205237899 59673357 745585740 873566222 285125975 17693098 99664065 26307834 173558502 731029733 393005941 760335782 228980886 613392145 631553885 655556083 511895070 285893781 955941350 737265780 378385633 940781971 787036699 720690039 43586403 962461161 959268576 241009619 198273766 969175519 296399779 610541844 50282122 336785854 65605833 109739423 929373042 131929700 400877679 844677653 635267399 814244129 976994166 372413944 339469703 611990418 231775131 609591902 359657022 2398768 112030826 482901468 914553604 950276095 896088404 151623709 515578237 639209907 77311210 789487499 419574932 300017416 879420775 576581574 156640351 459714926 330711604 179381432 945744047 119525383 696305605 236888069 856302438 140035575 129002494 751597560 104307404 350301147 475199193 356768152 690430088 978836815 992954304 210211652 940448410 796561285 553778446 968994499 352846600 954812484 35295731 357873635 713837111 333699792 945860504 1001183235 261375259 369339088 134925718 407791941 672371406 590570569 44879739 593684022 207035065 624058724 217985545 565653571 589820613 427085656 195604500 197311487 170146753 504636105 251937456 410237674 207401631 129372433 4316237 884353953 574672594 694758318 500409858 62277467 616252907 411803270 169730978 622054287 887321405 769577928 388091426 522911660 405967195 354205271 199232975 856304910 189232550 449864771 814941833 634549057 226624073 462510953 903148420 351864538 529609034 901446385 409833096 135537785 673513366 420528767 399760040 328524125 771500065 734617205 680415549 35702642 933715332 507997252 444092056 875560705 47946151 483279928 355981699 353352296 744203136 795201376 327294468 468823232 616671307 293127420 361328821 654309963 995077105 931876698 56005168 489289622 166221794 361935204 649656679 698176072 144125500 342608051 50447550 496000870 551862916 637404281 95498389 131618794 342267082 298640369 516106889 274610471 657540604 805132304 560350372 454404034 581151813 910397535 244311462 718552772 917212463 859281056 110982814 533699912 104397872 644985997 536933201 238080637 103081385 178707447 394985015 637591084 23633967 496631655 522392404 137936389 127639589 859040011 568311263 398417404 514051144 275150783 790550900 370227518 735134314 603247580 555797098 831330556 51495531 315777647 772137535 937523517 197774509 563732739 261050542 377435354 258849166 126594458 525811523 341613092 685235767 94618637 562006171 183863099 943074557 914151913 596774559 354925728 158425786 316109946 518018376 861959955 47570964 158088048 98646466 586597882 8905603 262972964 656214165 511147253 159016839 742036507 211319923 374513749 819195880 433937046 719713085 332897565 53537166 717631974 632617939 940445600 454105662 622512058 978927807 594819160 484654435 380765858 170011217 49865378 988750259 132010966 423650189 77414529 329775788 571886127 642010949 624025171 959032012 319993190 372971934 127889775 332774847 918701726 108578740 423553233 763962426 551084207 613004687 560002963 187875433 160682389 429357016 617266098 250844128 26637590 112764121 842687887 149793751 908883838 969693030 171099794 771647069 788019333 907841680 311412262 550458211 466909066 489576631 855690852 508767908 773779497 326916126 422288824 969130955 723602667 83511022 442963991 832007148 599317598 141028160 302155738 413058556 290906174 751608914 75999645 468917653 157794240 925204992 756388942 564286181 367148943 794683445 988224126 68533046 367868819 773843059 189609344 284947534 138681981 504375777 144872801 938439232 618332348 851029713 545451161 36196706 961306918 220559689 255574286 307509559 795955525 526351423 936409392 133316288 877377533 582882999 861798307 211207519 485940870 543159578 349170742 309008744 511408337 614160750 915876574 954043679 945767243 66499263 501073839 163960419 439108703 500567432 208808393 852918028 189773939 358582757 558192629 196807331 719201018 179456681 597118107 887092528 547589416 718208724 81758798 882291494 73802235 556562620 945228884 592955128 431346143 457931971 12444809 735140681 440930118 740140229 842528940 766770271 989622584 965702412 134483713 909541240 920763728 442473211 849984194 317574838 941814938 67494364 189706919 433213285 670625883 689592807 907324319 618890052 110171337 463614058 949381731 148369295 526080075 85073390 857691287 119704255 285540560 488091381 782668036 650166312 601480226 120477300 184639018 947462094 262720030 225100709 100378827 812969985 250027578 678936764 298076806 346951342 399313717 690539041 592025018 102424402 89040335 964077283 641501638 92366367 589967277 767818184 598922913 245505230 395370650 123845855 971299294 679577802 27834278 445097772 232662980 56222677 65599491 145403143 928704453 457037898 1002009924 849327863 822416765 76263609 358993158 914388209 695431370 362905477 633326729 50476518 781952267 564222367 234073322 885791915 602081225 594694324 207563565 312967126 194490654 781376996 10481533 7544179 971774163 532002698 883148936 901522643 385880082 431812665 680450919 310202013 670864337 772763092 554737856 664915041 131792065 455975558 335299816 939786209 161019999 567338775 884645143 924480748 673841007 540697357 451917873 711908844 251205380 793831257 800161107 689275584 572199117 931141146 612832355 630540745 658063468 94594728 313739367 943932111 99137157 328635015 600855556 359073197 131899709 583794975 204538239 544167388 289016201 340394724 614902915 994717671 745463406 224334513 365154646 717941232 527430799 536918126 821259851 709057071 526846090 552924874 605746645 410098035 605796090 181977555 734771713 964639239 631037297 969679447 765390975 86360852 982982665 335700065 693239937 566385923 490316598 448502691 555663116 733230149 474403681 680608326 935092597 827939780 533217314 135836430 103821750 306568212 452287831 917419938 555418593 453130936 668920458 79256890 26940457 900218363 513922848 730363579 943907878 124317404 187158335 257077649 456521861 931657345 377990781 654265693 102440779 824595996 462721672 718878649 800346664 531722043 620891513 179075260 87634478 972864706 699385492 928847761 147273137 432254029 564066402 165773246 284951309 585387609 690133267 20624866 345324250 978393086 728066399 999790158 366653596 855576433 431054773 996328379 432515441 743762226 102124792 241270554 622431701 667179084 848208430 252577375 424940213 621566499 744760215 877296338 638615814 639623834 668997234 167674293 199935101 269369792 661365682 99989111 769743391 345363356 565674177 94622374 36949458 885382546 774622269 211996951 152884711 456115222 33156867 893036715 568900155 170421618 934610542 936729414 972602609 320475987 356461845 564781851 495131805 299430917 277772105 22172021 238864230 988606607 724293113 478062381 515173296 990811323 674583473 344055800 684216430 150638204 403912553 284150169 980643311 846132449 268680498 234700614 83545644 640624721 545445525 680862159 703746896 118973527 112889194 47331289 677299792 388652783 984543679 1229212 995601945 65388730 143806852 487014022 101929018 923289088 319963916 167202573 484711460 555085561 874507252 776538328 461068210 36392935 107402651 769059071 371880357 231592592 707628535 593410239 911860922 832466989 982613988 221326797 963101677 100008272 55285704 933042305 30150466 419951157 419583113 632197303 783360026 11778297 930351070 300951352 570784959 793421860 204788033 818543186 593845612 492150594 760989313 516310250 226239350 588738615 293668361 610929503 486242741 939993984 813435981 514667362 330310860 577014847 914515201 282993160 16182884 498610908 764183786 894380992 340089910 822855848 78898573 686338784 967356245 901358099 315717446 637231100 655632039 454110761 953847695 399411852 228699064 890656843 692630219 69097674 427484838 197554260 928908327 874517565 880955478 710605427 861424681 794264833 837225944 133744391 382466694 68588268 364271843 490331022 135436177 576145906 832629960 211310866 90345399 750811570 745555130 100616991 611962926 404428146 61318809 197407754 152327429 263580702 130185024 39147731 660474659 316061483 863334847 584613688 349569723 429724048 607558201 410559559 835101178 378233661 505797129 654904831 742664718 911470582 923326358 705202845 347209291 19605748 603394125 402348451 417276918 232922636 202219448 157849691 38113993 373234401 34526669 981547124 20437368 504134494 155561612 259678026 185849356 322217927 931579246 854402904 543546284 465022660 942774378 673063497 429065871 415961620 328176293 280249525 444316044 841792993 270672259 542500426 777181755 283552266 563727821 737819581 517873517 239698373 87394806 99440067 827081755 9109080 170511048 270527412 810115092 178417939 77216115 172449642 88423827 330986346 66964425 426213126 43149301 215888161 295798404 547251192 389080856 903397044 12981740 141229765 987643997 724763428 304304862 273095390 1001932407 105766469 490433834 923625652 151167450 133180795 135833386 300058977 126012809 104627590 284241987 288132836 815642857 705367992 237940542 575397615 520550961 177247619 263333986 969956252 189451709 933392313 409483302 918323396 466116628 195704945 120359390 810424584 211364799 26405939 673331074 691456410 255555914 280130114 109572288 174104437 646711323 821312435 772829936 570647848 856487344 880807015 962687104 304649157 502012527 667249391 781716366 305045562 953347044 437483855 786589492 368912811 681653924 302668243 286116244 769967569 803286787 866643296 820517660 976092133 836129674 439118691 454499245 857648208 413732488 208001992 576389785 778243999 660527528 837523523 783943839 327658754 897160780 369335919 391199013 475330660 991827857 809318455 158923626 663457001 383027629 51682183 288886306 979901243 640590182 266605436 430168361 325477422 892790604 1000212524 640481219 902035655 567800335 582847309 105885178 70239672 301487914 434077413 977998866 576244882 627754318 369410639 265420511 365959213 780076638 811318774 212261136 322873570 319428282 957988580 481708355 99021555 505431787 205928927 617540924 185411051 633636074 533152736 395845804 778147768 534197976 801758732 333132445 708333725 720979830 804399512 545008727 972553248 702389146 687745493 40951951 442788227 489304545 735660625 363327879 841129014 129727777 655432022 286669547 164262947 621450601 274699370 219408337 682947178 821711581 4069300 149166136 276724076 751623575 243007867 493766812 908457532 783089099 506622942 529866282 205115112 498103759 223732461 442767858 104330744 122894721 268606338 189590614 737855247 440511864 937635918 709645229 8738856 952536700 751871847 677667303 288159156 792054799 529352616 831958383 419366723 770590687 453050756 177533999 239950540 931302738 959630677 616542161 103941429 767619958 717568322 319862162 621576419 461963985 407245698 416543729 838600843 939079769 475896217 611917978 54445598 646755773 773791400 530466346 627799122 193536667 437236864 596122021 650689742 206404433 383280247 495132223 497444758 100670937 679469471 527911947 950061246 619897956 65597197 436873405 604436094 771128048 410963855 165222346 869677693 256462554 717024995 413975738 952064855 250124001 994001980 538737767 393858405 978101204 570890046 983921822 271246528 605798857 847298230 898491574 745468872 140991311 911139580 444179207 974749314 821114809 271771123 216845581 951910214 498598906 444865450 496812494 811258821 753391595 629802760 268708697 857667791 435060191 616910370 926613431 997334974 81471450 778241336 343269043 137009469 859965691 632840890 888615523 967848438 759724686 111194919 405454330 968158664 739083567 16115718 567197386 270772522 365362528 186702176 575997043 172784097 884566254 808577283 439947005 975865004 241878425 309604444 683413857 763165993 39532535 492164373 886351598 640997491 425421172 981370859 63152430 198850762 692969389 358218084 468038155 329752529 272723134 944652465 15983870 859053543 695120221 479169269 757055 399719840 137425486 716043671 999589459 402038319 683555544 120541131 368878641 176567647 452102530 375915366 50010355 159321930 415620836 950376545 367775759 910187998 962075053 745329452 732050941 39569188 83332688 818235336 838670730 941798015 902588214 46372883 362524498 704467401 800031380 58756669 615770847 198276765 695743648 934460057 964333987 881545863 542889120 852951722 441066817 861080265 411256093 650472391 862127477 427572771 759617942 405941828 473156127 169337083 476645365 459661523 135486394 100669299 944012742 931221701 437955645 802634009 189289573 857982925 840184765 216092346 369879401 25921878 454299258 101534958 765548188 993264457 535788840 518215882 11878286 227041570 960748122 502150934 353436932 673115977 231033866 62683738 700316976 64252907 385507357 269967674 535895915 537315866 66632597 424221589 523824253 460967680 170749721 835507095 239276323 255081019 188487416 710519110 231519586 660239489 540041575 723705870 937226392 209261136 18105464 360321407 218621590 851070646 110569988 10273740 709788977 355045454 63026056 631673573 579907822 517825402 969296978 489113281 496029893 28441398 817908996 241865515 485944223 716272759 231711319 662119781 335325920 972262331 908336028 69962015 424026475 188644268 866402024 797047036 304980994 951177615 395767718 759417169 393997442 412122314 730050197 67657544 718794270 209845366 150497097 589836538 982999631 377511414 497970462 641659432 722469172 150702752 488435966 353646745 801587075 842734722 378421764 598202351 421932630 354969920 349730387 871080825 44657097 551911275 475605020 231248665 103298128 827785053 229143730 791819097 24104947 246003570 30662068 687066060 101640168 624240123 774150745 301387730 385557721 167709948 998565362 352282625 743035641 702144170 565683929 283576023 680156805 26796379 735307349 958886890 140175478 401301417 505088645 136655790 512688302 22604378 232441036 408463808 19545075 991771987 757423088 141084636 230260209 405852616 36824170 107296846 562158908 499005456 358697403 597021988 379566203 562813177 37933235 580067363 820916986 377372267 19281133 81123901 992582938 57203913 726926847 1001999828 874933127 304272190 745314484 44717175 349874902 721834897 159845679 752558118 641834555 176931486 688804164 371755470 697884527 821887035 117428361 232358881 244976879 412017318 633351449 93698476 130125647 375171598 392198317 179223114 395268433 99287834 191392195 612589357 969216171 768794668 243052547 304379118 170530434 930114773 65378400 22268879 861656479 533214252 637528371 922188838 676472491 783415600 542621457 218264049 242539784 835212631 22945658 681422307 913112565 217745263 681836130 234062084 720881515 869214065 509561557 795549518 881081514 995969937 533128249 162585773 571473642 330522331 452931519 213990751 503945495 991164543 487228737 945842272 878067284 303570971 7534553 592326519 576192581 742052233 150989667 118974798 810131069 966138260 44504556 952213400 299701946 98151303 512038851 261431957 375213591 829033164 137386722 640481424 539777627 617563261 808065699 289490215 518291445 114570973 427250784 223416273 464727895 913788626 810701961 745231039 666192789 545449723 507857438 269427649 457316865 872643459 252478186 22867680 342190573 508746709 428203825 246098837 496984713 486231399 745590361 324070948 413912671 118227432 398129477 409418568 304383971 887451961 547558019 251606713 609075754 262833226 767473974 608387467 233365978 467343903 706508136 598511851 66620675 428996120 617685525 550947984 96019050 222015007 653182251 27908945 963855921 380804590 241630378 965852338 262054409 55279688 838163460 99561332 269914316 522037774 625250972 736123311 17359257 912479211 236139786 492382018 979755359 281540379 488622537 655725825 262907455 623850211 694484758 488899841 92771405 107288575 791396110 295534345 4354615 173979107 212283199 93091943 256887473 440459496 99962948 914463681 706635393 890559719 881494648 830172896 813496983 437285101 285482051 38239030 900834139 989406977 840555334 234254355 971822626 159941173 3210222 476688103 117556114 138780476 826638892 12377434 908059164 344982056 499026120 841766750 475876568 655855506 15752466 142096584 146760279 641190922 267134672 384427457 735725198 829807833 620441134 129599995 202373 230776154 309402208 39095359 57213908 571050627 749008578 732442722 559415720 129578566 348891740 996998583 924163131 233425326 943479768 81567409 881105590 277587796 787467708 471996371 252289433 732176421 609606892 719811858 399403446 673659088 296476146 871821569 165948904 449287511 844973598 725106576 942616586 931023288 294581867 960416776 323071509 266637578 242600406 886329931 846825600 685243090 798695984 171330252 601422920 882712418 774552504 425030063 369233109 380241555 306634157 830944636 89601318 202230083 436704325 964070419 851342679 544165513 386815878 532615988 896916630 31878552 988551997 378805042 217629940 789287582 291882145 235435184 161668576 357757593 324677507 118084058 36106673 646946474 346399068 61398847 298079802 834801796 576445814 335130187 114316389 766428145 496396090 227566016 665336970 143369446 456242597 654304865 232584105 203427697 646559246 6677633 515019233 175537559 797693915 577666901 772285705 915286589 961129296 876468633 701731416 517708061 242582892 873193778 373536317 678783635 268217441 20926382 219688540 121788482 27218135 436804166 738134547 449350596 943677893 46546590 437368994 26660232 880635257 466886623 239938761 827583284 708852001 992449368 698788509 57292458 812470883 877340863 873802049 68545394 761344308 733604896 155670638 473790851 950312873 406469739 656904624 388923392 294713853 304881340 896225349 99179430 533098827 573896996 55631235 996001250 241549141 518772801 424150660 224189266 490440506 610196886 393440227 936440709 661190305 351441220 408327168 728707072 674265462 225522335 166376038 123360379 585428687 384925264 538695454 989298352 100211484 636656261 167943256 922617256 745038830 111596491 593980375 421221678 829674605 757904831 509401538 982817114 281822267 903758983 317216843 717887848 198848657 507023706 513770231 176383304 856369775 238559407 646054325 171343361 229704088 781894044 180585666 147499530 604894013 9079241 723490816 296048286 994589060 754620302 949113233 833656149 39158838 337013315 966062433 646553154 11028425 536785015 154448782 8127524 613811150 178552145 824186118 741275050 634043649 8472870 527163292 786322647 998629224 71522795 351668707 711158777 147055412 66102702 89097776 626288706 987719459 968744937 636512874 132639956 945880935 986225778 504545097 569886245 537531807 482074333 930192299 127737876 49735153 840722928 291365752 116293072 17503756 224222127 643990023 783592060 220563658 393196617 463934544 712176595 615902228 540457767 164829772 528450157 932164237 796309405 436295721 109946511 72041319 569353464 182775187 884003392 790199272 796720196 575056702 348375412 416158467 329883033 14583737 270474235 929174507 518294276 251283281 525598615 352772730 991181508 49489989 732424511 398203910 852247601 679299570 925378200 483956468 183411014 967425360 942726610 263903488 599577351 975513025 162021938 996158841 510072051 939349312 245845138 393500519 948600702 451996487 440048187 116925061 912757349 487041146 492384928 77627233 802577407 487636727 185345655 945548609 147359060 2425425 644702398 647017777 166736652 926445160 374161332 146539960 880309763 934690809 584272259 571810856 367272825 366680249 98272756 368465640 240652696 494653307 356241059 443666329 675101119 872762252 185125192 766008795 719904987 90978504 22745273 399478458 260094639 506157238 549737877 692701336 871823339 577601020 545903321 601529916 258615586 759068941 39194662 60411752 188365874 709516854 461723969 728508867 642556975 564230199 710726745 866884743 33615409 14001196 919403516 938901639 77203594 504341208 341839241 668624418 138653756 874203714 424386830 662941817 623334395 627348965 341903385 536016307 612703291 556793791 934282060 610317771 348693134 561689729 117813569 835773788 630483619 661054713 880026372 251720429 601641741 48810703 585856238 143099097 573953621 359110510 739422572 472400000 818390192 268189911 221062016 614808295 412541637 886444180 972862980 868870205 151712752 913409443 375530776 173037958 661017827 618942342 670009397 74966787 284779398 165929922 615798521 362905559 278733804 195646737 35350536 135900631 56779672 19117175 958662668 338849724 408402257 755196659 922264548 579224203 49783198 53525921 975800207 867158118 233726632 433421687 516610771 778162292 664850874 924266109 341705523 778955995 221724016 846285533 804590335 333019704 548193042 199693385 302477277 326335521 991077818 989710920 378374818 993822254 876694790 397649540 214394533 484991561 422271982 671545274 100231949 595223115 437184133 231191860 235821900 846849613 387384646 246865281 296491991 704496716 699392509 281140757 431902392 468464905 255368633 920424447 845943947 698607942 857325536 983566404 867391579 679696401 533517226 329095080 43932486 623448631 603518881 69391131 929800002 435311464 530042658 455977854 175474450 30556228 845708574 37308621 892576599 327087758 77107932 911132036 774891839 942166004 270306912 953425103 132722274 725627899 426423199 967795821 843246948 942707157 443830726 932173926 951795294 297402053 120866806 424726594 397039563 624423037 142269174 899348919 892804821 482752768 434448333 675383764 399206629 296740951 583673663 527012045 706264997 124970815 910335621 385834162 136714924 999390352 410028731 765985774 47805739 994767636 766174480 828477441 384285250 402781672 263753566 391951566 308260698 718557790 741842412 397026655 984389921 356141394 473925716 217687094 913028589 611458225 927430461 93140836 853445508 171609129 371488407 318804401 22825537 971730907 537425745 939183077 553124828 234179028 705875157 467770934 680969818 631713116 970236449 246768524 954545768 809269172 182090628 92001601 215810475 866566857 64879603 294558261 391620678 181713 234635179 470677924 954219586 601055474 85047750 233102698 475848238 509015274 765184809 223300885 259815044 229285878 550256304 720355858 2842413 410648779 938639930 180915628 745277694 694438331 703398573 834790224 941976028 797972037 603786647 334497506 551358890 801751933 115228904 884287514 175997742 801680411 316573040 793384045 539835710 395566391 48120575 479381433 190098557 247846066 936249389 591312438 238633767 343018408 753277590 676054 38575599 33104946 938323745 859675870 981092439 369186107 460500080 890280135 195410716 390743995 889745097 153954876 641477406 97114338 485523806 942615288 14896121 473798111 268004444 814138451 724079528 212154795 515700711 325564910 283471012 433313937 202354241 227804286 588711994 728403475 453259663 905203330 562023724 869749365 687042044 183457130 539894292 590389211 458173688 5000428 891666152 71198807 966208195 897458107 507059371 177211720 386768937 544405617 533312544 953099004 326930292 810048092 162240727 690738788 101471840 336182888 836391315 218195019 190359959 135855464 433356840 269708544 982847134 991253127 657603022 371667014 514359344 152816072 279896564 666513818 48028256 521888754 568140495 105539179 392803948 608742283 974929899 383400520 419621333 798702046 79122722 478074985 219617336 958810267 841183598 815199200 157176711 391991978 45472356 725154788 588682945 534745480 122281667 23838844 123606648 675936385 809845104 996809099 758184 550389902 763850006 940621511 861976791 112336768 848972772 952788703 83224676 597541857 534374819 537471560 704703476 971763851 912433486 64690470 581869761 295133879 3866018 85845830 593459339 727231845 146183217 6812899 620299184 368516461 955673742 410782497 185917533 575225638 102799969 19910314 607361887 738621891 206987116 925463612 588348076 763714183 950551046 589185375 258343711 327154164 24219225 544769913 697988764 210768322 873656878 516927736 437137524 369768138 967873679 618200553 406947693 588003883 2931781 81007620 474635771 66788269 813649205 377546820 961027713 999201613 849651809 108079999 250926190 83866989 624493252 139478904 855582199 200547422 804882834 449241275 72578378 174033975 948319923 222639 1001062224 851036851 938763116 461074690 579971391 553247142 567931608 635584099 695382130 688198117 384846246 768190628 128319978 618716011 660571471 295283439 992822186 457767212 125078970 312746915 483059311 992896241 773570485 237762086 148273691 813435151 994981932 681488861 63848736 370600689 599582789 843610458 324538311 182554477 643863769 238920322 887667652 252714433 793743146 929705332 956574234 257726046 947295983 86330065 981837923 386588548 751640295 633258223 934390282 224763693 444126012 338177376 331081014 961140264 352482816 289679131 925936811 340432701 604118495 731814957 555110971 253896298 857022096 260444225 50576145 832228712 24204455 298676323 567638349 914529443 753222286 988542641 448293411 861695700 684002844 553185333 215038544 882070204 662331135 160134639 956156295 656263966 795090353 973171740 764521354 534053927 557964791 990917205 686156387 802022912 568537325 74814622 818757276 948672381 74654911 51497969 155123756 766402218 880965237 164063118 257525450 995589531 117215207 768417970 847461452 351821148 525721915 207809108 515643983 396114806 240723881 33017603 854951864 812184646 704020730 897204185 947275159 775122717 507949029 820838316 13335570 672619513 547387912 331220676 540523411 637390209 469181368 718595192 92878274 449896532 873329148 842498853 168620162 628248155 981899034 688811886 924159732 56471706 326023158 521416951 807559108 361968921 622740459 931973359 934229303 870529642 159384260 243797533 965796703 193276012 258275633 467972208 26001864 971209814 870463009 111553652 708910434 72133672 277828105 826402457 393464712 897956415 59251953 556619604 157016691 181616648 816235569 658228380 985227333 987993027 852339928 729116631 172414184 909864032 259769036 431331562 27643427 763168933 54013215 44682230 831720114 779102447 230376742 862882542 265371887 698487241 11344729 447282701 701600814 1002307977 213369109 742080008 899804934 582892964 336079475 721361493 170177795 327153768 866652697 170516194 222386183 651330545 393240902 762553173 617575321 707296923 47465935 527923958 515662175 122949644 120831372 845988050 942496525 297845119 264969734 240066272 119158057 875491233 701923315 300443503 253961260 814781630 950615368 651612713 843707359 619646538 910241488 737216508 984037884 441619430 398108417 226056607 550541748 114852732 200296059 905797712 205647447 720677903 320198861 474576722 184420113 200427748 558125863 971659285 23718920 527691561 427366585 629978231 143345452 984730982 378278423 187396015 865405451 924255920 760442423 335295844 586376807 579065491 474213524 81335322 202260495 268950496 482642926 208607666 477879590 542102968 734053934 389793144 161139870 437117995 563232543 680557758 223753955 563466792 376315043 388604027 624159482 804114062 90427362 398998124 162827660 381739309 271705023 665642687 233232450 582252551 445131922 21997061 766549704 756667742 498015371 875112087 36619952 685371759 650375150 496420375 617439088 216291514 503884076 226713145 471954660 253948588 468074663 509113085 353522603 130923873 936489917 824752493 384423852 378296205 742983626 66135332 892660464 269485829 989604165 276119036 729748374 273943867 958838264 140954564 872225187 697556250 139267720 498647766 325037728 58108777 294548275 265123297 391329912 285307603 715832194 824361627 56336598 201743598 130701506 787230616 667643926 977052126 465687246 299001675 338339820 924734300 857032042 864358071 534243115 475550546 598267366 636238452 557257179 965422817 250771537 235121995 585416375 919173557 862807086 674603848 385339126 230750825 60769500 501138669 534196033 159742113 689143858 600445973 493264505 89371378 494723762 590018004 714036882 147984407 914782021 476491254 592569735 419182362 463923618 656380456 97169655 348558113 651131351 987008288 687518662 429253193 4921736 816074652 903760229 17953871 446831665 18096443 187460542 128273755 1000782188 45245533 314893574 250522509 959352518 947572546 664832630 242758035 23814035 594608026 158358209 768100040 807288461 765582877 737119748 642829102 980243077 667019171 578659250 583843083 709999963 264980423 895816348 206061357 342716409 44929234 937546179 388765903 655054700 941273750 599608861 885184760 783092810 691879401 9490720 341669189 935205609 553215825 591226088 845864218 170690879 965437992 591423514 333144225 686148639 237818181 44742367 597783063 828446517 824463843 887267407 566223385 620334571 475944849 699794485 363411883 660598924 228324481 547515016 821652904 444620219 60214916 371096620 354466788 483513656 457824811 655549618 389392586 640644767 116223028 122021343 861350085 15038660 687394627 639383229 514931858 476662921 78800834 987821196 353296850 306382481 231462527 279960030 661082783 404719925 625702712 300056692 128333172 890202789 568129892 580570727 222091356 949476580 582699214 268391049 228614583 651591531 964214008 993108967 635338152 42426205 636379616 866160414 978932818 185202575 725869893 993546326 939163495 910650255 42953835 491880407 213014925 70498086 453280419 185772425 980355380 958605245 235212427 130506909 338107832 561593462 646462073 319284352 803414842 291634753 502588295 242419153 955074433 257791732 454900618 863392588 387091570 844135733 575245036 786276556 194926314 243372084 895591003 671571125 19618963 264892987 662605408 140121372 288628709 641412558 46920308 851839306 349598943 843098754 792558623 95383892 981463310 828435384 523684018 285365374 887939972 126485424 446644545 908360875 147120518 374574985 167611680 266832008 468884034 723327924 465507612 836039564 45334726 204590949 983506779 442565919 479986540 922784299 231125755 42032029 70508691 103069232 861342060 865255916 355464646 73554424 126228704 567102 783310451 127967477 894816038 843266475 896534434 562877601 203642343 139409579 565237733 123701466 418845345 117837991 278056135 366693322 310608403 315036492 895166982 418827227 834471441 524945537 918221660 455672328 441697029 251828049 316721205 215613147 520344058 467269161 113315039 73749282 59372328 518656224 450412012 22797573 128835502 516232167 25315526 534820386 267549616 150273274 431612658 297829015 346952054 250907937 996673569 17269516 832145480 239752044 235006594 492071006 531630069 699461136 587977211 100606597 615236882 722638103 584514722 922638558 738708749 190768609 540717127 580773069 197183080 396694450 291551885 24971573 842969149 59202388 751217317 614544857 446965176 85435373 952001757 12679047 734145156 856307694 101261357 759690160 774692372 179963480 5374778 939268685 884695053 723677143 692508285 259071278 150525429 18353467 8895234 16158217 295779822 388255976 254326006 175695721 286177283 719095173 165054575 357720008 269313193 314011363 633972839 715580231 213511156 172913349 225905695 523812535 672813716 929621605 423268634 452907294 552111186 628874449 962248408 62050708 785462518 775818196 116048157 245399330 529755588 362585810 864598857 933939297 892609146 170416828 127824936 213086444 835149613 62191395 542895976 897387270 381048002 105899072 568678187 600143540 17968670 177012918 728907898 694695636 896091969 431896364 85019226 811705172 779151134 700606782 697873167 694845141 389749423 672810878 194280008 180951411 444038047 951197435 803713402 644924633 853683264 915195834 959426624 312599018 991530764 700497612 675153187 1014476 331795088 67589451 398707901 963970901 177031619 857628136 580027922 922810753 376631163 843498924 69775101 421826198 290112870 59980920 927675863 590103382 386213305 304555695 227427710 421829240 856233452 135044373 48921590 5928328 238519078 319722375 599760485 27047105 222996733 150271937 615360960 440892247 595303420 756679882 899565157 542014370 224974763 657473563 434994853 577700349 589117394 338009465 334750827 171230664 702719958 748761267 906490987 768633242 861098774 451189891 915972564 240858032 938505931 385002562 835744296 818581687 962499236 877844436 458426566 614278944 532470650 837326576 874902807 615156948 92649667 489668825 518825440 670215531 773457519 116824850 978928456 239846794 712808831 273264354 144407609 927564843 693741678 336694617 484567608 609560900 435483670 323524894 880041476 335974362 401761833 58414333 964169856 597577917 473667636 279413565 813709716 980348783 359832564 58577629 862431806 388140187 233777695 724906634 964102582 515236711 390003501 191207340 169886610 447332962 598852338 213087979 839690281 245814895 324315463 631208150 728923237 791953657 751575957 621797003 465807883 789163076 832449200 613572257 12520038 751349498 983244102 577252920 897980 8332824 878854986 618016261 445603985 261159178 43560496 102079596 562409087 344595772 647931554 1270275 609213777 976394754 347919588 199864703 284086766 288420512 64462463 43438383 851883317 103262901 479626138 137654793 25554050 21577920 752558783 991828567 306575179 476879139 672803754 64404822 112721158 879016268 340089785 82032228 820687298 969574665 743397453 655655869 859104167 82649866 101913446 389632218 166902407 901815662 262691299 608608090 445412676 418046077 487649127 330462603 700714027 562741287 680087703 598812165 940909010 529884874 540652714 773508559 869964101 584722819 396014175 879157831 709766739 885374514 725257593 651804585 121159487 128002822 801939257 230770810 263092062 48405852 715654938 507417009 324238110 232139220 199627806 261696644 233014762 428881744 26689441 597242666 997718793 421903950 58129523 7775901 199382376 131410405 144417042 65814470 473738791 492930530 570961272 110528821 769980407 526189211 770042717 228780551 757982069 39105170 201339790 793241541 907703831 123462994 812066602 979170581 502406019 530124402 229951663 793508879 11944154 378128484 596280481 210370073 960786957 555533417 858199743 329901043 337730301 323224015 706625200 867164456 352121146 738191746 772739888 335213501 458502711 773129757 644728970 775253154 75287294 909890543 394467390 810727346 656531176 65592319 413511558 773887592 548548901 759695216 501112683 395284223 339747468 865680233 644380946 750524520 372702794 151060707 48941545 523586826 526978686 134136846 202369924 136030974 740178842 175041414 807828083 952214629 192931836 29140995 879192 392925826 333534831 446095307 45577074 443130393 566804539 171114615 953339898 59716219 433182158 442278190 950128381 760037184 756746652 979147224 412609418 576422115 258196415 993893331 147220331 681696091 686377900 968591475 598027196 665478005 490717776 433951751 593382983 448022905 625471388 467776838 365254641 748385154 465353757 60986098 334815813 671182536 433499812 162207383 380371477 333870439 364827097 359356736 907794760 122312780 374969619 958825410 29731937 626048054 79423545 319563683 887223220 223960810 756654757 874528539 829409366 172502490 580928345 294323261 826282233 564808119 87659662 259890353 446151183 588245246 194727009 902271479 861199078 422652065 432763833 7086662 56173743 136500135 688647031 77783595 503528593 982638119 594424334 210306089 897150620 595531945 791233986 356891811 252389417 830484363 457086600 151731250 498033333 694120807 888378305 385132106 755534653 879450323 868263820 224432721 856213161 908218276 297938224 431270611 609873291 607229398 376492522 23358056 627582578 973108509 367064820 190149665 578472168 978099459 64948324 627671170 565961203 525981709 274007138 689411066 934602730 47557675 798520967 219464195 998703761 116541335 31543724 714371434 284714853 846459985 494795556 650824239 698734708 412942137 808996793 960986107 523617071 380529791 501189581 283438416 540491816 649433498 608349661 889042812 456820238 764027727 320977660 209280877 358454681 66766174 695639557 229151822 198918064 451554447 689946959 815018825 300834294 929701544 319497591 875178029 78489037 679663694 210323040 76312759 364808883 803216225 108137781 863121349 67384583 85763110 243092854 866152140 190017662 156386780 57972709 904474193 320621929 671765037 60866775 88925998 387275946 179544119 445390729 336794175 442877057 198042859 661519372 260482793 203433708 995665760 78775805 121830603 531798639 556750927 4736219 350026424 20160906 474516586 435794583 736173866 897515513 134509251 70875061 936049143 476895298 959164088 270968299 34921155 245726923 848729179 651421023 6787559 414622221 128968558 137520632 619197868 54104911 93570453 634667872 923014834 976323799 226210089 27652636 269006582 750053609 526772986 697457960 210506392 540801741 723914967 543441239 615331142 231533523 977212229 660586925 731719448 197683106 924287373 148680193 304061314 394376244 708791736 564407110 258120009 467107656 388403420 107015410 901151082 165895704 310256506 629308587 949380356 279437733 328174678 5336894 104725086 10451829 177045739 473428046 330020494 826210695 959202493 298136450 45145837 26998974 895190918 683568432 562450222 169349864 543645288 977303387 648538076 298075145 400504155 631422584 181440822 344451094 7376491 330696826 196966532 464487112 142654800 794598953 510036935 152089246 721820567 787029067 106743124 659859609 740549684 276965307 217858734 645211692 709914123 45153222 121130350 363645013 141606687 49552407 663601780 862758445 653093676 342817316 400944556 866895750 145638547 756923011 93581102 673592846 74824190 339079357 212662801 752173553 1931010 960676447 758737432 170668227 195333909 324073091 897358062 728525614 389938869 322808259 185639734 775651032 223300378 16384699 196095807 276524588 735789760 532689948 871355077 417854240 877249424 1002012965 440993645 233612999 31867858 605113878 180360473 844948549 969837214 299996479 37479734 663727405 728546153 878808496 186982248 78260539 932980877 386205785 631176342 63504816 437834336 971723402 247845183 507965348 322256169 636272578 124601328 223265033 902358516 860624268 243312177 862194811 353797504 375136370 842720207 779634019 220210131 92803661 539841996 20040375 866920374 614801517 561508430 959838817 548687823 707059094 252691063 698337061 306175691 324451810 728060038 881804434 567091652 833267219 327090009 89902433 951741160 187577697 343405624 524671688 766976564 69589925 210999559 266057665 484128741 311815826 535449294 83714348 42138291 92282893 773102264 822081511 219405280 1925145 43338056 240765649 952286508 85059161 577236591 632326132 160684118 220662155 70675194 358419815 632776352 73653388 855701027 921899755 758637525 513906998 204396002 85945097 544141142 375377416 490840876 150162567 626980043 405739111 27960366 610091289 116871210 583126295 194874429 71936037 529697945 419410085 185104719 646207971 892916142 866823791 901013983 199226769 882726879 180524347 689584366 439340959 681152256 851477839 417171944 847075100 251211824 138950786 799824757 898452818 610792803 203310657 184200683 167607639 935171913 477928416 11140722 528948569 116149808 690493604 434332919 115717393 192037082 138186069 835982841 43633843 490494232 583989161 144315271 396238337 887055848 787835103 433454911 389100523 732620709 379322313 553897515 947639465 493147414 227251687 182529792 76863923 447463810 786848779 64262418 417707550 230722349 723440628 536704117 610017846 726272541 188813363 476234242 585099348 310858270 352648415 632732862 209038453 32983103 557482314 657529058 350189451 773502097 436111392 476025044 339645780 8943985 921079723 983237270 585000187 982928878 726725152 277885738 169068373 650869442 95784167 709313540 392435495 938502656 387483028 345126409 579215383 338702865 147107252 368264412 439512092 83837326 890826644 750796063 221904747 660150192 626552964 407271786 512953051 309641701 596802483 780763126 657324634 788130575 188572593 551279671 454855558 521471710 411116948 237978392 782096267 368864177 456564709 328581951 348667034 539893151 914602869 900171761 340217360 741219686 229236305 93914891 524660503 235387646 186844549 502259791 189256966 815877989 166967539 492851946 327051884 903468392 579264622 381692529 258431524 639752459 522026515 371809921 22469092 752531619 194789164 247499345 987138261 14308196 218124330 170790928 988037668 92879047 908589535 408300614 339008522 81552517 870284512 489304799 721776991 991038316 678505329 318734994 76730268 276092133 203644182 290646385 432435262 916094407 618944758 612599987 669559884 322887518 973634324 174717852 567884598 912870408 204071450 691524632 266200851 882904599 209980510 776515325 494457291 111810122 519968439 742624830 294169040 358837233 154684502 429710323 190455056 27282370 452487393 515368704 549835216 266387105 675727480 446894237 52271586 193145600 127406271 907489672 812322980 901010053 624298199 225362462 557551032 430100786 478185387 457346092 767072563 725242259 7365253 315603716 79603937 459867154 463411332 800842120 210712017 346833040 807596060 54525862 330428492 163080559 559987482 485106038 988836215 83082285 578283997 194695747 227813510 377361672 409057006 815117689 553829190 192763361 395867164 877569913 288604947 717577267 889155152 709587959 688950074 774412444 414102735 940155490 825156387 633306213 804064121 957137047 881032873 893829588 211322065 356600416 592246499 578499985 940277291 968524663 880521625 159347671 708232334 4546742 467513344 459053939 506786580 719477014 745250418 44298794 742714308 538094080 712501854 131044890 603739160 936398570 740284195 470211724 763471405 811232857 597432800 702720440 921283915 545105458 837216181 45071418 843907629 384053253 826172293 46951977 847368396 935753626 593569928 332023779 306802606 574198881 520318137 519526651 123286972 719211776 852803754 524160649 195313475 503841295 981189335 227917308 629533529 633803131 616831110 450371055 101877137 246973157 741261460 932525311 813216942 850617095 892590217 294058230 481807308 160874818 347601877 633220580 717453783 554555776 505274819 189623698 299494911 53798947 420945930 948413501 108247564 908909071 403785294 514612971 362595025 961844493 175900930 500418454 655004355 156385820 924767133 934396770 765471070 351856235 58303592 398628949 379421623 404014931 364319048 633829817 907111508 952591988 511450721 385423057 595263804 717093683 439703223 668542349 871640883 821330302 359364774 33368142 493910968 84732320 801036659 200192640 732913631 992693004 294792655 804682034 192327074 635571501 799008949 122622028 892296459 156204993 801329880 487006893 517996011 427583556 701565673 748699082 666644433 28031361 344363048 401088507 253028249 806890033 458776636 432822705 253122979 745064304 878221071 811011246 156439803 113151226 969429318 966954202 831610491 750038497 682216514 611708973 114711657 331317584 533506501 417677506 501303607 888311496 425093302 161282454 575522430 538124979 66668413 559015897 149051481 214669883 518169127 131281510 400642201 138802454 428559604 225340404 262308175 160729459 967317244 431092834 265865330 407947810 36920210 155539239 178760286 238652073 377327509 727127091 131842805 6734207 771308200 591984931 147981067 971034242 508379678 636500872 948561614 228200296 491183402 442832510 861796487 4521516 578646315 718061218 238835504 917454936 504720015 68138817 797781561 709848273 445722640 992440514 309776201 937267795 639353147 294406472 199657028 413520174 835185191 604494368 875186311 84826414 451288983 877420719 101197087 992663995 685726826 186560956 829047133 647151715 166206839 605580374 476172500 964794430 739028231 676614089 351746131 399297022 702445141 652455671 308393303 593578668 575297595 129801682 361682395 128988301 936736551 438592315 460664360 554739063 654967023 385746104 974375293 434067990 737522823 37936555 392848091 695956476 87461851 533636242 177404718 220691402 498715212 34382720 409862975 386326994 18712849 558606228 961430370 966015677 702257038 733342924 897787035 718729737 499724237 932164564 486895879 674899585 935405018 79996501 407371014 57660140 611899288 988255497 776197728 109399373 626098426 564555652 188152739 157527587 12790958 78407569 78048659 501303952 90292918 457871792 677221190 131576339 731061536 841126565 273637296 488087382 25390597 342950964 370904209 365772211 189558449 201282957 791469314 290884134 406040313 374939036 103851271 884522128 718598327 616057851 581243286 663385680 593737686 747232532 716584398 747390286 463063351 11892384 201996898 180641964 98861248 435039178 115058167 941267272 38796074 238428905 597283878 654612013 146672857 746183314 208237145 415299036 947533107 934521175 314909663 737625013 219475969 731551912 997890641 970464048 878116551 929149635 20195246 291675903 288532974 428341297 176248496 358705079 644532333 134084549 269357073 572215040 397125384 74024843 454578778 194823391 813162762 582448007 894012061 272319041 76201256 715399238 996430581 418121517 899151544 768561141 379980418 346886606 657288297 5945327 205311847 227192667 381390007 467971448 727124585 570878716 73817405 530523914 396157911 165273967 132992746 650543444 428972883 65481450 432959639 544459594 955447990 17548298 258000745 263335888 38766844 376957707 716919037 780888989 608588917 980940863 955798852 926622707 324160606 153373945 199024899 128291873 835310476 701843396 624329327 934572749 189693910 385566043 327729889 536299687 392933005 696200180 428003683 391455543 108703886 7116580 736193221 60146271 727880532 898933311 876362527 892143412 168077280 352010533 915287662 754494581 618901375 111002381 250171638 955792214 886280481 115040259 780933396 966574222 941354865 463172628 10206879 502398017 531286843 787667877 304386191 909698936 510028912 508345016 595254689 96531854 378852192 868819210 250488545 790010482 279964454 796668263 102661976 989776968 740640097 104989037 116310354 959361226 458768728 180803296 849496698 755897630 559861626 400127567 354473060 194345339 662476457 146194773 652117426 251185844 534390838 420480124 915645404 861697617 75434280 219237584 53810454 168583525 48036045 346986297 809363098 587112538 580905535 996382776 444320040 424782468 480517858 726001789 8274024 299029682 192620266 189002099 833425118 340786085 393089251 649504844 765527697 722186544 338639179 766546518 78091377 240110325 29960947 112951998 126629489 898113827 188545939 559257129 354863992 655517762 809557075 712963835 68007867 785628519 283687775 737071883 588592328 39918337 421352316 495125395 845668372 439688228 326564869 829487934 265302202 760945971 20412379 519747949 105282137 62358141 31625606 846778092 639047215 715893768 588420837 827550712 216375399 279320333 31667561 932366865 993671806 255025641 857342437 1574758 494911419 193624991 133996977 857873969 113129617 263320563 954960543 165555812 961025685 862831390 542273820 806407988 22613222 823322406 617675038 156916279 454769744 442082906 615295045 986452493 150634112 122185886 245103153 715587748 855727110 139045704 14076547 209308911 110095055 328978947 328979390 589583080 480388318 900934993 357534562 940507183 12460031 745141758 59215349 43662688 316539369 196939950 883721042 678299843 713130106 502002402 60544279 574554996 607482781 836709587 889031713 540300063 137892364 916415242 63232259 812859700 333150600 774286216 910833242 840978580 189340630 833307219 84777169 906745811 408509591 851819325 541095289 212742882 243657142 50489753 262048453 948500947 237708493 485364245 543474070 952413124 983163911 336154794 752068425 950977688 311174172 562668400 706090334 422655324 785563187 180482232 86362612 71777167 771524396 344818644 678613552 565640959 152687219 948517107 808979381 883329885 90334326 717840108 99062308 107254807 1001545759 192192589 333024289 20575534 612901171 847530309 550130318 549570913 55924879 769617140 780576756 264924327 101827584 103466656 36679920 303441683 586711817 577618408 205731704 276206407 745458616 555433765 52383686 835796932 119373749 815096301 996256301 836538015 338888334 165182776 449810924 580786615 534513882 79341885 829301326 599650016 829471035 551795814 882516231 114959179 316893817 386121444 411400520 563740754 801277730 478098381 486051529 44923055 938622701 811074346 184451990 168005553 2708692 342324754 162827480 339229591 652076806 862133375 289031152 701910696 811267471 436893107 170789476 29406471 48445540 584959162 835682157 815288741 651015681 432090249 326258518 352638807 311199386 185501570 913003762 81453231 850130225 266859092 322637462 729098663 229622945 72098899 529557676 179176409 628133202 63923569 980750163 143655617 420860699 751111140 570044167 116547301 41773713 136535034 300473156 830283492 541081592 628389775 769118822 410043395 53617734 753251624 874226132 288214979 80040855 597564847 388459904 718105972 306445565 418009264 457616840 384118163 786027353 96985794 142546566 937583281 437118289 610294512 823841309 760757533 920166744 209417424 492081906 941551646 717192838 301770973 228492579 876128489 79451224 703037989 533176474 997010500 223665372 840205240 566633573 218493864 138156002 674008787 425457621 771948139 95560577 514969487 680825707 731995449 736920703 633148188 18183161 847902086 419094841 804770842 550734428 590125377 683559341 973807182 413305359 848815180 746062013 697138540 368218641 694378324 698456905 368944016 529299794 234487029 209148321 879500475 617295503 927544256 482260036 38328193 760353140 953288512 791902843 659088834 42657886 763748457 428566289 462077141 141459046 969860622 43365805 544256468 985052518 576936765 306147588 119004944 210775994 878994955 289867156 296597365 431521768 485674980 469865660 803790402 98116227 238183588 943643298 79900235 592948590 27943901 971736264 432582461 289777279 486477944 187059994 564741405 136145619 6147155 753869962 662320559 862524898 202396636 496804210 696459778 428114195 849433169 197202520 357687842 174881916 313884974 872724813 240297677 485174285 380681136 62098194 404670921 158954808 60182411 329128956 845460584 726042456 638432904 134930399 390703412 666654019 910563121 253946413 934547901 578302450 174827584 147583346 13336202 531278435 146811167 424789241 471472103 497252020 354279262 411829398 619422545 963956186 543444108 104712342 574959818 21850864 589079944 98336992 133889755 607470203 249786253 841173885 173892682 115885694 566407396 418374189 988073122 326586702 582306013 812971616 846872106 932104436 554944128 197109996 1000881770 368259356 830858187 452915019 778496279 951612052 392025535 591013578 850727536 784726604 879994425 785630839 95000157 892963024 873751648 910477643 137750786 97872672 396086282 104110839 681473391 639313841 338074387 26688790 896457319 414836675 50589380 523967628 25187323 847925312 767822300 418295831 50793772 956821412 842581739 675215294 118288684 229838393 479871387 804162452 454937603 677563344 326480217 525144891 216717905 135362017 241969705 217512723 678970006 591988648 541234080 704153998 987633449 74387346 45500960 73866195 515938431 225727822 929010138 146096824 381242426 306367435 939676445 758380422 434693133 419190345 923007488 308130329 537486519 460054018 699418118 54931955 391373662 853787645 463154745 572136465 126978490 58667734 668465274 990789800 664896593 593389542 592661366 702363745 790116325 909286732 408017428 526777084 168335961 608061168 926173153 163543219 273097866 593400013 149518163 709759136 673855676 125341091 913020272 782863919 41011091 510641458 27108683 883100313 248698645 168395310 725836936 284260108 995033642 561148569 574770090 433590661 498681723 903530386 506132521 459784575 200243422 645068324 996853896 101666024 53555303 493564846 593346204 962699326 479352909 864171657 753779572 806270479 155475108 974045054 713983604 825696114 255694171 612832138 459797569 615473678 202782558 195379769 482545786 957452868 719560722 168577620 825969116 473994812 893067447 295262591 51683841 412914117 41984760 893782 823655256 111882044 723107074 262829343 225977419 434291114 374578283 997222409 881112749 459885473 751658649 900991446 338744941 885982781 700367304 901554534 320235101 614846664 329207788 27639630 55965823 433603390 952299375 909517165 633878005 146016292 219157882 204320133 766933664 48757558 852690454 429023228 667204227 381863055 939761954 940478196 113140820 8639012 54913250 74761223 99337588 105384534 719745820 712585834 45030422 352118843 228720907 996723994 802988356 976273427 232116704 651856023 768457963 549320350 7366325 1000356884 197642874 155411649 619917542 512962166 52372100 521127673 196957488 818616495 471584307 84783696 235222006 332553954 369938679 701149161 581220692 814365128 4151206 500125042 756882044 457154731 919270493 791547478 945729636 98810911 468827337 881846851 820648160 392191807 863239330 630449643 737720084 398981379 942634203 521855141 982359893 740315799 476201245 816870935 785784338 831294782 990753191 339306270 595729710 332822287 182024896 411230772 565732457 641726600 339728368 555748026 332360640 335153277 434236358 47249497 962203602 632291253 339123058 774967395 830778406 146191021 711768121 17232611 65342381 302626142 86797494 641930687 838828466 810666976 441572563 411596830 714153505 485724229 327049566 221152265 575519078 191165128 301341553 37608002 341372229 968453498 514087461 621512239 360389018 348145788 676937691 119979517 557417666 9068607 322352845 956437487 119326041 338712423 772434783 586379791 679519287 41019213 130871820 539886983 474933124 883395369 299666342 439848628 610156129 112556127 807312670 779476436 612794844 501689047 304747331 614334841 65451401 245555306 502744560 404835120 21942076 947959596 775043097 784346324 103744299 97685468 268568338 354777603 397977372 354596988 492163024 461829600 816279551 818564881 392686036 77693614 252008463 326349168 881223585 882284062 718279684 603631603 921123518 21973947 332802379 858771083 602070829 30508760 654556242 620403776 347765586 607153648 713244145 119266150 660821415 578950533 175728662 842867758 208177636 746831538 912278737 605296740 908675277 479078229 999073928 475036128 608345332 913266611 600991834 177277864 694327284 26911289 1002098501 626448447 953356104 639091092 646182073 257821933 749082098 884542333 662788435 158302151 889960407 879364513 427793759 947380848 169398863 587389099 304814470 801619776 192362006 425807052 776666936 726391696 927305847 35363035 984457312 296165409 581687834 230404326 469354730 571296685 127671844 941314058 565032345 743121412 636213085 850884751 13672827 976120833 521309814 342613163 783148353 926104877 845838945 256631845 230724745 350262974 858646642 461213660 410516878 190912306 733528110 668728951 983147683 166650307 372329885 615448942 895276009 529493945 887727963 218393506 984446096 396287255 413030457 946696774 706724112 33985519 675411893 916063383 740356338 35711836 721308330 976643102 762060913 477087762 424510986 33055157 599009480 587552065 777708758 25979259 520687966 713139512 759133341 627820327 387404704 524237737 304254430 564449830 53686867 523135647 200724178 93028880 258975536 249670180 231867366 460396136 576428483 790903462 770348004 198787785 320539784 588830915 279339357 345113309 326259725 258238120 65366869 547902830 973276652 914351694 312973767 966543330 471493801 226587301 509230621 217518207 811613807 936347219 459152034 753847255 896021840 478048364 21578748 935951238 468439510 594722136 276511728 288559548 998971597 100709689 803110511 211773513 88980810 678140939 625735513 704416644 362262323 425085145 372278174 425725497 31126854 969914994 280538821 24298763 422038058 789767267 33451267 473003549 306050397 377398207 962172680 863909510 579889468 681827206 173624184 892623457 345673436 398240982 566465548 575765619 459211530 575065878 33048412 448237557 894200011 923818022 7360464 287352181 431167574 419288228 312721445 904485077 388321111 407397227 290645922 164516262 924343836 37002501 119672056 467723509 233753995 111415561 928045025 545239691 6782802 734688579 6117687 402506105 274710593 383470114 23784218 268097346 208010641 93335557 293235624 855320035 683778671 93564480 417660670 638025239 482020817 692709431 702932012 212593078 585063215 416409235 615607857 383921812 309647355 522960874 727262215 614842457 457735590 219617410 423516024 354960277 161239756 163514360 127628387 382044535 406409535 966548028 203657381 179795351 338057933 985517505 973174284 824690892 23462986 160344640 655378761 327565476 615905837 872520035 988251873 397998214 245391872 546310121 218060219 997785522 660494301 688904267 559972366 917815662 364278721 300443042 858640661 306706190 149639434 286345289 645754698 682329957 284201535 794032225 325545350 646819350 315458889 829437525 920927662 179506561 827528067 315450383 338927089 428806340 598027938 344833638 241213597 219441784 302269761 954230391 846810181 304084971 228456823 622470921 420119284 584859393 750766803 524810709 129340701 663318038 675683718 142204433 13531728 688953757 573679172 93516129 427727373 324196082 652428884 33216538 247039562 341884728 485261183 368878114 19154889 397819537 790067361 78036458 827304167 199770380 64738228 241593997 278733565 72956988 879119211 428750175 100105251 210084620 720293798 661626522 449593322 341072381 537790800 257619883 324039273 612451315 772322620 195567390 565551930 638417170 533852389 913837642 569648322 618391461 321858024 495836120 924483803 961692888 21758307 955316177 756222416 110281999 651682879 872936911 571460532 579304794 581266547 64935505 621858436 712431901 888015509 177522132 110428100 431209388 33713716 734361391 126356905 493169346 913082535 642246645 717107545 570884916 500386044 970865506 148155267 535708433 245316373 402501053 846380944 508693001 4469849 979202269 588099706 612315268 253984914 831252717 156028034 223407029 664218288 300129501 598629212 855211065 731856503 967431172 81402691 303979116 347211237 979055118 401701522 349101059 685496774 586925263 378571210 733640245 667351543 912132967 626254501 819709562 704997311 774882030 197203756 710640647 658595067 123976375 945529072 36083998 29709017 580152044 945121345 501481889 161358260 702709816 402821290 774038685 867031350 908697355 577926415 468426753 742158335 509866376 106670967 400744404 506327890 999389082 793004737 849444384 764708683 790801936 272657033 457088466 511419754 324642442 356282052 60629902 930000175 55962913 895948726 898114272 550389591 8249966 186917205 976959879 302198192 937135880 853496444 672919391 202867498 555576892 797636362 940030836 91105968 800865063 291230111 127925587 792029894 274236350 134232463 976678678 249781040 223744153 617606083 243581395 625519674 818096616 78985428 439916653 668132742 421258294 374265548 875558770 669026766 697813451 962602305 713703104 835180148 642392574 473249703 511815221 840388348 353758698 286506253 247863269 138799621 949164291 12743141 33892480 676698901 322785041 692999620 100571750 49795339 577603574 73569820 21750545 861397181 605523293 286153035 103019754 165171914 563851087 545139283 715072979 567481979 858682943 618524410 258413196 396581318 454034755 523338334 840733778 552645108 187586798 619877998 242134494 480173961 393430783 214028648 50885589 366749642 823049528 650324244 112873304 422382868 94444379 998896087 953300330 532358794 923357792 215706968 828348443 367560093 12136795 786263131 94850501 387284544 138397068 983024638 335195670 860717600 762836243 487915284 226972846 646877074 522927405 268817907 1212428 104828928 259937946 723016766 358507930 251714207 823665950 343669780 908440572 780731552 460248201 472685263 996625907 30227543 424506171 597679822 25071441 337188052 295731149 563510302 950755281 755350315 559124044 66091797 784027517 230427731 119167613 812603683 815106184 920055292 578543984 342696133 505516130 613326660 344775836 234492540 753771071 374820533 413839358 191297104 1801756 417941133 995313305 42329475 581887757 152147366 256779249 570880492 877699928 602687742 481627126 734395523 559434179 600920587 651077704 939261404 685488864 815616530 22671319 627596320 685061707 48925389 1002013655 192299190 160651580 45117744 286594620 988521133 59981284 912884477 254132913 246364728 131880211 947565222 165979393 437162637 570379006 333986903 576268292 980821219 672594126 909530213 23029355 796425143 769925252 749255785 172228186 397350483 371630531 821726638 594555329 168910690 947684441 504273690 280112391 3151010 816353147 211057256 60609954 332698716 986879390 782698686 837738282 3525477 535302190 481385708 768286943 911103967 342587123 571272308 122835322 560304575 218388371 413515714 432209332 803060122 214038121 695779028 939321371 608171235 436808778 626296920 11011962 523064102 161104901 54057407 835671579 6410349 557234563 249463321 947311501 699924478 463058060 618696802 312984362 38149365 578532510 712721334 661478057 48484292 210163098 453699924 695450699 113939741 447506159 812333568 563100797 7437911 637662103 502737090 568668596 580903960 96230884 283623669 200217921 933695160 106667734 376232991 28307756 591975916 706494013 179979663 813415848 740068608 409547355 886500970 771782064 740322846 165688617 47496848 897443480 338910888 683943054 179800787 343896435 784571812 528521070 187865470 979942848 400349592 846555037 714991240 109118698 857652328 700783345 309776815 133760518 310376129 897234436 857129896 618262940 623647030 815057324 632037672 52180345 162225211 205959899 6941155 874763471 687462301 190513311 511771502 474577252 745987450 951845533 871785398 339233507 384336245 569661366 376124734 704777901 723538344 991717263 574401397 527750057 698169201 584690054 737994608 459689628 774972353 924649359 169125986 908553399 266477617 42247339 942147592 945466272 519425231 73672146 418845403 954107353 100360036 940156195 676514217 517266472 910299256 709012809 965170869 908405409 911154505 51324274 201058721 271453104 992213217 933874901 186354180 693428092 245646917 884616916 292577487 686239014 382668490 772651403 8828043 100384228 178099851 583681765 281652775 820091304 447525557 270995487 37874737 302685241 3877533 695582923 498351522 952326248 439799474 578593803 274294796 201631323 875938268 256279387 283063238 603162763 106987394 640399643 445268734 539341907 221346137 82797975 695414342 12040136 74942891 725875379 137831749 201246784 556622284 359934858 883816000 626897302 142735734 809134738 293216204 975053918 184545124 140067878 930652266 894180880 684303280 86549198 776830317 810439286 382997890 143369202 203070100 774404957 642727602 445446839 219307157 865739828 180198938 193969312 990225208 270345265 273939064 961715093 839764293 144030888 322081209 260558462 5009646 650469292 219054286 661781390 239081461 233502168 25828748 325319272 388218170 91737224 333881380 247461894 555240120 872724756 761030621 608369132 12446576 506547140 7722419 881100707 982013651 125947147 916375301 367829716 859445270 126587904 249983977 217527038 355567275 824338810 245639793 308479030 412705027 114260828 474624232 505644963 951669746 705326656 452171750 775047388 994443942 408478204 645900556 61857051 724965963 915471612 342334207 505852752 404505746 972107658 435633629 844740904 307250695 813549993 189248943 709045178 916890686 788199175 630047323 381879161 925669699 893499747 488940081 729812751 735062446 173062492 836522417 865601723 411868339 658549520 410929742 628828622 607032607 51509633 256525569 509282081 771684576 765605839 485730121 871813229 906922618 910797478 618634318 550401025 867844227 585018161 372003520 418998864 88245085 607948427 194841286 666178967 510683403 201278244 442881919 244650659 473733555 797470335 915151667 118981446 542944215 918786738 837634896 171686608 122452526 659642209 149727030 822796003 431200475 968191876 867534566 628519351 230974755 173367288 960670393 714997192 262371287 710320762 877368673 805297146 419558545 995673155 807354648 449649014 223226601 390830958 713313649 603771018 223189803 552731044 226433694 995636323 971207363 732705346 429376530 865256180 349873560 718129140 1001354955 377130357 438100907 600727659 307854272 914371190 600994268 80868296 681027568 921774701 411869490 585697369 914021704 942475519 879074160 275064827 690667791 866221589 272699277 857712280 667344177 991105621 236890786 934389041 381745952 113267062 192426016 17490799 198993938 427796967 979829981 458895775 311354879 555123196 274305946 353893901 307247724 877919697 846841193 371241440 997798320 819173298 700819489 237221474 609062234 389210709 392574386 556052721 492959202 322054291 32153165 796410317 335150576 78151037 935605740 104781242 361301509 192952741 672547944 772463905 182925445 999383576 448262911 642870960 366330568 14146079 354107967 595538982 653192372 399395186 654053296 318008340 450292438 636883735 186540843 789362342 322520424 125264655 348685979 585158993 951720239 657422039 577048550 526213706 364903430 465854918 554095133 24147182 208662091 29592542 751834011 68538654 116443156 296419355 2138722 564889943 92796239 382327994 892518081 275638961 70429318 738388951 923816043 48546817 110650156 85960572 753285505 354073310 274564701 374628481 37603224 451288151 140713463 745790978 541786415 878954652 980438837 809391744 977281362 255299385 761795806 500527124 797482106 977887585 607832554 77855940 890350381 481062941 76868415 244618683 979218128 182394279 101367412 400245690 385851393 366478826 955507869 115537808 214689615 555385090 561745 802535264 484437489 493923029 241992620 269339539 293296489 77618576 793943218 841758494 356819927 689975723 665804413 653333793 29706894 667981708 819583376 721215964 617417775 777770610 208762371 121607487 495292989 374140868 14433329 655818998 443224397 583147237 781726077 137380290 696382844 611874822 289767845 447436521 365405546 551663293 923661383 616655853 117328749 141343407 926342644 744838044 108121988 586275706 565089621 555105224 879612122 846230780 463880665 485387772 666897944 665198975 442190527 972205151 370665455 299755804 20214076 834973149 576603776 176534246 321687337 661018178 191088083 68922386 929966479 353918122 1001521709 624132756 198706086 641452007 440477362 613969355 772382362 466060403 285962061 843344468 582331729 571962600 900288691 825987890 676708024 612510312 893062303 639835171 243675727 432921310 120658185 176664420 616367588 502722702 528956294 6202997 705326162 514169071 124088036 155131384 584263635 285587917 320539650 454675404 446756249 658545874 755919414 51884300 247490551 491004411 992456172 641452503 380871305 385635089 56869291 265410160 863130056 894704130 522999855 802456468 367967111 939401885 275223861 411935659 771263319 225390082 269456236 713663475 371535594 608023723 183122530 214937268 93716023 323517253 360585613 687954785 769452660 326749070 749373200 341510809 863018832 113758275 108924070 712674017 373366226 111018481 859300870 793793254 619650146 491812323 587194401 410670490 581285048 486427661 836076515 799963919 241205318 709629055 453294355 159277855 988943560 567011814 125151187 860277745 505881523 450794660 113750063 535583767 9190078 719157541 183879393 742508405 298116394 675123620 848953945 761974965 673083912 562551339 769697494 357237503 750338152 870473073 798320617 427242227 41144429 137263671 865994266 727297261 170539317 376656900 885796648 479335865 884144877 721385455 468640292 241169369 512701351 58843251 945123348 112560192 573445793 105417729 567370952 181559954 269055247 593102471 210683756 111026705 554206817 869075758 889304766 357461174 903323692 24955209 709372760 651624941 559469935 186059623 564625623 77324662 903539435 179661918 666759263 683237975 917924449 523928224 213227504 733001492 780526754 311009046 108873303 148135093 235785534 518678333 579086274 850756205 659033998 666120047 756586646 800043303 650713412 710223669 416070615 342458896 315179460 232641440 883074070 56078829 152565950 163353419 218494273 526048109 368073189 975103662 636250116 630686007 777304883 826830829 583027667 954401033 275468260 33944715 874318374 387936543 241755607 452857917 728400405 783506035 183938206 388813015 313086664 703161093 249114462 805061664 617316752 933107230 73595146 553590680 902530550 185458019 403134915 289690019 698858131 593673568 92396427 524230262 598339969 874257941 454923572 640105084 451577849 21354718 741857197 586102948 180051720 74703837 913043172 117725700 485611808 382140204 41079231 969210718 486747073 273002866 454975094 40968470 642301377 512211840 771854562 85057717 27500137 490265278 393484458 260436728 679444705 945835790 42604222 570360430 774231868 670049601 895423298 5549068 378643573 542706695 692924070 85189763 474519950 731977570 353900232 850086880 99465336 864805871 231099855 481342135 342725966 284450288 747463304 417268077 976928703 796663059 899701857 119300164 235149881 275473330 347903585 953358752 455535890 73346787 635432252 17802594 304108220 40911559 839020141 413152598 637064698 610260426 383991788 166997821 375118382 380972635 84510475 78455344 708368293 408926712 817879083 999006824 473549112 894173064 667051989 125104230 306014025 130197768 341770816 217455471 459170878 602319133 602498023 205605886 918073042 485124017 100508130 31323460 798102364 303203081 485335177 359489835 456089846 205515409 427414888 974317156 569794093 311500790 896344531 141927928 806630890 247911346 640926717 88058410 666679590 572063252 221607068 697868140 861233232 891331589 69710551 800382029 885374894 193256774 15675715 89942893 699725270 301353268 285003269 526465069 899426509 602898556 847290871 504424342 441437835 1371561 116492511 976500663 512596695 669286892 453646564 159649390 589065866 8122377 149205774 307894096 678217098 212334611 115450013 453614447 350866998 105788607 515183140 601897820 606837639 67099497 1002397050 537060811 10896668 944940553 1001435622 812571850 717898836 597183054 487184243 785064570 346549870 835856162 591225764 206877646 504321260 279171461 483921610 695726285 552077778 899625502 407412374 770973912 299091697 497746498 597019345 140352071 364343372 27259421 524679245 345597068 854413375 486200860 2904324 491433415 193727413 921071166 195370832 549031869 274526682 487049334 502469708 160538751 672448897 813106580 366467313 803913658 191167962 772306045 30126951 459703156 227060404 76727171 79282446 757368658 487254481 2336688 676563341 328567670 636318179 333185145 746838872 397462442 749702433 528564086 656368832 736340685 482640124 752725173 568622602 488915060 556649471 478504245 106380519 686902983 250308869 473177322 848792601 857475711 559551305 295330687 356822660 491396064 240384394 631293917 694021329 398186115 638780029 324808473 92964930 663135104 905031687 982485541 647148122 181087491 10776789 884026925 861075862 108600699 432594766 855103158 757784907 456100595 521364053 760638193 778915102 131118831 264928314 381612891 507218239 86533996 663358497 25414516 577178432 545912987 415039351 747377658 345196718 830996511 655975022 156242992 247739820 943088092 612918934 417399780 245603779 661851563 879884876 789149327 308770012 353985725 202862458 527264343 130268329 153022697 207470698 19533302 944190419 250091345 242020266 790784306 651819962 201813819 917720432 145325737 144987860 523021560 943781936 174151134 941696456 316490803 551760882 53961517 824718433 446846193 767012632 110705638 539485382 401058830 545559274 555155589 396971999 168935605 383505401 795342300 132988727 11490266 188583222 359725794 444825944 639314418 276995972 901106454 145108843 986472722 388460281 82350940 11282631 93327212 242229701 561392902 187589766 793795611 736999740 655431600 521875665 770833987 81759678 219729548 19385235 123200577 336850306 387574466 302730669 537618508 231035677 176665145 52436725 541967463 183558974 663860918 328810556 161115400 786008454 178310782 256814208 986496817 711301694 673436304 513610601 230629181 464868612 808288089 874603672 2110708 818681157 497930701 73977377 444303195 395984580 762782494 500193797 514178151 393015682 180476327 305100940 734461761 912367232 655244575 297837942 77483177 849678269 95695143 145344958 897266587 574253630 686842872 824577367 465558823 394075566 451669210 687709759 280030298 707033348 41828119 932438716 248026708 116204194 160868408 186764275 375257583 692781311 220600344 792568136 517630753 207198140 189938931 524508591 612383241 316902728 325835062 469711400 865423702 314937966 925922167 446584760 425426159 658330886 749635533 320034522 225902411 858839626 526303312 365251606 992608683 140723153 90186248 218969888 22284428 534551238 224582082 595659852 978581195 580113162 498739959 944822597 318109094 726012169 591470225 250802407 611648283 263260705 13777027 448664481 631335974 668865136 526774549 829387367 610016112 128483929 804517029 628789767 275649348 760019856 504214999 26630853 615473405 759408378 571669233 838027630 451996261 886837283 640777964 627235274 298394931 900124752 199027219 870796479 42166793 3818305 66372651 951763719 284367474 495634262 47225938 369389798 679442517 400625721 808325516 294426763 399280268 302669993 304648923 314327480 740701305 639832655 483616299 748337335 247571939 425796191 571903911 1000931959 238160733 635658197 324528309 905884939 631526131 137561774 54753396 164994436 945787879 605060879 318354568 337262103 85378402 601909476 888262779 173765899 828762302 376791865 522600372 356170134 199273262 754725957 556892485 701531705 890285415 269792644 869714322 872619518 111150338 94282576 69059159 318909401 587649029 150334178 493722597 154836779 998950321 239097614 164216000 175747435 984059782 405977304 962763921 367637540 539672741 305440757 824940816 180772433 288339039 714416381 370690377 377434960 266105343 665605792 842396362 222772630 453290176 198603844 878952352 954047256 72475486 854718132 126911399 858032007 319204420 921036850 262542015 391590950 874725271 961464643 674274153 379411780 581106816 704959747 903701662 226057821 961570209 954371711 568709982 702096861 375841448 979612359 337120141 530689684 909080827 853636621 677762784 414927744 756571249 853470407 868809515 557416218 9051258 705085802 644961597 69835938 594788301 106884148 36761275 230270966 747319552 487684269 362065514 464006249 28355924 918179398 112535416 937797642 139066253 450303079 499874919 999142912 77148594 982760324 770613170 915258595 651736197 812997017 196837377 937031803 132985029 300378823 764005897 828332604 788967460 270364979 942892080 883212866 221621292 934276009 225861639 507768917 440796543 377131708 513045388 240375236 517790072 447888404 455306531 702093959 641902366 44792702 23160655 522302041 896133602 37966859 298120669 475213810 742789703 458493596 82848243 887999278 40447996 256983947 454836160 125182626 638649100 391100348 610901822 854769840 739688381 213325587 662028218 884874494 965259588 313694619 495673625 721458151 195078021 383927840 532212734 228568745 741067774 645169084 435618183 875997711 195259837 504168592 445126154 255316544 812299123 827970172 83609095 770693411 749669661 483974306 225404112 110711709 94153919 115577211 16284005 901860628 962258955 154277643 985096073 179657583 568920026 716990119 275594993 748907574 270066110 859256848 564316153 860593176 924820005 418079645 571219543 36228505 375544487 822315396 534738008 506526186 530824220 132396710 349903785 389259041 345129950 117763636 529551016 537514868 803050707 190095511 514352932 846114984 186716665 644700860 248778521 797900991 155880485 574793699 550544961 210197910 96190477 698077208 182050591 228697977 917743286 195151001 564397336 43701417 991140619 232710808 1049242 586150597 760537728 101312193 576575532 899870403 949413489 201534904 717521091 527613406 846004920 520653280 59763290 202151722 341781452 772104978 371928518 189148580 34350572 922796030 843649509 977155890 604716864 933940948 922899192 879998598 537451786 360458828 973439417 775349535 457741516 288568114 913630557 925045129 221233279 861163033 871066417 790275000 325120837 863663051 253640450 928010289 649819833 468164320 666387900 225313806 329192327 925383351 273097548 529962825 837505514 757597857 19761848 138110063 992821836 526383600 441785028 590964466 555685594 463238380 521312196 391163064 864653693 161502722 567304880 384454826 784989048 943336309 250320635 354468413 543734399 216410899 265134380 336527967 370827421 45297904 85324077 209796231 760158159 61164163 902274391 842573919 260056363 148556916 918139568 203163623 432513722 98487993 398004217 879950758 102657070 350877604 564890746 391470464 602227298 438010954 181412423 536161801 615290615 83433715 273467799 952852539 777961042 190517791 421352462 656009997 889594685 559411223 932518768 817192495 250160908 434164185 312521844 56310508 163983681 657290533 935702954 819845490 619166047 728960731 62369131 842793887 864597873 418462949 173258457 666615186 580609923 823023829 486131387 708319521 851280211 45569030 888627953 137809717 692349992 484042197 470242104 727804416 338342255 847860397 964810214 855207301 894368479 416208682 998163928 546256091 839156882 272573309 885775382 450260054 196789840 767126085 799056184 389629972 2792386 400492865 688549577 563372576 158070778 770164385 775129055 331615471 799862444 698736698 677323258 279885349 654408419 939405752 791047796 757259543 505074512 545452315 588944080 31379265 126735327 875774284 291311676 42654022 478699935 32703617 72891591 641326006 673611531 913606465 633071581 676598312 173892544 972500840 954013415 977667279 51059024 68946083 570957698 148442699 477412009 588226428 105880105 890875494 368703564 749031496 889305241 784689378 712875279 571065374 158292920 670230112 641981809 83360864 630948659 688261424 387506539 792146894 170660425 766460072 10405848 186742010 258107789 131047477 42395311 893934908 958632877 172549645 114679193 195116202 929608282 63738577 132570814 834410918 477368260 741705810 898326383 460475774 968261144 627375803 344921763 623594925 14129241 92648136 80726934 522112631 120088835 20742208 350448119 676965791 903612716 38048880 75119767 533482314 797494162 794115808 549252397 889703163 827720301 943056038 544593372 291690299 447206670 800944212 55840373 179609502 317048374 780337089 257161521 815081506 863302863 692068717 989704651 28092136 945874645 955629875 216505808 537766596 507513491 913635252 789913341 78092781 308884575 228084191 382521969 605577861 282605239 973492339 811674027 818222585 411577891 236169386 109488963 299895615 199273797 547758021 593864013 255514799 853914258 301629050 447050546 12051923 405259841 14471100 728996593 865147712 673918045 510541369 764572396 454703123 888668609 210567243 393582040 191054585 498428257 847877059 593576698 891492217 553694376 821311716 573289583 915444158 206280834 999572215 184943811 445550970 412816887 888579028 515795337 431875885 840834114 21595268 419392283 907819880 941377397 241577489 126550422 995217599 143727071 595218446 976930277 128157856 209842794 649631339 876174804 393839059 978521540 719644731 868893385 201238458 362181149 700114632 879421572 755396286 332590526 697178824 779850247 368155796 367531582 747877203 794640708 88536043 4418731 530144788 738054893 716325425 369963297 753953936 654151259 482987340 8388696 920373202 784488078 344377698 955010802 520953729 141177436 453584639 859833802 471822432 730341620 482336103 319023277 731596702 579993448 504606177 337717361 153130694 475786168 798068554 239563724 399076905 879915769 666725040 289846760 597140126 756488764 976461305 39092674 822691333 664512449 341380590 922395802 330844748 821948396 987816230 404844555 710517822 936095483 280068897 579416028 654282157 160334561 984852332 35559927 667990042 918260501 146862434 893554059 26005238 754112063 287000729 868930154 204928072 89344474 708670474 27699347 940562166 992485788 712111932 197334421 990132629 807812154 779939414 444897420 293937434 492971250 921130788 963418421 312325674 639211625 306147103 739174967 333120437 516197703 541085447 752588191 332699697 234416280 972680381 116536554 926211545 53890114 776296820 686556075 172925196 428723206 186298751 803092454 12518679 874432490 322708344 251043783 805029926 780908444 539254176 549084276 143475088 480789920 938338502 428381493 669239517 741855086 163442497 927979652 13472844 519053891 680576067 211821742 868741248 67467773 837500485 182248404 571971583 49385052 123341759 740021715 961193653 522845836 897668531 770055363 941933419 877871460 25377160 804069151 233553393 987040472 713118481 230903702 742096377 843790504 363215091 229941872 578812081 539570492 465129517 156619860 645570611 507184137 537874361 690059091 375896555 366633150 817607289 893794168 898811356 792070788 353509736 47557651 855462965 748312323 182329971 482973867 145717941 592661450 730086939 548620560 111931783 529469493 901022602 542030685 170058078 863585485 890612405 619619670 977752492 940508453 503789059 454326769 975065327 671783147 496094408 996664075 135426014 668862948 542403816 878604374 541901729 768411995 589075522 557986468 845109566 340949277 450092182 744186501 783160370 455242411 202257216 784524757 740934375 134226962 495511079 756590547 203811460 583927851 287862886 390894552 443427009 829658687 780110762 883204202 301369805 270810107 226788835 647209431 256238803 717114850 495610444 359958613 277510122 205433042 144103296 117877839 258369260 126370403 414667183 557354368 526543512 221079337 257272029 279236623 157843741 700065502 231312840 529529965 797464355 625495644 166145500 424728073 550043104 917965304 336315210 789750694 794543944 887323390 243344435 790531791 425351417 910002214 292670219 735971339 931691753 422133527 729845542 643709511 515764665 335689344 936436985 257759743 773511870 113772014 727936983 836108373 509710902 854186027 583979937 608515742 63008876 655049576 58223014 306800646 964803260 380151411 82867298 609672251 464027126 877811971 386335019 352886676 453550249 417751372 223591156 887537726 335985446 564026715 308938546 765836388 458817627 437612754 849374675 557442577 17797249 474855701 728282586 167928526 358393259 129144097 69492180 184986318 719070020 13207826 500397565 533401648 608031720 144315187 32038798 390896688 828833598 393459827 362213464 363889359 16424206 197072173 295475916 59405061 126022016 454007828 309836668 527613706 371204833 646876715 772970350 647846563 915675731 478770376 12651061 433750468 667794636 963122584 868875343 392716266 159383482 605835306 82538721 528216918 970517065 3231360 25565219 609525833 200719556 937070321 922541491 808771614 39601543 378899380 560274866 818222964 671630380 125404014 10192289 11722065 569205549 759596590 47054217 839952253 482438520 920127545 896146214 765032669 148062887 500204823 636812984 100772192 177834055 834069333 326504880 248629611 17301129 166136274 876761320 811836377 118058752 63802435 484441418 717196644 142253421 609454978 12801619 649158447 737770547 466408145 715460561 200862674 673856388 49365212 675275609 137159148 671751896 844489520 605138793 555903066 442686909 504091906 67749693 14238336 475629995 706804310 513522212 748614799 558550318 538973663 341447863 94264745 168103642 312966504 406951630 628284352 849959136 756643127 225947436 151393798 227658507 442532520 33382365 486343671 556709749 948647300 885037254 885974274 46614827 831983139 688751867 143978342 385225483 947823525 920292114 999115624 58263221 500954614 467492433 81191409 927161481 36728885 94526369 351141351 9252221 576371972 48127363 976545811 654164262 510121769 249838491 598431100 49032161 806214436 675777182 742024334 927425185 552705119 994200788 69163656 632601142 351795498 386065856 337845326 554123472 44497547 674658430 719864020 657077987 136698972 807576576 875410399 498998072 514947268 545098048 260759873 271461443 919961252 320350571 641895944 687369649 335493895 859405014 493578038 923564277 830572567 298557787 477902321 834454530 408505183 321065551 463594773 963663634 740236606 940138276 330897954 145079036 221807711 731145171 576002906 971651065 989182534 272682925 620110247 816202343 513491648 834438342 390741669 254503921 29671101 750547582 871719220 716401657 837850948 219403356 64425488 319565308 725903208 354459758 715296565 706570257 190603958 329227212 365028246 835643725 617068738 980035398 988753477 911779302 964758825 860064729 838721872 583527750 207603433 976868776 122556521 805138421 230231564 49463163 779939798 812714512 6728891 174143134 628737588 190957816 380374019 230031457 970919001 186854448 941677601 256151750 416041078 517309004 897563428 795736851 781166688 653195675 980532774 275790262 760646026 908841595 218450683 819114505 743768549 972686076 290014876 533218599 995396044 794360785 675483841 623840967 561176136 353881027 304530150 579738605 265100242 906697850 827559739 385773197 55767272 182017941 541885129 741794221 309423958 697367714 482201072 736821275 220111614 230112224 636660270 971823588 919691519 483285856 490188127 363187709 194804497 786763617 515267285 917709815 511325696 837653742 947154077 724591386 347507162 372398317 706015500 133524624 217504556 465277817 289007768 625356078 88473750 119898069 592200343 527153110 453907937 676607839 535965082 213020506 697401611 647693205 710290459 699578828 950014235 969384105 901520281 20254185 32929603 920991274 672301669 609336706 593448426 938965076 34488715 51808668 834471829 365397854 502476489 881495583 642178512 8679074 157207586 437305073 532745359 811954542 498940286 229324392 951581836 250986902 682386838 325249659 238965951 923532641 625096237 286459438 543426416 121292123 741696531 831143800 829094253 116150873 688684515 671066399 903402233 508419633 324050048 914199142 47955574 759234572 1002218254 332394782 334093165 787594320 511860984 902986862 804836895 215250014 215612485 340014968 409574469 843146500 682533344 1001369011 706990983 782868967 746288957 374894990 293417358 528895852 565903902 484850792 674001596 79391624 350081843 234376166 732050486 33096683 808308962 805378770 45857172 279787400 333249470 102188869 28378110 731116858 66773009 832077835 479985888 682842052 65479351 661947334 270050056 507130052 657496354 363414841 27284682 783838926 589653718 746693085 198451767 563441309 883912621 210830590 466045891 289610284 832951812 180185901 370519295 1000933324 131338896 769099740 353712993 496686486 137859324 360109584 679011746 484797127 461399580 525934135 23474821 466737542 613386679 300571198 146102163 448915592 205399294 23360432 544110650 288913584 943632755 364776135 204016004 225169330 915877392 380154425 912368962 807057653 471583354 313761656 227777377 906832906 862663160 347569575 708462533 448733923 265702297 373452043 287226625 933772536 795785585 73376215 975772531 748800976 873547870 128996778 874048056 644679529 170904410 220643505 953550193 846510398 127276390 391738442 939282370 580382294 425605209 124474356 363223744 13616041 207676606 896130376 600826760 932492008 780284166 417277709 695457134 722396830 510867773 52676570 147764578 508233881 811840585 693505288 437523989 53487474 446254819 124078886 529150264 666755262 857077548 824212667 49814777 325262281 615871744 263171800 447619395 377650234 26180692 239709716 484890830 846826799 58353115 136314152 395965955 11780322 247731827 599724044 912363719 997181222 54122444 458969517 100651205 331803750 216960094 319428844 768948487 816858887 312914776 989409324 385513245 178046360 52974132 588855105 883227817 754490396 976936429 861823107 225330911 671397564 159514732 951394968 642013504 752048905 171209666 854815883 980449216 889378631 276779432 204922578 896646529 290429201 169510699 153949068 409221019 531271498 497120896 421142399 756663250 243675272 536424551 391210859 940383671 797287009 483242329 192288044 674131626 14737652 994680220 7490615 436392747 957666769 888330715 839711589 588274749 653271940 594349632 945201749 159751207 605592487 287450747 186537581 139573210 716153893 971270758 650242603 776720543 959318151 412746093 398039628 706200594 403054179 335248800 13554481 675105292 440904766 343074797 529102680 762912989 439215661 496775394 887720774 735681106 49154423 918823225 304225106 214186327 308264872 372685369 526455311 131603488 5871822 374293308 885212113 762345499 199424593 488825541 631442251 225593107 745821069 702351110 177882236 178661986 47998737 224119700 540244198 383302282 737342233 229209419 993661111 374046780 262993765 221968332 772194053 635731052 530759602 120720003 603112286 605938780 692935598 357100130 494327077 534167670 534494765 364348859 301019471 975363761 499160358 568188545 705002267 253477271 762222072 730849352 46806704 185989772 282307994 313778847 239775533 700430648 337389457 762465154 38755726 718102203 332168025 650389434 467468637 702986569 873055970 32536105 603026838 508761824 90647648 694897026 784595966 118162973 979527784 314950660 239819036 62723462 729566426 291869799 774267095 472098376 325294255 587988378 708035356 895690482 327280547 482704175 677976452 188672254 1143266 756785399 9424387 183232461 262034473 620708462 890316107 190161548 979578634 11594766 782361781 585451683 314885815 213827023 909608547 662167824 731170141 42402331 712289694 956559828 804485823 212301827 173521763 736253135 218799860 393875995 224043152 390726314 295346935 868687391 29226339 893636854 574385782 998796340 986448103 143796497 835494613 899079362 369332634 1002070709 126561514 42327096 933356333 366773727 700361743 430958160 864400922 804049964 424917662 538026131 151336822 365271984 100266254 432922927 225591556 591392713 363998714 267084537 478393813 875620781 978073322 412337810 678341310 874260461 471335722 439643183 463387361 23781332 286714612 437742962 227741053 573243881 25822080 23375615 474884414 797120086 761421654 899270729 889721658 50790871 153670788 921371206 8807011 113706421 449681687 340651824 1001336961 91433920 988435619 123795151 740532828 389607143 885230044 622781271 253960770 493106222 869203895 406468461 325583872 54965876 879054877 733131043 466182302 204162904 905986815 316927440 982713995 21602120 133765477 13950105 340377164 346777514 825255771 386058089 815320568 767705095 477640872 498854945 748541902 837266179 313819652 591470441 97635209 11215926 410012825 891971867 962900361 585178439 208326919 137681168 296677606 106460920 693827679 875559078 246831807 98952143 320014860 44629673 648868246 968314627 117554020 124444126 152975681 152066830 589580789 296892387 5459004 39871100 283198949 928270352 561111040 743293598 145254996 72048897 569217809 815256806 904549147 785038324 711074262 480562257 426668155 727299042 134759881 570056867 692360274 238313055 629439850 960033468 588936275 908522617 505648268 195593246 485026414 318867219 804650662 506346330 781996683 19539618 530611501 650084523 154047449 712469485 764377071 793473069 39542147 622514276 847533572 518907526 290647674 245406574 451972664 611866776 89915002 941576495 720306552 818222156 415304736 880063877 549351719 636544046 507937256 617391982 858744350 889500188 115763712 74817616 86106158 612367140 219640051 501437734 411789883 194571884 528154571 437247476 915929033 992866365 946973700 619849378 753861147 530652715 365517081 190917601 593315196 605447646 891632359 526242537 816000558 421825581 918068550 758189004 512805925 136163413 949516735 775727711 568883028 486464249 371972030 959674578 429735083 247956485 710840798 918062100 184920832 571068405 741877861 621388559 151591198 107013733 468143409 339000422 403400216 948952302 463326401 314531347 500213240 570573308 619945879 446355500 115949019 44455280 396789383 21142444 883472210 260752545 830852189 371114578 530696327 898420362 1000383232 458776207 837052045 746692853 656200782 378190133 293647769 246584880 1000829224 537853309 896864691 240250551 909383011 875243699 883446776 710847561 609012438 755825805 127583133 593245512 90088769 934447411 986738458 922258898 413417607 173366882 317739521 707478492 370748047 959345418 243874896 628961508 289545519 530915529 729136366 870299029 870398003 357986025 636586038 399707311 639578310 237572634 547376990 646104464 532136021 878071024 862136688 607307206 576618028 666710623 145811247 851017172 645946139 263769657 561676997 868072356 364135633 590356188 850064766 231359674 819444310 515434524 62901677 873056575 471920881 954831431 609659971 295604477 666226158 291064077 851565229 113096532 544914124 750862051 158664095 3202541 938216478 284901707 925479536 299477382 115950168 979728648 555390279 232921890 280760653 624490161 434126741 811703323 992928291 19622464 291694929 495550487 537743559 191233199 538449771 772637097 75385361 431324537 635455415 524191927 673806358 397469940 733979680 419416661 108879474 987095882 417938528 433741539 883488383 584580459 916947019 431404157 136421747 256999069 988847160 98701614 583576931 609264315 740835202 681120906 766834097 535445380 698923171 557087865 413659469 780815185 933161938 420466752 793974725 35729634 525752008 607323167 263719093 35468420 703935088 499748724 330139576 776156088 259876382 720224792 420388833 206634294 726820821 800121717 46626334 993752906 706810378 126115306 972892436 615792860 408138499 468462948 871162956 661165062 988449972 983883352 861910055 931595067 788825189 454684866 521536401 666064540 312384653 156396705 186038901 247490475 982474481 889863250 813209950 765212297 122511506 473746938 506393622 250838329 279200001 670925806 640892945 402943667 984786329 636324949 755332175 368300089 364889309 466908314 23817401 511244237 686263799 141450964 86167942 500278749 625839109 664559641 714288176 757485600 620284272 48382334 939709240 94803505 340724560 388949577 47494506 183848582 986444604 614027839 587484339 960415207 304022927 408527874 115511924 690872261 47285829 73940431 912431118 141523083 804785674 938917642 445619463 704302632 116054027 551660103 51837529 423573004 421471651 393811050 866575195 143837271 732056777 588546632 524269212 513633196 178744305 732899371 915188566 882822231 594515591 448304834 108569622 448757253 844170718 525095942 172382157 95295679 565746381 666310188 138493171 882676192 920319018 126816424 759998655 963294624 533737119 285316934 452127615 139537125 313819492 775681672 8520146 655829370 780690391 678954239 872267873 893753123 25935737 962168491 456479726 191415876 61365058 304852399 877093668 522066056 990324138 933957876 486906217 467412783 885622461 755801277 197274309 327308407 852080922 340553639 116650303 861752893 530455413 59692810 201680518 244163421 328553081 692355369 262504697 659632516 988458178 610391070 654501084 837180475 272696867 241852142 545573527 381812266 872424691 933875251 721825634 569487807 227499012 197182413 177088349 353731485 670222253 87012609 338507560 862303618 838233016 890842192 197802236 267063940 363926920 581292749 951860251 283446403 116699318 640266538 386562090 894343682 578885664 860719884 672556555 61143143 107204704 139420553 994240079 789532699 45975582 416602838 359805794 134524136 410773265 869038937 321483908 563676530 521112595 30526920 577371659 591377690 470048949 875118932 172470893 883654883 872264492 902340254 232875990 140204978 212880167 750242496 877201913 582280383 367493848 179845006 91108276 51263380 649909429 280150216 377675661 11700077 227762260 542148010 303069309 89099002 941794386 294454786 171021281 74354241 824203725 968252724 47648892 211807794 1001583558 837975771 126736954 774297033 984999856 148716768 442889316 736713904 762190892 990386834 551615535 806677576 218927485 937907212 655297739 617865303 685713960 795412851 958932986 70539881 667291740 495962089 520751707 792761233 647903722 914478655 566586092 729359568 51696567 138701480 194964613 584902572 45798936 460887423 294577648 414762433 660755226 760582989 1001087974 627259321 264439417 195897726 380018484 969142816 703701057 884651565 156361389 70292333 807304281 709273466 580660428 684742896 320363998 198067018 558982805 538060296 377215983 870990406 585181273 503684755 330729199 872030206 288541116 999469020 176533276 304235777 384953066 759436161 198761169 792349164 332022159 677836683 494787379 256662005 930337052 141899254 395496275 505927774 111053680 678405353 168308176 320607948 858519275 804845707 513122207 234469656 882871585 297165417 513169511 515640866 565077586 112298334 58566223 462551722 5961816 758774150 268391779 108358276 422897799 294976857 632897389 330779167 886382806 288140068 489880425 47286106 315594026 455981027 609159065 277924935 554348183 138156023 765871262 182108503 919299242 678318032 304071936 595181512 351825405 380537291 723157361 254187567 755084322 372163165 876741763 235752829 249311292 217841660 336286726 399550248 584344518 316343529 377364077 900632439 257655772 614957411 153759028 487784957 824535823 390511846 808108471 921511381 860297231 333537019 266233397 747882892 342381060 220413923 517146738 569670136 24890330 283387314 736118161 8121246 404258162 147487035 381384234 82743386 556914590 475655362 956573048 371375340 111411933 783446132 404372029 959660212 421527445 27658345 150241574 513651582 156437155 491507148 598470789 218118286 606519472 356435228 423206714 313326234 53838353 229960375 720295213 394783455 497916786 474546150 845756224 231566992 272506343 382664092 526357068 846793371 520619056 331016751 950729781 210371975 874143255 691497143 32158747 154105891 959222086 52649317 320886901 114473823 723036797 620499941 663550243 947181298 932778248 683727830 341527632 143747337 316600297 298890150 517462583 218000 152525514 607904940 601477703 380070746 644159182 773765136 95317605 998415608 147776402 401560040 702726447 953403615 833823514 873531721 615880550 484788747 166620060 660503206 408157812 183978260 469667068 911293999 27267458 77687893 635179831 874086178 817084709 898899384 361209045 185227064 112630315 120733318 717099716 966618113 515430412 274603327 65856669 351008064 756202868 169815510 825583230 451196413 325776913 343925882 26795455 370204218 232322476 917832730 974746034 881450505 517668601 294829433 142702251 785196884 274301885 939254363 564074234 351483505 2590146 422822049 853967172 593446464 784730755 518443499 815744387 323715165 82264349 936390848 330467777 35924680 887857236 528601856 343210019 693969764 224222426 379687953 765670972 842944694 747859748 54280255 594547835 756910192 965261335 649151263 398527618 151941495 97229810 678528695 24324218 970737488 961617279 604564380 398697780 50777154 269544596 677950061 260799217 641119743 438427110 891216823 138392156 948307722 247283749 488698721 1000528670 773658242 252772319 909219194 772423246 853364797 707433492 46837327 184653371 865221402 211877220 447606302 1001520775 454596352 59445180 895063344 931524906 533136085 328179717 575204801 361447610 145105519 947933341 16268566 937271957 733234830 5925154 423911150 384025407 202741870 271202569 709217244 836265786 360269293 331576602 252556443 917720523 10136230 599194331 59889531 996142153 443985554 394043037 753927704 462511093 718722241 76076674 446452136 8027769 237767018 361667715 688272052 293510445 57332587 171417450 945151936 605058269 454629469 515346114 454626219 579936112 561129305 762365144 51934761 218291815 432574952 475827844 569319240 329596213 34147562 80570864 888601278 78260070 390021231 741329982 609565591 148716703 516921876 376428121 825259058 54380724 37061901 192070493 6580737 235820047 361169082 311306462 95242706 269362849 652998303 30787703 920312225 228177004 406341769 17987928 111014156 862476082 441933029 375523883 271539051 533796566 182460745 84010426 655677161 349650057 521585234 319772862 155843456 190789650 67025974 641058505 547137622 280651262 849469809 502866133 906280678 790227692 771276620 619960175 840301271 147082229 548822799 880232786 34604648 523901305 998879668 521214745 77993528 542078116 316812973 534430399 989322684 667785485 387835803 551879868 148163074 152903269 326857064 670526859 915394215 303488323 653233838 127461526 635122221 796967061 211288682 156969955 318536842 345861119 938261574 770967418 992549100 454976621 631013886 347448054 838736699 792196622 870581498 634347748 261165394 556731765 89375230 702590452 20360879 882256749 884997101 546258220 887880948 807372031 383162029 543313154 444054303 200268817 212267387 460367834 781453220 570221251 624577736 365593158 103318611 435300247 726226771 31274530 513560967 852094689 592574398 654836180 146860367 846387579 526147473 918990291 778019712 136603917 666699244 940280056 130933362 709036556 862794799 716284280 740054429 669627692 141731454 162942839 119600193 542152578 430049449 482439491 515784358 497767633 878324769 766660720 850456787 226111870 35822905 201724365 268058451 218899769 425160996 25740433 962140071 348103643 112944225 468434734 865786491 270478989 883351320 334181446 935410932 477307450 40392634 254212592 222208022 354461927 120197165 850067452 1708540 807124759 685456204 387657370 170583330 159290203 882209735 616274750 847645181 189217355 873129595 920451443 448689880 124169957 994456621 702528303 149553624 369516075 243607108 766837719 78854566 217817707 958828948 360905078 931965297 301544456 495845745 303992620 808440576 81857005 887651737 85446668 463581891 402584084 685168683 43880268 178434544 196441999 631746374 246648639 577460066 625668561 538540204 579379309 451862986 472871591 372116710 911877481 180995065 442569979 790101041 249568446 443586367 281133583 111402666 418545284 90628240 829192965 753739346 739945839 210010052 962786838 155491071 909858041 223094356 939272255 5216243 559598499 765646804 658904846 267933847 84343830 975832011 791732356 266154208 313371409 889892750 12077640 957367678 663787951 468490493 890066678 138523269 875621719 266284906 95490261 882104732 235875060 989274594 484495856 164470620 947685973 178991116 50366155 820909877 325924103 613643024 643660092 687086750 885055731 868780886 50251642 641740250 718983395 274018171 997261567 94573561 167710885 639730545 881635732 390965106 500962233 988847271 289499330 638043114 710161693 967357190 154893852 747208732 874765471 790796464 634906119 483310986 214387710 45913702 150832862 814000791 391707991 622248217 356941008 915786727 928187653 277937245 343365329 431190104 352507760 88437075 197442887 772289366 192846947 645757152 231235460 138726455 966150207 244617467 291932473 826848872 916937275 905480730 62270148 832150468 402761476 635878770 365932441 125185518 101906865 484096819 398349823 503459681 767505033 628791186 588412275 347874065 275970406 897053523 177892094 983735156 6164254 322199663 685542847 627819380 912764100 249960994 432983691 367120057 413362082 50907232 763034179 336904047 250761382 115404482 241421929 864891156 206757665 729472550 675041314 418614513 457562130 187261132 16659663 654378194 302703108 349236038 878793319 936033033 196368525 816712639 470003395 403925677 27005331 853153482 549758242 342854175 723162016 491991715 863784967 814325660 114052410 399984256 205180615 426594982 100142898 21551008 756882837 967657813 913233737 742596613 5748385 293024985 686548605 625477529 141592434 452917960 718271076 615351845 537866257 831186129 930609865 140524723 730991923 18642048 884021667 638356545 429779400 980239703 112272295 420338232 602208228 820609815 920065031 321279061 580980452 491808338 347821118 48640145 611053623 938192345 344150951 187483124 228516092 921870335 163183772 678802766 831357653 857498767 401520999 264659144 553688334 446626577 778301683 273855025 255871659 472906563 910184788 65907490 323100397 538914691 821803781 328987800 52099334 511880789 517456169 752521184 483055434 806800103 83458495 72273528 867870659 609667137 37806745 479377662 888932703 391114260 998167447 467178358 350177190 18679867 809405476 508133328 472617223 308363680 804456880 379513898 344535602 495851596 74568594 344249503 464126088 522624532 584631982 886117731 901156648 8357792 101634865 958461499 229275976 988579108 707929555 868540739 913521706 45543631 939870029 536634116 189428351 235275434 9932449 702875329 229804769 680980690 362986051 944483781 324413151 432136209 949258609 364916659 755864420 697787989 625381610 272035262 57956778 867791728 528787957 900786736 135292901 290461952 303311310 188972461 909651362 83996806 982080372 748595545 446006032 134044290 907563566 67059202 432215383 768275578 693002166 137406190 396822106 354328258 652584580 504208138 593120449 999231192 372835808 181204267 652615403 428201598 803738600 365498658 78005043 112915314 326431568 860983430 361835582 872293727 729607361 523598460 398156099 675232700 507970323 604521357 281962387 204689043 710342546 76780514 24743458 868446966 638957624 797311787 655423962 638123318 919821357 85519270 333028864 613567707 235910441 535110719 3645970 676791355 424523634 914500977 716294170 309284906 41723520 432768595 533986486 572560898 350443952 623462591 802422320 95326807 295695338 497035057 265393476 850082125 599794854 448836916 220506768 777393507 655920158 107734367 258350481 948362363 614486426 342231790 904429986 551202290 461674599 647990314 574440966 176179451 129173448 490306423 415641682 895492518 760240783 12410923 963000419 508856598 519828196 612162941 137153087 177764137 848524790 258186587 391099146 485203311 552932733 664758051 843920418 300725059 417980308 591229744 517796640 27132136 912025587 991992470 897918573 340227973 137371698 84781402 104647976 24553292 948168509 897177773 312257302 992055873 400291943 479279381 187633777 831442520 59245962 405511304 388514968 151994433 117402866 28685394 896729893 843904538 78107180 112744633 250397520 643236456 860692530 474145976 635780862 343465294 598519952 682188906 231386379 442226319 946366951 253143644 5423704 738044941 133768370 432752313 553663363 253153263 643010164 483703671 10391534 700571652 162963554 315155947 629896087 388783156 638895264 344290889 459028675 624185004 346446078 807179644 613399760 820028688 780185663 584680072 398702980 683444253 135528960 129339437 797134944 652325695 123482728 914145088 953737276 94506046 743367853 571838293 701726447 968758672 282178373 309116417 43302144 731742107 238278933 78328236 544454682 553207299 291763001 311291321 611114086 951225825 970662161 491662745 664702278 273890770 414291201 703550047 765769117 735677982 283423246 68156762 789799763 374723196 933926701 284644566 221980326 240823909 663070849 204093778 895385988 24194758 172333933 701110566 181562708 870811266 534813480 320038719 575253914 22787612 191218138 69850356 596930391 398068812 770826602 997236801 521221137 347218081 648014049 119183861 318505608 99948685 941420083 635686831 668485943 299269730 76912034 188057883 476224966 69681692 794605462 595309390 415913398 217310190 550736472 500961058 629250565 196888934 615980464 27913644 880875036 236392643 996515436 5191105 462727598 308867323 761320602 656966044 276126196 739274250 106413405 592143592 674304330 965057259 403825382 202839385 816503217 526601796 163721942 324780390 989504205 335350338 646229967 485954923 86092394 268985943 524185914 762577 921957011 720644977 544844092 484293804 891112613 355009160 25993491 183236019 134231723 291084484 71778648 131780835 51310189 443521614 691607234 977498716 906222221 93179562 589218280 773499035 343872742 385706427 539308682 529733583 958324016 969426022 753891945 522016996 559545974 847729563 843240169 979876261 417912209 555774735 297355071 901774979 808831623 73654685 928990443 461312004 214809955 190823665 225630359 631248066 271725447 843286485 857269644 467579581 911332241 584457628 368389298 665774519 177401940 476000502 827612954 522420824 628353340 396352531 423178933 184153072 823444726 210991469 27820435 367660990 725417315 62884035 942885357 67879143 253654670 264776140 428773371 630139749 149427497 616505728 598604336 468675345 372351586 907597863 761513378 991745667 643662460 11421975 611263544 842804833 369452989 811229093 620825710 531923574 148600284 713771258 938697553 747828807 828720985 251670715 468187793 959736351 18699069 414542969 839500820 881182402 616383930 456745087 213278417 227329017 366077176 976187229 52144231 67133475 174864442 752372389 169396678 579947478 748073961 277541991 543070358 136002005 610856979 160059933 843052296 216596915 727785569 426641624 813177124 930062501 748334412 754555674 127913100 986345965 295642222 901025435 123129985 309737367 662598909 922971306 577099990 572969261 370008264 833024685 367716572 124302964 218230924 783008073 630548370 436330954 998714395 428251624 470169728 537634596 678601252 807157188 411475871 435477853 185110169 267710864 400477040 708736561 779269631 313809616 563906303 407521356 659824820 535753321 330008113 335048964 395730837 800292193 703855660 773271410 1099673 55895215 654640270 259855608 955224579 345902058 838770853 68875757 414966819 30489723 584260588 609789551 290193390 81719944 977524635 147010519 123303578 835385953 643557304 965016159 893604203 877155567 710189838 411921306 715110897 650871627 3392445 565358920 20500933 915927653 257442251 572988693 466103038 526844653 796716789 362272887 753820697 332238552 924162291 803489064 305791628 560200898 216938183 800636923 605559699 458374719 471736906 924167572 654301977 444108619 427108590 667776968 470191517 74084029 305591709 902324209 446367257 635271283 681875834 109851314 122034809 994147722 393689297 548178783 166717011 596374676 302166148 579165047 876127486 449757579 825920667 546164384 776195682 583724319 970783302 245000682 965286397 863514804 819743306 212411034 803791367 713260896 70839632 675763851 98100929 616316645 805039217 115732778 706390782 757498754 72671010 69528712 85135960 325845804 527764970 675245803 949268226 745107432 131258929 559783969 305774627 583041863 708650119 418950812 544340361 89706337 743489096 762239797 326678084 198035262 883686500 798178695 90927653 51645226 902569086 266674769 163594880 985636420 509582260 685730514 845709526 607656256 987839925 99748082 30207131 161525255 298993331 149118567 152453842 680372909 56142827 459732938 499248168 698046597 19717903 40929603 128394569 328812173 584607149 152440974 340764 109008098 473383658 631580523 983016502 425996136 851817068 805477298 876950628 19770042 135317100 670078074 444078244 152398985 987137291 310440481 703604359 473333409 585815050 685762462 162668892 850455215 445246203 646501146 964836799 742677176 374036919 543633378 669624411 848523772 699496695 763852354 967390404 902898188 579238603 627290275 309878848 341912207 485582259 34838940 696787252 544337253 24104995 491048000 995583337 995884230 968259494 320708850 151021159 642360317 192492248 221632361 37847735 612461098 87052236 691847728 818445752 814125178 442193763 667252520 204430571 580715704 74116089 684290873 848931272 125594202 187785646 749456771 547387191 143983236 734148650 313574394 530906166 619117417 718216590 426519721 273105727 416634054 984563023 133346354 728640587 917116751 873665313 66265389 327438679 388148616 548891654 97925774 477306335 218169086 731386220 379775740 974765039 735656161 790228959 642561812 259905299 522938057 351790178 789336535 458359617 523265897 564108559 186197624 608074198 785747329 630599642 235003990 86111407 218578684 528610861 330065329 239122095 855789735 279388670 749236597 359998555 549736000 135905639 399677124 594811400 964261852 916573248 999751314 119278599 318798377 118200644 283586881 871339921 443303185 803222367 124039084 893280711 709813588 189683494 224210989 694461868 681521465 933355141 299092722 484263707 15903150 955663892 745741521 43708481 111621225 161083590 518468851 112855222 52045539 588968093 630157311 222574453 70748182 558827007 367069699 255122910 479548116 137083454 692852838 167816094 957626950 329178008 261814977 158628304 700520792 808506568 755190945 754758189 919831635 580245322 901435942 132197233 245363512 935424736 500497196 759055532 919432736 44570054 165099095 287081239 461013535 163431681 906830431 347625792 517793341 147796766 859243002 900288895 445890308 874133791 1001085368 454167027 555686987 505228630 857363708 12520184 457967368 368786210 580969742 424401480 133596800 128569784 701675753 542094198 525606043 160911557 920762065 879638000 8152587 253731943 934921776 986272684 710924904 606894943 452473483 575279923 973625399 881425473 197100970 547307610 382948458 428042778 425605591 211217253 209374736 66723996 987118392 871810410 539440230 834944577 353417617 687172467 675170664 240341059 845932013 678699467 635666820 549001332 576275762 195202179 746848675 168084030 981784349 559435435 195376188 610373474 278394506 276046055 592468551 514977731 811298742 707573522 672050298 238471925 206406265 131280523 294525589 602028650 653487011 18092246 661596218 807726322 983982384 769723094 641123847 550997703 349259690 368021575 231720284 331309919 179577371 355130159 71687019 737932859 890958392 352730872 254017601 860233634 600848152 268558297 1000676415 534614217 248356513 29418021 311604755 416658402 352810809 412626939 418928558 844179886 688957348 749479673 641389634 80961483 150977461 613309086 164230379 634220822 206517550 915537952 865898 92748605 524250186 587995134 923933351 965786270 272781357 477349968 894413094 254399750 580464985 659700478 438849915 850480596 852464643 335866756 678949160 939644067 146889137 74149296 247370223 641442350 924101889 874823816 587891169 77243475 631000315 159905028 908760498 462414382 434612352 273607245 808448655 389593010 53172333 31071691 233942004 251181138 679276542 42077160 374822809 709167561 277617419 778895993 419225101 805978758 993771585 757358063 124259551 696164319 475415271 887773596 33739690 550624620 740540164 808893160 283898115 562414268 752412051 282455766 585724776 662764829 417824282 631380112 427695080 702231053 381720042 871217237 881609686 156147493 622902468 441551761 728715578 255270066 242078094 939512607 848723520 117954412 695130710 102990722 411147687 870388782 657112148 457849386 173537908 745414951 937980912 449008143 743796404 284677312 129236766 26798494 322141819 482352182 469915895 182466990 363193493 470089649 533856628 784014419 364954460 169641279 391144469 573132649 132172563 649575640 60238654 947060700 980985879 827675026 654480379 587472223 617602046 363324529 767269862 872434410 261260542 290268798 145957662 342380096 369807626 688130425 915269523 598831481 457505638 724778614 644941821 827972422 468200456 627656273 534158006 205255282 862562849 41344091 827448675 857193099 77985566 437253041 644366116 251584357 687220942 160597622 948309438 685062177 771420993 485180373 191584422 788301673 120145903 920667370 57776782 654953429 764347492 257728184 45182948 689365190 159643268 685175335 789181571 800248245 810528083 129757801 142231918 834452532 883045283 25802989 757195464 576194639 692277777 716080080 317318558 953457447 884492232 639184876 491037952 570657477 445022660 668360726 546147994 327570207 542028431 424286156 384254154 378477391 90049632 606408116 271324718 91593769 994655154 392119958 50325573 54833095 961840353 805347774 106368182 131716066 616858790 954556828 441949650 194646141 465835966 467459974 715106538 938796384 257009254 421730796 149897259 164085754 737323327 474927867 147156238 18693371 51090241 889538194 487444299 86205654 200335439 380889595 91730817 544536103 846759245 476914214 602881980 218552331 595311412 186682959 377925214 413578901 254429284 13200164 911200937 803377799 585759268 683615502 183038619 585760101 107302211 946246758 648985054 73318487 823681274 634610305 457416311 117225549 430540583 473943931 787900905 394546039 888995013 698696456 289418402 106626083 462817144 618246917 451613555 626798473 396243945 377364898 549618557 718842631 763928042 526434186 883395751 426455872 58299747 756011342 7832384 335870230 241394055 105263005 696315886 930214387 864211448 674045775 931146158 956491210 143891194 518550555 620819102 888071384 1896495 327587658 225681384 319748997 449018537 526125732 751198448 371225651 128609710 862894763 46209446 727513397 909988987 102442361 937937504 73865081 681662695 32274170 797560687 793546119 841476185 388610682 395126146 20261356 830015750 313851128 136528690 952182185 759902227 301125599 694169716 881643324 143753325 443416932 425349659 765454830 794678703 72093657 909221560 493272173 857030600 907361681 405360860 648750127 435860793 414177484 331695201 790978864 621686679 512081563 499630354 145582410 487665402 223540728 217147343 733517744 406521759 809287318 189688460 670728644 574597689 394278957 787843936 2747780 408782823 720442005 443856593 671710759 804241810 835946853 941381379 698838804 916699251 214736145 171237789 300854396 876178858 389132683 17281308 825707060 483279827 741083056 870489399 174346797 160766238 79712039 725066280 303676876 265965160 306714239 171123458 266712335 892713987 990219416 588922060 878356281 734372265 304929398 299117647 317792804 963687714 798161142 909426967 928063029 429380715 48277835 230428491 462469970 539840975 89500522 898238659 416572977 965331392 413191403 681903698 387309265 941795366 110997111 248690185 732081264 346064469 512921076 200646541 608590248 494705818 326812422 286875459 986481878 107507661 544440526 752028576 698072362 83965284 552646929 270016730 387742456 893517766 328643435 663194270 712435043 206596415 98152834 713768376 488160534 377667273 43176620 370798505 272047287 1001857263 76300230 551994784 330701211 991438674 30900797 391111864 641818408 781766063 599984223 902203143 994558190 814265538 663809185 874269527 632070886 581083555 782266268 198393588 409260250 739427003 278438427 702929307 148520393 937912385 248037124 223785553 336976387 328274061 345344775 100393400 222796207 632842719 450197899 354247824 990703819 142826627 975623508 647551162 661761482 694416227 175864644 708502929 384400876 601746355 1654253 657611038 341432649 642963275 9170430 716767272 620162744 63461062 654552254 730459720 128741151 766702044 662567866 913426456 1001535718 639154017 361094379 319501202 805754461 113580408 684573069 948563189 763754195 651914948 191871884 486016418 802686855 839370804 458885550 971717990 788431773 750935096 803674686 761215046 757602168 229844533 269007857 97267357 845641874 79194357 673983616 139971001 582300012 648217999 834090916 43126289 693834488 942693061 601397234 508265010 80392661 309186075 791403975 124433707 934207359 732399093 595281199 742616385 553116638 550773955 312593590 62968507 873989819 109514014 296629226 3228892 670704766 8601900 437277580 729544333 217682772 897325839 305252597 85397208 636187825 196295321 287856499 427216109 111210847 778638352 116822514 405998735 662553748 46831893 474881005 268271108 840580012 248365898 137909117 288902065 528281764 993175322 808769621 97424689 479387319 498835590 735453769 703933710 525192142 863401597 849239225 853997850 751452086 970455769 526032416 282051732 607993532 765758036 825878319 629204750 671234845 845641097 297902054 385559012 878698501 420062991 575332430 25531191 958698550 467451347 726333844 18877124 91853736 450392347 155105799 998143111 260005004 407397518 474975752 189347601 701674946 150854596 413194775 257054956 273627062 888630714 106358381 193446676 58897357 931913116 953980601 349699526 806736837 68321605 649927437 168244572 593309946 323107844 58450389 613084002 771722918 101737497 403246135 76922689 962893206 294364611 428682483 397971614 664222591 968300149 46420695 812672651 128681812 968820759 463692793 283495204 242518988 179129965 876266860 858964725 520434775 200377055 514195419 668123631 184002595 155944798 321848278 772156090 61832393 663760788 139689295 624221273 250157159 808115189 667024102 119172150 562200848 383805292 321974623 670683304 587603849 477866213 902292368 742364932 59358129 618262587 572350518 582132231 25409944 509749659 545731019 120677496 996581054 923640179 155381929 346874785 450220370 971682306 3063749 382125505 251113670 608324318 457371325 2908734 527601663 482488400 654802341 451295226 276346903 424926653 979462638 954119711 572341152 363708875 64815827 542615392 3938666 136950808 72631880 65178057 72684942 968241964 721194712 775796773 298688492 361818069 831360482 268879804 465713365 833844083 753594418 265587102 996408675 527415809 986859733 720832290 765537846 254517453 554743545 565402802 378307683 500012206 212033901 842431587 443521148 990146801 595786023 559630418 470650312 961055497 331580490 610703037 235850869 31882112 121977232 306434149 805678156 173913247 214220754 90938274 580007712 384654952 391780457 984752494 578178378 36682607 989505936 256158688 880149001 80197730 496045856 995044585 363751603 368193117 779049707 330371835 912124384 992095587 701281222 813972670 197589617 599427770 506344105 460046037 452488369 108229687 355836569 982129582 341623385 611310474 431392699 874845676 128546193 274341819 45980563 782118715 238504345 982478331 17344249 246849860 687397413 978488557 724807960 943207366 319322010 259722791 877058876 455944366 799352010 126956561 380010766 155225994 570130067 261007395 347669485 186115015 337930273 938511332 23161278 591995756 338403496 56332681 478231651 199882724 545974744 285767725 915308025 541928919 890751775 431241604 130184248 594775024 334584536 268968913 585049535 681553501 316294435 837427324 274331705 943834209 94268767 704454682 996096199 943708060 96010179 839864123 624853852 524052803 623772639 869199015 928354480 364214567 584361134 124205899 348502906 381054561 572889087 727832863 476267469 781711757 181882307 344867778 788993604 381071608 120922030 125004747 314294833 700127062 864769365 600091279 371394608 229786392 601048133 379243807 292591117 18142111 52895559 303406960 336432626 176689665 962508756 806545774 580263647 850112858 783272003 627735457 969566993 448896973 40653257 38637000 434799328 630585893 997112468 274065048 800856400 73720667 833356348 847792997 168590023 789146393 753962642 497106556 112957405 460120377 387959066 361061259 812160077 498032944 863252603 491086124 433085979 505388780 58889214 315516983 556395463 362795509 240181618 94202884 905825613 765158008 640293246 588493589 943172096 815909502 247508342 106975119 904434331 705449664 382438412 522106191 40945718 922638174 318166706 801570807 702773151 803231205 31882902 727034450 896776912 365455726 718318350 80497503 319844068 440677308 227104080 793073020 395732939 46466627 450417223 919652855 791035168 400325209 691504229 35871746 750935139 75425465 424433352 676556564 985381195 539451357 640832393 690296122 950054506 730419567 986984042 974532533 389382923 431182393 568905364 186573152 673977619 668659042 717955156 140130683 172739266 897591903 151382795 675375887 841827414 419012426 717089079 463907242 565776124 765452938 898407633 922359465 178288727 543752339 459074125 939142965 717948527 664455965 170771373 119846970 448728631 334142259 254614418 559907306 547598768 737260024 615641737 573071959 465488849 838123820 612509636 317822890 101085300 746075476 92083419 661110001 254116949 253387765 921035610 34746124 834773383 149455558 733655095 743379377 809209662 981997673 597522173 465278771 817022277 529689452 877346453 350220611 59628680 266387132 882231232 511993457 127497388 854408439 35492872 784197900 137044229 330036317 423172870 468955727 942641109 400703441 299669114 933651058 847101367 968599002 893197512 982994944 937023486 258281287 955532434 680726830 461976906 803541943 180929931 75098857 49849286 264907158 657126116 282646815 21381111 999628819 704552693 982591506 829952915 646781245 910909108 720018707 846340224 950210692 519487882 599105615 93869463 526989528 343851207 899219753 344567371 636609049 720437417 146104586 316204520 562219508 485637103 726627467 148836398 317004507 820338470 834504889 382405613 60947677 751154487 928043037 691465849 581048520 1000535416 341694963 855918075 452699834 392013968 154094761 797153655 791494286 57261907 863314877 787477541 945724766 840088439 355441810 815876785 281459268 467848729 132259962 177229165 929293480 122382611 998184780 222146149 480874317 644601643 919331185 912928568 517885279 116709211 234766025 505707626 771153588 884045221 439793114 327726705 276621410 816219014 726738138 986746406 289150268 69429457 762951630 638974928 801820056 910239301 248154480 332454639 262141501 652803401 933526202 689846514 445917318 824656266 663472878 716276271 980547190 494289106 651561334 907528664 594934671 941294688 956880864 814856863 735513380 872430900 908039658 673748330 728200257 776774954 823461877 189079950 718138324 87318546 283330275 926279875 125485218 833524268 744621459 286057139 278212324 88784002 926064885 893343713 166538184 688819382 761311731 34966496 709150619 920315723 165530776 146526152 498060321 236932093 191089778 739228167 792679265 720887673 934306181 234608000 416032494 506095933 115522939 361765030 884966979 28807630 92046453 7828079 493156348 593727686 1000213960 361388489 706873092 112080366 217151162 830396129 562781014 684240283 896633498 115273417 109148448 651242641 9380213 340751558 192584369 305849881 46462520 297130803 664711258 423229365 283671088 859297343 586704354 797420172 773780672 284878876 565192025 497318393 430890756 257331761 299404966 262920705 93604135 948641019 165602934 951148159 296430807 872711838 293410361 902173267 718326259 706374363 590208182 252549533 965797244 910999779 329096944 411469900 858309718 698563657 457187701 299224810 277486095 342588151 367508916 912134680 801197019 434459167 282523233 353991532 863442617 442324579 828548337 673834202 858259850 183954215 813489625 804126201 821863945 40499625 466816200 685849486 271477507 496021489 530959923 842825716 85961233 685765651 208126512 758515869 706953315 851799287 661330779 623869026 792786665 754630723 641980721 439545443 484743827 116921532 527889333 203874607 890031274 218312064 632004046 969470858 295440067 553457613 925693781 578902152 156858203 959944126 735181992 798489544 744020396 755230685 842439504 558119018 973001182 28965469 436077728 659034638 394743711 279753022 720093826 115582666 160690328 994685946 874663654 65888551 804553181 993283078 134552648 682154189 386661163 163956568 191175137 181285158 505914032 802323528 903959829 433696608 711056049 193038626 286271537 76599513 283438834 582043751 363990678 286329034 450835182 157899020 892090336 847473455 11476320 26420839 476130147 925397030 724403030 541738445 10814116 586090821 531031242 954277751 52511145 62228441 928879519 1001710552 729936190 536497693 779842230 616944113 126135028 946237909 117943670 758353174 760868994 304149123 260671041 962537596 212999344 575963264 943796034 240145284 260375633 462138623 420331691 177727811 436750614 519138064 639789050 862648978 177385335 285132943 814356235 662011896 415205566 500816192 588004823 349846046 501722168 421909969 218571814 356750774 796190014 89669845 940179596 140511514 924872630 491153242 543716082 652835236 488541764 985638994 58139913 242675281 437115200 725390685 374558871 628661335 4634159 444157896 538412931 9288517 945399075 475535771 493793628 11261461 392082196 211445536 284819797 987082365 536624793 838383066 700133625 13152072 365356909 978784321 815100632 636947234 248888101 665653377 914118953 787922510 679000528 776682818 417920866 348577717 255530735 1000280201 926448399 834093535 692229548 274381970 657403388 130397348 709769568 517668649 659643203 285459720 759570120 320703876 377121589 796701786 19847194 297838640 835498775 967764761 124195284 102260080 831449300 191983621 526144142 660816736 921031549 489077586 741348042 55288053 206097464 934293621 788277097 379697302 340989169 390420016 781653857 888723312 987472629 395015029 984930982 61726379 108736440 211999398 378660996 302950622 367049053 941971645 632860300 487923682 217914685 952661352 180773194 114052798 564520460 446797705 633756679 865595704 826550701 121678760 425248927 335439195 977620136 476667854 444517098 221717793 44115733 140547806 902408827 24208792 553077189 585055681 379013544 57413567 82712290 332929755 136669740 635069929 966313703 227350081 108830691 370071807 184862900 585532053 350365390 726194292 890219500 252579231 314170139 265479264 538742327 965172980 699790640 450790733 291668463 971227974 931280679 259064091 734535385 940077225 186242463 493084159 31846144 691934301 492438105 708501603 523505342 49856330 835586854 639025044 728017997 360719821 96043622 924144347 801308190 68603445 26236673 912946855 692759814 788166189 125545173 614290635 760928799 576173565 716335394 319687613 72025079 609371858 50371788 286713934 411390349 7126944 805361450 818610372 968277690 947592671 497253386 677813166 749604568 388949415 615003426 865361094 967477894 351796448 473453496 720767233 780094286 812685430 927137965 565365636 883985840 88473789 204250450 397563196 42466480 861771068 214932259 792236869 683389506 714476394 762788142 246828145 962022852 102343332 57512348 787830402 386797061 528399756 212809910 217507875 150340765 265115335 298872552 638091983 438723437 293360971 350612676 651062548 820092953 536572932 993559576 382683652 602869190 805065011 433138840 495305391 323949058 176367928 741760113 633199837 332000940 105090959 605281615 502019211 700358123 348312144 680453962 342970876 985302417 459031726 733448506 240426126 744875180 586770807 324423515 762197710 375746060 568259166 59264276 943506447 690832575 556244638 840261224 40436291 548291635 611740557 494206779 615527746 579186277 293768227 393353633 143187171 282811825 591864328 143812456 687495007 564167291 56142365 741890827 766979553 923140567 916577107 418825924 18410799 493820435 556759575 634819333 286193625 909454261 457917591 528887666 119902249 569032279 917760110 597812802 379478338 415363448 649337919 220057118 350635374 475266462 291008967 21145439 156677201 257895645 990488598 465819998 962682895 571454486 457171610 312184636 995254016 12230658 893885714 924139897 93372590 351914151 390330356 117011638 312424852 503507981 316198903 244283996 527325597 378154726 112580788 643069852 471663781 87660079 149868089 937432379 736395055 889270350 835082635 199495799 894833170 991669475 715566916 980433527 762480608 537377307 191455873 743715546 519165334 962252587 199067344 599887700 646812846 798252215 599163568 352309340 963659759 452689121 654811367 837654030 651387133 386752127 417932167 953638470 969437476 378981062 199765388 383718863 947461988 23889900 450473460 675108592 350446794 135181857 962120082 573540916 481109666 104535568 291617932 872002908 854061504 278364545 436247280 384358364 953601439 11686738 158479549 56621530 437839282 320019405 452080356 530035480 39277383 313791380 822234739 632989328 912970686 317015587 313413721 724820629 94270149 677777490 629001098 860900796 444033946 377917262 777599249 889742982 420408625 813778147 887526478 526227100 920933052 380012808 887973563 930080895 373136200 749559317 487433018 162565090 817054977 297824929 695125015 154678844 161401402 32082834 265503131 809791425 666757732 143536610 119809486 314059279 440047890 220229143 516168568 780079500 821463173 755066673 966638983 272736141 359971959 689873413 261626812 715813307 628783307 904918636 679689671 851632784 694682919 556076759 448606501 418162862 87561126 789712905 665254152 642115954 233482749 34619680 702428020 398357054 929312387 161567322 621586513 405635637 156812908 71598775 277729846 585780066 453360368 681297225 998275409 259912278 986042789 708868372 114948006 955887038 850378064 480936597 731984554 630927858 70183577 66669217 990123887 839792743 139441866 384661466 329210435 187203519 690504525 512203095 888274525 552868829 585414069 455854171 209721776 32407407 615625775 759241998 832565321 98953540 155326223 815275136 481882396 736342302 252170114 766681449 827003307 963307293 749455036 607322242 970121512 257884832 171362659 378660573 100529651 621390046 921304940 25656936 110439261 736180191 996028042 829384355 679885953 14820750 232904017 934990427 168826338 180584845 28601570 171009845 383863445 507192906 576198229 193934830 428175746 797507793 359607147 504886133 73948879 582620615 815138835 171617989 362966334 416714257 506410784 788531247 553767995 320407462 189139460 310190886 401207836 96324372 44303515 356393129 369584615 76295090 440984752 735159573 254508246 379942476 28003822 934973801 392226111 856503859 527374545 548005547 61516228 202427303 317502925 794818110 103672130 235275188 921778858 830486550 293174665 362278554 484493956 863713490 836111337 495962563 162313080 51763002 211048440 749931866 292055546 828821490 934796035 864549909 309182308 762389855 857130552 59825198 810478331 236455157 304140903 731940097 253001852 599005558 405313656 81334350 441967860 601540002 396268487 710211563 287468257 605796908 77924520 64207622 875873998 429698607 604078947 410048504 756262358 740731274 559479535 481778910 294031364 778015679 144348449 351163944 714971902 250290278 133338880 367906409 350620897 204087667 59635873 497661480 192247632 473952706 765825839 788732384 89829278 521307940 400371484 934929086 325669663 912968250 513925899 331886160 329707863 118493126 112001472 785260106 719074739 912970300 212914584 104220042 124758821 552725005 771200704 236020868 615996274 202189744 452877868 602498630 828709131 607722355 997276597 997373140 173495160 439046354 26579183 896160942 616403916 662104408 439388866 832316518 809702445 514424858 808501626 791487247 937222793 118271993 540695507 246463548 263102196 152029899 420598007 871075658 448301490 146088630 167014014 779627337 424119567 414589453 96355513 949204570 327278211 242723935 488398167 250406075 486593870 963590074 447959941 68704807 362575520 375213934 858136956 35378506 471337551 420954338 725017861 1000164072 354077968 134203741 384429581 468997886 263324332 184156540 550332298 522242119 691717047 750124431 744853788 89100656 471416236 940427311 960817659 695175396 930558802 884943164 86668693 31927214 790903828 95822932 775876712 994724218 76840616 402892051 909620568 271028306 500451428 776547316 219879181 776661293 871367335 934694283 165210605 146349905 65523906 688735097 491278624 505307645 365596909 296147138 896124876 280753618 496662528 261552215 884239260 429473819 442919003 86469364 450899719 65389907 238446243 666774054 158894662 225156810 889029672 525058984 766056061 836082462 997454824 992551825 101182621 391063573 875737042 126333475 532112358 742544359 997336566 321583096 536510495 273655253 200399183 142365386 278953820 787770671 18409786 974932335 425329086 966376057 940724207 846579762 503224747 747286098 522362829 559698243 962306682 439163419 524462883 688081170 938688779 299255324 612721653 898881369 365743706 993442253 299400274 747533244 397604734 833430105 447915201 657235045 877172402 3946527 153274427 410929526 126533623 839436211 156758870 578097851 846632982 15842944 615895713 103961955 1002389142 485545158 468312075 23914959 93255500 771738022 656569325 702361475 18340185 706742341 855955297 362542846 391363737 390761902 13544736 879536379 497196796 788047087 114407008 490927335 643710564 239231034 62762836 449953164 54415528 250101627 517626199 985902166 662521200 497349673 924360865 238666876 896784918 917175042 797509280 913520058 577850755 272291567 999033147 349003421 718535376 133158898 73478910 730873763 369885754 483563945 870837873 810119803 412500200 612250699 219148530 24678990 940533072 998022714 489477137 224919728 820544987 890985276 168036132 780118519 897369256 500283713 430785486 149383554 450600602 405011196 888606560 644266256 753609099 224997219 253773415 410740831 667242489 54176355 893867634 325562786 565171888 380337864 715748376 486375116 971983568 781175865 535325427 481928393 354792006 414557088 123889554 708663144 129860134 926143386 616187323 234821504 512909507 239827195 501846631 792176696 763243159 955401662 331980808 704903368 962091507 797922494 373438973 890764813 823685353 471818727 871496075 973962731 57131179 278154081 932381632 279158708 337541553 39451703 256728390 867687213 884602885 663825968 942309758 102698110 460056684 27533107 452957656 493439413 337362896 463609645 244937585 999357899 671751872 213034280 576232830 807097217 226444083 743295618 319767096 152562248 217303501 428558393 267464314 867159567 442853993 242640488 484447050 536441401 969436879 352156484 164966312 570778514 984269530 951658953 793411779 393055565 522287787 860086280 270625538 519629810 645199348 361366124 825689186 634990509 574302539 668142071 682712354 205341541 676252834 428516741 567707169 807669323 50520269 994453209 45519103 198518676 764867022 421056513 295572851 191724662 405722448 627953739 624749733 196711036 889140040 456378001 365880052 20321794 225923051 896746464 159731556 235856664 833489277 825795079 417121432 270588406 929695327 565222644 836777188 755178587 105737422 664397867 102506540 688121885 625378278 42697278 357585545 466021888 148753636 795370022 946686355 875177448 229129303 828407118 874185956 431213993 842390714 976478637 32261218 424947861 530956046 643781600 753672738 118796717 637052843 571733032 580837582 815071252 480773466 451824844 68405633 177861651 979826939 120781168 671858043 101027913 658394053 952731876 895557992 247144728 487002987 561690313 31178597 84875735 316389455 407929602 181949836 263560670 559079403 469914773 869518599 913378930 991932258 696159062 217500723 792495518 109660801 484937077 27956595 315141975 762053380 345736772 618733166 274606344 240373466 527737663 593478390 314356958 531107283 444957390 606027403 576490747 834530929 74850227 351841266 787728484 882510576 619160166 471969763 997785307 194409493 3327767 121094215 618757166 609326557 770943889 113291881 398598971 670330418 321302944 619529978 345997881 190670384 867699506 965826348 687431861 548785520 389203034 43216938 897403179 253664171 587147219 101700911 465622253 331802439 16600258 284003962 279818217 811993708 150259886 14274740 737192323 406509800 633568339 602943577 355564164 933802768 685948293 143424625 354197426 170067600 56311423 499211205 916817391 565805800 670659050 877134559 514318172 864661555 774193923 50058825 524353295 363822095 353618842 441827500 816563854 264085366 313082436 493441776 323982662 252088127 252013931 617305856 769104422 320439297 801483306 185355701 624164491 964346986 913040350 441076100 307568239 976671163 303880488 212985968 723603879 650640121 481727347 660382630 118312156 792428425 578605976 370292594 749731402 338417324 972644878 805493184 326329051 603782281 431975040 794753420 241753028 965002613 645577307 292631816 63832702 701636663 341708781 726147418 77085487 828425986 103397489 415054515 78848361 221432336 601390068 362187131 473739352 649975499 450095412 170176324 876999402 919883839 722284938 473139447 842474300 45922480 912173810 346025653 669916297 303146560 118908893 679665272 480932680 283133088 136252469 767684484 147579717 972416468 909036577 771515964 439531656 933126306 210300910 828519320 370043955 325091132 829559269 394979021 216700487 859293723 66200617 229659994 83068470 893941232 600475379 812419355 202160833 13337637 628543260 242924591 209146848 930465906 934971757 748879266 68391416 510378585 317486984 788437899 673555020 431296699 285859249 222651527 241863880 33893292 438367957 441421197 528619629 928650685 712555697 124150312 514865503 698556589 739026743 610043748 701229938 981527585 671492122 909183719 635724025 751188143 913111626 82303160 240984065 837897194 716721219 185560482 611479047 329703366 902305081 62260115 392780347 484193932 876427264 662072424 859510230 735094490 530927795 499134741 260848294 923614775 652330544 285659663 780225751 75116738 161661171 596946352 212586151 483741814 46636518 160071662 657353057 767099752 248488466 392653338 65884455 904169234 680171870 728619493 796807983 495701761 53016540 215548276 128133158 533092406 230768187 481237782 935390069 381732356 925088757 859032878 738791688 634196473 243777130 156464915 834508419 623592719 686871795 263249750 388972162 220730920 321399500 514207941 301827239 977817346 707738991 883373698 219888884 146740703 587950908 999172506 654093785 441074863 123218618 880790235 785003820 426309980 854965631 239686210 696417308 77628089 583326672 95040873 846228788 725918963 824091429 763960612 929385354 92361239 747380704 61746937 481562723 997025250 320004165 915850641 46123134 476330749 198665971 5735892 343275439 387396541 493816711 949681853 650203582 931931798 644447885 761031344 987736903 897392219 855143129 985012203 918345762 679282923 595237930 42777320 722521898 3527074 293086427 862633530 112144314 860651273 665209354 357161364 369133669 211792827 264756864 44574750 490991630 723545074 410480532 380856216 887198121 327477074 241851826 554710238 473811356 150525163 122562804 15629223 936879282 978750465 559236021 335464910 701872915 129403305 581480730 129191633 737780754 874075619 88927701 6071256 743360510 481134019 986722737 553661665 199056857 596006219 643449302 807072926 842126019 103179759 789502487 650073641 307211007 726610470 563292384 876706180 557698536 90595069 648391251 47055767 248419128 265442625 818807360 170164919 811415679 54678511 148447464 695965818 934304406 562172653 926581830 32058848 970413212 152339209 363972991 635217343 871872996 892750476 526495442 248701321 422969164 241730666 838471143 358375148 848879429 502680092 376003958 408124912 474607714 828696965 544967448 993500589 492836243 911231063 617776631 169177213 902482595 108076992 393559263 65385844 683369711 858391501 682268256 310498134 558361942 331693608 819657539 329349472 647700170 768400976 777302372 150232594 343274566 235566913 737179711 87317243 88695571 385441022 705758821 566756920 182524679 861531529 161587250 262811962 823438513 722241635 728147151 268575605 927144435 79954211 525881655 286971491 123428531 183789822 842752208 44036499 541916218 504744407 999653048 12999061 869610073 140882744 403046753 653719456 4897859 616425613 745802882 719637575 289438587 754694264 584425436 288660464 564950110 18091991 584912518 566291375 67797113 422463162 270146260 86041521 295045239 886821927 661581078 273384602 725542817 931883953 968841474 339443935 852519042 936043091 637490723 157509747 449417987 963787256 509521490 379118173 900984376 179517655 868009065 329378063 286475652 728591886 560754546 64320664 455041069 826877761 291004024 104205601 359787067 144287531 811802510 386392704 454960224 703211678 545453260 905942408 437125465 730606009 162150778 297190619 872290426 104677659 731579355 65714239 450877961 211881834 601170904 177564718 229419180 707995867 174873969 363758691 797622079 219845935 10186750 828072810 651103436 104336836 879148839 246130059 609055940 579574058 983514450 794275927 364913486 80378004 128425079 565333200 708281932 406371699 743885107 705315063 329905755 698530261 997615369 360253451 407815609 488623357 342121337 820720072 657940011 987216761 118825836 878768112 946314845 600802915 733062920 753116808 568140617 821448091 613510013 676724816 184707741 366246932 917774148 875638717 860511692 633033983 407023483 525761005 334659957 76177129 333122254 604124101 33217582 653442203 587240901 418879849 260284955 222460553 570666408 244058186 206810151 644994096 214052254 984079593 722335561 33358269 834505912 329846057 93630154 579610447 828470764 670513807 801663480 319068378 360631352 170778199 462962270 177126012 630983501 952350985 251907714 529562469 922843278 503323255 733702568 554345967 48469987 703902076 928707061 875151111 952317897 698619186 178696007 72286205 731153439 423681617 72968831 939273331 115769431 623994398 433286246 268405419 627504961 233249460 99606970 317151276 283748858 530449808 231823209 867594479 79904309 177997183 749725425 664141274 791131552 951352748 43052888 490330873 853599970 117504505 982242438 431099063 363536958 919941863 298232810 286641843 307507982 66163933 435818817 618795917 32174469 820155715 615043291 943368625 692784745 252925501 797212083 286257727 82616329 65466777 717219073 707090926 30969745 830781978 651304369 717978663 560905654 924102915 52216720 253854752 403222489 293616019 337198525 219495748 485270959 551016311 246570481 519738297 809913874 359604679 903014011 128262265 542000469 700920318 651298897 579382502 532250035 231791098 185116400 650500584 72441678 424176826 745708249 258427446 730009090 350251530 376323318 321851451 525494087 211059255 700418637 48094593 891150771 300010821 253261815 854186674 665642821 244424209 530143085 217205174 329574779 236729112 183421577 659091564 22947970 198350756 991446188 888086904 313680785 714433906 63610251 463040590 500836081 279137625 383142948 544959443 658681240 851543596 753858775 569262180 814972230 794195521 969368260 940861068 976403879 467354985 97463875 228620470 9850174 623505485 973337283 210336061 428032032 737781792 65902528 13595629 641389869 291721962 34961231 610595951 720570768 918791698 582865956 88087206 151404150 460785694 386752013 884525086 127283366 742400283 254981274 36023910 159343764 632736739 403258433 578060689 592031306 323872518 883889761 732475778 324658278 57984150 85713375 917087420 513492535 86470934 610127810 195650013 853855995 235240118 276127426 117723167 807827876 307012613 95536718 111582978 759773936 970415359 645951703 786765275 306727785 964914560 940999222 868998839 903538719 228398557 552845093 195409807 439409263 157956404 294356576 242010427 258325364 458695674 744058158 457046092 609461799 77513895 383861859 19488670 723202694 210251043 669356495 91386435 174723758 319293574 970142713 116360881 793056937 957314961 173240070 560574473 652582363 789322845 158111155 201791704 991055238 552920424 701070756 933598457 730406970 953400274 801937592 428448220 10775457 196612369 834311861 311521909 685841424 91922324 198322559 198339626 538687353 210183130 108471837 610331063 925431827 853561762 804844510 763500905 387991736 513240706 314081995 483837532 58332343 89938317 484719430 557114527 905132951 362426984 190698066 20514625 314829210 48251390 686941078 546008787 957427367 430391532 814804494 772314757 570587302 8691097 707005357 391615899 327920596 33109954 240458629 581889595 423730108 113299483 740969161 991474389 19793338 36131700 925465668 224579942 229306612 119101408 190748179 648146320 719716014 505896398 493286882 211615528 910906047 192455736 725343253 775136807 679274770 336430462 415053604 325133201 943012861 916435488 841998835 827327775 149031893 681294731 935948987 35699684 474990579 635885121 397161904 966383088 154884428 693595795 734918728 804459182 46497756 219043223 588546930 419345368 994474460 357577451 65959258 631535120 123536997 89532941 802065494 730108400 733186137 377731881 290780879 389766801 976596098 215303972 323507313 936667377 686757987 488008280 438159759 19664613 119225293 540629738 642121737 188283816 81274119 219801622 619280402 142224064 974253087 234105102 442355788 910157933 745520870 121286080 58060388 711809065 388404983 466999215 603401012 758732343 712710186 737773665 74866511 930372231 678779797 273831893 907781408 812871662 284058902 394074804 267891761 726310793 55778155 987615928 569023867 52738087 751285238 807593144 921532622 538537507 83955445 326085964 827365906 711444790 571440529 931667376 326562705 205499074 781844465 75474797 150359096 908588151 986759048 120910328 510595081 214854967 428361702 970033749 973115631 444186223 974543538 842159736 19548939 243350071 180042152 216978417 14211284 628554960 254576547 470948462 718774037 199584862 299227547 478161862 394288384 305657869 49702503 126159908 177706262 330022763 788580548 130350005 507978455 415258374 66014580 408881011 536862991 649723026 479096148 617630263 389315965 385439455 420187553 627326533 170167680 31027404 937986609 689975115 626811453 44912783 611247902 828963139 621756715 70434045 256521581 987408271 915299543 661524795 658848835 722516602 990568209 700396201 41003638 333877196 611788455 80941899 597055566 671865071 417449522 741353680 682864683 435011203 687658845 29684301 249551845 544703226 277039314 36898896 80545334 1397896 506799871 694258004 809309055 561587591 51097613 634586397 838378262 372255553 32356080 997533710 382784497 86192677 339859116 691779838 48085444 65256909 975821080 730671480 94611089 996799233 276723976 402080481 923927781 706685226 391402515 750004797 819170957 844465311 741662890 762022398 466158355 37250139 897764505 508643772 506170384 55386729 733079966 402714524 998064815 849273207 331690224 369978312 832083554 690301161 992826829 222139489 94231916 983087569 264695459 470002683 181340213 433899822 192414638 773210420 455048352 705360432 91769498 409825569 763123644 86858391 840552192 497040398 807009402 934169637 616653863 460904561 185529376 400137994 49856246 880476597 685088341 800017312 224302596 575852561 767103871 608197630 317473154 726679517 448113600 780614098 378532755 880455996 743713933 895817906 56743919 765535180 627100395 685108577 395989545 411097649 679804817 156168448 522545607 406126532 396761555 32315810 17610176 844859487 898703809 533409814 651565365 551839759 228342577 308579041 44416260 420131243 147363569 970267829 739075635 725420188 966516329 959441813 581865115 781929130 184168159 367061815 100902159 986476677 238852535 943257627 39222793 191523552 858222013 740212361 552750953 585994191 381947991 346032261 479035165 916750303 987744201 534791816 83388441 820521273 440140730 189442214 816669722 42792146 940505229 292970357 638767502 375936764 728094021 408009350 194740993 749111374 974021426 668613611 570449566 225582804 80896692 662078109 229453605 482618249 664300572 200604637 550984428 575434359 653539270 56557695 793414554 855261715 566885579 609526454 692292409 838598929 559534026 264970536 674009773 275677246 374276163 916035137 257958312 992485890 291478492 932412974 249236672 411726351 957702864 552693473 688242947 7609129 692234689 91923263 399901944 623867212 161816206 298546188 871873208 964695675 850625474 186826919 223323157 429689590 391131702 920542962 282124091 89871419 127717178 82794826 765709170 836191860 740372206 223371977 482010313 362138580 526692384 678992521 180391982 524235904 193103522 265669561 779445484 611255445 126612064 515213043 613805675 928012766 848364586 762907639 641222747 753635235 621598348 166682228 569212142 463773846 61613770 284445472 347814604 369472584 877058547 285257590 147376381 124043570 114388697 437261576 466383660 794033706 597971821 158961043 531020332 109362158 329314681 137640648 765225408 398480937 4793083 643452582 374892307 611683806 165845445 732464056 904717548 279875153 152522776 356037309 765564234 86947379 683582276 614394483 239125689 618086473 483834329 562899367 568677729 459243049 763393706 63193527 937043887 873141549 809226146 286494359 206733282 795171470 435779768 658338977 673334985 877363695 821922139 572104441 176997909 962280005 524407862 409066457 931728252 929298169 587603224 453064000 780537051 93820457 558643050 612760901 106883423 331429347 971754726 892522537 551906017 918617469 832362808 339574867 440402248 44608257 726411254 164683574 546101537 919005296 895325506 943488400 373481127 476532412 322887489 612573745 474112068 342051318 537692959 619767957 320086532 504115872 279738129 718380365 752716631 508296954 345841625 676512991 18797841 268528941 181407354 358005275 551107673 31294356 405490907 608472760 711211372 580063994 664647241 990382265 474613731 691638177 680795400 553531871 261015959 529759397 117052841 507287143 733884695 71226182 637493313 194522328 937877518 87950288 660061721 211496505 500427388 654886507 102892412 927539400 356252656 79656149 45131811 19758516 970893712 342231010 472800819 392494305 853488367 918374285 99305162 184579068 253577777 223526891 220276642 96986423 527822715 6272891 403340942 602116424 610469263 541962123 251979187 819535618 841563849 678572511 305225848 590372932 660422905 336069891 673960859 974197970 922612492 90691257 728323725 282626280 240604752 666678961 329867083 493638143 479374009 43239990 954789057 339936133 673364112 657624131 509202735 330760562 508489705 932040812 246735939 64263344 850787003 604875736 71185917 657772194 927051267 297305365 293023601 516294802 505682313 888326150 25803869 544228584 894034532 47082353 849618717 157806278 762100361 477224614 318163900 405857706 783515787 360740535 560458351 655038376 906757239 152062231 317413380 433721780 96940585 548893610 630041644 624137887 420119584 811703114 789183414 933945405 765813870 962037993 27261465 670486223 803924702 999054879 919601595 348774085 228978410 635741418 90633577 351348413 503708926 315510266 716300793 416904340 468387170 208390987 739090575 565044106 253700657 990334213 293391153 157009668 492738760 713778434 109375391 232864636 603664 108286721 759740432 540777079 923809172 653548385 600053077 424587736 132302725 828458454 536435234 290960141 899745044 846701197 988091774 313728662 566928522 384904590 591455663 863542782 439333699 104079671 663710317 510374778 606406176 316539959 409792460 898553206 4362028 173399308 76010821 513772396 459573950 54643919 134840461 905509054 723723777 287021343 934177195 59340035 610478488 638756527 474593334 663535070 518429505 548189955 340103719 789767592 457897287 244195683 218772353 67312188 505415254 144827517 324079053 440740047 706400760 39538320 716152590 740858243 938188577 1002274820 975392152 217515633 337630144 310015432 631549721 805784049 600198942 779708462 445009902 458017096 437741801 792247361 873362016 724313393 158116355 640157913 624758664 538667704 107197276 687103663 479821223 175239245 190692993 367504646 221339855 54090529 242769898 966700283 635694746 590350836 922833001 4670344 336560461 749797526 260732618 528823207 263044726 257158611 411562737 561378905 154257596 945985225 646017983 280305705 491328548 878369639 884251649 626004916 589143379 438171323 144288535 689102562 427607750 129297157 911686377 455051785 343866934 793129029 71283812 121638256 532300890 370633818 288657386 617000548 127044490 538870582 891157794 345744559 551137113 198133659 459694042 750464539 706696069 281624953 871241429 426592669 130240385 48837680 886609968 66696065 17436402 267711245 695496547 130515390 830242059 591561675 184864862 319404520 128496666 439545220 578095235 203465457 388241967 264405359 450258955 682370425 980145534 488081804 168363146 870005795 489887907 968358051 424369861 988628277 57182472 786853825 172368162 476826223 330553832 473127846 421299199 856720933 175736147 565887184 252162167 918650844 685548475 322732971 450628094 606459482 530077253 905139921 303057279 485046696 96383626 330102406 91966306 490997505 661594885 924566383 723660993 939440723 362307604 423406886 223488649 451984337 671950060 409901118 252905789 714020586 532719586 886822756 776043468 240804365 300492347 156025548 914470793 403362416 751450825 173833795 219361240 428934300 244988340 801960338 109945233 479342477 151144318 473318998 307599545 18766938 283871745 766973855 98623711 534000797 817869550 369482420 615115423 441815005 157886342 387827500 430249004 21392847 353450295 53588431 141266198 278801989 566259656 603682510 519889593 336055968 170528066 609949007 31059958 669097090 730963737 883697875 880912244 216664837 229933895 598701800 897398500 525432307 78606226 712441225 789727219 289993355 316495180 361030044 374254869 24875332 31064920 398311582 951888802 820442294 108768511 662754187 962507208 504589140 202184117 654970641 824109374 489971135 29786468 672978234 716417475 767268825 3363018 262707956 761367904 330626193 369649588 190333365 326436496 830918437 867397692 230984334 998247268 220729173 300427399 554800958 118449588 835154924 963344055 378578273 173612937 755610511 589098367 1000674159 497810140 19789113 504296901 863998120 485220840 770609018 786201076 184516866 911114252 881540020 183166114 893421746 122122515 874343803 271805329 426613263 801789742 507221474 623426643 190215884 694945230 32199428 826644985 3216216 779294444 552706107 333627049 454419208 226266437 783889509 181086943 998644440 222814027 77672194 56432429 809407204 319539866 803195520 737980383 768055372 470326445 48965212 139825276 324837309 208865652 18362232 16926452 895350767 841170083 980597165 530322880 713858851 643218006 292229611 763845873 869761652 285362355 25576386 172678892 136976265 564548069 583915446 5003939 443668505 863720372 370329081 948673115 724184370 420063612 573562754 487003379 50600557 631149229 411308429 983754240 268404711 433931771 19684499 906249558 663622491 810963912 322876021 596121524 506924181 988386365 43062704 130618641 766358311 930554585 478416064 496463293 287149072 234535142 123966319 383060324 745656532 561169263 987900343 493017316 441305269 938213626 922359112 630596982 718106011 617931519 521298004 763968319 359389068 563763825 21234562 987939125 646856786 660582152 883941071 335916696 507400796 260573898 395837338 166919567 722966297 957876470 111272958 714849262 692307340 975543239 79073609 861845143 538473010 994257768 950372932 428944505 981829161 31992182 687406172 385804032 863769016 956746146 377812531 232025217 345640020 680854290 337287661 685924302 10957559 924755029 520945785 870117304 481767569 314635524 265778406 875486188 143104946 789864513 257254027 969616727 251336066 497409018 60566144 365454814 967516966 472647420 405589882 960661155 988398214 33058039 365745739 649204949 189906951 595691284 284668678 705889289 800142751 506158594 180952632 863217578 161405080 7907731 606093082 845441055 37487031 821715309 373076750 788421191 935340765 379046585 660812627 26697383 832702909 5576376 313618231 331557089 483260142 311305285 627756234 825617929 439324744 88462351 161176866 896629124 853580618 186770863 287823533 639573038 434945900 384944805 64383138 642667573 724470082 372245747 739697792 647666239 591229136 711327445 635154518 492522492 429380426 139097067 794343241 233937434 148036516 168858316 839792839 9605127 117627092 44876561 429873015 188808399 926973643 333569655 613621964 713635763 338512409 845960164 576698330 838592191 937084707 201207611 687065611 56622772 284362548 360559266 238372375 326201239 505273880 242191993 43574557 3400386 885922270 813183611 888386689 439301069 509054325 418876529 830993500 831310646 594405110 641017548 58912338 673336327 255894870 990325180 158988291 40236038 768527784 805674455 16612962 442524218 276980423 949395648 585082136 194852548 391190606 46767565 724566872 889444482 90611506 161776410 887022899 31600070 158602051 193862331 70959209 270404518 813205365 259020279 984946897 369885881 850459233 243665195 842013151 495725483 924808586 15571923 763121369 656673506 724898861 981965128 466960920 284253253 303020442 614518933 138651519 884305160 418487110 469216187 591830755 141526243 420854726 490302579 409008201 492702857 857912098 461964123 474047397 362158141 826765771 963632390 660957495 303268348 739647230 896432198 606096156 80484293 387293173 598992390 771082424 375496625 348860697 615449439 347843725 47438954 748654220 501729012 88635358 232110231 871344145 551600150 602224280 595549063 674916498 717561063 235793895 653285450 612236881 567098270 915143689 44720889 790449497 408752369 782306153 670909706 267177800 24099815 632061257 636916693 110430765 408347545 409350457 462259925 409583449 278106854 895431148 363847906 726798343 130192791 247006178 104598105 562648581 847914476 155830909 502484913 431300484 777888742 249931374 668615020 840282586 988676367 406818236 109746443 567482574 810709250 610594883 160647731 276928892 272660917 428116603 564664683 279930795 11958106 228534337 490208538 214290257 346541837 622436020 471464174 285223294 991355576 507520166 979274035 437700371 262667568 679964499 830009894 150007030 375021332 788748466 368481842 515602321 270414841 692776124 849146729 324299567 545627025 295905954 733124748 754469667 332429645 335745723 491792962 63594269 42700363 699722955 747922195 245408060 308578679 817979854 848661644 759769615 115960851 773617357 664830142 398311864 202772004 939412020 721970789 526323435 23349166 134759567 478857713 552247327 871769367 974164514 719506102 604670560 589034388 447590906 612376803 606675331 425392561 978393250 655576526 889356974 812989052 218385763 869785120 499097888 750522743 338582747 610255634 540898484 153488233 794862400 425552452 631770030 313500807 383267931 344719861 396603877 451042576 63004956 709198378 924115447 516675738 594504045 552725021 304290108 135865843 194973464 463551460 942700406 536753004 576346417 123818244 964850709 266726612 852537364 216173391 951813786 758342953 568194472 154401067 860142823 99986427 15803736 670758001 301168199 529550342 860238415 367155063 577145099 556712722 702306087 541075772 974275100 259517882 508578026 343528423 930877172 115441175 584351630 762853337 346164878 572733662 455743067 226618583 497414484 233532346 251033233 188643152 973836476 846623962 19413486 134858642 634027535 918981204 42004086 232273623 334053754 361051825 868897916 728381684 893187155 489839973 934234960 336849801 337063607 945392553 628193857 162485091 994135419 679743367 667468720 892548653 560444108 986851063 805109195 174631252 853963563 355510879 646077693 255766756 632908157 231307585 512213643 559165346 795666685 846316103 600268541 787227122 232945779 790733628 948292682 138367637 125135322 635216371 691959486 59172153 267331320 364267579 979654980 104891454 709982678 163822693 736152684 335543209 52681899 14891081 502220114 500545358 66217804 158186635 567463155 982820767 107882213 549722677 575042381 71311681 234519330 788626909 860156800 797871001 895758907 191441854 903184901 989285416 18438379 443492644 123024487 144759978 180434540 681156277 30201636 564842270 909560219 84297395 171684146 940345849 697692351 496200890 185484130 972365128 746833278 818803366 420163299 902661388 859300319 374864083 612688920 896615095 57239176 908811966 486236844 514435215 858095054 947718022 794956167 255726454 529217227 597662104 893481604 516850188 272680977 776965311 365608654 8003185 314253821 993932782 824048764 87573769 514397871 759813227 77436314 741301159 20528082 552722756 492589122 414518747 906283273 144731488 259715433 454968597 3758141 821055691 595015002 983273972 688885990 5371759 187343700 246770432 489418546 986745631 801369568 812329213 741019447 973754309 679051275 397648487 852664790 296233686 76722919 70451595 872808448 659580715 671606961 229705666 122037309 926521632 880607569 125686769 458459082 451093885 385297324 52583429 892252590 221132315 721874854 1000275538 53921576 834164314 337545431 340548284 352600163 442903256 244525800 798363467 883523666 721687277 792912574 396067846 166872477 148529374 547392930 559517580 863975131 149057113 741846835 232302662 420000128 285737999 964848643 585949031 55203598 460971700 460698600 723134272 676981352 955057348 793867655 322260279 357627773 7390797 985647821 41308705 988864939 649055714 395828730 290689910 959261367 513701246 87922434 97333247 696101558 942713654 548207297 303128800 566416152 836920616 687429923 728392605 34540631 38789767 992399249 692300899 103909900 479520274 906823287 934602787 319717751 118823890 464864651 254338117 258888432 174413758 7135144 834866610 85405595 854080847 735750056 115498884 718784860 791501885 694580285 91538318 578364325 239182966 863963264 123067603 719535140 792023804 700226993 908011632 833359548 410684195 675264307 150777060 113304191 328827658 351326169 350033256 338062970 794324862 731484891 450598461 100317192 658837936 530664932 227977876 888725150 501872843 54241793 18673279 66825588 996514868 41050350 855126830 370336402 713702485 376971307 631649337 468619760 310153354 418113090 631897541 993678859 672748049 378410052 919569281 176237768 723406518 758230537 836261068 795303048 939091566 203014343 684657039 601313615 125830907 18209698 776356652 240824745 305823607 505512051 352998146 841340239 132093570 7075268 684949208 336313192 939579227 528408238 230832755 686307745 201854847 169273339 419274897 48654712 594495115 799166112 592805702 230397023 203057707 982513089 449527775 485005387 130268307 93718487 647739485 549360637 874080834 810100777 604829535 513977630 902950812 465626125 241961621 202851140 31139574 77388543 138795317 473546905 743375928 318718351 230241692 432143247 932381736 323899967 782871365 66173701 766031411 496923476 235777669 545677587 622129277 550559650 617799668 999790797 613239824 206705026 492737110 985164047 731978641 848372908 966638017 618248503 36033803 765685007 797600686 389046355 327501107 412986478 527871767 641187339 318427991 20999626 914224218 452628418 647362236 386042791 467067575 512090184 962952596 857880350 276206985 965445270 69745586 114732088 181504293 875859607 53882860 726548601 275165566 207252760 961873633 675236569 665401290 490799836 885479233 560748491 577498276 403820106 414793083 352894488 205901447 434666071 182809492 752035880 512000080 910985873 16649687 50342486 501358914 890418726 139156362 870887566 338426142 956831588 752284625 956312825 521459727 897810699 892328405 243078282 913877433 266146832 211165981 187504050 354577480 848227959 835708876 524790743 595925950 738810534 63022321 1000387646 428427590 188681886 363962615 812850894 480642819 925564001 156559997 947721394 116693419 612245780 619032606 852646092 699127315 538898099 782944990 385373412 488136018 78629828 640189797 196940745 99538437 82964488 695027239 193087219 224794134 948239522 233092444 856707851 178354573 349650736 943245310 913758585 726075117 3575911 356667912 342784452 681264811 313081150 819290194 249711350 384882835 263518184 585753035 182626364 722416232 960249612 700714459 9921028 779541552 24561624 537806845 593511440 587031460 582085171 596677841 331913744 520637153 126919990 556279664 155739508 617387718 503400414 65237658 894665212 264348907 148651982 187009691 284435691 219151457 968315263 505512749 773701990 160455541 478225318 195124173 471624978 648495557 981855901 306946702 602236986 436270593 577945319 60954408 540755549 53174664 690890202 965797101 697054311 227352579 96356387 875704733 242496590 734705328 846838355 157635093 508045164 938268443 594476295 982020690 338408869 723285621 217434445 435067356 300601081 493117886 982500024 583791904 482174165 689817912 114474645 727003757 537377712 100528355 660972972 198646201 839673228 425424281 537297759 442742909 79789150 680666166 498984976 557476102 894218333 65813977 83025207 674426646 319365991 549987496 920402186 143769176 387425916 146998181 224033474 660348221 632654502 286415263 583614405 823001586 670094001 999107519 610715902 303973612 429047775 405382840 647045595 4291180 888864750 608621552 319873900 433398255 703235794 56416915 743485576 371150438 52730902 899284808 786664711 755677392 474903972 180063095 470242198 473560034 209364339 759641386 140597713 582057154 384498573 885612782 699617933 396138717 761221479 117642887 705376226 968175577 981143218 893747791 777721948 19037015 116910412 729280030 668344918 170522921 976503067 13036009 118614851 199724876 525887251 144844345 825387049 683548800 326515825 859227577 144487869 375361055 857770505 943153770 916875036 187157204 888393940 185122949 75725004 42563789 89947783 315064886 67653118 902958081 950327656 513640310 503134684 431637877 428000348 746252470 148577717 205993142 503988136 175608116 616723220 117138490 621766238 158827819 4724655 308999010 97312599 764139442 440264730 427829767 264254244 722661838 753650169 737724205 213319945 847951185 645117120 841454859 343185071 986482137 224237675 616926430 948636331 691501607 749295469 707268316 968639774 19125995 785516942 193858677 224424384 708771302 407874532 129214205 719873164 145504121 464213251 561804003 473732592 922338464 286135245 199925765 920646313 969691763 905410887 880246693 932769756 773203770 167947435 705258140 757566500 212322337 174918077 186637629 566034154 16079143 452369859 496994173 571136614 635296233 40362304 755265613 931097254 185447771 67762776 331916673 462136986 549377131 63932494 307288164 417252473 533550441 754246836 207417231 487189584 537311448 337127094 593563938 516674352 165775335 722503744 802023110 191257778 373696368 856020489 69281250 861749800 665350399 504942331 965675432 412457953 435268849 73684765 298208488 480476582 121625379 331874236 787876580 123219159 309404343 860545153 685083902 135301962 186631379 124621141 92678716 969141297 555284586 501586326 435121931 897959754 615990210 601497629 679400408 812911148 673291726 810653236 577705762 427020552 751784349 485873043 773400339 327083275 142739065 566275874 196341902 46440781 444206957 900296444 485669057 756818980 546200556 825620860 821533106 978050484 988744730 509320855 713923578 92337922 727518014 751701060 462059487 277150719 634055232 831678047 622843453 452489455 202288809 793004144 214620911 251243852 730113416 967360653 535714352 110959976 933952915 117386643 465111579 358904506 327839356 601330444 523980943 953175705 508533308 242650610 539829780 209395823 904685584 344657774 870614763 734157562 448017420 375203503 408796997 95676195 435389492 212582461 548047266 932965663 299667012 285805412 622784370 358766349 791005133 479366648 629493277 381369659 580005661 992162269 533105844 617425404 518624712 269961381 147100570 416829016 445196109 860175903 912916169 908506583 703734478 591145471 276356193 409337251 593948191 155698770 706530769 327206763 91049401 407958035 88611341 296745461 287490100 983302935 265490009 501388205 484953553 286567773 901659947 866065584 41397346 396766696 395073994 870571813 991667000 380946071 225087907 85438262 71213760 245249547 186078615 707596488 986267628 378069448 350287038 603494096 418602099 182587023 673560308 412373899 65349408 484506729 781272298 683714760 960612868 67189627 768424632 889102466 301394202 352149575 517839012 485429265 219641069 452454872 173923015 961656581 99311816 376564549 83093372 436390503 86508459 899299026 351528340 999750169 452045970 759763599 84080785 93551124 407478468 759475376 213879855 49790832 718699440 505595757 867022043 349416446 276849762 393827981 115534238 628669155 139700588 381063918 317743241 849466420 355989341 977744541 532188743 431409569 403741964 903008144 840332363 589282809 322180867 563187611 769569797 167792730 286315932 708873015 455014752 725472811 791720832 778883608 848031195 279896223 34957431 646362658 877534292 304062957 26286282 992209464 678330182 836923174 278706647 807456781 192471996 331945519 189528305 275042697 732798014 974741622 339491480 234014122 424765378 475120597 251866717 47716197 251697530 712639563 953310677 326921599 123268156 194137023 247705857 971663626 732802926 1001409794 538757229 345620291 321848387 571381849 521221800 392996823 404701989 159084652 293928300 196195807 946230386 430275913 501350779 853065440 950430676 665469807 386083684 566845047 29593241 985250528 152363165 65261599 875900222 404959408 696947653 16943817 591696696 454862195 206816959 440393796 10515071 633176794 19022850 938857629 223630394 205709686 636803058 851453955 874618319 865051652 500482155 358833526 864507603 712872592 253320374 206812300 442190566 410285490 968227017 440933123 411022277 335543220 271376575 620060550 565103164 192815973 304027443 579550378 966486602 984006754 946186900 627072094 723789094 185108414 38952341 846333042 963574999 646300544 757048531 867338647 82651411 548413062 970341119 273344956 987673571 199206286 752815656 47495617 641711786 947546853 668038521 68284612 394421705 35280606 472507821 461644418 971395748 64717909 625965416 787205310 24383404 327265208 256213828 863668752 682694736 649860842 648116311 181602707 887006388 867349390 617816843 339144243 704442176 402275794 415655290 624441690 458081004 318773807 560067028 630761817 738565538 642414819 891814738 231697096 417218694 814675956 43290330 800986755 837466064 552542592 21197240 474312866 549331046 377425967 103055777 472510371 300458228 642496797 129297697 640696975 814186579 971626755 347959971 258629308 377099604 403196940 360156855 306990135 653268711 107986873 665638920 633883506 658136073 536421662 613947584 571209863 882761182 555829603 6267920 877127407 624518419 960878627 977135427 561986267 259877359 921990497 14755607 129504110 289153977 179716998 422340112 494257855 153081846 599203027 202425088 732909570 93813052 604161335 510787520 458600727 315609974 896485039 353792031 408306119 554630954 448993416 379709980 560655689 50123009 504899901 234824350 146204217 943095912 251215482 989301207 674675373 909805174 614234050 371387855 6515737 232508879 875307328 876039482 155438357 909682455 247756551 215368297 626131132 390550118 420161083 440605522 851003215 862960782 611009068 927031056 959655488 516495809 283328575 280826054 800850420 919531776 984211588 210518779 849622870 229058638 638765432 779205209 707584536 148892572 715511919 855264974 209466713 878080760 716489650 179552901 774795176 958933400 147076080 434780225 409369251 141807833 163649606 968188953 155835027 848934819 922758572 802209583 49674989 873686524 523781722 173287829 102122353 443366261 196540400 703305519 117648358 45994085 941535652 499512852 659624934 757790415 813942884 913018550 123981656 913424240 1457769 329551801 942052135 848195952 444708854 925719624 343591758 601700848 911951867 659208884 656480601 530093432 964286599 302796583 33584787 576883148 964948252 410283642 418098147 869810295 175661917 829794655 389200295 246099545 769509565 77737484 554047962 414338636 305449968 186763836 549373033 769564916 807975404 727592036 730511757 503612338 583088306 338809214 164351718 502340526 338431454 297450405 774992813 102201646 1000630538 33830402 954194032 995226790 790365061 899662086 464611607 968595654 197167208 404181272 84190803 367164646 381059608 109983559 737099023 773556897 190378358 680131674 369383584 108774879 680643753 981251574 226779606 896315778 303040287 302741739 733295904 40829758 825375605 915848915 586375070 485959674 483300003 437551422 834914597 152574866 563490913 316358782 88297606 684874682 618732206 156012388 299526741 831990953 854449642 726595771 485485423 97059351 80212466 250082040 129530806 767029687 953037794 942253696 977200049 919942671 812171360 892851245 64863719 741384008 396207969 655461260 71332951 215461653 443481779 765843703 746431359 457594733 23804358 348696846 438750842 990999471 878928294 285789860 488946103 548792816 507242994 293352262 285339517 29996886 964553961 829330132 416616016 465627645 913915422 570842065 326762829 824309598 904241697 895327558 108653815 759797389 124109894 57181470 677146165 597253185 669287028 263187544 619870238 927736023 34826435 33840832 277098610 811066815 874190979 102823035 291782209 648358512 902752073 15502273 765260259 895919450 398794293 536455354 981318516 607551565 472787365 67576433 4002494 868954133 117180401 227903697 224753795 982781407 604284969 412057256 798649032 710072278 663749618 108402209 714019646 236231929 686170476 969282159 566389642 999384585 277714786 508163717 337349535 134685547 821473013 9422624 771952844 779924961 757869084 632293198 929958289 571218408 438481385 627168181 489670989 785899951 743853262 326056256 676202480 715324499 626020739 30262287 207077869 241514306 836853676 920096821 692559934 911314696 256056250 78733730 563393328 958908743 97964196 191014603 216613830 675469675 334360713 971132473 472626077 72061796 248508694 123383699 290015654 950412632 353758546 112988047 855387033 355270395 464083070 11776683 363101261 559598834 447242574 248485746 652607179 617190207 669465951 883175935 420114635 521171760 790970909 153005384 173720468 929086671 932105862 233173468 243736890 450125341 238214163 927743362 698121163 867387282 963069475 470287609 418005531 642685272 460141574 605538988 716681061 440722970 777412737 856765532 851747171 629127024 244318173 10822738 682158230 78128236 762773988 117273536 680398542 655979238 430910955 366424360 198121389 218340556 705859902 107637200 270452521 882025291 153919459 164334367 228943815 592834874 869780663 966154242 976524809 928987791 268468852 813626122 481475599 293023716 278663747 259785768 871521889 405849890 282052022 72026591 78524599 101717698 147774267 22573028 906854714 645791307 182398311 652166623 393364274 942531713 59640673 55348653 26892970 449264622 476291998 614746565 629945166 768356393 909409286 816776647 823000013 829116933 509137720 826674911 493706966 355425401 204062121 897047775 109643426 671759616 268285003 384714442 861936245 88162121 452706213 26900778 250467370 252275536 529175003 429113857 666721860 839361577 976254198 16916391 776160607 73493088 782128915 647062777 661705360 841752236 828131927 898385789 593069827 324089889 435061192 996772735 344264151 843603257 760140931 66366934 944613952 621225649 781740978 633892688 244614863 694024002 582728251 35306465 477010004 961602159 976398182 146004554 433500632 256423489 523847207 253744570 438289789 39665603 939763478 398613320 704316704 839056578 726737679 331327159 356382544 658300220 687048493 325251308 427042632 970804106 11883231 945870397 84831909 522022171 726362986 701965491 14002299 913924728 781293480 325868797 4558396 689375390 962632554 873072428 691635758 565624364 823582727 912880357 933682121 482012896 76678186 618133189 748511603 199137215 537014074 213687366 216590736 299844417 837542019 892399107 748415162 771820801 799970041 873842044 850337736 211077076 669379632 991882341 298386145 840646220 402187215 949609011 982985536 976031604 755009265 753584472 711746584 182062824 439144787 931610794 309788602 50614721 590818261 916623966 237602796 843477239 502800184 637678153 814889719 704339024 852274410 75011201 27036206 769118453 205291639 407588567 385719450 744302404 752766415 490538983 602946931 587101107 912274140 253959422 448754325 866202617 830908067 24868717 810329769 982379999 973755247 265629225 33261820 32313894 608575432 435806971 976758935 456311576 326963359 278898088 778784465 411262547 44567565 443258875 671318072 547994951 240671252 372871382 882949483 725111186 217938381 330534896 413936414 910174783 371135401 928441563 610920918 777542390 423463030 910486108 424490419 995831512 872278920 889350156 149485146 265563411 100778795 878219345 917483138 723896680 747797995 773983103 152086893 23917166 555029785 973779474 447258790 506867108 497918414 119392262 471646552 573561346 418014210 680216511 673732409 781714216 570384756 952298193 500120892 49432443 695608999 899195689 2010920 453056852 544626539 940781965 955114138 116521003 593906530 606815011 940673588 826428066 388692892 550514421 694139107 471896908 525957640 271364846 489814625 4143819 414154721 842265328 533380352 738312644 290726842 659111949 413950921 553025866 27837523 308894272 429845389 159385373 897664954 576134628 223140777 626565844 776931200 750068226 404581691 458040179 142095620 805961010 665468636 309664455 562990366 518585337 750428559 69021442 370202093 332731567 968993437 315839973 737904303 443285703 324071493 934298923 275490848 31874290 317293878 249921795 449136436 102863538 527133505 817983437 448054000 430536039 100640491 70253261 471562057 472357309 685063529 66460778 359564024 172922855 935481754 170059354 222980237 143923839 438461620 529126587 675226565 660562111 73007350 376827495 211384385 941366751 816223081 771063708 464724807 117332084 88175749 312704786 864299892 815093953 937486781 84454698 860561503 297451208 793553479 969696350 16696770 257342644 655347047 732370175 321785901 923187156 524903281 500811148 780575372 803531815 7294191 33721720 965284421 909805882 925326331 371800325 490597299 300789904 385927813 751071962 184031607 37334096 907099567 568866119 738830104 386560913 382618555 359470340 722329131 548212049 905881676 286841534 729960891 141416537 75660171 80086427 106465733 98000091 294474843 626676349 26747048 191928240 734124731 596154879 518571326 949303330 359857714 258097563 201400593 580221920 999071551 712395423 681683910 558183549 851876805 440709654 958553461 960325037 329245073 629767825 434459821 459513073 161363438 711716918 118247580 655832785 811391044 895216480 916393586 194027470 384059879 788736489 37213390 797559159 488963196 324730759 890128946 212178801 101147461 772222374 237002285 502303949 346666361 504384295 638014515 64746059 217911553 2062517 288737650 221984958 147635177 994794312 273470038 180536022 925596288 472495232 591656151 103859371 218257800 591207267 762652093 436406252 271350125 367515823 638451440 390300848 57227775 394613456 326733408 80383686 77238562 307925875 475846139 821910821 293354834 586129790 118332034 702911494 684477228 638080919 242438649 873795268 215059318 686937751 259685659 650249226 74495596 524388965 150164516 855094101 625141870 532372923 108821526 132901551 367861170 372398458 220445530 7202629 218376077 827761397 290816179 663906950 818930009 766244588 183281607 186752492 787857506 266867956 119601086 945134231 170557296 473286684 327863596 677744448 312664567 851004367 141542466 447825771 411122854 570127218 368864860 632874432 313878925 795433884 39079183 68980975 839016278 806422161 261649361 255055904 641932048 878620246 865628408 593928041 513580466 67499756 857740600 803916422 341865253 785013020 834419596 825498646 464550535 189005741 860735121 549468448 845947752 113259927 180544427 132670892 143779602 94039092 990236317 342110321 774261453 330225366 225027418 388870101 576975686 38323893 181550609 879066945 750802321 536772322 396036878 645578574 378816929 102101115 982211949 193079421 51421842 872825823 778920986 621013930 587977996 882773102 826237702 366178164 182530744 878648758 873420976 649266242 390515557 746033897 337480122 185240859 752168076 25106760 941095074 949100506 442279636 63880710 874229945 384048195 305545317 631880672 108759181 924075959 915342668 248260822 527518962 990731097 41718510 397851068 548242778 202450531 113467264 374609733 286152840 633227563 9573138 723080786 677134929 136404973 764509193 535709644 41339852 920441926 516056296 952146897 340570245 934067488 965216837 904810112 488093402 557613212 137433974 932719790 133271473 594959492 337393088 717980360 127545907 282777526 615503315 667690575 450859608 436808938 816222820 727796660 430529356 614977071 598727084 635308053 5008130 961935715 819137173 786198055 862194989 185803713 7914535 276647049 781568595 984233303 959744890 502328148 131614848 41371139 957869029 125013212 377286763 654403275 979075878 426176390 757645900 796391045 494506495 774014725 103285967 195022917 652749231 707458399 153031688 74624810 325499709 619424036 904275293 278286080 267466144 730344188 350834261 774481271 502697454 534110766 289984978 956655298 445371937 213901416 481693309 235193973 387498741 24656203 957661642 943271700 360313612 421681710 181987944 333234444 380427534 576736043 185419988 958537641 128335261 429598409 530180329 237279243 595851957 652850281 133444517 663458169 746102867 56564803 67095183 450120212 841093943 211460727 556080868 953258000 683240343 661190761 41359282 226673886 441218413 21856577 603841573 103118041 856908797 772850411 555755422 347858871 990408764 141663149 201124747 78185573 531229900 170383055 443289987 556348277 860857501 549243259 530126175 287609715 218901618 167748293 232975934 609083120 563192764 678025939 888273603 196903352 307769015 459666333 226118661 357156286 585315666 512977790 628261937 547663833 638834706 317159666 312098806 981962457 357366466 450008792 348772383 512849407 711778544 222410108 871419059 975629934 673201435 645033612 892647876 636191373 393927334 162397481 67465517 542887130 816062060 702607057 292476879 131204457 583071943 175067483 822675615 653269 679879457 649320043 533115801 720166372 380939958 762422049 754757769 562505173 787685392 753977658 57577370 207883927 709020366 611036230 43883793 482421882 602928900 61502556 12766028 518443418 401551815 706473099 118671946 394985540 307982981 212535635 801576507 247459822 827695102 172593180 159972422 772878440 408554565 315710118 169195607 186325732 417264962 532266949 205291953 144584051 43357192 852317631 832016912 605049484 180183713 94474094 92864495 407829201 534630800 387806294 523465625 528466497 888864958 852808521 494434619 760594822 583403047 862295453 523119239 781560600 218253148 724251090 660838146 286830535 385299652 192776994 714329824 159345055 320346472 166750887 952512315 890753984 821490572 410645963 606569983 532508068 745105375 89966481 46580291 546772587 367124786 675193204 555944427 765536967 508762933 259083154 361808383 755222659 216215511 139788088 192433691 420739387 180234653 631103375 630549400 71833071 363360126 860971227 224971372 266913203 302479747 168800007 189796284 905272436 109226898 282241101 89440301 599994255 889125962 921205386 557871310 151188194 355013226 331230663 43669546 993117693 797326202 729572337 193864918 529485376 7415954 683186514 705504426 713517963 943907119 707995292 424546237 948170882 505124963 43454925 622190976 383765649 503513049 594976951 624412856 815883909 691094682 406700814 719327552 220236491 543719303 516723698 447314406 761157604 616008734 198807322 685382871 906103218 692957654 495048745 579359769 667029728 454636565 681130059 242422241 292015093 670204896 158404390 721586926 840374669 542550020 686500095 750455745 7220868 488930178 655400519 668746173 337752726 812568517 332576722 846639270 718911688 885527277 924280174 463362951 22482323 958583463 927590912 704625573 793129346 189384803 734001415 54873678 432939342 908976455 572300972 678703603 708008878 960322807 33852504 119857410 585803248 218328054 551564785 864647863 553560096 593824517 522014773 752402999 223743720 968268999 886995485 752254123 943723742 888859614 59592340 321254300 82349468 781047991 480417539 910148157 415301176 811097766 341326931 598977111 621886733 3463584 584088289 679176290 209548268 161423480 872475455 848278237 590216926 992418146 235008096 929185301 837184114 246929242 892217065 474984158 94989459 88151315 518956181 441381934 568219184 334268372 840174756 378278485 117797082 464643944 855317497 91748959 802456700 284943624 773860498 420373546 993088191 234380555 717116346 822122437 866466050 99700814 491740243 45533349 500288732 739217519 945860575 211769175 751467087 944061885 576850307 561415341 680668918 632169756 62632979 622657900 542761933 200020508 704230771 293504651 574687568 146253910 831227438 673388566 768956632 424956234 497178604 563747285 614558188 724727409 605689407 399020253 397391017 525039517 334614101 419032786 767614950 540588489 942431545 85855029 954439753 644827875 608011099 325703979 515099670 942227287 400232565 925152406 321996708 378203423 883062922 958334993 116217166 365932690 136948266 399701925 225097595 597217116 61554715 143957158 195301315 137509795 222270636 879134482 827790793 200051398 407475159 744971185 420732816 455148775 348461084 657913786 429894119 329012346 31909830 179748980 868425732 345388193 982920569 738507352 147952458 317889802 175204474 658433147 55605281 528836523 59244390 568977026 865685249 960670137 392383855 714120946 717100169 241006553 83143132 143145417 756585737 686403428 620036154 809773887 411943636 991147452 597179600 397240980 395930587 1000399874 51847692 885373656 338880149 811893150 242088168 518436994 506455089 242635000 200508129 690390532 432305817 422499014 335629056 440929613 810522686 396023231 718375721 256166339 370850246 544907374 877333531 665010510 859720135 2078589 129142839 898767642 126700163 166612536 463241277 762105184 688269496 155958658 23237528 963137699 879137612 955515251 814725254 167991408 297639338 998961595 183419848 806620573 615610539 425207829 137139322 653010144 238005271 226603194 296209077 734142284 122395270 392719097 36890757 310476859 78467646 199017839 77026794 430558116 898932626 152261757 153428842 416977230 648682220 442106991 930712948 766250200 672984465 369928802 474817209 342413890 114079651 257699424 492833646 424727131 681513066 117904157 828603061 963075748 587007326 930222725 667279233 919789928 577058752 69291248 416596719 270246743 973072435 658742792 809741248 804595965 994398064 633045699 4999936 723453899 848004989 303941553 313603398 608465163 571751166 867714090 587956698 160362926 690435561 197752643 861629458 797208059 300837767 576037211 526397607 12254901 877783911 866147498 735424238 114783825 520801921 177236018 753490677 635773088 681918659 694588001 139217595 223680441 869729089 881782151 155766064 274351636 447654928 665889091 755390968 535172290 825778231 120300179 819895486 485132725 670409993 15239630 242329875 631763277 772581092 414333705 138648644 492708318 837060038 224205713 177220669 881349218 520903462 820412196 541355097 323060543 852140081 35930959 355462229 944270474 786928328 436486522 865501290 419420584 543443446 245530325 583540216 785543524 56155409 541717488 120426144 200357878 698793509 563892368 228644810 761027728 419779352 76079954 108920084 581078923 207420593 256300841 590011718 636631683 562405452 788133780 262907202 942576215 111349031 188608010 480849546 909366303 66360235 755818745 792440483 308260860 463015499 195172597 410535639 293560346 329206987 258930947 666684278 411985227 791263239 168877309 412995220 679169093 485127017 135092398 919516229 53479578 503750598 312486275 141804048 731385966 820991775 562918092 911197137 742152258 48585557 551679516 459204035 59825698 778214141 284814741 200233112 529561033 973652837 381284363 788134358 471422572 477967677 782598345 312351057 21369396 881084158 297483450 905285629 258183902 148989752 915020032 862466684 268353722 748398879 24683394 290234410 710166520 356000532 275661949 23566172 628814439 691473756 53160326 75306434 254410128 357685598 750604404 90239471 124655528 270459870 181165971 782541455 985761155 137164713 741737954 542966092 639726895 1001272103 241195474 222230417 493192547 530961604 739197892 229905548 575914310 426867074 319123222 990563310 48659039 358481051 113784820 950242190 274003777 3145582 925793910 380804868 390110194 563093665 650006177 551440991 796868796 993619386 512782177 193854150 201259499 945693576 552343422 14500963 420094360 650865009 536389714 81999187 206843920 394567413 29902868 987287871 187581177 419048987 164688761 776258167 194474609 816216549 932769141 29575279 407640052 839602221 796388753 125425394 139445245 232078271 774634746 597004688 812075055 240163294 429739938 369872634 232573161 229844598 401094723 163675756 169637797 672138394 87732882 759620152 136712281 803335790 777737289 306047992 297426889 387122588 348438967 918520198 512871609 842404398 338493017 61709105 204528966 273566316 734546679 280873722 176747839 615893612 726604125 945376159 931773124 608313879 541911420 815426339 886197692 713135706 939496800 430477888 963486973 152434985 412010756 778439157 168006816 514510727 598290236 940637107 828920246 703090209 327749353 103043403 503792535 128459866 32320905 187377154 560211956 68881047 730646968 982309053 468536285 376109368 507166298 905918284 469030099 386586419 218478950 558586800 885413320 561251699 898677686 697668896 410953009 704441854 776953499 407384965 411335736 819263361 489377306 471869140 591288484 745688667 201333141 368772355 688073302 503553096 146690271 861514490 55513502 40887534 297289535 610486139 14769413 330619860 917850038 740280574 577313856 687662716 829381685 929074609 318383433 939585450 126648329 859159840 190170101 32380041 145630084 766430825 67676350 225630798 175419572 273321404 116731799 592203308 487343525 590509260 702997958 941028036 344168784 270278502 331244103 715724252 890632846 903288062 585532503 219247917 794932251 959033252 385450909 805527353 870861431 127720602 18349920 387851176 316108774 768991920 27321431 864541306 74105064 217077243 839837596 707596266 363132953 996293315 704958849 423304419 911390993 584430409 352844325 336601453 18232388 232282527 653510847 640615286 908086467 995310997 788674098 351803298 834032284 138531047 81190351 170000273 197725436 358043963 119815024 294942527 247870587 41602340 192369507 475603914 336045249 318991468 492288910 174265932 660011243 472978040 858245698 797223766 991992111 485228811 596942787 621708965 739895270 365595497 490948967 332151830 354339417 342787387 328081167 435675819 106119875 347997124 42027445 449063445 726429561 755416304 89662173 211105164 381198103 630707645 778762773 868129596 483157405 894237070 317672305 639875469 251855262 601197625 765898722 803267547 130210660 579630946 104965301 650717854 367170315 893200977 607393274 277959896 4748047 230463128 208284159 574142115 363063361 969037410 99013001 801705857 369916110 608541349 806741994 59018313 792494600 911030399 627439482 3894444 671205934 680201045 300886483 423850858 788824021 322840638 169565498 965691224 601311460 771870652 28024674 469918723 765170272 108840974 670572310 965588076 295632990 328813932 100540796 505078051 480377796 462543122 177709075 981931406 832020644 762407882 798960639 52647338 585543162 676609839 845764086 346404703 72307950 383067074 98456989 39223428 170239189 465087014 678830277 407393062 429116595 164748160 217781927 248227389 973509105 310230089 689922169 397675486 289214985 336695464 458664993 269935911 989222247 473545596 576168899 800905476 216325552 349450304 359910688 421807905 348055998 773301951 338822711 686580103 780675951 228253362 130999225 749465232 21533915 270257386 547359772 548604896 279449258 231743221 129960778 267335328 287899515 783730229 891936736 919590023 733486474 80194887 320910367 739059357 355392346 621884085 781042401 131893183 358120358 556672535 629013902 96701253 892182463 923905466 52047893 672391854 727298291 530367212 524389769 198120894 524263844 731856943 104072050 870255426 724630289 213047051 41000696 278401847 254315180 496232565 281164516 143365542 763298023 73268416 155724694 462911278 280448800 314117477 577048047 445785868 99526378 36504142 791756136 103053227 151673457 403464443 387199631 927513914 40603393 603541202 952952790 568945056 101260395 540525941 667015788 811087722 610399070 926389027 450013352 944259585 354367851 963039607 105502434 241833087 564080655 634404669 216731933 775596491 433315912 360406413 218913504 570911308 375521421 967262154 5562147 667538367 284756745 854391780 1001227108 75309010 432904686 838968286 809739551 334063947 857661385 305192992 448671727 600807223 155128533 28866357 710473226 576744098 675443731 711784863 552725129 806154007 277186415 501552558 699806398 695419983 616331798 303628334 974700620 853750770 95980716 568993551 183683128 767907142 315814634 633386041 943333253 436494724 338573921 651068878 127578845 507193075 6216463 871738906 205617473 587771325 811007772 319876626 173266533 558213744 60285341 612376607 967032940 979693091 159738831 646257462 184943823 847921396 536827198 890101633 695119618 641663994 580586115 671607803 583520118 770911876 317979251 485682701 670845571 200149233 792212918 534692489 464525606 532373101 472510064 633767987 685924745 756989206 339446251 993930581 741585824 530719549 553871682 929522424 873233539 536010795 960239632 199287374 435494452 747123855 995339713 485194914 618905602 43928658 140789990 215765831 851936015 741199005 109803971 383668310 845125389 241513557 193128195 227453666 628351716 845098101 608474569 807847143 351122838 696360201 60223294 266590749 653344037 410764590 799973188 975878406 383041838 185093756 291202546 366635728 467040179 295880895 263521467 616820727 551345384 1328471 962150265 29898815 538624041 826739252 957369545 118835531 260217234 378581813 504923857 342243342 756422175 333914024 397748550 161704003 144230356 769181627 171052967 769130849 347462526 912691329 323151712 696029869 360021504 996643523 340074143 165941652 52170510 231582784 930046068 773907340 903998835 750963263 624317698 971964443 988720633 235466303 371062405 126162416 995157590 247739832 535555246 594611952 392871895 702434836 696407987 903361706 360641829 531144512 930334628 890057249 971782382 383789878 819898496 618682168 701488722 299425508 596490059 406562990 197144196 81251806 755059682 228862020 951969707 810207272 22787608 232754640 94563028 254882078 572309935 278599522 235565724 992322321 94918924 643095863 14416244 115293755 828365161 252043311 511057936 474478586 145453207 706808795 320341104 715145111 683819518 768695492 198254840 508070376 155956402 234285633 392515568 902519677 808150946 521014259 736055146 95560825 227617475 530584573 529469591 169210030 555138420 558369031 703643350 246616784 778586030 529970564 346678576 120510422 712552276 698388531 881216413 560580944 631826977 575879532 476647959 103770018 503957181 167610456 766423874 755996518 271623746 273049496 317412606 995173760 970598873 974275066 151932252 831524635 703135796 648201862 736855433 330698100 438345183 931999622 813603560 281088739 670506441 523555762 516466383 887457488 720621983 63689480 529832265 358124437 532195749 827474114 418578166 883502809 844618796 282384848 566075811 875804212 445485670 425883012 137357756 272241421 246004804 186198878 237392326 698365880 228208457 292667438 558979670 834391252 459927593 586160782 16350154 181549493 198507574 928884644 497102006 22965050 557660929 450692226 781744544 705697492 432888632 942299790 978958631 290878832 709931003 400023856 734046042 528702449 927063899 817968943 999355944 370772735 527921381 499889758 505737439 687914770 545257068 701019223 743830736 256255508 487745635 559350425 649617877 767262034 936862368 762214494 390223688 741705485 705393424 738154494 280429178 326736530 358252984 604877751 166592955 710814299 460938573 60833654 826671305 503361890 191363771 982095228 228492627 1001613298 493808169 573546207 80951868 390139742 347374587 353448099 525069434 443665054 126233260 465827035 36375552 811855984 793376165 83423364 576559252 477187361 118866585 745416110 607097599 556537027 496527242 335508050 298737578 66592471 131454208 601404233 260819893 501436487 565459816 231013677 121070537 735540543 882440236 149296230 447646437 68961516 400314351 467711706 239380127 722945389 217941484 597057975 95583477 453435919 388321157 518521634 880982685 747508573 499803537 256049093 193787357 467967092 972454136 620442543 825358772 80474343 906629065 247602301 1002020125 249819936 389933230 380661058 892739166 417710870 93020419 276782296 775309260 424905304 794192847 597758339 410494924 488311282 757115264 715930536 367373683 28561210 498076667 673209818 226092789 999932040 526408450 262462074 659151810 2020134 240461800 888694074 807673359 573352192 502159908 861817479 286961284 68006001 540696271 953687718 81148915 866247585 423474171 460476608 872914534 493700915 393425913 368315638 968121094 452315360 165093781 771207176 155836133 603622252 121684260 699615470 631100981 812704699 810251906 289384521 770951584 844625305 292217858 928300167 81575343 453248084 466010253 565383018 185996930 157502453 895500820 758135417 320040650 5012716 133506582 598087166 969560781 781655435 127925927 268313026 953353657 156691393 593900613 214759445 513378650 278530821 567983970 696258659 289389315 6345299 525191964 261487351 202207804 930964992 131362447 916732441 641614277 808326181 442510503 500413332 156973058 246284445 798756849 179999681 982531089 635477396 99646183 385332828 253581744 847625297 124932249 969878683 475806731 789315885 840035650 569929521 522185551 277877364 773658051 479344338 892131916 849894905 571720703 981102871 691033697 168514862 919485487 604692436 17819591 695578292 744346887 766793220 312789964 469438577 330015090 865943861 633918125 916347517 481693743 225790425 551497506 545773299 498249465 68741428 896114281 76492805 904069797 494857171 174362055 278038614 451402264 305691885 351372444 431690796 981562837 575622641 16112133 688946666 251062373 2431146 191042571 185563047 762695200 342911140 191546596 234767581 116697260 638577872 299578927 979347273 458619756 241918075 598330973 419891074 529345325 974576041 505417184 146309378 918134405 61280579 811569560 801552427 894553884 791955527 481131570 726939298 552174988 319987251 982276284 666899706 277505416 437847714 479739709 994532398 645492672 791274727 324212784 225321985 107472093 598142206 904975278 251288827 665461356 931392774 857424948 99608533 523211779 28605780 370429851 292722116 653564265 711653337 13132870 826756202 218047018 169898864 219911593 366341529 435798780 397589473 234739044 583937018 457337299 586439658 874638913 701303657 35529695 409564325 610709616 176316910 431131932 623218004 451327568 822436487 473359458 412579354 380361802 507788108 417301428 234838918 994494892 682715528 217954665 622689987 193124529 322027058 419882037 454144172 407921083 380230821 146912608 9908567 271033232 267926285 813515499 916589300 375432999 885112898 422154645 721861146 790600656 201803436 508210290 139097104 122560632 992091925 49305966 931703061 386342116 470035546 571350202 697915746 352983943 259780463 515107256 971815124 310405104 398858765 674832525 660180059 964543850 500677799 158330271 767590082 632831369 396341588 819524355 427848702 174378173 96456044 661387082 597665117 601138067 970234345 792642570 285998310 836288064 830771501 495060035 994629887 641167109 690071617 951101786 287209436 210610741 614520366 539558672 440376483 327580004 943386731 738070181 361724110 600651365 359305003 59071213 184695141 773970124 845863084 63424103 277076798 44694276 793594720 420728693 968324834 80123110 565603760 629474238 281466114 493288783 432902153 523000973 354138552 352437343 252702429 210905260 429486987 504880725 326246602 751304262 269896603 21804268 587894378 808085653 684448460 219480836 602435045 405142229 87222757 296922296 983421363 880944123 443229864 313314332 338955398 465957512 177541069 113706740 80821350 903589864 383432657 804878836 343855681 367837399 42841103 479600556 458675075 93769541 61799059 772853040 294596158 970572900 769681844 741398791 314087767 432718859 581387678 270509579 770381776 221164221 442793442 363284936 395697592 932591455 620286194 648641269 720618980 556508282 674286292 662560362 75592637 579247386 604143259 28885351 63746587 108289294 702136297 266361407 139353978 551918351 514315708 280009006 773177459 903005750 794651531 883602723 885320410 385307885 967757095 484664548 673524421 953058320 981561418 524766180 892016142 917422639 106541449 98532402 348277026 517489398 538848507 470561808 69120017 561659920 605819120 891069973 11120303 835866125 674310907 495809519 706256446 458627311 996891466 993316236 924743752 51131962 578544992 107868500 638140398 124356477 954505961 186251013 77955035 171268874 313090754 431285431 522727709 697935173 996984188 611560401 607778196 503188762 60173861 238788464 341442472 974860659 100213343 629746471 967962146 97282338 425537896 886771780 430801549 188490033 839642136 711843133 901779747 4289510 550640992 208275634 539136544 340018320 7482199 564240142 498553273 481619215 892140341 988152220 917053827 824944154 309841782 71048859 610963274 486337657 391860436 803843441 640284721 475604889 78749356 944581067 661857899 619837190 117621616 701291972 70294105 41214483 741667349 983733397 529657291 209875350 171702699 912570689 607972676 597813263 797730645 477125750 419266267 873334414 51983315 438663933 146951854 108891733 159421877 551915723 215169351 301622491 276679575 418642725 419029064 831871839 335501710 141013186 734953297 684813385 764319330 858050386 802014366 216154449 900756341 708506691 394758001 291701595 783953919 286755479 578094044 774452074 23293549 617670493 218610936 655881164 788659852 14777336 671176122 319828062 711488697 208465730 892636302 369045254 346146033 510082238 529997105 691870203 815099750 160814154 729509247 444857239 178773068 368512731 194695767 560072133 159960463 207431120 501532149 83100725 903547387 798212288 528047888 829162981 319072984 178808597 680184607 750702437 241215307 53883331 251220698 208817525 219226153 166503469 407810732 279859487 731947446 902608226 67330957 896413877 209522104 572972792 700492991 598394644 746271275 566447146 310494189 107087816 729314253 230503243 909410523 460474812 127712100 62679007 37947623 277996937 822113538 296605030 877241992 325239089 59331078 339527826 935296777 683420681 19338618 675740711 786216237 622632309 905683669 618508391 501185468 40599177 99162923 915382014 209246171 378339325 487849776 566776813 676146321 362106609 920731047 71083158 548232940 185298583 67509796 654817056 357687877 713917827 450351891 849422550 309416183 604715210 175187484 165175010 875137823 979993113 365740868 326399990 45715193 432975613 222193931 133901616 789032934 990755979 696531058 73161697 592863296 31258397 5803231 169789643 952115058 764740355 535666735 947981490 77530063 623349098 196784310 851164016 125444426 543158277 399279995 764741132 168784590 669744138 445364241 978138422 799235776 62206346 858179430 984824127 942655830 815870937 541655381 188696292 370068778 640592720 338487769 401936726 789608011 514619305 92958502 957952750 93255074 745604790 475015585 434137652 431575218 954495260 730594638 485304458 949220021 771225464 243877242 447917100 200627921 648261415 251041327 479135487 590109636 416624603 607265123 789849623 178707997 838013515 389852368 623467554 669594828 650653836 262781836 240850947 916039115 56474267 531581703 78597610 948213047 911529575 727036839 34773085 946807063 416363770 561937041 136409157 972283543 740284529 590503946 320111031 417917463 89148831 181087532 998323822 111094136 397929155 18877821 579606621 954175409 966246227 954998292 873881174 105407446 221061233 459897621 343501059 42738287 995034888 932029438 111713736 408609003 662282528 648944564 214564864 361275609 518179313 390059800 451999826 231375005 900537688 988318403 308284157 442215552 237420094 59861135 160620981 88012072 142765888 628332626 558291348 543468948 280709854 829496252 424034498 150674330 96368829 312545846 353921219 672260391 92559956 335721006 541166216 167853228 693506399 971167748 41839427 77691329 331534671 253700885 722135273 423065706 356253411 607821782 185405425 846880425 603585297 711658205 169464193 900437566 369905618 113015869 473043017 329951070 487808803 584457398 541701367 88553621 273396105 529111704 780837213 415488939 274268749 147070183 464845194 126250465 867286898 889414233 861929230 835728706 593110730 779437152 358074440 139290980 301616775 560126743 441782194 160950505 470092923 758070003 112041081 822444282 632468628 690794780 52627035 491420710 558704164 183208752 980174824 523227771 993449257 972300470 48534270 750215127 530666896 294955090 132262457 442250169 778627963 807096518 726959286 318216299 257251683 79025785 475555314 650301630 755538241 4801539 238611729 407777147 461767449 71302713 55942032 705183119 93864329 196287830 9657544 257692378 30759741 321659080 176778086 629792054 479125690 565005908 878375637 613102079 924905726 330072849 24673357 115464797 4708087 909407621 320145279 201490115 518229464 350926171 619684772 125447882 46709030 564031417 844369808 835489171 647283314 516224047 570329733 11043440 772966334 899814408 948830587 330975317 268734832 315757239 912528548 837330701 792957689 458498479 278059129 996161947 734140926 311349063 19992129 222171613 61614170 370793361 271931603 708697696 484260784 231317543 643833577 991085005 461703452 289263414 78001896 351612795 332305966 818984286 102697281 495479114 439393600 447373580 757079336 580652779 759985161 386219423 82900221 58744768 675314064 142712215 816508077 129668363 288249039 726155834 646359448 660510054 629218386 213376759 345899452 851781115 576996908 747872407 854030492 970137963 951121956 683701694 797046544 448652652 91836846 68454562 658074749 255561095 878280865 922466348 794385947 869498661 92439400 635922428 56924219 590415404 947966040 114532722 359509268 984022051 582442735 697012617 305345656 4049442 563039498 161983532 108233955 127262144 296228494 421880253 55707421 438333565 547603047 921546033 452819759 457742662 240166937 631789540 479538580 335193144 377822491 886826629 740908023 939489101 259364104 319877732 637597570 884552225 450537490 537158654 576054218 618919522 199353907 527160915 904780852 78431219 775791166 255198801 258678306 788879939 420920188 176532792 220674734 186646829 451739361 980564215 684453465 754172578 349175547 337544888 830614612 226013748 28974910 405183211 884444626 661928993 730675814 96287693 871454053 755995376 991437644 488808008 811216218 573770194 352486344 511861474 153808429 541286943 256814227 398463412 146727277 453241197 240237942 483658047 191632268 411846867 443877680 97432419 675157869 263344006 947252995 398476760 232407506 222061071 800168088 586888106 155474044 160925260 246278387 589105019 72403073 537519320 932485861 614948657 613255965 807154959 110733815 104016 520038131 198158157 999254714 534227822 783828108 949866484 422818405 804717982 679233402 14984553 625331091 217311408 975460225 499653667 369346389 233207454 664780982 364399080 703952255 604189138 468914378 70348686 273375741 929537115 837090744 35125793 266307224 26145769 28899237 954981312 130997863 19381661 170669170 739287945 52764332 380695580 93125456 555150046 348312743 781710419 933078268 858094230 910997115 696843834 342785265 815736684 338370748 649410865 331542564 281597001 794489578 786756050 874936977 415488896 111430931 980804281 818085270 572888343 469602045 365915262 648111420 952600044 924655518 342001111 387979490 884355695 152731237 546256657 807258258 316021764 81902901 91565221 435959862 193627030 422467017 388280770 400077253 88765733 76843049 446397722 641198596 193628353 82957396 283242426 276981970 894646929 883729727 145872879 759144568 444289026 265284434 277048981 250143952 169532998 3173982 834464696 649822252 760610474 402381635 192212461 770490522 888567899 925797061 618496573 579737688 476006376 363323417 19186067 315412911 312608209 103984952 633699558 608526341 993931356 109997876 534548057 233168450 4096454 510271951 122561228 815003952 557572129 670793185 656597212 947013238 539006388 357053033 544547354 195243685 28405616 10870361 729559885 654159078 147401285 847128172 239428454 224584180 917510871 448496540 239658272 732272686 418019270 801227225 769869960 822151903 439338646 485324672 580136240 929511203 785618824 972403081 578239912 47236769 239736926 101377365 160373885 830565677 429507922 73024020 189028222 570587558 335784595 210168029 290929028 575334121 840975004 162855681 401700267 850812534 318867942 988767184 992574790 566983395 437834770 372494094 398389785 484004882 448628400 342857182 390298398 665801452 423869786 401086788 998080561 565406117 722056681 241247986 680309383 489255932 629354330 808571794 203750935 211602517 177403187 435796656 539368509 987400222 995394182 256470090 870305343 734180902 901881703 126079733 978890851 677004309 418140260 779289633 879396345 90907541 684111656 626574359 840025457 980344417 435899845 493980334 464339471 782135830 886687192 58192718 726608958 987161905 676176352 218293166 774725113 277177649 347998820 993194866 529720272 438785624 570110982 628526453 396530406 671061060 139342154 133084890 363011912 509390104 664493916 803192948 90653635 390715730 780002689 855787129 865805145 59716792 299261099 153704134 617662068 136397212 153101474 612634794 586673048 722004369 96000670 689640521 729907530 753929171 665599985 207663711 617454493 806417423 452208990 951268433 959063450 917671444 640328870 184895144 275100925 429120229 278268257 464246540 213916440 926088892 536442455 268880153 266298132 310481663 48417621 575253439 399666885 513430252 713940830 330836536 520717698 600212752 648407820 372705245 288134915 200059766 691126577 80357229 82087742 319894907 490911879 173254855 570300279 393145383 934429916 464007051 65475416 954541213 836645309 154783278 321522901 607338123 296022971 994037447 45482007 271634555 440598743 481723021 479400112 324810585 228752755 679483331 76637957 336971184 506356565 187667765 998279220 316250530 34694427 332049540 906833402 144156742 907509685 84381273 877247663 787652624 852928555 14881227 795419226 20814055 662689678 159275644 1002193628 2944554 928788318 655144986 563796861 127675699 593254733 427211379 178880651 797620196 727129801 784780566 401861521 22604007 142304422 170298295 828910349 481172445 557265902 56188243 200610225 638216301 320071831 501328801 39434446 698563662 549127821 278281162 607641966 334854580 696438077 988419252 383974094 476999971 878140416 7392747 335263810 808711973 382454554 341303022 495736883 278959339 463747106 725165474 457381066 873907071 258676850 583033244 535894434 414240498 789844302 400119744 337282234 174497169 437715294 897594365 115756834 979315405 52452744 358163314 907975557 972984111 796955793 106881460 151149152 883343117 556005712 313464029 795121386 510443092 657036611 812450467 536307517 751692045 205242883 190906668 47092092 935994902 798671995 340875172 491099095 754573075 510251414 173851630 839887516 207309614 48713438 868693825 864907775 445211943 970571094 657698342 919871264 965711047 612442854 846816895 463516541 450949864 903848510 375040271 497417635 132229297 841408277 213250640 325900131 694575902 348329835 568981446 548351294 176359329 200633333 460805197 400080731 449298475 772560586 395951239 999406908 205007328 291112341 974966046 599971809 189984683 883464653 706254086 207426689 405225712 282593866 249882952 366828466 576416635 910033600 985306924 198800440 760013225 312378267 717580170 437119917 670975471 771196725 187198136 920083021 624876800 519737671 42705481 608484264 524827710 882337318 743996278 861840736 386735054 398731631 752420140 729143759 26557973 222991095 966047966 98900901 712878660 598173654 189965660 563628512 267576870 476210756 992482445 845500669 701695146 728833651 12605826 542821561 166136111 372961761 990290351 588263142 135133005 715774028 82411729 288324972 102067795 973721125 709538022 188421257 247990256 999542062 473933470 930397645 175197266 400390661 840002540 702333891 959170940 36711043 18663316 394152693 595534998 183310424 781300171 650060280 147358003 742184790 908656581 307652187 936567345 447614580 486821730 585777089 623004451 735165491 276094301 880721207 354807769 376065474 935167202 340956464 560634387 727352196 84547346 56923528 455679106 712251695 820665598 719165608 108532333 322830575 710675076 900019100 828994281 471658667 263322907 72270678 471618149 638426976 843383128 13054143 299394367 318953792 862764155 343632264 150225943 93710212 214496406 648037406 652293453 73290291 166168293 815760396 7316989 613319828 875866344 555051080 184019701 60149059 673350632 498584717 925495810 44276937 195882409 631449323 579174155 762026310 767177143 609143662 470186542 837633425 384287659 636945267 206052857 338161592 988565413 8647061 115015715 681819020 136545003 494341157 726233645 61180787 483715877 445389930 33964466 116837994 448436358 501397934 778930761 83044933 402073953 922423013 57185345 586611496 361373231 592545595 852760533 267823351 436644251 950684727 394488468 113481110 210505933 531216951 290351194 584331170 994571887 780413564 316503888 214230902 595383799 996458894 77169814 287845223 133200064 149216291 345447959 681926578 435123044 839710981 781337519 2275991 964736134 942473998 848019211 220631036 145497272 217903257 483991299 579853566 677530498 500551561 33937153 101476595 115127166 243296841 401611278 517736891 137790658 585082569 607853928 919785687 521590346 34306643 370145387 320983365 924767210 653058964 956472362 961320736 955505561 335648486 980025688 394818575 51087893 611348425 317311626 142993211 358683575 551350939 622332737 178601472 451028015 946659812 9894799 632050447 467406641 956488710 323102999 292793107 833579637 538722822 161924654 607403399 184502982 826877193 426802363 111036471 760068284 562831820 766505823 915797045 804113152 402601352 523545911 123119093 333370255 639732752 939040205 410081627 735549856 758899443 63381003 79401575 628502548 327837984 557807677 718477765 274368763 511978308 823315369 108757526 254125705 766037686 415064353 315398456 723968482 837069706 629899703 749668290 562245401 860579669 896043409 450875105 606041068 23108552 890480293 768375688 97349631 527229338 863600346 127109615 437819502 756676844 21661921 913455595 78283625 77321888 581141673 290985634 470559040 847800885 679270958 833390224 760473049 496754093 771488214 878542045 935106586 779030396 661527912 634804960 356462897 405956617 293737668 293314610 422851847 300964632 864609309 604611022 767624377 298889403 363023644 155790493 1115834 647586391 878735655 872508268 700511016 156378586 136352109 317927562 799126849 383534274 357938539 410968154 93402817 514476285 278214723 27894999 283104051 479761751 407022873 757382039 385839264 19715268 928689884 474134278 199792626 652476241 433891232 309694839 685136851 20010476 517265409 581335273 878141869 485481727 73065793 59585630 26201626 797570661 768054964 167638648 901120041 711571744 363001494 648390625 585175822 396423795 981478310 234351404 292966063 116475188 395610811 138777007 850847462 864085296 947957405 878398107 108630256 417529856 608140519 935999066 164793654 68766667 94181691 571734339 122183937 261780392 10360560 453801571 402022111 58912354 526088433 84563640 626350343 82654837 686890599 923444430 170863790 698143052 145996974 449693860 729316112 194314683 437639464 699802885 535156951 324494376 495911961 772069547 483280712 375957947 459001681 221873213 656729257 968000401 293553351 598382570 164812602 658852291 276135657 504111717 881161063 260146726 291252479 330786735 964172592 804309891 375420930 288228737 775858723 593274388 106637475 213972929 621829011 402893837 822025727 5756444 239492328 977690252 870633957 419232048 856265705 487300297 942844566 132808134 171916858 66212928 776721251 428035490 798831311 753649819 24183361 379429123 688026307 713353101 723909171 38712253 403678751 76990037 703005000 279692512 105470355 634838157 754053460 391790272 369285713 887314939 628682505 637003311 804737610 417901637 658447956 534882692 938584954 479819794 536886208 50246094 159769519 38772431 764501894 592157627 26813940 910370420 57387606 723780260 354746608 33262529 764807595 907809577 487194035 622313451 559726645 701758378 362689769 43846506 256940927 268186461 789102654 106582061 421811631 149688895 536039116 760494258 803456679 47510560 623326285 246694488 946735445 75322326 839888462 85960557 624866735 202382655 538318190 819177924 652334752 916387046 780538401 811738382 699664911 439749304 202782901 325364132 909115874 284045848 386822003 63317907 434310263 820803310 666863089 885544302 12989075 69952174 554785635 803761419 439400909 522167076 401883297 106156768 17839308 771675492 73082702 106481799 273482387 232079223 298439170 290924060 182568946 569246552 326508634 51772982 456811291 477274710 655884054 917021565 45101953 272883724 30782065 360957513 113156174 292620206 131741004 221022971 694638952 788019356 698137977 181898331 638002874 420792826 242613454 782876756 271711749 148335432 827077400 398633817 411769504 134903604 794196823 304092332 332777386 310962378 536831814 887267453 174288904 447493149 751713722 190407141 303581641 54762361 797627269 618606042 637986949 650065401 743411797 6981561 246387924 961277591 881791193 305449461 189299995 910397982 648012267 232822039 319133825 533174469 888800143 10441419 870767689 636136689 118576738 991766745 647462483 889447053 438319312 945329768 440759529 351782231 571202821 880989726 579260386 360424395 141563466 265088368 404385006 804974599 704517899 115005038 583289250 814811160 379582115 426644024 638191019 801173540 214497293 605260483 949275752 652181062 377014278 227088668 86551052 891416617 872006269 634139074 636316469 513796598 424351051 253913503 759683369 692189968 640660281 406307188 504683585 433187825 486897802 18423027 631718145 925919351 297280360 211380261 386506554 81220257 195044645 952644008 976166692 409312404 118209943 936934125 352676941 89376053 474251899 12727123 192745682 644698461 822026687 259558269 31014093 404456688 961641142 282510614 871676363 746056375 97266876 396246824 86305560 737314697 20888244 841245028 43526075 652046905 846758509 420973002 62837566 371441629 170496887 448087152 857375952 669190619 346286738 236735977 733618971 931651785 242160793 600400945 613409889 511335996 598595550 76851814 280795724 335124129 799876366 283582275 963477900 543684648 385442423 975742862 633833296 51669017 246894520 215980698 298980159 862939408 515149725 4601647 804547721 596846050 435070466 210890632 928250495 886485278 577113837 452854313 970521415 738854119 756290278 716573603 493769248 443699308 721258150 936648184 432256288 786165564 243436871 144119864 884284122 831413797 625136714 738558928 22974211 927745056 747785549 583628623 153191318 729829280 516487835 538790139 474894383 278676190 613131092 334676591 951951531 849532490 808981980 913757228 447475289 604313305 834815529 368857613 945434924 356423705 912766163 753000667 382998147 996651582 229771258 393064547 244195550 640700958 303816015 711691060 766872710 282494980 675920212 718853901 142875901 474422437 582684810 583202544 690299763 480039370 486084055 194870734 971575177 308885572 235074644 608459706 801007540 175669289 533887403 850619619 310781621 565995789 708044225 682667341 976313901 887713646 10266288 211930601 36547629 958371221 680405015 578007415 17780447 165842991 467432078 475587835 177706833 577717764 537235419 613383674 897194676 996775831 309622157 889350118 547583486 611018766 437617570 815839011 565752032 905132545 130248685 20149763 757703354 529703832 714936854 826708255 592705294 963998867 884998225 524624614 506103480 607929756 219392074 945138060 801424255 511806622 549904785 687291552 976319291 696494797 596001713 220168388 806403099 546726997 546831587 747035054 703532836 647535975 197178510 286165401 148448740 535192489 97690772 727898568 707224798 107103440 118935314 331641864 475287410 324969666 933924225 105577855 262221125 731785793 74594094 946769285 148668543 739632530 188478103 700142268 678260686 963225896 902155460 591076614 202950962 105616265 879058208 167702902 146116530 271745672 49089290 12074787 547177575 743879684 214874890 99669376 65542344 286246310 499308301 581904275 293211674 815826815 410483768 653396512 798819147 566148623 121225382 974241550 932840288 614843353 290483312 333800685 135935645 981728053 394732062 693692394 819996935 130337278 717553819 485704023 19921636 761049390 537402935 130500253 463378613 841513611 880398179 821251081 311919914 600469348 98315521 653607755 534895250 748973187 150602364 900231815 471348653 4215893 893076002 800030325 231150367 426295257 690712510 350259116 743833075 373819304 856379157 156598503 899086352 40839869 581601285 484750672 303462861 304137469 661771254 230541541 952111929 693941554 534912734 235426112 187178504 39380883 53075674 488698006 50965143 571217574 386380049 765022227 690826523 94462688 986061224 107269092 590161850 515779943 351086895 857377220 522483469 58790109 556229612 896584819 743338821 810357087 31985332 381148760 372977005 560971369 25799675 475481693 441386928 366661597 157845559 206976527 560262714 203766479 559813898 61134938 398855831 790415620 639807707 532473149 340506352 645816405 474183049 625635319 681276894 899998205 719444665 160136041 378832948 468622807 736686568 909247074 379260311 502116254 7538976 831349065 181240998 377546115 546337971 830957700 344451455 251971408 288511487 280549913 801360816 460638168 273945246 675519379 237534916 582636416 20849008 108515031 673134344 705502624 242233740 625913732 86958790 810459525 81715506 403248067 810204674 152462455 122306247 890746925 160965765 887100798 233936941 931384693 56132442 336202774 611877040 542260452 237267658 765075947 139351511 20708790 627371657 657808304 34073241 543461785 388990143 356990801 367881261 756513844 298178918 38071599 393412035 651309435 421571850 251336188 338437654 668798991 454318450 572408371 893581734 24961747 872486968 539861613 25959557 520226547 213070478 787873602 745506587 276430718 173553901 618640020 570391934 492064000 608972395 813910641 820728134 209720702 466887928 920796467 867715553 589089080 981151202 387696047 239124829 434693047 135049464 144669130 975068999 277816954 536230498 648441490 738236763 139047009 210213884 187933894 128325705 513826175 800405769 648773990 29846719 852270867 504543955 890013087 111388190 470718196 745763550 891653996 168289206 648671616 816703803 715948498 149506030 396875851 450774388 826688702 617462095 839571519 957638647 567341215 189343274 356714005 55164441 69684045 425364925 103956720 135666359 673818016 750112738 779016521 388482709 136953316 702820648 577368684 721462915 577327748 61471820 370901176 775457341 850875311 904941457 647126252 112004531 686566658 849067933 557657893 271846750 853998900 239293586 384503509 270213644 108324607 214866815 385452120 283185310 304804013 710904328 572545016 594929899 694006664 627259345 371465412 878558863 861777451 977550581 740562075 505694621 928350359 259366501 78747379 479860677 983041707 997422089 11698139 664143927 425643161 469466819 65602637 353450080 701224932 62556943 623768584 211475902 421657862 374251140 409739274 470263770 475133466 757187264 470399526 131960681 36017884 240425002 848513823 19006439 10430346 80488634 381921576 520019418 908071711 849700705 741444859 258933672 635244719 331833486 538997349 883477467 644006708 661304442 366229303 47980990 683843464 937720465 720414122 914146453 178792716 668635395 167285320 73691165 705204239 513042149 648554478 980416018 52369402 645074606 600890973 897136962 772018471 837556448 277860286 212221671 531965863 56660362 323784971 728382460 68186967 511902178 635459811 752815162 589109002 570083718 38460214 124356028 93586254 218778186 967274174 528998425 341404002 22994473 631372077 335157478 109191074 587495168 616006879 999378616 511872940 687639986 955690517 894158191 692700383 848315240 404858110 767052736 651534841 24392564 236541769 594935444 768148254 46468945 440706480 410530233 917150584 588237669 132137465 940627389 777992904 757316679 353919316 863978219 721195875 673599927 944198363 480956290 621924547 144450510 257524787 159811798 81152689 435972432 851724568 346031135 163508778 365385586 741678306 808095777 35652349 947067297 91592021 968513503 215088603 330869473 844643022 560758472 125985998 688754564 556053439 933587389 560610429 551941576 42420839 323786415 567834839 268472392 545055753 571936734 373128619 537257550 929800318 676953118 447276771 147906984 136692173 912463162 86106645 733252455 224358357 112727150 88609401 945866992 590148804 888881587 965446639 717472567 677510545 613319593 891592759 437480539 638088995 454613669 335917808 70686460 54116782 290077703 465246480 835898460 613480860 270062788 191281657 580132953 337481189 634244171 627846450 620590778 383642801 947708530 739862708 668652043 576101849 964254553 948915705 291267960 831366615 734078794 565692458 930079791 129249917 33542226 208352996 857393184 369827909 253761990 812528351 667037284 180087293 257720035 389356825 464658579 561394614 408256809 760648451 274053771 486743795 545406177 903447923 755792021 643988911 319508969 437639050 782661106 145351161 732722907 944999363 422772217 134991739 392189602 588821066 257365302 436067267 934413615 995896818 663826046 466746426 242013867 971526040 925981094 34273474 987630554 327866052 788149443 800535330 539624211 577683880 217611572 718224067 195627944 882164178 865089665 619264606 558733638 869931279 303337460 328630605 105009383 985121645 824417695 418489444 291783417 979451997 370100070 637812484 374575728 218531220 819953676 793416691 758094609 467745514 179396742 295890884 519853771 353286540 11930963 588118497 759073808 613852554 614374293 194224908 122133657 444653172 689581731 419609894 147418608 133476890 879653128 923721535 116425261 448004880 783268136 193447046 583157408 246143087 789481959 775358397 820224654 168821392 652181498 426424504 667723376 151088854 224270703 871195441 241142789 525480069 548197657 576667939 930333428 2002736 803461378 717304461 143527518 967707081 508101197 402743191 887073107 136140431 251852385 414139244 16854828 961563908 86923991 912283955 577070881 191887488 400646055 374872 361918962 189138169 924441803 841879592 99407606 28881155 354460356 653046939 230260809 384441659 504120030 473733803 220555218 35482648 336288584 146257483 606662484 576990513 561189484 194563379 881840465 981437760 848569458 489229025 707075202 889693684 887160105 508205306 716746936 624942045 992047420 411293650 138399314 820146857 840192584 68758324 593106453 728949450 707655058 925586080 140132697 938271810 252076092 404795774 897148284 613852599 595077751 343176143 240486718 356874197 442553327 537886843 465958512 756032513 845743125 404998586 580281744 412659320 104941302 777778915 337847967 412215785 828960031 798590564 636749759 90375426 937569531 306786962 150062655 850900915 677879199 649263372 650657765 589873851 776991184 634393172 121696882 244660132 971141045 678736856 599375074 101050923 81084404 856528756 401754120 131199843 160550199 507065013 410823338 134586392 580675971 1450837 429236307 770396818 874352452 750908966 440343050 433607736 827453190 626527824 359324501 8348494 453885380 232288345 985423903 481358415 83218065 399355430 76099311 437506657 845138018 837271518 872601854 491369748 163334724 365707659 284429495 212214870 978893788 448644692 252268594 633518291 21231807 523779711 125146016 275038083 370017653 46932761 1749602 48480601 71381260 842630448 710467494 327074558 795174769 45530417 771149200 311460969 475326940 720910092 682864070 662671599 208101434 911759565 649652249 696027242 158195864 373341775 328062599 318497755 687058652 228786004 211390823 124830054 402857698 1000225767 475944769 921769371 855443802 733757481 146862386 93029780 381531785 394433278 974086673 343311133 496047871 78992857 413866181 49648436 916834219 579481312 701812000 897609388 207581857 316669453 284693393 489244886 694095596 978557357 249145630 954995826 170478096 420152007 93006857 152097920 166414871 296717964 858406146 114655091 174250910 468399170 154466087 387759530 18305434 605405212 283515591 731143029 256569963 655039501 994874145 947329282 355407126 45310274 470598834 1001999689 91036452 44532821 826404372 59696018 154876648 322026931 953822669 494811655 393878650 867128279 371883442 214438246 754416180 957607265 573290929 474771164 683453422 560352016 692943380 359781211 808339166 382571356 191655685 708963443 897508513 789453424 125669765 36812990 136703999 586444918 860768398 685548853 411021343 953743858 807261935 547686865 270748389 427844971 821029293 346337002 52962185 788967163 251577256 552875924 699695974 138139023 649380165 514548099 638095329 892738825 119948218 326802110 719998749 895334857 485010357 35958471 928692199 66162988 349979072 140781650 267923003 678876569 768454995 760286178 261759870 771274212 426869255 675733212 398949805 148589805 483654271 474920213 772123435 831905652 19903991 734184227 87203677 563510136 259014105 921040084 235775850 632294256 780185611 602555349 799789002 875961495 454334042 513138659 19316181 803164502 888455212 64529976 342586479 297265549 71238179 110527737 670583016 449321936 24339018 395254702 454441627 760338318 590984223 968451458 530814960 632816847 565704841 193140534 562866000 742071231 671773774 343540819 581287455 968134851 30953130 329371073 878774561 195362869 545106900 749391852 287458924 152044517 897081335 543142510 35260823 408982999 242159184 349939176 584468208 564565197 789673274 756618491 139977970 854712194 958511251 541062108 957619159 410605427 951070047 792564135 941492358 933665043 498359110 116800965 308874686 365254822 99016176 891479205 267725257 880148382 204524957 577945018 110549289 484062260 95933923 299189759 561197268 497357395 14680508 808057620 684297588 310547785 278431485 968732946 118364567 687548498 751199366 968414448 41250654 138594112 982954998 31472647 152148337 655391807 255389681 831858209 880888629 114066134 781968938 38129969 161583938 82069242 930651727 296721604 414262089 639708438 201757458 811504655 88563268 871023332 188901902 557704812 736888085 451171797 874684845 870233086 770537905 478574516 484105691 115311043 365738308 351632799 363593402 635076330 735268099 555824325 455817518 319838463 617092082 995979296 36687544 348998383 45911257 443486013 362620176 168561336 330307947 154167924 892758398 477377229 327527540 563684462 555309927 999169875 875373091 821193359 104275769 965832555 969331699 749386440 690750763 130843034 40311281 879989983 356872991 607781747 650715520 460932498 930627262 706976305 30613544 365685345 270514868 418797015 51167972 451547540 873614775 560100304 554973101 443426085 522742160 91287838 590455510 442640971 629871270 774674171 714267131 963199795 875807613 889251357 896342125 49837967 415254768 778549542 491349191 699887297 619439138 980709738 447698017 577066885 332348652 174557971 935223309 136216534 522962150 840361857 574989992 145676825 203259000 936600902 399475828 453896829 738961266 837701228 288665510 764947974 753310278 687819530 748685043 268192292 10407497 378802373 256623140 156284951 110217339 368364295 633030146 403888116 451123025 229804239 590112 283288462 545171082 712077908 766100886 819518189 756835974 70279975 739025277 808503307 665072641 165797871 208200472 784809182 681877837 134270371 314726922 474572172 859695179 974514449 201166143 5319572 303665259 828563474 870021055 774541039 63218388 749822592 22031911 396236706 358302901 444742818 699800665 229090332 529218507 578234895 27961349 309324191 59647320 262560331 535727832 986251650 58737937 61954367 91915211 885067883 698771633 956674773 717864833 701329714 192103779 757864057 43600576 946149217 956657968 468494189 979690135 948180801 927262122 90748031 52882038 236851779 403447898 237185038 460713667 269366678 423179113 106327280 973972812 97244370 198063873 663883046 639058675 161341349 314880988 689456994 472489438 275738756 500227885 698474272 360504023 425649877 886733582 824346179 891333819 801483929 18455462 581892097 165134195 516847272 721658114 844146036 329196812 888084893 537138928 685619909 285860304 983105843 559414762 749371718 883309831 125274831 611673653 367277175 831878761 122121092 766761619 941480107 431396459 32105979 663057411 945835164 216797872 609130186 343498570 164083791 624480390 68675422 256935815 236947029 727779946 161740530 93627504 830178118 803575400 169323906 765567690 556514693 518782955 755305018 721076178 56756145 159271825 560761707 787861841 396941305 110290668 328796916 243074326 740281934 359470254 285743003 101188209 772259034 123810680 255602193 591064669 352976132 454979788 65436272 371687600 616630649 990805717 596085115 498551692 569374560 435958856 581459750 669962524 764420157 166874874 217532498 358690456 125693417 917047820 847389870 65416765 230701082 847578160 509022236 199138085 302334465 801451401 302740150 838323743 728578983 316904623 734521169 523120586 249916564 83401773 726890074 700582470 220575020 949504612 572039654 684589518 825826807 470212377 715463110 733799557 68884555 170907960 145130323 454861522 142473788 530492393 175849266 954362014 412133332 313642696 563317479 223927290 186358728 558220541 389667740 827345433 556214502 212525058 244196397 502096573 429952168 267585904 331152899 33070569 68170075 25143742 296109609 429999801 265057734 185704688 81379793 702048625 483479686 752642180 628953255 483872734 151711913 159970544 898765939 510408252 718581202 334147447 844608081 138747067 731398259 245499799 869810926 729546526 532423050 695062601 689822956 599616710 159100800 292329095 566988888 639034033 777519295 236945137 848371508 800986073 956056403 816838241 78865971 832326893 240956061 651162648 564780203 358422969 608588479 363564671 756987492 53266694 60120647 781751489 797600054 497124121 761254275 932470519 701706284 579218903 730449119 73210010 263080349 721338652 171308111 131752653 604891478 452748433 237761376 952294444 837314568 540309037 21113696 412255223 88591174 336567258 116591058 378508224 901574922 491735498 18559351 231662727 691852834 520982377 447844191 33351962 519252307 161223286 191864182 636280094 430869590 266227675 252987407 287779045 508005346 572365552 912479954 555646162 882607936 940577147 914947417 994042175 656617350 279069855 191333152 100200008 904497204 880990551 372407761 79233566 737352528 613270918 329847655 355552126 490008661 840239660 205545092 844243080 732047117 233185904 171597795 958221667 976447726 825822598 576180746 724192881 671111063 576838511 195134386 484606626 100364175 862683217 595241695 553994429 375705611 308505933 633640847 290326304 808017775 690558169 859623441 995466726 18379898 275496687 177242405 624514384 572527761 358636801 459991393 880986746 932938098 898422830 259493383 370663652 690602874 451697459 271589449 571504794 406401542 192819731 804432801 712236023 227037453 401824770 97952629 243494898 90247929 858531626 62793195 912661300 803872601 985787005 180248064 436073847 86916680 604196057 289536409 484069164 837937995 23380163 763395154 126437294 14807765 203101283 43079719 317209536 205889724 311562423 268893153 945206172 197869465 71063727 278833979 480347375 758954922 79845062 193598979 385903862 232552956 720609387 544816505 846797228 21698240 772139758 845801442 552948722 985065693 748860993 805493198 995802051 178434901 985779373 903390215 173283034 274822846 752651475 626166976 82389911 355280118 919622481 188799460 663385269 504027121 480762031 474200889 387828685 665988265 687568866 612269686 681066970 116283500 408894300 502369238 699274274 505883222 470435558 89197947 415890128 865618338 345484666 29902533 584407971 195490198 451083652 463425964 823958631 601076287 862569279 866595569 122426020 587420278 425732028 289776017 673540202 175167961 294862868 934944369 514800650 879112995 268841223 544281128 622148000 712103132 77291160 927827349 784114429 511661891 874383686 265207644 674574887 903847705 505384516 469505363 332715367 369858871 333358537 573978163 840628988 862982183 459589417 47788625 161952400 522538937 651600410 458599775 563353613 938184166 140019366 938929563 168655125 662039276 959315294 435774652 792012774 258134588 954159004 926217831 40564212 794775105 742234307 590822076 699011577 495771995 216761184 397619817 187297217 667044970 839266407 328297921 504457989 39251264 196802262 302793649 541587754 63354949 312930459 631277913 354401084 279896713 929523137 737581661 86075768 771214104 956921748 382796416 566788965 153249661 329258 80020233 411296408 998229831 554267053 786681320 13007639 504260340 611553644 999254385 541867385 254413605 962003422 849931201 747085477 584605459 509357575 183110820 845637733 704185106 908140824 771596281 474932431 23463583 51381708 715462712 867630701 555836125 399128226 515016082 302294637 472160825 572992241 229798232 806111838 814878097 766694806 377465984 746121212 191793702 550730757 72032690 466300590 491628650 644856474 424119042 108204813 412299609 718546902 884844050 375467577 777815787 584307230 114687805 774825249 822609229 65216851 86350881 788314504 345947223 973777250 69892574 621021105 340392905 949300968 565924409 523471186 50123390 906190197 2953067 235360563 244125903 742660111 47374008 565461775 169063931 38429066 891834079 834822121 930493713 715390979 937150636 607143024 586343038 948273509 350190155 777604554 613563008 532319390 201566630 129947827 231029792 355649008 766064784 457293067 718088973 687566191 211774290 699372410 98788416 287493496 538790935 811939559 558033209 746764385 488647662 204865557 700770062 696758735 211080552 456727381 443860136 893991484 75974979 404053971 106896241 734115077 733088213 507767370 106856823 219438383 576683580 922379734 471331896 415105888 826143929 458099173 5500828 22979145 530355676 577111498 643206504 453467542 7927969 85711497 865892358 435474112 949390128 281962550 884821386 496439231 813730605 508197983 371242419 241698484 775703704 158330296 690923490 949565812 717483986 478891236 713328139 239170530 333503292 674506104 242188082 887237115 921549518 216753008 103748849 318041817 933208869 321342819 155895379 625997834 631633101 830682709 841259517 617535854 84679444 909621116 233556952 1001979391 37437119 393709157 177629253 597036287 701193710 362856263 631261209 212006308 826964064 408019944 266578174 974564349 869229508 964714009 59137505 435377568 131573529 675771261 890349697 702754675 84154199 182561476 567735186 429154837 567543082 86215031 166671261 366510669 169851822 468699986 704579371 1001082972 516780110 806403326 616222759 32288599 656280925 283773941 905375939 498666453 696051540 294701601 916297286 435701032 898161412 483488450 255618652 138177985 759961318 109763665 346792123 551943748 921385002 600732846 235626236 717575811 434107548 639929314 57748434 34434623 853336992 800605718 481714819 198607796 829151317 451183084 768337883 68576572 80059423 168175575 343596575 751057051 159463533 720877299 748734310 376932740 455568380 138696189 204132551 482973217 739940558 962093386 808832344 358895462 586818822 820950587 608244089 178852135 405583267 982367425 300850054 531075414 136508438 556311797 533040873 140268398 804798891 508718819 323636111 582218302 554966884 608424095 116945751 893854318 457441220 133586781 376348460 142051868 788864018 814562065 653832522 656903078 932617373 117592613 627745926 692147045 312789414 361588021 492488372 578018757 686160500 45324269 715771686 93771808 614472600 783753754 1001337248 923330571 722359270 330982950 793017746 778460349 77305581 481457861 637299317 163794841 656818924 321290000 999507300 225143081 809300317 757904128 772284676 876237551 13769213 197632660 390740470 722485657 304190091 776160617 954869454 338962796 122787845 30200996 496183541 997198930 683064662 416767913 959929988 914812946 678349919 824877881 914047134 171814780 148645136 436775603 494661936 702443802 334797066 58424086 488192790 713833966 642046771 835667632 107379813 55685454 189884966 11186477 147991528 101810191 617428518 145422560 656642800 736024242 642804616 133514385 260369640 460697056 605948070 246571988 484014728 192319698 241091980 901983823 733707326 385404104 125749866 884332028 525596591 749814969 324147870 715120368 958416503 316546742 7351963 186510695 552165565 294466846 534981841 407340898 980647580 313492655 51141488 452264610 290361271 203896955 134978559 741156819 982145782 414109751 441494313 702938212 956912072 367321504 502492155 948395080 842045955 628046186 888108919 307703836 475766838 712951688 907807207 135045015 78347514 959110446 988348817 235280542 450736153 503169974 673082161 211994883 175622925 842427545 432974663 539665626 813278877 66956955 264277102 581409738 870571449 910556985 682462430 58085645 978400119 947914859 370541315 363345020 611717672 344963939 107342563 613565142 435093876 83427054 524573637 28497237 550557 651202848 256492532 277870565 962826973 822626738 872209768 711241619 744407601 709909553 590532656 63627645 935059173 135627896 51367972 678417305 590087766 30381853 341362195 674120230 779594928 381500623 455819989 705380901 661641358 1000468957 282837732 218791476 387356676 580454996 673693602 576959153 953320529 820063351 179577954 345185101 313817646 172366667 334366043 409053763 309007167 915739124 332548838 334418892 930669898 562935223 17485960 152335201 619924745 730646527 131958471 677987501 114579393 733918660 586884022 143435052 212419554 129691842 367749516 789380945 679393770 714256941 325471675 202041845 44237657 1001401180 949102349 744040861 731694661 727431673 157743536 627971500 140798698 355846263 21932210 566461849 281665302 431263353 664096746 12017049 378137676 97108916 130869919 423680826 432150318 255747808 74569457 499942284 547831731 791031407 993478515 23711446 617501109 700391158 538579577 377439868 194622646 90036248 752692057 155056653 471060718 800835181 211573214 427944287 511404101 891580183 55304644 251734472 545747468 973247402 575431096 84835097 993188274 593628031 519154587 985691757 632273233 54257574 116623899 609607247 294513826 587912124 402277328 832483016 76438489 508685728 598642722 595426938 749880952 962311684 321595831 733344720 22427263 980528055 752620962 697428316 642531805 77153996 233224772 941392633 537705799 607110438 404111402 751996504 436746396 664788474 691475743 671109430 433982616 894611014 856785702 442126478 240147224 551053652 45189525 628123804 557975177 172280711 483953081 592546203 437589063 188604299 964928583 7393000 399964922 611059732 106228098 402070236 609987670 403782030 589228150 294827579 920574443 723918515 929736808 908743394 690661655 832547251 166708510 169146488 262848316 426237279 592305673 274394964 133912580 785428769 972350949 321950045 318730673 51362508 267439083 645706960 513442749 228909139 432631148 804398249 171507180 334039439 67402617 866472213 471031734 136652758 998292612 536712900 945753894 995860828 600721334 224654940 693832936 121114957 475358150 478461913 721535538 665020803 177207374 722301625 188875344 864526989 154619834 433316750 66088348 727927352 206079293 426277440 246392963 632128968 643432147 181516930 124270132 787015955 991393618 152915175 524955035 571464825 528988075 435827983 520184395 87772430 589059947 430048077 876245263 71241057 765552320 152284632 361382419 597446578 958960222 226012876 44321734 223975608 298225454 23458122 707498702 345820450 906031138 960089193 631036591 689439804 113799101 598308143 513543937 749343516 874543829 168450811 715548610 947884606 826463805 796697007 508390041 494394621 141164779 488188517 405998108 748788784 664117510 663805062 788363421 870849865 623629136 228246226 117483884 18999300 375325080 452677290 867714420 94890282 629129825 41355389 761005912 718151400 65284063 594270898 135742273 359041381 401397074 44104260 365286963 716540718 305712486 575680800 1595038 864784882 455924803 909632733 523281149 47298778 786394800 551399991 471035489 757912190 900712784 667907823 387722972 354361150 389626692 226460800 221462634 416239185 404831062 24482955 285126209 165687014 804006379 525831184 134808847 820990536 969359685 12762082 255266767 630001509 190005462 264866795 202445285 295389604 135095632 469196309 227529114 39222368 897854464 119091742 967822242 927463369 367687395 548727572 537615529 688105134 1001239951 110892322 292913740 192377878 704951679 20640308 554651535 100584305 762527480 924534106 332529214 37731953 21435139 142934598 702114940 682321026 804613421 907813434 528290736 322576919 437927529 902520729 649611156 669950756 533935062 84937785 352674279 854133582 396998817 736807634 507474217 966999197 540892841 997774474 690883798 89575627 81741613 48114142 824819154 868237815 789074380 627470003 681239541 306542145 577702667 196193656 171772091 970084157 618538108 850579772 649070461 52221819 803960762 276214052 488040623 38720311 121947741 395362879 937066044 682836284 539683343 318276248 529175451 486257401 178286561 287367697 410691993 990175280 434550706 644862502 51337532 430526791 528666164 427741913 307021562 104915709 617133286 803702300 896556339 916544938 660235014 292804781 618230791 545965296 218913919 53585741 164876444 2756034 823339411 270459587 509584937 182542578 163686836 474379389 926151598 140036252 532553529 5940546 167320891 167015822 105364670 326394108 279945958 746790805 115020439 88011580 426995666 748464379 552469866 543972244 745206207 950426058 215770941 813222670 997178938 448631972 191385545 489003517 525199962 713427699 547373680 682577659 347021206 77604970 808005962 403249792 447949344 289074344 11226923 251689854 582664236 727056370 673817683 978145938 510966552 146379478 134723192 168568074 12891709 123180105 393443806 375983606 86097180 368926325 934145031 119004216 121684148 370900277 992251033 316463006 329226029 123867979 758033372 143535984 849257082 823632918 30964554 458057097 303824236 833457448 869059869 588937612 733760050 229542977 537842382 642219351 856029823 431158167 143493328 575647734 87172999 181140116 935549798 182471622 476418258 468983175 890909294 493489547 59343929 710839051 590395808 404720145 782619167 947207955 576252997 235549771 194304576 186051257 963381397 568186065 119460462 610447743 563623972 457455095 510866155 159765989 382977422 240433663 653987177 652426610 423136344 380423375 33125748 457352473 175220662 351095598 776898604 501512357 859092116 537838956 164528384 455222225 347036420 608541562 756051451 127563452 582989882 204213141 416404685 667730611 327510146 483749332 786851691 806084422 599274065 795238388 603119972 412062698 536492618 197569411 851749478 773258805 610148643 316693590 473688290 242431682 299239626 492142256 421900392 478328391 482200556 575419683 203143614 606402664 652553921 960214886 935136413 163360344 177719283 966465900 798755785 220561940 230968197 671270034 617738501 977659439 369438880 861928391 107959894 405104522 60027464 169719689 182591048 45067360 533713001 259890812 938120911 428591435 633504307 624153269 36182801 355687952 847933661 112285764 547770080 268977167 191675400 121926399 206638414 52757552 51783045 47395532 959260283 645776933 615207648 812094469 221719806 225783951 612679791 723740813 91525403 281007346 176719423 24120508 670464542 938847674 779925278 719831402 385928657 341520510 333131271 800719449 838684070 263308009 405418293 535691658 289654259 941616562 551908327 782475236 391479049 1895113 595002449 271178849 611576201 936258772 139923885 838185079 915776295 639413916 106241288 961702289 781704186 518434953 598218027 595030356 686932220 539802681 133411942 514376267 822006099 39155618 660123802 265322525 382125028 151762973 364906168 924595967 941349633 272539265 176251442 662646900 936293222 643371422 149666723 33966843 652118952 638515270 793197518 416350568 265717873 705763848 102380867 149556090 786274920 971499170 669536844 758092437 919492394 489017411 932169744 442898763 298525196 785329431 81058404 121487723 321569165 408054279 614450518 987025578 186179193 673149336 810094879 334839131 839461250 49943634 538050102 141247351 372528697 615647674 646626993 917228166 562606853 212395071 373342879 28782175 295055709 630399165 589457532 380339928 421293792 629250002 265477132 349088700 827694307 300463751 594622416 884206663 390638723 793617288 396196199 511661898 385773210 310393416 767653882 954663361 822721597 316237207 251764371 973979201 274595551 831703130 150602961 598834104 697611294 513148784 171520581 837912937 877330296 426087841 933641643 11442749 588708349 500349290 433736717 949324293 961879542 937722371 169224189 156474935 218852204 783597272 13079944 450866814 187726797 883906841 651442923 305669863 873124702 521388340 385592181 445939594 578517145 91057052 149971737 350698820 916799569 892678451 910891251 5163489 953640408 292892812 611129813 202161961 443983211 554469193 28583784 696331288 930915985 386032379 723461218 242660464 613654341 327338908 644221221 620203391 458262060 407810710 976455604 100256242 968493571 184637620 912493470 969696169 230944437 342757758 501052074 614119197 388805970 427416088 888604527 591729115 748444849 702351730 799999548 530260 842283695 693569921 409059866 737778509 55771869 81999827 986765417 479806311 952587889 62813474 182163044 485224747 428397397 47169896 630179870 724507946 604973242 891712887 975768340 295101636 237461692 807398787 951545780 229521515 882967324 640018820 736044580 412999678 890385049 806592965 360026366 617865365 749789349 933285135 767187540 85295290 57733561 461070374 422919370 141888275 586334280 340824117 885174418 947111914 446539426 676367325 905966455 856077403 432973307 472644832 990899330 12611661 948555933 719770803 324574367 689337404 185245033 967975127 710905705 16780926 481690050 975267831 900016861 775902904 825360002 31493348 275071792 780705617 819657979 849657299 891457725 966024415 931378996 298353344 944757506 651843970 754780891 914163439 262499029 523264505 412932014 546167925 43622784 847651951 483788077 87352161 840644209 157169327 945715443 848039060 362689486 91565964 645043851 714844945 331706401 948125551 769754706 193377507 382616606 438365579 822671017 14116797 482012091 307082506 935579770 198289159 38813033 456425223 227086788 791905305 81233144 969823966 933351980 765470832 487224526 157315487 457913450 188274789 767379840 76825713 185098650 298945221 404177614 389351576 181602163 661122900 623353382 130861276 670474987 591152062 575143688 184352035 781796598 887715274 823393571 318869692 967565899 755927502 670310883 771713470 18718752 857501691 383234201 323076764 411738160 240887181 95927605 231975374 859831140 826462060 64675230 278529839 458474651 784569685 339761864 723501666 597653159 950027464 370108714 134930061 569769985 275865044 281521558 925822267 482696448 658057366 621992754 450110515 308620221 811966839 877308574 754065795 768024413 551179813 330871052 201173981 192245161 344223317 328095637 728876267 699329417 983823298 532201163 721984746 607591430 279343296 285620113 367278196 503366108 162410816 563228336 1001894882 911140923 600739021 577483807 839176387 77478282 538656386 664103424 552156785 386926289 579610881 210005404 354710926 480164557 436047233 96993957 656456742 932491626 635026557 734599981 958078233 525210802 779533297 796426030 503319516 824487782 917491148 846735508 953293607 519695792 655951904 998665770 655715962 706609344 788001914 240657229 835371378 649386240 315146426 577634027 458324073 502039976 359565219 215893114 213624533 608469021 852381117 779884149 432178826 153923228 100910750 798496062 328427439 407761360 655013597 925655849 25014396 858721631 912595109 791680769 447843851 417819508 483695614 890437956 638391528 247761194 490241141 983041587 248508359 228619588 999363293 877425162 875649405 591521331 653076339 692759817 201590976 396039311 426298118 936650135 398775255 563985942 900911369 505841709 802687687 152492021 926541560 868410826 168830912 768344911 633993809 354122160 528798478 922264913 652024665 79522514 345705580 386385210 885890174 483558421 132055684 969849390 816172567 798397534 941137679 282076607 41277517 985626310 483487867 898085634 579031661 341876091 76310782 502421356 769978250 517480313 112285763 603709422 809177781 115239862 586758285 656688946 498846871 551258724 85352147 336625365 608834960 551138109 835574669 523534797 140206761 50169463 911357037 627218862 1786559 841994814 19634313 24784231 732065863 960088707 986724252 979205481 658310273 295895496 860315010 700766879 51623504 54977717 618929853 679352634 846564010 248401531 939233892 809138657 81810849 141269487 498891431 187896444 79083578 287019484 950289229 333113075 806599220 513975487 669533526 380146693 452038634 580720124 398710606 65967632 465410858 149705899 506289717 1660000 744887313 865864933 114798143 590362577 648825162 549735426 67400233 387122614 687533750 699792860 999571052 663075720 809985956 746786631 600716287 938463702 30467698 484035100 62366993 397368297 130388859 465646963 827394757 865174543 796124907 374081976 340972249 911771953 873102810 835226965 470757866 340146305 370340444 611286322 801467868 861751570 430737331 146552026 775674452 580589616 320425442 441417052 234957205 857123070 421530763 233427983 488811018 894228742 882775437 922285280 654948853 580307020 518254332 975975641 959899708 665003558 670217962 101717592 644144186 476216391 130486152 643406809 519186620 767325323 495746413 392993782 691466717 611985901 395720917 299087435 521071087 965147813 491501818 786479183 92142266 62031215 735177580 46887547 794106564 71244182 151329321 861056560 382649401 37491249 946504752 364718056 427327997 888786499 724506150 831028839 383703165 134385512 906151273 144103201 162844675 844550789 272056437 818478457 23697920 265686229 198154211 124201177 589110695 303596470 319228427 184468155 518316683 172477556 1001256701 179446432 370225638 1001692522 334011549 593466186 284535134 635040485 555614497 192018860 485766429 963905516 337748416 915014887 493152391 715485453 60269456 377944995 425213108 130600428 375074141 305241016 54653091 168080752 663033135 843513331 725642316 213359048 678098877 206460758 992794840 288284710 906916860 813828734 796906913 268734266 726953290 755551769 453620848 675728441 490020881 829327896 722974952 444909549 459253852 598440167 29130094 215152972 440308673 376077847 746581290 4989072 293698430 595104592 584401134 310205937 206570553 110913110 486897155 751109326 563545671 610196915 973191647 526521430 784735480 70037293 439070412 36199623 9247892 486144424 888456908 226614688 141823246 965563470 788762296 60872883 3949384 225586963 921758035 102861888 219009146 836771285 259413187 226545722 523782244 28513713 688622624 368108218 398160244 326849597 659431775 258428666 897955939 699175531 887414098 869157464 550329984 81953384 910834746 276355424 695639727 173744789 662675857 479671548 401629472 305254937 294067145 506832950 575807619 256349812 488734118 65583170 598907824 804527284 156951173 666789795 476303877 275256050 470009200 489182208 385658664 739906677 427971680 420424353 197075798 559843368 237886334 677171335 617999091 163554322 413330929 844744562 557080671 1001641783 674645793 62779794 600754221 941375199 766782708 603679325 58260742 653692589 813655536 72902791 547406742 165051438 31219839 42036509 484814477 640259181 489757807 612453205 320632177 588189072 822052614 828430034 519693537 38599189 733422412 438900084 299717913 697280502 373556465 448800757 66855257 752260421 963909853 746908485 273385663 875296419 839004625 848764750 757943466 602994603 239498987 875177554 797008646 273494448 693686088 289199927 778214435 15981008 268721997 515336876 246431415 932437476 361277545 391374184 800589831 981249374 190111413 535748368 273749119 288448166 665886393 698118119 136058846 847064729 699378906 32486344 346528058 434165867 386982168 27216718 330291978 906246527 444832538 184096551 135958976 31128258 359759640 696661115 423514303 350477149 195851544 859054515 649467819 155417078 461153832 926243724 660034640 860983979 539124005 310446805 353166536 380161762 840040336 970096132 676918313 53026525 147161042 526701178 700628994 463408909 319769799 98020409 753828383 981703610 329058431 422163272 296758171 469325062 73530471 995573616 975454500 145511445 930473559 635610231 898790782 426219221 222129305 52955854 396233565 761692229 812600211 845426364 613619162 903849965 20852843 784378783 735364050 877035550 534959234 964651246 224563059 664708975 660764307 674982432 23899262 241943001 440798766 742626635 985008649 302232952 28133825 626072230 654525902 534798303 90056444 421471622 891305831 247036653 689463773 59037603 300065305 679771284 883121368 909663540 262734215 659229899 859450338 779493191 669277713 44664712 576090104 769200529 340741797 445231962 903754307 106619670 42503065 764424407 824791956 912396306 410173011 203938182 707529163 633277734 849010442 998703343 998500308 864328759 948540327 327388761 519772310 60074233 309262726 239060301 732370957 106983158 590614908 941001120 722368993 373971817 715663234 360419246 283361914 236072971 142813106 69373672 751377275 482470633 620271521 436335793 918693959 538174866 878829000 497495401 246360024 310580886 688194246 459402119 347018604 160420770 848971125 446232428 842697851 762051314 292432638 131415007 108014713 657102890 331265766 551399526 865480235 105669610 977701550 11609798 169365082 762130008 159153019 60526182 258569231 49720024 802634579 17097818 174723060 874728123 734913717 691452658 288990486 315819864 897684330 650392126 292785972 131435239 772712344 393269781 855074053 824194825 91990 125969527 983562302 443370841 905112143 718561989 94797865 980611999 106515955 896044370 862131569 161956128 579554121 169138358 825221636 141089881 464097345 363675075 904182666 933453158 487483603 107370032 438739124 161306024 767108690 266186379 41651845 890775093 817070400 955260157 957874648 987101417 658112165 247584740 270009274 95169828 185685957 444338819 37704292 952597073 6681292 869810804 422769037 124334078 137613183 777015347 163352726 596088776 803979590 102207839 462186666 190910071 625309485 394666746 686384360 868607590 564292398 942960577 258877868 707709384 885219566 173678499 718976721 765354048 117972165 868542888 757975558 219608861 220287146 356549073 201938062 566605384 139568577 262208919 128629297 376397374 7223238 830982517 837064262 515384805 34687043 641789279 301966551 806089757 427420407 177025613 76830542 404207767 284255112 582888852 255757526 645508156 372239662 890550459 43065116 668700175 526166 617013385 114538697 427619072 866591316 680064897 999982379 309037176 123761662 941268614 200951716 632399328 431255479 444978725 991879359 870298560 918103172 743427546 630020261 169257911 790263436 421938521 373984201 48210109 639465194 571140910 83642778 314785833 383471177 845905941 250058163 179511112 130917179 887059151 689694003 169492043 336411914 836470045 514931149 401795194 396653322 463663850 220540445 75765263 178090369 361846159 899630182 452240987 915504462 597157416 3872555 862549922 401031707 767070042 744173903 808714873 957601122 547800241 85543897 784068401 984341748 885743543 907726339 48517583 973590232 417853558 595801319 181200014 474649910 731937602 949045173 59035439 821237396 437900680 15587862 194330997 266709200 895402076 482434686 239858548 623869199 87274535 702824816 23404833 239781473 204411607 795204394 66432939 256377659 559075512 613869762 54314372 902326991 263436298 60379950 816337609 538954770 663649407 661954461 685262428 204840808 179224084 193670257 574557224 129947329 135155107 843432550 338650349 293846579 301883751 113964411 388645342 733392943 643856275 752292998 288026601 768244111 754397296 858927060 970799897 401804103 714843233 695896761 745663065 917049042 863717986 610892249 236362281 506272726 601108953 675999977 662440652 502098084 748037242 215137150 228813234 664229870 548211175 927187642 279157822 960513606 911653215 889892162 691509399 716486536 499988219 484390970 759108627 347234594 84112062 901023041 266144362 395619677 851099050 858111432 225062529 891121384 848232043 730030045 721868954 554040236 992025085 904204238 122131077 590430065 399517340 261419668 187300502 659613540 776399986 980325983 127863639 554674329 623821694 529320506 614995263 589788841 555606816 284403034 372590370 322112432 416715192 394664586 354992378 948966698 818230604 64069338 53262250 308165807 942879005 635163319 166171918 98857398 873933399 54043133 350381778 266893052 668051318 282900559 401507283 688195746 554064671 188357914 819035620 464872423 813996166 861133769 980269 495031257 776401681 117526212 461556661 623982555 395164497 695640628 412183041 389717017 984791737 675904321 767917646 263274565 148857182 488664953 481924023 571399281 266752745 992353685 951906571 481741170 368486751 567945514 937277165 115549867 9801300 717217599 185843181 616640854 888487202 28509726 424676969 115679502 232368359 953389197 355374302 402071414 331162519 822938708 727458593 627096455 814037784 282122009 505147194 860294356 406619303 732607323 570350535 173887279 403786033 969100043 360748636 784580301 99895227 577788750 289469659 230032836 314441279 623530951 549771549 580242645 754479862 916054052 992762506 436747542 401699275 858834058 175055484 403674622 23558917 592846635 405457180 975218423 911561760 482436178 786271193 510218884 338180561 868239836 110801184 909721251 481287710 208686685 187450835 7674470 549705252 200028421 523529984 410518927 709439398 888973074 912717269 752093925 538090871 856636796 682911389 373521912 95678963 895381785 175522206 583196592 580485696 691554826 61882448 296191791 283679832 46230700 149651016 504821966 326435750 815610202 530077472 775048107 323773690 632727011 626772303 315047877 356168601 978852570 262816170 549726462 770181827 525954218 938151866 393027135 843298522 677650338 484108981 928119333 724684134 778581485 64677596 127284081 150327934 963702105 61033540 756210862 980700805 221496746 284962975 719701574 568225860 531583723 549578486 298930250 123090364 508526808 461915293 451616354 585445663 600716487 448552595 60540441 564984509 815035455 333215523 48399407 34320412 721719112 899122712 20505511 983539795 15879795 203091634 494224539 523103775 730270882 973399518 309570880 112763712 384087746 762024731 959943454 290683706 281789894 329985870 433780625 709732529 177753807 645721902 639433633 881274315 669663292 531357069 649314139 364216318 238474725 758754028 915375899 331303868 919877911 112941367 703055269 728342608 898409795 549969356 345206666 146109147 253761628 743512974 257593353 855629768 640240925 626876084 898879356 940642344 949587343 640397554 116010759 12839615 746398995 266275470 4045953 116818130 6506958 636481931 232230256 8379816 155309202 167563416 316539383 347817507 671361846 454049275 616031878 326850347 723896560 597279503 719909022 366498 945436916 22905841 317969749 240760726 482705867 147585145 540061981 877499976 123820066 728507649 929236877 508579532 554813194 263786338 387969848 317598630 108298797 921844964 846166053 652187885 119763541 529642349 420828493 361413672 283200645 321641461 13359478 731523665 955117111 933969362 876817672 535140160 195792672 694577716 841048946 842855615 322429101 949141616 792580990 483179257 778041610 963544555 327163398 767111773 501175124 544335562 644704471 898564953 303078492 63503297 479614591 175875663 279876177 775326897 356502403 707774671 105223387 191325621 170204082 347092858 412969337 554893808 259735249 798095090 596082660 488466719 415688150 203875851 88492666 252212184 363980580 118614925 312779172 840731029 760028816 41304496 912824862 29724692 846693398 421567926 317795475 700762436 201595529 901882901 956058620 838460171 351508196 497192648 913956111 873034094 782712017 721108170 437639911 621144855 985441286 75652543 89657189 649069484 508050176 607466190 588560609 412823132 859939586 212510547 103095051 266714754 370970967 87300023 294287444 508857657 276824151 759186361 878278251 737448626 277157945 911930825 607306307 103067029 649032949 108465059 990423065 390445769 604064515 163205905 413320023 46897346 835906305 875538258 346764717 965992442 70507507 268685386 117521430 848916712 945942254 433999898 370422911 151214973 387296567 798622200 27798796 496318864 265328084 288893422 996463145 273515809 584804862 286833051 420627735 750838713 637354691 210577584 358468982 614408231 580141637 128290773 363948418 189670689 3583134 493287179 763737197 150359983 717327575 465473623 813944613 65331784 877905605 489284239 650299615 937937376 806340582 22288581 280003137 645320716 217900087 611481467 417226060 72534788 393190748 247956787 434947433 774926218 830362400 297414636 424193894 290423904 264577668 919576205 483958066 981315470 287502290 417536164 281389815 937628065 52103372 679588664 560881283 416078844 66919103 752952142 399163364 14730799 53986466 393392130 419279072 161427570 301639143 441643096 208856075 258155659 74157422 129509518 77342090 165833364 819627975 125952832 446484328 153724358 69437180 326209459 94547036 701105106 619352690 122602194 418629016 43938152 28964992 69321699 204620786 552113057 962844284 674459831 822841471 604629417 823322832 563110675 182742428 792447488 483545852 652805962 419622599 850977274 336244105 112716770 972586636 579985646 277921385 321695677 724771966 898094023 522147 382812294 671423016 153483255 438850069 569999167 574054823 197682362 34458579 72336894 951800206 266912807 109596284 619640628 533795923 873462829 995782031 87839064 111742775 171805004 224834435 410294382 674670840 513561732 62127820 474740447 982641451 920677187 201485435 782962167 45502420 507353563 132220900 448381973 477654376 714908776 83087225 225208568 262206208 412011743 561970082 101351945 728502284 923215484 595182685 636909442 677863797 560877832 954328998 751717641 335747982 912165788 87365117 472848687 253328112 140924551 203343783 344590264 900482198 940874977 933524210 295314972 534481492 916520175 691202928 311070536 390582338 551767593 964229340 934997350 813611946 208942596 264148291 805885316 893350772 277161631 984517804 934760496 248661394 472949904 154577831 638033510 303096122 276520577 579153170 814577160 930661242 920944260 726847655 419073295 162547005 62861335 872237480 673429179 631788672 619703011 546318437 916797859 746023130 279935342 433778387 516562112 776034029 86996161 120966824 994026188 21803605 339899915 229011066 663383980 631812108 105383812 956774141 34308046 113754868 838707419 863031289 554286349 956442161 931725725 317352330 96591505 771228429 116687242 497322978 851432286 200742424 208837917 881407661 881499410 45332751 560837984 462564231 434611866 682035969 830758450 26463261 311378434 868666370 909702615 83082803 835335485 721050300 261070599 409830232 253817365 185009229 793331972 426357416 978516279 927927759 647335729 797883034 338830972 546655770 478371663 303549558 683971976 263629406 502875600 562134220 991388005 41082870 49372090 468706780 27628789 553483032 559874039 662770772 719929184 456251973 191013351 332493954 501278936 586733505 262701430 227050432 361756915 95726662 667374623 767699353 599095806 743129472 155823762 734688722 661971668 855753276 627946303 523680930 748605220 901672153 867423712 77546162 491462293 569303030 29348216 57452253 80762256 413866902 869003418 26912616 219201201 502885070 750404832 484241160 230945171 304207226 496098479 882941936 98577570 807837686 11230591 35223661 319873677 902294716 417707605 302934924 282801195 867626791 938866610 683881478 285514900 555904733 937086710 353274228 473066113 955278368 746836788 299873154 441300409 181876126 192175359 164736484 500648276 355257343 494569160 431214491 221392814 865079248 522105948 757920242 970674991 607716621 871083457 365649697 38835827 113900767 327981718 206926090 808313046 493152548 701496466 765932839 595349540 637559602 876566808 317024969 833461906 589411802 156902252 745881656 402765021 112811023 363404636 613450390 474213779 675660574 786632408 513231158 756996028 424430368 232703894 329032734 528356669 767449242 524768228 792994209 857291124 323325067 269207007 206024764 378460463 964076172 665094073 247822498 685005736 868707360 777594838 634503877 124412831 686209279 532168879 718859118 868682288 145926135 756991636 28291677 659759002 581258273 383810411 661666730 260726861 439039647 944368583 862459337 284794569 326708742 676525327 891360464 712522256 744977510 498880309 288080817 987093605 651057636 236298887 155717132 204774398 517736047 749020239 605680029 179962347 775944950 649207526 409880807 461935958 485927728 435127115 662676062 505602272 776817163 559140293 44041629 749269702 101891060 832032885 341852764 779747547 598484173 880469846 724513879 763990019 973723748 77452386 571063731 966624432 229088388 380773311 497844555 9914179 982819514 41150482 908666907 967682291 999281301 620705040 331108205 517542942 797558308 427286275 224493065 953994433 921117326 721719339 21905487 616064948 297717615 747896360 527278934 378673414 272940412 73280395 23868808 670483914 781035474 634960145 433046503 476002360 483653618 322966846 374960485 832467243 296837243 38526398 518669479 210643831 594099353 936087218 975330999 403421981 439269121 997642006 78505394 838524460 321452959 956822893 367932918 491347906 232093429 748877471 664658583 170880322 503151799 592782191 963676785 176781446 962568276 275777544 671398706 269058949 910889267 816275397 260057075 488299654 64806660 763510346 696708082 275439691 640522745 910924756 325952009 487171658 490539736 669974586 221258944 999433567 283485431 382779251 383810347 198167880 26101840 237112973 487140977 181866310 526395818 762763219 576122527 289665940 221929601 576822383 279315514 812795145 988360836 891822967 612549446 383701460 702263755 60413304 679289234 142497019 108583374 62324546 1001996955 176943841 790140052 422118223 894949253 575325416 429733828 879359410 146098949 853542785 210684922 499256861 814194696 625628285 707069280 210565714 661037772 567278036 963275501 614505679 54441644 256521034 773472064 628219516 387601918 837134584 236452578 865625636 647719241 130397059 9850183 288802766 679569392 360659717 407253622 526049309 287997518 29817681 47940582 180461754 866480565 19235083 642641689 526010597 204710112 947230440 497315280 662254640 437170468 630365848 316629554 873869832 592737464 768380980 95478505 286059158 826132139 667504067 184274557 765927927 395702352 829660701 354431644 949268299 283323510 746826874 507953796 151479771 889689977 475720812 66250669 498871885 765385293 523513364 593679782 392012700 442740721 644296017 870234558 264427996 735107567 69744851 734978701 415955049 489503270 377961205 5396344 159987214 132513411 375033757 152416915 93826568 553372605 16104043 527279370 824300774 333974276 827503183 322449053 839488470 407832186 775848441 138674676 778614776 844344630 374309369 750562814 172786108 325000574 605811203 804560557 971574434 108731272 146444670 465907349 510559897 716122040 870713003 279582820 449232912 74949966 896087575 141553660 141200889 110142727 609601548 518221071 270869848 198491115 407534794 495543170 562225831 695724670 406405 239156808 919256835 40449148 331305025 165351775 984841185 877881757 90234179 950300044 38885841 89595392 682818386 583098821 849534096 364331718 525625350 156712569 139037021 760299583 27344535 370683192 180001663 510000476 781623734 238461805 543674751 600194142 640848068 615753756 491444181 228660513 540175876 791182714 368356318 847479385 241475982 253582111 364208948 166371112 173646289 419618042 342306307 919278898 993029061 171290021 284026834 275215654 756432397 183336137 448923793 209870208 557304419 725568454 103317863 135271259 76115809 950896232 449624580 460948831 660105658 190788999 89439792 659006841 546321663 780754710 783069172 20390358 770032397 955101189 726369147 898203339 675499100 534838130 187706353 458802279 515760939 963873569 617174388 634052537 800433408 492434985 436617687 152453411 341768110 43380336 515756889 734037382 355062946 67232765 89029011 731203601 905029399 272203169 869777950 717841428 294448635 384790819 601246618 558864795 934594369 867580008 842495385 882140362 144190961 601118616 310569452 504316972 897574059 892017140 84729729 789410979 41751855 52675805 54346581 812144447 747805828 887973359 682113006 46712525 133678705 351313710 719322529 287967378 319778781 997853225 390513457 790901672 981136253 737617171 77268685 129779741 10875804 491548936 303207318 214575327 861565508 503498734 54713994 959341755 589479425 429912889 404390161 157169353 392287606 320583297 197822266 415125073 798330601 407973696 497525956 401069523 714239824 661059043 543195932 105133380 886614950 978760635 642429698 871260330 511062805 310552239 523878800 425859909 405603486 36067937 721635020 971049126 192103557 823620858 12695316 586085908 861012091 268269632 361597339 687393430 449141171 894664658 43754084 50408521 420678078 654957299 668746064 732327007 358044916 844618856 4653516 498902650 171665432 345765810 8321884 257841531 810167610 453506357 125830611 483074560 856488470 210135131 120442802 467966826 337906051 210952736 341987900 471946518 119940444 760521542 783415730 215709620 907429855 438208209 49644378 461373375 928692319 512073000 91009915 885927873 369087911 902575704 634271364 211666829 14726028 566129374 895991777 104113379 38528481 925428280 31630113 387420411 248862106 343739799 293829559 469024659 28354913 193997282 400093058 64725647 362949269 288206342 642305678 732167694 266287278 654798090 17786193 615255671 266979796 525466913 312141128 587762364 866571714 939005647 155362662 5019030 416673401 193005899 667736046 518545649 193432599 594470365 91819285 330035137 809171576 506695896 240071523 1001809855 750061987 523689346 513526085 440616642 874749787 49970180 990800774 1000946689 724236852 282428817 456793140 976414073 730563619 566416172 886515878 893182063 513499628 12646903 888000008 117987060 999176120 211322562 404027044 839571473 178697501 724589264 267243292 66028883 145312560 714012006 170441584 407235578 399256974 67103190 925064527 634206304 90981973 870920125 884340088 60978654 319434250 453999433 93810432 392181704 634989186 513865684 233401730 692639494 65397888 717692650 27558190 29345436 530848174 301352456 513444879 787807107 126415293 751200611 622410180 420762643 404284371 996405320 795877291 941412555 822528139 7736054 324285620 684573533 51176835 433565767 672516934 773971485 484569720 822587828 415441398 188880766 902985325 478744737 25287521 285281704 884846749 182089191 650697550 911122228 335788835 501692892 600371484 832255961 180156979 762001073 874388700 604507041 306579003 232750634 230978974 607763750 400977047 3692651 444980563 49841994 361162060 929085819 110429160 537714153 170535493 909730585 395462476 573511252 321097198 744922270 683741403 42353307 392497833 561708070 998292044 659530905 912330931 801446078 627201407 283123863 374468482 623531015 882085374 337791548 466146175 745903992 336118681 488094556 45827314 252632438 55192012 156513274 312275934 92076461 157387569 768047788 157459702 555349421 211000827 262101622 206711555 237659575 436563634 183486204 485515480 511104668 651832527 642935764 484213574 250597278 478956152 120101723 136906506 784502432 720837935 434098653 215222302 839296227 612289773 445046393 254225861 166925664 691276513 199962185 925271904 98990025 975977636 181703435 860702663 720622053 306432733 580065173 169872439 531040982 590415951 382462226 836178173 327718372 347887251 791823572 720802725 690499412 689918653 819826585 966738504 667564188 575997358 398286955 564657297 827129026 175292307 821472858 239680862 885103552 737797089 540950724 828309594 463515377 304093170 1000383522 744354247 396946902 862928065 811760663 50548277 856103599 302680 578776733 323218260 583981681 864818233 884238775 780466969 311045839 336747025 127143510 615593199 487376229 406990731 780620542 866487619 575375402 123085744 268231345 731927603 450569227 248900375 576539091 42303026 392952699 530030834 509690878 478698871 518508486 989975626 971326409 977943001 755158948 124916249 993981406 206878435 948070228 246884680 255294528 446547311 50172648 47191023 740832410 972676382 327388161 241964047 489323235 928451417 281895284 132901279 775607772 61424995 991287815 112678309 735782599 757803260 943081093 292002753 408443417 632473059 469206936 533186146 684873532 265048923 59282933 760271926 937763870 292424078 610606732 392773815 922502073 977268061 789947940 357701506 961008368 232480371 243939334 594382268 835079076 596587987 951414437 89498922 440462926 864334488 92070522 360985667 691923108 892402331 609336688 822536551 652005374 655502777 9279361 907209620 495742560 945499581 600544010 363215054 946084617 616859747 460529991 878504209 292867940 609640805 324343511 564530614 349401664 114440549 439566925 656600224 517718202 290658996 970578384 640242224 166262406 11408945 569320504 837177621 725795822 414136469 34600303 348461189 450648787 180448000 692741157 12814502 500654842 465068175 962948264 877163915 926739796 360982920 372380521 654994325 951134876 750199133 961706973 977077689 912059817 177302079 808881897 275409536 978633146 521223762 544657305 926593727 857433820 681879106 254933988 877879263 875033817 925888238 482896819 985955341 157841902 535500748 440357874 738935343 876974573 176899261 422866826 628531778 433579444 723399086 883574131 925118390 837391485 451700228 823460654 652297570 742954953 316189879 632798287 432248080 754078926 646804395 154191537 970280427 635370885 152412873 9150187 542799854 851295323 931826752 55998197 894041691 58210215 937042887 18896152 127236901 946368004 141028613 883478512 805496615 343302367 672478013 542475596 753962389 997009107 905950555 875352433 782963175 973773634 657016812 260904448 100452488 619057500 826466430 968852581 286839371 414167034 315031907 551136270 883486692 612482510 14973402 922436921 168496168 470347056 851219370 591302318 80785971 210707967 928710883 836391706 327839236 727241373 952433870 689949995 5431818 845601360 419933935 452516789 618843801 784864759 539622401 813125449 84047651 393020405 802618403 989354463 653886907 665257726 637086659 650717588 261607257 727155285 482483471 876486374 896185252 627945907 731855241 295601264 219030942 634728274 867339356 311549009 427963955 21018405 908862427 1001832865 989565728 548210293 241767688 904002019 202253534 148790582 44762938 236028019 513950667 746215484 884403729 567529373 838652755 718526744 106599222 80091601 113470275 525834307 173069835 834170308 759893241 457660107 242123096 495165305 862611879 967820755 107753038 787902716 587927027 714904580 371870910 200898984 53092820 94716760 357045556 112179417 584824235 607203723 673304222 973300353 883592166 248064219 517979867 336077200 697245794 517038236 405766526 330945766 53118850 498897481 948517945 947436199 465695850 477428339 993064137 257454082 264294887 383813680 649913256 635297228 932134519 559650676 218350443 221499565 374474639 787350429 356875036 952896212 826333352 692839167 366542145 156771407 513743715 673175527 204132668 56743207 139470283 927858075 590153380 763256295 16717214 441334452 956380456 495704566 884296543 361945544 9172677 374063350 589258976 351384286 383144143 491764519 744745805 252905577 80314070 885434327 176962673 144972324 538912520 727123795 879968171 139641522 759141020 952874293 114607311 325603237 442348515 198557617 77401688 794124333 709851814 362746404 482173420 404331330 549234437 243424883 827280655 92953163 510535977 540435844 904047131 942243120 744482088 101444467 70559974 349157978 766796806 248998885 283012916 729928013 371298986 866314581 888546208 225395560 34363799 458041592 299924207 403382586 394160290 104658029 470801035 26770033 965912806 363365286 829161290 990903022 259485399 944881950 288035733 597615512 282340044 757702638 437663254 50685767 244094435 959425573 833935492 516524615 434913898 480364167 543164890 387367411 109407321 976600292 417445441 897026537 305293583 181145340 584683176 194819706 992713713 408235424 514693336 665202262 847311196 865360768 145890888 93959395 543436063 242330142 267131868 394400592 293677283 893719497 932290689 7165375 525898608 520442854 745481930 975718434 946450088 307704331 488010374 903377532 989919401 648271522 265647299 831353020 188309633 697601461 250262083 244676433 942124000 605148010 738199463 938710347 850332186 916172987 464426583 497015068 9915442 659420276 729382183 439599586 622680046 240805821 502115126 582057986 739550031 396902626 769251427 23685548 764809587 764009365 408574711 512649098 689595192 147300674 540343088 380437142 66376826 595260835 37627888 440465000 654234094 830990468 793614125 918442570 537050088 401979607 811234240 278889161 518672529 837433655 327724594 691045460 868648217 460339706 661732999 355958272 199760273 768023110 597057157 385902917 969903424 664361811 966773949 993384943 124212800 652176062 418322614 511339776 613840171 445629700 211950176 82588509 83916044 11171343 400335585 772097557 2966445 331100050 526278677 588153400 798079584 952479899 723375416 493498949 826196 122591934 997662629 426365447 671040923 440260840 725949408 557995913 397261174 406282775 178396249 973521589 826831139 404767061 682303928 891233677 280353025 957278501 601994562 30069030 903131034 821684156 17707890 879314223 847616816 48337640 849759646 870902655 630986704 194801923 727743118 183909025 425377695 520521842 33183240 666705406 461669906 386749340 605552009 35588241 899557026 560194384 972689582 196840176 90052746 247809886 669562854 362391091 480661224 959931779 191198988 995523637 517914611 53815837 638033800 696696589 77950812 892055810 298837502 921776151 139972198 186276129 232562911 812743587 957993355 443535172 144723409 207431936 230085210 346871963 764310063 209879029 790366066 529531141 491812994 246250398 61436777 1056526 988365788 465066722 626572650 606985497 629056417 9075231 765890965 274758250 892827679 713703200 851380264 66475336 615811419 489683826 976056174 248762199 79012757 615043248 520244165 147741272 464530823 574798463 958627996 905293097 416029461 570439191 882975286 374678129 956104793 271337805 849403245 318620051 694601053 865559480 412290331 259360877 24634181 8662050 871068652 819358746 779202375 346644631 425451163 296211253 884317200 688480203 388626997 425954153 107196097 731479894 94348433 515970841 87867856 951510185 524973095 219764191 956260524 703149229 390853989 304411203 223065002 921824720 196770081 138406829 639590611 892443085 464107418 799618738 449811336 482563106 446846286 90860662 813527044 787902674 63366442 856123706 186585038 285359259 293550984 635158966 631970068 860339112 246668719 848254877 751957771 131296329 822566188 928943119 234375554 915800810 845285308 552297467 248136056 310808802 188382521 884511327 206915699 979402693 884915451 43808490 217361116 744838702 869844207 395114588 313995591 547743656 993320726 195710590 324563284 83197886 932878705 571763428 413455887 369640136 989564828 769324283 245932424 638078735 341997187 832060691 242189753 350979125 431206714 932796467 17493401 802410642 553361794 950174622 140789921 402168525 56213067 119636245 667511638 973591640 16174189 888849356 603599852 205044241 71337383 568810359 182457345 909919370 755600086 532299681 292931647 516711863 932650259 776311771 157305859 813704574 393099197 609243170 269343137 420804725 723955097 492034685 70555109 939893823 334617807 249283159 140257780 696399942 27120976 801512382 378890895 592008815 202160341 706510561 287452915 607966499 75535790 697915623 611517900 653177752 25469690 762165375 419148050 38685312 262996269 911939558 377363927 364533633 796392090 137143940 970420022 383856715 916377865 313647817 918905599 804102329 695863152 694478124 7370194 914554911 112849769 912495352 840974247 228050458 653204203 806095900 714895163 499792487 9598537 237857165 602096361 600994812 37842945 250784661 731775654 213921641 405465660 395785548 227761507 340116301 308070697 215056962 103507598 854076578 380454321 435351721 481843768 224356684 241962047 647373165 593788801 314291083 778031541 849599361 210141715 697469103 708033787 72891880 436453395 213508852 344991439 91764221 426219928 581755714 253501533 407746247 752729096 109119278 793772611 376905335 646369783 774255632 290633592 479527494 578627584 792933469 106880608 453146939 528869742 170004747 710110446 516753303 1000421907 774359845 163388067 972613539 665812107 224859033 927014606 513196847 903412532 603210844 607543965 618836682 505210082 832860405 960696449 737821932 170908228 610321904 324191007 257951838 873607861 980151555 194925765 650485500 655136071 762827518 836588557 255512400 921269903 417438033 636701876 893456186 514320095 703226562 888776592 368181464 511984299 325945819 884616155 53367719 838185591 449034321 941515819 871495616 906470758 649950025 769950565 383043917 784207202 269187919 422247515 846541212 26833902 563149354 354365091 683202947 203589661 997337623 403764406 251900042 939507550 977253454 543924230 119476472 712124722 179124687 423421816 218730392 323814874 435861164 46586301 864732733 906072979 298277018 694957590 436871603 893370523 403982682 74826104 941478314 498889622 334412272 165686561 922981130 107657199 825943551 610245711 422813693 330010443 778704636 268038933 60423939 4523141 884368314 727773452 895145160 345493490 893245233 276305939 583731877 207438560 969180072 440901402 337800318 16148317 939771909 899598374 462737206 156507383 367180243 495217280 237755630 526919867 464622106 53807926 529282284 857323297 711439826 83494396 900928127 138108684 418188468 13878753 158613446 81246602 791271938 706092558 125147 519310707 925151369 110323490 242298113 183332114 418174535 305010784 321782194 156714241 468893466 246876281 924850250 568070774 857055226 683159352 536822324 19256201 158649020 980992129 147467073 278209338 153373119 486333948 559435976 230650648 703971651 79527172 699559109 669305012 300189044 763784063 98166536 215332619 594058947 707786239 248190099 396808550 999722202 242706075 509844207 335065947 693542975 982005992 720589777 596761187 490762464 908579510 11844327 652726997 119433691 659497682 625127214 910855170 755664028 493698545 621331533 845031255 842332557 274550466 466301195 331688265 379657487 758437247 219767380 85032778 226967076 887089053 483849412 732714144 565820939 181698390 949424328 338317307 417483027 345496889 414199109 778851590 360810327 23994159 928923751 880287097 384511967 242087960 262696644 349106822 946014941 862076411 271437301 794973278 693328001 440626773 781135279 190830407 63036322 1088674 492815030 617995760 70158308 96620326 412191785 63643321 29806551 537082853 30406590 126805475 926116842 79355035 130515962 390083693 659639628 864745314 355489322 700108228 737623827 877616015 814569438 484579162 923637897 64121145 856617294 112007428 573267436 145152767 942028945 353941792 571478176 986650564 16221118 628624551 384499515 121590741 609797342 570564153 672869481 726996231 712190098 132528881 598369155 338078639 581954844 308945463 285735572 640828376 829054357 343306192 728266096 92970652 305626748 687993459 733582060 771060178 50486526 624740096 858772222 425235010 72893844 782175806 179797363 643450237 773097875 729979450 757854814 954419286 479188188 955297003 235637944 99399773 885535362 496469734 765329676 109593652 623955135 377589998 560789030 399489306 673272834 942732911 452708862 357517278 253352116 275343597 198395244 578713276 851348759 215817116 24595575 668983232 883106893 712878564 612835021 305996821 68403701 717817166 980387293 674812422 57035297 910627503 831091856 689805840 2494257 624209834 551541711 186809017 52561219 56250467 788445782 253737745 790597672 257310482 140522731 427839920 226783256 763754792 807474829 686372105 978414736 19603763 167969567 363210650 351962107 904988076 453015435 673662027 66590047 424943772 742617405 375464509 555167110 364500059 90427307 774431364 449467234 900659728 948718163 340428811 627685373 802212352 587203445 6207057 834089491 310027586 656532941 209326947 59853503 748124054 67270040 725675891 479653838 645722239 173668967 345415928 625797724 90242739 283087515 243327225 241989464 838246566 112978989 14418598 259820231 983118834 366173352 683369494 363834225 299809609 957973080 789828067 441197696 270284730 762262004 201004528 571799406 895675792 92620287 811947599 951424668 828576190 994776234 527887919 438933175 37771202 517680537 927450981 326047849 427802278 172298509 111138801 798647404 448851828 652011492 539756208 280412464 227247757 365167802 864586519 9876273 773444620 864054248 644706789 132874015 400065039 951302354 912038390 648726711 458956715 526062992 77750608 721717307 223000178 448227343 626352689 850843791 254563496 507859645 671048956 799098372 227737269 58395565 329733121 399287681 404476897 54114963 985563262 661125253 934426466 956668186 386139440 298262607 134522677 672861286 237692898 543145837 91608209 800563403 861329197 894300383 928111768 591027294 649708566 857180322 792362136 78695816 700553994 141024711 749073395 466706629 126215900 528140134 188696453 241825662 529213229 303127214 384623336 944844698 376551585 915504561 193820769 320251001 527019979 409184284 512519542 974911018 933436318 786738866 879491420 32688559 872879670 908705189 622449749 272850734 366199628 685361754 194059568 717478439 45145793 579191282 161334006 149250175 158470366 198658931 201420561 801719414 518859623 284531591 157435377 602032630 279112824 655969516 280093565 101374532 638697290 854453856 108594539 738405609 706146623 205647968 456334388 323931428 872731604 376013556 498787629 243533677 814997756 264608247 313226709 746807323 285660628 783269282 507075738 269493869 93638336 662826867 334210471 743470973 597556483 974933545 111066148 171541780 248127448 974760337 486963730 476130973 777565532 190745563 534832104 700996189 385050022 142386118 272351777 309013644 467334078 993454343 820649706 874126212 73826750 975711177 156496676 300878579 980924634 366448397 787717909 442756268 527069307 282763263 663328923 779361251 943891596 860694123 758535140 896349269 195490404 338079962 621023209 151916211 30761074 762779027 955342329 368454337 354747055 560694177 109864170 636762604 103405037 329300991 319410134 596182554 173468555 525917906 938274250 879834433 563809282 185967205 448279846 713357114 42366499 681622917 109758913 666890511 760964188 529178056 850747203 803342186 417799256 204041725 335414328 425900834 442771755 318815941 511068045 638264334 940760733 462583271 792514740 4422528 290008033 692824907 358282784 234821125 741993710 825065604 836899257 762624434 292462908 380854554 359309939 78102604 395737076 415292222 809993881 228150801 303471278 987126921 760204283 680824942 796832492 7905075 650330032 886067788 74858519 552113848 187523657 147093752 318749848 231149153 916984547 265775388 681156757 191253664 480881649 646374841 606652892 528259513 661073345 350439178 910375495 186536288 594890343 122962771 919325941 440096254 439902231 549481612 146407693 881112090 583409444 160285700 745680296 470961662 805673348 944741041 53344380 895106776 129679179 48612108 225708001 264614062 986999380 784899970 795556047 884028317 768766394 885299041 813755055 21644140 895798305 830975922 964185486 425191193 518206035 257104228 294048667 165940755 351242775 549131831 998180156 240453880 596432903 507392868 801138515 782421535 94526905 599624935 762174503 915396644 342659753 706436555 296232298 496858966 698735933 609918909 474588259 196015256 535822359 301407301 583839695 312759446 326920754 707324677 863055457 844437296 91067726 172136241 17270484 529995179 712953355 807571908 901237327 504364901 245184145 310145520 34878379 104874006 531706468 164316936 306263097 852196463 720858848 801317841 517269821 901011444 499653 786045762 479355198 1001794653 61955545 45970862 707200324 807944259 467652451 195141709 349097084 760243373 844953239 782692062 335361460 943428278 720664118 204271521 747044002 818808688 743029600 318402592 445932402 176355017 866864378 654576710 346399634 549719560 706667512 190984288 863762720 483732724 94094473 624864206 315982888 992585891 984763054 883896762 824005540 570554306 44210860 350690614 57558948 299506259 855186573 758724435 278487387 88662648 677250943 789555461 158063097 64165910 815843535 721516413 908911747 708328021 271796147 885071218 972290437 453355885 30463047 619004014 554695373 343053133 523049795 340806456 964910684 375419025 628733120 145545388 869265456 874037832 139527949 569852047 239171274 549907461 1001447814 527045208 268029838 997537223 386874239 474839074 247794002 29208320 203012814 896087244 559724594 139548081 666531843 492921782 799690811 226017518 901880239 723844363 710836942 57151215 70208750 645470231 73560009 886846403 123976852 59360714 779603760 62557906 266188275 1071927 628082148 985177304 67753006 657876849 855170884 378639936 569556045 234282358 934542809 720161961 400402247 146669295 652954612 476834209 869123216 387581660 841793393 372467154 678216894 144932886 183909203 808754242 544626667 923731110 305156425 566646220 309294932 485091416 307443653 72092326 799199312 262134956 514517010 919046973 548461957 178204509 611765094 652978308 273370843 94082252 623332226 725896705 937578445 810506267 926894355 916473585 335260175 545482257 954871241 849349394 672351098 169959360 208937161 210789572 425283918 91776315 905264346 981431199 269762325 505994736 979416283 939695980 747132324 285955471 436702788 220296999 908452041 172296042 669870753 209847911 864433211 1002138873 418265410 324529251 478803659 614717644 103100123 166655671 20428693 268368826 675361020 398384812 553394563 773722167 790947087 619968974 950183762 270514400 912463725 708220714 545748550 214366176 584093822 579195621 324894601 386534172 684869475 575075654 716338157 402150629 787650180 883279583 807235572 411736970 463801908 941701688 266642827 24285947 978875739 488037121 706954111 674381033 449538022 441379552 474435272 749758537 957715244 119004735 695377142 890314357 114320230 298001343 306505151 730229440 662015957 942268510 463675267 846062428 138523641 976574842 790930348 250513665 754243392 333718011 960773686 859295021 474213308 907384336 739140937 790405084 615462540 440732555 354646669 939586488 809537784 12161800 830020106 772642336 832402723 161330914 85718868 861403414 737548906 58489620 501623132 833677657 905167779 383970286 214265609 711027631 288241857 998502000 719410340 937813130 511811254 53769951 673417460 873995281 31674598 718663532 456840829 877975723 398803297 61553263 93528563 389437141 910433661 16787085 653392978 327332733 940122500 793253119 881960291 209078989 128870581 537835265 145481290 300572163 917987226 528883490 309051971 795880938 225429194 528291233 697072379 108031488 855834924 874337011 828225935 308122941 269492534 750652252 197674902 803603358 865245315 899090420 795879188 809625568 223486442 436555554 455594520 154633968 370587859 598621361 419049206 97126227 185578181 549538853 837924787 537446080 398175651 90275583 727126154 290330241 829394545 809968166 815022009 686936289 365412270 475556204 334084847 470511294 398380172 137783871 612269100 721043670 552171106 988570680 727857896 803422203 880580334 10186024 422009760 146962083 458701886 575556427 467412914 80196443 516595164 776845078 264063022 278843041 951701743 334029139 130127840 861103681 571735926 487936129 256979046 952610699 51183167 672126004 904239874 211635033 869729075 848707685 45849349 395006693 414042635 410317893 948639652 329530486 200345728 501876557 124656771 801595909 639848543 877668628 130813106 953432754 234105695 684430140 627412729 849808657 60941521 844577947 359437095 733955864 328560005 703406636 717247173 989701441 809967830 328357480 717802938 810135249 128818327 151300917 270365160 109063094 676882409 148201517 770479845 135573467 795631336 804864977 256179408 455299433 427802148 165665515 648499735 511595350 142609854 489582127 692422003 953407316 27363582 503880682 828576450 50806653 865959154 8098300 961315283 353406974 712105930 474528200 987917546 730521202 537083350 797829913 575572168 29583665 592190282 891073234 824865856 332133608 880626022 543716383 672297394 274791554 83746603 610993698 367572244 316694769 499146906 114219529 362304506 875423431 10654300 436194393 586311324 213174846 908377183 537734819 206867719 369902194 736494170 236745620 994800879 391357097 931958053 279455467 164963012 487820621 729313530 819340811 447014877 83208676 293337570 452960602 583885237 874392648 760795217 593881697 636847370 926359374 307807962 509681879 661482699 775926933 799685682 758523684 291981915 415228609 674182068 882833853 756647421 398616826 697321056 143757738 115711324 346152171 315719321 357950822 508553647 511081916 303244053 250947476 751648108 801171832 958467805 770533470 730203838 129407632 617365909 967904210 346690745 354252505 893975271 83017022 645409166 56208215 525246692 157335076 50036286 828545215 730409546 377231006 156703835 631331793 811640877 674974875 709899104 712106734 955934340 417164631 84523559 778570738 851957887 441206776 400139938 882008068 418306065 217022611 194385369 731372921 737602580 332092858 44427988 588095242 436445207 726811570 754914494 822400951 683583058 698255879 494782301 306250641 318516231 655403309 412802937 621433127 990825422 664611105 187043709 794296316 500221736 871623170 790156626 229830377 156193033 593493532 806476409 687805288 314864752 677529073 311329816 124668424 255027926 537919721 368831628 771391777 575485355 607840138 839499679 901211758 319298981 86182921 703946635 887379528 74841789 210541569 271797657 319911188 826128939 813143001 704919227 627282018 767927214 52013657 758678020 315794186 919551724 816403037 555915972 577427897 903643409 409234208 120925674 435813875 392048797 541014217 657961058 881654985 576125148 430608062 585514563 492392337 671939701 490461847 123388242 60329080 922356065 642912745 188498434 41144966 646837837 204209463 522440288 561099558 314372184 448119089 668388418 231139872 609888323 149795348 335696270 380347823 503381425 318337887 873021822 582842444 724994515 958763106 349606785 835690523 382972959 862891292 677380952 961823196 800045726 743932729 333002242 911498548 354393349 3061347 698013372 632197874 676894606 893396796 249779005 270894385 702436347 792581073 524537358 800568764 962816067 321060989 560169923 424744445 858456731 621474263 304759661 806806721 621915323 142271735 33330702 702101160 98498305 281387454 614161999 993711875 155535007 894847945 950603217 686238155 437740992 639818672 392597975 733466891 171871808 320771291 13876287 64657631 603089730 4771276 495047861 182878985 237826126 372696420 670015962 819571389 307231594 925111284 891979435 422841746 216123411 440694136 910057184 893824765 529274424 568239521 53817476 321094089 158250170 105770843 218762162 951454073 511465416 387394430 180050919 741156523 292134218 194178311 67158026 423718830 561999361 826709962 446823075 296116470 87025203 644452960 210586187 794611043 958888044 534995026 902841521 564333869 598216643 338046786 967164205 964583832 895761046 336069246 999027609 896156741 401326206 98205384 514088685 536093886 37896799 189179359 396945914 97811901 927705980 327553813 195235445 361134951 387823493 556554498 49404347 330049479 407341917 944920695 612303321 866235071 968745592 631556030 926127539 869073716 701993090 172262538 13163178 961526833 71214490 824480201 155692552 453431478 427245518 336351029 248038349 219039941 340257882 687102137 372220097 777095463 931988029 33462783 260873532 392602683 374343309 874381133 791404745 772381694 547296220 963623178 468080370 466306081 608974054 709088517 454187918 713569009 860757362 986362641 619958729 439229196 327272222 632637561 85197264 668771936 967372169 499335710 413746828 29465666 569525816 668070751 298867260 557105614 440809188 53018236 134835186 577672713 551644878 676005859 918485717 723973239 923407110 497923768 648660002 441600104 405146891 884275419 908966446 755450359 322980319 266983858 983241891 320443221 584552849 590038697 573394443 442427601 191651163 515449424 766221226 8950710 217593376 564248827 608691013 634613362 616480147 215663274 556956995 907983334 430101987 793582442 32186255 619716315 995522106 98814369 711832470 762560595 360314318 691638624 346823441 453779407 462836632 564494338 244018995 374553517 743466295 574205831 891011777 476453176 321619533 841362350 979467904 502237173 365854067 835350490 680272253 796637485 951752965 418209373 344576273 57747502 603541313 498494099 866889465 191590200 612435289 9264667 16882462 237945273 903447824 288375437 600664982 76750666 960473975 661389343 694615056 933595094 479262394 253648689 173128200 555542413 989624805 83682967 754981395 548022298 728377293 948464140 683324556 474663324 247118063 935287510 125518208 106639929 650892866 426770304 20928897 355749796 761638792 536369759 95590902 782910591 950803117 906815434 745362042 90245552 837117157 533543646 321813771 654585363 11733335 459164310 699088657 631736315 649665411 534530351 889488231 119267254 198297638 687496448 88613131 418301673 836627755 527315691 582415869 601706078 721827605 137564594 279766281 600597550 479614045 219385251 970222926 823215001 151800974 772357208 56268177 729350471 963271723 937469979 795919333 863143516 392522888 826628764 12239397 16333069 258673987 242153956 327587166 513980514 392282926 853754835 102726045 871794114 113099737 620456199 230661945 672164379 423068092 901165228 67373550 122141258 181625334 873141286 626838994 893539399 471470918 185725761 479812725 800975864 630948563 800226343 983175277 417019144 258326808 715199918 117028699 735130230 737326952 130081029 916756845 907815107 723351228 293133184 258151690 567276923 95384311 680558824 931670586 100877324 665115837 84023296 37664435 373616660 550335202 554581198 123040557 927660347 931274330 246132416 680616315 922635828 77820733 989410892 56370814 756121740 360987409 70390478 738692225 927433251 172253862 739367045 720015119 488761858 41211124 69751904 909821131 642797714 352768628 493272217 17946662 304220037 244443503 50084035 734350255 92641894 433480953 908231221 218657912 884383895 409313835 812335968 481887930 315790047 450471201 345364157 628078955 905339159 368815943 409292106 281935622 602768321 347787954 853269207 435934020 832254462 349790763 559866166 954181528 54253385 505983909 994844198 946511357 378518522 81653733 538924486 826405487 907322186 357494149 446902093 636531789 377883645 507319868 234786416 546856556 291167335 377326184 258502152 868469140 226541244 345254520 730790277 633092841 744177801 204982888 337183306 911357234 270912280 802156545 848494595 734120305 728462125 60813314 507302891 41100436 949769293 179513666 445926085 438751785 145634435 667494790 782195558 229365901 817159108 956405882 644448662 673588428 790793605 921127739 810617771 310773272 792460286 422505081 523583646 671877636 383185994 249841184 354543843 342315034 141334719 434717219 227313294 940642601 274157321 374381510 522530833 276559203 226140329 7350283 298933439 181808860 846904241 878949402 162265323 752678250 883418521 476979734 86011191 826044950 888646792 761956580 320114589 930584492 747636088 816384867 967210325 81715166 200168469 137135488 79595074 258045768 934492657 253955118 737678949 130077732 628889273 384071297 519420222 14736914 535312548 560883551 760009344 291636420 628759380 376768052 31382131 895657623 28867714 746039692 918452631 207982008 933523908 786076335 330869147 660106857 699388089 855510830 880406606 5044094 537745138 539008520 565083267 973784410 102623909 485395133 277545395 387192319 344950017 503332699 952616769 235603161 849317095 922595723 762779104 287242116 10792036 262520382 128441968 870762937 790191104 610740130 716600684 943407336 774946301 122942899 352300900 307595272 293773753 466351550 399171205 840131110 924768552 93823680 715940529 784512568 427419383 518740375 821414286 837478681 192165475 603673167 220799643 872131660 361239458 887021027 801255990 992396208 581849083 360804830 829577954 309771202 816734618 864444333 787360653 598121078 436529344 308718904 622650931 469185715 413871386 372219859 275775014 543179251 221261142 537039290 597874459 125038953 155341112 246719848 461540162 427999357 781073170 267957329 250159382 818880207 132522641 712709948 867628003 979384149 479793114 886689108 961869737 412535295 870192281 901900679 222650180 471763084 874467940 907402778 554133120 725286538 218887222 336929148 266896886 144793396 234018987 150475696 114535853 430964677 211174583 524814569 266986867 107137147 206291690 149610824 364437730 659836705 353225697 579971937 730572972 997533123 709041462 259655078 752421612 890139872 705776926 239897156 614631361 505670844 717810191 49665647 688855972 371796362 586647233 242506726 802802739 914229044 682381304 812781664 652801024 722912983 571334365 18077757 898703212 216353112 425972094 801944305 510626569 790616918 912384603 710773418 782979688 655753391 667381475 786521190 988199442 266135902 937096340 255492477 724113887 409519137 896591263 420844076 119267496 678075173 617217497 332569734 372201939 771853589 796577456 919068911 509713478 410556768 527627133 563217361 823090539 62525029 562285604 826959317 335150220 420707450 411777855 525160555 454927082 280992641 497063318 848204462 357064579 838316176 984857235 875135865 118145791 929394760 282425534 87989426 668148388 142889737 792905690 732111778 200426285 210536734 121310020 156105951 965598001 656950878 44877414 790485619 270578680 936715315 657120252 914209812 309018641 979545438 965730476 44480158 37448478 864980048 949081811 590441345 42735899 471781674 300859644 629174227 666828319 165374654 741285644 413138220 726776145 374531639 416817749 355423037 634090384 578242424 509309714 448513750 331263422 979981385 840540142 925876282 363190930 235137933 279806360 221220597 723900787 240489249 897565599 755771920 33068268 288631591 432314293 536188063 661915997 918297715 992898558 232331331 806689377 811142189 852909614 658770881 534158458 932381553 536363167 491839443 538972303 24449826 708464322 30570417 196937524 793435152 411987664 115280139 135167588 103866540 146097529 862392646 195342314 770488369 179307485 990157925 191310745 294533568 221656763 72944341 988852334 564569998 887847486 45035717 651225259 511563225 820520924 944632601 263837821 354988394 423040528 847303488 164710448 857332489 749580097 106584280 128365528 252041448 849617641 944759440 337764686 272854688 426698758 650061259 980416904 903571370 667671146 770997409 875862093 947462316 882346276 278773446 927122711 209868705 33224448 236735232 650463285 967088869 470953722 159712495 727552151 464716652 695176986 62481914 914023428 157910103 975887565 969351912 625843692 866926214 775420323 627259148 754334209 274231798 570342066 510733435 620765053 250427696 312449278 555745402 759315772 83505111 255598771 730285834 541421266 483001486 608234425 593118315 277203591 87620738 996638242 822011627 909078978 571431917 113752346 815390276 636211689 106655504 628592666 152084252 681748390 767939940 422154735 420798682 126841197 418178708 487798525 920709433 303139578 354493416 642009703 330368382 615392005 255449204 19274279 103204496 588279401 712813346 174895978 203423925 792973905 710940995 533163772 478755057 431743661 351182856 604440709 295154487 860595919 19315355 972054736 686883136 804674531 579875039 865357707 92418644 757875269 497932596 758141531 47412100 703444780 128239478 145127175 198693292 449036322 729054646 661932590 602768016 929523740 434403738 917761812 585621377 653095175 272257555 248369644 699682990 626088980 652259766 540707091 63131977 980224215 72828959 991441450 602197400 305973981 739132912 571557155 97317025 415459340 784027337 552134775 571328995 574771007 700153487 76439333 751868851 144992860 685497943 451134644 837214835 860888125 178724935 90131676 549407416 812424427 19479398 806759836 412645847 574816411 853462624 986729963 76111098 691417576 898730988 119160092 948295056 36115372 588097786 916775964 803870459 914079483 989209241 506526432 964874564 55921049 753109331 980003280 853079831 631779894 227076910 782374454 772203793 899553396 296458013 360137969 110209369 90133413 106718137 800914416 423950855 275789512 160454600 566122481 945765861 416748031 795023126 985904689 277998169 619266549 989086427 381351156 919047897 513169583 255191235 477656804 210645187 32692620 250799103 283284241 568996404 394332542 273118731 304461375 17440704 457499020 454695539 586050778 522323929 106463985 244797799 205332238 818054193 342340494 798403912 983010940 968896946 761037429 479619312 284816740 672674734 615870827 358327639 793319108 669220867 732917004 968962327 231125950 105376951 372096482 22891972 47704229 355208706 890938305 691874231 844583170 11490145 249014672 960430973 297380039 604825666 122039480 645025299 541745457 367979471 719217255 813499507 846411169 875061894 586054970 356701627 475649039 301657625 486808951 189411311 926550607 500648314 8109055 591105285 971571112 759087790 933521565 894738363 994800423 328778165 400470901 670100414 154659144 79496920 879563456 509382651 653911448 301757011 952063531 825728587 53057350 935480864 909992903 280911677 394888063 885474906 573513598 87737975 179064891 820296460 996323546 985098838 169079730 104119144 641805617 574082363 273143711 422427349 512676113 458736839 720181501 433676739 262684495 807998331 265177379 55608890 915040530 839794916 905943923 205236470 645043578 21560331 970292029 282395865 843372238 359779164 302549099 847846856 168973420 290893752 210856203 514921155 583435256 2844035 130386643 242998331 956314376 858796899 928792701 969249828 871684369 930427115 447588810 134825997 378550118 138462357 673529517 926771209 656086119 461143744 676982598 187487240 726025856 63054534 928063727 7826931 394494087 334885943 448493081 236346853 567058018 191437693 557627337 868255156 426367756 43366715 44323214 185151850 672934888 35907607 828905504 524177112 687413198 752664898 105331812 496508723 400471688 903317325 1000748850 405257677 415438775 812188354 30653897 750785689 152353738 493670086 62040269 678637582 568197145 310944842 104242093 65255792 999302092 304115358 384640632 855385883 61709212 695344319 473359849 141398519 38251339 228738132 192719514 983650271 620888114 808327929 591042713 568845131 587179752 987731422 440215453 616918347 738336945 488138297 972386836 599422098 134143928 453288070 665804978 407230027 625886582 282533278 328242719 340211065 106727709 31455043 878297503 89238268 40394176 416635620 950270367 380752276 75606636 218740526 538163975 231734595 862016052 384744137 171488735 432882312 454204057 32970649 180687687 640652534 681691117 248751148 520379635 111674471 58911567 155203088 957210442 152655648 922126833 688016137 706359933 257750426 438289678 959995265 81376144 311133091 605678980 38537740 652427011 280524943 701936432 899201109 995110968 510999705 273421539 780460600 949040954 311285246 76616372 704586168 432973739 938103989 999464191 591764265 267775475 452767079 292020722 641246111 406454870 887502556 957657600 875264120 738825569 803420901 213140421 766522173 111636949 649596523 571381764 18828862 13304553 375680199 224111117 864791672 670047622 448251801 230377398 27122850 997072117 463455245 11611357 895610823 901863638 98558147 359066822 446670431 352093028 796928785 392243838 920984113 210480893 824529371 532022287 610940470 280883554 400677304 938727587 30315486 457115938 410799205 892879270 949552010 493779435 275851453 351025976 252111445 323729524 450485795 103482913 328708613 32792792 45965743 730776221 16333039 301324650 611840111 298273951 449893554 762123449 476697340 741622549 398744981 42781662 825982273 885575117 339118767 888124802 612199107 613398012 161370839 143552581 963701624 981962599 538217523 793744122 991432800 310860134 651466327 817358608 154466306 220864296 667369076 264800938 685445922 875316273 352162389 342293737 99568891 721679708 417876881 341266679 937562699 211398548 620367887 927341584 27571281 998749608 981743441 13177720 46285833 450350251 186683601 617156426 236752113 585753150 956353826 584756524 611383679 117650083 29865205 139683593 874630016 624330795 980111386 962223847 298769065 309506638 320229175 585884481 656133113 584437036 872647851 407729531 15455848 236504368 557196163 587528537 943450747 575804985 216080081 105222194 629218871 960271913 394423571 717057670 637740902 532905004 412057007 204326094 490754413 226008315 140309284 188978747 594560363 394683447 350976039 391327304 523972233 365229350 509336910 600410894 777094226 12469405 664218153 490068537 763028006 347597870 992139129 975138502 232737770 612574164 341660636 655348526 972229435 759784505 349992852 72885090 560105238 138107971 961100169 6575050 422860008 731985126 177333277 744725585 306893519 780724398 572555101 846504588 384294154 748972592 155224940 668641311 367839116 929809261 520726673 174137218 216725156 608654297 663904228 162215202 734321873 927529655 211606362 849342950 161652838 379860176 48522131 173823517 601655563 998117141 666127400 612282527 380350298 133440982 224921755 730869171 737445966 766976896 246773904 475471119 746868564 980091257 107240402 146565008 647554604 637496537 939441533 955510818 659930477 262918182 439279943 16127650 842373481 565709182 932163075 166754542 278610562 1000480940 27689470 227400440 72338790 285259657 31229280 945765399 452897928 847557737 574400610 224216428 557104353 739862280 452728485 226308877 873424937 531051314 216725412 570486538 580857785 137492192 880863047 838476803 699449345 493811553 798102444 750595801 912533027 897758810 976365103 878522601 539073566 26850165 37711084 902730131 326511624 561827158 614253925 742219628 259326622 507267744 199689860 667535369 280797969 613293873 336089306 544326555 990904970 101299537 383765292 851713042 297671437 625546339 825371097 802890684 704387361 700029297 220192515 621202287 546972971 916049086 260898053 114105105 964247839 121408958 493708002 306403928 265488765 199864569 586530150 396054341 945416746 733403961 34801493 310112838 940578158 269322071 468232297 795184606 345169683 811301247 322026985 828476952 932892018 826090905 784328005 673997376 717868376 274846922 96253747 898745753 890935794 242417508 32938310 279878069 374027925 291364597 592327496 396588764 968166937 806947389 860062272 927668348 873903301 499317588 272862539 258141693 501716549 945630140 747499749 720277958 113010263 656652453 47102964 433441143 347018055 597424684 526492669 970951011 637463191 633091366 774523956 615343246 232843337 748139608 293276655 379973834 963644241 166569682 402130714 851285990 672498924 453453811 19273505 388506877 634181729 663225312 732567722 99023510 83753574 514363995 810118929 827666886 485185153 255567205 794325110 406971698 933989534 1487177 755959407 349675291 195861668 364073280 998939316 195399307 610950749 571520573 384954061 652913213 423527753 227748212 340129029 288427841 106003036 880035583 169258462 54833704 33851698 976805239 357190703 8512447 923219775 841756147 159927848 687196856 847066715 242939312 658037246 75853193 333774760 194290509 517333976 367397141 950890728 697739930 635650325 777318376 488643867 111608348 103192213 497836552 271089764 235469353 66976688 144557791 916207290 45840139 68611931 114071454 118824303 925448233 641944630 469848174 454506695 244898448 397548959 72530631 937165923 823863327 48625183 119134138 243864827 282760669 956760298 629893976 812927991 856605211 688461214 807544829 978973913 956689293 14920091 782557749 114837551 4824835 446250851 668262495 166626179 935610653 681767790 191519464 500634540 826010496 88741183 574770449 264163204 331904609 993945355 287090075 78598358 450364298 570077388 176309062 725090077 709413425 500607336 339136471 216908500 205995533 623477385 81341817 135587401 570960668 108171544 623575773 381708068 157272984 59715104 587110256 525294881 527376924 999961236 789923525 299516377 686629430 988853957 810038198 87452855 852911845 793328305 823624264 674743205 430161844 652110353 111928475 592199944 157258402 551891388 439081925 919797591 400550603 696880662 101932466 884153578 709830530 519750159 696091617 561093081 557793403 727768316 784999478 735453419 449959246 557878540 910303229 811813632 334640985 718424990 101964031 158753030 26397211 421785410 192994491 729529714 353072460 402507856 98315953 337310252 987059898 854081740 686637727 622925243 302089803 549395528 578285023 304261440 443126821 523993640 504420516 445399093 173824016 502637028 724399437 106456422 963198841 147479142 818611556 8135133 196179512 808456236 958084581 344935852 599201581 564493283 545018277 995013505 170354989 144021406 986844771 315092395 281618178 300722221 688646376 20421870 836844155 305382588 978176377 658554530 608090121 877635313 344943923 607332766 161338997 609292658 34675928 372242656 345259300 193243439 391985878 261749632 20593249 621422186 439836905 223576246 141283457 873846382 758115971 576687344 777689909 169653512 927795652 983362804 714989366 586648211 900492291 465536976 29983499 991176662 798834437 620664392 439649898 106525948 498438922 113066696 250648197 817236678 508165140 640107690 270541676 621359762 952630305 715916254 986298981 89982826 360659461 608277728 172720813 18062460 519426750 13464651 833299721 548081517 835863003 826738050 726722721 929160935 785116754 819368701 54920830 462427227 921089741 342200139 749522473 781914765 828259755 54189548 516975641 971368805 687352090 328737940 769400417 824983672 882861660 219384664 409166938 343994243 455621616 327189327 467423487 194864801 302693629 517994325 815662942 217422060 649357928 949838748 192349057 888241368 385236859 527528539 881477937 686963636 21502258 569128540 797980338 341629015 224738316 876538473 479017131 244532155 704449179 603654986 273016977 190157341 984952314 102246882 150670231 525447459 797661952 9511414 421886419 614256843 853339660 149602681 754371271 196499130 963058248 207748436 47416593 130863395 148304202 54515361 306839268 522611802 860272810 23306848 445297526 296801313 584876759 585215224 247437650 172124430 852935438 418377166 172213057 153057823 726860377 556602271 895997081 774899515 753923767 273948862 896013074 837742118 350032314 168330026 944529894 359783910 591594187 896173710 865736144 975751618 288691332 784397668 233439388 228280467 211162438 224898962 491105071 977784401 823423548 733097755 828511391 534596612 595289520 538273317 841795817 226203579 293990249 819984021 146404802 529528376 898952147 576268442 679961410 326463582 532047132 534874375 82203390 399602324 812031736 664796351 273794330 920678018 380152277 692757586 434003708 985589100 292219052 913355045 451550295 649282877 206675494 575920650 691413344 769888771 680220341 730822636 681229882 254065555 366205125 643930660 964494802 593110754 379690614 836162625 132218360 201195082 431202102 841745563 972317266 477894916 83121069 999542371 458113136 489560193 41145941 903469746 583636316 978343175 93731531 771201235 324764321 319492767 507665554 239200675 889672817 702235297 880528050 475198693 40327036 69126089 694408653 854264874 576497311 171826323 358895582 809824875 434471178 390023164 966210255 929197753 331800447 86070870 687008409 548054269 881808595 718671962 603851374 459978563 461248422 164652656 312202243 725489820 270449440 988439133 512554050 682341101 731266302 400322255 749845521 334034422 568459821 885185630 225191078 992971616 65535794 400859965 160043100 888885148 758444732 10787205 115261421 243431265 619875195 384701181 375387989 900399662 283259777 183215819 176121956 720699792 355384647 214005473 343562031 98313482 4308219 29764002 1000936913 955558831 244774743 187780165 329710403 262484511 857131155 312262226 320784513 302300410 76630392 779003738 381373396 848267558 896142979 648704989 513155081 25918080 399135258 159535011 407295841 523002409 356445345 159558130 677430301 920332678 126165929 825021755 602666187 897577162 76480781 340437199 953589264 63529538 986712036 85923585 107490728 621728324 985736468 102531655 164564600 22995661 396524251 983970712 423947736 561554031 429366370 351851021 236744694 840086887 131092707 694936307 287784165 313658950 756998021 177031709 554924293 637038409 391752555 729705561 213103458 640485010 810235812 827681345 953199212 317703877 818196843 314799508 985622215 203879000 171859823 575235037 71882623 820962308 165003116 75516565 739497509 769850027 639676409 462567223 640117309 591621122 959999591 43326507 991220375 961626303 349003455 481968910 540420338 523097 658694323 39334815 762925333 496552366 328462426 729672764 35896185 871276242 503099950 49855102 519531211 940127807 446002371 96624980 843914120 201571023 85667526 153010503 291304193 473229029 327127323 154478571 529600332 585349346 443219922 942049168 351172906 792677567 741778529 516846655 997735669 302896761 453036154 902494792 833352237 264120191 40762936 778540077 513370820 592510788 648506066 612210886 642713453 287826224 750784005 473858543 489428597 312682824 236928936 74758743 969732174 762752931 11471246 330709209 245543253 312677415 704726910 942033873 761954968 316061382 562385739 882763722 713961768 701973302 779329095 351056345 550297437 894913269 253279174 383949045 815610697 326370443 836384207 391724564 406603301 486047113 971021994 209137136 389900485 175937907 115945252 918142808 552406705 186313035 994648052 767660576 876944365 730885399 149737377 541564096 296821380 922526598 172491808 875476780 97093203 278477434 950917004 111245353 924322670 912816861 242569254 151960468 216919869 673010242 950368599 741060818 48405534 84445317 946858014 209508267 699155914 927538811 733601973 938455733 29446516 263112022 730357118 431922608 440891537 336211117 838225007 908590473 326628706 266749458 333813164 715247938 823896751 911350032 741294547 999692122 415884335 408469239 86413541 42150355 889964256 651373650 957457880 632166446 839497235 193347970 967606103 870654532 972940275 281840130 730183175 446095141 880958366 80439382 227080580 924172866 864642996 882793398 417608592 123130576 506713749 942147646 161717684 679176331 924533333 4177810 843109764 392125919 675091560 371954660 1002110631 598338849 542053564 358500899 390846323 250271288 191629304 25248780 837039084 968795953 91620718 714554769 121746754 530972256 260883407 946927916 765763398 35033346 442813631 475739074 612118985 53229387 527350507 230664700 890949524 812898755 420919237 239960252 902467757 859648906 290521715 908699456 609650337 541084597 301606055 624083843 887060537 57281179 760538593 97602171 347634204 862192054 159128143 112703330 841539616 362473125 119203882 582145994 354871182 409287530 938102265 511703427 209024915 884811916 143668638 683496424 488078117 796696750 14640589 285701943 123501418 58387587 191386063 300952379 193842044 474670675 408812990 500862813 223750118 463042452 107634820 225999981 620829436 714336221 684372538 578726542 648681239 836024124 429936350 789931907 298453332 549231069 698063549 360290155 650205751 580213518 952800783 167810038 43683215 598132847 663550335 551694327 293718261 387163029 583488754 98150257 24445809 905864407 370643900 872271488 659986077 352269089 142041573 437919218 687834436 851729736 543033934 977095103 273379099 553376686 53726327 366911929 325466913 321200944 152650169 230495386 866793914 525000835 865831706 723909258 130628579 760638997 966313515 986158910 39574465 119325897 804255397 573323239 905658973 483211346 855085322 716203574 513686140 542826017 881557054 705612204 414304919 891189120 591596478 876557561 652384667 684604492 206214412 83647116 8335826 767633942 733007908 309615726 894872027 781446559 932991985 935790231 911707261 206962139 210476682 222761680 744920039 284693517 731179929 395630392 491693992 981806718 132453826 915541576 528372270 46288577 2167841 93259442 99727758 533965233 882099723 69345993 689085635 263609141 360027648 504657797 255267706 631153213 90813119 801051446 754284836 49014647 733192960 16654830 370917664 868196226 999807195 590621650 347996692 309858708 729584791 890646560 273820386 99618953 689802865 72224591 343431468 342788455 190145416 291266841 908393969 338779748 637145145 106030682 607546505 66753980 459333774 11068300 387256626 160482573 910215938 585435199 867524675 473049677 990662282 39240790 263542759 340540753 777347452 337603616 844494963 942953588 279855046 256366070 830800381 428869321 362303963 970514922 230902895 625188292 607933248 240113089 902234173 226223046 505960736 83890954 549535052 81694415 896325778 74049608 300678054 401630328 144414232 925452621 393325021 618780640 438906273 849542624 4630856 960787983 88171180 928103517 462356937 432803817 309448187 147477985 717606057 323161674 679905353 643492378 202072560 170465495 455362296 291038575 21044000 645552523 218822973 838859941 15955363 463391447 104159451 865053686 345288706 139266936 865684232 982194113 476918840 966298747 728486472 990679190 132380062 528656871 537639590 593920424 185242616 412355177 16682781 405722126 736990741 129061167 954642050 296611495 616481391 407971103 595259313 467956594 486326762 410588311 533097745 351149323 452412471 96896635 385703167 813724736 980116788 104427470 739275189 120489152 1001317851 724338243 525866188 644814422 325480342 280577050 722321459 948323608 168010942 809402150 129003765 451532688 787444614 321160426 893843082 308372456 735689952 42305606 503658959 450822191 632049369 325445853 221491523 957955125 437288794 201646433 311981299 741067057 421166975 367798581 509538207 375927790 307932070 238321792 366282145 121309961 977857896 884128367 85721245 554874410 22524652 164765466 641168309 253665657 660670858 551377230 865001198 684412015 639045140 384974670 55908631 774394645 91785790 434972760 3654518 466558225 855337039 974029699 797051117 367720725 100251069 50647002 119409350 124119102 821251013 549080855 305324976 363059187 859664233 582368178 44724119 431917271 496293454 408872550 378845025 688733872 435601240 739326995 96951680 967262074 177846441 893025494 510819422 301545376 659916830 284785512 677680330 662806018 251621320 409732979 643943600 97752769 564919428 190135708 82659728 735304417 758355842 924774247 489490460 657492221 248441010 776967613 30446146 588752101 982767001 281183482 604271239 802179218 277197802 201327204 255008383 1182840 749283541 238685784 104697710 521290143 303323362 214583181 127893394 38931403 213449791 506727674 19771720 722539952 956789272 457447458 63241033 879033799 82692370 955222351 442366578 907462392 752438973 755631020 726793279 856597332 16206563 92468922 902611599 348654793 430842229 606899649 288676381 927471843 365791411 84545989 186779586 913642537 779807980 103722281 253560015 394704140 440202525 802187009 631313253 323569690 459943366 255965476 898824567 495190218 287435443 473134116 672333077 621564770 833048649 552883898 394322831 986164150 548348954 48814643 914200568 722542566 705486819 15962096 842340034 362581295 970548022 870637202 670515661 956772544 320799622 871055175 375288018 380330341 766796077 38170627 221926251 367637317 201286460 408059086 304005440 947216173 168291265 214211939 785942603 326632313 916826361 238642726 638424775 774764639 27588790 565184573 898916335 632171057 24287687 482977409 161055157 509641140 303559073 98422877 847215504 896689907 157204231 749071855 396276467 745495004 592445944 695944516 69223118 69695181 300384871 136514778 15891577 364942474 484590143 335340032 207376841 360269299 636942193 113058851 239437276 356414578 714554744 760617384 137108597 194867595 308929935 99217446 200806770 99586235 770874283 807532372 712048773 737370224 826802643 734327893 456172286 750215864 155373766 839551190 529257700 184873121 226102666 230805277 233502345 706404537 125063976 518470940 192613574 232216536 580024289 107630286 745202732 857939093 297663925 707952088 522825091 161546366 526655720 503829999 397981238 174946777 188252964 527006106 283188191 24440736 813970550 822536605 558913113 697588716 395991851 510704450 947794803 664669891 717535890 574815755 69043910 78494501 843439585 572892045 878103221 964614213 379109089 566412371 194301676 369912705 614425494 536856945 340068220 865261418 803034286 621320109 218122235 114961219 385108883 763129798 641816854 546065579 106172818 841745764 207134978 115279334 724912825 417247599 883488475 216452023 84549929 707870940 551903504 707832674 1000917385 103272198 532979117 617251902 385193684 16556431 567968828 471588676 28594682 882056265 104961701 47829476 169646455 576041039 857796972 228608567 852213762 700527051 511812579 820518770 766383741 855295962 155626402 293086282 392412297 555044138 654407119 197775360 348028474 763339666 247600617 852679103 768917218 309331608 422135882 97682419 856725955 638933705 228608580 208761672 315297830 273736322 451532487 807689837 320318862 606352195 132320690 642079941 555430029 238409034 16033231 466791842 118373042 856451331 990246123 121317608 66350824 3355062 427169064 635408007 509469437 971549570 761191794 705578587 759916188 596077086 754356850 655728110 703263350 235813127 868858326 639698685 450299755 84994903 198328458 35715601 594415967 883231611 7320932 50688526 199173790 526411884 368137795 546382232 437261681 313040003 535421967 317866567 206491078 108353697 92707115 270973935 888866677 967055033 606205125 234468105 823798495 209027232 245636114 820133258 191995103 152943771 90038890 409444839 368485344 552283281 435665194 621489350 241211845 285210266 45099910 563929283 709183763 831210933 756919911 703654347 49510853 682768680 747910885 108027617 124423672 540147080 847842280 605644617 363310999 127208035 920997458 222817615 328641482 524971628 100439658 520532423 648982710 998386046 370472151 795769068 554248563 456332607 884123127 444139118 820704734 641472647 207881476 477044360 683147886 303950514 823588141 78690082 156522167 543024850 134925373 518557466 864879335 439243420 495712123 242959669 839180591 819246458 192280164 515783997 346294535 447975939 857306934 442942561 558860659 523600675 859536892 846860728 197953824 961166558 837514015 825305947 167290486 739243140 295131818 380692165 224942989 51352930 400490075 197350748 627263229 743257036 922574316 707386268 421787269 526350644 617808367 333302877 143111994 787547157 831314989 1001044361 494406646 556408320 168231479 107333165 84947031 888179278 1000401392 460028557 424510495 409605157 164502773 784916860 693317686 316665651 350477199 268643422 56327042 864647178 517723714 228982112 585001570 319161992 496780672 874678088 923437646 392871079 432220767 465386103 535314832 897109760 916711327 391463092 320025820 750024300 158553510 898655668 514484683 190215321 162848777 524740399 948322603 792751025 332549942 168626105 870876625 556874258 32338924 518175839 566002196 805752692 150632149 69310990 576975971 376771682 990883581 907195291 642261998 113138541 113213680 638405101 485859738 696032532 389021592 142238021 232905179 963363561 29755089 41698361 178898134 125664041 188982272 553306300 148943778 654991469 606229867 983677490 226592228 817877996 381134084 41778139 115037329 417528743 985641698 744399990 421156054 500608052 442325386 545067273 907750954 396656311 154592122 702139718 318849483 261900967 970775161 613007784 725592047 763821946 803556910 843716191 367351876 869507692 121368665 272061910 541542655 230886528 696071878 121966815 595931127 256095725 983774143 199945546 152575636 402746297 628796010 80216745 170416396 705586223 53466040 453798295 993461801 366366382 352489237 489521407 26778091 968029780 802949930 269557695 555863265 638646923 427786263 26677470 167801951 219678295 902612450 439233302 451522414 314789176 476708736 804795756 428485005 200301671 279541881 45791576 150909189 157076362 472076297 826177500 104246617 92786279 303395993 720293138 212967397 199847993 937955268 969673445 62527301 854782344 53096574 460890958 512678389 294945502 662721341 909144467 527806633 957841802 84100773 155689994 422397785 943829090 196070780 796872807 201381994 56148504 407186368 40317168 242679436 809893091 647135498 674163165 347095411 640234668 19715247 629064921 296034016 342944107 151542611 784117911 173476442 705829039 360258117 934750781 8523232 610082922 351861868 303125693 790588420 278731349 444030936 864298571 771808338 409012841 797638563 780413241 2664233 460678024 980639369 957406316 675806651 759527705 598117327 131157194 714919126 880168163 875138280 315654347 888715101 618419232 9429723 520700393 815292743 96763143 499983298 984013749 661225300 102163352 935643342 543879715 509561860 324942250 908747167 316161812 262738557 688747945 428024103 847299356 690614653 70804900 623225887 354396914 945190700 331312799 616505290 8399220 391551599 358720246 735349266 319512357 461782445 461055038 97826259 5764187 269720547 40411585 828500363 914329296 587181048 341561821 78358240 604757944 684753594 61045102 563197701 343682462 602924139 251226751 659687283 255641263 694368465 91199946 451047938 40524851 720642169 516644969 789041981 241413874 673110161 600677645 210259505 910537579 932394645 341772933 788705939 1000773931 656192918 257598024 12065984 696584545 394192009 51822894 617516240 566798727 550410421 33778453 547872147 292609765 976260007 385734964 518186669 387548123 776071400 595352566 202012966 903867565 414165345 109823368 885753545 650793385 435205792 385034058 116624585 335755534 445091581 374059591 999323423 900579246 461438172 812291312 593962327 878554112 233089537 912187700 950337947 737763587 380589674 679950914 503389684 833331594 141904469 619624295 499180614 879036524 644923183 322470528 113498492 277046975 269882034 508536427 518517603 788423848 788880816 250114993 393778415 588403366 130076793 271956506 708604363 726004680 193915235 477932655 868376874 58198843 122381721 903810676 96339748 108622217 981372728 558876237 509043494 150003408 543131473 771379540 316059238 486694679 493666243 506398640 52790955 117426863 447151563 332688997 130715598 393763254 403428385 307217101 911986262 257829412 913225284 82342995 970527041 714153971 803427338 955208944 110680614 107831695 163741530 221638906 45920465 542124274 176697969 269677060 167155768 550967405 234316603 316897541 598798499 787356217 880074354 639339565 268175537 404453552 453968955 863752519 111228326 132982747 396828872 420750044 837002383 855292600 151504118 345768409 250668767 242823870 142776273 99679675 556304826 571773947 116898347 162666737 613314674 949102637 769155695 55474149 31561358 811721935 556614353 4124558 442405091 649327507 839644810 921320552 346147440 58751194 10400305 291688443 295950656 389850521 61471970 822061385 591266618 466196358 873272166 254530090 428887953 469634629 714981681 932540771 647787479 397014716 858771638 420352350 25660892 970331539 220239104 359614380 114400709 903016933 575193822 897857501 638223222 534258318 92823155 964746214 448313193 644678107 520706224 469534232 204000803 838048249 846898416 772219501 733091439 712748693 901892518 194879937 164050610 509278539 610364501 957389505 698637269 718264416 286685725 822600683 287286881 959143876 544881422 38082745 605852067 366097938 973014284 327692828 987152423 34221245 555324559 34692110 825978858 295979994 841936497 159434209 20919585 744608748 138321811 535564876 521190290 581656602 979422166 932457927 763076478 631669544 798572285 965104456 314539410 286509701 826166088 982889511 350413614 715830359 805674464 142355820 965563146 584380697 790949469 893609441 876004356 308966788 476413316 590023593 638502172 23485857 644498655 594383168 37739038 163655650 387980974 287926753 122991244 307587579 273834271 317993998 9737557 87136316 453891352 480626898 883477998 18880056 149592126 92550438 111476576 486536359 995384573 257349497 480057584 281515461 721163113 499328245 917670080 664359093 405898487 585369464 487656350 425689601 451671445 53203277 806822546 65684652 883385982 612946781 604163302 449851838 973027553 30881960 520008922 466650827 523350607 51008117 527410034 19172587 662061920 728288462 685936961 718801153 63322365 110618422 525022738 479396814 261625040 472641051 355981706 533170553 926023115 440167063 531673735 85252141 755580090 852199112 86862015 101637789 551713464 215363209 22230790 183013142 741118595 844372373 637195775 955585871 228741916 417815771 655413670 426068894 578677841 401165238 354239462 166954147 386673744 15339670 344931624 86428605 282131583 705635163 616186662 581715398 651873645 344344236 742931479 101591610 164927177 415819535 961562972 329364272 997675754 260710299 602608569 246013533 591346272 486369637 448779479 620238283 958118179 281141817 313659982 612832431 215399793 510051486 787447434 359758278 174570691 134814030 661013669 119029564 862520706 643620685 69557533 834114601 974548512 238085296 831074598 127325960 902536940 203636140 253683192 551701957 981225248 21027239 837469373 469250071 454153693 15933378 369232189 501706983 967261409 410017406 98063150 94793275 121912751 860555998 662612619 242664675 189053315 499298371 491803789 332863123 9850867 558106631 222174216 61271899 890558213 426157243 514576783 259513249 793472864 683734768 41225602 656389432 539091994 875401203 229127837 353605317 995630702 228279492 730437134 954622583 606378693 739666072 225896799 870233037 699512701 424422616 914532111 875308371 622881274 710134761 372234989 906288299 529641597 545417600 959646547 565316361 650480750 303475082 853273403 535714750 239624926 182843937 301978225 1001168298 913764609 450736674 192431801 381312063 792776544 464799750 329649353 688514993 205371373 85612344 468525821 32107938 925651704 379859636 451748004 83775640 677698619 317647927 349500755 76388921 373946976 487228628 256983857 572355355 218906144 341928944 463003913 648152481 337308158 776388629 103388164 239361736 937649746 71949224 140380094 683622420 161798705 635153338 301342674 956724381 45514715 76142486 72573010 627765276 323347989 553006663 974848682 534519490 427526705 206522676 898049448 199297069 457093286 829133434 827524843 217190882 647458884 940527706 767481450 973636125 816048368 361401381 86904012 653634936 817101632 705333595 110387393 258730151 585224998 807056961 863122323 97411891 776249558 277801271 418712640 465473810 264448886 642038024 142682500 741710595 62045727 861232399 884681408 262494254 599472299 634558176 14706274 857750709 48154557 928239282 520506183 209303421 354528409 790618426 136643945 949169157 599887146 117447012 77077053 299721519 617828750 886817301 905065783 470994651 840952360 764313925 409281465 382127540 603182046 439352915 268191654 835134438 707412977 585684775 566082623 349403928 435616818 115712775 879771469 77364567 711417032 773606745 960310261 63129237 116423714 217479761 387156985 371178700 539066101 160345584 166744245 855292715 731748477 925083955 414660968 330207397 445962798 129425785 262833673 865260645 186150083 207285654 22522533 90909295 362515843 315098915 399022902 729189469 308396967 298749881 205880415 866090080 100128488 269628586 324121241 211415728 169074689 882614440 818002309 621867496 351322263 496504339 451183676 139536436 360957988 292046419 332392093 361982220 323870617 661512538 980950495 869112596 583596035 21086976 476774852 1000968457 322109371 940452219 293581361 886067756 802417844 810258668 271242846 109731604 180454249 418280910 904002048 305343437 219867956 789121550 985655201 144872604 314656127 194059403 588960035 333348182 873693514 345679181 261065445 103969367 419775669 778898285 952337914 61794298 73178730 587899996 314302326 21714177 76714711 919417794 48084152 649910730 726582181 440394039 234578493 694859447 267528099 928198480 384923074 675224214 362231990 168966038 545220602 87898378 867474594 263371736 620605253 364663334 473959419 950983322 840904915 434974810 447748432 443950244 606032852 347131074 113368254 559521129 967071706 259637133 457396968 901845934 227135140 270832625 999573917 457579174 521548371 794656640 858151597 469859610 369476343 452356815 232712029 9146345 7129309 741655585 702111053 482437764 241831312 909581399 591985493 436194929 573341890 977554877 771654423 561399588 988655115 948696629 494666199 964430652 773663261 241604750 193234912 538069692 490520327 340560066 95030635 559105759 640192884 551471859 763183168 140414325 588485227 223660543 709931289 10415062 383328976 614989413 162134224 884764879 333367770 201583120 851216236 230371793 619765546 351762618 521483104 478797202 755355610 723648026 173336057 703282106 222582421 752449730 208462488 674201549 637447659 293056357 877718330 780053435 147123894 786913732 201003269 970384470 229649965 36875491 986466589 443766160 609105945 398128728 299879884 687079762 865932522 574545076 606796445 967065356 427455977 640067402 378511222 406597020 256098824 553825671 381863246 287952343 221571351 124094316 266141018 259906249 900460923 735317256 24323640 809810541 876317295 446105984 699163625 745241947 662893058 992549793 884927291 361053409 653082744 167949641 407787983 164685247 653512749 814152752 737109729 663913706 808845263 937870499 474381564 137615085 214639444 801205527 585504879 521910237 579101169 186222579 686680646 894462456 776912853 648258385 222431458 403661677 434202822 612946297 599064161 654329675 914011434 541913650 3676677 907894032 93728749 834894554 564488697 270154613 780798723 608030794 978727505 577381470 775696269 117970057 398872000 655443163 290579677 743505070 984293584 743725301 500169147 202385967 268087767 225391563 665495920 256325231 389864465 304127290 909148701 851596831 313938753 369371880 486903499 693317379 382945390 19361514 207228497 668039254 387949449 751057730 678528567 10646480 410367594 915403806 97965636 998402766 812745412 135638369 976366662 254914509 86227110 712727670 469514637 69852332 435842098 796738318 320209805 249097098 218504290 648603800 760430797 332824081 433125728 905318269 192978079 890522358 752148305 952770663 454051013 22079411 937368635 959073554 115816524 207717361 656348826 408316516 127066948 762095966 577401442 923800695 554703937 352824327 703178340 873223756 984391270 554047966 324378295 627290671 336529491 968765784 653554354 591045151 583258524 403249748 244901213 864794702 413378203 724281313 909498608 486580434 833893564 394336301 952159306 375957873 245080812 36373062 795162333 214591589 451053793 202259829 811247054 760564923 897015433 845228810 207998400 107009869 850484204 590288689 782748720 131203562 764797171 870617079 452396119 200948566 226788732 739866439 496098308 958783900 885627550 786957484 361775246 666608540 939735158 745601098 428055422 322165505 542704745 832261470 699691142 571428662 84611320 214609654 868690179 628843502 833537117 88318392 936976484 805144953 980049300 49506711 666434485 537905681 750539623 255210495 137344478 563821958 288054443 739065452 454611418 580658940 793129637 185301527 483128613 619179398 54584693 719803846 28616170 597305549 539459467 463972725 521472669 918338213 774100608 660019871 860654341 938039466 735064639 756808919 546200734 509415585 42322650 28227941 957630981 421790044 581023983 442125101 475212885 240506243 829149746 963606892 86243704 262698057 527514655 531028690 625184221 908715690 257425494 458123162 560641346 129119417 226432119 731419075 292421855 631549464 793552769 403702401 766989514 589666622 808408112 239256927 496525113 388165917 565074669 374621161 390554889 560758032 435682724 764455010 350521470 892956026 615340524 607575721 426701314 970532109 290232117 920886913 321230766 666260135 678682200 33436993 431340629 700237798 42985289 470926756 515370861 575083815 394947866 760063346 455498167 992748295 76914312 686155977 552983953 624274406 560095200 475878537 797876101 556654759 882788283 470233814 161273402 896766059 229270210 293422252 364289229 805849622 650729072 292404399 324850630 409044646 456826440 568133433 665661884 231292882 1001028406 192034878 61643257 18591767 715960968 504861260 282401520 495787877 345930168 520706658 278134341 862073537 847410131 278341569 726043774 799785708 155922095 39151566 502095768 754325943 822842440 92504251 154954402 76222783 360655136 837023812 942404605 525806015 204897960 564011454 74748871 31624806 403874099 586105852 565321673 498478936 276784564 722696458 827269168 965879189 391476731 696024713 131569443 532473026 947104880 82085160 603899452 84878813 635677292 432860557 748167244 804814459 594420560 572804140 533748087 156875071 721431931 146073013 221421334 783835175 969971488 611509379 106638921 269034695 264780190 776779440 772627671 527576222 958864924 789841414 323283298 838337864 718113708 821909096 486871517 230013358 216016673 858866551 393277394 181827624 53404944 569836974 650876463 962789491 408484212 304378235 993834362 904061296 995374744 717198677 741234517 92410980 105646020 520631470 665188290 82726699 203627818 568036042 589561088 799971621 942114626 566848539 81116052 802220155 394011115 595385478 605508552 461692876 11398580 776444677 890412531 140325756 807724889 653163294 483382552 895797263 347600085 485809482 207658955 731522309 662448188 352008511 760299322 682694687 346665556 235423071 270111176 225264884 962053963 161195040 222635656 411323353 950830145 571556646 633984414 289966598 401351834 16350187 710617758 559169789 541532005 650140974 272613247 575139071 180848585 112636798 764197926 638622837 741835162 902878444 194421205 806847843 929323423 237827571 414675053 24525315 669504937 83674919 914312761 473883583 53703338 570151887 172572461 10759118 654134127 267090668 489935194 318361227 437227476 520742748 175072192 325787521 989006047 566652809 986924612 603522514 933428957 842058199 379859246 76641784 226135903 621819895 184813116 746938283 663827841 211266745 987629742 559031280 409572429 819859248 649786884 135411934 723682414 763880889 27671693 852328544 969686828 934607982 991140959 448178389 718566938 462208620 58075541 190872929 415051509 138408064 747898452 499319459 933950574 476773729 894059931 232517007 794648209 279941945 3250588 98129482 75088964 980539459 555518907 962819221 942281745 580676430 109120736 295283335 315852810 61317087 119546885 194337560 301992131 27551285 921975859 705407375 745995434 82078336 31480966 40540095 726606544 100256346 215441718 276111166 617901113 259034544 26248796 828731000 643256608 674494734 71442099 301732187 217474284 246236484 720869945 70827509 843280069 906094181 464292296 352819033 261564609 178593075 327905233 231133206 818298626 781179370 150451484 559994876 920582435 911596402 484083284 678351252 738042897 858707530 198937088 164731239 47254569 999047458 638326761 320365818 243769723 855243729 882444209 619462283 249984660 558146730 491585301 166569795 251466254 23232624 417451637 953106732 413859975 338431568 454354604 571604341 358676713 776811104 223055086 790072487 710170356 669630735 29557583 381758984 345883879 522199618 536794023 978036592 470816244 817915053 822245275 421365195 55287602 233766300 352965455 511121343 997757414 29306757 226271006 756007822 549823928 608188569 314532014 179977313 208370027 19974225 359069722 373250210 663846068 226518206 805398109 176086307 112338710 783512745 357722977 594093848 623005313 417412411 552081050 83399428 368406158 444424790 803882403 452961048 221890972 96591971 305948888 525451938 980834110 230715391 809864156 951660587 42113629 501719319 180293728 761575016 520823410 575157868 537060809 199956998 317218126 669268696 299516770 375208832 367774511 777483730 339702289 875611634 642298024 806985591 858463871 536891822 483646083 178130157 436894841 312912223 768442122 833411383 226012740 647968084 215379665 611713663 395618974 117771299 433536387 829477112 247838148 624803206 99579938 50607632 789040919 545292821 967438736 22641323 232059277 475516822 359855762 97089724 359064745 823615441 570721875 411223309 757622137 352532725 603418588 90218142 94988432 387521975 864245308 951916873 552391175 297845167 725101847 63853989 564657149 898847749 390823766 348280258 780848166 676913524 152464862 446859487 694790542 390559856 413191965 605722229 923343776 485321650 292677299 49723653 243326159 891620275 658587340 46953891 310378239 560414855 534240626 442531765 58331937 353054654 528971921 789408131 645726845 271860128 565348281 200193866 482461629 910490285 780408987 702218698 732223688 987431609 217057747 650519928 803820782 45858898 958490374 172990601 495214770 245704614 43690349 332882391 41240722 412995702 591276727 168492212 855341643 480316155 901539388 449933558 854497052 217807707 720563979 36349889 112354256 944195924 881107844 622264072 852000487 233024797 987712461 242131583 896822112 480970356 731155545 352317430 71499425 907054719 237139708 365356407 947963562 166288630 541466460 176517290 85965157 245035010 527465417 555425360 25515728 338939757 189308458 277344610 522492751 885888690 299130823 285864159 967875485 940630319 59375226 784339748 983082695 749778545 159143456 425241882 666353133 909090348 557870628 203631659 925559351 404116508 930145533 575074907 895452382 178404278 285730867 949196792 141433077 848853261 896522599 349753203 401069340 823623483 697174119 834599948 726192300 378811431 21140503 34884709 511298864 622448969 197078955 96030987 62449563 818046607 529599148 772694301 234743251 288256158 55582062 366601197 91721038 43555182 806205784 842443180 590543445 391930704 97054323 414300261 412361154 801047381 654485187 596132262 13904323 373704528 825655579 655592804 881445773 129063206 340711917 146735613 15704507 600326014 334311463 529612602 114731023 534498399 89885591 125663229 179309376 79850385 504003191 646553571 493060164 988274070 179399954 659338051 201363308 293195312 722143443 83520928 18823260 284044438 356176902 326603205 600198280 589537312 549580208 496744358 647176157 351540874 451977161 834853033 207859968 203145380 699715021 828702322 662908487 659552094 438937975 685688024 376513385 324749629 237873707 138697119 989587244 808112416 232460218 192018953 528347463 464284993 306695834 523828800 898794545 875331824 139949810 792093878 127732211 583377529 79809713 478040065 449294030 998184524 426313448 210779940 899577828 495253543 85642279 620484349 535526977 40147524 202148458 516713176 139464346 833949156 83333688 969996775 886935170 288258388 893236881 305206463 110883904 100096769 872471095 290285228 243083088 891977608 34271740 958146335 594509158 992492856 771822286 792413087 616358974 377054667 141387876 606261250 505147947 973199255 945487834 222205875 431351893 40603456 170439741 479353349 978330363 341987131 795532248 536630992 65357709 395007558 933896325 216936312 199712280 636562380 259025177 875058616 813821773 971385874 514910038 631710270 380994067 592091978 175430000 830909792 497726697 936304764 749354598 842343242 659414336 271916247 151481879 946452946 278035181 788424945 444681376 630742646 594871513 233704424 191053616 849026848 5644502 345428802 240209075 272169045 590596661 980083567 491649731 688233799 434647604 792203728 643109510 397963873 155852119 3116671 993682040 97287949 895865989 74083140 913208247 503839587 558722578 955738662 34160607 437423028 872668379 959993329 777828268 740345369 910869996 935280726 143811576 155703640 347489095 104813248 121583564 329268638 6973317 28315249 99553980 549174802 942902126 734112926 232119652 472325806 938917554 966870272 438628427 936023141 562557684 554373070 166588046 467951326 647213753 737365571 404004012 464169680 795583008 70743510 854866860 85424447 268699886 478702915 76839139 462829475 84964668 960604767 90038709 13717676 378709922 500379528 337146791 134488417 865580282 747697897 260362618 825623718 980651853 217959867 27565130 523012648 618981701 676943836 324689642 897104902 845337920 772378860 372030658 743123268 709362576 138885163 473388512 556180165 920310897 145314740 710152313 514831534 962408646 114921029 188780800 925017780 102101354 617100293 811149500 738695992 589782706 187499161 570296943 546313848 388973829 464152110 766945281 900589776 949723397 849459932 213137128 570898890 796816891 5789236 677525759 28286352 187388106 199314399 435765125 490485476 112760036 509304001 773415854 989340642 183485317 112105927 118570537 690893343 572269902 68132933 259291180 204994881 827403463 959964315 583764899 148629639 406231217 912524760 22223473 820800895 352703888 164071380 688928407 731064316 205010882 766462442 971987384 750068197 68877912 133489778 654123897 529414421 482394741 410638841 437469098 112684989 352722267 207855461 968768177 134471970 505786661 53499574 654469558 506535224 481585703 488664285 543540312 726480061 48259850 89229594 10719645 993998015 352304265 50623221 235631366 244347793 88286262 84724432 261812816 780035102 34409204 240373657 379364811 672297633 649569436 850605610 340366157 948869766 748300782 749762434 746179941 333300715 510415489 613736246 51788625 211972705 889910498 534482266 789919326 364827397 360873455 409037000 791815951 79412005 12681890 370428428 407768052 686907234 254720904 41664264 282502814 233003474 109595146 184118676 961599024 132860902 404573324 933304078 675477411 349284281 490090933 741661553 205815345 519013321 771431577 153932426 581375590 950703400 657173041 599329001 742786197 519937680 797087152 969726193 106829724 538696271 261694808 170191064 527447725 153427195 614260549 442518513 298381175 505439542 571198436 997701344 634306702 303605769 11665539 243049480 595689077 621974511 138475407 305776376 842986591 47907761 252430011 823102621 497687809 4461626 940247521 623987069 221768673 306769133 327294675 951609282 561795902 388103675 929845436 400932941 177343732 147809241 339720514 329337571 492623228 459525819 394853462 748894710 848172914 509596459 222621268 492815436 853944858 824135115 158545014 209813452 969822390 607932577 3770743 326158067 215239317 108464466 978060356 109891708 481034990 833064806 935702302 106322355 788368740 991190969 271118754 201550679 779130718 86425787 784951661 191044879 836410346 521088933 676899344 373422034 705241824 407886135 571843500 602028483 510714778 177619806 709652102 446556432 179449901 560815635 373272943 235222824 726271070 792779643 924841756 995583363 374366254 323472281 477360450 417253450 729140135 802171311 617075930 937032147 419030399 133875372 156468192 941245613 804301542 223311965 713839182 907855975 729103870 814327813 173603980 911390052 858200840 647963013 822888855 517569993 135836799 856214988 570411890 233134839 59106615 724093380 883297162 974004540 774471069 31448956 365023422 887711893 210797279 414273860 198625645 352861605 717707249 1000662818 606344736 763134548 772961216 519074553 511497739 227944723 963261617 800642509 47675245 597913 895759628 642104993 584220166 250979448 667899686 813310963 589668449 708277236 979566910 249240843 2174200 21835752 861701826 767611673 894254076 900411086 537153377 212256543 889248315 464402502 454917205 659406725 224864907 353329506 411189023 585695134 308968689 252316268 211802295 69320505 161135905 13114284 960259680 201485551 726805420 561583758 906244858 203648504 291542928 996176442 444813199 184605514 162662651 471836544 102028178 299752327 585382686 283717090 560867069 456896738 891783394 589117118 325080247 736669039 966910928 648478681 543772769 232752137 469933467 26171379 157887202 800181624 767196807 820633738 509326731 217496082 898496160 597004379 91202830 873664041 106547988 449622430 122006857 560149798 146822559 950155140 699508353 38710665 953057853 33948509 840977456 290431674 807762524 948889138 920571053 654825243 95535570 804288562 117472676 733487638 983971475 343420077 862921063 223813283 388402220 185070647 234425820 920857110 860726661 890531069 745979767 582633754 783151079 287939113 914645998 295310492 727233048 832811497 806912611 471910700 901800224 461539711 295691397 921461598 379574329 419455186 782808515 349213246 341394153 855527010 920182352 566756196 89074498 443806979 863673512 479790327 441761617 424321388 639163297 153368180 59021305 615982998 485593633 22249806 39066934 16967446 69462895 144898276 205868246 618407593 302896065 694932756 275080130 808114796 677174878 597896165 846320432 610055819 754266900 537090572 267391357 719534990 582396312 7570608 70173105 137210699 836879135 502168288 918893703 385221790 256145052 698503212 621030308 466416398 851303857 314369091 767974147 813891206 34634796 361806916 744526727 99922738 816637292 488318491 57171692 11186711 78235576 701767400 100518430 82103142 110577933 306960303 759786513 532602450 608010606 257350922 93406838 609604729 994732576 779754824 612838889 658397937 350751288 508885939 213874649 372042709 96100240 681313814 226200105 170063222 130746083 549034949 769395932 982102427 890404659 665485719 900881411 112752052 584220304 680473782 452771748 613990593 91898482 669211372 21093208 238696293 398320311 865719993 877912203 724528952 396934252 594175229 857992358 64119062 933061187 269957245 592952282 410373115 44712897 795938552 58406349 358837629 617825606 906806844 147696799 118702546 681592649 850819164 439487800 757385669 946753219 718310158 736023698 939482356 208783453 917339474 950440114 886582351 14332386 626056092 649617951 60523910 973360992 956359957 85759203 992186927 492238591 680629525 428937037 426652601 77993706 554560378 918442267 518978346 322957450 132873283 816585789 100763544 267907214 46090022 384852282 281702958 419465274 663300654 951557963 875731688 192338716 482883839 192756931 216199465 33737795 910385752 109280172 324311113 670159412 713007333 140588895 571090263 57545591 402905244 58859049 509135462 604411043 491716564 488711970 40530230 121753232 94036555 354735105 836861432 13018901 558748496 197680384 649542381 84536788 432364283 107717628 348203396 947331591 790935592 115676254 759670108 600336128 63883778 434599632 512301014 73266755 673559915 235795846 488093093 501636599 767078458 764060168 112033968 282306141 702008463 94323628 137576570 768574677 44028359 984166442 684698757 43237999 868403048 46894406 44561607 598658295 599681785 931177003 54794902 781982356 559445713 352584714 944841019 172538705 711295277 949219815 135528431 954444393 26013743 292500020 430204995 472465536 601508526 637436305 550142125 159746179 970883385 714751733 825979724 206086705 305162085 5220330 248576243 141230657 131257186 711128803 287127 978270350 588841333 890369141 832625943 183592607 578247577 922175107 606096669 933249765 421314921 345234471 347628489 998174949 457456813 63216568 552875268 129436684 755801309 998028277 303836305 322211302 875694323 301287959 236183720 899205416 917579838 607853115 256089947 390332332 811302872 228692870 857764333 445073344 673859178 409193314 597399767 529252654 142830066 284182691 236670585 273225723 978341997 366186882 685959576 68067302 608246079 575338663 209624387 174638570 974562777 194606887 439318933 697808350 604599441 849332321 929686302 930912773 232194414 946141752 118013370 303990333 497733712 183798028 994777121 628859906 9806769 609753011 452662090 532455322 202400419 859320228 813554470 297024352 49099637 236382160 12393022 954561662 813840300 109370431 908917430 558495380 676727901 397536566 373705734 934746849 950868511 470664456 32706325 695229279 908000407 721966830 85453131 196418919 311405960 744401291 595637679 927446342 797084196 388066449 219701281 378736902 810100266 551544064 746430216 302213330 64454865 216558967 96534741 946591223 759107727 234044091 242271292 741346804 282334444 10181597 362177172 230040588 113448911 843693400 207361517 337822290 737791593 891027244 490886474 871245072 572051434 294992662 275272876 760892401 753017703 968030378 22374686 522235410 756452544 79123752 190228607 834547597 392828950 912072201 450909654 393835812 348737597 224408310 141560289 468762403 901548151 239855559 816190293 168769003 87808928 890177668 212273314 708247531 40532218 923413429 698755375 705769877 59461620 571879564 251417642 459433875 149581767 641525229 877511292 58209548 74171824 131196470 927082173 169490230 938955427 379906194 380928979 645246654 640173108 706976394 190708764 523984321 532717065 228833080 911006062 235606747 314207785 5936666 637355236 502206170 951473746 723698631 625100757 571660006 893529575 379289297 390200711 162943162 759632638 490134017 904485492 289074599 740555587 321647262 956104677 798538693 263414908 665084859 702210923 524031815 571225119 355663810 672574658 914155602 401444536 900699056 530243064 183493019 543631324 119120384 371480682 126466804 176867183 646175517 210605353 873438041 988492624 806527334 76042159 493781697 872693693 285364650 428736735 381142590 746678577 692016394 629749296 843884752 296424409 735946439 601507661 459616742 525867555 351208056 398152218 341289966 804340200 142869230 529336202 214524558 623831302 891368459 291075734 944639529 437705472 825627656 595233131 761177829 687316850 442025974 565942276 599576426 412385120 970402278 781240735 364776772 557904353 510040251 233985883 758635768 177501328 527782450 192761898 759922539 889416462 378948603 252644101 52925166 655532893 286806765 773199357 199512836 168283060 457930140 88856109 866160531 789374372 721604243 178314996 156692185 688761188 943239854 411809023 188528649 184652781 675565734 112428242 606133745 618570311 232106190 93582595 834449571 788783277 437148792 73477764 47618337 666151139 955518414 124750275 775939167 582801911 297479534 173901336 43057072 619603551 326197487 918969740 54617667 292046922 906221143 928031886 151757850 397267931 843140508 301821947 345620359 924153776 807675014 60255029 792220488 449874090 207682489 947855883 728771322 14835825 204669322 722484081 248568444 765033127 406801609 533793138 344889385 180286429 314328103 970317133 476700245 981293384 972346307 72015599 404884912 543297020 66128736 648191279 111342246 334731446 145036259 14214487 690428379 461540285 783020856 305804287 102585171 5311603 177010422 387430999 643175349 453900549 901023681 668740875 999036748 410944304 476876308 250424753 975711810 961744587 140680810 774231940 945857866 317580186 653104745 154614159 7656969 536531085 377642144 195755761 66361043 965825104 293959882 980701727 227162004 792480220 347789771 380994585 882842168 249410586 305060408 349523162 199341937 436940151 774441740 805972634 924430682 34133033 434064300 595849413 112119832 835034116 772513256 165502511 293316738 539270721 313639851 161672298 99592366 664874853 1000716218 466237567 659079576 287773009 598090064 768259086 92390475 985239558 897219119 57524579 724430960 788040243 1791513 514944551 386383549 850319244 594100371 369809594 576746081 901929852 803129032 414912441 412751440 52921398 98498526 82000347 55169527 44471933 865235254 646840178 429795974 731175470 711671 881798683 62834201 937380338 784464564 583538777 363089875 770359586 635475010 944661540 372062816 222136801 589890205 901269800 427787628 373307606 694277026 397424965 681415391 11004404 571397364 605942233 708047717 37155004 375789245 209253708 17538415 976845917 637826033 370225626 510720580 513429035 384341820 526437009 938644234 85917208 195777756 773566887 549575376 894936381 835291590 706290358 896765734 790221166 904029001 777416517 185143926 890884646 989613552 428657884 107471970 552043239 34238469 654721164 869148797 747316939 785602095 368389329 526807981 707020866 474265240 799043697 955997288 132274016 771675222 541863427 137561673 198817321 82202843 963101855 624306271 127603568 698399315 865290759 341272209 119581948 247264320 906839390 766768796 472777464 259829718 496241373 239934813 50742554 313712782 665778532 98033071 535283035 454248059 883670910 643823209 650063195 679196522 314741122 368898927 101119609 830533831 387987541 447156285 958932751 954090962 50857374 969316036 442540588 845103693 964873154 19977245 316475665 187300217 356983110 566682426 710758715 653738530 410973544 354910377 357079251 884923621 562544195 192212837 260148068 162025298 864469986 662402878 994921824 446493619 655983419 766479151 602846987 559269574 938743685 519647199 978205209 769689159 29630627 710193465 613676915 310840680 428809010 970375052 263626562 576341645 842162997 85350925 50413032 622664887 567689168 651599858 599440414 62994674 468046913 523469366 976474677 567124605 59586396 101093245 389065215 847972008 227356487 638363270 514588825 273603952 203066137 560395998 12058394 115519328 703082129 572288465 264241089 410437083 540921549 733491809 77104488 868441969 330194457 652648534 499501073 93886192 454987668 975790877 464948181 958395411 600463241 616927821 624703396 369663228 593135227 633332310 766329555 703311586 534778167 845842984 625700355 190886626 695307403 701808017 782214772 826356818 398317762 478987930 379959345 789914147 870794184 195479377 850451555 63123671 251169867 556693409 610821349 629939223 121895534 90159397 229758125 872647919 503052075 357434165 511397977 3743678 626878546 989188349 573301182 849961221 934963984 896357797 315153678 430217100 441668257 257048882 694647899 682280609 23573166 964440198 214969891 392490939 369988611 573964197 821467874 164363713 372689290 214909899 668072507 496699608 458938182 457407066 617638872 982274254 669184824 783007893 62937980 491664276 416883708 209693667 886643133 482616072 164532922 140855822 983310807 251464828 515879790 441727679 605264036 96693096 787087712 611284249 236641931 312679187 42917312 173899604 456739886 135296963 203213947 756791358 837662553 209744522 647500395 637483308 36770762 304674782 286247377 126263751 336763698 207443800 752114084 126445296 177262166 157172965 42582530 427972777 682126160 567263215 161246353 483690694 442409785 805559210 805937549 229698667 480385194 616102947 674603539 385347054 936507693 107064431 93074858 721871572 539201944 281474942 524687890 866139123 240303538 957180925 257011673 70193351 1000550577 189877898 411745649 144545566 706059745 861887090 956378617 77588858 440051820 370739705 629809597 385996051 842144161 694398123 834000830 1109864 861605992 948053896 748963464 451623514 721473260 517584754 574590347 154116503 440376375 787160791 965355385 134912432 682894621 742967092 20729145 437781773 813300842 556239565 91618658 627422438 643166934 756252440 445668202 824174405 880278195 308959200 678497507 901184474 935527339 597458379 558079927 547248045 135535589 896729547 218305470 636264777 591947580 629650012 162083942 265026045 38065980 398270126 179542963 682953675 680833621 314263734 642473074 625985045 978232092 885454392 292217882 437193988 631993234 367255654 806328621 189583266 429098785 55796601 232475847 696129798 228893969 5705945 468905249 486755984 49650347 185921567 840066544 828631786 668108466 144869569 207465331 895282946 258208410 707675645 950093528 61903089 725213552 711936823 603871992 823140342 253302078 298398777 521706611 268303919 458272177 300345391 677279130 584770704 809356266 575083885 192343693 461836304 229007160 875322310 167680058 302138313 953567081 729409836 902591722 13980111 424152390 770601318 421626898 156561715 987644325 638353764 195365661 170040829 699090431 611026070 32939724 892396916 488320234 215104286 394681050 406985923 356637718 587732784 594896296 918056281 385224357 319012185 217751713 214098059 759440298 791453899 871837074 180653787 978942620 78955537 869189154 69613160 609378867 813137017 532405080 512217488 7956815 923677438 35581613 722608163 212024921 698946162 543780211 276488671 929204896 815656842 423065762 500041809 445246454 538993763 309575060 579451543 241023419 335992137 277959072 648077173 921843754 391247161 590433142 403174679 685045937 806665066 499021884 811878981 132079201 174842780 558816978 195380394 303316880 947862524 572259712 434205900 399238146 821566308 147960652 213763790 23024856 632351008 608231089 712290561 382242781 10373215 224914961 323237715 329414869 835426569 840416435 51274340 1001686660 318748988 904348732 876769761 63498827 532866411 412355508 217026167 623418379 905309935 783392613 299937352 301096950 196931562 336804175 484560955 592490240 272832683 428109336 160739938 266216559 569904025 872959387 74796882 862762988 131579965 886615654 603429410 3870826 666835522 619082755 734850351 85701560 960624542 296025604 799123422 2251440 765528456 396995981 141929768 196257454 517603827 63644071 744161847 154755007 151321674 220079084 79861000 562514614 683602752 931741509 302709796 855461954 136226723 607029317 449799792 110773788 935238512 825349135 930431393 412747181 955649123 820457424 183792189 860702062 712998670 111271557 43687953 597420431 15827972 757816918 852923556 143545206 291492646 583854683 77556183 939168962 264608186 137850058 864820284 152445308 611655972 346195426 125166150 632926317 24561805 551263834 210661440 550370249 935496364 973739598 160384955 534789136 814643802 854868746 641256599 251853903 389567536 894189074 49015713 598912017 371644816 472877935 797851631 881200618 859110801 786496048 304007930 631912695 998111359 87958443 448174211 617669038 809034334 865504218 714500849 767785476 692793823 380969593 825506552 370598792 704507032 628649054 901205951 417317658 541999697 761828801 627372930 188869220 28506643 596382492 90688331 513772566 411303694 681060406 201405963 215508642 542746963 747744397 977126887 79748879 34314332 156593914 581809421 953774784 913558220 499117817 196532285 688680283 557368918 912725655 739081238 407009776 331819229 374438543 417278162 70492489 317586726 131910568 657532189 641418495 167740125 117950061 884471851 27058974 164036361 384696710 491299138 852262123 253059322 233411270 865854964 85033787 924815731 526298273 123288695 224075818 757774951 387879601 407976654 76435819 764196514 168985146 658146144 23428065 795797764 934573665 826414115 633454692 570038954 652745208 73769158 560050674 872474613 672092597 332679951 223248833 534150705 598113742 59851007 126124103 492152232 704067926 484381591 425553305 706983004 399355480 123538619 651146950 611260477 569027893 374322120 654283641 979711392 615542379 786138874 316397063 826311732 751018424 591885915 183297241 115315641 653629229 437868251 468737429 35334611 281664166 441062303 988567866 195182421 509163978 485552695 11131260 104686023 713797056 321388314 846478943 808505866 68674792 779693858 814747390 439082177 798399164 469247366 596397695 264787581 56399342 491420670 60463996 179077135 218796338 687148191 952806408 338994013 680893437 786814037 528291795 304034087 154195545 358449317 164284618 721931177 577136253 478418824 741106135 87024068 884304635 796772027 903134667 297815661 624888267 410207419 315925798 339635138 336766099 429639174 564559619 400639194 662443943 136323464 525504713 539229884 667731697 2235895 240530601 563122857 360198834 664810675 939927877 72734256 429914741 155763998 433531642 682555899 735032006 48205957 188394385 484060165 625868797 220267632 484677411 882179062 371605419 807213100 817088174 225184222 570990398 834309287 763666972 548305497 567035441 381417893 476470556 361755200 285098048 889824162 801970247 849727633 433774985 644243026 302782255 887065896 399658858 967651112 696505482 254711611 966992968 257704948 378480959 376776725 882228086 76384350 178287354 936691965 929127054 160316306 995789525 355444599 383468159 41785436 317070659 375890654 148407553 626275629 135271688 321794236 413068089 852648186 914959236 855276073 718598943 4371690 916708716 669831491 366064070 929053180 782065136 918044802 266311917 596083445 233097737 957958062 430295393 940422522 803653695 7622846 791085785 44394809 475473657 369118222 159980248 146048615 487819984 658704097 113512300 344078093 264757147 955882008 374608829 713186662 232341875 316676819 66475152 999654455 469284166 187907335 910464079 992606226 15852354 416588699 872690101 807023779 485344251 200474850 790523793 740747858 194035857 766704151 25067143 932924027 224617131 962966720 943328754 571336026 815461065 950277191 1853899 208964815 897483526 722642025 729718990 926756244 409752162 98447851 536865807 651779070 905300394 834108702 358103950 368350880 924012083 333341703 131750573 199784783 914447624 764831819 694973123 737904918 276036981 667074047 207711636 675317921 714131146 958873892 832553644 20784373 47228791 441110858 787585748 902131845 458297333 775812666 547667537 408707341 239237914 246976213 101626996 741853412 402447236 160463470 999271131 589033470 567236455 979272610 921315563 608812475 487439694 350753267 109767383 658240185 532551793 882069169 733441635 3943756 800906826 788109710 620670569 493197972 734153670 307937938 362018272 550664437 255106239 105522105 466953536 743634706 497187410 219578901 997468309 910343255 537425097 994031199 927439672 912051135 496700503 575551150 685023966 479171749 424151932 611142409 172243263 279082483 269448562 751307258 714402449 685047152 674042487 687691088 594869107 264851061 415937855 393879081 827080788 162776229 815041215 752246216 774493718 471113790 582979383 321427824 343599565 23163852 563371017 761307026 64223089 686382151 391051542 411050382 100936016 445525709 758374528 175400090 704800320 821991571 89144258 501948539 263857892 73386914 575848356 16782399 767838368 269827106 384687083 974999153 633270708 743861302 638136167 282384791 406419262 958750528 145324659 213292356 815160619 219403932 942398152 871740488 331717053 159687123 535439047 713828675 253829822 797379388 600156486 668063986 287402775 895905883 855552008 562295005 790925136 82090612 393663034 867516452 77822582 986813510 559557263 290888099 932915845 349254485 296348868 68843045 694732995 349057353 359442117 983240867 382268619 274296033 198082279 874201379 800780120 110862602 70411938 397800526 145302905 981664164 79371154 354775270 317658583 383467533 322552361 737471653 319845113 952617914 396430829 799301133 346966453 994078083 613597005 494123055 475477826 153659157 356403339 497165943 926346597 828804954 73075412 240941701 92232945 405942991 59265283 248178012 686897792 115967373 110751120 346811591 591439283 489773954 840734248 478571167 462088048 724972626 470576767 302093906 724118805 566326120 770043067 75057213 417095330 836551693 780191945 766407913 691599435 797828510 408595931 404200476 29710045 818667607 358397654 410522742 671780902 579435183 76624412 464596527 785649191 682606514 801531066 567945443 368820119 274414739 643542456 627743875 666846724 104985185 908358367 401684341 92482577 829680167 528411485 269888487 36258852 102877178 5350993 933012663 556830975 562554562 791321001 669920449 10208311 410279310 101434644 77453230 820784835 112369125 873718595 993504221 28405442 786663124 439908649 894904289 454439238 850138210 64005810 53716287 31069369 103928805 606203768 13865395 211293999 881127574 829055339 949957882 146643564 331936702 486620368 861822482 793810003 229681238 760480814 19760363 804617187 429145165 815819390 250186059 126050178 992578423 720851810 81079415 701330184 227876011 593087081 545054454 616444513 995693990 860049637 96450180 725173318 722315570 146779871 963148703 951743114 291923711 495923801 46427449 326291828 654507028 138446 280390362 839006907 596937668 560468486 623309094 234736774 883532271 481496505 449862353 141982556 758855553 955560657 616960512 156722034 98404359 499565944 267434905 857666844 682254688 695642772 23181125 235976093 3168775 42365013 200346971 31424336 631630634 187664824 489241971 976965521 476078418 403188529 830346943 969640943 982986481 303840775 262364116 70029485 993210961 471276192 500320827 435836796 759300718 737752447 567362756 285867712 249258697 660002215 966518338 474768056 91259143 921248831 560638350 30549945 490587388 138209846 12930164 780597583 225491300 910190366 743771745 189596642 102397318 789757852 644806377 178867711 195163582 679049050 899543954 568319389 268836188 70344593 437633289 335848665 763151793 819464584 343232158 19554101 241926918 801077892 71406068 800518733 987453786 193894417 982659930 234041100 242601871 647994580 654500376 38248832 389318244 592903437 572392972 208845552 31422375 136127272 861550835 44430665 258881200 304788348 93280911 62043891 82578610 208899068 591158243 633750735 635401766 915185177 57193795 683396152 958289535 145074431 874140232 555437663 459301125 134237391 529546025 613998460 927237843 54742005 501774552 551628684 821275109 165150908 400586667 881679964 182504481 258305707 490227394 211615231 347537225 188403801 55409021 158837040 856816226 433220313 11903572 831490019 81337219 873667462 469848038 790388675 844264240 63148027 225928996 940056811 800912024 637315919 111515010 439409891 421199985 476206860 856891594 425326631 283872509 544021267 684107069 493645213 436335456 533149286 457680458 648082784 518465646 801618461 453981376 935856363 652807939 892468976 53933764 405812329 935783375 982777503 232710540 920497066 844205311 519159360 398158901 658384730 364430315 175726849 129283333 52697368 957497217 788763911 20836897 665106565 990830207 689275434 394946873 808485548 282748981 695631113 890701574 886047268 830036528 624960099 927744171 79037787 166126504 198832280 223748015 997084999 999433522 890607568 338163316 898965985 745157768 605875716 784451596 220558349 830257842 99530681 529370557 546346602 406765168 630045232 304011229 141367433 61238840 139640660 43495361 379176386 701236616 268467719 803052117 799617066 72310592 343636509 232549822 239020760 158390946 252258059 338323515 815844215 376954889 232014440 98998799 122699240 535710405 393085620 180611575 423949708 335020639 885073497 502699716 971144136 422091749 667016952 304658931 194445625 566203292 409316973 690582906 634345914 686595486 72165784 767766316 589037885 257164184 744745297 4466720 40783771 503082379 162051298 29803995 503599743 888333833 946974507 22459520 989345824 242906539 740942703 703677724 573066703 637391815 276674296 223010397 820557557 604136230 480044610 996990620 885345972 537164408 902813732 622895335 236343881 216802098 915850769 600583940 151587399 322810082 261098535 112566081 941107047 211876174 338140775 777492274 271322139 859356251 717420436 108683226 358536035 699886615 923807617 108826623 449214217 442202864 504433363 520113052 639299525 138716188 741532992 27496477 20735803 76697624 164567786 871322900 113258863 961310522 24613613 195362986 980743930 29544474 461774353 894142840 168402472 484937384 722611171 147102550 332487101 21550236 908788860 867434379 500179853 161559674 567119719 500860066 856278619 247805787 811941715 528741667 79526562 130229428 798073873 107618133 193264987 204952287 325927476 913820496 117985634 114905640 812858078 566967040 510283446 214649688 943459012 903440808 980517816 211743202 198262269 473048857 475533569 244470440 911490124 134638660 503577444 215015166 286901434 289495404 507834508 775109971 925180781 43177881 837248189 849987094 319876838 599024751 259031029 557927129 245266626 223844766 663329426 155858755 552657620 675250284 541441492 130602016 203340244 754575509 546805447 24817736 567360213 404617647 523303819 4604488 510551933 542622660 969793515 21104303 978618635 640583572 918603867 771899597 291592983 593097392 890424404 821276074 589694201 332415515 8776250 833382924 523426706 618698862 806629765 503213323 468189780 868379320 164948515 17528967 932294250 796164572 116202275 632698195 59208974 174871227 730466377 961646765 586321123 759472135 2123987 550148494 848226864 314302029 664898815 700482126 265858419 198374482 713425646 479558760 63559427 245221779 872221254 631566123 197100822 59472906 89474141 154087617 249743375 492052450 322907492 414894724 458752539 210881131 521821090 325701066 833955915 949728188 227774761 482167677 997380293 763816143 327024080 409376542 944380465 499110032 583331830 798383963 418718202 713862230 672748400 399722225 481084719 293379601 708994393 105047974 769375170 855253854 772106689 562650663 427768788 244457433 104538612 851913208 774315776 975373770 898449148 460966171 739378656 667778979 221699814 336059187 759005434 583736260 767183033 761464340 566603488 833165989 898301738 1210791 878692635 959395332 240201065 79752153 263573896 815491648 397156237 152361071 371354409 901146246 147689565 195141690 676726818 132638315 124555280 41197792 420521467 378682607 517138784 548934419 677054574 638713439 503164036 757455497 972268828 346545283 842083100 246207427 731810074 132749825 596731616 381551946 993606192 117238765 908255934 977717889 732142581 296262163 283850913 924978386 57386807 997430435 315004319 672595673 348989745 866273700 554516312 488133639 940450654 773755157 758191531 863702848 709788264 98269321 203694429 414963169 843555384 620170472 521162185 635012236 517977622 88316358 579842871 35563498 580843473 241544003 132157440 221100232 944147855 887542687 366383246 623222682 677930816 880282936 366314822 837747320 535122966 895068541 27442935 911544736 106256490 532142224 170832163 41281109 535121470 171901022 128349845 479483466 232824082 623918939 470105147 280589505 455935469 642617812 12115894 429819752 483813002 822214066 956761742 912051222 17895353 882066865 601020976 731094078 492045209 769506531 956542463 981928441 833878048 589029326 492102767 533528042 401183887 227111925 902274830 448966907 806542586 162676539 324892743 527273133 873157279 209991202 333685779 979810223 588676516 908762330 721427564 974943973 921899296 100731013 626960273 590044790 553312706 979971287 655692534 199178068 21768573 702423431 96911011 503646582 863643292 353718728 362705830 84908819 174254777 961122450 298015450 667059935 77405129 418686807 454605456 243432662 506859506 510608406 635441599 343120718 615315547 424706105 489258392 933579871 57237065 182763400 330931695 614619131 187649926 417658443 350708574 320131338 523287854 157737337 82638104 616668332 244884303 932491834 548504437 360136378 493714239 628079829 472500043 654008965 173043439 103783692 709848815 679860565 670793693 245235088 756007004 133365301 448245161 289118200 870382551 718883313 288952226 40339411 701721581 877782886 950643625 684349529 967521588 939242697 51165253 441539319 669776565 892697562 565077919 321461377 662730092 967207017 985020876 79782711 205256460 987304334 966125463 425247571 934099225 426088443 308590756 611348395 642606233 551326445 969495356 196971877 786360158 106084080 926378736 158368982 108517873 890939593 935680720 855730455 680401320 449892988 568451286 339154028 340015597 823406310 762208155 991179035 425075361 805327794 540257490 869844545 823097214 956079693 643785853 517792355 322211020 130833175 868921817 723693320 502062752 595961069 632164386 12014106 750319428 54256206 643812135 372715099 967278082 477064237 766693354 342153798 19596485 593542262 952818494 2725136 966227759 480254800 939127482 658247092 576840613 26458594 175971901 440296190 253598469 626379492 227868640 386825688 86891673 823267589 331970676 996108458 942065180 891490471 436891074 764016190 126364997 241238094 235346288 692921130 410094294 284431594 221873512 560584962 319903166 896018691 939576472 416177315 608992822 454166086 688425933 77969072 900130021 93359069 68739826 257750956 941829622 924579234 402284774 496114697 842558381 891219904 510038227 224137966 949970319 50655906 94197448 421943534 467789739 220888198 359936204 919862996 263624761 314082245 678128705 809663604 664965008 144882655 101805813 511352913 797355840 478660093 197290772 101488598 52923387 580834729 622926027 544066000 613704904 378230565 273907017 635081288 29249310 749387230 57419953 500439889 230577681 508602986 175690005 264407120 264373976 538244778 360167716 450433013 37613461 370832844 746122730 59446947 952603157 809521575 193943552 270604555 585429056 439916606 300463535 57612425 135176526 230038504 820757060 515205932 823725207 476495360 443344127 826009645 725136677 769941793 985897782 329736370 602533801 761494432 179499641 998542130 512132612 110217504 290892027 786292073 844091641 943630948 286849340 22077511 887073513 511602417 669868603 309512767 555583882 596051243 309580191 243175592 417367269 707675960 155630668 983675351 311494640 977860175 277629630 361809133 160864638 625990909 919306595 178121681 836697193 537731135 767753281 36588744 658321874 278118654 727789667 537478617 219437972 985872443 942508406 145344741 483715861 526973414 982575185 127047280 107378732 973434498 930144783 805358331 183136606 866826500 350464716 701627779 1002092066 459757302 163086889 121213485 398671871 474354452 981689771 83800410 130633914 593712436 9975987 407915277 781175486 336618712 476605964 259934077 558143553 65024090 214551963 548101318 262537687 155973841 873040527 565384563 826309388 644860827 725040184 771339762 742291948 360017958 261073923 206558068 705476487 750864411 140838812 591439055 582351305 534503456 811160464 15180305 702657028 706504471 731149289 43087020 803297993 158603432 906166507 173294423 383877440 712589064 70116488 613025353 370586476 230414615 732286724 337049655 902654721 1000852377 552876562 885788640 866090605 348201020 421226691 172975111 405140180 989423833 367621168 11044391 185118669 555763128 7550958 602671598 379747684 311798206 411271847 947267387 463317646 566737047 8788912 344886446 385904889 234581783 757305773 616390748 555372138 286510273 342866913 338296543 402749458 691590498 183915564 85393529 331393401 111680601 851092613 366603940 266498500 212360279 799012460 292500863 119531987 745468252 441413051 599546099 193112649 277892021 329582805 173484909 219269364 320033123 600015587 512774334 876582854 14120141 430713706 669535092 747349681 370020069 429534455 293258668 399177040 852920786 342391825 482174628 124175241 900400697 438463973 668831041 83373121 285523182 298176758 597841117 436276836 273902123 59711355 843929601 646665544 679843215 673586035 80464133 174704865 923674418 696880395 923296458 544493265 883043365 444201094 808118578 555253030 410669946 909435037 467213596 953096645 578223141 243012788 603689361 7491276 705912290 482215572 309397068 334029799 337954736 414851751 877844687 548100709 978626129 581592840 839335184 362012511 908764201 528050003 88312489 916683077 646285752 545121281 973933827 471749062 90372494 828052298 248612300 398242161 87509234 46217794 896072687 349180683 192537085 61889827 545286341 651073889 597719816 1367862 107144277 39460773 102207785 496127241 55598817 487163256 466008642 979851142 767538554 795168531 930532483 40761518 813168488 964438276 875566160 424688785 318577076 114731265 21801381 656258261 550438793 576324884 245919746 752949103 355334688 220265887 528903094 492269379 74313692 536819725 151171511 168129425 658390909 446753805 23876687 652187287 196927663 243764199 337008123 89909330 472322495 85512665 757080270 533444240 48074264 257643986 248806828 210577959 747921283 590728517 808238574 268202504 832871120 890344610 345246624 313091497 640328220 843304300 169276126 296630090 761238160 717632400 294370712 497439430 222673986 404640207 172588688 966355408 295630361 22686373 183919503 477442704 290460333 394879188 411489620 359787948 329621417 423100180 12417810 972684483 204174070 865865327 148799997 127720129 870041470 167023976 341744018 813153205 780917551 554371422 601056479 178364183 914815196 299852363 672511907 662649907 514460183 734056134 329243163 262597356 61104117 971908774 950122015 285053347 703874778 264704159 48228404 552121612 156402752 320754145 46733619 142159750 462473353 13098760 871696523 798479679 136164896 793819300 145835686 946794686 463326583 951468003 73607379 290622417 221777290 739270797 565219491 688441312 839171228 640291353 219188100 620079585 212741081 420179068 848762784 685884987 533513523 784200079 103440878 439787968 253688428 985146965 146207152 992985327 89015219 643504505 941574206 5713790 584102743 952319440 95463392 77697254 649220139 999494498 453183144 638000887 634701525 882059625 617310310 879830184 92182882 421443962 996054397 331815818 984887346 117440444 518230121 831258400 71647398 254607418 961183077 934103110 711110341 752329992 497598111 637066851 113185242 171258885 513146257 622241183 745513244 339215819 395367126 2797672 336227349 239469049 996467125 14400626 396465529 259357717 734195981 961321294 389158126 962296810 698318945 533152601 187282278 967634519 808932919 203568656 245517923 224050305 338907557 814545624 657940622 73385432 968824562 911829028 798166216 808589713 652983521 158543643 735139056 221768668 339287980 885907456 242179098 100311223 26452354 394027004 23133080 227834559 446005616 165352784 410444319 807198697 401365704 632391703 923337570 655871909 138091029 541373692 530086944 416551916 808545817 971020702 513619423 438630319 330927426 911881290 391597985 534448044 195375613 940301773 947657962 220871479 107363106 936459253 397242427 11390465 802599824 995834669 125078886 684168310 177070455 161545286 939293484 957898861 950098807 990022533 345854046 196103352 666737854 170541758 714658363 819808238 481053512 445792904 66126795 44245125 83668223 777083843 761981284 932084615 38316609 611329240 660112725 368665232 862557642 725545712 422356143 845991391 61541143 351431894 415180353 513394500 104900128 846930422 253332435 823183633 233126604 177963888 743843075 965360208 277803151 94639686 965172282 425736205 63501061 228335599 27398162 894074385 65603140 248292605 783828153 828989582 316295250 119309799 774105627 148213604 398823246 528265362 136309765 490318404 891571957 252673995 180014970 588040456 342231084 241440531 940690862 567292564 321094849 226539140 15278678 948428429 531239017 732363534 229921458 654647536 696101007 735567959 854598039 323973202 719510980 126607944 912770672 11798269 172080003 235973159 437518133 594118515 897289188 959742372 198605713 639206474 697640711 958243908 147213394 577012017 776331612 457484466 575585443 33298031 361928382 11985785 669756703 509478701 294646681 385959922 505207319 676694384 869430830 133961059 542426073 651130613 638340521 706121470 908420933 427731444 286028285 648781125 419933603 948803002 815391260 552861945 190375958 795322379 490930312 492491572 847265845 301845973 120265054 324466053 108039134 749636553 93490826 711237995 802602969 930620738 481450479 983356597 83122670 714473442 759936390 351746086 855901658 122719806 188733120 831907006 767703594 838718244 636024700 1001477290 754021494 548305492 578749778 797612386 334083626 199695541 11985662 101649257 847710594 178884858 930570879 189642705 429959394 565529277 925146804 140306668 620452545 447408856 859633136 792000435 156271741 632918930 791460447 254591688 205059118 264220430 951277468 756429994 77508672 59626230 51756342 199523590 455449036 714626958 922308366 610112361 232049388 809711033 299550331 970492396 956426649 532961390 213432507 382219605 254667628 544529132 35014064 751179269 290802793 254540219 918449824 197747323 93885 804982551 913959557 860970062 270716325 413318672 177194367 972442722 55821946 557189660 134416208 426027995 156018275 284098264 20884231 533936219 32757546 487399632 847808511 81575042 248512699 549812108 794699389 983109334 970762663 711512935 144298202 735755514 216762172 668672689 966590171 647607961 577092524 837163946 58266362 572164447 548620481 53824855 884256565 859331882 583322355 277296020 782553254 603061966 147067033 832244093 39986722 920268777 343927397 129890411 120064599 612283900 254461748 749103650 642167154 63833570 106729065 962575837 366100776 346256346 645869054 861148222 695946431 750479228 46408380 38239592 535044982 522861387 392709888 197737813 505092016 531191522 617883046 376382063 113547130 633561552 816654020 414421971 444698060 391410496 977917012 850696307 1937303 880325850 55533436 910962670 93037617 410038066 826142738 355952223 859041574 614412426 382893514 760117568 952450985 920909504 626244171 472327285 616840955 663884210 548520768 206914798 901804648 575912265 573309447 323575392 989558628 964250602 414441299 696648319 263033003 333284968 329180425 141008392 275168122 726318080 8320536 902903531 83331881 838618747 860150395 88117924 1000185683 918579162 134916986 999738670 242483779 171847745 206209811 1549069 630334927 616478161 270418240 113041069 540765945 874260315 26701090 180686447 168806821 13960834 828971363 492792219 8696520 819616979 82456792 539013287 502528508 278653671 853930837 754473382 961493362 207535674 653998272 5779662 540730419 116405760 107668495 495771774 52182537 454226763 871183616 42671108 617012993 502590878 20261364 869784015 955839060 717865037 888158967 235347231 250261178 475282225 533392462 203312814 372947604 464367276 990132838 248781753 449199877 804077408 901958273 588346043 559603263 716779854 930063073 460427329 761592526 342187380 767395991 191718092 872992335 750153367 329538827 148842882 191150406 451588961 494140196 665276852 940529732 732812681 772448944 46169471 247242516 179779040 349391926 615268851 782434115 168571868 143508120 676529706 495729660 600329731 486659955 636296988 504798111 625049084 506260681 316328449 551312666 244756765 783376881 424149816 806135925 833973645 400657337 748210702 678865178 981106922 555410838 337123115 785463655 390437041 357541694 243329550 64317772 393028109 99584481 121476130 708515804 564857519 602808553 966803764 469645522 605553565 351766618 717634550 197398962 689645264 270733767 798079834 717976509 743798337 795794980 602733082 319030256 429389023 877987136 962947048 614440901 445270984 13069221 672662121 519414056 607585742 139744894 643926021 170456163 138957350 154551024 180783886 60025630 552098358 192940360 669403825 333313124 782073897 134842198 251265730 1001596681 640553808 471757453 80793675 608333641 327734561 118605402 411850053 788709068 599734173 608404602 12479696 358893247 815430008 508267001 668770329 37245552 252751517 56097151 692172980 80190309 860822980 508701422 656475317 790015423 962713811 657759391 969927758 130376386 939366176 872602892 890268799 892034048 574740692 130507139 405805750 725783213 928233363 244224533 709582417 336936541 149621090 398225734 494175221 512486510 370273267 228041948 168251514 353248704 896793322 603532654 828195632 341635423 297820371 373775416 471770473 661741848 164044620 143911098 973830732 706764913 628320842 629869101 189969284 186026808 259064149 938634132 619923894 800833988 558730593 441894689 189992086 19159803 536477556 851414695 186449383 239321761 171297303 312423684 866350739 425709645 914154882 291072522 332747127 512985982 138073617 319101847 558978838 654919248 485210231 645667128 752348515 155195600 316810096 56437498 757108523 747511913 381032661 1885458 293779082 188106437 836271545 457529876 181882066 184735019 338159630 807529233 29290007 549551911 597434936 403405287 337737562 10256612 16934384 480301647 448756218 931439750 970666843 975488678 557968531 196752504 785154817 643331669 362605348 844136680 976780207 198483209 947810826 382288669 555330268 63740954 165276057 625652670 183648638 270873143 568322554 239838701 118254733 537909731 202580876 135315674 167170043 401405699 161512304 410081227 225510824 113641424 177000621 626139521 524851991 683224368 521057643 613416635 142762991 409908086 852865575 636991742 963400640 981804255 79875137 329628333 364760148 446673156 133467176 122913432 960248613 392441153 984758641 441972552 71376647 833846483 844346720 798672797 58811113 231933108 588421855 265605009 712521807 924498906 60116642 652529922 752657975 771249600 35676532 955979272 998342627 102952856 194295673 154788920 557052262 632991253 851665541 582540919 731127107 467668840 976869713 944705613 261603388 315420854 864097623 262730832 81893040 55647619 606174587 255725468 159859034 764030587 886158849 682722133 576137150 873458354 599380584 832513357 330979222 829949484 697505521 53486670 523502017 101907398 392727716 568174146 919540887 798182084 596171572 677265745 366531040 330399852 437491662 147609139 987281634 713734457 874507330 262858325 528929839 151513708 147310503 392013909 815933120 20919260 477201517 599552358 913479244 2993059 692475640 604690564 587433148 11322549 166756242 213841842 953477472 648018675 294369163 517205053 54250058 306263485 400630373 386630472 426468331 294169721 643396258 379277774 844232452 565122387 505618820 38272612 709378572 868064171 710731504 914313162 178887824 833383621 272799379 625623877 751604232 80057048 88842916 352254112 144194288 105352192 347004620 518180514 229889310 108194443 597898716 794193423 220777633 807912027 356360955 416343592 164016901 278182722 382733531 370669791 23371360 968841053 555558025 829557904 426602280 394159935 795100436 240299606 198363895 200859204 414274396 962663476 350824900 246724596 594300194 516415704 837284069 788520112 785391296 918901835 754561422 414324760 706742174 802607341 940785797 693532644 478728580 359855466 826639081 280972403 136135746 410477239 595910289 396170100 150516596 297673057 484444844 723936143 762770355 152734893 590793101 649750878 407593554 40119962 904074024 236224977 727324374 133679335 86723409 900225646 457805884 423126843 794822194 563970168 937425843 418447111 869361609 19088965 693002501 436484659 103263111 571241800 74322603 754685700 921151870 595850199 280782825 547079459 997393228 811062764 65800773 788289588 70207746 818675686 56338520 935190185 711754045 190135155 607266891 239966181 534893625 41960607 142243167 229200144 400901364 408544725 762817942 990360203 571655387 131967520 735907862 339629195 315839057 940839499 26455283 629107339 719413093 72055057 117975692 130657310 710844984 692798524 587240917 871200124 412556109 256695218 817971706 578651051 900402323 204461 53562928 414820309 344568145 624799335 795575151 17689522 485641978 661808043 168555884 270386349 80641932 860571702 709996746 627687562 339686812 981348935 822939292 181257393 680625656 324865991 634199389 36249760 819864801 859909130 631060540 921925624 462862040 840805566 811864120 642940446 921301086 972166423 214347456 724348650 328116390 284571579 109029444 939627726 883174674 957174344 219558141 774672412 71552479 332968688 667382652 717191864 938739433 725768444 423419882 385076135 321838659 834677710 302794301 753969242 43083822 93010110 950255478 435073609 141055549 436434671 835948235 306769936 441931278 978198051 179112831 346283266 464831762 220134233 365738617 157418792 491005486 38214481 448860122 49336110 513598875 922651088 825567021 694049110 660694734 411415744 600495589 524838427 902247921 321612814 344674467 470445535 669011951 14381782 82164929 221429529 332712243 694137472 35318465 572874694 255380466 938721015 432039537 898836766 560373069 407886808 885033971 266241034 484777246 388331783 627202682 674506350 804361227 994130501 169608411 703450412 81843906 379079062 313803467 131022667 239736428 943701015 804153158 461273242 451864433 989736084 655271587 352687609 951642065 169549464 848879855 247833786 70142157 901255583 746593533 311810785 645299837 38126493 608599969 728266242 85470841 755529128 411011585 756469395 442711520 930662095 300634793 778869090 478675462 763769573 980849889 100187136 960517804 340642922 36661742 232966711 489417512 850997538 302035887 706241670 716661968 621593214 520038107 950619485 115957098 271832347 834798741 661897519 652593802 672606714 939950404 107924150 235518609 413151456 780927619 485105724 855583775 361945067 767506172 852730151 179545003 480863566 159616110 396704880 81678924 631749199 162179486 332169855 500494743 786710738 357047851 404123016 526269820 27635127 598012783 382485620 528076680 910019041 30079125 613848127 999928715 475770016 689959374 340360691 375462545 130054500 689872071 282869672 340156948 284185492 600233758 454430381 852445236 354919804 826512696 484154313 714789387 500586340 996132125 749843524 699685402 603802177 243635001 187402211 300830671 733757758 806469725 672168885 438272268 175259811 888099163 38753777 555517010 692461569 651235080 683013615 871498612 105653503 137427016 912251647 763770498 924520801 639098794 628299986 966038004 28255771 824357711 656707269 12354761 183429249 183496928 846847212 859228624 143187387 997598428 557406038 906034214 488594990 963563175 580139107 424740363 368885878 18442996 446611816 397315588 510556576 596930372 585345992 570761677 1002317375 863033206 771879726 698224715 964504384 254404308 264748098 508387213 824690369 552929000 412239746 670538476 672194426 98498268 356539622 430921556 956319569 532026801 293712338 312791503 618255378 520796087 832593394 193837625 150361819 593159710 129252182 975281258 17778659 41738812 302287101 858486501 63815013 14061527 1000860408 708140951 576908430 286507934 259915684 271419008 56626205 377763031 183179844 868555842 934405592 353434905 450318917 409074767 877468801 797787885 952463227 54824312 567664535 160819577 214493044 495901784 661498928 646086714 340763352 924931844 855546955 595274918 511339134 120717595 963429315 838707165 874579569 98812819 399167215 859180930 133392968 962984100 714364234 148648492 289768226 458431196 574512203 550081607 696563395 202484712 636434496 627826181 169380937 750330925 726826520 69069514 294432067 278587546 419381686 37231542 889788706 795946685 867774177 340665450 1001329533 135047456 542541601 277996704 720318645 49046310 10817255 290556834 846697967 450114710 109723375 992445712 421629252 876151782 204377075 247219832 211807959 880806241 441545471 945499991 139501965 178110418 252630623 178355843 147561934 85861726 62201439 731149360 12330441 651819291 443080632 862940579 320535579 547267469 283845813 929150048 979099666 626238785 99914487 831903214 484106902 372363046 668430216 187963435 813832393 770936823 861986204 959428364 762774454 805792278 192649929 118389476 162482167 454568236 621734670 415398731 970504663 639272937 188390258 534018725 81743715 1000583920 571416801 221567650 55536626 66165694 984938218 136804007 677610190 782243576 872526909 230285385 866272122 568770956 997603472 976346732 449932808 699481150 371526743 275028631 221700984 850428025 812040008 116295250 663395348 937787372 915254076 585486643 396461483 960558751 560898701 111707489 525499994 958746447 618973912 360421646 7288999 879916849 630410268 573703618 670783128 856312409 696006496 517394580 569084055 507031144 730674520 738746802 145017545 224384288 234886259 943135120 344269850 673809537 904738790 965048374 866164888 34540630 502894634 790592008 873239352 332812824 161939804 354363149 155779687 841913676 800592754 121527265 996110769 269917654 20630161 823539810 777378425 163568344 835750853 109443941 43138207 184249730 903341287 835892671 646321411 523022492 675675981 294230127 988338440 718864746 936918517 197417416 686454085 283203630 377881810 715849767 79912531 674740622 712486623 919395699 732054979 990949559 133555995 595084396 780319910 635773855 237029295 538556777 465965380 365208371 380889454 396677738 432110458 489202348 27618383 773694477 283675113 504527162 204693022 701101347 501675258 533426016 259514325 931573345 511553638 605558752 947709731 693275945 328521807 597559352 122215332 799299176 790687734 418580231 66171118 7914083 61883306 404609296 309056452 308567031 889759503 736448361 680836937 524793628 73897063 14888953 975045839 356831812 795010326 679691623 725375071 887119828 225337792 21952327 803904424 51670186 170296362 345945849 237650144 942386650 505425467 610617440 297798205 211858030 316935176 706388814 204905805 256793091 472506714 79684163 824532251 912387649 670428812 155835957 662081513 311994319 224103226 409538972 150100956 291288340 263158921 847765999 854383607 30429613 685298363 509476245 114338141 33558701 219232680 488410348 516397847 895803849 340583056 670927753 204486379 751972508 543903668 862771702 320943968 251200601 11017449 868518574 491738444 574985079 393441105 796981490 721258377 911365155 802042089 807872459 306392197 568046544 602873398 609675588 220131716 662158053 327735565 741806178 505531970 141799702 115429689 341446741 499584533 686700170 121888059 502727830 334257896 608078995 16313035 347759697 975886642 298787726 32091663 435388153 267918986 426292630 994830555 854231960 207925300 527797693 969069265 257112739 661464561 675816738 744657327 42211857 850650419 593551414 886351810 998533427 784935010 575009551 682526290 873179689 805236452 239820318 886505083 493825467 532121731 670021304 397228571 460464056 249983663 115124704 368543573 444293336 165908254 110888480 810107829 318313339 579944098 386616897 588876231 200466622 435692350 458448951 316905230 616723253 146295827 617236061 307326914 620658676 666626008 414584804 692726064 571593924 935708105 662253662 390252888 935234677 520175350 507388547 474418917 432818419 666996915 388780805 348356677 568152749 285564636 862315595 121016816 679363088 473318362 200791199 730307123 842901640 149595960 889340496 815183979 601470362 976267245 193497312 431960955 520609157 610152796 205548211 655721539 739130119 366521197 872529901 160395507 753307100 740188604 180024951 620115239 181474532 795710239 671298763 940326298 902212831 392250984 280501234 787550222 604218792 31760335 49184999 836467638 130654881 164433827 400444358 811102863 412118562 69689170 904265846 997758566 100472766 454112190 739407977 438951304 510451071 701128599 587189469 636833658 120415210 615100194 957891736 383687103 599211438 359010973 818142714 814567530 276482074 196215064 454266185 788682151 321975406 793501625 156191451 241050406 321412445 881629690 16579828 436716038 360478410 118132500 595575764 62269339 460077192 447677979 824883370 53895682 368138001 208536430 838249950 358295895 422632089 16411829 771088018 456916680 393925398 164998279 843961287 946764494 196726948 645453680 24051947 584232567 833150875 956430943 814041722 112738748 86000602 497880210 705958529 533432412 36749679 184608698 848875964 493342161 214499062 252827721 945669279 645671150 619061189 56649288 801396389 476700793 618115895 984577057 994496749 471622561 889537641 487568433 972698581 880916238 927037325 327469008 41122376 764988343 705033232 652591346 338095018 25416204 777717396 573595647 710292612 738261066 626062259 430591715 655167980 355931800 992478472 781775947 84107727 827456009 156731595 379073682 44063715 574507295 13796385 523915939 365576620 433877602 325932106 411553810 895457901 209811335 323417420 755609509 963954075 392003845 679175952 769451255 482204282 872045244 476360975 472326868 597995029 849049756 415271864 352238641 235522692 477084975 138973061 473224964 788847739 264077505 651514608 178929339 15540234 48517107 22350667 530199306 579443223 827517431 68716827 651233573 170311368 39305051 320356006 419203375 272721255 913002883 129049 167980982 59861197 229692336 788764167 328851300 344877738 939549230 725849278 199881722 530736186 524859784 863595480 202142414 844464222 420237494 689972718 806787344 417991167 749236021 390163086 504473943 179349991 523228218 388256132 845951284 742465596 334835779 337901131 849626579 309275006 166874430 834698745 762982685 56634568 43363573 37077145 953302990 506455434 285185828 255326107 384937872 380343886 521734940 273945221 197177529 915876831 74832152 124501894 229605508 639417756 138890968 189232529 885908577 995898041 251151952 999914339 914331925 259278555 380263666 489563538 938787482 719922458 308822641 196951710 788023426 846322178 128358698 707683344 204343852 66777136 278204503 64334596 882563751 502698418 211206387 913781152 307072489 190847688 863851765 141353612 530517666 943097352 561399976 330907845 196217655 829111796 232953702 55959611 288101982 400392020 91008294 117833713 54098579 424165072 545662116 632510432 241813115 813138413 929787375 422251435 618673088 777441413 89924233 573598690 679339424 408296453 230083178 772478509 44975015 846261670 867107066 992988575 298890974 452725391 172448124 47218548 28866547 559555061 113659268 828408935 523118211 271014001 295783320 79739440 67853132 990989127 937662393 296199209 503073611 617174484 138643587 650306939 26786554 372451345 123343146 884654430 29537735 674049362 801389247 316049853 161328897 642542253 637048146 630940590 739560789 906781322 229686082 940128 226901696 390583406 705855649 80014900 903126708 89395822 703144643 428122360 403082369 211783049 345143475 709729748 560379123 878689292 131983000 226358283 178964583 477921084 978374067 210720962 867426184 673358853 76378529 764772341 135340366 532656409 924568483 38600680 739492765 417985861 37342708 908539470 658756219 95286372 180829849 284913375 271152306 259061146 375378330 278964336 821498261 305940189 98059172 402240214 560987271 141284825 697876209 379144627 982847270 873180380 530262095 437949801 965431806 692324047 149939542 687246289 911173180 279876718 124964834 982170201 190553892 294509463 238409948 233613490 416675191 660708940 229078837 805561967 626530570 575658093 422424936 986421217 53146510 466315535 952991513 535742039 590100358 484445598 840102094 526384086 40806550 960219573 729223550 3470995 208161814 835345455 422258330 787824640 848911734 681940365 308316400 967089733 527533384 973683374 185647 420693832 418491880 460225788 465312310 353361661 698289929 26760680 394087994 688112164 326492615 597345488 793105247 988261158 968950788 29099614 673082848 965575797 221327061 895501113 946457935 869707285 300697254 932971632 892390214 343590196 195552124 596016863 410907261 468291656 88266325 62067105 335364368 494750942 690620222 75258959 10751428 229772296 753537861 946033363 845454218 706453956 1816047 8244484 937744514 708303525 330542092 879487024 364046203 459012801 241192268 820412023 128019191 106337295 758120796 387505074 56312888 981775742 583368620 349101554 215082942 439626977 630578854 29869049 727014611 491021782 16026384 623178401 249416867 341277067 92969500 948830841 485271958 354222558 352417684 724470866 562036587 476319892 366430390 618346714 952926216 347123917 131624011 242242206 956544188 818744484 307392997 76190942 164691178 569603143 280181130 23925381 648365602 490738069 83583607 122206637 542318843 136851787 391923203 661324231 308014662 186591435 349786930 777793900 666087973 203981282 83480398 222994563 382626171 694201628 963214878 639269523 472946348 760477235 908936116 808668801 896338444 560982915 502700297 133968690 453927541 171497687 111526961 617230602 815863679 937613888 257804476 959934615 540529096 962416319 880070565 58573003 473586784 697237882 152442034 207750718 180818863 352033229 890350395 928983398 75457886 826950752 90206578 42245908 860316282 1001359594 180248952 884328143 285832837 92791420 806509181 143312382 613812504 662766951 170862797 828447915 347922945 978931501 452097273 327866006 728394001 875337670 882533791 355437080 546321762 829941468 618034342 154027059 283821762 513481725 217260118 398966921 790619817 483633178 791836893 753526619 516910491 239009629 392902597 543651008 270606345 736746813 868003319 230740536 580192943 238588797 868230601 172953298 516594798 952184487 236509002 975001805 418811401 693192654 3010885 151370254 648611142 867473528 812674796 109400652 136279794 70523269 947575655 673707928 183427264 778360561 72443338 798686573 863014593 263270907 20113632 321308174 995809776 771429887 437408868 868140323 786044514 969228600 447069676 419040950 270187078 414584641 932576768 482298277 6456967 35129322 234449569 675839980 69561351 761212495 591209284 536221539 591427470 313111904 716668884 855698529 853200702 589328468 216915767 951026443 593684044 541356024 888322422 529895791 387188415 357952082 153692282 926515260 407240596 80950716 446588465 127237597 177060762 187976757 39640229 154873361 84108476 226718895 206201704 542137210 924793156 299772123 483695487 151363116 994120741 447671881 702706525 986571995 335110502 604187541 875921690 728247551 140525575 265634237 307938099 992385416 531249224 302674697 240185909 305476708 791102313 695147278 423743273 365768284 739760037 188202242 275159181 587893031 847750349 904086485 876108548 362880601 122135951 546331627 592154669 782760540 530290148 210720549 650991 327796119 790775822 394277017 389959066 780837227 925529219 888856720 347545837 102875657 837703996 365325062 758598040 975722322 724092605 420204953 814426960 134898010 815992930 275298086 94264821 36941720 228786565 521985862 419502510 587226732 1001932181 519290394 704497462 633030991 629769501 518073337 63272284 437363657 319154552 363948527 52033668 721945240 765370672 519822060 840379091 332192940 233365574 727597846 250589423 461211687 193574044 207067333 68678751 642033330 98356127 211557066 744270552 960741712 512411020 957214399 709622855 393895663 620058297 419338 113628265 196013922 549674576 3222570 291137093 719330456 494272121 541941383 985465583 367822026 599871897 195734901 727716059 241487600 785032541 462964133 2844 638682156 321802978 687975013 86699266 348623826 188461671 811856881 832498532 126499745 811395162 716774098 983773653 724913636 339316336 456658481 840497743 647501233 660886875 631948732 211624145 327809281 418711645 875288721 664851409 136558062 862052606 879292334 474852612 608556830 992888553 272827630 111573323 249856196 607876388 195605628 907808645 50159279 144459231 391058748 331364558 236393599 699209811 510898419 532058448 440879341 365343877 924397377 29721203 367246426 111018781 380047339 38662842 77663178 778578831 660946025 253925511 134314924 26228616 796110196 564302855 500584861 128416461 228643458 783028158 551598176 739417681 323279347 478167711 995499342 364680310 407049186 152889885 362758848 526547626 947901203 855621733 610126478 893543488 261334382 153604450 971735988 695723236 3128836 120374676 196669414 209442278 376339606 986648750 957720424 628807165 430950935 159092825 442755810 772207463 198565533 552690210 251480616 814289898 305439660 778393744 867204270 507280297 623029672 487190991 206524110 809528171 191356971 8897180 439048672 104857842 929103272 304536198 776343418 968229483 548471578 877012682 687219570 702807390 136424476 497476110 276573855 469193144 837668728 802043388 61731558 875840690 402194345 331797708 468252892 19421711 929833139 426777326 973657318 453803435 451955770 920658402 449500708 909341727 286473831 80500671 511890741 156059743 996565404 266147399 461113024 524238105 643713843 982422691 276285722 887562416 208860257 22149761 991670795 182095506 482892998 502178931 599273316 804123202 563412537 725043003 36819359 358413856 605869561 688216712 554687649 576093208 681394834 951422102 693198603 488663848 31704768 770653461 15436601 362833525 837920843 404291328 421012289 842361187 726505848 308224387 456828361 1002295951 56848911 775751996 513161775 776662683 806335613 766596016 879815732 150500992 376915355 301464621 257820064 781541406 477712561 973823449 603824062 93176308 934839234 295254480 966634185 972851767 132819559 915517950 28625123 460034932 603412127 2054133 10152054 256939771 638191348 798996545 327242098 374080488 197994522 464373836 357673179 807129708 354732337 55591714 977234047 499329175 2113835 885577453 992065656 641871108 704814764 348422766 995158161 423643545 459064850 256438916 442721018 689415 40685395 781732591 384154904 250793819 534336789 448811382 922006571 858409810 19543990 471022887 3451464 271367373 730654295 152333884 366134700 199337071 711159394 60355283 27079569 289998593 136594822 717352519 86976250 52031763 913186691 282050989 994244935 588984407 697625878 901024931 242286315 166061486 306372725 545112818 767882910 840346542 948083830 198653952 171942392 772518873 659745985 842179904 175069088 422270825 258403689 285415331 441714227 362112607 174389419 943154005 524170607 506152867 778242416 84899054 71710028 829635250 771369491 137879549 384284072 730740178 124168885 963800902 225791154 193124066 166160660 611565487 311630023 83008868 513313413 664585000 903987180 495826491 42652615 716940247 529999967 430482369 47062729 649917605 12517003 531878880 395302404 4497986 560606253 740702015 163989022 37594382 74302014 611802429 351065983 319758056 830244252 720311558 251769220 726152944 205527160 855077291 532123874 575445071 63879310 72027736 883898974 508232658 899831215 647668300 849238519 857271246 138173470 970144558 62152446 7667030 675785387 445522906 47453567 794114976 677061158 370769589 403943917 261663042 727055100 720340083 160572553 595594994 650189550 800095984 823733673 907015123 172386698 272464046 993073390 920308965 358846558 605144509 471789917 583055282 799924742 98044217 153051551 922508430 578102719 493174150 532073522 905187267 930513194 981054970 37380778 874070083 768720174 292486256 436992083 780631294 261618197 604291550 208580667 701470638 215445317 435416572 448763577 34084578 664579266 503000269 309286385 902794657 252745066 584196486 828795987 96113736 670562588 590385086 457291843 755312103 584194523 813811498 199049955 679403812 158907041 104440213 593515963 369841121 939739242 468374158 440175306 675382016 473307615 1234740 225385319 130952675 485912132 149055281 749409483 671130376 723589686 753110329 153552633 46316217 731297567 233921754 337663324 192414011 86895505 830639355 151606975 682342282 290233175 145451331 246348516 273301304 223234932 319856720 57278622 743103753 30053660 928250671 5163166 265245465 773707097 910237347 537685801 712758990 392935000 770758182 870312359 595036682 673844833 727415555 691931728 324301839 712750067 579288461 353244803 559001063 875923097 824850606 236909832 465855877 162562275 336842133 522506833 285317559 324341159 649055795 725720842 7819687 203246077 28111850 656451837 1000437686 849571754 428408101 468631339 73515323 261430045 508482791 271836348 338884786 505271423 675546018 572025425 808798398 167110072 287884811 491666532 311458537 966942234 160190731 109094090 336396781 77188935 745035760 36836497 515299643 497928000 428087660 572753605 201547968 352766692 152436245 252531702 122430679 970079062 954915536 858094572 283070212 346384730 23383822 32691621 764681141 38243008 899285857 947066966 895438750 23968481 835110060 467195888 391644178 14185297 963818987 278881591 339041604 363604853 1002349734 606925076 504948128 606532803 941666308 654143763 458678108 216419220 348794515 575073072 731793622 960368826 585681045 876756700 706507156 618895740 592877941 289330742 739307905 747687228 950827875 89167356 286012489 5819639 139557723 436562324 310165278 322000230 255921565 783582599 381531708 247779665 742950286 971070554 465374970 685895607 356827709 785655371 987084058 426408068 697944793 766622298 419013383 612458500 994976535 331706798 693629955 836599021 262169740 298910248 779247821 12541731 290812100 986527240 591412600 558862941 174036029 881608995 845141565 394302263 212117870 847283138 155250088 842024057 940363886 437366615 7088970 32779950 239829353 25589397 313731625 140650167 60381465 90378792 610777866 388465684 198230109 346724977 494090258 253641910 620411298 685202534 299986431 988799267 129465520 205726209 225455506 490720211 953785026 545071628 316851492 550003848 983945036 8130415 106775767 443001135 738641704 42249138 85375925 845332316 419358104 568552588 122783339 445224509 212659087 821260297 761792317 804079691 263588108 685896079 653963142 294193057 764073545 322374198 526864768 884003271 693976231 278301487 374779456 801669108 187215988 758873084 150953059 625631915 200170065 569842398 496139081 173766324 662770323 602127003 506765705 64329022 109676359 786938314 590637948 535645668 719550300 123028733 899822505 807464929 511464039 730941133 9558630 556976516 992193088 298879638 763702921 64174920 912541434 139262293 747767802 462412562 97487761 344853747 163453153 385721541 238381102 43407677 609497370 673289323 646309581 76785843 31115654 794927030 497519608 775775191 399785078 290080632 617888000 93057456 750548434 173093833 431084686 230262432 388121023 55339267 260208283 529555311 364499466 500994399 894460883 649169171 28992733 726489074 438921997 670407343 994158962 535832113 468354743 476250720 322855559 846792349 710106225 282505982 785349267 805222438 661527938 771127047 139531666 363614835 712291471 595609156 144008466 857752144 133798390 838981991 155738613 938606738 753598922 491414280 34982383 704077037 87924639 391908968 237698827 607525308 503848275 942992013 254517075 167240181 299402009 739378095 829514016 335120049 304040785 333490151 731651578 205736908 128410963 299032797 197612968 504017059 392896415 472536761 311911134 698315048 42623368 356742822 705011487 853608638 106744833 253273439 376964097 32393011 208050456 258416681 576396104 466685615 507238393 4629319 380208230 144821904 480134808 966206534 537849432 802280535 31295998 470075508 284862638 169950767 37931611 631959434 247102695 547459052 58809687 141648541 903097063 529864411 313880765 927101589 924322191 979106761 555057773 411104336 98674057 213099081 883175139 564412277 257821042 945662555 273927172 867391195 717385313 899115812 198154365 634794514 698586566 278221438 477164551 444207338 971880585 489868134 663989451 617956495 872538647 699302005 163597626 825471674 778450209 861190072 460049550 516525477 604444323 541507515 430253826 569436391 523774756 450444709 317572309 215241729 184686257 321123710 778805558 888644646 637515036 560987650 979652793 66742948 392847728 939655970 541971211 635769646 274606209 880179634 388490170 888638203 883529939 218665678 3682354 591225524 687191430 640994490 351606582 443849507 90125270 966091377 9577781 18437440 756448968 940914861 170835473 488980919 617174129 463662200 874062658 450777500 623580518 512391306 418110973 346748332 447746078 71274134 583802370 751261848 588973941 188008405 302078352 518667243 437202247 944404961 318671248 986371959 978060949 313776260 921524963 868483438 487065718 737441001 429267318 939101856 893835721 685048767 992408719 925268322 392430012 573523719 395892134 425206908 486822753 421858195 746735227 884269277 465566799 825889198 288305944 440160770 599892250 816349445 881545322 308717785 726231159 743672361 97518328 857527363 717620846 396767164 831285352 82335406 54308759 41403443 952325766 533937949 442618141 802800337 638752773 359906860 115237192 619304303 180239065 889593229 519737785 232771877 758277670 601231001 528512367 425935561 11009361 80390039 822592500 888533335 642920494 304074870 651157192 920709386 102557782 210939160 157251578 450909641 478545882 912832204 627785475 631132043 624190248 898116897 778773188 456277219 576081472 814968970 533988443 120525236 713499543 913164694 869176425 721365295 371987254 285694727 478098160 645669374 891568161 93779584 216939126 427138379 464605257 284184252 70620048 773410985 402754834 752155354 122167769 692842654 310584864 105149185 247432353 893945184 653478316 14933763 334027232 117927673 718823944 153585325 94143441 249889524 527425471 776761052 494734413 197438729 341117958 142508552 757416059 219166238 827138489 967045417 161754232 774343567 161037483 472925189 809590353 892535797 368072936 893668695 170734369 737403404 731570546 645844673 339014698 241629828 441810895 715609869 346889781 179807467 158712695 133490232 938608425 405273845 194976319 269034651 164865301 181468979 890818300 580494948 825329927 781130111 259239812 975997864 888034236 633040649 369601680 688661765 524432578 52591001 629332890 778407034 941368149 616909694 142703053 291383287 385399419 111359862 493632059 456945902 130568048 859769958 892933208 39404150 279192373 935568559 980213741 862797320 103149425 772538160 83394515 600146907 628859423 545083443 253230803 402386622 482065326 931244182 462597286 580382222 540186180 57459896 546209016 232003451 269966530 776058002 21248765 584026022 335745957 317652154 24668530 1988974 947318797 248654781 730793364 739296576 353840434 810078442 776281938 668782338 884808693 155442022 820819926 268170879 799418626 179506670 738175395 89243141 540603404 638473047 717436992 406544981 775056972 754891625 422709682 748179909 553720997 864987211 957317252 371721523 990734428 437113426 134840991 125489161 745382459 45389462 856011699 794237568 627697016 773326296 463941512 899982158 92121261 771642207 713730996 68046860 426855561 200264154 761077605 848502069 166570614 530738768 976383294 221349358 305691162 217450222 757810555 781045630 628286448 504573948 997400031 208164809 36576995 856108019 734959215 131750574 710873173 985134948 356959550 236453444 973384090 247797368 708322759 839726888 672947302 449689653 361447042 74559042 433563096 426390536 240771407 307236483 299309758 364361087 477720722 371337863 789903504 794271797 152643820 453265531 804266308 486974529 268380445 446154966 262324051 971777852 662357089 19618560 252614833 718537098 585325630 715691844 381768446 131158538 6290452 278601266 258078337 744714529 2722213 596874709 27653933 372590826 707533897 555317154 325505645 436890151 409617776 673793305 702575121 614848667 710988410 157581737 774845090 247774290 577482305 794690645 762340254 459257457 948165266 290853521 28272958 360081834 495932361 690373551 871347607 905803949 588043504 849665074 375607741 445018442 65549385 40188173 898220348 756106965 650903173 366922571 647934977 362921398 630160305 898092563 417124180 379050869 283422081 393169519 714238992 275069477 983724538 261380520 776012182 166837318 347345267 943040471 339758412 930758923 542667029 180666732 792108421 531308346 345472911 222106740 812647559 589978799 503761385 600454388 786535735 740112836 531700978 318647836 716007105 530780769 564061503 547777615 469946966 491006081 423559753 909396723 38697862 696462009 783629713 917276474 753086881 342609992 373192218 812283434 356460714 292901756 956169267 339611532 995072790 870816876 422428030 842661136 244777832 731171063 957114744 551096094 42181631 501463071 707572388 848378320 272176025 68966831 106383325 749181972 875079910 534886623 794136646 37701120 293604507 478676264 188690251 925538907 603876592 72532848 457381690 628493621 565606302 305829753 156711467 988136959 830444862 958336252 982686818 187377958 97899498 603001324 476227221 978807518 601484666 281767899 420436917 788020341 661424461 93525271 45044269 246309778 568670738 81998615 156883694 812636613 345943225 42911466 19400336 651895817 825500100 822030316 80442956 635515176 878023679 405102308 361019989 759293608 398867313 838385737 811885262 125862493 640603911 120317428 725352992 415515945 300296057 1974360 990566339 351132606 346807551 364904982 840131854 330578220 686723067 635141464 344120924 709123312 122892526 657429473 44976237 929897940 820700667 203405494 204350682 775772184 510640946 448773743 907138742 676097380 226632781 116943438 838982199 680799356 465887396 767286324 833526232 886233067 343966820 300521282 805370476 325891599 834795418 185635598 223369329 551030521 167358946 725447557 853709556 527054701 760495221 650374115 939858582 589908042 15043332 960443747 842596024 457449361 633936877 198447289 235173018 360849112 99291683 894558453 63613266 284610234 652458708 176942799 19158076 735127736 68424127 208656821 945705670 642617920 193941846 61141816 444544448 930468782 206555261 348642547 87385080 428451684 779821251 578151742 698531338 218243257 95376661 900902267 989598348 986812105 415152926 341284165 912563458 9664622 298347990 919749147 278179937 964796957 616587353 48192508 841067412 216699215 760395657 493639115 141963484 804418585 102565185 410185180 668293274 47352659 707858344 828793123 444588061 913762658 638204795 119723775 379947012 61399201 984412240 590900605 422715641 23307175 190095825 621201864 736902349 705718080 449484767 160959776 670293491 655690256 956790487 793797803 599266739 196136124 114069252 597573878 22403594 597930453 367278638 305760328 343511196 893026385 228584667 336799982 381701678 431281054 534426841 123438831 270658248 408507355 539501699 753163012 368934805 609103851 692895899 941632608 464464483 292983043 284951588 977413608 315845473 465559999 407510628 687071161 375493745 759459420 360816472 50014325 274386423 313677310 779408872 846073485 413819659 13577181 121652729 179821454 703947571 59291600 652939542 598965678 957626883 811090130 580742497 93951604 193750523 340217560 800834935 458344636 768574874 483122094 983910984 559932373 981776692 510955714 607642610 767315298 595016182 430369259 147133529 253493350 453557833 958363468 860060933 852634197 835555163 65823293 358368373 14268247 559269367 609970584 724739011 519088273 389066723 765901616 133972545 173288171 515092173 358717272 839455529 155219186 649704072 982132174 271533965 303850643 51824582 796280920 636704808 278524491 13757592 723400008 799913571 791985456 831495633 596448253 119234056 843646937 332904979 175328056 762459109 764889146 663276063 228544031 808672554 1832306 245470309 306321983 216602482 613162579 27704435 737179407 335502023 604462436 508396506 983619416 87252133 314379299 171242864 589377674 737791720 748652084 861023802 117456803 772111105 570871349 92015833 760931514 818656317 133018303 345164922 218096343 626463203 766441412 645203517 943406716 145921772 879455304 537255224 966577062 761937247 32592403 137138549 506306894 154164875 142815075 669190372 922082838 91946498 49925230 273032195 539409910 338455889 45871573 902724720 668645856 925696805 947172414 852049352 591715615 481186094 307666895 276512807 632576697 110069474 253456377 658030855 398444997 261978447 302020244 206071753 912423848 653169568 903922268 98154458 912067097 264104775 698720212 992451115 413401785 48690042 571271783 73726580 338166396 870416967 187222773 829655572 98935735 722099579 581633277 615286755 232479147 546791127 332237994 82289621 248655461 70811326 711475907 658036919 517388417 120603230 319317606 600087358 221878716 527880972 476595369 208056726 200618388 250080448 40835456 26697913 1432351 335919202 350074047 430093313 654087823 501220128 137752789 849155811 584498100 21593377 71671031 43776204 953476916 849649912 204002717 479895610 897804656 496028135 834760990 863001289 570745225 625648198 343480107 448912809 721406646 685220711 86644271 800062027 114626371 264000194 339430050 177455813 831262261 310097469 580461446 578251971 296857770 665777568 302341756 638825597 906003167 597388771 499656517 711968293 975795945 637421739 955793184 516730910 320688929 247349109 476815665 464030000 88619044 901665264 12180551 335970924 963677517 173487432 867103004 530513517 375788290 520100073 734256953 671432849 949094909 707967198 238245290 78077297 399699317 547408195 889361633 294685517 669324599 199668552 311829955 244305358 412821793 467456226 341864940 870826438 233524247 213923224 289877792 18356098 609219710 938078837 972836882 202430613 761155120 461269309 257526636 515323587 133402082 600834621 50985530 961830920 402189548 950413308 610830409 227053446 20806106 243406041 63022628 214536760 134447741 688071864 912821178 192162774 120299796 532305715 312972920 232284817 543186065 807520030 351540567 950333467 900671092 752605603 278733367 253487886 893733286 749626141 761520537 531164524 197898490 549154528 328421856 657478204 966875277 821578692 186351776 112648600 800365935 426075083 781169060 360866051 586200355 34902274 490519178 195125327 769520093 727789496 13191548 840704928 675030501 396194842 285570011 129011074 310175186 570439012 293201443 611700426 58083210 27644690 147829607 705028545 279835645 34186301 630843484 405586436 532391218 218183463 71306811 930192609 719391171 674083274 864930509 220683440 773123991 462767133 45054670 300763197 611467374 312443 759878169 508658176 837126000 218343016 452104516 743807428 513962237 518580051 198290037 73325147 948719672 845213861 123990787 831670742 411255762 360561010 470626242 651384942 695546927 517502265 586883317 639151158 809890794 313595803 391668532 388176892 769000328 237477945 564012685 583335209 796365965 521775464 654694369 225416501 987285590 987889989 789991411 264108561 287526544 684656726 786820790 731759442 297125039 318441453 73412176 920824624 767073402 959787082 531809577 766174990 723744345 962307040 557852961 166451679 236070373 249473912 636029433 703819533 382302929 581645825 501585999 673011588 654536075 790032153 560115328 237268012 613448147 485408035 913196429 96937696 707422383 284617628 704322663 947851848 489074097 430834098 234617656 170361464 463757460 924119458 855421700 330350116 574080522 745658090 531064245 458410123 315462775 244494941 775344465 140002468 301982900 459086813 191044546 753703398 67244367 111681286 85532255 633528531 252808658 419821526 333305091 75017703 110355965 830421312 274871108 329406980 304246670 609374734 175726145 557135683 522272771 711975687 989651639 42053652 607577696 825343080 464764238 923628289 146261374 269130985 661792483 84990842 89101228 192556666 717481482 92535935 735334979 69336708 229917796 768104855 424194112 641766151 574147148 427241202 407703142 115490672 134950816 810984091 898238433 945990849 866473747 261453755 764442829 100314659 856330538 458402048 962625453 467068766 787724468 202726915 941059746 654447604 86340508 580003259 969818461 956569480 924926513 981547326 797097951 956923268 581782841 932280469 172261941 58387225 83689796 400396873 602474316 125991432 583790763 754231370 989655204 697302398 29717175 59063658 320265248 879965294 444473378 588200475 608378910 866125023 839764120 161344773 742911241 470542628 226810540 857247871 3373320 278221639 404363939 360559446 6625836 413942284 707985416 14811745 278094034 658167128 832519441 684005492 53657950 31851218 759400694 77118874 306068679 91201754 296426129 846520834 197378600 144177954 987460527 225306476 271692196 477414092 401612475 788098224 303602354 93622026 744021901 371146046 527472100 960444617 970974044 465870399 131209492 256608989 641527065 951269734 9950599 432165846 663756337 109739503 31005931 818591705 202889672 990808802 782511083 378180620 652582052 220811631 233525528 619356050 363248809 800423045 554843648 123477719 419953539 885747101 331617706 460088454 553041715 502701950 535167069 791885538 473080446 555640100 676954337 360434042 765374825 613615632 612326976 652696245 966865523 520230583 805356914 254399556 797770266 92813402 790422666 578779320 469784939 593911311 889455742 149552246 528019494 505464689 728934214 436170757 282224121 780039224 124889517 141579036 681333168 670804370 993125817 866444784 975196211 3363219 434295716 962085458 914135260 999278464 98610097 771724185 686466311 12074982 969915226 747316877 800812153 832889268 682839335 847682996 782980415 747890180 160605428 796677571 474998847 571709260 336081754 227342995 1528274 255529132 801477456 826436998 436674548 200972851 181015607 991191700 205838682 630794548 415131596 504936529 919783638 785247724 648974000 874097701 948376298 837225910 1000708820 407018537 625874683 950616922 403568486 958288848 133791930 494354803 97507356 975200692 643780102 857835601 862341553 682355561 559796645 518369103 77714106 252932373 539357515 122272916 228467015 510376413 453141999 243399070 502042723 611097221 577022272 922952112 975932986 605394152 217008787 461801196 359962754 350251993 954611342 474561849 592371236 233575843 37653753 607579896 965336524 30693038 965168425 713690141 574343373 790677449 807726580 321728818 255941853 18433877 97633029 649092341 179253694 142069391 902574124 649331580 574357189 872788196 785174361 166905354 260395726 139793501 325100175 594441932 831737448 828296390 990497641 457217605 261827693 257347236 963922562 839174192 364264572 100075758 386872221 364511438 708998941 490905250 366687062 253477416 1000123976 482546196 686282285 37420495 970369031 596049945 944748338 21550078 514419833 946103498 520089496 866513452 779485740 406086215 462633387 165544854 97060808 812979844 231251864 570182877 690808276 847774638 149845624 856366070 177340725 501405318 601897464 355634032 946851356 662555998 634734618 219759226 64294706 525038905 78688500 647098850 118541125 875162353 512606014 254968352 725182687 728173671 202604334 881954845 509726758 433249776 205494491 297622066 815370440 892072877 748276921 685071773 672731153 860580102 745101299 85646264 561323290 881092160 778511009 252471597 231293655 410445260 866407351 481178167 640829847 372460744 434247218 347430206 905946524 75840336 152565070 7747879 497432430 143781725 746741689 16984953 438154688 370013020 613533134 861875244 287244694 620381843 559172813 153961773 282129086 407895922 7067598 231496486 3656859 261708062 233148540 850252601 518396756 721858904 400052642 660134244 621994560 740204400 349955567 58923913 518078672 377196023 557105591 138679595 425351920 688477653 972707871 980697133 426154754 991009502 676527772 433283746 694575739 660568361 868069490 387907099 448133987 713806524 809974689 490460607 805255771 4075713 670054787 780915369 165617505 493435571 928679300 463333866 619255824 341447076 766007324 996407244 292130392 493063912 999229288 887663946 808717088 286124641 813526520 148264252 81254229 431371780 729407321 813829066 788067099 94912510 954580725 205665625 663229867 409548991 782458924 390390320 460818156 471585919 360931388 627467138 666063309 278650759 499649145 353327471 147406184 941633669 479151986 39415423 460098213 244509912 645293727 223908680 926974502 326473738 183776147 992803361 318307137 250615618 281895128 927077641 682429746 387730556 840914787 196727326 48942520 910497705 459577035 221287617 994469781 256936561 528119118 581421818 498035066 576003617 660269044 484988752 66090123 472848951 663031483 85679578 676235861 165805853 212857748 367614259 547501258 310155222 895412573 167164730 919815787 973766731 838094107 135459218 569705925 716267079 943640442 410337405 280971522 200996378 458846139 581905816 66023003 876880461 568255784 542879810 954582664 943209111 218633739 482833841 385756403 117025073 770536921 962341575 226915010 107074461 223475651 708662451 822278823 625332047 891933493 692496039 983505866 410339527 568781785 626697085 724167480 294832847 111466320 638840352 20032542 311708802 288270695 533100038 994599060 620536912 364659065 399847428 976171525 622453946 317291390 914159289 920299357 61925752 331741855 761117451 441951633 791056230 917631234 63369696 615627532 950912707 397041290 955351100 918998021 193032120 408412840 754751065 652069329 836769749 416580720 829922411 919809383 561956902 454405016 563305588 511299305 597650661 265585298 572977630 626063538 785809231 380424129 827071383 648086194 334439356 486529975 678688517 643916527 920133164 673042538 481727346 608694377 407853509 50585112 321362527 782563565 727672774 936330503 73692906 236408052 412949467 720703640 197977222 923711467 341897853 884726789 794515515 126788333 195343006 277038100 153281394 361391698 45502548 978770433 704126016 294733185 760224308 645419165 525732949 703706952 638975872 517693469 818872482 821116974 398361288 420099955 376955841 246561066 510594369 75186232 450344044 160793619 453010542 127103548 89864339 816922041 320320626 579701793 353786243 622277678 125794427 111649570 862028078 410571986 741672484 679768886 763291616 817609966 567405114 754513368 965626420 102831768 947753148 519513207 636875476 104107693 496717654 279703955 994860991 861814718 35116541 241570962 445318230 617898309 236827549 346530707 449824145 867556306 30400470 204605079 724771061 585928916 371242440 274941093 403305295 688283745 103177684 92064346 608563644 450681790 600944020 587774150 451405942 461502786 116334673 488142149 404658440 962734442 993260675 681684637 261407470 53724144 429761516 709643787 45831404 269324707 135992616 49843742 174034664 17223643 737092302 53236249 313719684 927582421 148115514 853262700 498858668 420698939 230992605 872055144 20968900 480467423 903742280 809713652 425357924 159507414 267461757 26041196 300611445 272234417 883832588 37586615 29228227 389511654 59576435 513630259 134596437 776815443 692055204 902039931 768145612 802123043 629828018 837787339 277890443 875444649 698449453 927746817 808049717 645856014 544594083 146288519 422684226 905632627 70919591 6084797 555369257 608498179 567579358 417365510 119822467 853178322 48884369 749516661 626462365 12540643 891868505 988024236 307533389 152757099 976237879 906905123 395534575 131107680 749086793 706816841 261208828 152076961 738705215 332528054 951071065 889265220 883637311 61704764 268797994 693972621 970491747 475251257 380371349 975789868 319435832 859076509 155606596 298102455 501009628 761790195 714094100 537766877 389982919 921448099 820907822 666524399 552220095 522681861 447504009 953925314 86814411 322445549 495627922 227462035 944305626 414739499 132290506 658366961 346576580 403725535 494977593 258512974 808675137 11838770 647050324 503242799 450602457 374084094 650731260 849399035 121487036 931923509 248706592 484870229 283862956 2250874 373589935 628803227 867447269 574580904 753946768 344889724 399448856 41383643 157634965 393485026 166816669 411913104 835759016 764483455 183954367 516718974 317518162 851531491 680447902 541763535 160030828 363081267 86520700 945247283 112742721 137105276 187797567 62789037 797591524 285813640 261430987 897921004 321946005 582469610 999446900 877151474 679934654 810625542 215206921 94774898 353941181 240952450 830603297 630896197 360683286 923058082 213579067 538100602 435239757 646108646 921694649 135915137 658901397 484278665 172990848 962193762 569606563 643299916 745680901 58031384 39459098 657757661 974579656 315722136 207521578 338935655 360927102 43058212 633125693 322382056 653942715 884647463 663700041 525456060 260058251 400423475 495292876 774770071 749097889 976596978 105491947 371316835 193593634 840538638 257671231 246768947 390516873 790199600 792374352 66502584 213959040 994608651 891264387 4581994 476948029 833598685 394824246 154926512 626334493 824337694 934560085 353866680 437942860 110092557 613353989 684851267 260751414 23841158 504546933 870913938 795388911 528792603 309400347 932560520 27400814 352448260 916611459 233652564 239279707 248446410 98797492 528542372 644109054 101907676 786572696 709773341 237127310 301965603 626301353 187857196 275106182 391903283 848060448 921959984 131394662 118568045 277984299 278013227 375636283 225737284 670857403 759915335 524574977 665249743 442268805 699018711 453471499 575203947 54255552 801754326 409756279 682412716 752986946 924152946 142800736 711116710 146527480 438083814 271990421 498364318 715659225 51842340 950978125 991583542 47387923 169526597 960462518 429527867 480578603 424014779 62094581 613943593 745587822 895002151 730815814 302891614 697024691 606438518 13039972 535973930 202641262 449277748 106369309 51739333 188689379 135190150 247597078 484097759 924248930 345546865 499938882 670821461 160816678 398848435 304287659 642390436 130893728 547184205 433494603 609268821 603332130 227302439 687182376 881649674 486036861 791511546 447878922 825997944 781152288 190466177 632567445 934687889 10342821 230306851 421370821 108381777 339629644 353571349 627856323 915336706 821458351 103741186 480719051 896792665 332229196 558453360 722041060 597486030 112628589 249169851 996406966 292533951 213801536 917172592 501364985 916727369 600533037 403560582 540687454 519473543 566625315 257925044 462417346 793140286 469272495 11991599 14998682 319300648 415207759 640232869 928052579 940668409 956229580 906989116 924345285 82196893 651653878 420760279 753342902 821142671 956754831 423509190 998987143 87428092 160344179 926311526 502410867 893472575 546292451 175818563 553666044 740779899 258341809 675545223 713759817 478721326 682364542 668866583 537495154 443319050 552106374 221453683 891088059 652465689 740980299 321476824 603296195 37507370 631495758 166775903 51319754 715185558 816223214 332875391 694631967 262163361 908239799 358899907 130655474 111867615 178282368 402418122 873118144 174094004 655528004 537395795 204207582 694112133 132677022 708149763 924573682 613050923 476548478 422651269 852439063 592279560 79192662 581933215 156239152 673354920 125302638 63888635 987236945 275108635 929675740 297527983 321673137 632635038 704189604 237596160 326656800 363256631 799761397 984597373 716542177 636819206 460012371 334192899 176304403 607438579 727985228 585685710 26753051 125339018 830304247 652026687 544318963 433063635 935778911 12100091 539968160 525794895 11521921 220875369 619226311 59712845 756314281 74054662 310888265 942491715 921660604 137989223 801526876 187843931 441648728 716168836 189462523 939764021 933522248 300468028 314175926 274076242 474853216 569985749 874541769 980773823 800238006 171409499 900695393 983045861 165697167 595540918 916538241 663332239 373954241 753331382 891864103 664923278 835347621 858463274 591103559 1001648831 202293790 566967859 542512816 898527098 348354485 47164214 284589776 145122111 321348182 582226990 445235251 294131689 878480046 670139613 619330908 335308235 845237911 172885951 706123587 148007870 137789953 584682719 423023275 371986003 752615155 59189694 643780675 398494710 327058408 263168197 997338091 749094752 13371327 483412399 364840200 524599421 488965367 657327215 623717704 524262626 851772194 168892708 725965286 295595657 531215066 125638647 221105054 353645611 776874943 126027722 378073992 783555584 69387304 738125653 294283379 873570519 492684883 503197117 766632336 106503434 233218340 543819975 933831091 545787819 577566307 593155150 621856137 669634734 539024912 526433264 792707811 855001102 272422926 62800099 895649518 56006511 77581837 575898822 955574086 750936812 639706996 158609463 323194834 703733336 635969821 207306210 128842761 16206051 306751623 866190727 908141503 237595145 489433136 479678031 835810002 405776586 162893479 915132596 877186461 614463424 552141012 455428889 735695356 678046732 278471420 698838749 229523840 974169640 319252081 204692078 77494241 676294294 493799764 154079025 68647672 586462112 964368738 313726914 649683521 87434201 522738924 697193029 42532028 986163684 266595770 811754146 114862241 487574205 65568026 30020352 942439984 981793895 145295579 551453168 477431527 377583699 819402228 553934010 78254311 118195211 23140514 440979406 776220909 850130396 889536895 855686130 935213739 629476047 316164337 156899298 983125792 731795412 966499890 649627810 142298880 508633648 838632866 538331249 792186083 650618161 154026852 848350877 608435212 46652599 74809055 129798113 282876167 319968673 898084098 261743821 600524207 675153014 215818601 905488956 349699172 202426779 216938237 784053902 236469211 832715576 408012277 215927270 700669037 695010090 716646663 419964084 677246787 127555303 834155395 936083251 945442489 131519384 96512075 572239206 900192128 804902634 785812278 714779009 161135451 33775949 562234117 557738483 94694658 579725127 231422713 881429595 429058619 66613023 703887559 881634031 837867045 999229851 808254321 686474169 142419100 650880682 310977294 890204386 573065353 931775974 578530181 538413057 93684761 420095141 654863923 418647982 974021857 989308690 138844363 657662833 96078522 393356795 69799402 969697409 689323294 566783499 407113624 184501620 571275364 812520795 280709402 254220058 281105674 718744291 279708365 765795119 895705680 990161919 259786891 103760836 610848891 328964762 242626769 111690018 905518469 318969633 990902210 792572618 882130635 817355343 639784964 647932539 935809920 231652347 482590353 634084329 786655114 896297112 915773389 698365005 399710283 79135299 707560613 662230689 516536111 640242014 489235618 374270669 278295059 437779098 124728701 217738028 296172755 109713835 707019020 511743996 507612588 95149141 162365245 134067927 913230332 379512695 218192765 203980493 52221558 11692390 652542142 147752545 474287786 237927267 38999327 13872120 670739912 864916211 47644236 582274189 637070697 116407170 511591179 907722189 621147859 661855749 453011324 648735382 801288372 770000510 687934873 263104970 689288063 227372593 158074185 740447924 624262291 313974034 225408783 770995798 630655348 733255752 795431196 158166575 998032785 380392391 142030358 477591621 204710371 470530989 616675643 711033145 293406854 637594946 765886212 842280791 692759042 3069987 896122413 46512929 247650128 4263578 911534122 946180393 598188965 655311038 969217331 955448202 657745405 561562387 84896001 339385016 573498310 697165981 736494409 254763879 319469166 201471309 639170460 16246324 71556140 880098461 893938496 636167849 584689097 484236719 748987064 68513553 833036000 205849864 974756869 164630412 495073910 948291064 678103464 697334774 370713354 211292069 749016926 315523315 459403019 651134217 832569631 365845893 439855772 557314596 317320712 341937719 954162145 247118634 26333874 82688203 835582292 356829356 299952621 244224956 397734028 946659498 38482960 144460874 107339135 257791219 750645352 593435301 607365288 589830325 182760805 549219527 799352570 984430356 732004926 341913809 38356130 967000660 86666694 904882251 268777574 819946827 950296849 312642895 809779973 638239325 28658553 69962428 181148886 727469770 721898733 212517794 393472082 525522715 387642709 332572961 330962625 363661176 329443027 300911302 221057268 331031080 687436776 550869497 866259536 852656870 569079012 691910822 670313096 221062984 918573240 59980856 248426531 82564718 506437130 628787947 939629828 254527560 604158985 408861437 631905472 264996563 581066228 833109301 65122802 370227752 472735627 919093670 932955909 695495481 183471370 254734810 309703667 654390266 720694737 238464409 959540233 145183359 680821570 762286878 388492423 666415933 931896890 560237719 370432085 684382487 270330128 652876805 534098266 369179764 333232794 346877071 986279390 295763048 609350830 14577339 154180026 726931707 223409371 2348576 893890883 413450201 664855079 496032244 81327848 276239501 244218909 36988527 223913115 981128097 773107974 700327780 717154472 923979901 193869120 530804803 709857579 969363031 994064141 114104597 716917916 126123267 966824889 133502051 224077540 223550931 912757304 354192197 652455897 102096295 324271262 547165920 936291198 887471320 53558834 232024869 444015471 830171781 115674280 301618167 32170545 538036967 804283412 832675387 219916347 100149846 152066545 933811699 451988532 413745895 814309428 209270621 588387957 541590626 530817763 74724104 241527517 692342971 845807883 700058211 34839123 863137674 984451708 116281152 387002 620785978 400923051 867297718 567347418 879233222 224236225 390042139 59599050 595658993 976807815 661242072 144241748 696265949 43175149 266858811 833256803 926774701 745630956 88751379 654070132 291083072 465902274 738783483 240139353 250284534 867990480 556193975 920010056 569051723 682535991 604182762 91899804 357395569 38580980 303472301 413024547 923141253 988812318 479930494 891393403 202044551 752279145 39436750 215764745 684675370 63850279 843868038 183175204 207577773 549799868 281877419 530941960 745148284 884891534 246446228 926679205 962950789 481906755 443421129 382422807 795342041 570503603 325008454 831196120 672071021 966427327 960171371 284516467 550975049 419141443 358023783 626537141 804382141 804169858 924533406 586244301 36460688 700497735 21894296 788836736 938329342 126335788 578576046 871811222 711088291 527911229 362624060 584211499 30039318 687507798 16976575 875256457 310925395 113532000 462358392 694592854 109565904 140585417 978486087 398708941 813682790 835183055 806059961 612073007 184106560 538685345 817713077 61762860 411353616 729551958 786669545 87240838 224813677 729624296 729989583 705982071 562189843 127476836 242498990 251010253 978921538 183363577 801033234 182805908 795839211 227500452 537325635 31932725 940122044 131205541 184269957 25551428 810145032 106974519 778652343 793606827 819964460 182842575 880974143 785364503 809523529 2751916 548500384 918103420 62660725 697743696 76523785 744815474 850965451 419484538 146406524 78686831 923916680 389144002 819790640 580642084 94972380 793280414 371738658 408499354 392906289 904272185 263015636 921417388 54788737 19141544 121319245 655949495 924939712 256568398 522534916 144394528 456333784 846465308 566752394 396461187 943039253 989864317 908037313 895596724 718162152 322768152 893173069 929591063 379235947 748676829 647521297 823616572 731189456 651418950 612663596 314353260 729338092 625166430 696059643 970280241 702807790 357623266 957915795 560287946 950842405 258935426 111575121 260148867 916480033 541523844 991454601 140834459 300168914 989093424 443540529 7967872 894275992 966279694 550806920 164205613 304524499 174525 665216661 739264138 69767009 61407758 878798940 123237546 242846482 831072221 579375991 102973458 606957578 67209782 383242591 829834672 655513361 675278495 655166884 359300493 467157137 736700505 608560908 555443232 641603393 4619692 220034124 681308993 165843909 110024126 81603500 749654901 108874166 514221004 404494404 825546698 173929203 320122626 754867302 453180440 61288054 414908262 784567371 775616711 332211090 132457166 22819776 746439995 723832684 230579166 785594793 784485282 56054573 223210265 947112873 111200437 90670553 602938317 611596929 856804460 215517610 920823800 815732648 53907538 411544800 711802465 517452456 214022556 257024377 520697434 658732026 757159039 466520492 357137007 589200168 147532053 299585479 410466942 977194776 327276347 263599524 598461582 153277637 631858652 73212755 749084844 634594066 995430282 450456219 717011738 493098302 435048807 647664862 88457774 839363720 924317121 712557938 818741998 658710418 255540535 164920300 79714001 808209907 427062336 526091557 947198908 951953448 734871868 249706408 108461471 135446980 192229027 633201688 82171634 998813753 448159695 771324207 475789607 718953564 843503839 181914899 12193762 537152645 382153125 431076626 719866689 846682330 328800040 16108875 516627178 196835423 830006555 784049524 464993937 108974892 875576435 352535991 641980675 413819576 505898192 886953562 930756057 411086657 902676233 866658076 666268968 996258933 241982706 887218262 851490864 9695810 695553688 242774574 173953450 342979691 715930186 426062712 682632871 912943328 166347741 834535740 201075048 531738757 314491802 497672853 483801192 964238483 980934426 973764715 642085649 532933148 716885067 365457125 555047071 331440098 566885904 476719094 450493950 484255164 172497912 359314991 445865863 365359272 353192441 609670720 196565681 436304311 670061500 349354988 673312162 872819117 951506449 620284040 751052034 125423062 197216300 231397500 212135294 355383393 86675647 201202948 127824590 311023429 109048552 771896724 836527771 795627161 296062352 644577925 839807291 666686487 187284190 732477707 502151617 579790483 223135941 267864858 292794634 638221958 767112341 679416794 671622492 353428480 324743571 316520807 719929712 294824663 732170772 790394785 28730844 904666275 945594804 685532730 629851336 329087805 504870252 416733775 322663930 260655848 399517678 803171140 297141827 84311515 850461223 779436746 522526477 63567168 674966650 365866642 276341365 443714035 914219668 68390537 849780113 636378782 236529691 875206482 465301036 118963684 786953305 835326574 435506144 980668237 450096723 677610888 998935572 689886877 777697027 734427600 176958025 41272791 632277126 979179491 719463766 522088364 106277554 337476689 808107773 195771487 111333208 39900731 401381902 929017787 886918685 49236209 564133985 451619189 541083 74890942 86660843 186779029 925685256 82591242 164136552 40631818 610041128 368016897 88429917 21882151 324096770 925712258 265960433 48769657 164355475 404068994 461315370 909662574 533786888 627544016 95611435 596597427 182771363 471206878 937935925 36079270 37097813 448885092 628694233 36889800 64639474 392084361 43065509 971328276 582747488 605827144 745420921 642634869 152158016 355379399 680876835 677659020 662381647 58759525 421549702 916977016 847010149 311133373 133699138 567336244 575242937 838080791 819915820 96863533 512474470 867519461 46880499 41613010 858039474 221117751 463830312 867775142 812769803 596401232 37410543 47968794 589905267 529712763 931333261 968992502 395380156 273982371 161690911 609149356 642366648 474108172 303323832 156462478 444546315 316018458 541894787 277544710 34862038 55175450 905301037 620474170 677627585 44903951 191859618 149203856 644600386 839834877 912241007 758910704 704246169 889186944 819701464 366262812 560792929 757934724 361890957 560095520 632185080 487620768 449233440 535431205 516717266 700324571 109673736 506584229 881153282 188561870 653342614 447173173 278171985 897387293 635123596 869526684 624470499 887120633 487273356 57779940 706598049 91717201 417172186 881046653 938567265 621102557 707944555 612132406 379665777 240928999 137043727 611082389 485120348 519516128 179145409 500346306 791821017 156819793 305518512 557755302 709923088 599150219 912074561 376343875 500874494 377475630 953043306 541993245 736850009 874868222 381090448 309726313 370766866 806753230 813150021 672442794 444881523 448846371 340481143 7325610 73733219 675121756 157920702 202537523 23356610 372980702 655772008 657643962 56632724 297977649 909389857 803071636 971540407 393274653 167108377 850167851 787858236 320371301 723743660 29121024 970448717 673060694 9282274 982794219 743668755 892321043 667755035 653692233 954755731 863372851 940950869 135488653 295606677 365818747 179256105 399006365 556920412 16549358 229464335 162855286 371112275 861809568 778349662 718874488 209722400 360411854 139165449 168801282 369987273 269787337 588912390 971020074 987966638 137270053 769365134 91913859 331562726 308470849 917077798 77700549 25896900 974530686 776343544 78058798 709103478 420003655 521237682 501059861 537458112 580733932 167120160 847698336 830458039 390031009 478813141 659296522 148432795 774070741 539471883 687629514 845024290 320779659 856300759 634452419 884178689 626706739 681429470 933727299 10863005 271779031 380231485 403475662 370769333 97017284 720796100 808316918 154162916 226413258 539780225 851142235 700863735 282104754 306092715 950282551 260354610 951575909 970293988 158315559 860708823 957455891 924438867 57323535 215274436 421031896 960362447 398260521 316923418 941106654 612523666 773146549 346314122 888132266 861243363 332879456 94948527 706707047 67928600 13300238 591536223 888164699 463510336 155134067 65333923 644873645 128204643 687518979 45283401 994274608 926229164 261873291 630080685 1080850 152611546 604516381 510934054 530718824 297054830 17973247 904343888 618595645 857345969 752217954 733452664 208722347 998711257 330634930 402405712 452353659 418289144 873403211 371339427 784094497 289789184 541511962 553193549 184578294 634316102 583313048 785667991 283708080 307534873 375964401 351478381 582045175 599930377 857012325 98378246 280596642 427518525 608286134 686622320 591215478 122230198 747396513 246872152 201284766 310704332 235529208 781121264 862336061 244711641 109333297 644057532 793754667 589825025 52472806 673523710 874169309 175370112 474372280 401422133 64243082 127963555 374132731 282924769 583045991 526735879 113477704 787419883 868392005 495544548 381079858 315781216 641619615 368067645 901451726 987219662 680462735 774510329 819917429 192140658 14293487 511514828 64901377 405341890 764619145 828176107 155607618 714077451 216575277 476134910 297598900 901138610 53143234 116947791 365541170 225330529 616438338 762081596 466835363 394395875 791130745 271609690 484030864 891347395 419884103 745982607 302421618 615688167 121283493 314881305 18516615 508795172 684603469 578633364 629825875 981014393 514579346 954568647 319049816 73994519 979516252 537603809 3027605 921015348 136631325 75290751 110175481 525778359 468240983 312630579 22525007 945214622 112863072 517615405 449391490 699922690 870299278 837528833 420734909 474458819 647630006 826151200 389964190 667488044 490722328 395116700 120928448 602407616 779629951 649086306 730585251 481228207 441039757 196120608 89203538 965040678 657977084 328506276 970147326 12022796 699323619 466436930 663687544 552055923 559334749 78387884 861641051 284564173 489287326 497539892 558416756 474601450 320880045 187926530 656769284 72190559 467978546 723053704 50453960 17684880 393021899 963305195 555748817 840237943 368280272 3612039 254741005 778361871 829185776 34602510 38178774 72685295 547969586 844734780 540991594 468573839 278004708 960990956 938079303 448776603 156222991 135275422 770852789 526115623 200787233 647228262 601985401 690297412 780195475 414444866 900759958 851284486 866333439 157655213 465275022 500004162 670377808 512503743 712142237 782245115 834078380 635962808 976594375 502050677 155135958 281512294 511824563 91942798 892693516 503437354 678907952 461440941 840703419 846808071 506874925 877125136 170658981 278735295 503169512 958566772 747346649 847338914 332541578 220446256 864528074 727305917 457842774 351109356 129176334 733906240 114456585 354321853 832121677 665407906 851013405 45338812 65721674 543467300 148927766 478854056 195160190 618108885 401179120 413042426 749821058 1002058618 893846332 639086256 793331514 507087989 362506312 804111316 727361901 883122613 624699446 307874065 535808283 707053032 128108913 507494868 660413155 503192806 122413224 347837601 792573579 807174057 618182979 435141924 351476367 990519581 581418628 653106181 931246442 552587964 301026829 878714606 188412294 320771068 143101381 285715846 812437188 286756945 583046229 451065445 284963835 288859313 916826898 252485208 998087800 213022570 186325315 276850774 498218902 663685409 358747382 556188712 475816119 479197007 770880949 231924967 666286861 740310508 308440512 164446925 260887164 788759005 400307434 233129146 191007351 410052087 830516267 363134524 71085081 704009716 347591116 913315675 955397368 175130402 887222372 755107981 215588101 87592968 177178331 923793741 648559533 923263235 429789615 742809231 952596522 725775937 5876789 916818249 550535534 542083928 415702746 791157853 980769183 524443929 410817719 589755879 478703190 229183783 924566898 360497601 131770104 655721391 885733327 319597598 472403084 586943093 985393887 227052149 506433571 313629005 957923738 931724924 257955012 470789722 502750943 969361031 914394339 982651080 152263473 955181897 994411191 140875796 352580134 422081361 309128611 311081845 240058262 132777315 681312891 638335392 656990349 163431662 227441619 288438199 870902125 219963786 566036956 354558448 966811726 189852881 430675869 181616711 725906690 259643989 226088196 590971662 900152014 198241490 322556752 756866431 458362596 945401238 863515169 903537635 830476144 37962731 864415036 926416304 774668048 74190985 816047551 877025798 343263367 726506273 376514709 422073822 958284234 651683336 893676532 519611794 954195942 241805145 679823048 982284556 439108025 491794532 160982793 857518946 315907256 727403447 335666732 747188565 171042314 1000364924 533313985 150080180 940072411 690975810 945676656 630453997 937748957 736857197 108507513 841929885 411271494 648038817 356220079 854443141 123189502 295158597 850535658 321937469 636822846 833682915 715345578 994533827 579718749 322429496 2525079 683584674 34575652 740562566 550684135 656397432 685185121 801182970 925624174 207746731 515506134 861046402 495242010 530655497 680655710 953123224 447212803 593570873 86007949 772077902 563369096 565138286 978531159 844216974 754409090 652282341 16815297 498649369 334378211 394497871 294850243 664294979 788165539 449005404 666053796 170029776 374543644 849306872 653712647 854124083 24539601 819735516 251960537 977619634 473733834 459974959 182124370 542198240 376919264 616652910 356590065 928613882 164977084 538302622 958665032 648606428 527197422 841166396 192759283 84580958 863600692 622611120 495021877 316753618 477584867 126542933 510651119 930604275 753914718 42940786 475001404 508624492 900871901 710549490 766371948 5628581 328304798 127713127 864617254 259604074 334279149 485668988 104180409 436983328 516315912 112112186 411606866 538476349 718747964 899115072 816129352 985374054 764031195 159023071 600201125 959540470 858209006 363821413 200149990 899768751 438500172 944379999 156084484 978643987 517117052 323845524 725471075 456815546 803105354 86256416 147219548 836544535 973053037 129330626 445107766 213771906 961470693 921582815 173220101 333044520 163351578 749752951 680419737 853544000 394777751 173187942 536591896 107540866 405944185 165314318 422182303 546950016 643947432 862396703 426971021 497772278 96787938 865629685 289742002 78826104 196523054 981050779 45653821 962321736 238753637 707649820 239925579 491150958 531790703 132310070 264907686 696248211 376164356 1550102 998723290 95773044 121492206 722384252 70545655 605339678 526050807 418038445 634307200 396360965 635614692 98752088 886482260 907464594 375676100 389253085 435529859 733351609 353062048 120693916 927180869 493363735 161090469 350686651 378604187 185380893 788541399 779702308 160910954 14886192 488492969 686247727 661726341 131351761 269387215 374237433 360148601 483988054 600130974 111132699 886962581 896851766 878624727 289336 246558758 925298574 18762470 407904852 192971664 259488726 763333538 462690053 323259272 550853996 646968921 644109709 760827248 916512913 528867000 947044979 417911274 418841412 519317338 340558850 53967277 490934551 958079300 288190604 825428823 574427190 451879462 841913184 675870628 31660100 153809442 584465621 894031269 550498883 669179422 880516222 358419679 590674362 797110767 128851889 918292075 374593580 114631212 789470325 569690414 440162890 629836159 569811499 455810086 721690565 297343462 540563185 411088171 35059519 369089890 490823485 272839617 710325655 417274762 89535660 742868950 729743344 41925992 703469717 89190878 454110061 113374522 993415891 933548690 158438680 674961288 628134693 929630325 423753652 324560437 928518674 967326622 23136771 14492031 321162954 454298649 779766288 929711874 574654414 942367061 973929128 205903467 389256565 723601753 254115404 116930228 562042093 544347850 449393000 607628265 918769022 371319400 72458565 386993609 920422817 359702343 24305174 661918246 41516972 912108651 671732165 383903394 378714518 696385942 148975283 34511740 775611709 363409255 344513580 999225885 655949372 110744558 714500452 195026576 769034393 679512478 844233392 540228821 817538932 209035706 438838443 289998080 43082888 729780709 614760906 355101243 430928255 802249977 758866290 528968042 403817997 430808708 96446775 243530666 656815806 690418668 592820607 201319691 908180028 741126437 968561199 347423912 431078515 631651920 657106231 134409487 658636628 289560692 743378179 741068177 642882806 207593846 13563752 224044953 319473751 372312430 494625670 474158973 523521421 939810174 932548787 836703877 133869029 16811292 417611169 874156151 922074040 846730472 958991955 833704278 12009170 379194351 266099632 784869860 370327677 418579872 265361506 175296314 820434649 984767964 849946125 974841783 967598474 575239144 537455059 870120558 220002289 625743067 154584212 937234630 406231675 740028680 865272100 192575092 618520169 270036433 577998059 868349224 249998836 776705350 375785207 570215836 509679271 557209277 391804016 536986980 155388838 943079133 350698121 841718446 711163366 958087317 830137429 592491881 199208287 588570336 903296114 110259626 444133975 754638773 221245163 883870311 808545508 563817709 451395816 552438465 224216952 934334335 732363111 464205931 177771394 371095123 362115246 913988994 689885931 257153264 366297050 474327957 755123481 418174686 533381957 358640766 217134347 852237400 476408490 431151062 389577654 544424806 486345092 527388305 701549913 632726637 530187070 696508090 192017518 608091387 56914713 604393154 247428464 440555931 694050676 111189015 632656706 380827623 367310487 48682953 311094390 95888557 497307951 250207601 125049183 95858789 826371914 377867625 808806333 908498534 615076053 546349491 364128276 947754956 696043443 739064079 923815214 778667506 862015501 482245937 346551070 30729381 964219336 530297247 830710782 784770027 109290323 657998326 254254081 710163503 814716805 244682609 782727012 627860172 717634545 828568485 280232713 552132326 763082793 132030110 398800115 236525386 863937610 493912000 856515712 400318742 576655250 78309581 313190302 878747759 526588927 127553491 14669825 43905331 702627844 464731694 711376002 290615104 592670877 286636870 513005724 823004062 784699423 955327403 670145549 431752119 858344 214261107 696663142 571932801 77380863 197521933 280528395 684697822 210137520 668467768 480087480 903357545 376676516 472666384 14668545 781089259 465798161 954514206 890398465 527516432 195968444 217634530 588245136 397149482 878478574 903384292 595693592 101768265 902895551 455100616 178433119 411373926 937626680 883113152 987903769 55146006 657220590 678101536 396817818 38266914 138401847 871532493 813832359 155212621 692495080 801383122 636265267 722296642 440719763 691066682 215922402 901497808 8728478 330395623 888948793 829141510 338944692 503441534 571794708 700849500 612034991 539890980 634811890 813787967 942358233 453961358 268232365 651136284 938996624 281633512 67658716 992166455 311969879 673345843 203863165 102071393 786793941 394952564 825756045 83755200 154004372 712601594 480093885 601158732 95266402 21802802 897122720 656202921 680596056 964466732 838505783 906068951 693644512 19444694 769192513 100837560 760407048 927672525 328242036 114026782 21090255 861601269 345565208 811407675 878898980 164845061 362121873 81918260 723109173 569060679 229689690 145683672 6477535 812673261 291756935 448231703 650726761 806328326 1553961 16558788 53720308 360964790 936122297 645484588 595110678 987948043 425420368 268333760 718325701 22407433 624434506 687014058 859393307 569083217 922554905 769752156 353027864 375109866 815817150 147854934 806063352 154977570 290910343 232798578 278740077 241705779 482073094 636018727 301159101 19842276 345559804 949102556 194468778 950020645 520888928 819312918 179477032 620124020 43324126 874833617 441721474 168860485 48130499 595452274 605808697 345002178 569344375 568851137 687424233 770792818 616192352 976503109 329453397 179375514 349744403 803512044 488966071 438338814 122700852 234659147 807351858 566061244 80959626 31088461 618015753 895159565 453826210 958294042 127524680 456068340 34853176 951113495 216781143 359289368 841151793 174533911 525573744 701448615 719876734 131147069 773271681 801229935 318556503 720723553 391858123 200486022 972249501 42874274 234387267 380158131 33269032 632494423 591169195 29391161 462675243 14491585 523035791 733527938 714493219 253066838 367583309 637436991 749022607 279696739 818025944 31943990 149701521 275953133 864949282 484771499 14375731 586398341 674560731 907442342 42343337 781826260 499518025 352317062 518042211 825895023 280512916 501326128 392990994 698426355 693559165 288051810 648006618 87444352 397357063 333074610 19148011 153754334 556877061 533215673 992720242 266069616 687696399 576888556 274573634 332105054 231314431 27614257 530977833 286017619 274399699 194673645 818740251 972201837 560579016 64913186 987079465 817065071 58360703 761444735 959446132 187956909 252732387 299467955 923704151 802774089 111941329 238446112 475177693 242241808 953606531 257483007 926891188 281316155 826986116 724712400 290626254 837721456 906607298 30873927 242009197 272890720 490376691 722646775 661273660 963099779 45328469 307114912 161466292 137150237 823090688 989132950 8463409 930280202 607790044 142379604 836212107 291498332 415752734 660972866 423559724 188533188 164245167 243112347 645030353 657924506 360200792 242180994 704939552 412279936 715526703 88237799 146842397 602584217 885032764 242505167 100121506 68748909 99465558 201255420 367340106 450621355 154354141 191801876 788033791 537443833 197571628 499149138 157763603 676581639 797620523 384728536 805691637 652460791 437924529 975046451 972854885 173398572 399698493 546120270 106703309 689341596 320190211 214114142 982589863 869929478 251672913 208788920 852288911 554491617 1570743 118945901 538769645 259197297 646354073 553866947 224704565 34011368 849696855 476940378 375051002 1001888427 381193671 686956746 49796810 332020280 380777456 114325830 340708698 680752705 944585143 965914369 49261357 346451945 137046029 66495864 437954122 576873763 244044125 191120646 195461401 176245025 308136765 878354363 109867922 595424943 569116221 909060200 85879792 960580138 319179023 383035851 193554704 64590456 597169696 291484734 476605072 447009236 960439360 135220586 693461421 974563604 760568655 828135277 274241943 333179740 44945666 646403857 2986584 870205498 169729968 161255144 358987743 241340085 500337215 64077180 469112757 536084803 231870057 947711100 304031159 718870915 571851908 410109406 473608949 832468713 637628752 228219324 843751886 49705604 779338052 9753973 682409004 947804634 608832872 24524056 629108493 835807012 634399172 242935089 900034901 250150089 241787276 609910159 898438605 773493520 392983314 27437072 471748584 34584832 67426166 22117672 876042118 963140230 799628230 594618344 457976230 664607850 729677637 541863753 940843260 732159228 196904256 880900289 92376514 744860264 626207718 706708570 139552576 220484651 852233090 919673156 84006896 59136728 640135748 177524629 198372259 338756919 845801464 972581547 645526976 819277245 366964923 795148994 84413616 914207536 453486003 490656428 760969493 400806123 744945885 367492275 314690208 672516780 901726286 843773422 773160550 616048897 353207818 992492768 718145731 990923019 737112610 103204278 218041210 15611882 512918968 17287113 387936182 656884543 136070609 243947883 617552661 353841920 539522614 441370226 115915947 952381093 673136590 599287730 115841411 714324144 259555535 161467783 795648463 612523438 78751861 305780579 838968305 198965391 360531183 676379431 848283464 664596398 918736123 843240952 874115595 163472215 146291925 972546914 419488827 983593660 60597429 144578420 351605360 202500106 848357551 415299589 786304176 839254440 123019183 764461886 624347884 78227101 228454717 506144976 419423916 293679840 949541561 264185431 83857900 741355702 850567197 990786009 334070075 543850938 806920590 514282822 3021882 560318052 488426729 254473983 113759440 684837395 97841588 386647707 551558856 931314886 846381692 174161791 702021144 687375771 676817251 767178675 121234903 849973529 363494795 989232839 363323081 374804912 169122823 311582336 156395047 104262344 913786481 293191393 567043936 595332255 877573745 813452930 638201709 634411705 811257914 482974736 741080035 507268162 575249582 200285104 908254901 827910863 535061253 410226684 157756945 366843443 885239500 710018681 87545592 947164179 618300358 905447568 488654259 431065558 295889406 628601563 965892526 892018517 791300325 201966559 420698640 116291050 779885382 188873447 755567575 813953286 715485606 80630827 176504944 831056606 393934804 331713722 1000871693 936135993 34089853 479556562 655864949 773555971 53179335 702627175 519485835 714080027 622255522 607774794 993817850 548450890 449546617 290208225 174474921 940726020 481162285 785442974 996197435 65246771 164289954 788676688 255387415 873282407 524337586 209277334 921876122 935638392 837288374 376379219 681492037 595920712 725576041 850648144 917775458 129455838 693458251 420664615 656310511 753099858 637040695 694789199 403431905 946993247 226181084 207464110 535246522 797240266 112575805 491837178 505979592 734408498 935366465 948083143 323632930 886621642 875422700 275962142 103618804 641733012 104514919 787960081 656500515 203632261 444844681 418038508 844647714 404894861 434521183 843021144 260737401 10535460 615182384 995314988 253270172 129904821 774531522 349859914 845191229 386488030 749697538 494702020 301897517 726872046 543876170 386068808 300603738 413328503 311616928 981573654 365169788 802355982 589620357 146424225 419117129 523514106 31618515 510050625 674664402 894622838 631581701 136871994 226874785 644853402 865791812 804441065 13409648 748797021 683177604 156757680 798838610 681206118 616019918 439835121 75235812 657923837 760292311 690310034 929807958 861243848 711470939 638018137 158493645 67194358 262654098 795352073 211664663 856511999 612742884 111868898 813371745 633122341 334356819 612553766 238953174 513902604 517635450 768117609 819806374 363127030 127222520 964392432 341151266 554144667 548241604 595652008 95056377 669613212 97372712 439791876 30555338 398753933 664435120 9727997 603170446 878943173 255551807 173072071 322186902 838063102 317191468 761733329 360316596 485952789 802056261 133912465 965579167 625858791 258166565 921469560 246134456 59190856 359589220 660952104 821330830 22563737 257296803 364178009 908992350 613244659 451025918 755408924 693217659 836883970 709096675 744595892 103309002 198272991 327961434 561734726 422604010 739290649 213548211 29438696 24278465 56048157 536071155 784543346 986066898 329570808 232473330 310764209 443028837 900490143 294715925 609528888 959856254 779781789 326253349 477351007 892896182 810856461 733826942 650821098 567862280 78204366 399777156 426786968 340169278 919741257 688326648 426039179 366091061 175962969 248258340 604488190 722109404 438881223 655207865 355967448 521053682 910077299 217693518 458204284 644772194 430315490 614272781 434423483 706823929 380280591 467831283 977438220 323786233 752749608 855946412 529268370 463712614 730608886 799030441 674862670 339528563 307280349 720635280 948718204 795834751 1001582967 662005243 126177280 25397199 956822263 378082269 595353375 15580677 337193556 922677 959733457 504706082 888505998 61639234 618458380 431517351 497282913 985150493 647428044 456153658 264842222 485979054 333271157 550714699 415337516 919770913 774713370 529351836 463539612 196211652 342067702 382403261 508278075 114208426 530556990 965634935 57184201 31255831 970662817 812821959 300772188 379949445 377160574 821826474 282585257 36133086 455282979 387682323 424676436 462367568 24237019 767552054 772803112 555596412 934509155 518280508 325400441 590092251 819364498 364485942 618654505 204688268 717970472 932937072 66719247 275753552 175603148 160735874 648561330 104929127 711444716 81095027 253505257 298128858 660337039 345597859 816256773 912730122 648996266 157795977 94472032 238473779 612147079 401562533 928866795 178757563 531022557 592729212 335960739 286566435 58106334 492037866 62238841 50884194 786476824 148638120 896295166 212347758 578637472 600093162 476664951 541881518 827223082 244069642 717429958 879884027 689006616 921595743 356451419 627378102 317375565 78624161 623264628 39678955 313219399 340986389 354133131 75712629 559679577 842446600 1001213184 980367178 218984237 31388880 588722593 942862081 134125742 281700175 948319463 228144335 607430787 284007219 199619763 45377685 502230820 103339651 302440797 100760460 252609827 413835764 66589082 268531954 976008089 775582409 846140804 801579491 715662299 137649106 731405686 550785398 964552232 424714477 50570144 823386303 181102373 109595858 50100592 707880143 882887467 421357751 655589892 869664042 715685355 123408265 574489763 104105259 249116884 482303532 514553532 687934517 393539554 884013615 14652212 747266764 59325108 831492113 519196759 324249402 826661643 41599614 231074756 66595098 618634746 500488107 720913532 134256536 526359319 635187562 337528167 215461407 593118502 695305033 269964727 624880686 798632299 652823254 945418588 551144283 974625474 892964768 464068718 611395633 512267110 942692249 815151154 915087473 337775120 891461228 737903893 133722782 96756265 719165260 842829605 44446453 630273901 942137505 309532339 120140500 216839321 777600250 561629581 901645140 356708054 400238232 731110069 876589904 253341802 211759029 940405661 588378864 490285477 844486742 463319631 277438301 842060582 510900930 234459676 443816023 402448113 673785960 777013621 673801192 816145739 496455381 381820010 897851416 113897078 723610706 321372399 726407386 514659214 865732640 954539508 504476199 15796321 531061045 254115493 465309395 271296251 716719852 539359200 210240418 91987317 891892303 151048707 784516997 145018638 3346546 155689313 755894692 390174381 262975071 801450312 405794632 473420212 664505018 267794673 931448642 438769513 803675094 887162896 254855030 536530816 113599824 88414515 750108496 229052643 367994462 374643733 231222093 996978591 524641214 191845318 477159986 3300932 579473978 444560968 279873127 313799596 533033694 434890490 153722992 752213908 731949372 806104646 589433813 115675334 188173471 272511380 93835873 910397141 213406363 590773396 134967913 172901978 648527233 135971290 273536220 997357891 369483954 200157238 115884089 276925030 41678885 750389005 243719064 468919758 398090537 997785660 636398850 691343860 332579234 921958629 484184085 603913938 501848406 79458925 300385524 642667703 393012788 250442196 676894322 436136948 966492524 448564871 97411604 963978978 563087273 847865433 361368768 67320358 633793294 711930813 779334965 771092382 978533046 345109434 862649678 800918451 678063359 793410533 333671950 471750766 472708649 825638655 936450948 449185990 407288430 428785718 40382461 279627909 873960624 525294214 956763338 459439607 353425967 352423854 669095547 3391276 128940799 121152332 845923197 884614692 167528340 945009464 455495293 110122142 164373189 171133854 90717392 955706051 123246912 123026190 606573034 462492219 752840289 16318706 447882231 664185498 113521439 673917369 126120758 254891188 225200333 236305228 931393189 426441612 137755200 644923344 641328694 423580046 190265009 883198960 62627128 518309532 524818008 4977878 947369699 155405765 354620541 494525330 340345659 743328689 887171063 811102123 524987477 692628765 343690951 589865704 941366427 120423727 196458790 861764234 148807431 623989915 512701887 7902012 1000109823 749309625 231246379 377546711 304290303 88079897 199043313 131645265 151520976 717043154 741261095 103190389 259427965 577167179 956731154 491568532 971429499 819792818 212215980 342160478 965267908 401012818 759977726 40505695 1998575 814873909 639054947 421634102 35886102 691318976 558507097 790807942 740531482 966818354 985400546 153227916 238554094 202761065 93481015 355667372 668333915 958920722 213931483 824388762 895487848 907343590 518676576 403980238 907651488 846483336 558915500 78821229 341350973 387180133 74873643 317965557 515124675 107806222 309452456 197534982 120593107 330798025 776422548 610563287 941555913 503626272 187645570 813604720 281173608 422179091 572443717 299282789 971767617 916278148 59407954 756111674 757242995 784926397 554445839 666171706 848821810 941830579 517142322 28635497 717537982 569988766 919856687 721543338 516656181 171643961 238994991 686628254 720992019 840179491 650738566 845700081 799458500 864941945 350856225 432500220 17297647 881405278 928990041 392203052 161219190 155951452 84181355 551661421 469449867 609444314 247930291 282900428 629065187 742587070 163411085 174464982 495007099 347582911 784359503 327178020 947332672 175114620 213636056 390371552 313043852 535188812 899707927 329262901 225376828 43942453 48131695 800142356 394683115 342595329 731533042 77392394 331606119 665569498 194074414 595489989 698918992 777239531 314526703 947253961 252346358 97595961 757593567 952468428 543235657 250230092 440176023 983189274 286491301 339757432 624190295 497647493 843043584 944270444 152420505 739535090 346019511 532294820 627191135 445832949 996097720 604883047 193395144 452235213 195731662 50764698 250720247 267627278 535344475 823980352 228696776 914890098 795613008 46040010 144432318 200251938 748898434 323906368 104937870 331544484 37853084 57849171 372693309 658090160 706795490 470305447 97797914 884412907 914059264 71092386 208826107 172771999 305982061 33406530 5913539 610490999 303368946 833841688 831278433 12199020 998552279 132058318 782790357 987584295 289651923 97702191 824592878 635007198 414315160 461112873 524611334 152099579 866792608 402579521 487069871 529206127 293044828 776002317 645073430 292039327 334671050 305961890 467601664 452575064 434546656 927541448 17902130 682220786 173929611 891695663 28845744 769826806 794491984 170821850 708308657 191960681 346982856 209192449 534971885 712941114 12622999 994318587 102690409 57535945 181279887 944488587 197702818 853114087 826942509 717749747 105110633 151231498 545466438 821676662 408100488 708736397 104650619 170301442 692866779 603438666 110333162 302744180 614998097 102365066 251870190 160094683 39591386 690571075 744390506 303868629 872680004 411247349 604852392 389974193 126726306 348093657 214942604 589170137 265731955 157494134 506749441 267944760 980254501 171351923 757664714 71699581 730394132 363445646 118298151 319802680 545642950 343163219 538091995 4082745 285242080 332389693 994652519 972742529 675838419 262614128 528471701 476573910 464065136 605320177 398747529 483442457 388715943 663514757 586626759 656677052 961636220 601346072 339998669 100466530 20624225 8253259 81013657 545503229 909896143 696583612 415155081 246278455 768695543 532476485 645563820 30325763 639594332 849377270 230403682 822393756 866118405 263631873 734213226 455076318 818003641 356889799 535434482 971394883 119201007 397825389 115013948 741516560 746612271 625073783 443434712 510705975 239620863 528323752 670316882 121503941 392284963 542259679 650367534 281390821 741146377 567885907 482234327 160886356 182533454 30647125 168250280 556052689 698717388 710866476 781946939 199769741 50105510 412612122 959526140 833212736 669992109 522386663 813703675 703398292 698669756 351684624 73063114 827383967 774797304 455839779 821056109 779172571 778156281 828982087 478578878 569086030 686985512 660953226 117358453 326922556 14010227 582006808 430153209 439768148 44429338 457945285 57633220 695560891 401249634 998650685 101234344 285108920 402731832 868616083 776199862 802657404 44518766 711236014 735744313 600163048 843030945 720393997 699066644 698512174 214342241 97703363 386636142 457116969 564913889 220474529 694679742 261525758 785396482 84309133 250400263 740136132 883555972 916460554 775836248 501006357 87877182 503960463 432895660 571634913 314317259 425498484 948679659 635294364 956402026 696440618 265841123 232711057 597424762 615075082 327414946 106408837 967724039 405525258 429095191 843056427 123972109 689062122 112729154 883644433 402876212 422641240 790737216 185859742 762937237 845724606 620657038 548195910 786469422 761219023 821921083 533504794 414623465 676201075 446470572 740855258 926079231 738746746 971606028 335703046 339207152 690123639 590522947 505649457 998276646 94428957 949673888 832905455 819654442 285127521 758729319 59323410 661859214 94704729 338644073 898003952 873843060 653324661 26981128 555897667 811294163 984554827 643552789 88266342 973658505 472301609 247557527 287920482 625392592 313878737 863110384 612779286 179346729 338695372 301968360 352343573 532504554 620215599 604795911 194242042 392457275 555603712 777947752 308013912 325930663 399343740 709285679 857586511 406762288 688475706 444285130 635781012 526533960 61870235 736610839 893733766 429839185 995595900 76276027 466178428 658677773 38172042 889402175 9877433 895519567 499832551 476728585 227270912 684939191 53379263 787981504 924869904 813871318 118160707 563163317 778939764 482770157 100426327 344859363 724722545 387951661 640027279 68614499 207902001 127451730 217283213 263545848 658402510 397684757 934729035 905132610 283597517 750157523 981036797 176622732 584097322 294671009 68114426 776970773 408638044 243047174 337434959 309618656 749373889 796496500 905070771 441412696 491233576 279831049 728033911 90677752 895884873 786504514 492952743 422666274 542922309 600933338 358630525 183975091 987842905 939355746 845798896 893231522 193773181 539012606 82063986 294433537 602586052 204067595 699919661 191164549 52256912 87443563 165622779 177427013 478102809 757746602 844836802 553539845 360128735 677024794 987673797 314693386 287686189 664554641 811944911 44744329 353180033 485626245 566358610 409294908 689951475 599617250 745200458 322480495 695187301 550887038 402183182 300900136 274936597 719032528 431650666 559926756 635311175 929173312 125290079 767371456 995322257 547423346 748655397 874233965 357799581 146276959 696854650 238901143 557826172 593333095 428713942 841194375 430739961 15917830 110015203 210876606 346118 710719355 664519898 367312023 293613430 333525173 68796324 49945459 692307444 975124574 219696808 409959252 33025047 665408498 455832551 550927859 290293741 109198990 214579710 348981168 543244584 504199029 160923782 216256191 144766616 942813571 605508388 555476996 410557937 233545103 571128116 315781024 404118756 342609298 628702116 303302854 534308036 858734243 62322784 143641448 440969465 927172258 191565806 895308633 187674713 191233374 441584332 75406380 688721049 930517344 635905484 717261743 734046245 781540970 359399522 914988939 405622306 210096588 677974567 554261899 910694056 490757342 221654988 209846015 183173565 694790695 20769657 424508312 758559895 28982588 111068502 62200267 218190594 20404133 44735704 365214171 76880515 952231099 849594643 337240638 937735874 635267440 950847976 646318448 319739670 555222522 387313857 294551415 598151430 742502971 416812558 806354523 861938424 909397825 155888201 972153562 247975938 392413231 31214316 724615483 818436834 318817691 697627488 502680275 61742194 640659284 148401067 258271864 115311316 122736570 896548089 340838283 614108071 963867415 872669622 649237777 158410110 905117399 301642133 812640538 464026639 947186229 165094144 799043191 989890136 506593808 48006559 618416565 649786302 475005331 41073437 940903292 231562343 216170400 662017098 789980413 610106130 611247822 728208186 125923583 205150039 956281818 326749347 201458204 177360137 232259314 556975137 204738615 553473417 432694555 280434216 971873047 698307904 19890158 775479133 672277256 269930981 22156890 918326378 759904118 601154899 649356129 296914980 261319932 821758278 738398575 8772482 621665695 500890939 752624183 850162749 152690601 125799772 537223876 215263781 12410816 151612964 141608133 151325420 785726207 977696203 49106360 416339034 444838568 864308938 245877848 116603319 376387122 406002461 943827244 840877870 82344675 593127860 739565656 542056754 303751806 159391481 586586531 4506119 262370621 961963676 210927423 768162098 62346011 241203014 429952828 163999800 816387905 327171059 393110535 556914297 771621927 336123813 1001064890 9239120 674680944 918175395 384249562 560351537 856708579 215022504 880442511 198195355 610338226 636975228 539238975 4671530 781270336 87172598 187649312 625437203 66880133 153546468 541067635 574915836 267954986 100563295 696842852 828705446 4906221 727032156 184557707 161456353 507047192 513407293 702740899 686357963 355531007 246883128 211632426 348100473 933928411 316903391 215123747 425516734 414021103 407848899 949786423 840972990 268816927 200171999 400340036 846856834 912128019 665745358 584357076 64627867 4256856 451972164 365627696 387442556 325714970 198612253 898446704 899679097 352669760 20202902 127657222 526722190 335120774 139788651 820309339 108188241 804204612 764366305 117430708 905943195 729784296 925432814 724008948 983983645 955876343 468749579 538966700 861769190 430670203 699589213 644438824 503986976 302143879 982169125 652485702 228901237 239362992 267282906 877736851 518523766 284760442 349251082 257344805 22306296 715018504 446869330 476877252 622072550 409491169 865249730 759316879 271654798 689722552 364344577 228822166 330074219 659593364 170249499 776543773 238235705 718788739 848958076 850347766 249646851 552535196 312440593 422492145 185255512 708855884 809420861 561598904 403209926 391505378 13907343 332814577 156039828 155601499 434944215 126546249 61511752 989882101 170701528 85943246 369139859 411991070 175440664 637150029 491922976 389374614 904107817 808169719 239336259 159313357 313325097 927209697 370498011 641508266 772448304 447222081 956541069 811386616 635171749 3076101 349061862 893998624 108551764 71054788 884022177 171610944 358023343 54845125 426821244 962405505 314052848 502106295 652608852 474539068 830048426 467204460 761074360 152310841 327630876 6951614 754916761 503853178 764925106 646017423 709808850 461722653 822969093 144494644 486620024 789406227 180445032 158817642 751555839 591843199 486556600 715644998 752598518 430939435 481631989 99658909 116661801 178831992 213637671 764470004 891249629 398523907 413393009 914441524 327414627 990071624 866571161 686484339 284982230 677371484 807558681 457298423 449847445 130109541 890238347 855895254 520063864 27418509 525998205 495761799 687969068 860884308 825354228 560893687 569633322 471019703 104996788 399301816 524374273 541765872 332046308 410411319 134600107 518721299 369566125 241348367 451576405 965751352 481364250 300793230 607210092 722703228 980066382 162508154 956931064 9957351 414507225 652294366 294975299 709453441 127413682 411935741 776024419 325887509 752717233 741246385 621099266 750856517 548378378 24766246 498454472 918736441 472212537 451955942 719032558 69244675 763275138 98491712 914335610 869078386 397660071 78583924 356099848 422233289 604589867 272757562 160900598 172077606 122006176 667069263 745444913 362518402 182851299 127436753 821853194 764804822 144340193 516414072 451528182 907104288 808611093 397921070 642344720 431148596 734473682 392579863 277501008 209623423 841415292 986113308 840508117 113485355 957691732 945485254 962273635 341823078 64211643 214314655 297334011 806156459 833393780 594536714 218873039 355243179 835893473 734672120 394022543 833985705 159119898 698454183 161229884 272108393 595797765 581523729 405283656 155934659 715054289 347991548 810297441 63965579 346781956 305734564 148866616 743484752 289130653 536143902 958472220 157148321 843718446 881586387 141729787 270564744 538114974 176688908 339923510 117463336 694630952 217346978 187633084 538367496 708012915 613700214 519457595 202163381 452143663 811459221 250446108 553410522 355398446 45344027 462608416 825825916 741458738 277733627 55707090 404265960 526054674 554566465 469418939 644706042 748922696 758502753 974597559 174204335 703298399 519919653 106761042 541287094 854938490 130227057 231319116 436140311 430142127 662624780 654679269 9224645 123410672 957469820 36171187 287878817 228650080 692957921 970517855 818980119 173963378 342403197 667853047 422474685 404994063 47486025 39451260 682840 335195740 125739915 924736789 290476248 344567614 609800225 487846435 559803524 386391233 5936992 714858102 211712233 691645016 500219875 89674312 243059058 711165032 181331252 169857143 908541496 324600 382721638 980095714 232357896 535739393 744144971 8773433 147966461 136821309 642920825 619777979 822433250 686342771 81151136 973345641 263778885 224502515 922842740 957847240 93046030 702493106 404303397 334802980 943849025 436667278 559881454 665954990 882190728 799106158 269531703 830106193 220745003 519784860 545046666 22744987 903129297 759259563 627901581 757047395 716621467 843379777 288476389 611713330 858279624 397163754 321553504 995476791 415773208 564692470 701447588 380725801 177373505 38505891 726114245 244769378 278798214 122732064 687767992 516573955 46232316 461134685 460939516 300191623 42958154 102596051 446873873 28452477 633627817 110847938 160300564 255863686 749436773 336221000 621261286 839910541 557841462 596633441 136895749 464879108 563649125 285509583 432974935 568170933 351131868 32735987 552444885 802742939 172561559 683981882 891855595 371884241 321396472 37338268 841738205 950212731 989129032 641168666 33875304 58195170 769535331 231525684 984593528 346823657 288727794 315778961 893928130 891210952 988771143 47765707 858316180 658109078 269879685 682621186 478934342 23255568 888918857 767197626 594382539 818643071 400007594 873701729 8981540 508846404 321595182 661634664 473441849 579016536 329896099 25372477 152289314 929081480 768897799 628903628 119650128 844722856 643234747 388941954 7553089 310599199 386127276 179334906 22803504 110278564 598560997 220876539 455794045 491492611 272586650 771759482 799334559 768409098 494227027 959468798 194575044 73608367 160431638 634443116 41177361 182501471 974579532 390796057 236055889 761988947 586728701 348761382 255859602 708798404 405993082 978022951 478624478 519156181 977081979 92644985 533513834 726570970 559643699 129165131 141358330 113265869 609720697 905243771 549109791 26788122 654107817 455823519 744398250 864558804 100490803 102935103 132971416 225036557 667362982 645612495 963074044 427545023 452992551 740620670 192520455 51848921 990636899 873026394 5286661 82975603 815301889 486158968 660881798 920145593 141032533 40552508 957102765 829070734 300124775 881799218 82189144 134973941 278199298 675144759 414708557 629114142 920296428 408714504 531624585 9318640 659663994 608193486 631496217 604839865 885702122 592704329 846980203 647865843 908862029 674991078 2513778 813524155 693525469 874026958 139847647 353575333 932674733 577807076 526618441 643640555 563412237 964584272 881378048 907122902 329774378 983976475 853767876 100165266 487478812 986284249 62959600 955082591 322971742 56148015 186659227 690850958 28878378 24739184 949170580 988005669 734862901 261305704 652933758 820068677 711852177 467786110 971674705 519120039 984702785 439425766 721524602 873280550 505795568 625697489 805060863 843351449 739109180 237377740 329604716 8264548 526483126 180454426 146124698 414043684 770871623 117081605 827172950 1002154797 932434645 734282213 654955081 889420978 996751287 371231797 266872318 247737748 969538273 860109492 116475340 292132092 366827724 123451189 702856817 857404383 876391102 79109865 589485850 175750957 856980219 563291264 515361331 4775451 377018331 972561233 59044222 357226524 766474852 747936244 701125282 316172932 964650261 561587457 567180336 771496265 775907265 434561473 147635302 93912004 899596038 437840348 929313579 56295739 109374473 627616659 583046973 118408638 950107117 988476323 656514989 256931095 202997757 691030115 399924591 298737770 818203920 779405404 337501152 508730410 624636936 347807412 709129730 364800238 801989259 122688020 117594717 134930754 764933938 124611988 458035903 266822831 188738877 894210410 433331685 146413045 501511217 372462491 958189585 162359816 655758918 719267377 232866783 509040440 965032849 165360883 789121839 604315771 921793993 164753553 794861148 234086915 160407278 766096745 81809467 391286102 636818235 212278177 407753874 456143310 522487892 76624636 798653180 516204750 248627750 247599168 201264561 540554287 473159126 688222866 761143203 172025518 779696318 501962791 697645029 394546852 488932732 210836148 817749617 617958308 1154983 420576 647940209 192877908 652418644 917626249 969622388 520371546 864891186 125248493 48798528 678326876 178374297 339909119 546237567 437049089 808670456 766033001 543699655 7241806 657997529 545353875 647316886 335158696 985564546 658651691 578561765 948879070 966832563 146336944 743533719 324437805 591032162 656059459 663453320 58479141 452261036 663818526 42960402 437019646 53139452 296990120 185991468 431621453 895296527 415116838 24205549 547296579 445849481 544336132 244054116 224044357 585822119 855242746 624791983 849794446 786811160 20492118 895896533 966315969 684971438 365039427 806560530 855816780 76341775 56108314 494537187 760166771 2693282 734086166 556301174 702484797 509577880 707595817 387272023 258879796 15013183 867352623 100292530 281650403 512966430 697570883 742102138 45155832 940000075 205317434 81044823 493338193 975119170 1001809772 171941928 724494805 595482301 304535973 252991100 793901029 733249935 385176473 463484729 32350246 219130685 583146922 195775046 311967786 536523685 971431777 33405468 29130644 940775046 791612795 165174057 298370800 409452437 912497534 704885747 206474270 713022078 694774217 326159576 780980151 281201195 664583421 111080624 967468319 799287593 712714956 666965117 66438743 898143499 796794081 388756943 816537174 593319931 566254417 933996266 734560871 423115926 332123469 11179592 908238468 499284676 904989608 294629139 903243056 911208903 325096774 725155727 684777752 646905712 511682191 278835553 966395905 197262330 514012648 434431279 269983177 336681538 912233208 690749321 397804182 700434364 334344255 53131741 262352082 281252300 737800252 249856838 952549716 729294240 792915950 119775061 492721966 397889047 418139379 44075951 405453615 59590802 550961084 559673090 462570196 978936384 186432224 224501257 948594274 938718737 772287743 219855071 578510301 566081430 59995428 216195398 957652307 494886476 772272156 476979932 546712490 317262807 932736845 261567999 236439696 497708061 145614265 734965062 85798249 254955068 518525609 15183206 445746779 232263070 586784993 978839366 154701631 958513163 14578771 175707109 995468651 812430683 651464763 501461858 808924914 504417310 92477971 791184441 599879515 449761656 676461355 839072591 602154277 763855011 966068128 877950038 406947438 229230672 736209012 454856719 479507376 467161124 658781487 365468878 153086819 569647654 427934632 997814240 181392907 298072320 379293513 359675123 339170100 399646949 784355546 957438283 899493233 689742236 228168099 300680364 528532531 554035540 468461653 26506551 405914892 617132949 388465252 876388565 573742083 578262462 657449950 985435594 764284514 466652267 130602896 281864250 762580299 143987659 184790001 727458874 148746433 255237459 152637840 613032452 526771839 640344863 982626070 453578869 338870532 889642794 346971973 264739096 166161178 390953502 304447718 132101264 116212976 573667179 700873298 904356807 654029357 131682895 973313386 641984981 385211963 444469265 417980526 104542466 441848571 892992646 939992618 755122905 525732113 32303835 532345947 733355603 141273244 109543244 310921859 449999646 833935907 33882420 491339678 930989062 531323830 949635635 480249933 819213513 446861073 990878046 149062877 722746762 906732561 440698946 596198131 725681564 807978762 166139084 165683955 50981405 260605746 759299944 335648492 40851808 308031502 51558459 338261287 638818360 4999389 130247415 28840380 788188099 446937183 609943583 173688390 225324090 108092397 736015720 947434091 121893362 467715046 749619716 480221873 979654750 252554446 633196148 382855020 402373651 783177739 647455550 680388506 537973384 713601590 427565842 929987021 575473574 977519026 503497317 721843924 892834063 112539823 406991912 311915000 814870665 320729906 888928107 971449831 999586991 962790515 384694312 987775083 536596723 394236469 510923177 417998833 981563070 944481098 243111491 510199659 675609747 455191667 743805094 159744562 878942422 584788932 475608856 70235730 766094739 72540518 339312200 789596333 68192487 408276654 318815293 891946698 201652761 864906197 484152304 525108601 199620452 879313022 600878968 382610882 586183097 281464724 349822407 676967596 10158312 306579148 628411355 16747136 465586415 39088725 781270732 291265172 957979389 16736657 356601241 47813526 789473182 8869049 691039323 689443019 274556467 890695068 861237324 169012194 659218654 599112710 911746332 536053775 225219007 569109052 168743818 747448318 190231908 669180464 341740180 838251911 196055778 255007106 766300420 674363863 255609784 87690215 267160781 783379637 44085746 712702159 177441229 103957743 713972126 219301641 210963959 7774293 827173118 488192026 950040396 533631462 953185352 249874461 729816932 983080126 581974985 911394370 614011689 743241082 552197311 301141470 929601037 45079602 12116164 267421266 152372608 177869686 790769848 674987211 420281958 985279734 956787439 105310309 425286891 909386355 834469332 153763860 391617985 264951846 343415773 821574839 518357770 232369054 572201522 601963623 702203501 648633242 483119091 222952551 88892021 548598126 574247448 581417533 129870683 923803727 883136672 3631699 227830174 452663967 751807181 502882624 575801504 297395573 314465094 722701548 389848830 219087282 609568951 925997859 421625018 677444703 239844986 197795793 227041152 680780434 374359506 545512258 696974980 865111890 943420940 702403488 433344777 891160731 580644149 316313156 238338595 155042311 963626554 966336174 848732857 604058889 339495400 911236650 400391185 15061266 914076698 363170200 321268508 270648863 709815889 631113842 35896089 666635984 148251053 209038466 698854013 65054110 728718424 86576644 180945321 491060833 249306099 104392261 293017807 433244816 733551594 609591126 783689565 364160642 457530103 354255544 110594047 740573787 797913588 832267362 89197827 642460303 641833653 286592894 56984000 233762985 653751525 979862957 951287693 142335238 787852984 648967984 321533109 833456126 216931224 238391181 863555604 154701656 167869038 540796536 237176205 806073214 948476743 733411218 116945575 536534062 883823229 686550760 754301002 83560344 924213775 236498351 66796469 917889492 950916701 409724846 916147363 406039232 256254168 206929578 770945825 842422753 216139349 154783790 722526840 664211978 289787671 466388207 889822102 702144660 413140584 242429456 32464210 153425429 493746023 599041912 977312532 975115485 218814041 70954591 611054521 3158786 464612460 292394009 77597870 688742925 915518139 154425270 178378907 856080626 873494552 388441167 201335948 517300509 184271739 337656119 761444009 254419928 917960238 256440714 904563955 904446238 695373411 933825647 966920764 84653715 598799590 185047723 187190125 742630243 256658446 90360871 80024682 755210168 981907849 515639371 486663925 55020875 893882094 996492363 553652264 591658589 377014495 371407357 645633996 470244859 608476614 258578014 395962734 407111942 345562649 973970894 253706114 672788290 909301318 162580255 417161101 42142631 535038183 684092830 941389646 157050943 120695844 719403947 806125172 197614610 407140654 46700388 857614269 1000474822 651086257 235325445 120095902 231767545 289069034 693214672 251018736 385926923 639340780 985239781 565081459 826271940 92243973 619430941 592374536 114158599 682917653 340832224 741403495 352275984 145884255 596648377 328606662 803910376 840836507 227920506 135406399 541246135 295577010 70170303 534712711 291755665 82071904 805191260 851708055 667289465 313162648 999194868 203568519 166477800 203130504 602769594 943488469 14114236 152935574 187107707 971125674 441443150 197571909 586109208 494911971 121302456 830252523 762349488 743550801 247593431 931317003 955145398 816473441 366657015 993436546 202797733 942687122 244615807 479994425 379180554 954634260 457918377 868141262 478231464 117656113 536374075 877320997 703700819 628452991 1001134577 916720389 643075466 290469154 100030162 458795792 430987209 672817918 812709692 972463807 136888370 392792720 180340474 849371466 442332939 790811476 617224698 582341913 818000256 276530074 896088096 511071419 31446607 837703373 878352522 62000381 820341632 771062527 18899212 366330783 431250409 356381984 721447452 731375713 990421890 440707063 755629535 846562193 51876593 858168558 163672207 691041886 85961530 87042547 197570467 89200764 175234648 700583437 272161919 703306139 401238013 341008735 726288093 79675592 173739257 663892407 312737675 973082485 746381433 871914275 740191048 464480246 270592116 476566446 560892785 859120740 188690232 910913256 324067565 539808606 946085311 475866007 901923546 450229033 689397784 388133202 561196365 169552832 88724123 466641198 988932737 583797868 240366269 321128145 850529402 157734052 825347247 251041354 294870804 451742325 473516445 864298976 808893812 738036745 814078997 359231529 196550345 461634754 168517259 419262879 350252114 184335976 186336793 264693174 367635034 178268261 672829645 876660052 753570336 664722692 137094995 576516293 6407785 668621994 750809716 58974362 31935311 267106317 143472169 16455162 91170569 512569676 326479755 476767321 645842145 179084598 966268267 437773744 726948063 337284008 516053390 159028772 197267822 627250459 700804963 26806618 716769868 60884148 660642367 757722456 674826325 87112588 363878244 166640425 966584347 959259244 228806914 989187457 622963226 384447818 139684090 709570563 463807999 336238519 780196565 866434487 68763118 973517861 556437169 708613084 878832334 913838242 923335811 644787594 699575968 870756296 284525863 451486355 419034951 796268329 624955580 360131032 499408632 81341012 976184956 175718364 708570408 844525674 908862823 362636105 951792350 798764707 485357558 428802118 188000968 285363744 345436749 866835467 689564228 941821813 637733098 495375039 402470906 698176362 859218348 258291099 329963945 712735323 315459744 716553539 925569425 246168554 829906066 315343581 249112798 795275196 581385714 627890823 81305859 161262752 42544628 58488482 941854718 643361422 710237367 23982 810653410 629640000 696388404 942553422 524297740 876600972 275976217 70220640 816540627 619166648 531411043 661062285 167250354 16099761 320148938 775857129 12820721 959003652 217915044 642692317 698298085 595808888 675541567 289415547 486296219 662022803 452196456 666875129 786228965 651133947 236902902 699597797 614371026 999413120 806536949 799717822 761721140 690837544 9651672 140053314 824266836 576530367 852054196 488309601 81781191 735609770 329479476 950108307 994104971 510268697 726380374 343491962 452045353 665832709 69605219 747891988 363680991 41571349 760522428 597192627 716512117 490885139 381981969 143951915 283019394 515776820 296913148 95483107 182023251 552100212 25520114 536592084 872793694 357595545 769750099 247536351 215530267 326326245 349222215 524577407 714368261 225747547 622777531 917452618 468842598 834388124 45908757 759476952 446999529 530944164 774250715 308287336 57953539 124465692 360774148 287880911 390011591 558577340 623180093 206214411 828449246 493711329 321790344 13648669 520764467 113426893 508559797 933009948 186134343 294209708 689749107 207845161 795119800 360922561 627289076 41269711 528135807 503309313 411770453 342600637 700174210 561557879 591839726 12042674 775548672 433829755 53823220 840493076 861148544 145624434 934801744 675741194 144817355 358101736 529266721 410725018 107462848 240050482 148763346 880533634 21931299 844112591 3164739 980901236 181337226 127406010 684879693 55703193 655744428 534914103 724358707 844565013 190863764 464474924 138559237 238860068 348429402 108199427 697464287 185960171 311232936 764629988 430201825 198487197 233731876 110704220 332766462 920764951 359488762 367605453 737822299 356943674 523043242 568245826 886630536 693957879 685235647 994150001 791436008 849050612 586155501 604625871 173964583 909817986 317706003 263734465 551108186 462056879 188945391 648361803 937869991 268751328 261359221 461076872 831960341 662808434 459476049 53334331 141355837 88474875 433368733 568764612 390990999 988385516 208166289 128174284 538390633 617209704 726382461 77478773 951125065 261852012 821092977 799326101 145683456 15049981 327826554 394427291 930427012 835150267 734025837 333400885 59611542 907658367 644639984 383099349 319416657 590376377 998161498 880011708 708702738 135233665 833763637 774369589 159836247 617254150 309882554 913290964 242551205 305519305 665981667 965318882 142642192 294027504 307302652 892073727 370733313 363647194 227659506 596878162 842947183 73697035 172066858 22113602 119458559 660412836 204079350 595153481 766716949 515846455 1000337450 83910045 477963409 194701334 244946198 738773405 327358653 945225911 554137056 924807841 995098742 913604970 605141060 202941631 193714389 761716904 869877326 482345033 704985331 989103457 835091518 856176456 299958415 786160974 455135981 432983312 103147864 544293254 776912175 736086620 550125075 618188068 340333545 970891018 79858476 871307260 940117388 73832162 590662997 776481294 274681447 561324280 352996545 165133788 782229868 369835537 182102379 240659271 559115058 132241479 384685683 680171262 118378300 931168815 749818251 610957324 303935035 588983490 416624200 539037016 368608393 864048031 747457238 395612945 98061959 496963435 984621308 241628958 226692559 66937159 224511225 205709536 831858288 814142877 138269026 260017220 490310952 736673645 109176021 129861320 246665452 66152159 370457445 717347823 361586328 611819974 173191951 497164785 236417418 919233552 396627182 628010245 191293726 879783498 384042427 173984424 220775425 879887241 517121275 953131335 435729772 893780912 92024472 662974812 317402933 444968470 830790838 132901306 184104554 649984507 611777456 877679751 148623097 798195583 827525998 861280348 676120598 497141514 723589278 845609331 565827832 102590337 246318572 728783645 335037885 203213127 766428268 963203541 78943557 670684423 642883646 605243533 575225045 2439502 159153178 912212321 1001648667 917548323 535328450 123899139 258236124 185772161 799988492 865264238 656431618 760917345 256188625 729695547 790247803 801379525 931063266 349415883 784352103 859075760 361282475 198544130 733700404 54451327 790293973 301100419 857586797 31947487 828906146 761986287 332403524 417699600 19598021 992849451 441996056 132351171 204902324 555573703 940220548 720914024 651322229 616057769 194463166 463100257 392963301 499441318 888083381 119712883 731815001 895884012 564303334 156811319 525929203 300613142 102509430 414635535 402979990 180248363 78478887 198529508 641942610 106279094 455589864 566325049 340514984 13771690 565146926 371936182 838891189 197942124 414302181 492023554 323206544 727294750 955611085 231834492 38449780 575211097 262761222 491381319 87234749 816715352 853310796 727376250 101513237 578978151 975842727 559263004 765715465 355019623 587815163 242948694 901767592 612378736 571669599 813694640 115837412 820282958 996383640 699330658 639472511 763479645 998556650 237126553 640397876 702107690 779129127 554344601 271524065 558572700 387116290 214931904 950481382 662679695 642263589 471530487 95630168 219005908 768859622 452927680 872949002 944007914 349665861 983501201 845942508 645175916 847265900 685427371 696433425 653627584 747344063 70607278 788156665 620113783 394368247 627893533 4076057 734952743 834484912 677722460 659258123 987452629 983326350 554859440 243624200 736836094 768697656 335079558 757107518 887799917 760395127 760978038 809489825 495955962 828819698 921675096 345803952 522558213 194624066 80356350 725543814 542335463 224331969 442533801 895523477 387793913 323388221 51644765 869777506 131856010 270403545 463859763 387967145 310982391 555258571 216128774 816531139 359068298 410761485 809625331 992517923 873632856 906224622 366575439 562023592 558462604 922326873 437510024 640587747 835707736 597489354 585116842 290854733 664196278 607643917 645101999 757484808 759196280 38721105 45125829 646570382 356351033 230768462 377642396 803404021 401131816 343845499 420420556 440841442 485905688 58627971 446188082 566095656 289891814 102986930 521626501 106659094 234291578 915801336 66007378 185083394 334370911 850256239 317404663 26714703 733118850 896174589 224986257 780170738 316669209 172502225 334420151 727698612 450111701 554644312 641296259 225305267 356071335 916268730 717361419 394433717 705510098 906516660 145724248 932727950 322314027 347421221 2812976 667251245 592035127 766698523 681228875 540927312 427170651 958777183 584575098 587673463 46076006 336614089 724034581 722595607 663014951 431320476 8684832 185041359 74564841 101168724 71007841 989930562 268886339 228385242 338499155 664930445 97217914 354304071 144250328 929336853 34122495 596981689 212951088 47751132 790843360 768164009 15306362 202924670 124809111 151304280 277753098 78264576 844972614 605085704 305992290 197497333 724666340 414939374 481720185 523364802 468058707 216820689 904692176 506956897 804680215 128567072 488847799 327161824 214615395 422317604 417887528 788235604 649419393 551374049 471604458 881089931 766623096 565017933 150490873 157994584 934305638 607576107 617999071 22314442 942633761 173876308 327512676 101071758 932149556 521880313 981287217 453707055 470789831 447109100 430164372 591006364 714649506 296224303 325644258 956768368 616103235 892534902 623818154 2688203 50587181 464007116 38039411 905414173 869417220 733221338 879282347 525499918 198163216 493095374 653044979 624381011 776055756 821593150 197775294 20559116 355635636 132457642 903334497 808685265 875421440 13617738 746616378 749229865 535655077 398270762 127729181 202532079 966426229 245693049 498299349 500291936 420310092 480446620 303741997 29243988 304339533 75238486 159988367 242282399 719295916 682434519 220878407 703209418 943675404 854389206 439618953 946576229 853317132 241874613 842977778 538374342 140538095 937724737 450228861 397744231 439321888 138510043 18699747 295334250 423841170 442821574 793133195 17114915 990763044 270262017 235283815 633986718 727189867 799678462 205726665 265759100 919759836 84043400 82734285 223821853 807214610 598391174 438451382 833126960 296842113 667588599 886222601 839101710 17854054 311462780 574285194 312082580 46867533 406664461 5200232 677308835 3144038 453989159 487825426 492357602 564289703 585117253 634228786 502890948 419754108 517649295 438265346 206116077 995086372 613147698 299461755 352297634 846247720 556364332 804807115 438184242 579372927 730510569 755269596 256061706 274023824 363273890 961888466 610281266 688660600 434728215 798325211 513264646 524301807 33579208 724913305 210669271 556665161 161821528 704001190 958075792 173366803 990754615 732783751 964202944 652014655 701502693 50044718 727488173 984094533 535557421 460780799 382430993 346971751 289814133 460353370 856282031 980415647 624365736 648859922 874506573 964035242 941986663 49742888 426968871 112997792 159429100 798562581 480983016 638931406 939746541 231036602 330305667 531277135 307873760 407769187 857459814 34486638 263707742 710004822 20309737 914101074 695857822 722745220 957123103 756610239 772517995 63818639 926529633 152056032 192970871 679848897 711578106 561023559 59484264 881632712 507615446 436451656 165628682 402110536 387907592 48923051 540043030 660049138 447430225 488820669 766879765 664276405 611659497 571682763 137654374 298926325 102822139 719402210 253660286 655961564 589946198 29639257 121957621 91226748 27490600 903525582 483693610 308780997 139794864 486971251 837939437 141378787 876372721 111107985 645000058 625561368 616496105 615462000 789712707 963500960 245745210 992125669 692332974 789226793 881376525 475541745 333696666 427585530 176757645 422169182 80408909 198640780 646359804 924685861 774569793 87869531 821275430 917419922 733947789 469774044 311007931 518630148 770234755 15373413 188992155 327288717 800535764 46490570 667126782 655594778 587107745 714359729 843604734 676954114 860045126 802518826 367086848 274333568 65970396 837767690 96255646 625304316 262921801 634868651 519738399 98507787 935611698 386103521 166862702 292116244 451545971 279898321 802904168 422237976 683170141 760710564 832052015 899136856 308856026 289271920 548232990 231323530 521173312 674076860 154989836 273140008 856353401 352881428 576961035 183623487 335823934 191052285 18711417 996379354 911276500 746099286 843466567 949055587 29636280 459780832 567859532 114101654 560153247 863388663 397758522 307279746 414179817 560067669 177152562 296601488 752887015 64993487 602008082 438088623 492618421 611605349 715011415 648316759 744441655 752503439 812357466 859270549 188645370 276929883 435378963 874108094 915266292 304507966 346812150 827924995 836185382 927975529 308718895 650138656 494907638 627732092 639262433 38184032 880578801 413845760 815737893 474646047 385141760 555587079 790587978 656143251 160553732 280661224 865688208 915840918 24744281 38180543 973999845 236657638 353778288 363885238 45894970 48970669 544432599 962928797 94864163 245943661 16083487 643495461 518697229 407009366 275772449 547934049 96421829 551694273 58213198 762570614 217412813 35944065 703711475 900762178 897582657 464229437 762321162 472913282 733536795 225206459 759703319 465221062 287609000 160691812 327695724 642754120 805981048 453391975 379694967 208752836 462302821 222481504 201066300 671229864 550805704 457193243 77101393 267484657 672012063 821116656 363787712 108264364 168424976 583577070 271205187 481554614 890824846 89873303 491559986 862019843 84924957 894625216 427107102 458440977 957664263 639239618 875093950 869409140 657473478 989003320 224490962 887138546 843635164 933275478 404211071 599040388 362829525 37520616 517830026 112976033 570256720 623870480 362108098 964480138 837617105 315892676 62667501 209205663 527495412 834508364 63195318 360620550 578220907 895800745 710010353 513763640 812493016 383628389 98806874 837670482 591217684 361816395 229737458 986105682 153279978 777677281 61869748 502813491 544823345 9709064 780645991 683671344 199525328 75828133 933782136 730354099 690943981 636922257 934167440 285023602 228988982 298077304 86990459 87609238 252442819 989985663 402675923 495001715 920113419 575715201 942876415 966351382 731913659 156518657 245969973 562609635 325605545 339843969 506444005 516163123 745905031 695298203 478083540 211678409 909099098 322031707 674493735 454454891 661233368 312343447 393917345 591761416 147971210 629477754 31444330 388215779 836268042 224799717 775081584 10951727 814733368 668778089 865324737 270343190 957154434 875148898 96745703 958587560 886724027 587874956 74758358 849867166 185529221 861196537 249014609 999342424 186212361 933549973 123795593 48301920 866765284 439250613 45279529 496983753 259042447 475363642 77638262 906509160 742487689 749169440 488005536 215709940 575298877 310224309 956987343 241089258 818822127 483621184 745610529 751795964 637962237 872383119 784871126 144395785 675537112 550096772 75194625 598495258 253794747 539206069 830322361 634696717 443285504 458699874 117362713 858672313 423882822 173206977 886440754 309706918 21939079 788220919 55145482 682262585 392155449 926126890 456507926 280048033 772130485 981038853 935210340 310195168 864007811 158356612 456481382 344362721 662960768 316836951 676272193 395477674 546189807 632678790 655421315 571538016 109258641 708076706 793297869 725434660 769478770 893696081 412390931 724041718 567329501 711008902 581652618 309156456 67642168 724073729 819383332 388663721 746994100 872536042 174134062 12299988 672092020 921906358 865353938 324497713 120716517 757594696 765617178 426802745 235697923 466147272 335869420 479111682 301221906 964606235 615793558 874261187 639076550 83338870 668189530 897099593 975238050 596983910 664893422 513603595 813459260 549065079 771767563 489750527 649643747 767724814 53972834 554878883 166546365 888231076 918009554 548715827 979572235 603142993 995958559 359795472 864225251 832633412 14039131 451769400 134716360 711789506 689940524 792427796 374603646 889689020 261020051 945268788 311295846 89319583 708035730 663106684 566209073 388005484 485944999 923219744 633150835 577629818 529757054 377583610 101508775 589544224 121315179 103953263 250278099 187023746 19579549 741314913 187086895 717431117 707959580 127071435 756228143 623385776 200520159 860741453 521525650 271933590 332749492 379557091 77084429 15582089 290741762 657192418 857247200 527187082 498938058 180334037 839763101 769167517 390217371 322620370 968662172 102700520 865604472 791541197 171621418 200070505 647977667 13575275 57181615 828221245 947566263 336521845 484081980 376525284 251340786 887088924 399656645 706913861 326023781 923198981 690526911 808663381 808835821 512966831 713000823 761960856 705779876 484731318 909034332 156253661 445340083 236764521 601989971 627028728 796285474 66586443 964148628 535257666 670933029 236774649 548400439 571539151 211624549 481211795 844058942 963827515 689162619 755157653 452430611 485531760 179872672 118202918 551144300 635527922 434583428 420818285 365794498 708604211 608240032 65272446 432143049 756197833 935300470 816210783 178254604 28691211 601306006 589169573 608902 733199047 447487678 974784580 83576742 196141454 243488847 857446754 253293591 279889750 170606682 412619928 536833423 502795302 595216113 406520860 317011770 129343392 816087843 994053949 914430450 398284941 675477774 930585358 747838559 676392810 122109584 803158336 222722912 828915058 110260766 185082296 466089193 957469751 951774887 806617339 276557711 615586845 905698802 408729726 646891156 918922343 915169673 989108778 126219522 769528500 497399761 382907597 511378185 945970442 532920820 850517892 494324146 494880399 983685733 524614681 316262082 429755990 966284595 243433648 805786752 550353997 811118310 444972969 387557510 374344262 136771559 337186820 253504587 883005696 258811901 12617663 37115546 914198982 797426364 618873881 581100768 898131277 42155897 518584818 864821960 737886678 512626013 289214363 496192549 833976834 848139001 30331442 202072826 117942334 556301221 659847209 954414269 737818201 594197493 907481043 301346809 496674055 1991363 423587886 989101677 654326526 621336049 336291495 143292407 580048328 130420234 943407063 327802035 642097686 594535834 784066852 7735782 563049960 283008796 462958975 664188591 655045534 635673203 628930578 471529498 243404894 387091444 382876257 792868151 924610000 682554854 63915639 858122536 540191347 316185513 458929459 548378638 578653385 407558230 224548925 761564531 839561410 924260582 834759479 915712166 118052067 17574340 50269157 537317950 754443697 857320931 682385107 944046852 813828449 146646503 55983741 602727604 656110188 331101204 986069951 732806084 927066371 187054342 566893823 178679390 832026915 28701897 171402786 599153832 428069100 783370236 427655269 391374240 349971083 363376338 667821208 101376286 218450113 506988026 615092946 998707316 78199713 384144679 663245939 805927377 338520126 580869204 494260049 426533753 258894897 571487178 318894565 357771882 326415810 714833521 290157065 500066403 237263055 158609604 737864316 564480749 162663103 513735931 718323152 929938642 404083268 450179872 268533302 92550628 197287666 562806413 920527316 261487376 636627756 301888951 690171915 985768500 494151166 61746550 989352872 442460769 407561424 589648527 381366642 54225980 292711683 876021886 807668744 500621010 332457634 724386740 401279556 493075417 324076802 181137380 384030025 557890079 651128291 439947872 837855274 854050600 646146556 194247617 237067071 371673764 346613695 529411776 562718447 737359790 3107601 977155909 363534929 527292797 749101867 965752483 58717723 266733517 750152396 722316027 29988510 326132956 613681013 325162003 980190249 422392255 498544160 833994623 496716050 316925035 183527039 787856995 796170813 853383078 506557759 983307894 28923309 614993979 260717512 225918673 360930909 363464014 65997618 560639743 575149998 797170781 521953351 852264525 637628426 983125688 684309727 839899374 481247467 635832657 39452323 991712262 40240148 77587472 395384830 700326684 96111668 926828102 652354485 346420729 548822398 524542447 891224686 468901046 538748764 840158197 707155967 526928848 4260823 923642030 845920609 798058573 314985399 22488157 732056556 638185400 670941688 325779096 974687220 937183116 406548813 154938322 562342004 427150385 149342038 999663460 400647144 658567642 842178824 876720030 14249496 931833520 535045580 401242889 56039142 776297301 807907784 598876330 908258519 978970735 88921531 228138505 33139681 899730592 317526435 364748979 751989168 564976939 549459206 729281236 26665868 379221878 239443864 488658355 187992321 889180170 63482325 280808846 32010075 154865434 489639251 466490401 880874699 28328384 30474415 765002498 861824723 310838830 752957230 413431874 722633686 124244949 867803489 904497663 76837100 109728736 136755360 891854417 83277558 185859340 630019446 87161260 476388242 176516983 637541725 748711539 363656260 965662986 500645712 669345219 620180362 235638348 656622201 284412702 18357652 291494262 150481545 304495945 360153322 131174939 842128579 747119336 532589087 620961891 943788589 545506193 610918468 779618324 902406030 679887989 181182879 367529322 631728974 821596686 44110904 989168351 563995638 765944810 445112642 723921886 663443888 233660032 33701426 442729030 262550202 242628627 30773289 302518017 30345048 812227045 400329138 427699198 141262710 941527084 924458669 32629340 55640155 765851785 832285896 562954947 392580270 349672970 555461471 743469019 911815555 123931273 927141008 60057839 609231414 101321225 639131483 498268158 708428602 73944879 547311577 638631162 833451582 804971618 417369468 237791713 549039599 665983711 729155820 497558750 496069616 130845638 762065371 442423327 843619450 984685548 584378629 816470940 804553431 975319065 176421109 950489210 150435967 480111505 117319228 839389532 39498980 404019062 551228170 142588632 182578750 925548439 185929956 664662405 681042463 874089825 121980664 627381500 85621894 894376288 585342007 110804918 512903924 467520091 644970332 231100888 659249836 153254677 590411898 217000325 433822145 709950093 736089322 352422096 828129271 175918736 284409031 431530932 939377339 991996375 673535996 930493684 457408963 913590477 689757072 904020911 821815122 686253605 997408365 659116607 794687415 753197439 532500919 176853506 136135734 900274848 221861566 846729417 999949392 534930504 9348576 87122012 148329254 316813932 691437589 612199256 535364424 71859893 677462678 395160130 681643769 202711122 23636792 464765371 384065883 522342383 148084253 768353497 899522789 381672530 106744267 414561629 875994686 781725233 114226631 543550796 10795895 61721737 453972195 725840819 726831949 517722269 643804462 415869817 961989837 372213294 924118534 165793985 312694147 126291419 891449997 665202813 290877579 699288379 873930925 809023943 454153502 512981421 871582631 209489075 277309890 497449343 341893676 57579882 462969036 688174465 128471278 524432307 13867236 885370636 256939435 377692326 805856171 36159542 617976115 474616707 588392805 512507972 231931774 824799845 614128990 33800965 327744823 551759917 823280762 202328277 737594884 1881658 171177996 994271824 537392135 952144939 953654727 201493790 444773241 818972703 53191268 223925904 101643626 912929214 647357915 18257809 447243573 195233626 338602759 229299627 892215938 798267299 515129780 320698114 357206641 198691444 818372167 437996659 358480102 701981919 955454782 884017752 128235465 58976276 823173764 650681315 843758593 230494440 90484771 111767121 866275686 882986262 986035574 793207518 973555419 188325409 862402380 138650380 996861139 415645697 275077853 802103908 313709902 614317753 113828237 825179298 856208946 172719800 53011837 222582320 946815195 178213849 218637268 740979882 668411399 1002248665 847451182 82443944 1866593 853084880 893111615 596977791 310582533 105815148 995320528 2078309 440027092 685782024 218603539 211819606 142004117 496831545 259310827 327915013 595825148 494236250 625729793 885716676 603166649 245444758 830609793 959250666 200503951 932903177 401449434 275662288 166823631 867389144 599762529 130098660 560504731 581801960 696948577 659786804 155919944 26183670 676120845 393995365 804057917 370741285 875032704 187008707 88412067 272831394 362162538 978367447 698675147 124737687 429775204 574129621 970104498 235419633 445488848 419853205 106368663 741465441 419925058 195382368 417077695 898243789 922996252 279360692 533462061 486705628 790880789 668313998 490166595 482094407 378014803 417126408 38255324 801184443 879486535 339130381 23811071 180546773 287615579 300465403 864540643 666149198 515262562 819584134 950247957 928637445 647219570 878081335 240131796 270402504 459684198 707925333 493712982 64889975 935312513 363379352 522595523 157427353 209171661 779478210 8476101 873623142 144259243 359786330 903084221 602476373 18815292 48060927 494075460 538536827 996474716 43843223 685349758 484918645 148179559 387459495 83323623 166378748 663650345 807291032 943510753 303667443 199852380 626275233 473079623 848585358 763967644 997030633 944012380 846595237 187430997 853947723 792515994 273605977 384406918 530716717 209180956 839649195 956200081 975129685 426192216 339142406 203582833 969383278 974839290 529602656 842797675 314851469 675205213 501473280 88527657 984091523 487857585 458412107 8159888 967862177 383600240 298950833 727923652 957364250 291283257 826340622 112466947 899382629 112536717 54764197 946972766 569657410 865861107 569159255 775964662 33701999 750607147 402339548 815643293 524211129 1932911 313960597 62073669 594141322 103903110 402665794 385595653 827676814 451135417 156321258 716729709 147940273 723249734 101074713 731950774 173316958 561332150 65663416 820650713 542602398 535208377 277636087 678408411 590921787 149954120 791096323 746144459 540474236 273234745 78204764 256519104 617596489 157471533 473416537 38728261 915221219 329046560 184736845 716637513 765950807 585500817 997440512 267446670 5577363 427649694 45786044 107390987 201811413 299583532 457129585 360594350 227987523 25125837 425548541 629153031 240747274 854507179 903188633 927698797 664455579 823750690 197555457 414493947 75306509 503508536 289761811 375627664 799164968 342251992 968775578 614583655 458547443 563422084 368623959 768740471 655742355 730147115 684045399 217482229 343140491 346181309 261441188 239937401 63481741 838893641 242874443 967996878 814819925 340487739 866231430 650381652 40341042 142943448 100734519 188455354 455707549 775637404 455504726 145794756 647443926 937771079 291633912 21037353 866110078 312194751 594637110 75375686 889606566 168252097 234689549 913107524 41459663 817149891 861731666 195178804 332007360 357927856 892696525 763366531 558061148 443626793 311385948 314406508 233462470 303604966 422163138 963235639 31143094 992044310 146534219 281428750 849462122 977385571 909601200 137874640 366466720 526895579 149146906 887932183 29106228 866100629 685695527 434223798 864263160 145496452 636374039 840714329 728698413 420203182 716454656 644756219 463123829 205567475 899442089 671292437 261870345 895709434 740071105 11838612 79395470 26811915 909399890 220823631 638374733 282165874 724050989 673156804 39198457 88220250 8796405 464963063 236772666 548826473 294355742 64792690 323395175 41190240 130236199 381841194 218238844 272661926 163620816 977875911 349817915 855102589 965362564 386534439 440177428 340607484 847115262 599005922 851150644 126392526 162278358 846360608 580017099 1000266580 495613387 724223443 744670606 889355701 586966882 493052203 800752007 645512905 209131094 143000661 304531389 308071336 480640898 441071076 810098680 210827992 581539268 351467527 393567095 104268690 983775110 121563107 417770932 180871668 257242199 232364684 871714274 327965441 152829194 702105812 294000088 73190022 522911641 699134553 337669785 882040837 104706690 959097823 307987467 590071957 220744532 15548904 530530827 38611511 888644041 499215857 380050166 777782107 255928593 726940304 975442378 646906060 602478681 455993014 959864031 315358340 591222597 978218141 590241127 451069213 556030271 679528819 59212063 966930467 59765764 161812996 931217203 423518119 903631296 183236475 382363590 793277977 504639012 803816376 380910066 557479948 513590760 804263285 747418693 131590880 161666189 677980654 897664846 354317183 959774576 81260566 676391344 137634898 241919314 454627731 834343458 355847659 484764933 344363262 334906694 817537067 75317794 220794159 397883586 82541771 675907352 588448009 269774812 894758338 632663065 14137385 620396764 204989970 652422071 166519838 537797859 760555626 635556524 74520021 417250891 388237968 393747724 482966786 607130542 236889630 795941036 336070043 686087893 346889865 45140440 870320766 934650274 223429815 31865059 519634710 276627093 805612048 828219409 859968243 216091701 891914377 731308253 815406183 843283879 595852884 250514576 168650388 470222137 530489267 325089140 504487370 702447329 665247696 816744139 864466549 313149187 94301574 812866428 282373295 405316067 374027748 850909568 977837808 202934114 467193544 716570478 86209901 825163949 380809454 185888487 371212816 768445034 965566455 502631053 626271446 306567354 533432070 226103147 809397632 475109920 457129987 922824487 268721906 610602777 478061546 655729555 729501049 256848185 370539157 526518522 398428566 764232204 103696158 942106387 782200924 193467048 205950406 67949215 145154927 356555294 661129478 488594017 256809461 843405137 701530492 814197725 940888215 106214947 148213293 631599601 883813562 334215228 712601155 470698989 938849076 871755727 797779181 948592041 325566219 654269690 871124056 230571477 466934971 778099197 704555548 340181003 177459151 731930246 961585198 796108277 391049999 721341606 916749439 97793254 495660951 830397149 315983928 840932184 839042560 152933547 841934917 987695789 600588229 336311994 198965887 856730242 274462984 566170643 796555290 804938327 885181473 539896606 269678784 358032240 554164711 384931620 395918808 608658091 168257218 536736833 303683290 125532938 458095964 352763999 240035702 321619089 889970369 414051891 517115308 40085376 659586934 151998833 404150606 809066378 383223973 242821223 360154628 151257732 929038534 699697645 633661158 306764443 709733354 778503431 844538544 636848835 68305347 209747375 356630860 411035199 294884783 48188547 276493277 550024125 167546934 32835824 721463124 6141876 628424987 263906161 279379993 696281907 238260301 177666131 883061079 12242042 972431744 925932589 54348523 129307985 725361867 472642913 298559594 319836743 165003924 223478981 184413264 157148499 953726629 655232498 991705680 580070746 293281148 76285567 104805602 46573449 297980729 984896211 980222670 721216485 827564543 132395077 89556353 467621800 908272500 216393417 379990711 682063421 563967578 886470283 376602243 910791529 609055202 345237420 799643232 569514064 318091247 242433200 105211589 38382340 593598231 908989018 335965482 583350761 273302369 61243158 175614307 705442271 346393220 13068006 979884732 586251263 148750160 147251735 663496783 960669285 797861728 738221187 750685760 666890466 386775790 102294810 215904654 899024772 348073441 810782680 403415643 893024576 279914310 896903511 844245620 796588536 42405990 93743386 667743754 480200349 44503968 992392703 27249653 25756865 337895489 186579276 115378940 379397363 327896185 629183565 891685189 488935188 671134576 607561458 635677163 496449984 891190008 586958737 174596856 78652359 691359279 35031389 568947454 217480471 806029328 145718999 58383400 473048131 297768557 341753847 674829760 163986582 42351302 647568965 845904689 977971262 495530402 779516406 89183338 298849920 687275890 848450104 902118947 421783653 471957228 742181337 787340649 150093893 983704975 641163285 351268616 340937703 383561430 532307044 695967234 993523901 601098550 493678294 131139487 222847111 182968896 146157101 622993089 847026201 878479803 389461873 502130229 663107806 501539901 439361657 863475016 513840307 671105683 909596306 989606723 46330723 679398329 34466586 386597991 901846949 175856210 779085754 543387166 760050015 758053626 328952834 215172845 352341179 740236198 840951753 729490383 652126014 781129413 405780859 595811275 653551077 1100098 143866233 704411283 765993234 527229665 880127051 302952317 736826285 514394431 729551182 57443732 7305791 123619162 837970647 290293233 287320065 731015585 415659849 582977652 255461684 594195283 967370740 665047216 26458291 224652565 468232658 416228396 171072686 749794601 948168968 152667148 803610378 559663594 952724978 160699547 138009516 956215519 962005791 147958426 116900739 786918080 88492102 11996397 225431190 854469887 541294894 741577133 628238635 279788796 873397473 547387006 679919472 284938270 492395762 871581246 262525614 197134557 141343260 292020434 72689163 174380780 931719913 683861300 933975840 533959634 108386357 717787458 471950159 740636669 887171371 588734389 476900049 162692557 521171501 28286431 107937511 74780020 563916342 582061735 335215465 910542468 381318144 113213023 390175077 66110916 102763601 857760004 66001225 741022189 568297127 898765470 504396223 192658719 244235797 646215101 21760610 990576785 124041735 955331625 900293229 880836415 530846856 991477987 166519606 352777235 444628612 570879825 182935383 997691880 327615546 994752103 80809282 671116268 578752381 826467314 148782291 603055260 654863183 821197792 993949315 663620219 67022083 794310142 686833007 864766579 425870291 249634563 411328865 979334681 744955367 800278701 46019511 292673510 234444617 360514516 354373515 338641716 900173143 322032556 358473946 791610395 161292815 504443613 304526800 229579982 973862552 222341932 647175782 309547103 55555919 595906833 33223413 42582626 934888354 842395247 584303033 82270353 442312313 453267157 368898876 656579517 386335361 14837919 689785091 371276956 285438993 482300990 947119855 441331946 881760194 193736586 320594934 549872799 219343357 521990697 39719166 415883574 379876952 463972966 165230382 74973564 283859003 160615174 315200605 414487843 545096927 360215615 618928790 768974641 798192385 692180882 719860589 696286425 882805515 495156973 518788737 741748199 179532382 921976606 431925018 749229854 346504779 23029847 749671507 945953732 479591369 500063254 769744086 720911270 451303873 145076670 335524838 68443207 941902449 246059718 272733710 745692130 394449080 588572962 318179037 125343113 232518680 708667535 287182804 107291332 390084699 974100846 723751920 989286749 648792964 207025205 554674112 737487010 190339864 370777035 189950166 478321413 83692156 344018999 927461061 351573511 973893324 746769557 158467565 391386488 547237081 737043486 920684605 721850229 834358431 997633641 361097460 874911117 456518729 721247056 665515721 795223816 176821264 751962447 796037491 432732741 362505228 285738747 427871651 529020748 696431462 137961138 104242702 829261123 267799986 716669190 996277704 588040652 920964995 796419941 692704078 125931334 843894127 272526892 248415222 833785413 218702809 177608011 874666540 342712684 812654210 359351400 662102603 470676725 886144031 260987939 439330399 416140577 864031131 923551606 940254111 360626712 622591029 284765417 909338760 160119525 811765603 73183200 835352624 865809100 546644134 764314455 570376564 659705647 827644049 500538923 907582204 659703834 630938617 746221384 251336277 900082345 520666891 653246461 799627963 618427180 161328749 955722135 900763912 318898158 241747253 662439936 717373334 127092051 785769979 205985512 827717289 338583804 158628103 557164716 86252604 878075953 512543100 465273339 833569055 457805957 58971689 700186516 634053059 568645476 141307489 271037384 610386058 822996745 4501858 296485261 279085404 829908159 702683408 830585187 570964599 430916049 649001856 786328120 982204721 449811474 207794505 341568544 626812709 347176512 252907935 778346632 325788160 423575949 663134139 873008115 233780113 695211510 988603582 822682969 37589753 810524867 213170947 882943605 500301883 254936663 975639287 731506606 78232837 603961429 793985180 943571956 33111504 261626923 898922390 126413444 503428451 299004146 637639819 634701644 698949742 781044107 230295657 333749791 967700250 634241563 583136630 134580219 11208998 545285319 833118765 96153440 976954955 780721848 522594947 631627267 136806239 4684852 126840889 976435344 223661680 615406358 481740920 149505390 227751685 219546196 610439114 553328301 808991319 410569212 537489284 956274971 859981052 53780302 21587052 447245175 612224890 949263388 179973873 44450927 366172758 6330658 250649870 546162156 166505142 228562579 995767886 900536876 953744688 367613948 247826892 946756887 359722130 689996735 519924990 802924854 767469394 196906769 199755980 936490965 87952343 75522664 903924949 182129486 300400046 758547372 789837051 518598055 967707857 260633994 847343314 835432428 468767914 594194713 413702673 834755822 650949613 219061412 838289260 512921715 645743422 556083750 669642410 689737749 57123434 894697737 631142612 769691976 869241069 244014497 557038732 922198393 119416501 314469025 308656193 699904110 812824219 387012008 298444929 747220278 226246968 738534639 135128662 744698279 755047063 501130361 865718244 507024505 382203564 94957305 987388143 571709750 150363827 624713722 570263758 566922114 547157556 515393224 367846608 761780287 857854013 545983850 208510960 648327127 173508865 430140255 716618936 644050157 394309846 256741861 118651955 817333870 692433673 201872268 867819748 335918587 745040885 523102282 639841056 15372816 830789023 368542991 171183574 601642372 786162182 571103268 593669535 153570414 555939191 905806638 82038598 616959557 791195396 614377698 95894980 741301432 54107285 672334638 772962278 419598056 131351388 434644254 649920610 368847358 144646964 201431485 189833585 645855629 612224840 396089946 664461673 875461586 292640831 644376184 690371349 596120703 52348963 879898309 507435080 640816219 827246076 9756862 492278198 147463113 56486865 40090039 669469340 942419111 394015772 526655182 646171537 29320761 539292273 38347761 676631322 925618098 546920490 922502492 669611217 593168379 125951480 632157508 863238401 331039999 263501231 932971379 367460657 493805185 858820567 46060468 107345051 899466414 451504058 380823548 1002337891 422176554 617172064 348187556 873551343 12904797 912852018 428328833 814257587 31932089 88646144 327951879 814798029 451961174 135664337 131163085 617874536 102899802 20196564 238512319 143862449 640049362 538408928 943896098 769795891 150816877 794242527 628703599 620176687 84646244 685024402 669765763 568677024 271154401 592214339 301030292 27999952 844745448 948724795 314119956 442653822 402308688 24450738 91175073 922400178 45104542 958522844 189027975 596058198 372571949 258628443 996570394 78722529 820840013 886658058 484508218 914183575 252367936 86593025 304731071 84332413 902024896 54668213 23324089 754173222 391624391 622331924 226068449 915594878 316737018 218656752 902485480 964317222 81546784 33190533 73583927 304340395 107495678 62607302 814325339 108050386 516019866 977485196 37782338 709118789 419269220 104396015 775632958 590013777 932085999 614730755 582645753 616235525 439007746 527326086 630189773 403387921 414479228 519680144 937262091 864381587 678090567 173991669 636115857 150287568 102842446 870826205 796448589 150166877 675305245 146413355 189407311 879377510 117126513 99043705 50574417 749463025 321984418 261958363 852460425 828231855 368652299 687600459 18166664 337545493 927917378 407608380 704233300 684507436 28335185 920071262 333874213 797010899 820538564 921203582 868633186 71723545 391498145 430467166 535507121 905082942 370297659 389869889 779404734 116270424 572717496 625036040 552073073 163513310 302291739 240275811 4044531 461611834 686677850 157296274 390297360 609836053 437664604 323346105 286651591 57233776 401854124 718153349 689313303 963473009 77916647 706223928 812582732 75052531 769816594 527466843 907649571 735671191 955632402 1000373814 41611106 960645386 642159186 290329434 412051030 564535092 739585950 324708627 385012249 211263908 369779727 695367259 691232469 632736197 797494566 633890108 178257397 842456103 818370267 865510743 246930767 128198588 985412642 606310021 370537295 399337745 201619847 862458647 616894675 641776682 563299889 667483587 534350261 143936096 762741695 592555706 57566627 104391760 805433435 543368241 405832768 141392606 294351019 588563115 12105745 916067016 829722080 901358794 216455451 366935475 437067797 357399909 707941737 804471313 434514060 72823389 535738147 596091383 460390625 967653843 593019592 515297219 914743228 133895710 333676309 79761907 693215115 124328943 146810989 183791801 753040363 772950755 499950711 837401688 338104988 211603503 841228640 113049849 827722608 866505152 648753222 946491375 462566592 999297276 879760315 847698311 161277926 428259893 913036902 122418905 278427865 65014199 288659592 444179605 676876483 505004245 522587782 779543589 179640914 400786885 821108268 367822535 41047733 643567775 455162886 491944094 234216080 111011388 510851031 851418272 897250782 913936099 334618073 983444813 352203379 599225288 894322975 510101375 17632003 521192105 87529813 458111828 70455316 757830490 45744669 136463127 545993761 607028830 346767928 402214470 791698126 965638692 360969131 493880987 769125116 870944130 610881400 292443351 779164297 291040019 154478581 602462177 757119211 869821020 162535057 482685663 614990687 412246587 8669065 638381383 507740800 888155247 316865881 24356784 437019883 153160742 133326251 856026715 460486317 582448810 24685120 819383200 697053713 942924100 984103963 525722166 450570593 724932797 816280071 364282828 839814447 239012982 7484723 669959154 899129665 512767839 624102030 536253016 366005902 40457607 317727974 524462252 645216915 86908892 993647197 498015672 920252707 825735547 877561595 651922768 453319112 774455244 631305407 106176400 274955484 968277739 167157766 125491758 487881010 356543953 65105479 246190060 759209795 20595712 457345500 485910283 769447646 620680366 643311723 397296045 219207685 444880351 938124859 813643769 462855342 94777186 102401762 638208398 378599817 431070972 981362614 162500131 314393880 905022775 587098791 316781793 644455690 948345424 529290321 942892614 878987669 249839331 658544409 912612470 110763165 868289879 846064626 257637939 41865685 128284372 863739450 882082539 496257700 949414426 668985519 31394834 836662534 280088727 979586266 886090639 825628670 369413814 662208859 513436771 779179303 439218987 911144532 796673302 203910423 242716598 13380635 714451561 523202960 64654872 462493436 169191174 1448045 323696364 139044179 263238510 47253136 271113946 816988916 255001836 450655061 548766656 49288873 62827658 570234091 564863070 137466145 47870365 16367010 819464315 333823127 721042100 209907038 804522115 946825210 843177941 282326567 751379077 837854924 27004460 43720743 64186341 603562962 898865217 878660865 216295373 261535084 593228725 146766203 835719103 403967391 763416952 91453090 147297399 662710013 1001940986 870911190 899448928 50389098 69114832 643633618 359208738 682813262 407413752 112634618 884997083 688652250 820584959 181904079 583495762 5728073 498720056 796573119 621218258 817607596 594896066 983626702 201193164 690447708 122704019 924704873 307350757 124380509 649947847 922344059 68087638 901902596 258223225 365047730 778177840 170696837 971380292 144079039 554265980 448596670 641868776 709284535 252814615 887667879 356836147 87144395 239940858 741396380 603530489 853822642 545813197 479953213 547064757 950451421 71487194 351077327 340418910 585682415 711132007 402729823 91193858 268054141 904713590 926762775 48804722 661862912 391932679 271472577 984882258 311874567 576312126 544035528 879368741 365653213 399040159 243157916 812366513 217013828 911769356 432165876 17434056 532476691 557395481 593056254 718515312 124720216 737651065 977417740 112333289 369690054 949700173 569469832 888711877 982210346 52050714 12623365 852789143 564248980 375000974 104512158 853337090 803535412 737168081 682115171 261952043 342605426 29621231 894018521 844097871 718167739 279136241 663204562 960572428 24542309 611799951 970200539 253009289 949160745 169777971 409977116 386540306 915435146 382783279 347653911 860309149 632175036 151381492 70471772 801207003 344624109 783965952 336076457 870154385 815599236 849292697 692431211 182992342 682418068 66909344 488387319 326978164 611084160 921279944 172087368 698211380 10449010 860395064 610084685 870512193 262849936 332378663 351702417 34926613 977198015 207966565 117357168 855818717 714734282 437906684 539648876 206470555 565357865 568216131 754294661 44695852 233470145 613594693 679065825 471917185 400384516 800669698 755492167 153773103 946541613 138733533 550894650 9515728 552600175 227629896 34503986 18783142 251186894 411728506 942241285 31979945 996138682 514001467 679326971 349654759 379541787 265951606 749218055 42102 373320331 10565673 249106020 894432616 695064111 822922935 754660147 522609640 162805522 983540009 937535779 374281298 765823138 639306963 542616828 514727853 591242063 595720614 64445159 109923765 361725396 10572110 515598610 945983335 193724830 839324029 21886896 573620934 426695100 725169709 330177419 180347353 738520434 87966821 814240301 382947088 454861605 754525015 196340998 406493134 636107716 649816943 626952271 477605102 566207872 618934552 477028024 635857822 306000025 474999171 581702321 923218917 812087294 511464944 973437350 929411445 977837656 623160258 742143616 441420551 808099095 465667294 1618233 539672369 746962386 569077350 991050242 179216334 368948946 215771789 127578980 131942783 200747193 56674390 917345968 9069155 914379929 858671302 166949396 215407305 692449989 789954113 237175299 717179993 608806213 948102687 385326879 354062659 983305832 779421971 333105365 589079998 554241538 9981821 646646141 744939738 591807235 843894230 388834825 383803757 58207481 615863677 746120580 907662545 425278894 868239335 95263300 522076549 239913545 823265387 941704069 344099747 179703088 177862642 934235847 249731655 454871612 887405376 17938354 311360644 80538931 964332679 497321916 146561420 109548722 534879876 16681615 887359708 944415817 363055149 567923248 629841241 628737732 440806505 547611219 595000599 174840228 792321852 408299853 842178142 961636692 882156948 205697564 729725131 110544979 743167038 613952405 648466981 298677275 246570634 770943162 244160736 517393325 12225529 786869700 67455598 184693818 869859527 920439881 759523288 127092639 481383853 744213380 724937465 737652008 89980483 907479357 889588944 466273154 523247981 263464624 67930830 830408983 415607709 901434705 392020632 754521610 56925005 522664902 14346400 857237425 352818075 487347387 820627416 436161267 526684271 372596523 849939078 804769762 476139582 533016227 858863983 614085806 232011249 604493899 125513099 372373825 498461071 334498142 723079634 716388660 577650521 504017778 152285612 291354400 78971996 248155665 791376359 380302087 166250462 248525301 516165501 76131528 475202545 423829137 84757927 452012225 412770324 956613923 170431848 554938558 525904063 389976715 445168784 289592380 643099474 508130633 159071277 827206150 754145858 271832099 259676898 791130772 59859524 868008007 387131116 489993042 466280316 476882595 763523136 882681121 324183421 452768317 677747280 844818230 151679224 445737757 318232327 386192919 53211013 955300924 39572994 980129273 270154669 19886878 402298747 467574637 281743674 778693515 859105958 728454721 710952438 910828740 845383276 512378071 355997770 521597269 852039984 400792598 90831292 717658140 660920778 358576758 907606692 799573548 197402296 985452044 249781422 62399611 631552465 36591710 336510876 992021536 308985388 736173636 751232816 360581559 38907469 36507441 229957572 541249861 713443549 326818906 184428261 197707954 348151552 599233451 568446351 20874318 893649373 768431423 572505848 935180628 9417516 455705254 460996287 345543147 735687632 716478428 326753596 247005018 803516084 330402330 746396298 395899238 28677047 216313433 456839567 440777391 283837978 595447279 46835233 392136631 756856714 236164767 30899297 934353107 551924822 541528128 975146154 289821163 239696939 397788642 663550073 574433767 97353644 767212603 931610392 47879599 935704075 46946886 22430382 195839724 857878178 157996328 783351843 363059289 114485903 81493046 920611663 732934685 431767402 583924854 805900837 407972633 488798850 275482518 903269885 437949016 436509501 787201687 793974020 329616802 234486173 862846757 747881997 27296305 9757275 995887959 785649288 507383265 604437689 538043683 76284994 680893982 455144671 99394534 122337061 309160032 672203221 256330897 870131152 435881426 497716382 532880667 832223643 953226369 772067857 844146080 582994493 225785468 473221702 100599743 671971031 534069497 1031714 487906681 553576919 711777550 909603037 715741786 231391430 444919070 982313687 969194116 6361783 686473616 317591015 802184714 313782844 375207543 620763180 741879937 406018779 239663558 51006354 357649071 321852406 1002294802 885928797 517223994 861022404 559447545 290209869 467068227 898157898 265863477 181175986 781383610 685736228 410894308 401093387 839977699 775958010 927971373 727856547 283007972 806769773 176207622 73032253 11709731 230347377 292533177 98959159 71932706 114648468 149709513 252944931 310924521 973597051 876717997 26255417 719622441 99796335 477862609 284935406 421574428 728200635 665263939 536222532 90192969 865793235 481122560 934408096 400957935 616899271 982736237 985800226 730124777 884173174 495656129 209844725 886629832 360628274 711861638 625492915 313391531 381358227 973287522 708284677 622966511 456334938 465096390 303725640 399262177 278563834 930404769 277436891 343924237 828154735 277515206 576581696 54486801 454573592 583097486 274106537 54092245 790082429 510316521 682277341 837444447 200462375 800906177 781378079 104452051 273856244 887850493 896425188 979079200 808063316 6197172 37940186 376313033 485352163 740672709 321651438 551356273 814591662 52329787 632486664 90871981 515489187 965727114 717310093 769847011 369318648 375236131 863511253 407243222 495698780 211737872 24473073 809160393 227227628 860751426 497335996 1001852161 683077112 92460888 96695286 782413037 394518220 160604952 544138511 508426511 111516812 721663639 981954051 445971349 253898368 6388848 486590549 196013060 633156259 522771408 376387072 913145001 396074730 820065164 323867750 746090072 660695039 847966441 611231526 978528488 933540198 704774222 512545306 540120964 46502599 726998463 970881192 538620806 203276545 776008572 46210728 120756484 922850505 928276856 1001025282 368509859 944042472 571943125 919890183 720859154 74444636 891261166 105180716 245387891 113853620 711711918 652905104 969093314 54785725 74662452 963495038 885699412 544236418 978762815 64945565 340484740 581773806 513115579 984936598 952719459 546424409 608132446 810026213 636654221 930304810 626970546 65165337 113129981 295343571 618932852 389716282 433461760 945787490 814042053 787681904 627874701 451982264 139464860 836496134 423671731 659126130 374509542 556022780 595446517 773256237 276434681 705102988 318636375 407101008 686013023 615525728 232066536 804413410 337597875 176747740 348556827 708804544 934231489 144623227 249931118 210730474 8966977 44064974 66782885 366081788 595270588 256244621 910580682 961940876 529302743 119721211 387431426 826106717 241671158 820945171 420175527 716724960 738213363 527198756 49241821 320744466 42707792 133733597 906513946 344387843 919317164 652074765 687610849 79866842 596723528 432042159 576245213 360967029 825254181 294951946 701190447 116768366 529191585 820755288 799138284 211850574 400594471 956538917 252842148 431036689 491963821 205830341 579442309 476611021 937184525 369107201 652995248 240021006 86479585 846645792 99931431 551186027 889494107 268909690 44705323 51079539 82592 109865065 637874315 806609414 999248957 643414703 930533165 181280445 560973905 243809655 948210419 676046564 861619964 125555459 471324553 349913108 353133725 668056198 291507805 240070527 949227291 637097746 850804846 296066590 12575690 112578336 436214784 464960296 292837336 536892871 423977027 205044127 188277270 81457029 635880004 347660891 329055964 252308426 430833078 808232808 950719563 641010513 336874652 809873538 820601976 618579580 46195220 303701949 881710069 101830873 825327866 977780473 740630605 801427116 513752264 813718081 763507570 425154142 874572673 440912427 167497014 263223768 228110628 702931871 320187706 635946233 172050597 230700586 397343276 131740054 959437635 766376026 169004915 730037260 639450229 281971505 703204068 820052090 702873226 215144447 52876206 261499497 337942174 317617624 501835249 748997029 929737423 67700327 886089613 379819636 109945613 837721713 602939721 677263942 787862730 901479973 490599360 607632977 889944915 407329146 786282815 558026238 105961053 382362995 295561983 53298106 755796535 597319770 305424987 703403153 14998468 304101882 347055329 461265066 431988077 955788273 443805847 668117049 716543456 541855724 870631615 652775050 363502827 924224547 903492661 788775434 745142141 752865465 20304739 828676843 818694619 732022429 266240991 120993879 227671299 279304761 775805242 139460842 987191523 825790108 912305605 773016733 291997810 420083711 342672054 407263021 710013031 467804108 477940402 92839051 35611166 756933282 766753494 469299929 658335784 48951186 978766000 441695838 981304034 998247478 910151347 829730063 735294761 559194937 518162693 678048032 577269898 229338697 266236219 127929555 494410463 199935888 628835661 362609451 16246411 990173 292711428 328195499 43905410 967375728 896467682 173720978 845310252 302939647 832396443 369308601 918581578 643413351 588780411 572588044 664854474 403740844 287812242 992558251 173439936 327082766 180620336 267168056 207057667 451879146 782834120 137015866 772396528 682354193 816625594 662872141 406149398 683021997 121532976 991590201 844897514 826311973 987950606 87251414 297501674 261479009 972632477 660195781 861926817 306647883 720437580 369147591 581372517 481430354 973729099 486385939 221359615 823287136 37391984 206180282 304674558 656939281 139471902 905377526 643961609 589001316 588216447 781592408 447818769 599911631 652147974 971647772 586416068 644653978 348487004 990541804 833562317 126238316 469295955 971011760 164588348 467405283 302194503 507586198 945095950 500262030 922042253 828307872 759266083 188134764 288559349 402304619 240837210 689291844 404481285 237890774 737798409 283769197 838408207 953353507 480669710 672183846 417838168 522022627 178096092 760159311 2197517 633188370 296236756 632759831 876670354 427716122 541177033 51222352 71445898 546257545 564046562 9860537 95945681 40151559 105526501 421149745 171684650 220786164 419100372 786308266 754977437 445135936 910111645 100225984 216230852 516424611 541058933 379853155 305641232 341257279 571439806 687290231 477712077 771308515 966925033 554306531 165015220 983410992 62339939 95061088 312986597 900830441 746348409 915847929 275040755 402969722 972822674 745201518 57131890 952811801 153676447 132692682 837229745 98122652 718404216 450035771 670418302 958154842 696440283 750820549 431065602 559628212 619768153 950046867 333293893 608360548 802044658 207237634 648828798 831923235 32163239 761621334 120314305 311625968 174047970 748916164 497132405 25712781 511678241 958699493 336594923 418205444 694202251 868429144 906112274 695153454 755991072 541278869 418693512 881897562 271458834 593401055 287378360 927306779 183707762 271681853 134398282 169100280 243599769 22627870 448678152 183609319 37246428 545838733 431649674 301118784 276111874 800816847 786833032 156190452 967425924 511215053 797442368 58954714 204163808 898187138 648204971 82203813 414960189 823392379 176315922 919580399 650376932 998018418 88340499 622652283 5062534 978873999 784414422 428899875 473743096 792159775 150761127 241808490 719013181 251588601 981660147 232515849 654799882 674395297 885566360 942149178 231664065 836423764 455939008 807358023 111604861 281632734 906753851 19094135 874897239 389382548 185328905 203294257 933279950 472783161 332930627 598639412 511836346 983542877 232937566 112612126 137222645 286112545 110403119 436752174 202411475 1000198185 450574568 262459409 167468237 387377257 638108366 981259464 216265602 413569052 330591942 749857381 41842148 527317846 406143125 807435354 733135959 878755475 856749409 774770593 386490764 255613336 714210911 907562873 346996658 531326304 683430334 822442241 570598340 214629296 961576100 413197865 341166070 572689893 544405934 847785808 103464829 223175233 116105344 212245030 763899928 874437581 599405382 460399498 28142697 808523199 847304927 324330954 392238028 142024019 962215773 386731518 508799641 939072008 840126167 458339510 46354754 990877584 926514621 803909615 424810445 581796686 248036132 559696792 819403325 886583443 873284537 952358286 50968340 552457338 87935018 288789339 787316099 60354420 173723497 290463144 96945542 23810988 449048507 861381688 616579368 640127080 90359121 186408459 572159676 170638979 789305496 373730812 894423397 113493161 270461015 782816110 293678675 771436258 94290025 632463925 104364586 811832472 377958946 478211793 740369472 637830157 861150436 422592342 511594022 812841518 153830509 543977189 456451797 492822087 605628548 882349925 645106941 285852238 506452195 279209339 851793484 987536983 941286267 784159025 397876347 397548580 410159105 519001121 183962720 930738060 497286508 238759829 490173143 220655423 72282737 627944792 23826293 427495431 512082394 280633356 367241001 542905975 407750833 805143904 822805346 56694297 611153846 120471229 418912005 728215013 900126488 601647883 762469262 353477405 270177922 922499732 543515135 21883675 237722406 930954069 856658504 266310645 692737973 691237291 882012034 923977055 617531216 872555540 494841671 515461207 718150627 294833394 257890388 862541175 937626886 418019705 932026317 207695090 400604614 851686742 939606772 775425128 2600071 489793953 883259737 908946942 382454088 462271552 645137928 161937256 315854466 309904876 983849736 106355986 378281110 222298926 773022774 331991545 284333224 306036749 325469382 955772952 897893648 349672260 132712566 644461428 72988522 395197068 532085129 598864892 816671705 664907642 999567058 501139266 709272547 851771091 202829414 17989568 211158512 539370356 555368469 306935577 808150471 488681093 394206481 165002614 262043629 912737559 93405240 912937518 434441627 200334473 64247386 415259921 384534602 968106117 923949452 765490135 162297873 32832974 938576427 633346984 657900297 235774683 755102404 950580098 601302722 565695642 437590904 741078753 709635145 553240675 621876438 961170933 750919351 365716323 810461540 276954871 942088442 811392210 347968123 653657017 746418055 250228407 418114270 200212855 805579953 307977185 535526739 597342457 562031410 344980784 582129130 613408019 417808331 1001746698 824325539 792430256 664085662 39814422 344195185 757785104 377881548 25256437 465534160 869104383 990318622 933518920 543127175 916143551 640674571 165809254 467949223 16206399 269601755 844917591 264350130 540781817 719960492 726335994 748264613 875009749 904892611 229437347 604133792 696192246 531423483 173494463 129284032 814760131 618947120 923258765 896912985 415886857 731485557 34077671 545010888 804746815 252739476 161607082 681973079 490267355 111229736 977071980 705799555 470190951 316159419 870454338 326935714 839590791 751162503 117392435 750533250 346576254 674192496 322058172 825472257 62900297 290851683 749386288 258203792 347140626 659158564 791509335 334278261 641853008 848194012 191711155 547054918 519090322 586464966 493679257 121649061 876112163 76148408 146482875 679894048 362429885 964647503 450301609 301143772 494436218 29745354 107052029 482631463 454188792 918863750 516642331 656698289 408850278 485478091 661121745 39838725 268638097 1929386 921076875 4674133 179216454 11831758 897441495 995992182 453048248 351097426 846298894 623685449 603269234 204021649 317843002 909603728 297920309 339956024 304180886 672008655 627385433 439538609 648562115 350131106 414207655 428807820 690157045 187707850 971273113 922771412 716598593 159221350 195208900 1002219334 874426261 998585748 389168507 682024321 815812470 431509921 473278800 774860660 858747522 492893826 593049692 314177101 750323875 467775428 449206418 236610886 388587463 119724850 923822609 201406462 264693027 703779429 236724675 588957764 359724357 415765049 263272831 620039916 836304036 142602876 792520938 330879016 518706357 167861657 134668850 975941373 692746933 159745476 630537259 432170045 478001046 543335117 708471667 49386369 675919750 138945671 916370069 450629647 346240512 670454448 872282679 458465951 786823456 879997416 333020775 810894328 624118857 642374688 952892760 759179809 937999453 590105499 180107510 745087921 694545755 951903471 626743017 695966030 785430856 119433676 430372259 108312444 345896535 535238843 816780493 587064389 910623652 179249598 624325975 435934419 856817557 517193505 389252269 362311157 219780546 50642031 928102720 815022813 427131939 515083895 795453903 31576343 387797209 707089475 131837667 945251790 913047043 453061115 75766738 503330587 274894197 71626029 166176289 915494367 651593920 732555890 525168613 71918292 113652700 764801500 395894265 377712877 373741619 909929011 63032349 678736500 35077606 413566305 575197634 662738620 61618002 772553650 479586483 156549870 417543578 949122180 19930260 834355897 118289873 489408237 988369628 578358906 508720710 414805469 486348315 691815103 525608923 472115999 178042256 757096276 290297437 908607176 348765031 273613350 702719589 750300362 139431570 965661295 716234566 342355368 797534410 302323746 934161908 150757816 260195185 641204953 291262688 787096951 379174080 504814991 313055144 254128331 50492258 831538201 65286531 404707911 273836170 378571093 380637539 782898945 631466070 806721531 549004435 736190767 769381794 938013012 128410148 394472981 219360217 119070082 472115127 887336523 517171156 367845703 918168200 91916612 417847498 995924210 37039759 821846637 482693903 242396858 186285862 444237276 525691231 94084576 711115036 405754808 122719781 128000053 138595149 668812326 712700005 760864056 995488649 138976842 527691944 67923506 363086126 409154455 164355003 706504764 583113831 864633802 488489063 828278281 672535434 463982616 535407812 234847286 221220853 957751819 263383148 1000777347 663568995 164805908 804212397 597887267 865994994 983791974 346016472 6862331 858831430 641055036 294550636 189917515 464738528 955075288 354379490 244831787 733152903 516755165 742509614 186648181 780324302 487766171 672287726 18977594 557292201 745405829 229368085 831251575 948673640 228655742 445332639 783290624 436950006 234251713 135799462 204793697 233229436 831865181 223330947 160489314 409297496 652039528 355590490 972863406 213460380 184152029 311194381 164327702 216067932 953715723 82414601 611864091 218845199 763534208 54871028 825894350 535242830 220403284 594670436 583369568 900967761 707084995 850688054 643333723 803626382 184230631 317821448 961820312 833727406 757284461 820376716 255483462 604965006 457650447 39488002 326769972 219822930 580599929 334365376 669124470 557835675 416348398 266044555 805644960 459489840 925123595 618470325 879020756 551000438 915047806 199585326 744806581 903150192 233251644 199095493 380417869 29647539 490139381 322523007 956954773 960876359 693213892 911219247 277707129 290587021 971910025 330951302 964719198 86254758 367918102 621837004 896069043 2041236 957477340 851704722 831271903 57833722 694303842 835497560 844981175 834533826 856300198 178250155 481626413 541260504 613149158 323009354 557319783 303703511 585764347 88028014 999349026 755582091 542052592 727924877 574724293 187597623 562491318 386074621 171069411 787240456 350357373 428438203 239052136 45086565 23870434 921814678 566975276 887117239 471128469 651008271 484007114 321665566 657431077 542634952 327554637 527242621 398573450 470166122 907998026 220948108 395834493 784204086 546514704 905713946 519096242 324048715 371092165 946579637 631863648 224796001 904461624 56427714 562666281 602222983 543514417 741800868 954461422 168055490 939886260 115403799 509279267 276809019 32132138 752032881 155641458 847497255 787324167 619955877 234997530 516091874 377196586 504692427 924471335 264470735 729526595 263056924 729078563 153129399 13158396 71020971 257822135 789481217 684012456 324745661 862232344 362694055 841910653 537784939 100288577 640095461 25614279 609580436 50484152 642290105 697763315 211615619 157141405 880044017 284867456 484600484 721266384 994624066 905893573 432688262 69338492 414428253 244569477 620679925 178948054 123570275 479066522 911381621 652382923 226807633 997651920 709721316 421288973 486159159 774509330 802207327 40096263 410651772 838959494 823862614 53874439 725042906 172212227 467530952 151571006 376619689 130871906 451409848 409670755 913361467 180736024 98380183 267117748 91637384 82258346 776331261 255687816 36244197 936055306 960911742 299011399 66868053 978783871 25641970 867058140 580314581 102614032 267082711 464459771 154639192 260801826 673794975 884213062 791421202 869454150 45356887 528080170 825122831 397115056 427262709 491211326 580349046 727738940 760104293 684209534 794882832 867390706 4830635 221106487 345754833 282163681 257848810 972151220 778734654 575971924 323010467 811971423 494002447 888492789 796312946 280076283 948097049 432368876 811220536 775564976 944031248 29757544 151116330 129258418 900917980 405325720 627375123 354830053 670438872 224125548 327462091 282986874 453553793 135747270 650167929 161583438 67460556 617577497 466420392 887864114 594307293 600825663 818418191 941338341 387068825 662641555 332437653 625941905 218175554 473476620 605578523 691650140 69442548 842038295 485472231 375214584 520560019 781060112 665722817 460362603 467017816 633490273 279811008 246628047 494204349 333187032 104356129 955358546 999085947 852659144 473588468 835660348 766523753 62802356 447769013 529000672 129596326 675125654 287644524 974683789 747330946 178098676 57152684 756150844 137144051 73041402 727708072 380151750 967145237 437944848 410473892 29214411 217044606 662930264 326504703 221074390 490448225 779450191 481717283 653140489 692354837 727496127 173867422 339172780 119998514 611400492 710991422 471705342 366244844 408583688 117536592 772372794 792078476 18335145 539071839 996739937 269004529 344699972 506292698 721128827 709236550 6197527 575178367 502021331 768517819 814716883 686481326 805246152 2840629 559998959 564774869 867088901 100923835 446526132 399062070 127736964 356730402 694122252 869226655 33831802 529550268 713985791 325982523 121943971 47321025 865446651 629807714 571705782 252790420 601156964 365525607 1001081412 806729740 516483107 604948547 385469245 936920616 90121309 804136688 18551147 557287325 1388017 711332424 685914100 725648738 100899636 602772201 341264834 902085308 812402892 829852474 576718514 886101985 735634364 470632398 274050665 632222289 3295165 552503435 504026446 971256873 541985882 574470524 635090306 231547178 936655317 860229284 910328297 191775321 152991414 154110230 605822068 722054092 393387529 323845886 489535827 652447196 465843973 423027914 878472397 775256767 777185640 972198971 161920348 683119331 684965529 415450401 815963895 427206691 101634959 595298959 711248796 777421843 245429700 78661711 977321652 694866461 166245745 34837663 518440093 253436503 803692758 208983276 912992366 324291676 175771203 756749498 594131109 431018118 749342640 156601071 8917488 192397792 223383769 353330483 352293415 137346281 268446514 528636776 604278151 936628204 471251104 344336499 196812090 522926063 256298764 728973329 695379102 391472782 477470694 103954615 309481680 597963683 101778217 739642288 536013468 468508912 543105672 272952983 630732953 91031160 663399837 108985111 39205129 484622653 448243060 7216698 117308655 676816095 129973349 473928266 666377923 184399579 806886531 956451207 835375991 786694688 578300696 757982421 264349686 683505980 112123154 95629168 955114659 940399164 909750300 917099594 765177536 34281887 631987550 821894002 876405957 340019132 228225534 549001198 957301283 404958265 804663741 376660535 614733724 531723242 556186257 134980306 225706204 292951226 285047448 344342370 839822595 565570998 77351045 582389973 146223511 445627434 319526392 293886288 988935316 344768147 752845297 555117266 298116921 195539012 584040740 946501199 367856190 69305154 603271741 696022854 405073325 748310932 93365635 558949161 533937225 8589858 792694180 237277349 72978785 947904839 938467473 284186324 347363389 22453965 791193580 462142477 898617832 262825553 231720982 379057615 862795862 837397200 745711220 28941913 440978701 95428295 321177231 861929469 54230732 955087340 558907323 613080388 978030166 740581682 935543357 287757638 366321209 305836572 492525665 655293350 729946356 103478772 914956404 263703839 638437352 971664121 145100803 445775045 691528733 944153014 8282741 1931167 986959226 640307852 148364279 680590133 232401052 571151636 133210174 855630270 487067371 820696532 911043468 427841531 919648816 975471347 692442071 644143514 306536815 577240884 937984184 297794979 246498049 215004235 9039865 373149402 107525171 64122136 829930365 176595958 416498536 79091450 795302891 110637365 659165550 357140090 849744319 944551233 503961045 948322854 700035488 267582776 230803415 850918513 489675403 397532214 773639499 378242221 277284540 656894020 157099031 749835333 217096523 832613811 188134429 152893707 773586733 815706350 822364144 981141856 197360750 80616337 376014455 241458048 903060675 161236476 517299831 938509959 918495731 826040638 29000131 607847842 214418463 724884761 162023327 480141977 612290230 236871511 73041530 608634752 811913331 328826424 872685854 715335958 152047212 45487931 768867621 426929663 105516089 159602292 188923016 827988794 891206339 380582247 558800123 526449412 185028696 130826187 92026879 810407352 874209933 639252639 571144488 837494023 785439873 790735304 153905372 734493529 940836679 37619757 40135416 750701230 347464556 838892383 960614531 941439782 550386669 196374451 753650098 69664832 669710970 38145414 832701624 759354380 337880069 749685695 345297636 61739561 664510229 564930869 55584628 295388755 419643291 825335581 429993726 379377247 877898806 400187941 65679891 313678918 653401584 852657099 718042159 889327038 846709973 24779637 253543393 827866056 146555226 93760936 914560224 784259881 18429255 721332575 377459454 86024666 427822335 687363475 953672146 248392846 911550304 389242553 811401839 566143396 735884725 239941333 100420786 413214592 729183297 615813868 910481439 890128371 517835885 313312232 441522157 947614242 670107717 713839953 923749976 41814474 371086714 673554690 132942911 536015951 499690827 613021526 449051777 238610145 402520452 70439451 499442053 255976516 142606473 692295538 319488578 136797149 162504910 43507686 356989577 592013971 246278227 801945761 555036353 49456245 943916230 82982173 938181959 150240960 919861246 125177408 722869712 304146678 874718373 674481060 203066125 42027719 509116510 645315453 861155469 957093817 487659762 600509767 995543808 143958169 523338276 531930319 354626495 133987120 889186287 979263196 244456501 333160450 46065206 725002613 275172643 974486323 353013727 999288454 458543861 27869281 153811205 971417360 454523438 135367843 83042169 594454670 934091180 890984406 530563772 619752772 237672371 608134802 786690027 728982085 312341565 962007120 614015932 411451743 48872789 498586372 45785784 155858892 266206218 27634577 273779974 518202488 844593689 43139684 217117576 799934736 362405225 709008814 999177397 610296569 594299479 269909096 625035069 610703999 972022744 977655686 917730960 940912450 842451900 24256590 939830381 331283699 956903314 661256055 863752034 604093783 925513265 580860292 308621654 388239217 618100302 407916105 117597618 510807962 861359193 616637524 614046774 850292230 280296396 79185632 39797662 892464942 907411535 745916191 758175370 197786418 166312665 187208422 137785341 669160602 290102264 83518557 76092282 285801374 814480036 513167228 992540132 890424659 683443000 329805841 128403427 564666063 921758396 926206070 262093586 202171841 767812396 973258972 965265142 355397479 337641916 238645772 620302740 690197724 833769232 192332514 582501277 738387329 104857478 577625951 969020846 925775331 631412002 942521756 535088786 99196258 271735773 252958443 856259816 147807705 890883447 801943317 191967499 401786726 899502811 975851746 707041872 291940223 669324635 802882675 344788929 839100352 259457026 391246674 688745287 322253183 127290731 624813446 748928366 386869559 635393480 869079043 287276216 196276656 159095667 260159977 82547888 308840681 953806216 831902228 470826607 803033728 643682900 487468109 288063746 976272102 790042291 783941267 883049675 352501062 244155800 237768506 681168187 428693331 453376561 937233288 808660886 394116231 394444220 814971907 297467447 725740359 949733794 963866166 484301694 26401105 704186719 759242051 515114491 776221352 53012727 882624906 650137974 350581150 268767328 764538553 561693487 417078608 615320863 104353348 102441507 272694406 125134372 22269114 965151472 51094222 455336971 288533244 738854718 322642715 74880878 940111215 298769972 104400758 90196867 356453828 368347047 710791932 114036774 543912442 696273957 390595820 400121392 803100584 995736756 511914491 328402591 864423543 621574363 683105704 95564463 341878470 895917775 630377154 48597174 238741294 398753939 769910526 252236312 209530804 472558217 1002002597 568791992 30910554 373520094 61650540 615236938 374542663 69755221 948684200 195696761 16599484 528964594 363060402 593617144 881750448 598703753 267377946 519728302 342829352 961016123 527775735 412363511 313692442 125353608 314531009 793352748 254115166 209271864 288039205 531443699 357787532 51937675 17263385 491131923 824325207 160693183 138876247 86905600 694752279 323819719 444981335 678198005 210321491 894496027 252435278 531938674 565939540 79897475 70666662 192445348 77565696 418564927 581772232 816492857 718581343 266093369 908481098 441021062 829350168 270556016 157540480 738939073 854077768 528850852 661052889 544469827 303718401 999675924 596245755 619300618 991528362 858539575 919173695 338439221 871629025 193531641 113906108 272899573 392062950 6039643 928311487 122082666 328555134 793536106 500359991 373244823 426877537 87196565 390414066 943394128 171395374 174293880 573603204 239442345 57209267 351751626 11693969 179229354 857020949 27019352 581187372 736281818 399793496 419888835 691559480 868118523 614059745 49137578 771548967 795549291 945106700 816242219 155286792 363520389 178503216 98000773 166913358 142796422 683203941 128155597 568575991 363993513 207527246 451286653 424734549 111358653 403382179 237672421 688899160 214569565 595672770 747923373 846957262 635706516 614687803 852297718 665035039 848441716 803259859 840139539 668516177 689436482 650709928 634870645 26971377 28622717 624146515 669061650 434383752 175842081 934393966 654977812 854705799 552452827 457218687 366614978 662023397 874479817 538915238 798799503 840138031 543710881 560016920 261713170 93133938 287136309 539149808 544963353 569602422 585625086 93941999 346901541 312695158 489082199 650904037 406008335 691294340 963350588 229930812 792063472 436196675 388885175 767880637 193685094 695221141 823073323 492369639 937734030 372988636 172332678 961671387 14834902 24675967 634280596 231791364 969287175 299847421 387765080 934576176 364881193 821283486 901871622 506668472 199000938 398166966 909692852 818019788 847654495 777576600 196617130 802679300 419167166 952018493 963710435 820248581 242913163 544151569 816753578 609489149 35690799 329765420 787149953 573403847 711730573 593950165 844920322 746640236 510071910 721010152 459251992 646478012 815644871 508775741 646468167 105147891 44096365 810523967 326154917 773167017 679332139 844907600 513328237 145515622 444455957 305617971 814769963 575885931 684113923 698134265 132184802 765122618 6302247 701823006 662989159 599571406 619828611 914071638 898119728 466552102 445072143 457287149 731500431 746279700 151915763 819040270 792100857 173016673 519562613 366133157 429519055 520992363 874800340 152498421 349435430 594733925 858626401 976302738 162149301 474780708 302775077 561469849 892819021 86683062 50729020 744260641 733131309 758201056 755911187 656374314 635695857 971259598 280661686 391301677 250221541 524092188 493152577 147260560 734768712 788317605 753119989 949150629 532081665 389073307 815591808 983296931 241653518 959687271 393642790 567361696 50821057 271744349 558096772 25095151 601580854 490126565 181358551 24804571 783716663 329599744 515771595 51426192 615361062 787678922 298799549 953536080 872843240 416309146 23015818 865419790 555599811 132769491 411470727 700890366 986783426 90612051 842546179 248547357 365127506 629301744 931994623 321323950 974169633 564649394 507427540 487924992 484563530 376737202 728223822 225222545 718433763 385267018 79288975 828618174 944511252 622878957 462727226 450234402 400353318 1000434080 143876504 97771333 208368788 278453301 710105681 980531780 558068791 2304816 34586396 392873513 958189107 593875044 290295654 731424447 387423266 872092587 604954567 658363575 37419594 109633804 270869209 194250018 867920598 22658124 85759454 54144885 784730447 702376167 360702299 878586985 281090445 891448154 753621446 791471047 478552760 774571913 571863928 545531354 421468371 890175513 933863911 420862142 621738909 711242915 628985614 112524553 343832325 755829333 625851239 322153690 803245136 50693528 184309146 115525771 118170788 148174756 684157039 911110337 427227809 538928194 33616654 636736366 51094452 229049318 401329817 740090141 73938157 505258453 488388047 187548321 743354819 157905004 311106016 909818101 995032362 633898806 846993039 456765295 40013927 775152210 948214872 248440844 187398767 24281207 80508621 968753665 242942753 811255355 710309462 674204239 487014530 87516589 134470873 641793166 707361609 41164627 599457570 413112991 711003110 992500110 1000376364 443549858 589989566 936852976 206156399 412233011 845185924 631789341 425960982 519668209 51819193 745892405 707266088 571321452 556158962 76242643 959664218 994481144 88199644 862130654 145788586 780664366 451530470 277192296 92717512 91460092 762817939 246392145 771536767 861541955 929286922 859495467 423499981 537783621 41387225 729055011 384021058 551107102 645605026 143550093 565731941 897389443 672942786 582268724 680047122 203572932 435801520 439222835 778751539 596529974 971329495 784056951 733796913 292157008 691089332 496108828 243149239 68880149 642786711 504972500 764526108 297819958 218202400 458313898 985093867 817803292 901650498 24682078 653229225 771386290 603938634 926100988 371403350 130204468 896695699 444663465 529579175 209089056 360315348 699343746 321250041 935509913 816715949 85600398 757091838 243528969 115101145 628594868 871017167 629924749 51511345 833379211 215361680 986316480 417644944 848550522 720957104 422130848 357236486 143039009 630070082 725629553 335572227 383850468 467193709 116654603 573048198 204820620 366920571 429676139 368344735 1002145213 853653534 286483713 595146345 881124762 845349024 792105180 112339802 133954967 171481530 231290469 343657901 983296168 558583944 839229239 300222588 220288970 280841598 310788998 845895891 434353423 487698859 447660904 138930260 65440484 609952540 239513990 800345602 561072448 136575671 61957576 973289564 11351553 10748463 173531667 892662288 675694763 1000030619 86446946 835501563 452720333 588027714 773363672 551473638 155140786 515757113 138649292 720296320 846710954 214239766 104877480 578437667 582916512 141488381 307676592 885124244 281947355 776609542 42104146 829529091 866297966 121818753 761910718 670433647 306590020 94750396 752426801 925721781 73762522 97568444 76042000 805252703 184846890 416401405 434917393 538736117 852176974 23231133 649451368 349780118 780025752 72347183 297760749 696451079 741190495 277496725 249340346 645573284 700246987 873614742 574840451 23195228 995134126 750528895 105298101 192396972 310965823 727211554 943540918 799737536 256673126 226464461 176573160 708865755 159664615 341432233 341143912 734130040 327094830 87699107 886580200 358825360 669575886 82543280 468413481 893072983 818076893 510743877 463711007 304864173 127059552 548624755 638876458 638573044 255035587 870934110 778258985 441299452 952441290 611547944 998989406 971435413 595394080 916069902 592609220 976917460 773399352 642991996 681670061 926625518 130183325 488852429 155776005 347145223 913540014 813182612 323738429 244169430 679419648 589291261 234359903 699450223 650916462 364676113 811213066 848885598 995772241 455327501 79160521 589734851 850769716 955447768 894225166 817758581 84885694 526529872 864114086 442861033 249300109 285654845 295410825 117696134 332449211 460887244 684144943 434735685 848646422 850747725 471642558 973683963 786721968 501504754 155527861 585340536 438121894 646868960 701246921 168572420 703332623 990324985 824674923 725889047 390600016 486911039 471063612 243269987 54834745 617067139 770666742 172692841 972882103 622425930 474323287 959531193 495944533 212970456 751220279 852060785 307753159 788996448 285884654 199258997 543794418 318096635 824308041 531982687 421407286 501407309 854168460 844055898 107623767 124067466 595301165 760407347 113404954 436558352 588244780 881921204 128687245 188573131 547106109 328490668 736303346 439778703 965849022 891439737 819079705 594779634 649373913 663166460 996503907 425009858 634036527 153374239 645288780 842875386 673627856 436883646 856675719 176556423 4040933 769236379 14968358 760430757 410196659 949159139 461826305 320041772 356656545 369559077 87056203 695690442 554003021 858162274 915045369 830667131 291812662 762822730 317826434 226213145 653293531 897682267 635149435 754419895 394823860 679430452 273631646 833793725 972497099 391150668 856467792 994677548 930345067 206563274 422302053 276503262 682297182 433561770 86488158 870417138 636099788 826313660 677656396 977716334 983374470 249062340 950945671 789874909 113208992 48938248 331060396 5027475 89027601 740968980 162210533 28808327 157908304 290106308 919045451 488697757 126351880 280880062 543516598 742385862 824089185 364184421 305991980 3223847 745682614 930117230 362156060 223610301 540026683 25891219 47940034 388532452 79188527 926389385 58926292 415500755 11667577 987429287 725222318 73243158 749552139 484511599 953518197 987446388 805203285 61058845 133232082 241751516 741509533 53132803 374755111 688684607 917917845 65769737 779194614 470941657 542077948 221002683 638689030 394540897 801406688 773075575 55005711 751790501 137232312 510143028 689779753 286261030 490692812 474705814 850054491 382514234 912791284 528440548 239887069 974415906 672871185 617059606 834690364 184446449 761153703 261785227 767481311 595598358 937584140 200141665 447839589 325251085 421657034 17243343 461985806 578952503 730351552 984330899 92466504 187710154 858054397 142080231 619048801 842288298 317101604 548010098 911777537 147100150 713942069 107806654 851640905 634780678 69849382 952990640 148527456 937139508 908536332 308725103 410490358 789469352 805812303 475095938 161110862 267452954 280277044 550473731 701636770 493786147 507123968 622978344 42054683 511342890 715890266 147694168 94774694 110383618 107402153 997376163 570403733 700783192 853083811 758800198 923650611 634200584 989269667 387402042 714170905 178349838 776689486 401391861 274620021 464918414 857216608 925878683 647097325 596393481 237676966 154605498 639020615 923308879 118772789 334154555 577493063 83166178 103002345 480524302 639972983 330141252 87440010 696304451 925737687 169343301 729075774 664800605 178891743 775070950 194452988 872423122 139011700 45456261 11160164 135195776 638514332 713236964 517315402 424485583 114262919 99684061 535593536 979263101 452484412 212243341 826690427 187830529 987237882 590498397 105314451 733833689 499547750 361323168 482693072 523156735 145435321 535405626 139604105 119102805 264877144 920853183 794088969 628878055 561156624 645376160 770663273 446134015 713323768 77883072 952544865 779380190 542030229 821153310 460768994 887817145 233597741 51470 347988867 371087406 899107322 348648442 771542364 82235944 786564695 641827716 33700522 756512837 336930302 327339772 622455578 510750236 686707894 410559261 968239360 251491001 410987410 129422931 281830888 488748960 490537819 72195058 788604606 147924896 935169494 642932515 546528010 919511178 762122247 34467851 549943438 60783405 324610728 262240422 890505247 422909258 780270662 329793253 585125205 983872574 910385107 566756877 623003002 963178627 705018910 170021728 764926380 867777939 849837719 267865561 908677977 291381961 658443921 77466349 277356964 566597380 546401615 868711820 884891403 478188838 31258922 161752059 248657865 135879235 116815989 507701324 34003133 732667913 196514651 668237238 103632325 734261754 730354138 952873106 641149336 432245781 346445254 648641421 358124939 153013453 389258457 514038052 453267967 287708854 917667647 951648292 643286123 347243228 853799683 308254326 912662065 848246763 427983648 740291628 851494304 153741695 750160092 429735936 975741758 258856180 433635398 791754780 884229179 789077872 236404010 651269615 205135272 825588543 411631848 795409008 382759279 475201294 763709464 942142810 951984268 512537119 969360239 249950237 683696095 457994350 12020070 320549012 542918306 651455370 703348392 86195098 46887145 478588518 553322112 95577875 381440065 982127833 298364671 838215077 305183652 24509683 983349658 766726502 652633832 391336802 610242829 704562025 89787105 640213910 319898986 803004465 338064935 175933537 947111155 272840082 86724236 514842169 82069851 448403786 586409458 1864551 613554784 698926883 145928499 634272353 146069429 77034668 423971539 383877943 745015821 519938338 400973595 614195393 465072036 790319684 845780436 32030936 737398513 734488207 272896729 516563331 622793947 959312947 628633505 638785132 761470968 173317394 650481825 633878196 638271691 776747333 453903315 54623902 605018642 512380521 930425141 758244771 889738168 801319157 531856573 709336578 278451339 828549696 799637091 193990098 93037218 138849885 852711072 561691214 576854200 384655008 90616504 688227983 879062304 226617516 300969279 201738349 744644817 703705562 397953891 467628380 419429457 61596495 955047308 787600226 280613943 862364392 790648815 162242416 444844999 637029506 295999207 955455122 99613966 397873795 435726157 367373086 388855951 199764557 194979739 830376725 856009557 718642987 594755135 461150106 839356771 743123316 6590570 33907509 229861807 750255797 661448735 506616740 463638546 685321033 544696089 338930937 28474730 549912574 706007250 174358867 378698523 9572603 891255500 335397535 287489643 390842139 708218574 396773050 264171768 585322402 763935558 797270960 712405160 335592274 765319921 712669680 392646956 595657346 203086873 252697534 871528061 809188952 779335669 113596267 514417005 177931475 118260325 721181674 42792054 412884934 928572266 381328968 491023933 401603489 302200345 749397357 845855114 554571650 828208170 183138393 273099932 829409119 891170231 860562790 775691061 292331780 746565781 69345417 657090369 611445161 573018809 687449307 932370627 367099640 69153668 736245208 4297291 735494254 769221239 742925354 299900560 963267917 583469959 233451480 601770720 221612048 582435883 38803023 435286000 469704359 736940520 79158191 564437648 282499206 461520300 31770710 419353117 598736171 826701422 193076710 264501944 329336111 441841266 915161584 87294513 262095031 50774717 812514405 659234032 619936666 942346613 106324203 473496873 157032535 661727493 391186361 847961451 605680745 651772891 759262043 87178748 953585044 624701137 709322917 726878775 524860961 372675103 484326630 40702172 567968688 67694593 863540306 272269602 934691773 979783836 874266575 226493834 690769944 994302659 366153493 975827544 925964148 484563139 67522556 694664900 491612447 85510435 634996458 349599726 134804347 95652384 90171368 126541616 714306246 419526353 107058834 103204503 161172203 618063855 55425460 71005826 432214443 935339630 312664618 740242345 683093587 904647287 390878868 810075812 116374705 881527473 359092495 964024504 940858824 643796186 273108627 614976701 938321095 366878847 307988004 298550489 15532246 487599317 10732967 687645618 539360650 38668414 599150175 112315210 201593424 310717075 664858385 94586533 361221123 27714848 539988618 988329223 398844246 699586712 602069586 562728839 963448760 94906329 768469573 906104953 455232068 977392476 38784439 403179864 233055479 469944645 526325681 140458609 230319226 238390602 456446639 66336573 770177619 990152064 961365209 985955340 723799757 333234713 123440258 866897803 247038284 837711206 580742105 656810831 668433760 334808278 433123728 946072925 758851683 563341440 988730043 243071515 412004159 865728203 14102930 410313525 676674958 162393397 30890971 701724248 271529524 276081887 992919374 737885688 685786033 211966058 941255620 10000718 718392748 878278335 561371325 100858232 545083102 176816619 323497407 773169295 271771934 309116855 779937643 272483020 833207096 429427175 957408346 62436464 476623926 580404970 201365511 688369065 592780171 174390687 335081022 549135402 417346346 359791963 900882746 377846719 997395896 38327857 957639618 496360901 988951942 404091824 501863079 632272744 675944518 666535116 48915922 218369996 753556641 18539132 29983173 440526155 931200125 454422350 308204020 8035966 438509843 37590304 539443808 587749134 533482593 918218612 705831452 234465279 453889006 956866618 837969267 708591844 146566713 775721378 375872210 352607534 163018596 935471778 981943032 91744405 894514870 358239729 248042824 350212082 434810721 782639807 255822228 3102691 926222838 449855278 622523015 219199988 875240084 425635478 591417490 936187039 863001678 760430776 573949942 560075342 195056447 882744066 752574575 68574632 29545082 297537256 624475920 311674249 400414566 627317665 441651476 220065872 628054478 850115335 102627468 918551052 455764261 591998231 438651152 416138336 781025057 196065917 23143417 599952731 623110670 898188800 330449907 499228115 944906618 265759956 404382473 480041128 557264427 453317928 199347850 151811956 834944608 449005293 592492331 383804322 216488069 141259810 724361353 541684616 422297795 62935738 1002397123 194374261 772129001 508548727 880411587 732991055 997981236 415575696 631541863 487066675 138407997 364871596 533665353 650909351 784012059 957624868 822216254 639556468 290835722 79025696 60332633 84489503 777628451 57412809 214559086 700443973 718320941 851114822 551570195 886818386 496601406 359119222 829646864 219144907 121207443 906090038 961159356 432888562 474078117 502821388 161280972 411338437 448725049 1002137525 60088771 191165727 248848966 417534255 314937666 502933613 129873605 584157468 807659409 435357606 304734585 410635702 755753060 77736516 276654240 763289270 145313025 864658645 936398742 734041386 824159043 935568721 412177299 735738739 611980797 262716846 184467355 547188414 783143717 24022134 543130861 856779606 660893913 616357105 9079735 214776305 521523108 282378980 283159854 301420876 835624064 932465245 520716940 15452496 324038637 389678607 220791470 773195837 426741874 613088521 736316236 832814507 201932203 497974414 740992497 477910350 642596221 452730096 145185947 368887971 121189533 85592887 663284251 607585440 353440377 670678492 341771764 658554188 603495712 214414199 386416969 239704602 201442292 933390675 212417484 453960816 187873594 960568210 294136398 910558934 934873200 863301460 924362521 283478803 508426301 99997814 751644250 789653353 526253721 899236249 636863564 611590497 749978304 530581240 961893718 328144288 403176411 923350367 300014380 424465025 651930957 222268713 94527192 137046169 32606452 706841000 527066251 4225018 353154310 462454236 403057109 544557193 57867654 795074526 92796930 339994153 544255658 34963251 330915215 36328661 225299167 201564786 940661106 528158945 682366844 305223624 67377456 791779097 320101850 514030030 490718690 837162926 143439947 476537759 446210617 680138744 367812630 649463493 824276977 556784464 64792110 350045482 416199158 892333607 929656942 934062037 665364932 212559898 88119659 776900447 770811749 243445045 22589744 545398462 278154668 518063139 827154797 548964048 187651323 883243170 93105345 331262409 400172669 50889151 563075223 160464905 582610489 578086141 53524527 282963469 365724470 63791542 771970744 723767508 850520228 462069673 830460076 487515094 527028685 250241097 546332080 118892363 654849549 83169606 371007414 934986346 155389818 474602895 484013675 805683909 190199082 178970334 147784900 149862603 712716765 258534222 719564158 550941596 22798213 208662379 926140691 917147826 828408298 197647231 503063781 189759429 921538734 139696189 921064645 670251303 629501789 469182653 827326430 692329164 688013827 463009243 691066748 525423772 653034006 859279871 787662804 209940387 753130155 580318606 512468238 303941436 1918459 57007253 305894485 140996553 374190716 852478794 65357080 425395476 1555366 580457116 36042819 58641291 487719046 224757844 207751758 334054941 207176151 728609681 76139617 313500925 295947192 103046161 788027877 972859707 838101054 1001103553 738067711 999134253 774412233 885007582 201170032 827107660 870266117 233263345 835780003 216198891 795431557 690427396 900331306 976616086 319161488 898871119 160787121 151434159 739588005 36193711 804181900 353745982 365414450 645491035 26361635 47303499 796550103 912162618 845210957 798413956 97024028 23913880 616859140 265352011 760382846 491342031 416236326 372331575 372568641 474923309 528866930 293114288 107930566 456113992 287035638 15520577 632092985 531465382 627001931 509113475 460418910 693077340 340612507 469171005 105359131 448193150 654401147 660468903 415983899 111183144 452307456 671016051 36605055 215268623 194319640 994679468 710509077 338111492 372153888 260274462 803185011 312477798 113731358 372622214 732722086 857457805 620558315 800133968 884843853 859784913 583767445 873314551 861130882 273417882 430728612 383399922 71081260 462090930 895655134 4124291 511294896 30825855 19735836 775017342 600620731 458200059 779172238 624409186 673893691 791015582 828380349 666472401 362222511 723108647 274016265 250838395 215672912 636221409 609980035 638508275 472419449 100593483 592462607 21530533 434863078 642891164 540165584 756935255 244495136 111982998 31296642 403770755 995848263 406393748 783868747 500984809 636561112 916188147 754477853 979124037 293381494 786686634 390994779 401434866 607886851 521346455 233716048 870830524 992645284 813517150 352206254 705172102 80390965 1000003476 215701236 51973909 971910918 555137796 715315186 464225101 638405699 654121633 454231146 245623601 669929549 262641727 913648588 538401403 294504448 405139369 311210815 989630965 572208241 460421942 924829373 347109301 473541329 419949606 450282732 856103523 984594609 489750869 949020704 341065681 4255879 922845504 42326938 605373312 993798067 609884399 454810551 557942957 125613130 411829554 154878054 772945051 29008763 783600107 604679827 440170236 258192575 531597077 933864168 440379653 63849584 937948983 622842876 842713887 562497736 552462058 243084195 380079298 291585668 630043858 314690022 363029925 306790685 255179689 144232480 673373197 910167022 917816417 905764784 354614682 233378497 670741345 245303691 402335807 760102455 658121512 255222822 246978909 23639332 773031780 152376987 318517242 916961705 176905711 138159466 206964332 344326571 395369534 720677812 765873285 992266809 271510222 704035839 787895512 582998588 866916240 364442064 632776855 692020039 477926851 363206558 52117416 846096041 685051212 703709283 267493302 317882556 44688476 567290119 287540971 182661893 871077166 317727536 909333328 570075642 943072462 361823238 798719227 887146218 378768793 258890514 239748130 572664884 795186032 429596929 355896027 533632053 662166640 195275208 973377762 945225121 298559294 907615563 982580918 835159786 208148843 312946403 844054445 954817871 357130223 334310076 76934299 164066178 560138754 578213981 917802899 18782078 995231868 522593656 507118182 212037772 950167138 896532956 709467825 975095826 776087330 19510456 653266004 937257011 19905022 189418453 925093310 191002119 257678076 931719976 451068376 568663250 173844103 996894595 796139493 811945234 568533393 550534790 533203542 864600232 38993163 618813407 858851796 537376971 639310092 969605870 86578887 535021541 804717605 930084522 214952950 866761598 868817096 368089391 305662606 84172824 165514379 625038295 275851071 656663195 83013585 773065592 367096107 889303435 512790312 297430467 370005533 318774251 270352850 256719671 415510183 328333555 901085630 410629420 863749155 846007046 881197279 463465397 687115706 279081477 728573659 450067526 367553071 411080809 150384540 313871938 240723421 720325371 216136836 646017597 395658071 482762143 891596077 355586352 969655889 978019209 332540389 374433352 607954064 917492352 19712365 692863584 324058657 127046162 989753064 394261254 515479605 673098936 385094111 188054659 244401377 288387961 589754120 274521517 398368681 979525190 395458631 119049873 233325010 570760928 362391962 6654809 468715871 780614204 466015409 60656452 258045720 722889810 171047973 730728919 921521066 662500052 1000869822 207884452 923765364 631901956 869053613 108527722 661037729 8062928 198366065 17173295 188449127 909034371 469359408 382014775 788170872 954805236 680559630 400717617 761456106 527762057 744147544 944177076 837039595 490575404 317765245 455466393 140436801 587367623 724406416 138203259 422408878 578426082 4621726 260437760 368425574 19905450 16316789 598741123 661685846 995659633 660133720 485123499 257916372 883582178 394506915 980970267 414826625 980366008 67853613 474713858 83088304 858013510 427933363 701543138 264394672 192683584 192796638 433607975 299289993 647252129 605258574 395587102 400722940 986339543 700542820 497634089 313921231 94765553 862934696 842439526 679957123 734136810 271730967 375731668 59468922 86427323 821816980 406426307 889947800 759274101 722850795 412327152 918094453 823250822 962900987 217983004 241055659 568099331 526186223 509084772 858347761 550506994 520964343 932207949 643396489 13267017 649053805 885845019 80761225 686560772 666422167 106402886 898186149 460834206 779984095 498360796 30131139 342576028 933246299 394966529 863499118 530302579 85287835 626724885 605663065 62861087 589922031 460639610 401737627 233330333 392905236 254367524 777300661 868128638 270920073 702270466 678810473 238729900 570332722 303505768 417726266 970662384 680072554 376699612 782276760 221551801 241836472 833163980 873157177 443558136 246016303 184697102 29237885 257230710 473405052 588206669 988315260 89977011 276869291 996686177 420979163 146769697 727435118 583467853 190971587 102845938 730856285 30970468 818362582 311922610 781787825 107205333 728390715 71244175 79560428 725620535 559289967 743400495 431711803 193743160 566178794 279070142 146493367 521821364 675884142 985176324 62651958 590101871 163792280 722098959 485566996 803350012 666985639 935012843 439255508 65049129 831964841 680385127 69841493 290113337 278888392 894397611 429810832 40247195 121914677 41338365 517582822 98546172 733563779 538974003 296460299 301829043 317826898 392856066 33165876 586025687 188142380 312026416 734565147 436980516 572580215 90857773 252216248 326901483 478345241 487578805 544586725 201153695 438793647 661259397 869661210 607530591 33717796 975664226 505422079 482191587 117785824 708674562 541321852 408358188 606784503 434160446 960465730 986806346 598498257 878132150 211883412 333094955 34274833 674613236 565913798 680710968 485984263 807817936 789018360 170567938 82103539 116197752 8059881 143205211 321565046 109973303 309748166 717288947 30108230 249650336 746571097 802663385 326623399 360872902 699271167 464605819 189016349 383562299 773975252 469213821 869003352 233009442 768688855 954652792 246634556 275501995 368203494 710019216 647350852 518755467 398326392 5512503 450774258 599218329 895399415 534974289 75600837 262873532 805867682 114320258 415927589 106724175 647400914 596329044 921416195 45164643 390409549 194267108 752128655 1001373374 212200695 732868264 382562777 651356340 464401569 352165721 673412331 3104485 621299908 949491547 283833029 581642754 997112876 310613156 972675275 586224532 107589937 227995010 720216660 913029451 829787113 671554031 154041134 77879166 597443790 58306702 265411374 737115533 193644737 22262610 177713601 308755455 805117121 605250878 432614933 149720864 574287468 335745424 419639103 888153450 535731948 691657752 19631426 97297549 263738197 268203986 868191145 738654139 221341905 342144257 322886142 504982332 225348095 169770092 127295721 356929736 736951301 913942193 310963441 435607469 328554754 791840423 501071166 600746203 101380676 927240422 595627009 383470706 166736377 520086197 874248611 178559486 507124375 128601095 283309388 711550638 610388450 762387638 836689673 866911314 165001980 243760723 478711049 517315081 494851964 799358728 730308485 950925619 780922273 170188176 522587242 923899102 505263765 16391289 158998207 466249919 402958361 948342560 167090805 740460824 669203358 789361799 725530798 947053565 737108338 556257682 404010746 787819332 53727586 684365515 91537067 865410942 571399047 23624049 717824395 105747782 318029460 860325771 651438484 127599627 876892808 90327057 330826350 568416560 542200921 971508996 516291682 982469141 398814454 992638396 272993955 780967631 63467368 644473737 519260586 748018712 410317481 110585178 235301188 792080768 234420304 901655151 401469538 956451407 697178700 718710988 169838706 136804263 18572462 508688638 982639604 326911520 16583617 3198354 227111562 488166837 215109490 849609975 782842824 668365545 70154161 430696856 791926468 488804244 693911101 307408993 321411548 741697388 567589246 370198311 123701907 20507370 594475562 636358529 786691550 46677832 696681776 283227379 263344480 228591786 266261202 693395159 300515905 926415493 865506527 691817993 347686341 462219556 416219056 641668319 975143221 586310190 987822628 522779745 989947837 775658277 772489054 527541925 588868992 212074080 992167533 280477976 688332992 227419540 710904560 776386901 329852916 513343644 203706679 123788116 167683793 462910488 17482235 919740239 356939374 489565445 768692919 146087516 104109327 821121462 941863723 363086900 313313416 274341578 179413325 700513366 733153151 668436053 349429237 933605203 493112892 301884884 322049850 228843821 397258907 575568630 354743372 151657604 286736733 223396229 305185811 600170577 425988927 575965643 779161612 304234748 592171092 66485371 134047440 855816928 558150800 507738031 108763195 854181346 675070013 519460339 613765254 999405434 405393921 85249383 135224527 466644773 766764199 788057726 945477960 412361270 364137063 644327071 327452449 587447740 406393733 205192156 577435009 456250290 723703718 727505770 332501455 254914344 209097201 229698574 899047947 776850871 691290793 83664225 613529866 870019905 941846392 641908326 370004094 599151900 987476433 341338839 319341615 503607319 314505539 697595230 702103910 271954403 7768662 164965234 113909654 946416226 374864554 310491501 875756884 40186076 780496510 503664219 618115543 304504928 690058402 999913733 729223287 711815219 645478114 17511793 728376143 193084218 909786245 806220549 271488121 65719535 896403753 893070835 193780487 856278667 241355042 572651256 465710031 368263963 118070819 919299894 337115816 97496456 876872162 958494557 99151442 930557797 859306334 301275290 438337842 740441604 111980367 872667813 137864284 564003486 965256531 924531982 332655829 280556136 123123859 620141924 844207430 870547268 77765520 180737690 1000021677 278490709 757313552 1001670937 598525667 181932012 604045651 610388394 536229779 725122557 227872187 217062208 720388395 670972076 405498821 178822034 972767345 356145683 846654830 552877760 30364821 873842869 848682034 288608885 875658656 653228417 660655364 608172637 430348533 983161950 332142094 896185020 826769506 587218775 960216288 478518330 115265839 517254204 215856853 52391428 809722142 988042248 500976916 733660760 696470571 611521099 248232299 972237064 132282663 269837514 466369952 294440626 355660637 207839242 443608671 20723038 366490600 212799118 316421851 927274428 890392539 544447683 279619196 132100938 696308543 750688960 668744602 353363383 145421148 591357378 843974181 173784313 401355615 221009413 152955583 587816168 887834101 900645547 800644307 547715101 798312300 464013472 862613732 655276050 712977201 346191644 466036800 879884068 379239709 916946836 797585757 456524545 500822016 740502029 208696316 43704266 251332839 545483474 43346513 956945120 493543630 579102023 1036864 354083208 212969837 60847165 534658920 474144363 205115253 293639183 111782174 178838422 52052184 921297846 1965887 252606547 948102404 965443286 77546372 718710546 872655979 386126515 493110713 886254118 816541630 389572086 993710969 762541881 83537830 938023920 231095004 853010172 74055168 386883486 569018083 889904629 601735917 408769575 118251385 922239672 206579708 590131046 483574527 574536383 602866079 792261912 772814326 794460518 310902824 199464167 266819637 374453335 492922554 13663865 915196273 224984744 215353805 621709501 892557301 897517642 420938476 239216799 42253485 905038396 839554509 197775821 661953978 379481470 264001392 638343225 465465785 912091371 831783107 901656527 205353423 768655260 111410363 899926368 954299572 865229087 305474767 863232564 420483934 596523048 229334375 586515632 42241220 478272935 594224954 157299282 711598168 299670754 839674709 54026085 944840629 125043826 207035040 386217946 226435355 248297467 519622050 884220219 624480012 686075958 258779348 354293166 39352335 470339187 807176974 241728325 4257163 593229433 199778500 809459607 471524092 266313347 414497075 950654602 870987449 689012586 359903873 479814683 774066894 414077395 999585251 804217412 343141994 829920098 739839636 702048939 174355707 390635076 512834522 255010326 923740223 760166704 146390410 203070204 380006199 672384877 50088262 10003759 522867712 3072186 786390169 410581155 131571033 901405945 700848301 620201447 387293403 252851964 958385944 118455350 994816330 920527217 158113797 798503012 320644611 784405104 425704052 1000072616 691381261 777037505 528700030 829068871 953170625 134819953 279322541 20141351 966558368 2905006 753326195 36902151 957221443 161817916 537925043 682654253 176266572 195391038 866184698 908256526 147920971 965947349 491148559 154320637 918167686 440427477 33498700 94795498 253218798 133637281 935315677 818072585 91317376 350233344 232517029 214594801 37846006 751615306 492314900 671751123 537952984 703291405 394091941 603450162 888483401 411614490 474200821 600592299 94234882 811962718 259842152 660773975 981141911 972457741 492611913 245248585 814701576 660332653 921978147 596108957 364133043 622900874 890956250 249345205 615888549 734835011 723446147 127200729 155729761 377919955 432057901 890468184 814073945 96330812 484273468 311358081 159877584 30306235 959178732 722763168 231230375 873572170 209120773 966357148 342333017 57044951 767196796 996094094 713990643 680139688 1000149093 421871950 643465612 142856486 149755826 714787192 823598757 357238787 830715821 9464145 344442960 904714499 376957657 406909978 36141161 612985600 690324493 639266816 424973121 971996731 578096941 524579737 816815523 129972665 495324972 315943766 607112710 1001427010 705834771 932108084 786822569 950352074 934351496 491409010 312823930 774470752 318946545 793251646 729746597 944029142 181655722 992790520 468896722 580835752 283119737 135327648 688510249 817299525 939832967 342763957 12710365 591782376 900354443 541674875 494710287 385393546 362491463 21403899 420467501 841071218 330089914 72801470 550711133 741791818 449807369 697452115 32931367 904528460 476842730 494829313 630156750 493199743 951758362 915065132 573768929 329632427 943062191 292817550 642448442 280189828 340065517 236863000 885260254 568668821 646011753 820580528 108753270 967747047 924297363 39686156 250528120 717179870 907556542 751196522 700474778 10279349 4730660 239462730 963880887 613893651 550823562 466765740 975586724 505019129 433380913 931214050 834356589 901780083 180827630 341535795 496447076 755505447 922055423 497757589 184197640 32702897 884678231 613711144 948195917 707895519 787096071 564470458 114718679 949148948 230533903 97260046 580465660 834505041 235053703 560835194 47652044 60975618 47988557 962427322 762860328 815593700 879910701 315425911 480508487 120131170 787971367 418848307 104320990 41551000 103738118 554840485 459802631 602525406 326739393 815715529 414767197 913231252 8810317 991831893 83492097 55108193 944582787 519196950 11594250 957881201 243430707 543693098 715157851 484681119 986182782 297873033 833409357 375300693 594594212 877694508 231033075 156141506 197295817 587850249 296486477 161375670 873581640 307405749 170680598 812948258 211780150 164941384 997080395 956043124 830297066 767153547 257539703 641209874 128902468 603272911 848122537 340232143 343806030 11499042 707874378 167824988 405499983 789772279 354367993 935597985 467560010 459073969 582454104 690806788 106690533 15114377 752422083 883427865 143051696 902934409 423026704 402131406 687398457 311424157 49808348 313315258 773808181 502180092 977105983 377639417 510372438 279959348 896286004 859207808 354699797 981112260 954913942 939499172 175305166 806588369 943875780 103559504 270700398 383658451 811146303 699589137 593087563 716986185 689434600 585137735 30281617 102303241 311129018 789557520 112955556 948510850 916678722 237560077 713723586 93473680 221910579 362811211 534775886 36689646 70486851 325597467 694741974 889116437 651859771 659031921 85823361 815718749 10007180 681800 274024813 97836012 947964291 70626843 90532937 818884985 445739375 923056780 144017701 203813615 253172269 825018647 393914052 673956528 579482722 237039595 11634694 884054000 338410143 259232929 705580676 682082845 137038873 592279505 155519542 593834400 218712426 596315423 448879105 910283676 258333834 605366135 767415640 708428588 580596689 262577555 500564718 332459807 147554385 196453771 908683944 759392100 589727868 585238866 912474051 876501659 341513092 595515658 196867138 367300963 830713359 205879585 229687198 910432124 676975427 537175359 493395234 164062103 222889704 429780509 960239088 853770328 586016234 608799997 406446274 150274872 528831026 435778339 780684468 967706595 297887248 398712947 235203171 601752823 375248633 422110404 143662011 876391550 31743420 997436056 540959026 254013434 380383764 2466009 771052183 23171627 475654251 312526554 477490693 858033587 48976421 56314656 456549286 14971566 588639532 70859364 338448819 436304605 341216935 685586035 845927678 233797933 330374263 694432173 365339405 612723729 854341521 763767528 966002075 400803608 264797387 675334205 891618154 660418868 738818510 86700605 798328517 507464198 116283581 89058367 224935250 587902892 432796824 141076479 593962007 891827194 946232175 668098913 448745564 499320075 492936262 457598512 49450695 945076432 46506965 264818306 132461201 469394378 774325655 561434462 549567010 397258161 494103013 509936125 132838061 198072964 586489906 37792584 77926650 281828447 884778358 846990324 479996521 944420028 479095691 937360372 577443733 825701998 380553075 383673185 183931213 885055446 57296813 599958650 48749382 224629357 550460137 567022399 108610087 549424194 82973229 912025781 413562380 173587789 691713581 283484858 292416303 131510654 528972940 342847873 481828243 842038229 409099073 199590013 753048156 889666955 790196335 842488959 376301922 896360294 15813811 645120341 906773541 856895846 357204192 582924752 433706325 140003606 598440968 425069177 960629546 847180836 956465586 502348930 740191668 947051314 220820923 630158669 691470895 64603629 454418103 471098827 366660006 394462278 50826853 989720920 602394153 984634468 538382287 749586873 672634889 691285942 683509779 658952450 915437511 497747013 605113711 647520230 591617717 578271180 894362529 755393789 310356825 159529338 859773331 72515031 53737415 721747129 89709867 187342643 793903270 97106870 958963566 922475230 529757361 584479101 161408844 156945749 516442204 282307093 749244739 291288952 286477176 658294278 678651768 882050548 186468354 937520364 192808177 126302759 82844979 326834233 509386197 660071042 345224788 211050756 449797780 232128105 797995855 698909502 314833776 21465541 577777632 644360201 573618819 654024555 440103415 813807353 625731390 963205305 638578554 360458415 322356139 629995713 78124054 688289919 230319522 471262003 277929101 170742243 820844382 532230239 325919131 619818115 827544941 74708130 45128486 280726066 596765882 178938090 814269869 421755862 160887097 65336122 865502631 718410062 276476101 547619158 788638956 683681586 515183914 824142570 674611786 530257544 969501988 633710427 246515833 527601614 931357889 964387655 133247866 665651474 784533790 924054078 325712078 867637909 106896280 340658119 173781268 945703030 745722854 30828855 819928345 644860062 638197822 293102560 755685079 541126725 915531455 446866550 737664526 92568020 624816268 740103295 688772721 13716187 217676711 894468274 498692494 385614843 524773431 530519990 285306284 822435801 727371336 655302614 846832108 847168781 390104748 884215662 429606214 774832682 175319179 955180087 939242225 305713945 895968283 944591543 321496956 945343953 386129991 430718138 361187082 614159981 459711993 173417880 199722340 486628372 773884885 974471555 67805598 511166391 664835983 756000771 116491390 734971751 350943432 508094703 791398486 503721794 31339232 871935731 117988220 88261698 644472111 24050226 323061001 366757002 343969660 252562642 716705240 741235182 233957845 346113479 880184635 761926207 783038727 558449723 260900199 196194183 349830600 13448025 682787903 339292161 893288409 351910921 879053046 756427184 400870051 785506536 380801619 711420547 560450495 840747052 494700053 367774804 534829136 408308349 471683250 854244700 287928207 383399767 417106202 323388609 151951203 617819427 517918520 784788395 845827666 920812268 922209658 974185486 261717800 317066865 576205185 431141157 7605655 966155770 855992926 94503616 295867793 849453927 542046597 701904033 848872757 630976209 492654935 848535796 752598270 658524164 649839963 890724335 539290631 232167636 515915975 912231243 430656020 485027809 534140903 854364101 234305177 719238003 215916353 557811906 420219041 461880929 530486658 472991828 520391401 752438909 767705640 983422373 62330907 620205424 64406129 796540804 344779902 679733882 787303735 592575388 764513633 890011862 178770527 614297708 291000597 128070912 611719614 772845430 2170208 832934660 968410900 912200464 607919663 797883141 375693228 281007432 565391031 994549266 800590509 956800368 793363675 17632310 865510269 602606471 917183756 378227971 306392940 57608153 108837811 785263202 793147298 618027996 256061476 761093025 251531340 957217497 117427339 736640011 320297660 890860343 507098412 46216386 863652900 651308740 96610866 778515143 733186099 158619173 777692928 6816630 866052069 927334911 134296911 510415651 232966948 903262810 94848572 662825100 801462355 432729831 611460537 742841698 440930910 471525358 783623953 470492293 617661636 856691608 30654547 628341747 744457749 417969558 336333951 882446011 877379962 848312508 289581702 502808650 72811570 905497865 654332208 2012321 682211836 550877553 693114874 555508921 603062222 685579043 331269542 259243109 918608588 284723204 112195581 748502290 40488671 862526366 526504650 356395485 802159401 473792134 107231439 902336052 491602157 835686131 80413514 550423736 845356907 584023549 898646284 946018268 37007837 262747541 606762234 151396752 993177157 693117357 958100376 253512273 973501948 607691659 613765925 40775596 818117993 134461155 630905413 486344046 752933396 169684391 645288179 531811840 101146156 257534639 740427873 433502860 345072752 540261314 241883850 558480848 46751848 290864903 200698585 167316035 960986883 106211356 555324663 291911447 415905355 584647999 722371065 370314405 243759045 426261302 867604339 188219596 970975631 946581734 213332651 257687944 47626316 387647693 994715769 686737594 296846538 542475651 673028894 897877232 848724086 640949123 147956826 669722584 200630387 315511831 746345092 97714383 903911048 21211916 385762443 675751995 590930067 888667406 830204395 207171735 599318072 411797841 535751680 276101891 513110345 744949293 839544286 593286645 776448088 52549890 109102074 401924588 890028275 78514249 987426693 334310573 989256496 827817442 917849081 932230267 110487385 619920187 752079332 264298630 950571752 834322687 347256563 509124962 6083139 271501956 740623660 460304065 724663835 199022168 214005835 255262392 741838454 594043298 202817414 372127269 522878717 841795015 499235931 562043081 929588397 250091707 970888189 791851208 295274102 509748146 40396545 429696427 882849514 724171255 502449256 523869006 222135759 859898578 134171721 394615900 811145955 321271920 881816407 273492234 56434023 448301569 702622594 446575770 621528662 35958877 466155358 654717609 177052720 277243394 756763853 803739109 867372218 114390292 128422226 973023689 375337505 295827140 136840266 719827622 961703772 44266247 60771755 865493461 298960539 57817180 826575963 547136088 781349521 209086958 203561357 493445866 125924174 207481948 736169584 16912441 602841339 248622035 276825640 869663471 766753244 750701180 886980044 129155675 48552272 924112832 383856977 972095931 4152699 945597039 413713307 957268810 823752590 166393162 960669917 603964074 887250596 431388207 965392379 306420684 772508464 430224347 341582870 560079120 196792644 782782511 321343656 398380791 673552637 498616244 521892771 767158814 846950703 471735035 724390747 544288506 582825035 233347738 974809772 21220561 155525752 976082912 644396036 24663586 87625901 107321405 670693169 478754585 448528285 883096866 596915320 246949608 337621971 557507992 247982832 909112043 510221753 364847264 20656526 662969569 85614088 890581165 941128068 337305894 842366948 748559313 648337308 589329420 428768815 819594059 50975783 317563402 797452601 881593818 927806114 804245602 630357258 320969707 281493002 710792003 850985722 833763847 366331568 131507754 119986819 299325886 392346352 178352315 89608683 262362028 27615387 522643857 942404539 943506828 395594839 81017168 419753800 202995176 692574596 956572653 695883003 684263908 346756290 41687440 780544252 334092761 87211401 720618799 592318340 368511042 298366282 383577920 614818307 763539513 866086708 694738943 323283812 962867432 660300424 818043441 61275387 5231906 379518693 194477595 678700058 829080676 473467627 339851099 88236386 678911141 562025577 585060830 451432562 35154352 895231208 561430502 502178231 1431510 185814178 200696573 113766543 741024708 765839661 541715376 909874581 64949158 262260935 296247883 683984816 106378127 803201939 189763354 856393003 406167777 658349115 52536649 500747778 856391156 311649204 763462472 18532597 633570249 801656955 916759211 678536117 853190743 402158467 624974000 137942435 824278286 344009187 561719445 846080786 663173915 334988487 278510334 268182951 586740118 564291220 845165187 318446764 562708717 833063096 530257731 2966400 802680398 442280077 526377220 358415387 187842363 122820628 484270568 469851561 352430950 36058063 578331768 80172760 660669282 387676079 691122714 916211931 157476283 199619764 623624965 435601225 657080512 929567836 675864693 619885733 932448638 613208194 12542519 670110107 386655739 297358442 823704814 525262463 991448240 477665582 269027133 859422855 967012051 69949815 234456138 383263020 652640865 35883638 612583216 373057205 496925523 631226212 671839860 422082872 574060169 277593929 950928453 790824182 250399617 872316265 727553045 863718728 353034888 5274809 936807648 825585921 206514758 490822149 722533653 175630067 208403927 235688400 205176201 220970844 940293628 120447214 879330565 891895778 754662219 482710122 129481257 249068250 807066058 723215801 927566131 251669435 116511277 174484760 482846547 494211046 67318313 511494717 498156976 421211841 837869804 151515216 987729225 339724707 689028558 52929236 81385854 507398252 671424650 42899791 566103154 405975416 701376083 122113368 697751044 256719066 416509427 420032142 930754147 167216912 349706494 566984317 213081365 242092757 346171242 889466303 762294853 782142412 842867420 797612424 162599454 734322378 308350857 640877894 795093557 187308853 653652805 897426942 521580286 351495580 829025000 660527150 695308366 513701961 832548522 456571044 630844850 260877815 916471146 53981834 288073716 435904906 430783064 646668560 547406483 584692362 426167003 181490090 471784134 808526234 537574078 920654147 239420175 697834648 666104233 570145720 492010579 1000871887 552925719 742601324 566528201 97330534 85419881 194042262 66600947 196734046 737097765 573151521 446253768 779086205 890632641 413844463 374580587 829858919 474336804 132969137 662067128 830507097 520127486 413808024 966625856 384377687 973488219 294910135 343996894 704225020 882327095 34690921 326176233 250281586 418127708 57464180 219528381 358088200 407238173 832813387 154688652 513571401 801961460 566255667 98461780 361026617 180917627 638340683 450239253 27032217 847652853 187909980 721521298 365867168 579994576 553915428 228150627 836940807 375367965 754110680 76098735 762426278 619587673 95619486 601712836 892612277 789620169 303492537 160757200 871506498 349425045 309725891 682242689 946321138 58461052 370707929 103574947 990350043 348476622 297838127 836167026 644024046 240946095 350092821 2125022 683295697 932895066 249038169 955538728 79591956 996920268 875793483 529848189 402739654 723000685 967745215 342664036 272312454 462898268 6080094 810453211 940914031 458084192 26657105 325999553 49156617 151997543 154208114 84375462 580042991 581954077 926533269 925892889 10214177 618542043 879039588 640722150 92877724 883185895 453115340 581910808 733799621 151456506 615635379 848579071 991889678 978243230 544653157 363842724 109777436 56347426 165566532 710545812 724953015 809683217 195361554 336613738 841472415 830122489 378682263 944994698 1000563409 117855294 103548289 467117812 697519194 692785764 628033713 53838584 733707263 788553830 700335734 845839970 238247053 47002599 843815996 271744512 811127250 515335154 507410066 190046320 428728870 953245544 268452664 280460980 991184041 838163425 430432859 104019666 148231507 861244102 640559395 347554554 945591764 1002087524 343080485 107152157 916480798 153186139 978814521 711169856 487946976 374232472 123519948 343836592 915987712 773837388 112652708 9617633 273871226 77919219 422476721 26354254 391699595 493863540 340880595 85148075 785983493 252432161 18436897 71065551 839213870 688012931 741037438 955794127 717220857 371432297 479188514 570031091 768884655 889718171 513158106 848567322 900126447 622431276 974010279 742561174 958274891 58857176 964011335 714304065 584495646 551372183 69993117 728251730 747129901 528274927 680930337 854321113 646992841 39971140 364507551 164289170 855437878 231758982 891591309 552612525 553381430 266836811 737519085 331357005 71413188 265631493 77830750 376458062 92259446 617760553 309556363 216459372 571181844 935372758 306819800 428159087 94769685 203450033 399456390 81473387 732153224 439114234 438567994 28599423 951715541 131989048 90878836 321231780 899629502 561888103 146437055 687511799 248427049 417049976 764121034 729183895 384220216 16286659 818549954 763450032 90659559 779958479 651564203 613407000 1001254515 842510683 229757029 986454912 655088195 412721333 240678055 451100913 213350809 626407440 754426976 799914537 392354730 240919745 168031094 785298650 220842715 397705664 326200293 837863311 860358393 963387525 658543977 252895051 244237635 387038905 638266924 173319291 782777462 360363595 362221075 38921457 813650568 569581548 481507607 980904708 416124261 149288871 492552402 246121019 227230539 990359831 919183032 2817487 235420414 363538315 1002068301 130487766 41799048 126833083 745426936 775979302 187084018 312860861 792437620 776485041 787731443 253403607 794060907 673062396 185560565 922424575 120608774 758993179 776128961 233590874 59461035 763251505 870556110 2470600 302082662 541081539 471027000 328827789 708868299 350349262 945355016 885669132 416949687 53141358 416349840 339742776 780717237 405120464 675170714 378043767 695996039 307145774 302916152 584651202 751473777 425697022 55096103 914706196 637940478 671998197 68322314 254444005 903557714 380068043 955393560 779414560 580735198 158794770 390793493 817728389 927253350 136247827 704916517 371517943 28213203 159333167 428924197 445785614 188364270 575171264 322718995 925133980 701000820 748209250 950902997 731023469 338921262 126036697 290450959 946350769 267638531 229983890 456361900 819546615 156834987 6539139 292044800 733093533 994610280 31064160 274900432 977216590 495472921 981653277 868436522 759401636 725772874 897629140 1000769483 77786189 444951086 896018608 270953870 25139087 145560437 30500895 743511535 298203595 781747872 58968151 784458483 81971122 188120216 99830881 171041250 787112226 856283437 228868945 177549361 672809645 102507363 395708398 521915023 293467008 30669060 335025344 135418682 120364682 925600756 25442689 275680492 703085115 272178506 843811282 871447292 602261973 720884506 542048639 450402126 681762398 143071870 140916641 371998213 706337734 745513821 531642101 705608372 834737752 387669212 645524446 311534464 470566582 622921629 478928781 51680881 327742795 869379491 1001664827 537814396 271708719 890371852 676533113 989164040 638879578 745597184 781309707 432429986 788483527 752603928 908109942 538454613 651610219 507573962 449227517 691528154 456696314 835928235 466554086 482639529 447096196 634827163 833789636 834394414 242611994 817048027 390785133 744542379 688347119 969707347 827868772 321380039 196501424 208323452 526031617 256439659 971706929 566900799 734858838 552513093 627223181 154370408 599654937 301393324 634015006 723299494 884517549 672458186 873787500 415498617 922301833 589400137 614210366 27643098 74442904 363268484 908957195 396625692 564867391 975186354 204445188 549926484 761196249 619932008 714550172 995633761 858409704 94958098 458475737 247286904 296161462 914524253 354679133 190307209 619255656 61505238 353509964 610341191 81641339 554511563 859809971 745576784 117535303 876555171 408051033 919581806 392819531 507732795 188207978 10999074 290163944 633913759 125568195 591469241 879348055 241117897 699339800 850076050 1001531230 559343182 293677852 812010251 80539152 18623936 661074029 43208916 841665358 947078410 582520981 796880235 642624185 506206590 170795953 24175399 835651692 84140578 412901758 69990826 652820399 760959436 106899147 260158924 278265528 781267652 6143666 513224098 499212846 688097641 687725036 491516794 816265624 726525881 473033788 612454068 269580948 296916540 777293829 852636650 13454521 198159084 556515704 992279161 952842665 866663250 812677310 586505263 325152240 981630310 924832955 221971588 129928872 774173149 136798244 763038231 88126296 441135298 717298577 304363460 473598541 96296286 849169617 27751920 558055777 496713604 795435635 27568697 996680261 536152512 553858883 128136652 846100442 708427374 903647879 984830755 789587555 351821058 417814814 932605211 748838446 814914442 334532026 152035290 813118883 748392154 70708214 190915592 640988167 992599457 274631594 732905420 23353484 739789738 191513339 585773038 368798795 655733606 594629991 536433719 471361557 875566884 840723085 178071981 587062451 587443403 152658565 91978202 168939535 175008388 778077031 777437440 705149589 66155154 752688312 700791072 522814912 282188734 191016601 818776480 201321192 632224233 642094064 778167973 484528201 141039176 411325206 20324777 872010615 225965159 680825256 793767938 54123351 372090709 313062160 586370506 712522175 323390061 360173688 363133180 307426844 229818875 778977511 412744466 64634690 155971181 165082817 994201109 225415725 348033217 600905646 898791838 139385374 573752758 61118408 86006381 415262349 803794254 144647823 408672281 399458099 233003343 12883638 63237915 894531126 754213819 92215179 572437336 153871655 381580865 997195154 856140563 961202175 956822919 229407321 954637067 601740244 291432269 789184560 44238831 651731381 670231942 520658797 851190499 172242875 383157863 64899857 164743095 296456466 360531191 168279025 965456530 978547214 23563190 445715342 982961166 228083450 652442787 674655144 702119076 465965925 686759183 348542703 594801638 141208259 395787024 890558881 105182074 676334086 817794453 145141791 185536203 267972367 259577665 613141510 66461292 943147739 515490110 207536536 718267657 365775718 905173904 402375394 178062273 716437084 870983957 730013476 54009141 730449252 909130040 799134078 397426725 637355677 477291366 211255981 325464349 108792585 441369214 817947977 523490479 222028838 510496465 103608129 662184579 56823001 978475195 855294364 118282851 771686277 435996717 61302025 91980279 693297519 380469890 754010261 944813511 887773612 877999101 480673086 38923121 54443595 269583643 806730524 451783085 806206311 177057687 249749120 238654911 624017421 392539083 160465050 494107286 674834491 184795485 881152084 428698173 694827153 107091030 8938166 594116185 212498187 641841788 803792171 779273663 766106384 170758665 191017886 697158951 956469030 244825574 917267969 822598285 659258587 156624127 625173993 459143959 578930785 194839726 662066422 264011016 155282986 941133002 851750929 784251861 500558492 87576709 991740563 87921312 314120359 770647933 704249624 151914472 3368359 145081067 262866060 916208236 849119989 935706758 459791941 513681325 706553913 973352807 643358586 804637156 172293077 57174846 708067938 989067474 93404367 851463554 857781829 463171011 599490631 928804821 922009002 738431862 241761774 664864632 422341261 946029153 636101741 472757618 192192695 394098824 251851533 244534536 628198532 405683408 688419264 534432875 780054318 660774540 92722247 165850563 394228732 180081479 273439236 831426069 597414233 650048722 895958999 399501411 934231568 494856412 297230347 530491717 574466604 330490226 736096293 286872308 485481349 646441695 877451207 61499408 661391852 637445507 3769343 364594490 1314599 190486670 167017650 23460802 39685288 247156418 428234380 827001008 963687659 133069216 918564543 165636916 473760847 492298850 866146787 234111823 217214389 713097796 589667944 735817723 22228167 451285515 360560857 152585898 724988584 751764374 911898508 793001958 119205921 470918624 667926749 546704734 585337138 886880996 199295618 828827307 262734365 497867016 697697551 587513462 841423532 924202274 504964691 23631684 773724927 765851770 218788611 361280224 614931107 483013381 134890644 539376873 555604084 658998217 508754754 873308718 566123131 293354409 587000339 552502150 961186309 713281767 34265116 623695877 771999581 328666129 687820989 769476957 145506128 292057421 604360339 629992206 8765701 822421103 818978390 986349858 502446481 769479520 495889037 687549046 354698274 40836995 538555402 886882819 914304667 754970499 374568245 329730649 683703753 609833581 349451795 979283825 700105330 52484972 734768305 410680537 616392611 62742908 378904084 345791596 816303620 158881711 110830848 231313490 905117629 998387293 846660459 754656799 663299549 128670803 936039732 489893981 174274680 386159048 193991544 708504525 493372425 629574247 147645451 628694701 187672589 8057991 31779169 949083981 60866881 264672970 323633769 956962076 569979833 177350958 155866292 466069215 165730052 423909670 851306435 553048804 23572217 504750819 254237629 19522622 273976963 785293555 549824903 278788415 657852184 149088099 165768799 244760629 742932988 754859366 127237614 523025958 121136185 436579011 312996177 287190439 659025648 901443139 140163233 474303724 839372805 458109444 610518061 46406090 269157624 83182634 883589648 61974414 474194724 828925733 795908889 913643321 78329459 113528417 990923613 420472471 742582501 597311128 274007837 499340463 20470780 347784566 643841197 168884247 676566799 808421470 484815213 754046837 393670457 894284047 131957026 1001385491 564389013 315144274 97335429 605666193 573960720 12572835 413461806 343750929 698502187 517271393 503756529 183707320 69435147 522676046 55644047 150759062 713304026 217123046 240747764 352157852 747389238 110381366 557726189 173572570 339946207 140489885 156640239 170075088 34634221 265563495 549785855 238455434 689443116 249687611 377796146 182656056 909033399 149482856 451071110 348897497 602062116 821350557 353117090 990591587 922284996 703536704 809926407 576260021 384505734 807122765 253786496 480207418 652711664 672117422 770382773 736287022 113133438 621903913 438690394 449354593 868295096 103106224 808783191 609042029 722499295 10878422 10143142 644380325 605538042 197794758 219437800 384266422 987401393 61045644 163783403 231213091 964273474 645964739 639765703 40600273 231332 420350166 575482314 767835595 417628165 74691258 200456650 491283180 264903042 307008130 746908666 847829123 123269901 562305155 356611649 596550077 955512420 404297348 347102228 956463273 291971553 988475189 997781689 490056782 448373943 557873354 594841737 789176916 98810103 967270645 972885066 909294622 575819464 7774554 893927025 481885271 452731148 74703748 692947790 547608805 383050889 249392852 96935588 563030062 382536832 915585556 435558309 340750523 567955879 26804881 924263569 134161677 692805233 570094338 466712735 560734504 107518037 194565726 52277952 772759922 457987319 122725114 203164191 140391860 598112118 653493331 480651394 556931980 811460563 936877488 819813574 582919346 603005247 290197934 959687461 525407658 887199889 400969777 636766230 538569655 582971505 815514710 421064694 814526373 453182162 335388551 890287781 976148921 184839115 442538341 736696122 901161491 816386643 514757665 54419690 32074913 899066434 930272900 577133814 458381607 484805265 957022282 527187874 729738041 187600662 171149058 710468088 251682916 264604303 418771344 352761822 102360823 427141031 705075652 163027162 420326003 564779436 219714393 388990078 83278113 786592576 395748103 808315847 148842558 77063020 95575453 349305703 172835111 343909102 601298275 919748556 864008203 350123920 660134866 204674252 257116832 368093265 568335667 684740739 938234057 941676770 961980140 295451650 746469648 784688008 474611351 589773028 34450172 674970348 517523307 471912526 956470898 621402410 66667446 6016749 18814431 214614621 151893335 867086133 520747021 669495565 286095179 240982456 999828097 487297484 376607417 107085080 825123768 523455825 489138006 581319715 204811087 754800799 778492380 856393964 202217949 803391075 505518360 366722804 306737705 247049378 557392590 427245685 216297518 675060195 52916078 190515873 403793878 181957673 843764244 157050 853646331 495716797 662989759 138564019 320365716 292162600 698016820 88921947 969382364 474681189 848596280 50753856 837631866 940305386 631692038 471681421 372104340 200439629 663898974 893154127 910235567 99690629 642139923 476136286 241761135 896067636 188188739 205856441 759185030 396165194 845223256 23128074 368715673 894937908 194909396 537617965 526682388 819442623 559946733 971963762 289678633 628656664 806989251 708954278 723232676 538627625 504833980 636917142 548103944 476217757 576292846 611138557 376666338 9700608 348686385 723869146 785303444 977446968 408221389 950888622 892322529 886725687 617771199 699641735 191670036 959272761 965045005 297674000 38982377 423826535 416125294 314387036 420383779 381581316 121548534 274057359 431553944 10891157 978615749 877418824 366957321 44755384 654591319 493339947 952501610 36155340 767436983 867881913 327121472 914059203 474977694 177377420 440001090 457051294 983577467 170439626 142381556 328362763 493583698 241839604 463079706 56723403 687974531 677442775 186234697 510768080 761997007 700711937 971013450 520535040 395880495 321860854 350460895 768002156 829614153 212558553 935740389 296672774 905502171 475412309 910651008 860385999 597580360 670327862 457532027 793952570 954226519 305936163 485861345 56067690 875906476 357543493 83499339 221236092 779157381 383025413 358804632 497974799 768030856 958582160 661615371 229239417 649628788 207941848 910758246 951449651 999767428 987708209 400294909 26021574 820361515 340129577 325375173 525518043 751235887 50533432 213776039 452867668 729148185 905295707 502277049 17480869 692320823 281242430 765096683 763789511 870810244 588817697 976019701 94957625 744149162 564282109 26692437 491863747 177210851 529591192 102401576 380552724 444982573 551169597 610801982 553827645 496977209 995893009 950471119 539829771 458026655 524448595 617814938 910484756 983154619 898795953 257841072 167336554 466292994 102168851 870305483 837357647 267424002 256323508 475082121 876279209 544698528 480693356 849047416 692972823 826038567 442839643 79193269 701109189 256343431 672340386 65541818 567402357 310944605 539999131 549484948 315215320 204000031 550975505 968783313 949939446 317157600 196254116 382196576 424631870 519477777 88929177 751600864 446682416 131030946 948933927 178706969 909600137 234178876 835881963 132863616 173679416 143733099 256548987 225519886 33313005 256920719 821712280 962643204 232996930 693647468 579763474 93565246 504306715 42436929 919810914 506855170 214793583 438596095 791693608 946813968 984875152 912275301 667690972 74289119 32395805 53899014 443313891 566009464 634234075 243545121 432315025 277865391 900961517 886108917 679465207 40232997 22061566 831609039 883575664 740192928 621718831 186942201 957449977 462201735 882220092 652782659 169130714 912872710 294071946 999277536 626691980 676229357 394808537 926672773 302118660 163299615 395302368 442937463 360015247 503205618 147632950 620632819 294211594 389238766 785516597 438163093 725152998 436672819 845988255 732620202 452744305 841945367 322624067 557950053 565227500 700789151 955085340 613334752 462884287 439783710 331165122 575757902 441856662 380419722 955462587 92253172 732253181 858112436 220555875 888012591 740677338 242105008 904828604 782165380 319647106 857032086 24278947 328928884 29241991 763272697 193668405 169539562 111163429 893436118 600707382 180534503 765599745 757775297 215384012 870891099 698880274 897438266 532157769 928071493 102106738 126938381 609467316 557586768 113542744 268992975 944201124 989643292 126412661 121822983 112185088 650032764 277628906 907290382 396870262 331090854 4471617 651113148 894847370 757989345 486969555 477251438 54783636 337345751 411154211 320574463 88193792 208407431 786994640 4276496 146061174 754747904 684227941 579260577 557264410 782189836 491056919 207115355 236936820 245437838 158515359 827188940 768669846 210407570 287452967 192845856 165360372 599682931 964215935 650396383 903523714 814075097 592324814 834574979 332083085 913714878 362738623 343619620 957764288 41807562 172289118 4232551 123776056 414127456 46814096 861884599 540017975 132496557 629418840 996102694 245760847 773936992 100060476 544664377 155760697 252602441 897055966 652999032 171490218 623320905 483069592 889833231 435980858 918559903 319103848 907940137 627841096 223745793 928911814 697374073 584344846 230687883 859244803 671175554 689962917 621622511 107019597 666833552 156326482 607572946 846532101 957572148 208371355 877851801 96050030 384655082 528248086 448617596 917067200 3048694 119325512 754779644 348736070 249313086 249109357 380083212 561091173 556795982 753138352 406267705 117857479 221768163 176045712 910172536 579767878 307591644 90942223 902815622 732938203 271252088 521002775 600613241 373327415 523995063 218410540 370565720 33579697 96387286 685860598 68345980 774949559 99251308 269779258 291623715 267255921 815808532 527334024 55326549 827760189 861685315 568418402 948685750 693887991 337916814 277910091 153729227 768355876 77710319 739495146 108743240 278908949 988426624 4513528 916166424 324506994 386652896 990755315 605357242 8658434 682299185 183010372 732738163 561809999 157782359 154522908 139389647 790721558 953450872 487939624 577998487 489472780 63411565 652115443 309536383 28726423 976745843 746627393 84241751 205189082 51978737 894415260 162611584 447911173 289830327 5152138 153505471 123644492 583843583 595691384 364124225 547911042 173194897 254439860 861802134 511882797 442126151 272129085 850829615 562720 940268966 249045610 474577641 604088103 160362339 582491798 895989159 725746294 966804395 273874353 776015078 650016225 278341873 477177666 246352737 152867549 92156102 691403860 157209435 398556080 473367601 126546281 565833420 937241423 225838266 196527148 557308386 673683482 698060506 809468131 607365276 381547442 979489214 946407139 350105601 434180717 589578174 704592436 574360548 394419037 165951062 427100508 544931183 780194092 801520786 746848160 28917458 628271534 476403927 345409618 900454439 143427156 668307206 767945356 598659123 825308894 542705925 929472931 642810747 816678835 500572104 904324951 198322699 557612113 104251081 194249928 334678401 785376082 994045194 292680694 976123477 72954200 741736244 739571796 745476206 545358130 727962579 868952714 781301654 293345546 665099387 300715605 156459307 544143265 274449854 117068058 282130741 215043750 409727402 420029041 471072570 841193451 357834531 369661202 532296568 982119899 189330567 221162097 726555377 406795575 427067537 245496322 570729482 239067480 885308617 514871377 868600116 788266885 154590952 502693775 52097806 914465683 782231579 977846675 24489410 147134783 496973977 46323159 248194373 750109698 513627889 207575652 320496219 663311092 524241582 132484305 732433437 258792190 741620053 74297247 325135931 453704163 546347953 381127215 325675133 946623393 773562597 550875999 335133211 958723575 496106068 701931939 857245291 519476134 487997556 272227885 200119578 219051139 587806462 829596731 829894076 555987278 595449373 46106141 374157414 656268424 648230702 809419032 15371723 193703904 189038635 147622022 414749527 469479147 190691391 895347938 5895452 433352618 384714815 688598101 747031334 24538438 45577704 237187670 839739485 890409266 476931655 264737412 648896469 486272600 524028304 129265952 841434202 124865675 754167908 525800437 659560990 696576360 931755802 831452849 171985765 283898776 498046993 887500094 224165110 752945738 549043151 703439220 284575485 782849833 337730458 558972958 774618936 741584478 313889718 903219024 993971843 162688986 966434220 613744736 744164633 344061101 390109737 741682455 506825485 969805930 750796251 77794062 35421812 892668663 754391290 758261040 301584655 225865499 64415783 597166940 719150739 203727170 284971080 340499804 582118009 800574252 846307187 95234472 89462742 966547016 79825651 412435316 436274402 908411109 331353676 666283655 452904871 120048765 873712722 899956079 665727518 185031187 573283372 734813669 75196525 562424372 319208561 956454396 876165784 522288257 160894211 513590466 978074664 201227793 692696300 647119849 690868751 408451776 699008270 213371660 497500066 60497518 520114051 485278692 59054523 851571 185813519 472246293 349404719 389223188 782500698 547476395 106337081 845782239 794979374 403906102 881030941 180715811 696636960 911154345 306759339 117087781 337186612 143220484 967117389 672669318 157672038 878968853 921125848 445862940 156410389 36953328 828775783 950232227 707268149 350286093 585879805 418410003 597250852 879494332 934464475 561415215 396163329 649825042 771366892 461304678 205563595 340866119 414898774 493541978 122259194 751707149 81686083 24055316 29299055 950380641 951473590 554947063 429304507 969070625 329026770 723598346 431134927 35677581 189656154 382100783 725845860 486411006 892402091 244270389 245814230 45465512 513624646 138342353 829676955 677933914 610545047 69734177 226327992 776802390 171195880 41270250 823169596 276857150 154987454 352637501 619861097 253626554 679193423 97917839 995791908 312043185 662081262 13772240 988712390 386747133 854123970 900039144 203977802 684668639 583758158 694802887 472012201 660132885 942325734 617821837 913190027 219552785 546634828 826777042 972834066 945437762 719115726 473902388 198691596 288736564 934188375 154721312 764133980 589763684 875738053 67438625 225955290 975040819 797763558 320108490 562624656 946496412 649786955 734307863 160162970 895982044 173116036 950390184 7236931 605314 180509221 665898127 743132974 46946576 884625185 528391714 910453469 461332332 592323558 834842815 417057192 692775973 869820830 152505062 825573496 660939369 325382107 635868927 219274308 956466573 608241479 564875978 674672645 634310576 483774707 724827113 398124462 842517574 184212010 104822805 141580556 705275195 333249079 288303276 583054599 731521810 668306802 205370887 876451369 412194129 513281024 279816912 412896462 152061552 650352309 398392309 576948804 502596430 929583194 762096429 231105638 745961051 524619216 731589860 714947052 572683707 78039102 357608826 811181829 107450714 661804656 398342056 562919171 400629247 591073206 625385472 34938737 329634973 299464435 263653221 580146564 531129530 697777622 962074578 324927408 602483281 407342124 357926230 62758814 193325813 330545589 972855493 917406397 670671997 995791511 123370040 149742868 736300492 298061175 350127712 715589246 549274208 228699614 4793985 983993805 535252559 705958414 691213993 486561297 205312978 660065760 257080728 693802377 914945989 796386312 248888871 252341849 451394366 420577511 871052131 919253608 930141100 537675841 899204111 558713448 206380240 904550226 433214633 105080151 54160445 603363990 526905420 367665349 646585186 913672762 810815545 671484752 48833719 881829177 585728267 149916694 733414024 820992613 238369380 25312049 641074468 577193059 655638368 676211382 170524051 153289612 587379146 459712123 248903274 254151318 647485081 456078304 672941502 525629012 756435506 292818949 569155151 576075443 733353727 311669863 381114632 305693662 758980485 857229505 772195739 444037039 780992689 1000865053 749261740 652699626 365301945 799453658 784116903 435462073 512385049 383701105 883598400 366797232 161906891 712150592 103767409 770255735 966861998 597121204 297549071 532060780 973673544 325872195 132525132 621066995 202042157 288867982 649617992 180347460 104008961 295802018 372915526 276366672 794900824 891825125 357804008 833501701 224904144 977251734 596375568 938141387 642496094 769677161 604073575 753362201 25861464 360542251 307055648 279689768 951986935 431950401 836123913 678053255 975170292 208867104 937464462 250226414 77265987 120915713 843186482 620671048 396973798 292569764 916839358 598617398 293990294 502165274 371721283 25982527 754590081 198907923 203695855 2442395 777027200 260279702 537024997 850267461 977109948 542314691 222588179 763049766 477182483 140183437 476015881 368874289 19313984 28016332 571350362 121410241 91124975 798063286 237962310 689516680 530889949 57922755 676081863 20515681 50929753 418297224 711016680 432905663 525510368 60025514 551999901 353820578 184616287 100497371 102168152 193266464 972359674 121082857 692630341 594389268 284440714 587350171 237658835 834191227 929878215 511875027 562145345 604062644 113541223 528069026 764191427 109532683 928452212 401477487 164819470 398009798 450393883 553742397 581907463 700005881 589821781 901034002 732665806 757976897 392792690 447804052 916468502 966126806 940567574 262891974 327655421 571072670 73106487 446363970 242945597 749497574 416298846 612007150 809708570 500787845 395156761 489907666 251062086 340645558 592982024 646528455 269042460 713020605 576313802 394564076 305933678 463310760 758543561 46861372 945830826 44998624 620234084 980491099 79882034 928745282 468711741 624735319 988076218 833507259 946131790 41805848 227409940 956321326 230754276 234237869 273043672 940581425 614219229 433714876 508380585 862564592 44579918 751908757 467631845 853870593 962264551 58520618 542916055 774097422 51487572 470135844 527671677 40890727 755967356 741062802 30773212 1000001199 667279380 572157894 168763499 406929136 583688698 987597413 655709222 47149271 428792042 869879299 726964937 35863062 658094215 297945547 305409482 130604251 693369042 335365107 166123553 701096918 401190451 838293433 882757169 678470130 761512690 163562258 779681502 916887302 479387074 546837698 383451855 210682423 10576343 419700753 413912557 732889874 563557352 565870623 994898523 157712228 974862026 685059931 484107270 933823395 379901799 969363217 161090824 337491009 625758628 558028569 912055348 476974740 288309363 563133041 272319410 151842420 229839381 795470389 864710150 638647280 658685298 826877340 334652176 828492002 890560596 603843887 992662410 227784034 134952698 499498293 755470897 491700751 544867360 373183562 403716570 733591847 43138600 126714199 500675262 593023425 610848368 396322724 350189433 262821982 251261369 400921711 510158648 28596764 897405248 189885562 349395782 444706474 308246024 322506158 124546120 243091547 358438358 607243206 249157400 15526302 86480397 863840730 966917319 272187035 407809481 540765213 366647712 18671214 358819200 285216228 857214930 666410082 7526389 950841508 901660937 999008691 470167252 838902906 961454249 526551729 95725967 525992731 263373224 883085600 355757361 968017247 632564430 767980028 201090359 631187151 194323963 756426239 858673148 375228627 861106071 983624881 677924929 485245840 214027332 992709395 776015398 788623928 653383331 168264629 721011977 314130466 626385512 152860955 740879854 850604402 843579870 975595086 878785902 80937606 866077267 138902705 701057293 166191285 213520028 487584106 356272117 955803886 517378991 833909818 639500473 670299695 632639111 299110646 26034864 506623064 491300317 128367442 97865816 107543251 230851000 39476262 60347832 298351270 41608776 779591116 921901695 523193874 813935118 195080253 372319282 780284599 642604495 627074887 43925232 966952248 421107001 371544766 317525666 58095779 878862614 825065107 989115845 196535924 424064427 843674061 393701921 428632840 127222413 458248398 470314838 693067069 666319139 447104082 599261059 42501802 841625944 655782098 754869818 844159390 789329489 744873009 52017196 925509513 783716353 755079342 502390675 403112237 332463822 421761245 204103880 707819890 876229413 223313354 74568162 137341543 527394636 926302845 957704115 801144547 513164349 596431635 603822464 963836971 949160686 247446755 338246422 983305175 863922362 792409399 989195366 528946471 625022120 996213822 244888759 175788540 371265320 326560107 824744370 630387799 978778095 735002966 696363218 430188675 101397048 127863112 423673425 141463298 209716189 4221071 863614880 75772903 349894273 101848398 676556672 843438924 602031751 619661465 827882913 176277789 918511829 381460385 346280229 102864159 869763023 458843089 577279319 341747526 227625353 547432550 515902178 944304188 231650514 734442638 591283019 297765436 486832838 964093033 724327380 236356760 671713662 409736748 692466961 150598412 423142868 695595768 611182964 498408740 222842698 916232025 701976079 88124730 855960341 27041392 229692786 613802740 1434355 290590902 931507255 893923237 126418707 472193138 856343237 848630787 518739614 638690266 942118281 236222863 59454273 580343383 792815661 92674957 293455433 528329762 771683483 315949987 953747717 849871960 168325045 222229229 849025728 634649842 396554288 933875547 435327075 556357617 174474972 379120575 859331447 399992351 972522118 908867179 303351649 979319107 748981983 764902552 763646330 728396190 266702175 593697486 85859420 692575474 10352547 714853506 206566147 405137717 652496182 994033407 953660930 18773265 817417758 889747259 157731323 6258135 152478924 19844703 824790786 565060097 681000467 772702786 536719569 831931710 20320717 657343150 625228458 234893795 930458899 13600581 139129826 672546675 795970787 94637543 51032150 498701329 141460355 695132137 870984960 417899438 467408257 679614926 45474867 404749306 274543420 692334840 567508474 75283514 334929920 791114727 229605883 2623336 254087667 634418311 718609894 847605112 94160889 410803489 305684332 103637732 830391166 699931658 389273832 414871430 547353683 73633808 684062080 824112613 622045704 453500097 385990909 74538324 535387152 550517436 803212484 320069617 179184966 711912173 951209208 639687820 480813459 263589433 915491075 303939670 752937046 83662385 745246703 685903831 294035345 847526606 959162036 851642151 374840561 293711928 767187839 577899353 867918253 77831484 662904567 742426409 262187606 333436421 879775099 484051358 716014757 131299834 186318708 408628419 755680119 143106244 242314030 150165563 458639884 5409347 997817973 145941692 225434656 998204832 622570756 53195203 437851898 532187590 564447871 616772222 778049715 586842820 940127638 874181928 569711123 661211392 878681746 826995772 673494498 447098655 290040308 869741250 500069900 14973274 975803502 157689072 445600203 179446301 569969981 872589032 781383971 484615327 393511897 691542674 442624066 298064926 164078848 18735400 900933730 191168275 140828612 218511581 747633336 740037939 971561134 129261364 723879567 913558473 574307106 535333326 470884983 949609012 203656386 43598350 372352644 245572053 110495915 306269728 244410622 777782350 263044177 709158841 967205755 544058003 698681566 445085371 36258682 152330150 701197107 401974298 855770045 598915171 47317376 168294200 30116424 90573152 647874407 136985210 517964873 50261026 328610594 426827799 736747345 531285322 748586675 557938873 813120577 378328071 878514138 145618491 729877662 112922799 417174969 854236893 297041802 307112133 420930820 361304879 180188781 671696223 609507935 707249173 11433955 911046309 500161251 84638155 700979091 199943267 828053170 395332576 808399939 378957906 952437424 232972408 599751084 546915528 553297210 812090850 508760852 145993304 724740039 6373336 689426689 439661328 958156901 770358481 424440777 189727316 962587558 301902355 2452025 855192182 208568710 239357171 48442757 677457717 674590686 169871189 20519027 260706906 713772939 666960206 128946144 661518135 537416771 608034240 142904500 31245460 122085522 297688089 729793677 484835860 324470954 846257111 214090092 709051765 758618239 399906836 845536408 574608553 991922416 9077284 370291193 346051141 600536272 216780230 399686938 923263038 886062046 36101220 69043634 67705684 86021689 876068696 785923805 806381011 468030483 816870591 195225910 870947189 163898528 8891096 929472727 896360223 777868060 980270324 949460499 755314313 929774741 579454860 79761409 122905763 937093814 415830969 617810184 5352675 678239361 646295088 77557220 569453727 67511613 496145074 826307182 849511231 827475235 222514585 170461559 487129902 440646023 934743331 979580191 355922138 879558761 1000567661 501363648 221009508 357003843 785633834 271577331 949377704 845382547 505384899 359030898 508358274 213721470 770532601 742509155 759321685 20570015 498871374 337569825 870002028 468603401 975062652 394876487 777565485 450846995 613894710 134547419 764732618 74992236 463648725 517511004 658097748 848305206 309658810 889509746 284117786 820047305 240688122 783166218 807474202 847164656 367388166 722346188 258420320 156114434 310679803 318288311 825384263 925906932 197891765 744279958 774114076 982816071 362232249 285762003 403437785 279805823 549714969 356826683 83488541 93621280 988201040 138285881 840987572 447824179 916688470 697917707 180768723 887925322 635873481 702084675 799881209 141102690 328581329 115162675 831220471 776687830 81028262 927660782 743721661 316242520 706519256 119293774 57928357 220025513 137260497 362435537 716723377 538918158 200520571 631941179 520491085 532594744 743667501 470459388 640167256 479450374 972774010 171263436 369899049 175231706 779316727 360068984 633486871 986030435 39754246 196947337 965133109 959872393 544900491 889329602 838054000 217963749 286643973 353124631 796398951 28660369 78357619 79829282 829232806 716876785 11345755 291399565 419965157 861748871 408923191 19600905 574195068 692006620 736812168 718624204 340120109 873804268 175014266 99015675 196981676 731002682 144879830 377073675 792419457 894200540 462726216 986508390 664001623 768605719 940062637 851273645 191222723 964742306 270803265 95642728 197809632 786404636 898320296 757829071 554352952 652193515 972612675 696344622 467243877 678742834 383502693 948717353 855871520 867925091 833115222 383604050 939867725 417484170 924834186 338001383 757766851 313666095 601416456 366605791 921211085 815425136 1738150 957281222 674037204 964033000 815212375 389869995 53299461 123412298 256330765 994816587 872274320 840361106 638868723 239756026 541661160 357391461 558023737 714770248 709509665 968273714 620476251 479281756 305330081 575857920 374994991 172473451 776552091 776720338 541299933 857850400 404017397 24729121 728711809 850414644 923923942 177707067 660682918 656367059 468101474 352782090 760865049 380799883 632471181 992640225 722692335 701624362 437681878 486467929 138908615 338866432 875369114 208235908 964488170 975586889 315274649 158203410 676158391 42204183 329629570 635975922 320317122 121609732 263380694 876535465 839065132 344691911 877567394 724719837 779030638 9954255 699444562 637724923 690484967 979187988 338035977 774198581 282909778 238097164 902934631 683973636 938013453 530503059 165429930 312936194 76983186 724062925 27417057 1323455 334133242 382106678 62973887 525826057 177701494 159583375 989609009 307602053 493033162 550360014 350069423 929679881 456425312 965243421 198291680 868292221 299935924 842602871 466106622 57049840 483325511 129056207 792793757 420268661 346456824 583808804 154972367 489689089 943648773 645410390 621666879 514015886 781836309 685573004 148402117 694581336 86608171 312527896 680551689 726983166 65168946 291152031 813560401 236002706 143539515 624482705 53799265 330821675 793376680 622454051 534013377 176870351 543146115 554120516 77306657 188743754 239695344 884490825 24958174 98808521 983430853 185745947 276686769 373413504 848080802 961604986 990559505 833323672 118291556 735831891 935581162 54384060 288726630 582061186 817330922 958542435 387286003 145208176 658838085 549482762 799398515 897470840 247313960 720262454 601360770 663807827 901185267 540846694 109547438 829063910 428114773 795816331 511466964 82438715 965638852 634778799 952687359 847474854 865017907 146126620 466567854 318281118 746971806 146870645 807046901 315512903 985910649 754790085 998254461 794187879 529405096 170355929 512461606 698906632 438150987 278000530 25412895 131159384 712578804 78373931 273544547 485686791 156466085 461610712 713216596 386935607 446919932 390445513 921124686 242010256 83537368 35317774 726714650 592843673 384686442 649040896 389090658 706137804 555161154 293991346 555079703 648458786 200397361 752837688 488209539 713190203 186655622 57658926 657275123 763494506 119528382 872069469 498494794 272293737 172987625 91566950 270643766 993978420 649836538 319203425 977626125 603264709 495944878 493381379 625632133 428901657 341502276 530615833 240199289 380208991 430913796 989730936 251483540 174943958 669982872 762589214 79881741 910347265 507452983 738820776 142758257 316514980 817170656 445178595 437738706 32163518 220265689 370629965 101227197 83830562 902939202 12598126 142659606 232958189 780367245 365913881 551248000 782791106 243014804 826347695 516168783 755080346 494948199 24842441 3464395 851747915 513459886 181918592 71336701 269827664 807245950 409665226 17791068 439624188 60935727 48510368 123431576 843869533 5310689 685388135 83017423 432723401 660295465 31601601 136174796 235372462 485992714 78869749 386327060 594698082 607459838 685010768 445210307 520198895 738696128 772771290 98046994 179202154 203941121 113449880 947071225 256393015 437850382 267226603 154360907 502360270 102143212 289575958 631677646 639497584 653878061 661133164 379386274 758258125 984171086 720004102 681908864 326753850 147530658 396419513 199892718 675331378 551003763 421851989 295951314 171756197 722547165 938517611 886047650 119132882 453706475 794682606 440783628 808551406 537088011 146449162 627735466 597116311 574176603 241282516 412941325 732268955 121116490 686416039 992358172 40909758 651864356 155286094 798044112 573559064 750089841 197749305 993993897 612873376 453401232 461078916 608817463 146140151 182160552 613365930 549217805 236099296 742989953 799750188 791305607 674193918 19650320 554800279 773597188 320839061 719208615 354339662 563195588 87833144 267155294 469533445 876042802 242783194 419772255 626966968 223880689 891047643 275676311 994385020 209819027 592032373 210690940 975078536 588879706 678303784 939639300 111367275 453398635 282568565 664924412 116085262 464090971 146248313 640159055 106261528 505739829 760294747 895515819 423806164 484579264 9445663 344612681 763711521 673002133 496558258 546677605 653664747 805321699 967557859 10334311 436496065 701649778 736929915 542582797 419905185 500060635 807703188 794422643 104831464 592412079 826356690 893389644 479375865 303855444 873376034 230677049 18084978 478944142 928366832 782481859 113070365 10873668 453782508 772505632 326356628 415877383 352336772 255384509 133474185 673610546 104548551 574011207 291106281 923733884 558095901 570491579 116821232 143954418 352369842 431884807 992533941 407724201 968433124 340665675 393476645 232999550 248122924 692606005 659623713 595812651 290085424 224231994 458391422 200817326 241005052 359923429 845246690 559334109 292551694 77838581 430883771 322422454 8907710 290401716 729158980 805134717 215367871 953027877 690211942 56277703 906016341 358554475 400902338 961490209 434198383 143099648 533524460 15077442 251541711 139180197 939647927 835293784 96834306 841194267 983742650 85386781 245722055 790896375 301259064 347900055 184823775 700409429 554942860 368898442 566270885 820415711 757682489 344420476 663217449 898120057 794480240 893764356 30636116 174605840 44526331 675949543 181302661 633011836 654402843 815577891 927804536 798662466 483970814 693527570 423579840 361550180 201746676 21761053 305213411 849529426 510253696 477898472 539441329 90975644 400169830 234435246 289784592 394174856 462413449 60173619 634543258 618194122 853592637 758330325 398884052 428167526 900508861 555069173 653595428 315895232 171311813 821845422 833371495 653146837 103661742 409995439 282090933 756030515 33884200 893517792 14362299 301069783 441838517 134327611 778983694 59560295 619497945 781521860 301070253 9851990 994915520 442199069 32918401 999898242 276004633 465906226 555967090 453933445 36805712 86026484 79451603 228677800 258957989 706723978 294959104 482962004 830023315 807837269 557368128 283285620 972949864 881419682 975361859 312697811 649518539 484332563 434431139 292516925 544417907 882195642 374446228 265187486 403764598 398006813 475784228 281764687 411385481 860831739 159057732 678763740 859100844 209328711 471377410 973709349 513582824 807037098 421785366 467099222 910217085 733793629 495159546 242156594 734677384 983817332 333659219 616591246 456056034 401807668 839422588 11720777 191331001 400911569 284808642 306850824 356054526 656724951 56175208 981320226 518363015 515040092 452675238 999936069 362843499 38083456 442368560 410563497 513417312 589367983 782854748 108174382 680061551 596945560 152640321 970536201 769869406 791727682 884218526 112550675 203767668 313485223 18168436 267533741 288115944 699946080 965414314 491197339 160431186 724275228 618085805 114644582 912782657 197534990 247438026 43812407 723236009 165954111 630863027 655186273 214780819 792620442 303510010 283652003 703509817 471815394 502084260 513404381 400058815 792877863 702958794 547333603 501754255 737067296 640343612 745460532 734493147 221925470 166187860 594096343 271606603 486655663 100706832 592235022 384701858 2938265 211977301 79484861 483262700 651661679 866594840 599065200 867595620 104244802 978485008 186334368 685473266 972136809 888284098 864221982 965780015 457033832 238303802 646650171 130511773 788950176 968016177 892182628 377104418 259041960 79265408 150435369 97800367 293833543 1000804929 922198062 830416692 85640756 283727165 291741920 218334327 997640826 841199623 525142321 38548536 888038565 252119375 829323486 80140980 12079828 641290924 770937440 32148383 226227580 829827506 480293776 248756640 25293984 15190638 390208426 808887121 607115744 112983505 701734509 359183076 870288007 97306564 847329646 477154927 61304893 405802540 667092542 221278703 303475032 845849785 394325492 340115504 936155445 227698405 657374025 670554238 225174819 605189072 467880725 741288270 810892535 991467346 18969275 272761678 313451202 189944529 971412695 96220958 901922925 926524950 322731233 748447417 837877109 665409301 271390287 294031339 945012483 651702120 624921176 900074739 164768101 854623565 713312668 794729798 452794256 391165694 485459317 950004884 792341573 751445813 706404299 922689999 223195634 132852467 771415633 399084237 70725246 913907865 584634882 432104326 819836471 400304442 139690032 334083912 69280530 876759126 619935311 623178089 94255717 410907884 930559040 555714241 850949006 751216937 785305133 602033291 1000381949 192595741 636355532 38912994 991722178 982662709 725323629 491957957 256418629 717170397 983341499 729117884 933079462 890128550 583850729 779785689 777890881 807578890 211303644 882040577 130536991 111648192 957348203 150200855 94812810 541452050 511748379 666597979 714820368 735095381 622254721 168246764 799337003 722649725 83031566 338314855 221044857 264999514 194678952 484471971 685391028 173251086 920618776 438499487 839461303 570674196 51581000 2981959 766980334 354442860 905329668 659613239 702605322 587372206 277564177 126227334 323265963 651674537 345667738 123811590 214542972 657581323 553176697 168068445 257507965 524736822 645125384 930953506 96229447 357579119 789709845 128807685 188387095 477572257 649005996 727816754 620905202 8897633 984560659 780631299 249273679 738777344 399106231 355321339 729303428 993052227 244566334 370365146 212212827 332593551 978431616 518356595 106750449 436356380 652045384 752277873 982125039 661216641 920196154 359468658 43090630 791748642 737019439 648026993 294521856 238638192 887125881 872311083 989509035 116255936 785734997 535673350 950523374 888635602 367631344 684178229 598474290 626915868 493731572 331635359 392351119 140190335 712657965 718848495 476284344 133024070 334942826 592734741 952492523 817374298 517918153 381225875 974156388 729708125 594022302 448395696 241776319 385115975 881724056 419353652 265892962 300781982 286492192 216010963 339219046 400263897 177016131 598263177 511312819 812042599 435809297 319525360 431403387 951569573 930847488 819099866 538252429 779726829 336465036 128950357 145050878 689607685 843420639 974422584 339397960 531250724 442364879 367182624 124017115 797417079 269819718 589208002 25917630 377608140 816456132 270953017 27220712 385211767 183053255 574828359 412411814 607210854 824565912 483036881 59054701 794417357 332808249 674941822 408607973 893414856 715713085 990009331 93482537 928299946 116847340 812454550 900827041 120900557 274944661 769051311 230795383 709469725 656779608 123254439 585453095 154247035 243431650 753738573 378679833 280822023 561277436 442650836 36255910 607041784 297331352 163097502 766395197 288398076 528891347 65670553 492392273 46599101 394704667 810645494 784648254 543527820 334367486 842076894 210701675 812455438 980594007 66539143 573884109 346022108 360606801 163290402 284274375 631723527 155591896 422586635 843592181 89238643 52682274 808119959 116453479 856050062 662007062 984269975 578885609 18058219 163715632 94295974 240208389 148324764 722523790 745481777 896441373 367875724 759759310 956192199 812595637 409925397 325588640 294413174 288798377 120995529 516075399 435499168 208939418 62772241 666501172 936718692 56226651 142994923 751534069 677327628 117837013 861008566 361745656 603741497 322268293 343642540 992755165 594513159 774499595 692648353 701948058 367698442 903248525 763104147 530519382 542859487 906052258 672796606 576070302 7464848 1001011950 434468359 250759672 993592956 239867393 906506650 546112118 875681286 171046947 870727648 385347243 304382565 668548502 80743878 623376948 280371729 92052702 850072538 547772960 925394227 421432053 537626920 805468405 171148392 12009908 413645236 348815960 963094409 106803243 384144082 2328431 259548533 71931185 348112674 719889353 402654996 650252012 729830500 32964122 947980277 382632302 282384098 756995447 740190817 849551084 314260118 256743435 707011643 318779707 53230810 376726561 125274450 819169472 601438979 531848056 811200979 247983787 141011038 604314844 542845798 648668482 860911790 289099102 143452391 720823552 523321738 916450325 711003363 113809728 642568419 9791284 331989974 603923207 984607150 298291705 473778288 914309105 503253061 769719268 949145428 363702677 40860022 446455628 15721331 238732995 347879158 846413379 648518940 643394221 326541405 329420011 641687191 282804958 477161993 599645133 405356302 76231865 846717789 88823652 537041870 261319649 376211144 464805917 421106197 316820924 214400355 563736700 804332949 194320698 888139139 427269859 923207305 580839029 927392321 730868615 32408707 37723564 723077426 535847865 251875447 745972912 766817563 904258904 385557269 124006474 287342851 112271417 139439185 745286827 738414745 806556893 851004323 360265202 134875292 521185433 4681174 119394271 849326178 966700597 794210245 595474946 997341717 10847773 642394968 743790586 116384515 315577429 601722217 158795233 508133763 783358523 658168197 33480942 250207952 895479540 338381766 165297204 378228444 534927318 860514743 529435533 567048246 611829928 566258919 853773028 763155981 991680267 251801330 495634541 811610317 255076338 593149327 371423758 226994423 667362825 638615627 662188902 565407884 783430079 489157314 610873703 938661423 66150335 275188413 871692110 852533110 309884441 371916563 69407613 560273816 337386687 525463896 101254496 883603250 725991622 391459497 119094046 513603616 704579596 526404796 313859737 672323626 353394700 558890321 31523311 413660034 870607902 693802311 20007409 112771702 456914435 303103725 299288898 307442713 145407193 553476174 594646093 973752902 491580545 948813239 950115447 671455943 811544581 5788494 418276911 978047983 58837717 163903386 381947422 377586521 68009685 883074378 401006987 726690694 232299631 672206324 195898598 29054326 316794616 804092458 594183352 867938812 345503062 718720135 559875749 641426713 374462300 352257877 1744137 122743749 168338226 585032048 812225284 373104482 403440964 675652081 232676873 508304721 568284561 370350598 283797955 400989187 460628387 846662629 181408192 324880387 268284668 1030399 499028887 84333162 939772839 840288841 879710444 754469676 25268065 875270202 974631664 435340559 585012996 384059510 378698984 596207966 462200030 596046717 467728373 978842449 636155123 678504082 577084662 804878034 914135836 427810498 955008664 59054959 124322134 795615520 219422069 972076095 458801890 381619358 30307081 2140742 225694617 888939128 355158594 26548221 133444194 528994915 69605842 77575901 658594878 678162202 534805273 368922870 80013277 566499728 79709365 779779916 956190521 246315827 720015521 950304269 102268334 321461965 659279074 583952784 546728558 519147814 214638967 690518690 895921575 429332191 564311344 71318413 703817931 985393365 284178135 699447650 744391394 569439437 546574381 601795312 955813666 612581651 565380321 912619819 209109067 141296286 331746294 293729493 524856037 981884567 414224085 677281045 990467541 814575194 162964162 471416714 114938832 790325376 100944389 976535315 180711117 457114783 704221049 65207067 870636318 196382088 619738717 356880964 35042777 165700858 471235443 931241965 301519540 398523375 883802918 908258311 210366165 31437195 618920698 641723537 513169909 580574386 444926498 718108502 862168617 86030539 145366586 218457519 962058583 942998864 322001425 239646431 182403032 588562492 950790936 376767834 226192996 313453034 846015281 753219306 310693598 198403464 444235888 72408832 993283301 148178477 654713626 166743856 614945672 651382158 860668513 459033757 740906845 395627603 521101905 360712829 53128276 371903917 588831901 792706300 969086962 437000437 89693964 595816621 384155864 628765403 436593900 705905607 875121140 575571313 973006853 434277343 41646400 825675413 995347696 293484456 513822257 356267513 941219180 241673692 67412557 642457363 661566893 864786784 259534877 713840618 377448124 518979587 556934367 349320310 1000621850 627011978 666989176 19969987 453047393 732721183 836783489 579359439 358979448 370521038 506984820 905310243 812988656 652567085 436713424 134074552 900989738 256342420 601530484 20168877 410002902 791529510 311006901 12039868 142776526 173595013 83994356 221298661 658279072 306215554 664384649 297306977 544637335 787638127 301360979 176945962 657465011 496968180 362712147 441762541 370459682 739210440 923566654 336174708 80049245 587752030 367947548 320249264 706356434 120049720 603040586 127135725 95310828 504615293 546363408 591492706 69902211 945868065 219398692 473915759 540644618 9654670 81649609 179462895 303917972 58305028 429514946 31781979 963889636 86788118 367469995 851677371 569984662 255254762 27865507 661905894 95381673 462251597 411393603 841891998 724571291 513239763 961840644 665029448 88877856 352147839 78911102 504817370 226686565 721275587 243666307 517114131 626408576 237729651 398781365 604838542 312766031 341224819 960079471 530650905 58709906 534045224 207656669 551686370 518698901 347155392 338843781 445381177 269301012 424697300 944526491 215577109 945656760 676629525 248422309 701509808 224864424 931892460 235330147 302733425 108680470 5247135 870410919 726748878 471784605 535191356 798825440 601141878 934047853 174664170 956173341 938275144 255056040 363055037 129116674 313814169 73801352 552346189 954781630 136519485 996101595 721164425 184374023 150049583 139368849 86897356 421078992 501680366 729294754 292133631 167248193 295285240 556068584 699962516 278848357 371723487 534369484 299524638 97887033 473986946 926909719 784353213 137731668 594942576 52178783 267290678 169246336 778197772 303027557 179603964 236249306 184359922 906546931 936076773 740223766 346978652 987562048 674910916 267377935 41791118 565666476 141318026 643562734 858382266 649858283 528671721 21966440 177091073 281208167 159381336 816544546 403837399 983926050 869222945 422348032 430148142 894077911 455164988 88858138 443773845 291794540 112573877 92612215 479979143 759592783 650613468 240398894 90699687 411177687 952355147 444485971 413619556 1001549247 721645296 469740045 344148833 130775342 656220007 170085725 702643363 31464034 294044208 105115374 18055905 378392590 956024309 621595099 322873787 873010094 631041391 352621603 501278944 268294027 940246125 130402880 253984805 441609660 961513113 264084224 742851434 829966608 674812801 960900198 823811341 791276983 629428033 584226261 768900307 522585284 134555626 584609635 206483746 564020502 557060747 823920849 885915256 1000425328 518891279 94876042 337454692 135022960 203385294 574623743 855559134 606219653 315976889 679667975 393320689 370720257 180433621 344507241 346029028 895704583 977561064 234366444 621502282 25317988 494952654 189642235 991945829 236728995 529872881 735852217 84076571 670835839 340376570 246147527 641457194 330191348 489012635 304621004 588976554 905978138 672682120 751020705 71979239 484607612 593936159 361490929 781165936 935685497 457199985 130459231 509884801 601742630 722351397 131038804 341993641 565551381 920926679 626641995 674197304 681067737 651153063 929985411 726186969 566925170 860950478 429614540 550396464 784944496 625215215 51780585 148806123 852825485 319275787 666439228 179773229 948080208 453704233 29237028 826099380 552202068 270677835 46268897 926294767 274702476 744351619 213811549 642137636 752401131 721259512 916741461 431238693 465273802 500777162 174051524 989732205 26688157 892226843 289254530 389181198 736838289 211624262 616043620 216321867 380496054 675314944 498128082 225141046 545953328 145839164 717461158 192770218 334902668 646498500 92266883 113410745 756209907 215199783 135997943 382217010 757343978 445680391 301219376 1001580231 160513592 388540820 368802357 598287841 190932003 674740546 322372117 130274373 1000538577 412736005 479046086 226420665 358619482 123786747 469881280 1000506570 934435758 302716977 973626465 869811295 530885520 832746260 668350317 74209632 857052618 131736259 519499472 453999938 791785695 809987752 351296531 493262247 386421319 611134873 389782816 97570765 372290451 937082745 104137799 353796167 717761409 549773444 343946715 840477509 188481552 811568996 24386134 429710074 348668133 529866345 421784629 449606964 289603850 559603871 487975109 50098385 408341020 107503380 699131619 907359094 898500984 404132601 483311694 313527315 33641295 195021274 12357748 969775719 567609748 59507887 857683478 756869367 531815799 548080457 449459060 292754738 297345123 745652067 63444540 148269381 920774281 223138312 925127537 499490435 278191021 635442646 664142392 328439049 352452120 608504304 266102799 935542964 316283142 999228143 19603470 214380634 93610828 603627657 323485472 314739102 738985890 772283260 578260500 685166897 47400865 469686735 222383942 772178854 677504857 986184488 90024196 210138055 979256550 729124910 67250268 523902676 7084896 447868193 214489523 378079955 501541563 811647390 655498426 230430315 770069270 508254892 256043653 194145646 912321084 32573101 898851678 407364380 618368303 706246121 983077215 176480724 221757145 306281123 67785448 747159077 367630906 268027702 149227008 670246222 484038225 68919824 580825539 755481000 306150248 237117011 54127665 35354550 645128371 186596134 785367424 717428887 565648110 884452152 768763303 594352110 994356614 84760397 381870566 810766331 941346846 881600844 77625720 185684018 181870355 901657532 286286863 211404063 587574011 953431457 564302085 881174508 86744269 117183942 584937467 171237108 258106520 647376322 193905759 709357462 790996679 307643402 535526910 516228739 750483782 992310695 346784841 471550573 927895134 589899767 753527388 360837257 489732685 893460344 379262466 545710585 887649098 111724010 963183978 130123454 905485214 933512891 32993196 769052229 149074502 483266171 892756541 797086989 504445258 50062881 511639362 300223847 415307792 98806002 896885078 735614788 184697170 922610817 400983511 384002702 253149859 563038310 323523398 453983240 880290383 451113057 264023161 508843765 661020616 647081680 440867793 256177650 420876238 657426642 314165683 33780740 802390919 25524786 563351974 75444991 631816994 803919378 605484105 548948184 294877144 563622653 132293676 474510634 706283335 269761967 731838930 112997735 349779590 21748909 473491932 247189799 754454052 753540586 528919073 665810389 675067234 869783432 436529769 783394059 727810895 871020921 859984153 91340167 762149416 14129524 247831412 197242526 541186307 762943089 909900074 816460692 41216890 26888658 969990631 49093316 929612505 558480685 300704821 141286373 869920353 264626448 512816174 378971296 34966421 174816683 749557819 499115560 961900342 415176613 715907775 293441731 316639197 418179663 294755206 627514210 104016000 208584091 664054640 551309691 506608289 57585828 269510093 410515302 372536781 106790801 297945285 705507999 592556237 705654506 935392010 760805286 467073860 183216997 230545405 934183428 232543319 738479714 632494349 640196225 360257592 652366876 443699821 17588733 310797785 832500503 912051794 195657973 421946070 493186652 223954390 533239627 768117716 237795849 490360573 886953529 104288825 503683509 804550296 977314672 345958056 900138216 67060337 25525963 69484122 833202304 225192485 734020528 710533353 721965751 672350488 425796375 871070918 66980318 385132896 254335979 448346035 472943421 536214768 841279414 969642421 105982579 303606766 164982947 530756398 130143941 926496947 22374279 340765303 854075051 803851098 786245518 791494400 409103983 976497383 888951056 782904219 764437657 204636409 21446014 150734562 712971066 26196223 412737916 665460625 681011653 572475559 298680743 738630310 610402902 514959245 575885237 54966681 884600186 566322239 930102007 65828524 617371333 110030230 860300485 568517466 313754877 137859002 212620926 648392670 221355860 203045445 330648071 519294400 898828640 459672395 285571977 797355726 150618852 78902862 593936461 736255340 679628800 99972034 921660635 209118815 458408272 261779297 221129235 382133534 284612509 976203744 458579992 468505351 891377101 411245007 341916914 689878123 963929992 651142062 11411243 715523148 607695827 458741123 283343522 104882325 43871037 172515105 804367870 654592555 849123835 628309046 730937113 595376524 581306260 399601974 213381607 561927054 386419503 727910204 953223170 493370474 842810443 131562094 803386982 912417141 365536403 239819668 362505018 425483254 902373678 416240461 15090402 815685017 781337951 68094266 868825610 781609415 300959240 256157590 194729368 514550191 261115660 329248176 209300596 142751061 134658694 475965781 749181169 428852196 976151171 401683680 712038696 528689994 901492490 349418412 43396315 238326422 630497850 969733242 705641796 69704510 356023579 766149584 108778095 650548946 197787272 535359726 246322987 190374385 883873233 702821040 647025665 452824591 907674501 717214139 419242559 423709507 306095970 819129218 560967787 720111411 482081830 579509805 568796577 498373521 40368926 544564906 953774820 599813281 416778590 121375204 370772700 419715157 892036959 902521213 969987311 1366900 459559826 20881370 135240400 63936129 784884334 706379212 430922037 131790499 807558776 146817141 152756318 258637768 154002398 888180438 113651844 198686839 683820126 176332014 285835687 797685709 122734251 690703045 662312632 108517070 544640413 855109779 276245668 197863584 962967702 228829812 135666921 845683147 175725980 479544464 992535668 541060832 751973575 314605890 735156675 670902882 617956870 75933611 395390777 668402180 601105912 448871433 564925236 15329165 846235623 200830894 99249775 429844866 364142587 229411611 233420739 755080940 89288341 179146031 106779105 59638767 470324658 579359173 541256223 761372134 991864507 948211421 147171903 279208461 1001877820 557250480 457327909 815797577 208232701 834564788 842269733 561177171 508875213 852554343 167836237 592375938 590120531 31996245 659830176 362190937 778452822 443234621 365721592 574398319 390268151 355411692 549029990 684490198 677670128 536882473 873891349 993147399 400005814 405736260 170429242 264096440 653157224 749465429 975629759 796390633 743658041 215793844 246595267 507096309 831558001 188464017 654511573 160220063 934821386 628434192 16484568 388097876 609495211 726926545 394152764 869776476 897220958 693101425 454630153 917074271 101314337 454306476 980636088 449173298 542561691 899288720 709433904 783390821 335500261 707857141 204128805 104089405 86464213 452413170 396698645 463016497 292173965 287055711 287896077 596605335 425936418 918273005 434172651 797544804 74370413 685728159 675542903 639806334 876817897 527115365 471510018 486445668 556037236 397992066 69006219 140063906 567460746 308099372 737595203 537756023 5906910 897684428 532219574 620703010 928952624 792443573 276408345 204762477 112114552 147821150 876522205 211273548 271397285 548210796 857775567 35585629 682036501 250439418 911766390 543062871 216398103 62277282 28450130 685336788 804637584 263325817 374274848 852778877 837812069 979899196 13739189 151795931 285395420 910660146 339708869 506039066 734168622 455765139 593468944 94061880 760531748 790879084 889524957 143834385 50090371 814128435 813509528 552537614 79478026 328431827 518344724 654343969 328798001 434671537 132565629 661268931 151266484 864833988 332826436 829600073 511997513 710970134 956246944 732325883 784789474 306226407 628370753 875571469 551533153 436774631 334155001 703126146 948632089 379498989 276089174 451592593 432498623 60344939 671502013 658531932 893343434 315645499 41430068 908560932 831261335 284329913 305240324 912288308 946637983 12367993 115717775 182771365 790730358 791792091 562198900 670051315 201417192 535036560 502430125 423310800 158251187 440581871 945535892 272167776 341625427 423032319 137504436 13414761 373376995 587548216 907350987 557460361 676146618 253858065 608067733 128439343 374525266 859029906 672295777 959482655 845989578 941217884 2342714 648965062 791946235 664337608 778949112 155682178 165872196 98310980 938020504 751415773 212565546 423189726 686527532 246633413 714047894 458730104 93724690 581673030 631045558 845916675 723017852 423706778 9840930 68970488 589081295 681430260 496445445 201194440 821620518 72841382 614270209 607966689 238152265 567940800 472906022 405232295 489458254 581368071 434220274 464908859 469007505 974186944 682687937 401373518 111581667 31306088 807914630 255979242 499755778 381854449 929622940 152060161 267701874 8310433 694491533 158308326 786738439 601985362 705673299 469883112 665953680 763682949 751618923 852887192 439571229 990680955 357057462 51767998 207990233 491684200 152110321 788328333 438616844 174474254 210459160 199943499 723518376 621221538 974154204 664483153 183171281 476006477 627700064 66897437 165861952 494218839 422324519 130316322 180743240 464550015 678072820 889594782 582403938 127543557 883576077 296653871 784558555 61772578 551695109 330683482 597989524 179499138 950596808 285055529 899953704 573414348 661345560 668225690 934590243 425077911 172552894 753772217 623565695 873791094 90292979 41658255 618262636 124112883 985257758 525460089 612666405 41337092 429189513 511307211 745396093 609905662 267744400 548492030 657631929 309143658 742053432 818771624 984963193 975939780 736632445 86599579 444997498 438331741 502044969 917378421 221107399 118944068 966256830 255830033 750058118 292044771 606349538 349571410 791047879 3946988 525002381 648949033 16843217 611758448 460275629 202308898 340281063 228078515 138435686 166485119 351143836 578185998 819937035 887715975 582004243 747473144 436145550 934053282 681956317 921839621 243129459 335835095 26646393 168043378 574733237 819341143 368362983 423088372 842545020 258229304 342838977 46166453 327083228 737060503 944574950 636004217 297282808 887863916 773886655 420314796 952424534 647707999 9370906 918839623 821163228 779986212 629069950 616575062 596800256 47320665 226142419 293205806 502991335 620224780 257080582 940077183 692325725 436505095 313327921 817525862 554614884 94313500 456963035 535109687 850684202 153590422 196788322 416194023 756395163 606962551 752804895 184517176 802410571 516071494 895518507 956687157 685936602 284444112 911737994 22911118 519700855 920294198 895562701 324673270 281222568 252763414 139968161 82528703 911757035 945029888 584609977 849481032 217253336 641853024 102462381 472726638 202054776 895712958 553172450 984219004 201301443 857402453 185696164 591936856 801696006 190968282 150807397 404180102 796531721 343450540 878492208 456866362 335030891 833689783 307560477 348324196 710199211 553632731 813655440 325761299 931736250 179077561 843829624 332289860 353079924 812622187 70750460 821885173 607886488 297489652 55922444 12388648 976184193 355053580 916124386 260923677 646871979 218432384 499498515 599199960 839302465 925446085 615352504 960797627 128904724 781812923 814717601 89642618 1126784 657149273 52960587 888521858 759903067 856263530 649761160 704510544 163464076 653812428 954459385 774577264 895005789 224907693 709370071 775032834 345042890 246274751 807990474 500493986 164174960 790886327 39452919 481966330 834727285 630286235 764302803 639950383 850564126 286607318 716024835 96703254 817086678 343952011 849691769 784436218 10021102 771442391 569868176 890167700 348284791 440254622 664354765 358117183 7437863 460544755 702427430 747487337 191774425 417236315 46690235 341305074 760646939 882041440 922685966 705345137 683220944 937523383 204764446 560687498 750473044 869871086 10429478 922392210 177128792 209835832 863205435 31217881 51200038 608940140 571662636 945913102 860054932 429811923 387378099 948837039 141301193 266154948 806801072 233554199 240291021 422166890 938653380 799334863 173371976 68614911 585599412 335702913 312785229 506827474 515060447 185755391 722518882 914700860 140581921 339555150 339801058 551764334 496464886 598764523 37368818 802197696 341508785 608865838 484609895 126559277 731997463 142904905 269546616 930741099 872301307 700479379 318202775 769150448 169937863 158377205 723383600 338159150 687465544 101842307 518837650 655954713 835475129 763217001 190378800 569690681 831916623 382234580 464574745 166691013 651332916 885768305 495484996 517010330 799738068 574260885 602025173 130707602 74347071 326336347 606863990 934481495 599421998 533341910 593781318 49214615 867298910 424397765 286058033 476064027 797124072 91519085 879075848 520288135 879503266 24020714 546466790 436561968 40970919 744163843 944100004 20099227 528027231 408064621 112935427 334586715 54080044 413463692 306308956 815417719 13280509 181712668 908906293 298193806 185656232 180173352 151561199 592262581 906455424 291949718 466206500 491282341 500494711 268648603 2420997 810909818 464711090 138288601 520115070 688255186 260522106 492909030 765647854 978891238 824866843 758639244 281917929 160908143 841494909 954385256 601295626 330703744 433386146 7858487 886705957 15608753 426563399 996944442 42855740 691339875 183864980 697705216 272369922 933067402 257669540 912056209 785411249 160088608 276387638 288161338 479138845 256700963 966204239 795707460 792752606 209801144 940283615 602121218 168402454 115231722 752846740 477153275 501724705 95371806 940814237 273313870 392419932 516024851 436321011 744804815 700099557 183903297 49370799 444703220 716235585 408246298 384313494 752940420 204548336 490066060 312663541 173566369 459755277 419039334 231499013 939416303 297299105 81946912 248194837 150328390 784338889 260456130 836239307 939699085 540637648 579372053 787865179 181857455 122470594 468490532 45715726 685746637 864406195 686434590 103601524 552896117 582911140 220831372 326372303 542037923 97757002 567971078 47037827 145574529 988571633 818515168 971398399 348882407 395181547 547028674 554265478 700680273 49368433 235776871 334153595 224190592 101119171 255712019 241359818 340633590 876416189 523042883 815001162 496999426 94797201 289076199 194541261 340675556 310196009 522881080 361850082 805452630 705094602 309673903 436124093 345812562 954894445 639471788 248023889 549944571 46000498 95087358 577358361 316237707 393599970 858594754 731925500 497633297 20062563 498926474 731946233 819304668 109609363 169229891 346340508 547037671 78383186 611299619 723200614 889388600 297441118 765697523 392522325 306691410 135310684 526812132 311897784 42783180 807165458 515036048 87866202 555963976 945374583 581332425 297936235 804086727 162415320 754740793 973894792 638320386 382408681 319716984 687140115 257424447 587859662 177862367 744763361 874532610 523917687 777996931 449395335 477136090 302075396 264229456 284704077 173828812 47577039 910669150 35526397 599625415 32300560 456269699 196668662 211023608 483866234 401372349 546524166 468988620 468521517 485767120 726470887 288593443 992914318 927619947 378631383 416985898 544669624 385799701 594502759 933755298 705030616 120872169 448814321 7867569 436462882 503378083 4057340 942881858 143547742 271649421 259948879 197308378 182453140 939815186 965602423 203748994 346359377 691969494 931542079 748740706 483792059 362540455 579135365 308161393 662926404 423599344 626014370 316929872 184952099 341157895 749793420 367817626 16680138 415360495 461622031 62155395 600666001 68845752 718351732 922560621 690015314 34594245 982300740 861524171 972814479 324814098 47894006 162261936 490775529 181386484 992593198 827523102 815457766 496017231 322257641 768239196 540503698 764944800 707454465 612234121 708779533 622251241 423584216 202104470 154817255 763486746 343763339 168362334 652216263 413430315 414636704 891620728 551127010 128339178 568938207 517954873 279418905 152865871 31774296 701926811 55155147 276247023 443506322 55574757 391037824 731245566 938966735 144738499 70680054 408985891 699690171 643809358 757707639 661164310 345263601 194887430 142491528 151369145 494235130 858380264 929869336 30792363 354582108 11564397 817858152 267304754 361460021 278271843 430017192 35558188 411085338 612224442 179686383 648557198 730658450 867814263 939438264 74571411 812116286 303312052 863663883 723349082 858650835 615112838 541120575 65999563 30914395 87061750 776360068 310668769 267198279 749474466 511978106 124832573 920080827 128965512 294829706 308153192 97609002 49764643 146618504 204694094 784068278 665702366 124030328 277687567 584968681 772381567 248439988 864579340 884810596 118522936 474095355 671281823 256544617 368586917 304759256 860595426 330908889 698481995 739665602 163355814 653203141 360853743 363651106 654335015 129207210 337324109 958584157 494999171 372500264 99863027 833405020 837624510 901277837 429184315 702944004 786972413 405646225 633509010 409797884 177909764 426467773 50080527 245066336 816655805 76418873 396408015 185459400 157109744 533992159 76137817 98469382 898784810 529714704 9278038 808040377 982517128 239396769 791535918 512751259 296556913 222864762 949019612 864244855 641694825 487949973 17146254 260553132 747869877 616049986 228554409 255820441 143324207 118283880 673074916 615506657 17123882 467445188 754576871 100937712 288305203 638384787 974504968 308204403 430562044 198254441 420697231 240188181 898384517 215634692 874575031 581665058 909939079 546162034 324210808 934126905 77171365 578270634 229462649 695189363 838777128 918318613 456017425 189879172 226639076 181458643 398575905 250890724 815794148 457906702 410990707 844148780 852962142 979434917 378495348 686605293 23316774 326989078 868438908 523388722 773483592 785261897 378396881 794525091 123251128 268854697 243670648 957383130 809909651 757055389 408463506 151352654 278320439 671841897 234554966 633600020 94246292 520630883 885156876 644923724 970656547 141871498 468838149 279143881 461582472 216731715 6851974 273622980 33427351 67557209 471065318 864750861 136979727 433418521 263202075 350120399 667002432 940642365 429168153 318336505 845892584 966099280 111887220 533508113 765584476 676928292 390208562 425576587 289541930 268699563 500457489 171325197 562956280 792216837 675204360 936229549 473785237 494623903 438302612 95101605 220695781 622144125 104325264 160070893 145275827 281255832 127801340 605216587 358033851 762165276 923294389 125788391 38401443 756303484 438789197 284249340 685371489 862536379 410960912 91118131 500907668 926327547 277740671 105414630 794088728 889714978 364195172 757046007 944788132 443887028 380399102 993760955 285415947 734048460 923829332 699145794 305575417 920826391 614597854 648155882 94255839 276151961 701324670 958950850 847247992 849491931 800991398 611089258 411050930 170877642 742943161 139449434 52516983 20267793 104890657 311906739 511395556 812734156 715190531 411626571 825029304 878196138 942338428 334384689 584937586 959110250 87645553 224802083 814754397 586356743 889369788 481636482 225372767 189934253 16212792 358330817 578280925 272055779 298674784 304549818 324373651 384828696 164473840 218244701 929676855 287758590 198220247 147775315 244008150 838583932 701459094 785434671 448297161 332341829 503487990 291765173 553866261 295034523 223824712 300874530 413054809 347042107 50886959 654630596 48227511 930969492 844065903 118988614 996900211 155204927 416726786 215096232 86419838 489481496 813100572 424246930 242467302 53041773 214924171 654576934 547618583 627871957 253457924 515490259 896142589 940756710 612111554 405005101 310231836 155666942 821010303 607717297 371611229 804213891 754828028 44916823 708958236 367760575 358866753 688946933 285989901 804547746 311295412 173572660 269151836 183856781 460336240 924603923 1000833759 849008124 424305923 195249920 61105279 2356981 560659603 993453930 516817708 226321287 150374339 314183255 7640473 189389101 705932950 976747856 902120923 147960672 31388207 303815957 367081201 959723766 225697174 706948317 868596120 989654611 610683111 648865280 732284771 875915406 247277801 94584860 376879702 119433754 820198117 720382467 256802783 339396276 5332060 576794376 827099787 635313033 458997924 674931933 314311231 583760895 454796637 27592684 1002053849 797875010 26023616 819254849 77409985 710319634 287036683 781031826 591841783 126023891 176185397 802189273 679293196 103510842 792505267 244836912 564953536 307614445 197961099 930365147 100469381 470193322 43310235 679053862 747917628 931965922 826148525 381436060 851038494 355507056 683719368 344122759 574857649 645193555 416359807 868644789 569694012 280707112 542679832 50252004 738050281 868234444 434447113 560985860 175787061 259615397 191672621 968412013 827925046 923603886 160819395 795432402 347725951 905128466 810216977 513540379 962608937 910834003 496769441 481385945 318675610 127187219 454781384 929948888 701150856 488283354 725141172 180932093 329235975 946251463 561177965 740093964 183146684 923976502 8927500 796985986 853737955 126267532 161073079 989967126 510217123 95048980 865032915 430233799 237648711 113746452 942822998 407319237 121470607 747501800 699961490 7568300 226000464 355246537 606153143 1001201895 13004419 147967094 422173353 224678019 326905668 493792723 887978309 772718729 281705265 466305443 252762212 892115717 898015597 975908967 314066975 434457395 483567388 946498440 492179606 659572741 16063259 702639428 867305519 623545613 62221564 48888914 966555630 966139283 280645349 871692365 9083731 528733904 32752360 969899904 976299507 839167702 894461239 593802750 321994952 994371797 983582398 245154085 585069336 47780554 237123580 529522032 1002102585 577388633 458448191 773034066 519911851 759950961 961258656 82642369 838639245 661078321 918384297 464849090 707267828 217292411 480362344 482346712 197929766 868479611 133783741 961177592 614461371 860095984 21430151 422682463 882254064 909751831 93700511 382909666 191144612 982389491 308612237 440140112 821482340 907777593 317525285 635206946 404232193 708982609 814342084 545491246 92040848 849805368 419477678 399244775 445776848 328847330 903907056 55443967 615187853 101565828 970176751 330401770 386950528 830498945 448574296 326540093 794638701 530307017 516014696 539959491 970294261 615163878 354477940 562241877 201333351 477701643 731079635 515206124 945464631 804983754 932642637 997380937 791529948 592675121 687925506 806716595 2000093 742468657 322597396 379499093 423508953 469173331 62037481 270367206 705343816 778467847 187410912 996383077 435037211 508686985 816695279 674159003 102383920 84599292 175769221 451066091 74380917 865661142 250576059 804597731 749578314 544094856 310492040 642567403 960882995 390338829 671468272 996298468 448745250 260960259 730860916 98055345 254477772 958295707 223805927 152870541 803853394 706223795 210419680 151880882 507945680 975094476 574414654 700753274 106199768 373635645 379559817 935258172 329396836 869760385 509333931 496517792 889473871 162577864 406489678 149470892 1682770 50787915 288329196 418704813 759181105 238834909 290670810 770667381 970263858 258900961 822151015 54814898 739715472 282654147 54626167 298543513 608895178 284706958 804030876 832959806 128266176 599406065 942134830 900277614 344004070 981417908 564642361 145990743 780366617 144476819 217231485 841138076 446727193 658919860 153415839 580302400 120281334 282655508 797072526 704497870 635693686 70398161 667490167 953736859 76391228 701455970 17964748 202376120 382398911 218521721 771030107 193789079 491260955 459272792 683518321 75818137 261561179 659263790 16370775 54921501 387981101 109380475 513697419 415935249 429016482 714586952 118731458 338310285 327906232 38586585 773895217 372561143 847678655 875807722 969752511 940354240 765959226 272282621 515320050 720688785 439641739 71231152 648922562 99541686 932154295 91553037 931776644 478136729 966461239 408201050 338942966 498560380 527600369 587579658 568693642 658807929 939377870 196883250 702477240 797856028 742518044 874014005 953474578 583917398 460803840 849223769 250920526 958462198 574155234 899517419 301329211 400194954 434129574 340297364 150136453 324617271 732348944 297452696 791199735 24655426 220502312 458289317 615726223 790544904 348007627 116138087 344376317 618041603 55931118 539781149 437760342 670242478 447246034 937675398 898451759 325269763 258096749 208203144 822511000 901076980 230724475 870622728 60155780 104210075 17467179 481491105 418820415 592326766 50147669 562460689 656671584 581178289 609811450 748250207 176658242 412254140 657948978 48666778 487443501 637469866 710283848 788140068 433926965 283386786 702543767 438456382 606147748 738314596 872550804 581192922 469019615 459366033 625480703 154095327 119660635 164474822 691907927 613430069 868359595 349651501 627958027 628561687 388388278 18169112 645946521 144269210 136770282 675646117 497325455 502757005 891450802 116797958 863576014 201094991 578731009 211448385 394461498 340011053 749294958 867853860 843308268 805665921 53102236 437255142 208364947 858999569 683462070 564192235 185895067 773644105 590031873 886116467 703138868 242376019 995227873 411509059 901359227 891026712 314801492 569028131 710322362 924032962 693531905 52666173 324266282 279664363 924892611 224802252 443021764 835177785 473096698 533917977 424139467 232003149 935716104 873564465 636431884 474570719 409427374 344089694 197789440 8923672 240294783 226904885 558973114 667950702 222193059 140701054 571730286 236155379 361740683 223482887 108368698 282237544 112022769 493179749 440421532 873035054 57257889 269149187 447166444 544290523 999836068 440486661 41729830 130707302 681124449 24019937 308893568 804252801 600289431 240059713 316267542 84773718 419064758 544495506 958943008 645018590 972498063 326020536 560882514 231067914 69881199 734912921 844744754 504517088 117956743 107463586 990719690 465938850 260027581 928362570 348957764 16638812 737679397 883165911 886791972 358847363 549447968 491001990 655194037 558113233 466424818 164435780 470831060 44988096 515897002 914882925 240466392 274148237 940090863 645439079 480221905 6234661 126949404 596992457 472504176 3897260 393183250 368247157 741188685 943037873 72628266 576128912 857594408 923770684 95463789 203951038 891448309 690512893 283116073 144804906 925956355 134628146 40697678 106022489 219724221 504347773 466701053 544915501 830929306 409680936 410200023 131768352 666440058 905608936 164487030 229070497 679552147 905928684 553329 198527413 791861110 140640381 236964893 208583498 654584464 590188258 888502889 325595159 744776904 234207942 935927331 121805346 852900652 118570764 87312494 683992776 423117937 792982606 731123026 280798863 11746899 62049941 506488006 565286541 946725269 862850703 229971945 200079804 618738912 232329203 518710506 26751050 239617473 294370770 266302616 733672644 157351143 903129435 964452344 116039425 638551528 245344578 27048141 881913972 759994475 101206038 98191273 424795589 82717924 173242640 258399422 760401883 407816539 569247585 625824433 404137267 933524544 697411998 993051391 174092095 413586004 340691419 328590430 619771438 148782863 499347892 276110082 665450134 3439343 408117321 743641958 689713834 10454138 920750358 384862590 663645915 259474613 899588694 404369561 569563260 874245075 181990063 317234698 33040282 210954801 301608895 72392244 291067570 297197118 446217318 999236865 784062608 546004779 428466691 577032026 678074402 751718499 347521569 678367775 161329667 445436111 531045773 511979032 563504090 232187282 661787460 648236834 489369474 779542965 488551136 173810953 438643316 793282035 956955980 40263944 268642486 250249720 730808792 544648292 294876893 608767602 196656746 306929958 174548022 863244736 507382178 929226233 866003709 736545892 957438345 622389201 351954841 44970124 919268182 559224020 608819698 308815630 524165172 179957293 82139988 90103116 706367086 898749684 483740348 563419260 159428091 112933664 716387478 276510920 957681776 770723904 962645721 91956796 19245348 380043582 605017556 871972487 257581164 666817380 176336583 686504735 661102370 698271863 415799311 496544606 9848142 761510774 808731916 968608784 971222208 101428271 148238858 485084565 435055117 824700271 461272666 402432736 166087710 95934736 501436129 15435137 972305092 742965258 319453785 919121310 279096830 90348745 279077517 685425470 288593054 937692313 115729099 379850332 529889596 256003669 244799799 241411147 109436943 284880177 174604946 981824332 363763094 930586855 711938015 76120092 246171518 527062521 826776908 727268438 706804183 571757798 506174981 144924256 612401293 672153164 96121179 885892218 820309463 365529334 654923187 89081427 333969751 557244938 660756992 431053173 22026864 281935485 79470918 105839310 442489736 648084762 392551704 851435933 219943298 868329928 979940447 410174522 809590397 430184570 932471598 884073442 453044222 720210827 1001688296 79286642 984393414 322482842 959337263 507047970 119012193 962984544 403654203 616372976 161098259 550844634 620451976 614545925 192426202 892081692 23535275 538071413 209795521 942594899 724812171 254526992 218089675 666407830 242154252 48178905 161790976 565107865 40796472 242471052 356897951 599894905 421920161 848588152 784394455 125761085 576480063 65070413 267727256 467787741 195596237 992325451 719892969 719579628 849624271 849098235 734916413 838718538 767247637 773273335 580609584 978256846 99878754 803619563 921899073 672089107 92876154 825164713 580046320 206229154 610985050 634201340 845496438 704233878 986111549 419706561 691234134 861843822 412205654 215398336 749769344 67144382 211643500 295500515 681231184 191262458 408159471 944956235 793099371 700885932 172716631 596917183 494630095 482288240 613017044 482276310 500887610 562266082 656598710 66129453 503863722 1123267 543935206 630500064 702360942 523783091 233087145 128142026 356910451 212076404 704137360 543579658 58550931 966076829 166326676 449327338 800363217 4299919 73239032 219602633 630996617 205946195 624613060 320082360 760921201 584792786 628871749 669687724 753878427 792610046 1000251296 569374182 714756038 898591339 654892805 797180718 914984914 711644192 821620772 475370883 417001953 680561308 56618079 690071213 104298462 191735684 983733608 687184647 169786156 416300366 100862979 281350161 509488278 633934327 853509219 977621317 845044902 800545120 447151271 633166423 432416896 290821861 490015545 860548455 814301124 576150699 21489374 708385621 742468588 407162037 286196393 513897515 698073464 600180985 55777179 114487132 204159149 657770784 7242464 847275958 187288610 424659825 998198593 270148029 257562470 578545382 68384221 439708410 80924358 458253519 361035408 528942213 715416713 631769040 453368246 800327407 50868263 124777891 977494812 49584917 847478343 44572573 55690289 163355660 455874022 143715050 436486932 573683373 133475368 822885923 879365611 473015947 834145999 64220984 533355552 855293668 947009261 401802417 650962211 766751835 580204847 267132325 187963854 996315881 908186514 539486524 230655667 103100941 721126889 263650229 939817634 265280219 390659410 351213946 110709112 303772938 522429737 544501957 585535564 820573908 618353811 717260940 366279993 451855637 946324576 312225395 779711772 583952856 95533433 749957148 713598266 974106127 348495253 744965693 260477420 767973274 485424326 648525584 532895479 312101586 893019492 942844387 557482038 201864637 348467315 376684397 302339664 194200793 135948901 644692320 304564243 208279572 509629972 348240951 849456749 177515027 771550338 559408671 145419748 907785587 561711459 633925978 479930326 40503637 636128799 231995074 933318119 603914579 303116476 978396434 570564987 696184338 612249822 705110432 797899099 80328342 668791729 477190397 442615998 437713268 526275903 975586027 706211849 844151274 261069712 728421732 158182993 840640301 986448996 739595012 954508511 129689430 568931289 713326215 557669268 228883260 411722669 700743637 349008077 567765357 660255710 264971545 496471513 931891276 381046414 225329468 78469882 530313324 829393523 381366600 997046186 240607512 909725010 345713442 845573737 237274815 186389716 25842084 608672825 189166033 739027246 479718106 945023408 41302113 671374899 494706519 450075930 579311595 880258709 985850609 746840244 885439000 349817604 852248903 850033142 574433856 868229306 742427069 251655737 42704005 699706338 355758901 191918924 266765603 561200595 217331129 541794324 360055247 123631565 106330924 414620701 669303746 387770015 762665494 187873592 719008832 355552970 395289767 310793257 683411204 536520315 204414883 427596812 425930861 231339789 217046581 619789085 738294252 951542593 686340646 7003923 615368016 71180122 285834101 394420084 481849006 188695393 753635969 997031566 657919302 294005419 390682295 938798695 465944613 882966276 186180925 942067240 623622393 657382513 992185790 304216117 736746031 999809821 224802739 648828618 122022093 646269189 841758615 841708155 209329648 155442626 304034962 716142240 119503367 318315819 706348121 962136023 490109395 911041947 361032028 102045524 982782455 841421903 735173364 981839881 953252796 920855530 378782287 695102075 566207169 900064647 669613196 326824260 746023403 651648679 810742075 467063719 553585646 683461457 114400689 819345055 608933515 388087965 262346471 399706295 549575734 217534560 543137154 252902393 696007027 362775241 426402609 666450194 535927269 20086280 730246253 994552327 317231284 371386081 328906632 52286698 785146631 979786745 831537170 985562131 373758486 680146784 1256263 411945766 443757329 856978819 149761391 429365291 396293163 202107918 212521399 68651846 352449942 82381600 160539221 209906313 445640392 147192613 549196224 508890796 570539731 509242228 702644590 479641170 408306205 822321320 630413964 532162662 446377187 929278642 130609605 943799991 143155799 21050975 651709353 411031918 370629937 149383191 618598264 840461591 312713385 475494694 964816100 236632509 19770205 621403673 337608103 463160992 87356976 373848864 377035360 164149168 986334489 997248211 425344455 707116528 942571818 291716336 369655521 380733088 114365731 296991194 692960884 182854859 573770550 744196175 378391372 690246684 923257410 583584983 650356157 750743574 882232619 348216309 699085900 736709432 517917480 541175717 831584701 222866670 15194068 422298315 309610208 334753198 712476527 892365414 233737816 924818130 152941656 834573984 217804001 54258128 531746518 648020477 233281514 547776839 42820725 844326135 714001891 137630602 281243740 689784303 592536992 298151534 947971692 645973958 57685566 698492577 340161912 884079240 85884817 686249106 50273126 206675626 817183717 699920220 13981477 580045318 82764282 220689548 736038250 967333016 700449043 740001777 179903691 745954175 754600989 582561119 431820802 734814063 149428220 966503878 988418490 717387276 629039827 592850924 160566724 744149508 85524998 389929301 751420519 501857718 408427966 670850183 926846850 90108747 350873525 46402679 328361392 851808666 339329118 179724817 187595473 969460243 471158594 138187170 258962824 273083855 600769639 296218226 591292366 238572914 363229507 885273454 301884616 795548498 530550414 354385918 859098940 922338627 809705873 299103364 267981797 590943320 728771494 388253280 526669947 678898149 786575243 331992624 305796034 627600553 457193873 632416212 274255141 400025056 277169294 429548810 487877409 594458900 383975431 978650351 345112902 298972621 487206594 732906098 717092364 494326925 582446428 448315075 390803038 532064067 763766200 905297034 76940033 563615731 723474630 896804810 110835358 497050743 726383465 787848004 441819781 470725100 514873601 831934472 919563130 864521644 69696068 876258042 114259440 75955843 16330960 743360301 611059750 366949175 989528448 288457898 95567061 844870365 626843892 620716707 157214043 810306130 278937394 213317448 36153021 921145738 250982494 342532631 346438403 731734268 867683607 775785279 744291800 722825893 312487283 671431811 436267102 909560916 803669840 601209516 863254210 115090474 821642101 2337661 731088853 696824550 617507792 632260040 391302746 713840419 220925319 423428532 593581702 71674451 933550678 946632783 380910617 275828997 815985838 568190464 634296164 492305359 840373833 906816490 654815841 182473074 201590812 111074929 339523893 783920819 155855221 976957278 336560097 863364524 706971688 379257574 490565478 824058903 517918228 756970267 300380428 50286872 213055128 639754929 277758359 30974830 856542510 642184352 473792199 89329074 236303222 234678994 609893162 791828141 174164459 801670188 789842325 565505416 521356415 215806752 134511777 480705003 513804977 735029563 299162762 935449212 713178618 336402676 432826441 604643390 427098959 479428462 879921815 729952593 381767148 113033098 874341039 268251938 312537854 46655230 57539892 78725549 564292161 804438138 462636892 17556785 69823199 132617726 477078943 80784855 766563323 489834124 594924808 276684301 23471511 934528629 549562951 383980735 33362557 630912537 225402371 704554789 319888143 814191382 432402940 587199351 681386805 407914251 371345551 73916296 579795957 734935653 257855725 686201064 469083035 659888572 919673268 272044782 307555778 812757308 231689938 952945180 465301077 907857936 293047914 680195398 704164126 721612954 309621802 437869353 105240478 940731397 834765515 312443993 840410043 385910808 33646302 814166063 106038911 735928412 837758206 25197305 889748174 296625873 911972605 53511739 311292993 17608230 482581495 142706040 950009230 380975271 51090247 143880692 452010376 872790619 855476362 158796607 397788477 94871851 572344798 731907141 652974170 647611114 9907199 678329060 142047267 273826922 76663089 456489893 159106056 492838107 452731278 859980792 581206938 703159926 983519911 303871113 212421168 99417591 531351454 229446670 200037935 796326407 94330797 619034152 204238352 339574147 256711300 476265319 443016363 952355249 995774131 946767788 535252863 406588692 84126962 185734959 266027332 681057148 609287633 984807323 753555812 542434850 248289287 54521300 707523074 548581461 975212378 130818721 95109585 813134653 74937063 355431046 399137309 658381721 947730496 234694872 606608901 986187175 363729765 249584805 432738601 201799017 988598479 362619622 735506915 520615915 104137635 895570243 802896201 183232213 912193389 241648526 528190610 604426672 755260283 634690447 174125781 984750547 615242129 623797059 302051252 257661695 5244720 830953191 122466690 704962960 140257559 471578711 651377756 94620016 962910594 948655672 400958584 941119388 644692562 688088736 471235637 579510817 423054286 567636824 521351307 165376155 471190772 761419335 744360397 317082976 759029336 587375271 876261755 819070103 502010433 277702516 995521051 638612255 108080446 315333907 165565477 35699370 181812616 180807026 823941950 931109099 12808442 614989530 313034777 971670578 483047891 883269150 663988651 773151058 990948467 584643463 825865721 229929051 148939323 132348321 983133780 124821199 6800177 297859435 145219645 124773598 434955803 554913237 794003367 251661923 352508443 642716286 176104877 511791065 660199828 734197463 471564342 519955841 152001142 341641420 128422882 915446692 127694694 216339439 682125010 196157951 229410759 841969268 849727910 718820467 441492590 708908533 985611310 107267559 58154448 609440202 375163209 294021998 906243303 465453017 456589752 625239152 939798929 361936521 634907692 836528619 291169162 425072386 39360859 607433438 458520252 710038609 143728665 214198215 455470860 917954650 163681121 195220323 365100948 667794757 216167116 958737279 712664349 890647384 492405234 710692249 563250940 501320265 959450185 11501223 156478916 292268478 163713066 956131070 832213801 129091249 424411377 443823210 640351325 850903119 215085617 701274368 5996006 306537282 667486054 811872216 402306805 457258346 750624203 976281439 844482240 308723062 787108687 76082636 888224871 744661675 508733724 871313364 152217182 186475580 390477895 783185354 588991410 251114547 491389060 291200634 275136280 937996649 379796851 224746659 131207231 2259260 842721158 666787880 177425711 575544570 708427161 640760814 894465458 659390307 713832626 173437902 125240816 766177104 534989434 485930320 352574925 430910638 309904119 3822863 549338852 542433075 95334098 579334261 786506393 843324555 447941188 571363278 546356236 87600243 971182086 113776047 779564473 446536702 46279720 738896742 757904800 277113429 53272102 397887678 749120793 345918460 678875073 759262332 87313014 512087590 366985362 507581040 537842614 351109916 290355515 327167807 976204395 629714598 316288244 872944129 952782346 757440163 34070639 140849132 233255921 646892911 214839413 377900231 330231082 1001370595 498506178 542447364 976557883 854371639 622145120 781397284 199950234 154583181 21911295 916531915 992057146 465330782 71603809 890795106 915367524 30133840 737428422 479240881 778172473 450769958 325680858 105746381 222739037 626012845 336677150 785638783 343177070 248849028 5660030 803796123 840507482 684941944 193905711 754012319 861910082 685091458 300153264 94935980 579748389 32306076 383755347 618164457 692067580 139923671 596876236 253732801 864895531 676495487 790163818 342588929 233698032 473713822 918998194 103067552 399116104 779700417 62439938 312984238 479655596 154985790 186728493 785461730 255240890 351104890 137361096 572035501 352684507 979600579 127657616 381037282 357346995 127457109 694974758 686936301 705258357 454479800 842951234 520750648 349317223 592881143 705543918 467171447 68288598 53149397 526828489 744649011 128218039 75284416 746862880 409058587 194891662 717285141 953686529 172211818 647258454 402648654 21914015 189685455 39451033 103085135 399589193 664666034 380145246 530299967 846538712 563539286 662405814 519340656 506733144 365616055 312956158 66234133 739813437 594217098 290480966 111411075 127511691 72461139 763698237 619077924 348387353 115784934 825352864 18333011 757874167 611963431 502567416 919538693 78065964 36465818 501355788 100173208 179868180 893231926 915861868 793163787 89201582 923879381 194582031 984984272 503919963 325945364 20426472 528388538 30416521 590222668 462182775 729055521 838436646 434229034 796292018 309533360 642612019 170322132 940992209 543277464 652732296 667093870 278490796 840480092 291419427 572256864 912775043 908743261 297158143 568636934 961138875 354947946 164123027 703578194 337789684 819000070 869572748 964327999 876030077 525604621 255428838 267223734 975927725 464225226 366751829 963722367 333093991 169901435 943213628 801018733 731435120 478527520 160486941 840584911 938484050 876229882 748797490 71486928 874662551 804405445 633046843 694539091 666627120 548950562 296786924 223297303 438700411 180264722 8852555 147494320 427039456 651193553 329716932 925902135 57571176 383793925 610707718 702034111 267694639 940934563 920868486 33813530 657055170 316312074 588977787 78191149 866879511 939987177 264693491 578152283 810056274 468503250 685804807 94513833 880071221 128515139 392794466 967798855 816284952 488498801 677712656 810675305 177118642 701246656 786115794 887618653 620490543 622668531 791255809 874871687 771299079 926740235 430642169 982144443 427609222 550636808 591219210 133793667 159753267 16832412 193475810 393402496 600933068 438717417 173973981 348552130 934724722 424524133 683204056 617476893 829119004 5376418 512999059 546583267 51210672 679199087 162494507 441564773 111532414 845285692 80546931 660995965 550605280 54029879 723466774 761516899 698109859 471703021 929717101 808255993 325656768 747916179 648354689 793196067 628095070 102803929 865376237 695696077 323534789 37210493 998364771 398196169 499662877 240348545 968455252 7152857 273298151 820879148 218385616 632442294 668894437 154637035 584286877 557518444 119949973 12182992 409955564 387591672 55609705 515465051 322702627 57795712 457928211 707427597 36449865 949962268 720196028 825562565 453223384 204161823 985018898 499195149 875952081 29200712 973751329 622304732 791217725 266999260 697339559 161999102 579376692 60131858 758486709 986286977 526011416 978842674 256874265 798212535 488681222 810598091 304831419 375715632 711335890 470416519 790400569 215254215 298669709 466486460 988779960 399763719 268259041 726990431 368808697 820422412 562974201 913937616 882124401 893964401 515224718 140573010 574385761 709402149 401714552 926358648 656781842 168156837 870412154 137170643 340605753 504543030 502534170 533743391 306179196 726646415 354468840 778921229 102692040 23136866 255707114 232514275 754119467 365155681 916410914 907082362 315422054 9408731 18898315 698464932 349959798 481643740 676493209 524849509 682902376 717731989 581188126 965852453 397604056 710747125 473618674 810331380 749765088 583260972 849389512 373598545 141670817 580524313 505547059 1001815562 398994053 844196557 329324623 602148211 718331163 939202948 669086843 887375600 473585727 218530999 196550642 47236731 966871909 906088495 404505530 788621530 314740572 461942200 415333271 826134348 514152977 991712515 748271636 397981327 242704732 769998614 930064197 436759008 275668533 267029538 654730482 567920032 509335755 460211905 2133387 276441126 845653553 206520779 383062094 951983771 931318707 745675776 72893007 510807678 357530818 491848034 875933163 285417424 379529964 135060611 944839360 792162406 840034722 640693187 881161011 860436483 992369835 133264526 206260474 201215524 895780037 202303983 30750064 592168355 429554511 373392560 982305203 747162508 15260757 621462292 359714695 499857599 293507202 485913345 94554585 523325975 390234483 1000051391 916963745 303481027 737212481 96389286 795944860 409663915 902858281 373635229 814447728 789184999 608275191 811610968 349801116 285515649 829502555 377519281 643333145 355289160 867486148 2063250 383621798 873635372 735265295 830188886 340880647 114839312 580925499 723690859 977266730 508193188 897722308 310930 817682047 460275693 443720847 311495630 374764626 745810904 740985379 396013235 776476916 729745365 534158984 161611578 509506057 783888485 443738055 425333082 765806814 498094695 158305802 652408076 534395983 103281787 585783951 709105425 598536812 1001653577 458683885 1630484 468151183 254014877 771097764 632090059 444262672 421316412 267452746 78065414 672653926 990973164 640811430 212408556 780560793 857936341 51482963 182390222 896361056 429663789 447650765 809160211 572104574 905090921 144516717 99927130 120827504 825984848 909014727 677390009 289689781 357707405 73594451 704165091 470133018 90746752 281407948 361859625 909755826 301814355 231446514 494383362 79672703 750298994 466832683 665633868 391098037 392031608 787805166 248463698 44596658 761310709 872561253 306840374 460484693 738376806 41841216 671808038 530341916 275224554 388351577 981099734 183850294 9817602 285799283 545910074 758231041 545329126 184451895 847713879 951706276 636423102 888959340 227997227 995029306 56693212 28047126 314994287 114235268 805671181 161826115 96150409 852917758 503477039 853824785 410424051 277005796 556030889 174443929 118354746 505173044 634134330 801102161 159852402 997166839 350894964 782711427 750299837 608290118 769970755 497429534 966457378 5353781 724903242 978900954 860286551 174973290 51298082 41514708 124341375 353607003 315705141 927258709 826316038 708986233 347846726 52792532 13108064 821224651 959420171 976785688 158239963 428816629 531594143 211751152 113304350 823000365 378288633 868427422 74374706 122770883 645511785 181208893 416294115 985826132 124684909 818000388 30489942 482684149 217351615 584354898 378025089 634577941 639133335 462229648 12267129 317475616 171424045 984071110 441514277 54759414 356443608 935534646 475720047 822522664 80348104 840794760 993324736 234584702 330698250 51219960 505420051 119178468 166775186 204997589 893355009 117100926 450999976 608956161 345459855 826930496 564104023 971923952 220501960 979404306 34099277 103835014 598691170 37756987 400197004 86265177 452694715 610519776 965875898 401750771 929714882 560978056 558513335 236373282 805692581 249741802 469204045 857604213 334581548 306199787 892476202 750635817 499500372 689240207 25458522 425146301 39426372 271581174 696619388 177712896 321934452 338397477 262904634 581943877 797883385 948166048 412759553 82057229 779109252 809856249 547682014 492202212 333607597 921166823 239406709 711392649 43054549 671639680 281125157 333249991 836203653 185919658 427915173 875248688 235498032 59473878 310828371 990953318 156797129 642765759 470829754 214286038 787473568 433758409 53104642 125015705 9185714 277838555 921719947 369638812 4585727 337966463 62244477 282353260 254922766 251370447 363474794 260629234 480255299 377548182 351024454 498811926 599243807 381742929 191471289 129824219 428498848 169840977 334427780 374441497 81508537 837078871 62563049 92364246 105548201 711875969 807219490 781745632 274803478 911342915 462222773 967155160 625412190 811585710 625055112 379719129 116842575 188362183 407666042 62343156 548938949 842750577 598389221 223227729 988822586 78678432 534994684 159539735 348547345 673482179 978558809 575288442 712553408 886983961 88509012 638173565 809906179 586050127 655471466 437039498 111570055 762423894 50815775 405968332 195811598 714715241 313598628 408202474 216275627 297369468 540952440 619961555 923931947 819277437 399405364 644905818 432885903 275409350 8161222 574312307 138197586 549044082 252783381 352315788 919468696 897216115 786971322 15615731 398020867 471188086 69068046 388866833 1001845748 56754643 59960011 861282093 487480927 375096994 465414009 392578730 20105410 844688045 286937255 453775212 135289529 170476732 970500847 230755160 297291504 596071630 918617993 981176670 196674988 97990993 324541406 941673714 754980298 553377041 990496395 139645259 71092823 600321948 622474254 324784174 841886375 242337924 685899184 205531171 485071829 705409847 647328730 31824291 56151779 89890047 483555759 567564212 908606885 750984543 611851945 337537435 639682813 497092322 29145396 301324766 902777636 183514982 747350426 391325030 809208902 160067410 630133249 468893651 412414719 274432481 603041174 125805643 349708058 352367482 377159099 33888376 702063317 850065972 572346722 34794634 307094934 870289454 22639863 784295712 102920458 952909978 75795219 96828421 854546 896377478 8046644 582017656 612886713 417857709 210607876 891171685 496252140 863749587 864428585 647057807 344244544 71925507 82802757 663556400 216261093 317722821 117793409 9609447 81137120 292861945 267906820 377884028 428791773 948364352 698170747 508044820 944074667 749580803 407979407 250765169 344055745 65132172 545264806 552051191 978076327 896957710 372906690 931901881 227906249 2528369 12023525 617323832 957335957 722109426 104738482 252564634 57834760 242336621 190604265 183058824 759824485 741249880 164403009 326164106 949664102 374039562 554690077 837888157 497203362 675835250 28350277 245284703 880686868 1001876870 906044454 927918268 335612087 538020373 7501444 99725861 358337273 858453779 770026634 633322190 975878933 683447533 370682522 345309598 132430431 264912957 451506212 356875521 67261446 36097021 208106236 144785698 613371355 131092648 52399453 344584622 570609480 732020978 442930256 885768949 407385118 406383804 904628634 175803953 504732323 282755236 902365754 800579738 777069056 953742753 354548511 360615989 865602818 488925455 985886283 562556495 387003893 455244158 529359299 583832208 93693735 942077947 633312056 277245433 708841924 539996914 784190507 396177113 646239870 726017365 665075392 212004793 247818051 188074307 927840925 149953853 388468143 281555730 721173478 691093505 729032668 758601606 847322475 354350832 962720579 982967444 384153050 979988382 680551760 713462094 587058085 680616161 933477581 175581266 363133151 263574398 82509401 274661749 822236301 665288705 650859400 825644363 302627514 366154522 515393074 205269958 290689353 432520956 14393655 991964779 470430430 12391116 273308588 294946639 679681426 215069289 149406745 252404507 16115412 15334980 29534139 960462948 861217184 238265987 775629190 505422567 496352783 72478312 66889360 811913297 936149298 817909526 380555903 804295312 307824065 999939192 842976894 494775584 885068593 208068968 762695125 57870073 293328144 292597432 231488091 362933315 944270628 908777941 951819316 861693809 239567368 987659076 957328549 1209093 757622135 673587794 11614631 79383448 801537293 371759643 331288904 576932704 580291190 785096466 244011986 82050672 591313102 161902406 84474850 294259283 423177549 128720143 272921304 899263468 929640676 414077287 754300802 580698685 566717243 487004169 237892484 337346228 885712725 416670113 339067728 467239189 868061668 975496231 611300821 955731470 273826308 730765412 181142175 336139832 230563474 89862197 775615096 704233274 940496878 661076861 882524347 728014928 285875174 343402072 24841400 296813744 381766735 57476625 275619562 427815588 298625188 297559008 248227213 526292819 976376395 421160264 390241493 857488758 905190004 987730264 925651489 758341781 1827598 61412676 137520937 187520359 537900486 751599005 437684433 746453515 164530868 409008824 354188655 193997195 133897493 260681855 357856700 373396536 539596263 860018411 377846307 401678633 92687961 686648984 513741612 464057193 686335738 64358451 189410915 978482403 252565600 283877727 847410965 325994375 307230691 387653402 3870817 945865326 635752582 965621271 478362203 955909397 77816109 731789378 440513092 302683474 769310430 956452325 333717767 768269872 146759068 961046270 754975394 1912530 399242381 686131313 420894061 997256646 706239646 577883515 901031774 541512608 37856117 845813554 543647428 817287010 111771016 788044697 890632408 474146222 361583748 891866781 855911616 18073518 475995171 286628281 329276287 13600680 247049652 604571152 714850763 928455088 399940529 902120743 545028480 161347257 273656052 624724306 677439540 480668510 677628879 530724540 513303814 855764338 388865747 470103415 538318484 568076525 901500331 96323347 551311199 575758343 395484371 159803943 197782780 664949616 677981051 216108368 363430252 221424061 405619272 720020987 913832894 211352088 81820817 405643666 100983790 582288748 163506326 961652235 467871143 548486871 126040927 664433504 669273363 122988968 374629712 614802665 732236213 876736738 368958056 705913490 292916028 982761715 294806850 776862517 416704637 889655334 474178784 332880646 500808126 276213507 573850398 148282610 403664349 481733113 513382556 356549743 727100812 847948873 978220655 525912303 645417640 806832577 169703409 834251889 388134362 8467185 31715508 445773390 38756973 389468881 718860361 280336382 471895057 400568262 727057141 108982956 680511510 185069045 92470956 516218458 986416097 22041080 841832219 604780310 825305040 923298804 835135990 165955186 70978995 91182907 33494590 443584659 189151915 931307581 679139372 222115801 230430656 287579599 869763019 52571439 159774800 240960303 753787667 825554952 787261498 352346752 285455093 262982286 837451452 993856108 667019741 224771516 785849577 695536195 128007319 959698913 622201188 68505358 824865048 760152130 804785357 480785970 747502152 111961293 651302541 603825438 373032335 902239976 427659550 285208962 192046410 607978262 762158813 308386650 205917222 754681591 255029119 633976959 322996155 15213499 489543092 851231529 543132079 707566498 821253263 915529392 254548187 904828278 715004534 583588566 923387626 240093283 28755116 26284788 877028469 843810662 913455068 842716948 573002446 798339963 752564346 70464130 102669375 733908433 606670836 355351114 979695138 759941540 300453049 817458252 402194172 598208326 788209004 98493010 280345875 167173002 15017382 797355890 392511644 31909880 934932897 307819682 963615528 472188200 326540440 518384474 176382657 743147131 166327559 546182297 585998562 577841073 972696686 869861924 531765214 462245743 27351628 526538433 252942760 561710725 2431792 66442461 158517727 731653744 916408173 427918362 163012881 708895316 4785482 130872988 804109387 765930756 667099236 109033857 474410475 405352381 468319452 713136677 539341644 347983928 561680204 14293692 438864305 936650361 258930948 980346214 928118577 241903191 465116261 579207751 2043630 695936586 598116416 525811232 791288212 784932422 691741115 437099524 153205149 135380696 412838879 236340280 494114764 173236986 329438033 471301262 330098298 997439594 727490048 627781287 156467408 736254230 38322441 838716608 800851999 872991412 519784991 631984460 222880130 749346720 946817905 901567928 980189920 536918357 214497251 262843970 22142812 480282180 548263267 981376375 24341246 505294819 705015828 955137844 857549053 138387337 743276017 229544812 316738930 740969922 732643998 939375347 555325554 602108024 217471797 991339620 43653520 571783911 528660953 299109388 420315384 482661568 354277597 580217664 381052875 590803137 529907980 497954709 709935702 915011982 896504603 547023579 129780380 281037556 191857130 560179936 684475741 171629847 211299 401054640 909030374 509023954 338309124 235288194 498105466 762885977 911542194 398858654 877976295 241369346 397521392 116523742 644693280 429123406 348736206 812795745 219874846 379864936 43047449 864835373 230294989 325865896 737671341 112347846 140025367 317542763 951764029 278453342 753287169 952130810 813868993 288560358 798921568 310907246 813105845 548033382 818536868 889227929 462126190 50977973 841043594 487891922 240304457 458791621 48630278 547603330 962636753 716267999 701599552 160236970 327710479 286427400 167477579 418061292 53308117 816067317 303725786 713325519 805696827 342073605 334762056 825035452 591750598 132183715 663801505 723059334 319335305 702793380 127135589 967262667 365577121 738388446 464901812 950585131 365114459 858527239 406378415 87607050 484668120 16580738 767665241 321171092 437449857 536581689 855584599 102726782 156912718 710937139 315501613 827565995 429999582 97170496 767686184 661734292 311546163 921180402 116680152 841601745 621886110 433453675 210793847 271409027 6016327 351082540 632429626 25804231 940489564 206067720 797843023 180845787 52031368 453493719 212865720 258019768 543612844 729678712 22459810 25620381 573189129 321998246 575081641 31111031 800838087 429566362 176581592 368969686 635772920 736651152 840673907 280712690 280843175 593326191 45480456 444776172 585544160 576563165 73382180 361389454 377220898 265169288 391987661 414000166 312983029 515992156 76256581 688218842 874434554 838811235 733648639 315126558 193643755 145663263 53175119 730717166 972778736 787052641 845176016 950580774 77828158 388323855 615707361 181407236 351567788 787533152 325517558 357864934 832907924 571011760 521496325 25966407 940310233 800403069 804867556 484998307 432069711 596668512 776885466 808052595 858375578 14939440 985588604 645074072 725256721 228982771 586580432 594337955 184227501 125198054 708785339 212389666 545485532 802179166 150031713 351660176 133536474 868828859 177321363 296799463 202969425 469095769 698632244 951002658 15450809 97064769 936376964 741647422 358621867 694162819 923463024 818775046 681600345 265676525 1000188580 120283781 156561022 205447604 146558785 224201667 506981530 571079623 931366076 747234659 50430260 810264874 517481322 674227792 527198673 784480417 640970536 659875922 561477686 893052773 356544338 54274416 443414535 870521469 126475765 895988320 798277168 92286167 684220930 810638851 165459160 292590363 169650368 874525125 909946323 658848576 698021367 380917095 643068731 898553147 197937957 172904387 598767176 20019968 947471540 135530361 804113135 792942940 126914184 965415312 496001327 623387105 565094894 931851630 183054912 702425664 877745137 721668199 811692264 290595415 573323712 272855374 620274462 932765581 334546920 528854371 181282993 398327578 255184474 123150522 979185213 440156048 453702552 794324457 267631662 5212667 939709769 451939830 498892063 936985561 364276649 899695843 949127865 542343283 112025935 469563412 699257230 871252898 991640849 138180739 689426200 899378764 272042849 172924864 980198889 852629062 731590892 473229358 596593965 831394472 260054608 101497700 658624019 767226949 509552010 42672987 769788801 794008980 192983146 190665361 801149344 134327803 581084287 208655845 187023775 978763175 385772061 976259070 483120699 281388034 187837902 46312476 309698631 630152479 575675732 76689787 683513383 27643057 38984743 766514250 775318581 990435799 624059359 471383847 141099567 18471233 441556138 494365504 945357060 276373918 352831666 860095545 836753527 24135696 954314495 951887657 306431547 252366138 391051572 211010480 256427055 902567691 1000752670 759838981 915005161 328979914 558838100 43623108 709381062 395006283 183577840 550872213 140613289 994196095 515491454 231114078 99839272 740618366 321122469 791873286 191446626 910169581 901836672 807490316 975052349 201939951 174313672 604129205 950283343 136723094 236442610 162728839 535353527 927188100 638603800 988000454 758968702 181127021 295998257 449040414 489921452 452805207 532050579 486619780 255930319 810269580 677656639 85721680 14517546 125980560 339948314 198508986 78301879 325248244 505877696 844946537 749229467 592246278 164172752 492917531 237451069 722820092 532771349 339074441 505460203 72583978 674059814 176108211 595678291 277677422 889698471 921277464 666368409 412705766 273086437 851257506 660216547 852042016 711493793 56824534 622099298 960466477 358323338 430110024 489058494 482516323 117916271 26276490 415200616 796226885 52285731 799387153 83224751 681325700 576337255 744094260 488905114 477299464 708268278 419752977 419996029 525939218 982482734 432949828 731404035 711933912 142394313 341815926 882880742 855986922 465776296 209042793 799867888 787145752 405860178 850802550 360033319 998865660 537013864 913085158 668540816 985584670 611926545 445780363 889464527 42663616 199907183 874236791 797553407 196463693 531140922 892236704 595894773 248660621 611321159 713439558 357881817 499962309 328298324 971843739 470212578 991783337 539200923 161029854 619030342 580919509 221098313 475661999 678219444 607391578 658949427 956868642 931681865 379659508 17031228 123279522 283882691 757609103 307274952 818678834 608047674 805964251 106105000 883723658 294036076 959899926 388836065 373114754 134378773 484481674 356608460 799952603 270771097 724583013 277773859 989863765 659614702 380068222 217218814 357560641 321731049 857198831 393439481 508569312 846315483 274591891 951194324 457825428 468249262 669143421 851904192 131331315 565800197 176814046 525724729 750348653 197461746 906777330 305299247 615788265 526072369 777793198 91594742 731122650 956319824 684669991 371550630 907594390 112529140 443032578 879337196 568714409 200583453 630678684 733312690 924019633 602322714 810271124 342040514 325475247 163803137 540205974 412026098 918362557 545883750 715209528 642867645 644733002 367004142 701283889 927109216 491682250 109100147 710060516 597976644 526617474 801014673 803767411 147196173 520326873 547806 62156996 903054066 301606256 509384602 42876162 599561483 922626780 588896897 650099980 640081220 436306220 808080685 237978939 1001623702 953039630 228810641 600756171 279047815 564477117 775708177 605278757 377777091 746825681 338407913 715886471 135318281 71678502 340495050 217654236 173165681 734036755 472217679 16561433 77059673 771283694 466626255 808141013 616575537 558768001 352482362 567474055 847180781 542267608 422017673 152782326 512273402 369875519 524998272 555563075 418529367 946128647 874717897 154378776 133765053 755296053 745960308 661938473 536587035 855195790 296607071 985619041 329040937 661079858 560493297 51233606 365106692 910795457 331095371 204571457 248547923 546916482 392334478 134166022 918402716 928877450 66757319 629165995 556918674 442605131 181261712 350409840 554532099 529746568 956153677 77394315 454359352 143773566 788242294 456488234 778517497 353560081 342998764 954628554 633064048 684691719 247057703 954303748 444136927 640261387 808535558 125182501 901828217 945429091 885208013 990909822 882966213 890756031 355681772 603721364 743620619 852082634 859829325 961718992 768155395 60561499 45684178 44318225 744448129 103668979 676768295 645954473 473598759 264023641 683388971 349318340 247203308 442304767 486674714 207195573 716128430 529081605 525929780 838512572 688545999 397510485 78421534 370771697 962989612 1001726461 487513268 825935276 35915232 22548825 354850676 739424469 951559396 997465674 925917507 537275869 368756716 231685738 896982831 693145837 983860384 183642691 980962993 383567706 676929693 993116818 499399698 200420839 221789434 311538343 836248385 483870082 792554601 767085349 296128006 924989028 272038566 768824836 709197435 391671811 463247469 426002742 168331511 330941854 684200887 624449559 842655405 320013084 822845340 521703529 921362213 999345290 730343530 441327519 913300965 968735534 91871629 847828685 763787156 84355165 152645945 44014023 779117443 522223001 551210076 493915127 888294862 577626092 888838924 608622112 584896007 857840953 321143075 320274747 741723730 721196143 595392271 356322065 864092210 860217866 866873298 271137578 240476322 914350980 61892784 855696921 136409042 56030263 64279056 330854693 972752428 787039638 308977388 875505681 46886428 572710377 414693489 1001129724 556431789 982152001 271189537 326704815 342497733 656328800 302764649 359005746 679112232 76748263 27157599 529257818 555301312 827532951 606264051 373044314 613161201 517039806 662971292 722431554 534199511 500902247 994125943 151748789 840227088 351206414 475835774 176671245 364675044 425014211 669297908 961060115 602076705 63985873 630020360 239136575 69185184 495825667 539622852 320183453 426312824 93680652 615698431 352868558 27899638 926990651 287031984 518712313 786357792 786081413 196058566 34626806 214547199 541670671 475605539 624117671 107995104 529283388 808607085 221345882 956050835 349715339 610331091 28532592 45487895 388669528 781132399 819028291 884143228 962608524 893829204 347550320 37940940 156648772 803670185 449039351 380168733 402625816 815093670 474380473 377340907 256587836 496807081 760687703 895697402 782390039 390264576 671287755 96003442 420765182 488702658 834393414 466437938 503801061 777905668 127736313 809097096 818520574 881713219 186270615 599541755 9206394 65969624 609324295 293449992 880576393 412697103 465925918 697286700 956281774 181416375 250252446 515395798 513130087 542236682 970925764 561902017 223437912 758387061 641013324 661893615 317576480 276596161 146355980 202762876 513317768 231022436 193833261 950564337 579814273 42921453 305193019 748307627 228058358 770117440 946771786 617759335 612348249 575939386 65511681 991844102 155284705 81657113 804612695 726291281 698894560 873722535 745416020 554026024 868571353 658453252 288160975 393293755 161008798 976883377 322535409 661779052 628649987 362776133 397914392 663074449 826704898 704791071 93174934 695549143 499574121 521533678 248407066 208945255 587831810 592478678 182088088 497694327 410987367 415293238 890377198 694482914 837738755 999078131 406819316 65428970 836307118 680885173 939890476 891428270 511988053 971444790 174034806 536641031 573895213 512492301 530479086 162938717 509422434 467197579 431174848 127523074 998189679 332958848 730456262 807083169 73455981 581397870 586316360 190514820 66173240 887421023 150946012 437732458 315574403 463586021 48538024 193811182 535611046 839674205 878861348 468998319 171923342 470348632 110689998 91496037 963712468 187521399 314070988 765969202 160005912 208399269 791241455 507097129 174229860 69839447 439320914 201396571 694708372 570432535 427352855 186556306 352039242 934832753 317212186 596934307 968225919 855674142 445326966 209267037 333723933 18362083 396812402 576750090 35537969 634001326 15138553 759160775 903017425 626311420 308552331 882816948 663478705 38477405 888079709 473785998 548695734 813342181 749320587 958524696 200296585 158581347 738356449 332112432 698179638 454288625 657705294 664480443 961219613 658148019 974764465 644822516 183075392 89611441 797143981 567420062 310829475 640699 920241087 657255808 48147844 656946279 169088799 173689821 548510961 835766837 516413754 842092392 611153293 537860149 458062682 990472968 503159459 223412318 889286291 730268343 906747583 119147934 264606417 352613083 47213350 347629118 651914015 537901001 858666084 241087652 966795789 284323333 293387158 383273143 610909532 305888246 767349666 76346057 846241618 60249571 909989551 238795293 822409277 24831695 572368557 366025928 588536559 553208636 269144308 303407169 829421460 474659914 176490800 15959928 653033794 592301932 370412417 752415990 951102066 684358150 619929802 927649898 647824663 931589306 998057667 896160132 555866163 532720432 631940609 510737344 581204131 107798565 311167498 355606599 51127881 899825750 650366856 3819354 884638225 660309870 710122613 122032358 502999009 691695635 749416632 677013758 492998429 647660729 256059667 567733896 468238859 524506822 757460780 945039776 720324816 766582518 732555885 697373520 900731482 997142463 192625634 297379943 573161435 921096459 724137196 209441642 940749427 570568146 110770945 976811539 875215573 660318361 333798409 472930474 102707390 812129611 574240880 711628328 737172264 968310114 454531802 695787592 342985631 232844697 812334617 998568594 87534104 206059178 839076144 142643119 751781241 756418992 169016346 452947368 796628592 980319032 900555147 857479680 194083049 430935142 459115528 600101220 495445309 323628680 191957844 127007633 64444699 992676857 195398268 150379731 951507183 150102249 741676548 179120307 968847008 594056990 861755082 459865323 935464801 933694240 292710831 988175422 48818403 214070673 956075352 751963889 663477673 975060740 24302718 586911071 516037974 50752923 295351769 192537502 321997626 522920583 927581890 463650833 873027534 463400200 173206065 436906387 131653770 733000821 835145350 585294282 184289939 241142402 531467008 289213305 494844353 544253325 394907126 123899738 634378392 307314235 507283654 451422115 305906088 94838230 132166714 792029529 389339418 682652233 388815022 233178728 210050803 526583848 14655766 47842334 573984937 914148156 221514316 955274552 773907388 141843227 107578450 628738294 228465517 73278525 708029197 343976888 530123594 533760542 289574556 971138227 586036197 475691073 496516860 781053649 812566382 644062694 635794176 2561730 102192156 864926328 589405131 757334207 764610548 624757571 548466522 221450227 944384714 420476821 36200350 110466474 542537111 286944501 397262908 670793848 330665699 493720288 796136439 178770422 603204225 454377669 387262799 628436502 939741633 160688040 296441553 125399742 42384344 68963649 684810530 969941561 324050777 148349367 411457810 287355458 774747781 174996504 985130451 279456064 758433148 608106473 701499831 357932018 334527637 566798742 837832181 424967829 722798370 964156959 172896252 233575131 939905440 738101337 373880616 21774006 176991214 314056387 116546461 362479717 449190062 349521272 888730153 224211081 458955859 116341351 956138893 935999029 982217948 591154960 962548263 168070733 546753924 280173810 183437721 191112002 306606283 937697676 310904566 559535826 815555418 395500318 646921531 979975921 316061183 401811738 466107358 409013125 140152992 381574257 237422117 12050188 375978208 290450370 377288658 202795537 811764402 741874668 458786455 755113274 533909435 726590390 200768887 942691776 552908699 437339870 224045046 241172410 457868536 522503596 37533447 19746528 378221154 853393063 970655684 729086097 802329564 451458371 206200340 466512641 522126250 65614455 792555242 904716381 695104863 249512952 90580745 928637730 907526226 261580480 785563206 945335980 341345254 548790389 18085629 955330985 896560657 314884982 710748601 247037327 818573269 971330332 121736813 250722309 459185645 734088717 349813366 601760773 618706941 805155298 80623816 326154054 605199469 734008918 223947145 873146237 367107922 409845342 485875352 827328142 661727904 794549903 175957065 918283263 802043849 928378253 29982975 513734517 726873076 997605982 340244531 17525401 606131480 210083125 185291363 868487502 331247498 916863119 424303026 576765723 28563491 738227815 465723184 824713662 840601262 353042039 895234563 673767938 62209342 362800747 119743675 604663145 867100868 518564760 935520955 417282714 233930394 78705064 826610971 356371877 528333488 553963609 183989852 377972636 864488330 508934601 413807639 479457623 69760150 929455626 649330823 667505298 227351860 875215719 585395102 996208406 160623049 552959558 506206216 224198683 920512004 369384365 399531865 913907301 110003051 17590851 128859744 31140369 268420937 295261482 534519242 252468101 673657447 775244539 68520719 261903887 918043104 676319366 327331958 707185414 209886566 874380846 835701444 617615061 621935726 811530344 167782746 516026165 328623840 759307263 44542960 921186537 597862032 312359907 640998586 399460246 388105291 250686243 320472358 835633903 939251940 443686519 972848774 642048964 66693769 210046173 936767701 791407883 688930369 317046848 662513939 957828016 658251134 783809407 103099730 621606359 953108857 568556609 880393791 197630205 539158690 280266233 700334496 491669641 530774989 801003396 109366347 461801876 824611009 753846149 609536718 39399548 828812178 588498053 729590149 129378993 265337033 111518910 18294524 635099004 763748184 810355882 72108022 158220914 361661492 406565639 727902538 595094025 939662545 645338720 41913750 759630069 3677719 431352782 916439395 369823270 844201743 152800606 57651629 291660565 939538632 66781288 129208311 344968890 22660961 772002944 493427321 562738639 761608119 851655743 71953009 853208497 300403553 249934250 954426089 763054567 767575617 380600792 163864673 251536242 709949452 7170172 83023921 953585324 67470881 87337047 965787477 154660574 729157883 439679758 755512051 163868514 913476083 786069017 888026400 15303330 591922728 851005237 115732207 121716251 351880039 575478917 72832131 963747510 651861207 449996817 816720169 849830935 260755689 19554717 245707790 787790473 759867443 924911023 185443337 8155032 791679005 198175414 292780350 306074674 566661070 953609336 604611243 562326112 412070387 179954563 173953915 652318124 726303003 313919764 408092674 484029322 302097059 712073663 877963008 73101798 479018793 100773810 974114504 867640400 741836099 654309011 843882240 496615159 382802809 6251475 34341399 890071110 411164187 826017310 765114190 23052694 464953887 797215784 154886816 67227502 412880030 154643305 649758247 480088667 640302622 12335529 13456407 174072542 940871855 62695980 753967116 767240790 122334197 304204895 333476646 430895173 1891987 440710238 1691147 581133462 554395087 639478569 12440313 976438641 390732669 494659167 165696090 950050038 810002175 187756165 907427587 897500006 76706186 155614973 227727656 703762579 999126079 847582712 518889797 896883878 750616545 942567069 830038556 666145005 32231400 75812158 313387381 375429421 339878767 316068165 44998635 309993955 646345441 858101765 381473397 242506873 715556124 140470996 467755246 893204578 679012778 180318379 558516734 458754679 703449134 278708940 969957712 311740726 107505881 202947419 230422180 28762409 277929885 461728474 75013344 817002592 428672424 373631473 44708235 364886731 771294329 653298908 306709525 71563225 400460 3536504 614916939 738911361 850721983 660205622 312399739 328198418 579276939 303309536 856888522 122864271 456053365 557417394 906299727 408488838 10897504 72829567 767574876 952893256 680411996 939842061 644775409 246353828 731872555 101838481 544112504 96909854 519733035 338244351 703333189 142060855 13552696 951046450 283220979 9609301 48352711 129893492 576048823 5882832 148722180 189582648 14117303 15778860 191258789 86137755 611886510 261452043 137098026 721793757 575154449 45364233 992749010 743552340 364769574 601975999 2396491 563047052 909051786 131316021 931765024 285821881 939752593 396166720 649102781 257168108 497597081 733009093 523375957 10729983 628363048 939033525 986291092 580790813 964916327 778748383 339208771 430844688 176036022 99739240 90913108 924702713 786727055 35137813 312811903 962791153 228718738 802711229 278286978 272559096 371599490 745322318 27090812 99407683 320027032 92462840 667550144 441576126 839538552 917440770 478886603 298808865 118016072 676012562 806940617 451630811 430900841 392885757 600787185 55614860 369931339 249542061 359031904 350038905 19294124 659076891 258847033 853119255 583528461 649192149 482577907 299694479 894402382 734347835 904248664 170227876 342684894 249636620 940272147 578248856 457773300 520385539 523792306 801513645 27212233 412491283 563259755 441009753 585032698 45276864 891516063 712288203 324203975 360187127 160361136 704975773 899088576 44554208 92743250 405006287 450723350 469959213 753014546 61071901 582295367 359037523 691399970 363206657 877939904 856607723 767051002 178348902 532490986 153615637 999402105 672446763 762399554 377337005 143155164 996888465 55189086 656802108 361664852 711037833 636542474 501031984 906929075 650498016 122047125 768357089 60466548 304811251 883766297 587958668 538194538 82316240 305982659 984589912 433031434 896942168 909111204 779964818 695452310 843661525 361672362 303337278 991666917 992866666 361394076 867040315 728136610 187069893 159541165 788777530 449475093 467517275 957300057 361000578 345670710 38061798 851095687 269065244 654854462 639184913 418930008 753168094 96052034 153028501 939366234 486466681 602882289 957758038 410638037 724763880 235203160 941154678 581416572 238035925 324699498 159253467 758995073 152944799 995699316 353427735 994657760 156350802 761011985 460155276 361605224 337525179 171330503 272397136 114229488 649556964 698869973 805258585 279363170 391669664 26381797 48224576 341872817 710929309 316218224 969295021 197469677 852553685 298647837 477207712 116608052 161032985 37945104 451666805 42959184 162982715 278467714 523701096 804997671 370488241 452029718 352800074 565870198 844075273 911065577 644198797 161351021 986441443 667110805 926860309 396583254 829926516 190324912 140214789 979180281 372825720 388259501 705246975 952248737 192673358 130711241 58303555 847616177 734312200 930118766 18319631 71842170 789661596 780435852 88929313 638115924 1000184400 741544496 770281698 314474461 817476778 516598028 902698990 951609417 325505968 873163297 469503976 199629833 659727913 818551385 426042226 384216988 868924599 441079293 251089695 829784199 521067018 492496622 315385909 568135249 444896414 658350508 817329145 5590868 424551571 218219829 507664282 916855373 361520025 487944428 981421212 225695473 666418360 349920096 191479825 8786274 367698323 558196087 927810036 559015875 184931531 720940699 737470318 841882200 552698968 580496724 187682366 99762911 390304086 136493591 682212261 290914422 471514447 932609638 683819794 328359160 16304376 530849394 917852621 112480365 158253931 638598150 826105409 378531042 153803614 124631988 482393348 611100687 871482788 499521269 455380142 365033571 934146814 32567039 933216705 614143991 76348191 40251059 143742635 304722841 311222088 917909558 793873305 217779015 184796424 461775016 892472995 420892276 724112989 110066360 663897505 47324679 548501249 683961874 860653954 32637748 716555249 731271163 846427976 705033664 916306114 97315967 663287589 663655617 824758904 73853846 59311875 399347794 395578555 99385596 236201184 671674352 627366210 840994378 67377900 154804521 875833445 513125236 776612122 993670255 129728709 988245707 132355895 725099334 140770509 702423895 641300824 309495664 329394494 652904346 247128377 645490792 824616830 14773855 672917591 791670213 67661208 141804541 952240363 638557243 950029236 289775863 366777046 250386046 95439244 722540480 884952955 331091607 767577628 331828133 573262089 578030858 462603265 990998370 529902858 468599968 160167605 831204068 552039808 25715213 553538948 152261579 22012674 85567534 764314671 932979598 293046043 137038616 98124148 515903025 820376876 330307370 505664011 975601473 997749388 787136186 343410558 530472193 142105611 451445740 846162193 500772503 487943280 72896919 783637805 414319682 920527669 636908554 43589700 870649570 591082018 745057323 342791966 872112090 441758621 47731318 714350771 738444247 522502223 648191150 921580077 723989071 666085385 7423432 819009965 202598358 259276651 830109466 250480241 532156753 982498874 153718838 113638244 450116686 490185816 968799134 701012554 648747929 535630822 41933490 258379571 49043863 451663420 390700023 438063306 211571170 694214257 952681611 702208344 719249198 72509969 910600625 736031975 32726522 671540094 251275002 555734767 374843194 736431976 534917818 432355300 340332839 862079045 329957173 962512266 714691113 100539339 473431925 581871200 267966319 665797232 683669294 942903896 238457727 806983346 931295334 95509183 12539473 197041636 366879819 348803599 709603188 971580201 960660755 111716202 445888861 386494130 422136320 938457504 433079463 140778128 484586056 705711068 773782141 756982571 994511563 134388724 11613396 583834335 147375962 454394420 943628238 770295879 916393842 669910046 73962806 345630683 590419104 229958160 713300865 827508343 26227748 220751185 493671707 545287107 453712144 252731677 65527572 441278743 606772364 954591418 324235527 215995331 75746635 257861781 664273667 741174049 311849281 419180891 237349620 369712608 342403980 769175195 132397939 544754661 608066956 35844337 93526885 475149400 623004134 186189184 517165586 393078992 874686840 476493026 177850209 841983749 841225785 453913096 76680654 698488467 732779948 24617852 565759848 88040789 52330721 459396778 2907357 774814528 221183340 173839538 819677797 798705538 569881537 951030308 951275516 396390507 319035163 913370506 127554291 508692800 553568835 358256453 214203477 92225184 317846636 663838525 322297348 145933804 946168946 931564997 221247679 593916432 644642374 812438076 351738576 71253809 872570557 858752928 972266127 5133878 721155087 395337218 964510716 995290799 347109336 952094988 180992008 163357407 73773868 7344383 800010741 523056612 991202319 519135782 802327974 785155058 308136199 232774609 904543708 129156214 165219492 724502370 825456126 416148704 74355397 549573199 716216058 834781725 108811802 298016820 736646857 538196080 384512496 15356321 809829148 132767872 712486453 459268494 170419278 607285379 545402230 795614490 326513741 663962313 68754856 225710481 832063494 351292386 56128450 189402950 505278190 766586840 329406397 890407389 879406178 914999047 361697468 947790766 756396397 541903323 559614059 653750374 879679034 845838715 871060457 373419980 326412232 965283303 610379335 641088132 385178685 550008746 258572865 175454133 539576698 707734626 121143633 804231283 746696242 782828180 891683729 696445395 768358867 421112512 565450804 677839530 374205758 259822343 190305498 36846749 606196435 503660895 844605727 850782079 508547200 205669509 195378783 313368893 691132190 676198728 253092230 175508450 380384025 819431071 85810667 13346630 507806212 448667382 415797986 827804331 594622820 603088135 148845838 142269294 801582197 504794710 551368611 780093090 368713158 357061247 120827564 404340874 743715869 753577438 686149437 293897038 474703372 323384104 118919069 15913298 964979207 899284605 836712953 287938076 317355349 902603632 247129738 404654924 996119917 335481240 956013570 163229665 148378178 205029320 187856648 551396334 571300904 48031027 40091448 843277874 686425627 427409959 755653216 351832455 350877939 372356109 735283639 240767116 248847883 864318780 167476127 206574585 447709890 695494284 548580215 784382605 210862274 198459218 130649893 568448216 616678426 656034762 683650979 614285505 680736389 832845226 437423295 903317001 350522002 353268126 169129528 455065425 47847133 151662646 396755350 858205679 780772359 753081523 803226177 53927646 98891637 113460839 714171230 120397833 860180622 248059359 517622721 747420080 640721362 261245834 431218123 934674824 478696792 145642462 484191743 639636986 980320556 200473962 768368487 815002486 987692840 819324575 989374762 254331365 641933269 133822968 504039171 572124054 188514912 565362559 470274402 292265206 777934155 709548311 821441144 780113147 391329945 791445166 1002076563 277141444 296457082 285125619 511007062 493228798 630267645 780561538 265767669 321992028 653165082 48055490 43807780 165890465 567073995 495271391 712391934 191266773 229810735 513512203 346061498 772684139 600000504 283551472 878098475 538660136 143509601 210903538 257751987 223712912 971333246 201538235 673756614 497578718 168306432 664157257 191017443 228804633 343165935 384301797 785471541 79226139 735629897 566782930 733933536 762048198 846442034 735246143 772120512 496526211 673294319 693674864 136314523 646627974 615769495 32777579 951751722 76921073 487777847 696711672 383546050 195280205 297930948 988095612 940091341 380487235 549094595 316758630 766395751 548915479 445264284 980624948 237474861 531888673 412971334 870233253 669103068 9810544 485361731 924649707 134119923 62171926 910476704 341642975 411379198 99747412 839384278 428015284 779154061 298779550 820723290 418375019 587842879 146288604 290335143 176066615 247504513 684745166 529677597 747687332 766974352 428550331 247686469 481048660 864840577 825467756 543783969 840685034 460483749 179497242 854432873 506690874 115155234 105779230 101206630 935695719 189422282 640522662 56586140 442270630 201056345 735145969 917683600 698973023 973906859 581113582 766055463 959274009 974541284 981453461 1566208 393556847 480346435 922020408 744309978 167782336 885749664 312782050 62203064 54487607 666101061 116119486 860908075 184952449 481616108 58396458 42494776 4995092 794968031 324301090 832899133 419639417 415001714 120320770 595851616 861528169 514522558 712990478 829083009 511619362 904988363 179049965 621453896 529080969 679428225 369013926 489230384 839294732 701075876 528321850 518912100 143973099 283150769 742182733 715365623 895390098 282616819 456079750 135802871 116449941 205223828 870082800 374654041 968797334 96340032 3140417 499376938 497532296 412351423 927696130 298435532 406774953 864249 117612096 999455413 343241403 804605209 419493813 761956574 781615109 666452247 198527366 245929461 819284163 193754429 667919670 379602756 58289750 236692165 922515155 740207458 243904765 439970988 186582380 886952660 354813129 118867696 47924603 110084693 185360183 433533182 401503462 21262515 142679832 52622773 47659569 77750260 820044284 252820289 619704975 445031839 57053706 855582826 998397761 111278583 711902704 931384380 805144263 306453536 756534691 673168944 69863831 622384403 110655569 869229389 581505906 281192213 199178392 670042415 226581455 490911648 897322826 246746751 560854496 27250197 730168156 960341974 799224195 144530909 713778792 441658891 439973250 817963051 539702251 36511788 2935100 522469473 437875989 239331039 986141719 857454027 193719126 755590978 577343540 965806431 523809251 171548104 817071062 260539653 478235411 903030736 167065558 626798312 478234795 546181313 14410049 104204917 2467927 645459899 186015742 862752701 209654483 330241906 800301300 593593483 774743188 9998739 184396326 48328373 57228416 179964846 440229051 322733891 939733715 408798486 693166460 1000299120 384639414 625150196 421075878 988968111 583640645 108217029 538598059 12795802 26813243 902800077 755684290 106609127 178321402 888270605 13781435 741855534 360790316 865176938 278632116 409893058 589434083 562038219 10953019 227488256 234832696 344880503 464493314 621509162 379556514 503825330 858515887 415794968 144154269 6312961 967132107 769838095 313151901 705759327 969390433 320442890 90223615 473762716 517849482 861571355 836765040 570362375 228993103 907259045 475542119 744073159 729353640 275998451 171139126 715255494 397145943 322942597 589548674 2748723 201233018 951611509 137450869 671811401 178728924 766490894 347898883 538032691 632830065 913759367 889849292 548321819 855338831 330114174 194662552 582534086 783698997 870687082 13824032 829879117 822905828 860934050 149680166 309254130 193477697 636834267 453345632 751228810 496966065 27858683 626294874 365936316 768289212 394636217 368110748 436486169 164382232 110392108 518684106 118850032 663699547 17987727 465321609 681056311 124700039 510373125 900493102 722310940 838731864 626969032 557939799 588289194 649872442 56550601 139802105 794664352 993810735 740152975 960987161 378627806 132791130 733053967 787756874 911898531 34185752 990713229 70235403 10113299 638717550 316088194 333179100 998326867 486310141 141110555 907941652 813989672 663289500 128133106 859752550 171084978 817145722 908117391 208693483 398129334 240176287 46670483 945187878 501544582 456711524 457070841 57321730 260241632 52524176 914530436 192624075 726226134 98994234 36136704 50636248 755676256 43772227 498658610 905390624 757872217 914411368 378857358 226373978 130893708 204105181 911157109 906704824 344354364 388114462 443902966 143422931 533604449 795014974 679168739 659125401 84623951 933645111 194249021 338121164 58998546 658599447 431433238 97287976 389941467 134827658 980176494 789123401 144579146 373419292 778319090 601802967 1000135384 111349750 987229179 8515048 38623926 51619593 612994388 712834644 416646932 549367949 459168657 36086723 755631443 220581324 761367567 423447464 388488175 885682255 391562202 148181294 236714512 993455982 455864699 154025972 324924829 743988968 78587622 350725722 819768788 61094638 549457105 854425488 73321391 22813701 757058321 915955655 576331073 441104997 728227427 715706239 311163813 57417895 371889372 959601559 283416572 868925782 855100245 109499106 49716931 791997744 685511231 832574865 705328316 624737913 373019232 952252298 330172103 438692945 73402350 84340334 423474463 993026455 496593897 96707160 77247879 247648326 810234492 247460840 857677266 139098507 509618955 114840803 388585303 24400184 492913750 338952914 93540035 576730440 877422563 295727302 121863551 250353278 525976379 66378082 735179600 448823048 732737651 532909248 638334835 487822718 402399463 281573651 692426627 757313473 783979744 499874712 825251063 242957424 989401734 74480361 10030132 199509283 190983091 502711109 617961173 546634696 972593106 751262474 737647249 195518151 686929938 1002243663 459188754 610167064 361837391 83526307 528728934 794712825 325225089 548392147 237485142 462641587 794611141 168259212 547033511 67656636 684424569 64989964 289410874 342557198 121094633 964640767 998139144 308717142 387987595 566213731 248987151 581294704 788516650 491358773 97430512 847766086 811379607 549683650 484034570 93468071 800595876 964467357 854141128 300939136 670285901 405020699 747421214 928839958 830095272 620926570 565380084 959083674 288245996 974049690 38119222 672842333 170436405 472824939 667104699 501387874 65421615 707854396 900189730 514498479 410684078 724692838 515171339 267849592 1000805101 959154613 244198911 830915963 540919176 267084819 594986215 218515906 269795573 476918394 470596104 553784038 466681122 914388643 428170695 655190676 460069420 688783040 96053807 364590140 713320530 835016077 871653884 92669382 307711567 275414430 326556274 526263243 748079203 351301505 311873645 573857180 398777715 133196072 470000832 411174203 2745512 80998563 940419696 4850309 661540125 762068254 381241762 646852340 558049215 999497876 825256122 48708938 731370558 700739834 796414455 341937122 178658317 401972753 66622838 797706405 130485692 647968208 442530901 896369285 211780007 129141901 296376006 273559540 745197603 181039187 159663398 140106114 468474369 952282670 289168065 221547461 357196631 70754977 115257284 763908834 75224631 937063845 852972470 951534896 420991278 324073413 72118658 384052511 299242112 371792168 618589556 904534816 8780033 145146995 69333724 839434067 194512318 213667583 625869315 161927653 901312708 183940439 960212920 853554524 323587503 889229221 696841250 530649201 912821373 151302 642059051 277784214 990508153 918200968 359942604 968915123 405484388 671536765 59508623 121785597 353241520 864968376 407239108 715036781 808072235 458557480 811999062 368221686 506776696 54089007 247467894 823731454 311566480 881495050 272021506 560956817 375938099 14186125 328585042 46047083 677312748 282499421 708602427 311649672 640062361 141337346 413906378 582703347 546476195 326201218 848050871 891343367 140996667 659289570 293945568 972018114 428959697 44635679 492910685 630928256 133831353 251595022 318333827 49356661 51784599 90517186 78450515 924812495 756890872 192627427 177195436 733075260 839506488 925762010 832802341 834408288 721158823 895428604 1000727101 956371701 640167756 733603853 264487624 857714102 495693201 374129841 92160666 433882501 997687320 446054561 993453790 781491705 403017252 525788946 136489819 410024029 140780003 499809089 835547562 106961217 502095132 314972631 505628387 961624371 674297947 945218497 586049399 299051575 389085087 175273267 371173755 724942469 375391733 266573575 765421670 465939673 314393271 377637565 159481291 754357417 228424511 957075698 842294791 485656681 518121143 847073744 508932841 631074889 421347954 226495449 899713881 260381778 267015286 136007118 666486594 336685639 336801303 723314563 253283886 137862288 602793641 439092567 267124033 446916256 569477040 415882538 791077902 508614332 741567596 916864337 550820694 902383141 666318213 734476964 534976480 201047951 666524915 824920440 79803476 881704123 912573480 370864847 662139716 451517592 982125631 169899464 36582023 628110407 570941248 432709553 11978430 398293230 538492725 573264345 633501091 40231476 1002175592 746513119 888328513 94788941 956391761 472719771 278938325 228074312 410974118 944414211 739849765 8780581 722269853 588442075 261248672 395170569 310146335 783289174 142303983 49098578 623670460 856406663 575183858 430784328 4643731 514751853 34904795 188451952 110001134 564223149 293706516 145922861 83680109 312935656 87593638 981999324 274405643 987351838 476062018 391891817 184487799 151850438 684041004 972741791 524425844 340295559 350850785 390857408 9576877 976356653 410714472 608022772 907223421 35024239 165857638 123913838 568549929 461286739 930209408 98141063 682650970 518245654 44076261 172211081 606695026 159963725 793317251 854909792 563263912 744794192 258008573 463226062 540859682 544719509 415027761 314067248 13326081 773940448 701515325 490421659 741851747 23350748 231655532 109217904 14525066 959808042 524454510 622129642 203400798 543595396 252458995 889132905 469194735 375430935 124295248 212250968 208873331 437721724 160021363 368675752 939426080 687253151 608380511 199198028 392631628 228201386 857796089 492855817 274261914 611617424 866812566 567952773 123510992 493514405 992500030 36193433 39596719 595428269 386555038 288201409 905335198 397813857 836445856 926284002 528405155 589457830 938176878 448512897 653510707 191118842 643750563 600118125 869525952 599847118 103979605 392582699 957429843 847359659 735794531 844780135 692274547 903786916 633991950 49774777 521773069 648949672 451450968 261114323 172466422 269696662 789615070 521152500 566751993 278675014 933313291 39143446 43519885 901914244 113322820 202621834 843503950 132538043 597871930 863107576 852790155 821551382 35556798 30721059 548167920 878406187 265926182 999992085 304235658 482913510 188431712 87934284 696481155 876798348 767047876 178697696 438556786 549497962 383803062 251942489 367300725 246391549 347815962 505571598 987700113 746663614 2653941 207731859 599714325 843503262 154454586 928878071 846608077 263840706 362809356 49359210 278124739 936622923 647783004 65655775 487380737 262623189 506300788 735650509 291549797 968104707 734302121 595094524 493468848 166473420 237008594 883046427 168614951 856547475 319466571 628036647 851059105 639651890 789228827 309259656 255207967 1001501507 628498402 868111868 541880250 44684457 551408918 719341756 287001913 321134666 292468678 742484283 958430092 129732154 175404195 361017800 720309000 952429787 755641690 780237343 876230376 747138807 210805759 572885021 339412661 652948771 575723072 263955720 369931915 881858836 365246060 357106240 126671759 364069109 404074111 338592140 978551464 347098228 679051978 297382 360126373 194807668 18361964 531442201 295500012 307572814 314659542 623828874 182593593 17010502 299221627 560472535 435265137 449448113 428009564 597820803 891007354 886653560 933340808 368187730 348895095 417447627 403437287 224497720 111767326 351603000 62580168 32759024 119503702 937976819 474608642 910899107 19637334 817747186 210253073 289257064 680373036 192251684 6809989 613327934 892674859 229702988 333473552 593837795 93261562 357413970 364858242 404467356 895519414 846306501 347763637 842673261 584966981 755411279 630521566 57844309 947630038 165359755 338861982 235692789 303914560 618870034 724709075 676385621 806934744 319779479 874809708 251284661 888362681 192622249 14982973 846518591 330863202 522897202 45570108 456504339 376517211 976449709 955326856 613171228 807086492 52390737 379779113 797516799 740319986 607083676 286942559 950277708 453837391 425028518 101078264 710810080 335835751 722852973 304537507 586323743 878104719 919977288 811233327 308325049 216525813 835685442 485717595 879877041 83646984 836105874 418200772 793468835 999163997 537952602 723936572 987715024 805582063 742445136 884654932 638521723 960237517 336971978 284077907 795621994 565979957 141428740 250035638 923871807 529680609 835624309 909040898 943122892 556035997 279433670 632357785 454660187 316324009 823024453 617850341 208486953 471950421 977747277 250405326 276173196 620702311 229071076 925629357 503101596 735751526 106072430 297188273 654758830 678766198 351160496 267362555 586007330 344009107 309541694 840716164 58048337 823842843 52485821 649995145 369465633 192128843 213592540 473119929 501224843 796931469 498165338 838986487 157629939 418103235 696623591 121731639 573873532 639404176 307064597 966707820 283617049 561638389 529680196 918514303 970674914 16997861 950930652 948811536 694513416 189375488 803472613 222630106 103929133 767299332 24376270 258494435 939028278 945399728 868607371 817090034 769531581 282669041 293140797 293314657 896723518 778056872 82792443 672649407 852518119 834821620 24391049 909267390 900508907 230285968 254281387 985988995 910015186 289945033 21863241 33205047 812914213 381683260 901349044 435450686 564306874 887999258 414110773 391312084 253492961 61307057 607649549 749702335 592602083 845780107 35532495 589577868 846532086 874828203 960154094 963956212 237630865 849855224 829964674 567621939 572635554 321085602 489303280 846693834 197744291 283662773 99812442 798469770 406438898 444287446 767207238 158533974 813619167 736490695 305775709 549452599 905887892 411551415 958163631 666891917 698924885 846360139 259037340 137863594 89991841 843758433 154170459 114417038 549453938 770656746 476368350 536513387 624474753 950358461 461100034 103260448 90766594 616729244 59186339 720596546 411319031 888677015 211613985 906301317 656222673 633754317 412896960 516454968 916359219 190365009 877889048 797017331 427636152 894998782 385962914 621357876 147612572 195929323 936933190 150312061 311197039 325093723 823176853 247518433 464529514 475495403 324522061 509473395 414578583 121798133 82235333 544871913 625001760 697686314 941830952 754354365 489631545 449503518 383395953 854936854 722912808 829028830 299024182 698627098 814962587 304987969 362809448 437429812 60010480 118914530 46080398 536225208 535417976 208404325 362722027 957086320 714920319 307178826 999173245 157446728 554281500 339267471 139834959 735685213 7304430 843307142 375231786 171295544 193247818 389842649 291038678 918319182 51900530 38452279 959643725 759757024 145583741 715079902 588260723 786553496 852863385 289878160 858284800 249302395 46517959 808162385 115459375 817606666 826608143 118460923 991871641 673726837 275881025 789400623 906919945 434209374 306298409 914162925 934900463 856290056 921238500 960166958 386982240 328932620 656015237 975179255 846156975 710397214 643398562 505523202 127793963 246501456 448737006 462374287 586351739 203936685 483341289 107870762 732607224 955016159 310658852 875265862 143647039 538194036 671383216 588308420 3608161 542061186 341483451 913334401 670017273 540897360 434848064 32366218 847058855 316518268 435428888 439334998 738680874 231001014 887885112 935012168 660609986 409889315 276538803 687344537 903148659 189778488 7418035 928063447 152012150 945034160 142766831 9113409 26173853 136893990 44983231 773070536 750411903 343607255 296128147 225665565 639612438 837070924 721890274 903030404 543359034 150350615 994239072 126854689 832735406 434763143 139289583 144738582 19256061 537822887 548906817 231117904 841413072 221994060 572144779 980821427 71964176 529766173 369279889 359003478 142576467 533307682 240472622 455152185 246557224 477704608 23011021 63880967 162500593 814027910 78054014 993523145 441756371 886588234 992773162 635300327 789144927 128098245 587968638 23621872 411261165 462400836 349133963 516933867 210886997 869740111 583325382 655375271 390716161 284746018 674769091 856704217 827347686 777396178 505769241 629564583 148267272 790356686 436775401 585538553 712259405 382110032 979516236 8355397 882383877 874194671 786277910 117606683 353535404 56307329 454225938 141673729 810933370 264155955 281014512 106307700 131931632 680547021 833261609 414120405 964063101 172998756 742081324 723675801 288500227 905843816 99473710 536773842 802459200 733012752 696338778 853056975 965833208 819857389 889668756 903789870 891098962 117740942 960072871 970917655 974334629 49111455 596169786 189533686 528923347 969167461 638257717 696106118 970061043 200005802 97697994 108324006 360386463 228986678 754379669 375911238 531127713 358362131 496029520 533962102 682802369 386955129 739877674 41523608 434731932 285574753 920828971 964951489 994058695 358019642 384753985 228833452 379165499 860295578 734335356 923882028 227656779 754158654 349872391 628890184 550601018 993737917 867209463 172918870 447660577 495650975 955795879 353816329 421914271 230546549 668895457 502635095 731526824 208996932 277605573 19322752 645550224 891595049 421291224 173443118 569901344 655881049 114841946 518473464 337035923 243434392 875255819 957061155 324445648 929746618 868677185 758925484 360569654 50790685 126890528 324094925 84989457 81492835 327351635 641008529 489257751 6977802 680067480 563660843 297737785 414628642 571283857 186414129 786188704 991913986 259945308 550354614 652655564 691501908 493886187 599338944 5424739 864568148 339809208 682787422 417412138 32029552 478829737 198516161 373027520 353172463 568978280 590419465 891041314 89538672 562207791 482555860 359994175 190556542 17417435 821962223 610869025 740655945 595980705 840037015 547977617 850240593 984284650 951930564 639105039 66543604 734659761 288562856 959479715 282724790 18423492 421389672 987190246 799456974 255658278 475945207 118557837 283801024 835414401 256087007 708446485 165857844 45445194 840151465 87285317 389451767 440753037 124415069 663791040 728100153 455778774 152867477 270259674 455640883 416471301 276030645 589945584 865685856 339205697 576697420 558576757 865618822 339689954 97694120 395293581 333927470 109004703 895663598 302719656 122722715 207665674 365217973 552899259 991855442 469062393 88677848 186142437 22910753 62851300 511351967 778140359 104102329 974946095 936545627 750968722 564049603 983921182 512133705 120904384 290468411 917815899 524924239 606505088 530816613 226043434 517727482 848552116 126654018 1000998444 489978321 611721396 565495870 932146706 5737697 580016293 653337477 287649954 929890876 179144336 544481590 742754433 779143617 522855503 143824385 266885710 439381702 157385337 767995460 170995768 536183089 467010416 690941430 559768924 212342917 23890722 615765143 342663020 280718538 555216012 975310253 918514215 206967565 281810190 514380875 504367023 403473477 555839383 471300583 916364795 948784964 855592402 921056025 947046736 342382688 162512451 36805853 648836864 270363048 357780501 719677554 807658974 108218377 699265308 399772243 635890903 324777607 42995163 612641652 92983441 410270544 426642065 271320332 355241077 963970561 619223800 521946679 206867818 45638421 633383563 286392127 564855744 11789957 913928772 769312898 757811012 160809599 240617099 830861593 202279208 677129112 537550877 340840227 752147521 740888164 47966962 213343681 854588423 244258436 868219447 593144298 439266926 576075806 634577432 966141115 966536905 628358903 467869399 135574198 830187740 165871348 919392851 678824996 827599993 131160686 985025228 239858086 637630393 33519717 513391909 552989606 657995160 169140638 798494476 475379769 218212779 651358715 134704195 982364723 266859424 896331075 89416706 400455782 561183885 781023030 1401523 934828588 24287751 461687146 596068060 43513077 62626022 154599519 316252111 695391837 967791746 146086353 894682339 392042613 818371199 68173286 80266825 295224735 631847319 966535504 647407589 420956835 947762928 721995831 919940861 109040510 702128896 465279529 190766221 464229819 893812933 492713742 36524069 146159746 393477182 21867193 7780963 365794094 706640728 247419783 309903928 17294923 220702663 590144744 39032986 599850483 86029898 718728879 931423143 181671833 819647873 435136752 810224608 271156682 924259616 122504063 605332677 186115692 129267632 169989035 712445322 24698417 477454430 304226327 493754805 485477637 411365626 133003626 516800220 146421114 398961301 605850223 179978068 508431618 379474724 332634204 578678492 724561412 76326578 931155792 683759838 36820800 127062328 964686015 129583042 779121777 446563842 150249936 236501245 986437871 730006423 987822195 439883800 690589182 371415014 945530676 884072509 702066897 653345403 886273198 555729320 536493741 904814110 77207980 353460393 886940592 997378469 590576496 797144685 694329270 483294194 871240583 20690473 466611127 323325411 188529481 919257823 519243139 702772 575291377 550506503 486407811 519124639 674000519 127838338 527888653 895060832 812684303 699116356 927177708 7599506 918399286 303641842 61263798 897354971 653171736 962953860 723239211 878290073 822987657 83848915 251687242 533498921 976053045 124376288 717620569 811717722 916185949 318295441 815221463 982064064 48551862 52683577 103283925 248355527 841950008 963546864 499839703 81520952 524457429 138183121 759202059 325259479 138846022 209261233 170460394 158253887 927017140 128961143 10319268 698511212 57647483 522024545 833428949 147235304 249921074 306726261 22498724 465793535 519585959 234292114 901436791 897266807 539435834 18854177 632517534 704065522 797261847 250067651 932962787 47408717 1002057454 835435698 127268661 522240075 966382554 448822886 813885055 389708302 451002355 874064706 900767812 440178595 840040130 622409256 632252295 263128366 125145278 750210618 425007985 107226927 39348352 871087206 804324658 730670544 611294786 701067767 136126267 284451292 432176672 320831657 634428330 990460683 660646120 696815845 183829699 430969635 232265754 830670251 78118758 628926142 628925543 118041153 815656057 289968066 335194376 564534483 259555948 331383916 834363835 277176105 704760629 189882162 109373582 312459443 876637992 829578447 228915000 68597199 218530248 663505958 527791325 638611847 625628811 821296998 55201606 973634155 470584168 900492569 718349000 380775095 181592602 709687374 814358195 894912159 13320684 751628430 880771833 63530037 978200469 768436839 866464322 34126253 564443526 987931958 635660634 969341928 466732598 811385364 245086494 668928381 484015493 21585837 360745219 8228723 818128228 719562316 586139251 213773058 101792909 761924226 133966491 806259160 665661944 403107381 801616918 373605399 677533920 931017229 777724482 671737576 102940054 348173994 489430289 207689288 520858197 6389108 481209677 19954100 424888884 380144445 661183032 1001501987 877963162 105419272 282944829 637572870 641204209 501578905 282487632 661427718 402302305 615793358 613952304 49428845 469338855 670402771 351661401 463855173 32124025 153344987 365739697 355898821 373181096 985784235 127030904 317337790 692713442 425723077 837885178 57255022 997980380 795626842 689309213 887158762 151978376 636577891 278082763 859429240 644689531 124472514 254503607 14865128 118448247 734008188 557048766 716761236 282750901 48081356 625117514 718819424 464032471 347745316 765278699 17367809 380136827 288928039 580909448 779466462 50641605 122494276 43267861 168927038 942761229 324008963 325008773 804035375 387632184 655355628 231203242 205519732 621719359 297382044 92676538 398958558 15863135 265204684 710003320 594535298 477512986 684042885 505201569 149479181 112988717 458303663 256998696 996662489 520666201 147192666 839572514 136265027 224065767 996704120 538957309 218758638 690399937 544088343 529016309 181797991 746769456 791417985 801044126 910778277 349463285 534911308 453223696 891917948 624440856 881796311 583629068 602340318 129531601 863057829 777695402 35171308 579193253 537153487 245401946 593333428 154938578 463106823 811146999 300949560 79452872 757161796 656062965 302177577 288330317 996375127 168464475 605247822 928935839 233300227 995596948 996312347 10902228 573301717 417262232 84842215 866253248 43772480 600737514 614685354 859986054 445382896 171146006 774809979 251115119 402824659 829057147 447330794 952257350 347263896 674363171 261786206 637569398 766002295 849663200 282347486 591476316 268388138 610006721 270946750 106870917 786974136 980276447 250855653 4390540 544004233 513816469 865024069 51123089 505794705 828743055 524082754 356603663 777480239 948096290 770641222 710829454 467290280 598067167 166501507 821297594 778656247 641230885 186490465 463208334 101367470 595214315 369836063 570249649 694207692 578284843 179516230 933676515 361714280 699299340 860170769 614199014 771594690 94602608 382514691 78174719 168923602 468462742 703510564 626502709 827584722 150302536 539818327 478654125 817413649 653070948 270472843 785230803 831869533 746186139 460682479 594505637 218302151 442618816 249330544 350506408 160926931 703712941 255025405 350945165 639509292 311893082 91583660 211548443 707659742 273701554 268338814 763977491 443732030 727301573 703960148 304966536 389296750 125924863 744484532 279372551 887375698 408835050 603293736 458706869 509763775 704632514 21953686 600122639 249978189 383349624 308170845 122386839 370042182 795963385 795844688 482095365 537741784 87584975 759454370 638084563 236871866 803717160 2884058 224403036 956429105 728868317 160681521 74025600 285285117 347364858 987006009 929514877 26886942 431608989 544658451 259645601 479023327 777014648 125005003 746259769 92001985 229368187 992974396 90396917 329825546 854766750 983733923 505533533 835696891 746040798 509294566 987187086 408676378 31936085 843989857 276670826 599685443 783869216 732121465 736337480 438652144 384802921 37489283 6392019 511081599 772999507 730294292 174585609 987171601 337688311 368994569 506544253 985428632 689682966 198369091 599575308 422394306 474516887 823865045 744046300 516198622 15423004 368047921 29868462 385390977 308723573 182048810 897231580 963029439 986684890 278730458 317232031 326564717 81144172 473607364 632016305 466888908 317334316 43316293 155066058 320835458 514825762 59462190 328191712 782009651 156327194 874859342 876450794 911215451 30006600 354570939 856702690 294520610 509584531 799763462 488488971 51126343 298607565 535983569 343275386 248476200 745674080 983944505 965852429 879870092 798541963 392191303 49306413 675302964 32817677 271147857 452813107 342264205 705752368 642029252 810798007 944783810 451812095 214229095 229239558 465876282 569511405 431130726 434211422 548705393 107678792 701956464 231971835 979384719 562125976 751278586 429027780 343548834 144618138 721738743 177882433 776803756 864665496 919858196 306357944 416715267 941130682 837809057 514065777 181283311 60005847 496443870 89105274 133057621 591038734 747823420 42956166 413423413 481931585 386225654 152653587 451778559 235971822 268117754 732855974 397892926 884462836 936864183 126225163 433425096 655448625 558387589 818830023 755705479 908810866 495327523 486046422 37304316 11668870 227294318 703948125 466451154 146635629 561914361 961768348 141086280 433473720 980523938 552034712 395790404 850451156 607625526 817011921 199814479 974744618 895916512 224452215 736022540 207795313 902073606 380646275 281235542 524817071 746256304 29639158 484396159 942070887 865316513 867504390 584459228 973804278 190640227 789795020 164929960 990699890 214084770 777375999 118407162 416349189 17567307 705985447 740239168 954991250 411347805 844364718 422273675 984871000 924727773 680637738 459420240 883467625 878846267 956912036 880175414 971146533 891333074 314706082 696696272 509530506 14439904 507442687 693965063 989672844 490777188 907855650 241649550 460431288 530694839 789813816 631303347 388883801 163804475 807019574 415362476 629831293 659544311 204749508 12934297 408561472 200841083 990780815 373258138 30787450 80052896 984976381 837689519 728412925 742451088 392335338 166160240 814115792 953369062 255218807 359587315 891814789 612118207 74328474 431376504 549549427 780809033 608838882 677518943 469335586 899877706 103634028 26165296 417602467 333973909 36566759 71265827 737706793 682801725 801253127 575005859 521699949 960036075 3365704 815048311 578718350 226751971 396527552 833570064 909539847 324126715 449468835 583130648 731536220 206840672 525970574 118552216 286806496 628418459 615171194 746869232 443886632 373210325 363154218 621250016 909307239 686467340 624811303 671491078 108084998 210399797 392284278 841944812 875900553 190961684 606437233 848670740 243047631 370237332 661162505 174883132 943870152 445319296 45759898 931309556 599048153 121739724 238712534 561454641 426934197 937735370 703011043 914099315 657065624 398082095 213059768 65234044 440922552 101252994 113445656 677777379 179114350 740929499 913257274 9577655 103199615 66131572 787243247 136331023 99674473 422186449 652140851 277262879 827193678 660039846 800311554 507364563 199803937 473056279 231594180 355734423 276511656 844480418 896030715 220661044 331425095 912995861 597929089 834901036 276030820 784656998 396192700 733038875 490353773 660841290 1001350725 515652894 728544942 157130957 174911874 501126470 748506724 169084160 655471135 392006740 176528225 719280559 353955200 788917477 206763255 674019855 791687664 218046754 403004731 692624478 744940598 485239022 559079291 770729487 841069053 96602255 647941989 661915227 739498187 445237004 952315932 953815729 134065899 84959887 359707067 170526405 975020745 667902461 851924271 820849358 227387668 293119481 601313179 783875155 536942521 766300671 311785843 703172420 208138823 719342374 17182684 580030921 523561751 712258030 912092501 49576307 608702227 979106418 327433317 181057639 206020526 551275821 200304669 72095157 748438707 448047015 629710389 752989381 336939342 699170976 951888778 771201687 238790243 494464100 773543939 682017048 594967493 326899816 473317414 812252196 151307354 695912144 380997928 447223196 340935406 878167710 749755866 760113992 873397525 880600583 696060895 407146849 5356663 701483952 933861313 571900872 854792544 382214035 220038186 500983724 872242191 107417286 31516582 858158219 583818956 775928457 543749615 45010556 108517990 526693986 302003766 574968463 101327978 976376351 837398253 474522042 769609870 125198479 436908237 515932182 521290387 610247664 483013019 570579165 746765947 680071522 732013618 53782153 69924650 909840011 754668140 892839187 47845114 491289999 149499315 938434388 809916258 978348020 163692802 576034520 271550615 417547353 208826472 921384019 715054839 958333968 961200371 365896353 179957726 996109515 266381989 51298181 992704157 311173903 330983272 389016293 618345281 452585295 586978480 583363177 546623932 366983076 373343550 359114890 866753480 713156182 381753702 679518357 589404534 237451993 331356676 215472481 343238182 862511992 322365202 89493146 109980989 957187828 675748461 242767329 144925966 607716520 249595072 902732403 657891448 236588131 44235815 506064062 357330462 30510274 828983176 938041516 808014598 99605310 588026878 999708361 305244020 338500229 595813465 848737168 801399163 736133837 423527663 460974153 166554793 802148029 214973867 483889946 93061207 445579150 895453616 382723413 269742582 271905506 140530579 797486101 941045163 546823519 934707404 316299452 913472266 752768458 184209582 662975115 246100325 654371493 955094978 116904322 356441047 897390132 36124779 400922264 226806085 356228430 481310414 801034456 624320012 68773838 92991929 696324367 961268255 611508634 389444069 484147891 27236586 751698372 808523214 450510225 388932301 201771773 177222335 146950080 604470812 482286915 963737279 337555658 955562001 289958742 886915162 296780527 674514168 192892164 564996626 990461886 122251585 924511640 874121485 192068587 580446511 409850815 29901904 944538870 803991909 26255876 644079784 440213123 441689086 799731286 926747424 307372728 519538905 406477060 859571767 432874151 444812161 28850793 435373653 828571155 598474641 429900451 896039812 736720501 53455006 114459995 286790585 521423056 980216921 732594571 782211009 418042891 109313062 444259157 968274862 171463762 915793398 930827887 585787604 426447476 376592460 848289737 466174759 550860056 376155796 937647173 534370092 792595334 323176300 961482217 112353750 265542770 289634330 975574945 588224663 703461609 370270122 206119047 860836501 381255112 872635723 868631746 287760038 766312793 367444386 217870467 936717124 14862984 43273809 127264001 447705039 18900579 159543345 629544886 557326623 224865963 467944053 824732721 990957088 48925270 491283914 230269482 895715033 523415872 700165212 704669147 743464541 824692900 364913435 253486882 439198865 307502941 37314770 429609061 447623087 446803555 431511171 227296168 218896257 720049296 133762427 351869425 857373636 695341135 99710064 67789425 699495509 540642061 599108007 517111068 127077569 74012650 832866969 270115196 796883264 342498550 899789444 993879821 407719794 928429018 998099393 261856752 233751120 51513157 688846694 759718326 575797687 926410374 894192604 1316995 387842424 240273267 642628608 838788537 493524754 940803472 704944271 757536210 94731431 976855812 855858412 993077567 370686851 995164482 672219517 103488703 91862388 834028933 785451123 700572728 30073284 778474795 26304463 652473899 828784223 203820188 490861856 113417189 879888461 608311973 226221052 977721920 922090453 258034836 956831530 117521991 491540258 938175004 794231767 777353900 268626008 37068575 649993983 681143477 416278788 387258275 852499045 803883806 353149 22437505 538071699 458329234 686492711 648718591 416089777 721843900 954830468 294364237 196489331 245496640 562990009 172776393 672446945 282100179 859065119 288046616 916543711 491773398 850555868 482979745 581935783 817663122 716966779 358439463 731362583 947673788 674643451 236835733 826481231 182921711 537120837 882814822 316499499 887017072 349997320 544900947 197903110 973476530 31655032 483805312 118242434 321917715 797624564 188118434 47808549 50233 526054089 721842608 215698108 300357787 909239665 738322462 234659224 527547355 737789210 104529709 245058702 116833607 390607633 762498475 835615856 740845940 277819621 89787497 249678381 491936380 76493489 485793588 527778991 417801366 405796844 648910572 139605168 243483570 581822456 631054416 175994480 105623693 77574819 528516384 786373785 58425673 111839371 765579336 520936423 947050946 409103754 886104717 79180192 616064606 44480692 992746240 233990869 447183955 541585894 552018351 661373142 807765269 133980581 906354837 268257778 195085628 707101706 577256646 95741873 616088811 969530857 398055282 921160033 778374155 340051482 79690770 134800883 169021804 214584797 634347359 748122195 568644814 694571107 580289590 686852919 531175921 15950971 266848417 589696185 953031534 56882252 964962848 912550797 515430884 636489556 110976731 263490288 356909838 832462104 360812941 415238789 842310644 428470330 496366796 401863278 252539026 20982991 674498781 814799305 743998358 465151122 876511238 139698736 95069445 129706274 644874714 655492815 836899561 562250896 836816758 731385568 674438533 96583295 981937824 26137165 22704829 451840317 14218169 470129340 998597810 530003703 399351885 333209595 926067448 146445382 100608129 917158951 460450881 529609709 467573259 429286246 395121920 823381770 316809726 704880443 867797327 636019211 836493807 438301625 782729307 874161465 167143700 574148343 119861472 906262002 483245380 800228119 511642625 260161663 394996568 180935434 366706281 703964286 353480900 512049772 766364897 832219974 98537788 733108519 424550938 412523967 102993653 250846984 924284376 305340384 244117853 663489079 972066250 223390161 981184703 691541006 727581764 843984142 366428195 709548892 177193770 425764776 99273259 864215670 670470673 479661043 392979898 352551941 585283471 617265960 87516455 936269255 185503463 621041740 347126367 733962020 842651810 563166665 612310085 60350179 411901570 497985673 598658003 104399972 507492329 947878705 997757640 466522451 56360155 699703986 591196319 981471052 915240762 706577830 579403119 431723214 154582085 579548120 667536225 180006211 718442699 420411592 697102364 334951916 568825267 993640936 818424876 673841307 975820784 341706568 272710928 975400993 184930585 724978555 810017195 442703175 501777839 601883051 579161547 797471962 345948130 1000896257 770283263 499837397 284081617 658359225 160044873 769887841 609706527 876781679 708668005 435430663 905081045 246505275 922549582 42223286 358578186 189553461 449420162 454860755 694545695 46833809 320491103 830098086 655704749 178007660 653418060 819689179 720270881 628630671 832232287 667019728 464551956 952903543 719998447 878501962 949862518 28103317 569388139 351289324 796891425 502971524 907796311 333562839 295025562 196122738 555528281 381060628 452675574 373446712 96661343 617679655 924497759 324577100 366994889 933561503 822639630 773903601 598493865 153073789 296540065 548932425 518377158 880352842 289490057 498279937 211387346 816059477 893426747 209385669 351178658 635229652 211521217 558642836 340218333 346406878 595982046 832739855 311056107 85143494 123652208 400394582 271761367 993478594 543631239 404193430 317869159 668370828 375754677 28378541 749271544 130487469 1000923646 655071695 767728546 288937873 122846144 726622423 745676378 462622639 642038509 219501022 980224443 356035171 96259587 132980686 328169825 22306631 894430795 550592032 516508379 546535268 685865515 742035449 339182518 985088372 488775812 569460618 791239118 293178166 277443782 83658564 106083826 434606836 307442377 423295974 988079239 33207521 288764822 210196239 193669201 356823727 880520806 250383595 201027181 761998411 662401298 987882421 513979623 791087146 229562573 892278547 613189258 90215649 54264817 531372967 733565204 598618069 79385133 656889370 661858581 4361605 234538922 840275668 853673097 514532541 577837872 1000470581 644696425 981486787 575573451 677514527 968213666 537310155 104829419 374712405 83398879 865599415 781540604 860161946 154154451 505936674 518337707 274911794 274995667 801093461 381915241 834044037 822113600 447294743 6548510 845341349 753516559 351012834 36435526 712497849 464223601 973890241 591368049 817932612 364733649 19358380 388668553 541594770 388404308 208808771 309499901 786439535 129540101 952735841 686523490 668824550 137971382 663491653 207451566 595556192 819484037 280160001 959185671 580344959 903295275 459267888 238040277 734960884 58121765 547590902 323300185 184223330 895458982 427162135 825652227 202628519 461329485 633982393 78297052 610235548 770328157 579176327 445371940 883697421 289336074 489365579 317951245 236204754 586428425 656558342 211366399 404686639 407954560 162660482 19999589 435715764 229616201 47642977 68127190 917452936 600922480 254471831 26874573 366161515 271283109 378862790 604288004 458052117 550487135 115370868 98786999 786146823 625300363 364745348 945357944 580134586 728903295 412920542 273681543 827370949 421193029 450414246 573991866 167954981 900275175 773072463 245396562 929885078 241255643 985449752 25288326 484811017 121925102 696672354 817619536 557282170 124324014 720073400 805489572 922208799 19670792 995079035 53527686 710998667 435508027 650096160 930367277 511841310 891641277 15801951 270376847 390420382 112715047 360924603 10729172 756076980 61770510 869898054 509293514 993607006 530883311 676620871 144514142 288286808 61303514 256970557 958802724 773545172 156592084 653857264 857651208 448802170 10468031 373328728 589769488 703473309 788308169 670570417 414395144 269588038 522936645 609375006 890030842 733665701 11932426 662969917 738076969 827803111 482564529 64295900 11944339 320150251 607504685 925327435 197585508 26857340 949196231 178775703 245522771 238188224 516585737 170138497 232489441 262222803 298215160 708586399 564740133 241884898 348615422 559399432 517654772 201995591 382406434 894576027 766857241 616519885 866772071 438156212 839782310 585587409 844607895 336279920 710464384 132290593 155271795 778355610 842858802 861561155 544966952 96433512 525669192 142630009 610728156 551818862 263800370 551898437 476345293 878563257 76850200 177409013 792145846 507052674 164472975 692679252 10390027 945792119 754346631 873977085 945150631 40178040 947607942 110214365 224280145 90991638 50978341 688433681 573163029 150516650 388868944 52395083 150491853 372626696 366705221 385820599 690507533 236041656 754940145 351746183 200343706 929422363 709174489 710379533 512159057 573518223 736752025 383482107 731544804 623631174 239754503 679737907 558354196 8003449 199301513 842816592 62255694 252432356 571005389 964402119 111184297 449023281 586540907 740139032 717437980 64510036 168229659 982081431 249189953 168148078 557679657 1001591781 311333285 129206189 75625266 619861633 271835121 743540468 883800266 448216936 333344301 580901464 248271223 252745628 656607886 700742342 337535335 133038358 169647260 543222756 693273424 747836843 585148565 433817368 671389786 841578568 608991484 618471139 526371916 397955644 31673902 607910619 862716374 824975944 373026049 140326430 600325090 780856557 140338556 947114263 226826368 283561347 764225468 118188065 686800507 251945967 638865038 207899683 411752496 879735582 838595800 596420468 510058841 988611965 861017451 348674622 316670559 600096548 113744149 789309664 318652817 651485628 827751157 982090230 835109481 317824089 927655728 361236247 468528353 517690617 172979668 668319829 333552332 539985585 553496900 575317280 522660258 573823986 260284210 731506154 695429895 335715689 85544594 327858332 482116369 385037398 140134849 802783591 141120334 591435215 722630731 785526038 800931644 593976566 578980085 509803571 897822448 665820439 8973665 318777547 678522822 548666073 848142623 834253508 621595799 348243567 921436337 57262672 460414085 263820921 709483939 666736098 918867356 339380950 666099122 307573366 845722766 98469006 687529701 669846369 203434069 471289101 916621682 384266938 152477746 638471019 934084430 390054547 496750510 941096453 238378688 698797613 283733857 205476296 397117134 583682064 449974806 456409283 228676019 94578540 607153251 999923988 793663848 471354194 827288964 613516166 289155822 127179160 833333960 56851306 747998619 585521048 151582463 760826877 799404791 620835777 570351001 661571324 88990524 328993985 135350485 834699198 227340262 718479799 586667760 220364583 575802108 991675217 961931247 89158844 338707976 183885787 528100298 755203783 927079606 531172632 745937413 266886587 215288648 615947241 180803281 554494227 137487338 483085392 108458758 113277272 157202574 216918326 480323418 425189126 887681288 938574555 427640162 589908684 951198856 857184607 310010930 720517641 951189295 975162621 898157265 543139874 598238722 589562366 974288117 152348925 713815344 528568218 438515633 381601320 553821714 703840373 530233154 576689183 990445062 406842447 279265221 771896619 948023755 325582084 837249059 479577589 569313861 482318323 650208143 196111169 795681958 875575913 46320274 933555547 33021915 447696030 803722458 652751669 997168582 519078497 905994312 491962268 778853296 156494026 392413621 556737077 830788990 831190301 518722540 514776950 419068460 319229826 677613672 596355619 11778901 534050987 264106898 507875685 694081907 933518301 1001647791 509946082 142390430 126625683 581932609 519220030 515835513 442853658 432524621 103133771 232004072 444259822 375807673 89936805 512427538 369947201 673945957 429845112 457041837 351519285 413408557 800267279 15101251 944766747 141838464 538174741 372770131 256830796 539336616 655534671 431027388 88180812 174855026 650309047 15698476 370891188 323067828 716990760 300285027 427627896 668492686 712744365 630018876 811978443 384156583 187707396 664707057 662032946 973698070 111701101 729339824 458663039 481808696 87939063 647804035 421666035 251892794 636746244 335458219 546066183 283466322 363574370 601261582 71432826 830176472 557602634 389615858 11413648 304859161 320100782 65654185 436108592 723620453 961802543 977047088 375540304 231706516 824035784 249231873 462867437 684761929 704142273 535467228 34685526 867204191 136663823 146585687 430723055 277333687 26173264 525197091 74551246 223856493 181135753 505494765 397911777 866397962 318481714 813454576 46020931 767538883 870305835 156472289 537364536 992218831 770320744 412235933 342317400 419511115 918227143 310671422 854191192 984987687 546313589 103646962 845532826 583870600 262029415 275454966 275746781 655073249 887491038 492720696 564027384 597130537 460795231 993680354 590400395 276296952 275772500 538787028 842723116 100978377 354843427 771712084 913987900 680589787 854103163 673456094 342113660 255489613 374511665 75422032 855799408 243106359 172159668 310421257 905229471 948660652 989182991 362240912 611924457 431844172 817366208 115393579 331425569 6858724 424192013 942369768 930014519 400590904 446000654 352526512 693990684 925258035 714175690 36457585 934741251 753415145 822261144 330857467 446104913 458688174 882024913 981358209 272589397 752420026 548811873 528254723 711990348 802551974 494630893 179350439 801012483 56525519 953724585 794874765 143704676 846838801 77072532 596993692 400804821 694428290 613936323 984408887 379950998 582703039 182354807 325318173 333075368 263928656 225536459 186409621 546937393 315573753 957455019 316587513 174562332 555413060 929190879 697875468 187563458 207907983 489128278 57371014 1002213267 708849574 494972378 505645874 137865203 636206128 288430568 909193294 943293352 956866945 506987377 535210540 668797227 471898107 309537823 452803460 394961388 332601255 302784497 11117222 678262412 657136719 890544415 224081146 477680675 898628655 505003556 901814260 626616291 231859083 657044 600201107 13408923 658345574 781761228 822705108 815762338 835140402 341019051 179036833 512044932 546130268 192182990 980149436 328036104 413491875 207692008 591089733 641254036 313495831 804693711 917989940 771876568 968787602 452383615 143076790 362337606 539105136 146446131 464032725 996046200 393991615 551334655 887130621 656059756 28834457 422787472 295207027 12931571 728990566 755342264 999556260 114187723 391257558 878351684 714767661 699731926 207231436 741104537 784026148 179060555 109326984 92584991 880886265 641095088 348084262 863469707 642130668 420193415 279735865 417251402 879069779 816272525 325458006 52240041 493530839 387048122 732703305 346670412 336460048 918848651 808491889 11412920 544055131 979713594 644653389 879278777 445885274 363374923 538458455 560914183 406045206 285846428 177064386 621005461 821285252 462259365 791009144 730106230 103745972 315357923 185699029 977762308 70662470 817356867 572606133 316120964 430960604 458849171 677412787 112691797 892785505 814053416 220454709 57730345 467421742 910529123 135142367 268159644 79260712 570474949 197328824 3496242 775652127 245654023 147836929 740579244 633579848 584834907 24291935 788935469 648099332 445052584 448199471 842638222 760578912 156134773 805843823 119354684 786756909 970370415 550135357 7234953 9589083 611249299 310976480 230646150 716316833 893515379 736708647 991938812 72052396 243794289 850557547 139755615 406383104 944594134 911325040 850358370 959325706 980409274 322929060 34120474 461603431 320654191 455545051 871125093 253057327 368726170 165592431 140603480 700211084 134447512 686214454 642520590 155708379 696844116 10841162 900453346 192299701 732871308 950164410 670350427 339316735 615032556 608838070 453125759 940238490 329828132 613020366 115905728 253832690 570223295 543698040 802000822 391641762 669706812 972666863 686339300 95770489 256344595 123456963 768134122 238612811 118750348 910258505 172460109 599237535 390995747 754298957 206964246 206068742 581991847 830727547 807540012 560215197 662526809 894333751 637975104 417057960 50911200 317021914 751643386 670533930 950320581 843898408 715792615 460725092 316190688 30955177 767133276 838115349 49801469 67464775 706148908 898669824 770404893 67411171 913825548 776376757 402912881 889995641 353218356 110764334 484763692 505873756 713257330 92180579 631961807 791156983 7288363 22097861 409281652 985439226 554616330 928042319 989585465 758640922 529690032 326617371 671670022 802859859 92084245 809282020 529121167 911604368 500393576 82516078 942017366 492817707 181679895 192618501 157781171 684788816 77567012 479718668 284382722 412213735 203976396 513752930 471887096 338470981 797637490 966442601 859157796 996588504 276496759 854160715 433911153 900221313 574225072 317137539 324987180 758991807 244232962 961964385 409843730 501999595 817017469 699686817 234419939 435263600 809406207 267303695 576518818 959509549 517023095 626149895 361192487 189843688 66848895 591138802 922831680 743492302 254933134 390426704 946120430 903356262 313588081 29341994 167997451 624343826 341789981 959795745 770699299 531669536 341491277 211387531 710206211 193876768 135724236 573925193 737665725 994846878 885318770 134136736 646476633 88984245 548311414 808520527 840042870 699693334 900435936 58353142 691511702 26850772 735283105 270899536 416043028 77116746 144972778 422874913 263862724 221263878 12570093 888423426 193577515 102482345 690755380 324528753 562014518 416982896 607442262 277575578 498019625 593552643 337410331 898204666 760211885 397524638 446577051 178308538 235007769 85776001 505713068 864928283 28683139 823639681 808566706 575960426 551987955 548971951 621393253 899327911 914600602 548542867 504425168 792403867 591276294 691649104 674779887 160674575 747343927 118320727 203756009 493465193 860260159 768221907 646744781 586017042 998327270 784968205 821665320 54919953 661100596 523833987 938106451 394060121 928197972 310432542 444324233 231120389 902666534 814607797 427990291 151264480 710944520 454617861 868920878 702334575 814829858 53855118 383893341 722294352 557799068 582047617 970927320 2771148 170274262 658262276 280766478 773719872 737304289 99065470 335383015 494294593 325227049 656336390 574704887 953834875 908143188 413500142 742384946 530449546 807036981 876896538 504264326 758605678 13941789 216122057 939641153 462381992 161485180 714654821 833761305 458581190 108509084 460296999 644298231 908636830 31944198 559781826 255085293 848474625 718837087 434263662 59937289 63618115 505868232 707931453 670474937 290322059 285407349 743360605 851214561 713490365 492276370 837594059 926262150 24698231 602603268 191425248 658473541 659627866 261975011 406925497 440799543 601780672 514069684 843563762 987401499 979653966 332286548 41015929 833597685 248727229 818785738 247749363 973293289 290208619 42065706 549760741 489118943 208775196 136943029 735704387 534525080 90865845 545688443 424839785 917678304 571334611 86300133 185426655 980515054 985432521 341039215 408423116 997549658 223205791 371068174 851008141 665117733 921544174 383635336 929483437 999495370 925040745 548405102 508519152 783348828 626746718 157482194 248318857 655431928 979877434 130106240 326215559 51251922 464831096 503706371 753352984 682707514 310726836 120834333 91028641 404800297 873885303 512022827 538314681 369359318 802124231 912351141 113198367 224109533 519277873 123450565 567421480 121425824 471594165 14101701 770631903 29592647 633841411 85392224 937557120 939103008 413986856 902460937 432225337 204648747 268548281 897061400 127783009 743029748 115326860 777755773 911863581 884878537 9189006 313188532 282059884 346402242 354754983 471526926 661449819 340142552 908731375 483611230 194359590 171633483 61433878 379173016 410199624 867519143 299422543 842629187 765840925 431563854 235243980 460518591 286633113 765322607 704512719 586750738 778691914 815376221 358700814 683550484 790136707 439095380 217948371 300187115 290519267 41626281 118932475 867795977 791124617 132900120 685499601 651358593 494038378 252581716 80875004 872953917 647199880 942276662 253187363 629122840 782281605 90725686 170192993 857665369 127830499 215484503 96035662 121275205 808235098 942083939 750826067 846773463 468017465 213723279 855610375 937969217 599200141 818737100 940965964 980536766 511203013 998091748 839487120 988940167 196830271 655254744 314138543 666608761 391169140 820690531 12399532 819516039 81414933 76320141 99574608 23818772 663489170 288407946 831963562 287894949 974470262 503882620 864027298 735492749 329192437 721341192 593299259 669942333 452756252 579953886 839134716 983713003 57393788 647480355 2415864 534011963 942212917 678869808 970462804 863821601 139681057 69461869 492222137 397123975 180971800 573010944 109119256 790591704 456390176 985124078 129242688 61708739 805020735 876957509 546093709 531779619 612794407 481420941 484474468 192211739 491936929 390130867 574141485 512601360 355846396 598067573 355280706 674624595 699196886 142833083 564636628 836947830 811536203 540827811 357864571 34508663 36761908 222646534 425812346 817429501 714947000 828421130 219023086 365829289 94963637 145806538 714243005 820205208 675968399 130901647 267864582 181745180 233225805 605141968 804739241 303830220 231539668 770866444 987285448 113274005 702340990 87589308 320363802 959042775 912960574 798395145 212649273 641965354 638241104 756008418 515310097 71165193 796934000 791456420 158575738 170967309 920321631 725099209 490377140 271288323 940071334 17265019 200202271 47068982 830138026 910691144 636605469 926501005 800164669 411564708 586701828 905509436 139746055 622019695 462607504 774209017 848325219 879875230 995552515 586708602 567498732 421002097 722735604 867597289 802586482 242632938 308725722 747891721 876392804 473125543 797376915 938451068 285487838 463405071 284074755 216479946 256740016 366658549 297275890 583912857 335765934 132330419 484618639 295117792 777180960 88760842 278733343 55931798 944743515 643780485 906307980 759025009 603494160 156300948 981992880 16420563 270142161 624149832 333102059 526825664 26981834 628118669 283539279 822174318 496936340 815111357 513088086 887782631 384730929 99051233 647234022 376449831 524480019 509339803 359790422 685605307 48938912 587795278 32058375 256024935 145020986 920969261 238261734 980439895 266776602 208647792 239387311 945327760 847708579 679185200 701045661 310126475 312132587 390169679 316854997 385444290 60712157 162562371 115740965 276987171 906721004 244790864 465517494 217244909 359216592 634099878 696191725 106738157 4525405 240408920 235718749 497860486 805001005 428452741 608247274 216217260 899295841 976431979 907357002 382195100 368478353 134231726 538811905 143313580 263968734 418981431 236059583 713791082 976373292 270298711 966160318 206648295 623573244 803189869 674026000 831760988 620336601 377612095 650437860 668257708 317266261 358059354 452727773 971810081 715719906 877934275 953205637 388521562 431064360 88522534 630935520 536690572 680299711 61771701 752478172 227674854 490127701 214738757 330697338 810993465 645472101 935924815 367884931 994042939 488443564 110063297 595235976 71205505 802064528 800918608 292245226 261339149 713402330 293604969 782592607 235850263 988049291 203891422 560863964 203603705 920864987 456818406 435208564 572300938 401496323 439658680 77137500 310731289 464490845 320109387 878191863 594324786 222721474 302687643 555906348 592647805 318269353 359970269 482515625 624713227 163821760 391620718 219672955 586205944 363988480 926807330 483788910 45816441 15432740 319863976 394194804 171091878 488665471 28715871 784871105 985365633 955498268 125748803 980406413 63298111 752618545 609447226 655361645 541724738 363967063 767077130 780384960 767853965 963292765 879401968 868021609 833189937 910361560 639133009 193253347 983653631 384606998 696383780 56769827 533052919 351930675 592855552 550178798 560151904 510161376 146894429 35843817 177171592 373136273 949693505 403347117 285572968 490796958 992889473 422400904 107727413 540020877 507515313 338117995 527529512 53197633 162615666 628030756 945449758 691327853 932569100 260525299 530658770 784820155 920661521 295892811 26819485 250791053 770466580 836545680 668036411 858598019 380554373 113599390 767565148 408836029 353673256 494134957 473101350 494672959 87160960 59685753 238556785 952667262 500393699 571852899 466406955 624300875 712814221 997841571 720130116 849435797 460646609 544091492 415921945 945107509 157865919 325270403 749467101 690713117 513973225 448331036 581408689 843707298 994460745 929667402 275047771 913454397 46805882 678847072 402745030 274465891 264138901 365822076 262733895 136665447 700585612 15509569 83495631 938008006 851099013 294620295 686843108 550705861 832643395 496016913 894364808 4687194 518909326 803152981 633681228 99651096 776387091 130844229 242512894 958874300 429129021 191207210 117789562 46005597 466738325 533361650 308694414 216473504 297073805 882041000 713075980 808730429 648087445 965377933 152908036 695104787 259123950 313553273 937716098 564105908 937239743 81981481 701512732 655427994 717777974 124024769 372101219 910146795 215428752 757986176 454018410 503091666 754851867 608356301 756359989 482771494 658943528 578488817 134174288 301207135 397683103 838592549 122615001 117780436 589388413 886824027 526615739 240136391 769545453 46901982 549015851 727117125 953019905 435940238 500955184 222249051 694991765 878829692 914270519 903351039 206873079 859055373 99880290 432755558 276320967 112122522 582171932 562020314 121238904 38088199 526455118 203664827 486154925 965352263 222544152 837078979 20932262 76453244 425033598 783642756 532537826 922476230 61623681 260491751 702139978 613298574 1594866 107142240 465725901 529991461 284203797 636742736 440962642 49618186 119918002 745746020 559877357 398603070 241496802 732334319 669577680 691846901 370453212 465319749 830694310 640082981 546965489 232222348 222180622 312642964 148158149 302965942 21903339 760307477 804972200 550736434 281465331 84519681 204727738 800043447 565586890 22751961 242967455 732637642 457361453 10084161 413863408 337944991 528621434 398697241 287802574 244535910 180186136 301359537 467074007 779742053 82549493 765676392 736832640 255418032 883022576 959414678 422405391 75563401 617631204 678927686 937488413 367365261 647388518 80963353 992024419 169851179 635956681 747812336 422889150 590813670 288491728 204185158 967525085 24615693 620796603 822706850 168746475 872035026 624807170 222657914 539162872 339004459 185750720 233847742 862485183 764027592 835590821 868857026 985376130 359545381 844381148 531176918 519399811 461211012 974113536 946557204 832358870 941156809 185849560 179076925 134140933 492021382 42037520 62064660 565648834 508123985 310800532 75505612 153288167 207128183 620839285 399235727 204400860 697905567 121082533 742744889 583022349 728470712 611341223 114240496 48900116 164885952 757800437 953857107 705663484 207493577 590531628 987019771 858087121 180573493 576051012 630295627 431037752 374052219 573745334 918889118 414472940 742932449 71365763 615801976 610702548 796580416 926300656 511979393 122489493 946125350 761023356 967965344 936032258 190517076 407335700 132628668 269400460 516669846 851794560 822412930 728255172 1001493244 277167915 771635652 578356790 110803890 183586116 954934839 632487262 396995827 894481622 244141810 16760973 556525718 455583404 1002281038 353694978 217400489 533893444 891877849 90828428 413940578 508989194 611734095 331194033 847515807 282895444 877165190 660041557 907041004 3188356 176692186 550110735 926634704 829497619 814547596 928646252 357697817 657394500 521782038 145037656 89186770 648678197 724838437 221595522 926659398 726384907 282817983 461324195 712856333 154730523 199143248 51847282 33899281 134461429 702935468 7062300 620168085 309977964 873364332 670974587 104986074 523242385 617836670 77278302 360931103 444322941 870559481 118070851 769003248 461162304 107364402 563219519 348223848 13577381 932654381 554392649 557027027 60319713 160421806 854704854 994781979 287020961 540097146 620800711 822702141 775172339 649555642 611954198 578943087 641676711 989222076 394933777 207418392 830446901 622226680 586786668 258250805 49590790 892044002 344870909 636180915 170387336 22849225 509049922 167861465 957601116 622356385 803816696 64496296 67294625 548655607 822739925 555911299 477198313 80233754 619468457 961381165 64487582 303610217 941833946 74373019 405026486 262740354 82630180 511677639 950635792 147914166 466338606 733837663 361984962 244666246 39683571 856275269 424552273 849601784 988452952 954280576 258805395 938195594 340846417 442596972 958461929 827686176 442685018 278285329 187771763 481609260 435304496 295695051 562434787 690100543 328506392 733745519 907984686 564512003 754139145 830272049 933755845 606245880 114243201 778837867 41137871 496972267 669763335 624335632 956750845 196600745 636956779 675500151 299545074 753823724 549439365 237667349 123353728 374799790 191874077 305869928 696712782 845366433 72978698 794222331 422625329 483288465 445680593 750507173 843666799 866967103 592816518 122552542 303305350 939670346 406934953 474429079 59189032 658792712 425631405 546111592 907776096 498931140 724826355 111157654 625942224 518928720 190266918 260446534 778747208 777297834 38631301 981279503 179888967 779683045 952454858 972745832 841830413 117928116 983500755 251689570 594987720 644298376 35799017 595469600 79868002 623794011 462907763 39637336 771381343 824269810 576862071 88378263 544224758 46892098 528671105 733724117 599584410 580499575 567747104 652279568 350786375 193022027 675935288 485181526 472165408 724802310 540779960 2276252 813918415 675806100 242697787 357605988 515883407 402602905 383669713 471232951 281184003 344642306 866225171 67996750 146433021 303762698 427326623 26127865 310125420 854129394 55630682 998454739 572679043 459143807 7217634 724495951 630337151 233096748 761805726 137579683 310792733 160408998 698182313 213248096 872912893 126864098 747314267 838131837 638055390 44010250 335596431 730750467 682322394 644100235 254900218 21983063 343108087 150716547 426875893 994695160 395615464 939100816 281802900 319651018 622874267 609748464 290168277 89456347 619304751 244850289 434846290 728115699 257258209 858559922 438320545 470435571 85300628 424840961 163915824 737798906 894457735 436212520 792336182 489077184 238533867 488702548 412077059 125699128 479066175 959489382 235718518 582725398 249508459 406317307 764266023 813912274 1000565609 2124791 592850389 441428379 593077001 955186617 833749579 858450553 212219235 797585342 128981341 149315036 928556505 782062763 121442295 730859328 374986966 856919945 722239966 63327959 205053419 956426610 652234374 374615377 557413073 271174851 21348743 914244610 749404286 599126204 50142924 407884376 776616016 175720628 742258639 894585860 871920991 867128708 417362375 335120587 661916171 806830305 403786202 630236802 175270941 815629104 954279392 263887262 142413913 349908754 739478956 851692650 990986816 70679991 969638391 468996918 223706452 75541739 555554593 73763003 363880430 563232946 1002094457 978193197 207978476 200886218 871340386 42655077 638723087 556624922 841612846 965939279 136660139 295645288 717704169 590427671 294249044 317088721 527970885 534300065 241430474 781150982 551605307 112337245 84137672 235430091 805708533 564240345 858305674 982359592 265876294 147119083 226345581 318899407 548039261 859629802 757549884 960968827 793587141 165632970 977843014 622900978 475168523 283658952 997331496 438539946 107595782 291673222 815572988 547303692 387236089 1001299395 845158045 154041332 253367910 605801729 771734881 461622888 173240941 744896609 954125202 317263116 772952361 699062184 887428545 47593384 729663826 528618911 970953360 677377242 638587240 315481761 614634266 164718346 798579779 98606359 82030579 339792271 319280598 608452736 408535954 463814762 401457985 482946104 362381147 349936388 948973030 666940207 446550534 23123524 805610127 469881918 415159050 289699962 459522446 625428311 729367772 953410043 931446905 656802899 449139407 751491589 935010909 723856267 762929586 1000302040 44246337 955314752 640490607 615211552 195863018 497136665 678940338 761085750 276262396 850627708 604611490 113877827 221159232 62366496 883788357 32179593 164747286 701975333 182586393 837968425 264091417 901203614 733801852 986914813 181370674 704375973 918873660 86055431 65940714 29643716 991381001 916841370 488316769 11439508 204923174 288882004 877201184 328707268 327133914 781782673 811885147 71515496 87788746 782075976 259465570 684710436 456700431 299287204 203402102 241925177 727493561 36102089 30740682 819083422 1000857759 935141128 851196929 26652641 849705342 980810068 677156305 854433506 94998883 576149108 493411052 46078641 372067270 861475416 627886218 756318746 104269656 156164344 400502147 739315947 164449766 351798584 302986550 239050840 214917200 709115635 932834713 702879103 426069054 224531907 764966002 37247043 599116531 157050748 450114182 707008002 570769274 717004547 368346908 608342661 520184799 850541342 62320991 35901771 404172959 859823582 315360397 779184483 249346535 200055571 297011614 143172078 920651394 664767303 591512463 715007750 128317481 279539675 871266080 414213969 916312277 705670435 694660612 312657731 412386190 665584413 879142157 686560910 719211761 629003431 368199808 984789284 312535116 578148454 16227550 943943998 131488777 763025506 122978395 53519302 834054393 754128744 107284786 296527656 178043890 273911599 471728157 485054956 340694138 524005181 569290468 856473735 811371241 828061761 510017949 519344647 643562338 682047977 867925675 542485686 908315391 392446795 722574596 984307755 968538390 783906103 421632213 747280226 122094030 404783088 794247313 711220808 226959645 725424163 299625662 814309712 343293417 640044575 191087332 324717417 431304154 408460698 835010619 31827067 77923524 668661537 223272705 323727637 492169161 181802642 246267994 177310816 946345394 365937746 640291869 191219040 27028502 38239698 118797244 808064240 750219965 14596485 625681378 720525117 782569161 415335578 249493028 941235804 915879267 20802934 536882708 675783559 858737956 53141399 824780161 712795250 938662571 535202388 311932394 405005744 407720649 967458359 517267242 473988482 708296750 615516481 229820964 938543 123325807 305552132 719860286 120393800 280358739 514100313 272153714 622624626 855800283 234369111 376831517 1001226059 245175985 187645930 45815430 647675937 890740515 77294153 120325209 221645257 434761618 879068645 828019187 840348669 512915619 239871946 353886468 738924875 380880842 496474150 403454690 440754443 595691200 166211558 267672796 739708668 276887114 766204202 119459867 411913636 190335451 735192058 64401858 994696482 108453852 249258964 56640210 368356910 777086161 644143162 327461344 244448186 809580236 39862371 313209842 60191145 68188256 536309270 550797947 80698458 608512207 410986918 165135547 555467427 56499461 758560522 550640960 737161453 182373630 12835748 589025691 809910534 804959458 323895885 360572251 63435883 425819400 308967901 558665934 363149738 775073208 13764952 998288112 231338861 448878482 467371380 891001143 929123841 548540542 449036830 637366068 496156676 977974603 279142431 527783260 959718261 154954869 527409388 723117101 555971804 554214420 734574561 455272696 429254721 176767631 50526548 513125315 565558943 251795563 212994297 786134365 10627980 603303871 629418855 892823960 76400110 412137721 171225688 705202849 298899555 656204541 329557426 322104377 64787347 563329555 571365992 713939840 691105610 971795568 712163544 219073794 319619571 853148475 235621581 773431745 620269210 915347731 647414627 986586156 614659031 925156492 582789507 22633984 787559633 967049703 893037809 891747033 870435964 496460112 533086187 310480739 834969633 830024142 952065299 141682367 631640310 999148399 202567218 104888378 901879139 206001016 949975561 723511575 487868054 1172859 171066337 772602662 106888359 832991689 674283577 581988375 807490571 649131841 335384179 625987961 750135094 27968724 730420050 669079808 645559311 272973912 446917952 754044440 999515326 731404000 605435688 218884180 74066414 573067776 517458475 275910893 748216681 243921305 202360196 855089464 239605823 66832723 188471542 960455444 222578837 194443585 928086275 749369567 925012498 628485691 26474501 753784643 819301866 822742762 831834243 61723726 713636296 557561399 698396146 253503913 166302744 953929980 183145118 363619489 943032409 927729189 12053209 750215275 426253311 906556717 373233972 855620096 195418706 290861577 574983879 883636644 325187930 860550309 921732974 297736178 601959988 344105689 261585045 123467877 251347933 733915016 542063727 967998216 628074822 617206283 883308225 415957353 404842314 629123430 904879588 484197479 257992366 842740564 652698489 156598525 814669154 431337915 564649822 805017068 459605547 248726263 405583952 279319733 566261525 304162399 616989291 20710196 624924337 792269501 217592887 711825704 343763481 611957576 331552238 862335805 433948681 680545814 314492229 10308042 78483287 133953911 666934796 708783948 377641734 531981128 165232261 168371034 895384166 257764312 181202175 719981217 233402895 147210552 442809594 974750511 197563072 29305860 549728360 252813094 104541600 688391348 13503988 55678529 119889391 991501009 693101201 205020714 578064006 471681143 265554394 213090303 528313590 347526854 523376566 107856873 923652588 325228632 418418286 440671138 63467400 827986209 316617482 727273299 410025431 523497762 377638675 486148853 672936863 722882232 749071889 306622810 245614568 534525734 900972965 444171458 45890378 278213545 378038699 106158374 934849228 195428329 176085271 763321129 854603344 720059365 300181269 581063800 720572170 616991880 880314445 108192866 351269354 988577035 910483355 401748765 597460456 11917527 859782515 344727302 157863642 670836375 22322931 380852563 688979951 304684306 415982875 331108356 276266452 388551840 866110850 611849849 52427251 113935990 545306681 446191017 28839259 366289736 123678442 514800382 785587838 108166673 620848021 116127294 70822566 693827334 292629906 175805321 572772950 150787234 522011649 238451019 884395651 393811585 983478012 930562539 67009898 824501165 513140331 134504351 912115408 53618222 14175841 898290640 912382708 736796621 287846972 631119395 366557448 575420449 415855106 674769326 787434476 381122424 56708794 723127751 276554107 297137486 429579505 972531505 809742475 883137132 457344214 287590748 189965808 72580633 929914668 196062215 558220465 405821716 717105803 321402356 452175925 5918563 976687186 516109743 789823529 476305058 966718773 594708357 109503785 540195040 60585029 36361963 804837544 243815069 717036223 842306402 430875634 459455752 879556288 405955567 810181858 274130430 149247618 297241252 302453887 297424131 415062822 289466659 377965461 249896528 644471141 842620176 840706253 715527659 364684007 913820580 637004562 382320382 94899348 690185265 364059446 768795588 204614917 657563395 261006355 399755681 884556479 527956018 106755506 423411025 586837869 491916381 22239275 155875385 330962921 385979635 3769635 66818263 359765098 135162500 592988445 814422779 675975587 53148393 15016044 732862016 210075670 803126397 756531908 201455755 66137811 830103925 187356071 282106829 378805316 246289769 543156775 297142492 59227871 214904831 765497065 291304465 100744816 814108860 214214132 386199681 296149558 963545396 897697242 157947190 193137057 84284403 86552038 11262578 313554448 518485373 151692561 648971487 562224661 281351368 273444622 655923067 144980014 991121174 247297563 948037517 347588600 602504901 567796491 139011304 738411797 2862295 793828570 233447808 637908273 278177982 454139320 742493718 472699422 20739943 299533533 65681275 978427975 979234345 762042825 391377574 2817474 81433835 469479440 943483340 892481012 687406825 173538951 353461101 463122266 259832248 610714532 993410104 308900855 660666280 596020570 831404199 814802344 902652555 576898004 433500633 529297476 882296144 406950907 587882233 95793503 30487298 14557062 889141104 633059989 894407386 382419250 540891691 490588713 704271109 276419864 447423709 786316056 829768534 503387089 963304608 951414340 369482741 182554537 321256091 451586971 653645965 313259506 980093671 964075206 569677021 506934896 929156809 473639961 954315815 777296192 385426514 479233781 944887619 650489046 195630194 196045444 802845586 488421937 915929964 762254683 605253296 912242990 446900664 964952719 604010182 110714778 983242204 834869454 953759822 742891385 708205134 965828824 697371142 718144855 378411615 169440161 812025921 301125269 888263058 850691797 787359260 947776065 914346046 982820418 173427077 537869144 129901917 426275766 996342424 783433726 548662705 977782115 233350712 633279580 676312161 317473756 212263772 518449959 366375267 169650524 201943988 180393868 931522508 898578217 244803477 424339278 891488573 779662814 104035116 331002403 696721849 214557709 104169907 816305510 15066422 504353121 106414005 32073355 811330151 179248825 937906365 791994814 417354627 53606114 779973733 276923378 59523552 365541807 299460854 986854572 953361304 181409431 512270192 450292762 554199723 740488704 950699940 631110883 293737410 973482509 142653691 177334294 314430296 427963417 158738442 574465335 392844157 64931740 236645372 568395489 292585415 278488439 663821732 752321278 572958352 263111085 785970093 505939855 418606269 909460680 622461852 523854133 602590451 996406263 141697012 327188215 962995817 933302293 960475664 964092157 904225745 928890131 352099834 200611574 249841522 793146259 126695234 523211453 91602616 413906714 191668467 472989873 154246761 427108158 216032124 531684558 44484172 648695211 751173216 507234662 606499652 369041065 90605566 534046414 16410972 701053903 442732444 775976609 536644094 920870320 638954321 503265226 463277003 158648225 609080288 186531229 442065897 841247508 91414094 377895289 532817609 679181864 828887525 238880259 117559674 653448021 114519019 160991690 688256753 668837324 126783748 217245150 428062652 155766985 714644064 478075331 340731638 548552314 893507011 943892424 77632757 537843597 572238738 509490937 151614282 742619504 403133228 923747608 445134065 125940829 391901101 11948936 348008277 300380604 924085792 403414139 432868152 968845675 521375344 590287169 136384843 663028480 327839567 514410058 88080430 577814372 683396861 836705189 319943225 760467697 287327129 266145490 68639708 85659496 274015028 694301192 344305752 927400870 190563590 972949424 393739346 603876060 770494575 832742035 846049619 916983820 204475822 478682896 312739949 809023081 916456721 45456400 405380882 1001590503 806921250 782509047 618635481 558522287 763641102 139096467 107552022 637790202 173566282 271302137 147171362 981043446 27333312 182173074 913953806 747402445 935074978 734931297 165848142 175357047 196457586 120148931 217566691 24660354 829557466 795270894 44958637 105981732 298077249 699120324 555026790 788013988 751459833 553996181 570882616 989946880 669391442 320217819 528283976 95667406 229956778 277725088 634679242 915972644 70213602 248855196 878581723 212108891 994018781 842262309 872426618 13647947 609154238 953203889 324449906 785619737 284425498 828558848 843648225 905043068 96512169 837419448 195263013 224494299 79734616 579891294 10954911 594127671 766336228 629917853 59638738 287224357 742345359 129159889 426631942 829420418 749572246 879838739 15427993 591104119 240617789 105862725 643301281 134821543 390477122 463851509 822509636 558180795 695073053 79392479 963434673 369636907 875788070 702547604 327679494 16706052 734469343 660378803 360187432 719598772 730430800 122032716 80932629 963418733 698977169 254480022 982860349 768896192 83024623 72694635 909762132 42920252 843455491 582515300 716402590 261053163 962573066 76142289 852549822 545463440 324151183 140365068 530441555 909592497 265073015 596771582 212988183 583785454 522799411 614856913 723748542 129376513 98664922 730961096 504414294 374051276 79405299 967626124 842420113 172361411 103872869 273993842 541002591 275954977 191408503 833607102 473807591 541581438 504211330 256842743 236366966 421117152 148395295 100877906 367808923 142529435 267413662 599892111 277047691 576419406 301603612 499177279 182236076 833828099 806097754 286183909 256588395 321193849 229230977 432709286 358660743 227146666 28304995 776176921 667324084 103846820 290491123 608356930 330050631 504956311 435391936 55069390 419384879 729055918 781191474 255880883 956943706 808262944 511271961 843771534 884331865 690710654 587350198 380450997 255189062 35953617 378093020 102676497 304788673 593553439 512196214 817927299 140186804 828066166 319499838 838007894 721721067 630184679 685789320 986716267 873063402 306757195 517836828 58722074 625706104 587708499 582373549 349223345 567106833 651268099 590839613 584122329 55955946 254344853 682072320 788930905 608400879 60156847 842633978 122432147 585304402 567953575 436770358 451999949 817680628 642445448 33664433 35535662 382279716 784057801 793016599 671578830 175486818 401563733 489393482 932558474 917557861 950185520 471976923 384438794 9682581 431872007 738305986 171327746 343365969 141832972 991534110 496476574 817176217 901748762 691434214 336278811 767660923 855344555 689427457 442017120 141488177 650832018 246434029 445840207 159267932 731030921 393497206 691729889 352187918 683585279 169806573 715926136 864240501 711972442 214755937 802678908 437741925 709266849 194322433 673972528 30376675 823402195 309173953 12793244 401353361 344039539 194533434 182996642 902660727 634801796 134263266 785502670 495239299 490312377 38891800 189767542 913177554 392416411 401382559 845214994 427638958 197102821 87651990 308313787 969244858 439516355 667203033 273957312 273345321 677071283 845670247 220604558 823702825 988878449 772104310 478285788 183024739 654930749 693552510 194357986 259052543 529268420 855841192 683553244 352243505 478427734 674120882 48189438 275520300 775343004 165855432 841833243 794342567 581173276 525267062 462566813 489321267 233090126 995693760 251352485 118179748 956761416 630098877 461836782 89547199 386458075 586084710 137440378 918139674 571292886 443909240 509034025 780135921 869341124 192569103 312514036 840739127 335354997 206455107 302178204 487236319 670818203 342784910 20791212 812434307 881619887 236745414 916146697 272591977 452411550 248815495 904101046 629141829 898007706 779035532 781864590 324480318 691639305 560054982 919757598 175979769 255918859 945817277 757583724 14560042 444547006 894163441 364519113 995927785 559033550 21928060 724954624 576241826 69762700 925461672 859125492 638257380 366224232 997725834 769123961 397757279 566185183 685926593 376115896 332345180 914582899 36550945 521694000 48237822 475784795 204403518 114839903 155779233 388463209 976482337 612730229 877945119 704664113 844243929 215217704 747732339 487414810 804613549 428796763 723968379 880851433 952202975 372285412 762989815 892711069 555540480 862449008 461608478 496518591 28259915 178042733 227632428 882636426 616911981 489868644 984426720 610666275 234419638 496648328 51858637 404623324 462286931 623873171 145623790 980589250 478330504 155728734 789690587 700186637 716836957 206841234 950051004 877017770 125169335 968842235 673937541 297287308 113866632 604412735 663770368 315048241 893066670 205389601 82286247 521319284 671894728 753146658 983676249 59156680 408668875 339465559 298856986 956831446 370657289 894949541 250543343 14758951 607718917 629484441 151681866 277551976 54542589 436365813 29787292 631305936 611290930 940178403 448003964 199207019 512770336 51578923 267277212 769494788 873977741 694863986 624092284 354003607 151570352 719350256 800623322 916358446 9414640 261293832 847030259 309640150 430869977 162746427 352104138 189730493 226979644 228588350 867670626 581634537 902480006 906186782 254876410 87334835 527700785 152367859 711584391 17466018 550092511 719806101 704682408 750975862 701538549 579602117 875230330 323732967 284487121 331567348 795825382 972824688 430804858 308804172 338675047 815501621 617152446 349370753 764561179 590492165 365765923 749068006 873252914 64254218 744019512 34091686 448113618 876605540 398172885 612435777 260980633 911054899 898144977 289767017 412307716 633155395 120405435 217116893 637654619 281061315 319707864 376928579 41368148 125048601 841921789 846700129 461566207 29346930 826278466 436939689 685611341 940122543 388884977 435573273 838810274 611213606 407614960 331727970 557097355 152261105 238775681 912088376 17400111 943147486 957043080 854786393 506144076 662856675 142166333 140467932 872381211 898134974 341925308 212395288 859586733 7172094 502525048 780501248 179966717 112071914 18360854 705446812 448456070 435317620 736355412 582468422 250984194 24352321 69390019 863528388 993768456 289154607 169796227 808405932 97008023 714319150 544769033 112785155 654283792 966697325 499662019 169132748 465522482 507751017 558004634 303863921 445167815 658554468 906562679 15697870 360174700 964399646 128471816 76733871 360446343 123389919 80061451 227936576 216687209 131079313 930208312 816163861 121815835 719854642 487044718 94168746 548017201 495116235 881889545 450738546 843342235 422441910 162956978 262208299 882698389 998973414 421612946 922916189 978443670 295182378 159532547 858028384 670379687 712167850 2302937 59706906 1000049493 43671083 368819205 701058414 632935358 514786936 510625850 526899495 497009286 20062627 669255408 958789266 466806431 540464009 841126641 516320428 747978882 624713095 156322809 759364722 310755848 763459147 230662200 7508391 748118580 24580148 50346858 579708205 476482061 387617921 239426583 42309100 522210408 837432230 942827899 759648044 801108207 306976131 188105709 6230107 781097529 626561281 49160801 242815665 303704246 290755775 709212434 687253622 686473493 302317579 48421367 306760240 836778813 17228397 349817132 280348379 488627571 885371268 495411941 104459229 125472231 191449763 958226939 367398459 886432594 858649581 580136128 335828992 315539006 938039051 69115365 833366833 610353853 554701950 676735953 569617632 654359125 84252003 499548192 82080949 881299367 627648836 912157246 666161448 79839114 917897848 353210266 666533211 485521108 412664699 38422602 560342810 388169803 742536729 914371953 649479332 600836234 544260640 996610731 597314527 356049544 654116269 465891200 580236829 351085508 15924959 783559019 134136147 29276809 928721734 571315281 758643989 240402960 453448499 200743012 310933250 57560607 251491915 976394729 912174648 566905672 860897839 977100911 450816241 947198361 515380072 21614072 19358260 956096445 579482694 950421230 402428158 98436376 935336958 226422054 324081572 771151302 702407459 821343695 809236195 297166998 240444999 429451648 238910699 601435035 332360845 183266137 97141017 946871735 273823251 907788878 985880770 149850145 930740377 423112701 368763650 491960970 546346914 13665497 399696904 655975342 894533263 80006266 236443543 321032246 774881191 874155373 101658250 272848785 450114003 324028263 51891750 937723958 562830480 636626759 551049086 557777578 926320013 731790916 907094473 59514610 602404747 61921387 312306129 89952404 400995734 386296848 758870998 970845390 849118573 673958854 745615070 518864997 451367084 194395267 150559671 572871430 491092756 510465298 214965491 546270544 602847223 452269649 182715744 470713774 275071949 685971816 566306158 581109101 225100190 461339135 779803170 935551072 557680629 440443065 217118351 204197410 274595784 60425176 993902513 582247960 327329954 872464130 466557017 71199842 884392040 832216652 859090245 530948070 494038612 865182043 213519342 64740073 612011574 638409289 433176502 177097807 367753715 783750690 138082876 264322368 266742884 913188038 744418487 23003937 602941868 905619468 914296441 846606961 128632841 787994917 703454746 844180121 730726853 695044945 145691607 193714811 809796315 541142195 90390056 46124996 173618257 174022257 782630397 75093188 254099185 572041344 415511861 373708419 359453046 676376499 691942850 591540683 376674951 383992374 259526148 347302289 541099354 1001238176 180822463 746118868 456997737 186995309 636488323 422769021 672571835 915441177 833700882 869852206 772098096 810622208 616955677 861852161 374139265 39892759 798409556 970125797 497389125 512174088 611201029 386059080 556044467 971274154 483395138 989772872 687463026 489594042 857162489 344810424 860500713 827688089 133725520 160358397 778567879 162516421 485323103 496975744 548999456 97571689 137210630 180881407 188643022 213614650 110138427 605595488 799109781 407098802 927835498 292009155 481903808 540236062 627323903 910499087 490249357 448192070 536877485 366300179 246817706 238567711 649673940 603577826 337323520 72862344 271889398 532280102 854519996 558756773 399591414 630950679 813483059 730938524 480471319 257898629 537767064 499186644 189088750 431831821 581932466 910278706 638938288 399747180 496242120 748578087 442815646 985863778 596438342 889358898 588414924 545749519 380663172 597441166 978320887 395587812 897853501 996804938 340975506 28400122 925178631 665106567 818951604 497226923 27710291 212359146 487193843 573118086 750050096 759098205 164514789 683225496 48322428 690957529 980182282 504690946 942662146 79897894 772428022 273759380 340751998 523682574 624649772 711503376 852577288 189062570 299303791 800124496 351678407 738790735 812315720 820566548 654032150 474857190 995910045 538834395 668935328 900484706 575323333 823112149 489627495 513157996 908537444 819427528 406549768 464679948 364459489 788652682 707131334 617758454 734393723 483866238 202536536 148876762 899718896 909072755 8001628 877000225 351164887 465978305 767740820 655182255 792004915 342357544 193496601 416186831 74974782 14499624 346365205 405772794 856712917 305973287 605596298 836391250 877351366 138682487 281803421 34608221 593335716 848474103 44660591 580121190 850315715 252442537 373679011 578040099 584503972 422306648 189902569 668819029 122871539 665549819 1002224455 781859522 839109565 451503938 738900841 70824209 233382062 270708040 503905868 990103928 453362817 298363569 780698983 346520801 57407978 503590476 101279926 29627752 177811397 581160995 202191611 774075486 272729690 210843874 873077742 416186054 527088659 786723227 920400780 890647272 758090606 997772407 126161864 622119376 731762283 697216315 212263260 930155817 649538362 130302136 695347130 993482479 467425678 99868420 150953185 137914792 534993545 369242783 953044609 540262981 23181839 416361290 600210419 352321122 219515404 377211675 220439543 540130425 993259092 659019097 944251807 957414707 706668818 629452535 235681680 833539482 600926228 86730183 457744279 938925285 363982797 43705515 124050876 675566517 107822680 717742816 308318035 39925071 432954497 354595932 717444828 161392273 282734187 915932840 341117074 416065167 916410598 382881659 476213420 41584814 257512654 526727469 226343490 461499528 929130143 22833057 526309956 945860870 862949313 490420935 891332929 441005353 146967975 840948096 7799526 72830754 911371326 110268051 171453415 468009129 457773428 302758232 835334409 967745915 463008972 60553575 81328674 75188730 809369011 256004382 469346798 881047569 950754741 605151213 168455906 87649135 245625114 939276296 742896599 410478758 636552008 922636161 230114280 378266755 50831742 630859937 986369050 863607932 48597267 255029451 655804009 608133465 879985313 219330795 147573105 252668565 370094919 333900157 260513391 352308821 241306942 355323208 273398390 80046391 995570697 417901867 444882862 473497871 637493799 641305588 236793104 953988361 342144446 826124180 787131344 785593112 77792910 516590822 928294903 905997927 79385426 172608723 801814844 975752893 867257600 436751857 827676907 680395216 89453112 780645768 198420377 208989434 271526204 774302502 590065626 45777329 131456555 867936490 214372090 492330139 285751178 781960424 288527527 691664128 147613805 469823096 261157412 992046286 389259692 838605126 516407253 772613077 94538594 571160185 839483679 73042015 316274282 595111537 961723005 765054175 166650417 597130883 442205583 927805873 351502478 45622422 506090474 243803742 382130757 224976972 406316522 938186506 891171641 507576008 849988280 158922728 771512460 152119903 808762251 168988584 285388229 446989129 881895298 632620240 152440129 451254208 924505163 529492735 554662631 445294055 443378537 609997158 397584416 825122103 583179924 777352672 493307533 76953882 806031442 9017781 430308519 933553503 941942713 69951329 884778351 620790717 560790307 615283677 30491193 140530101 193946166 522504835 771251410 380141450 818835205 69565254 563930913 253618267 821554981 11167264 4282826 632208641 360808290 561360973 875427154 994391760 75736927 110691042 40659930 877750354 637699370 576618802 405149115 371040143 17077006 95218273 298354490 490966638 756385083 208891088 335911299 149818698 560016740 888998996 235352091 420755989 634077519 93176664 637914025 819557795 700461001 728472073 119088061 35458466 677580285 455866816 637421582 686761071 984329865 195562019 6411382 510929356 888867967 333925962 429076255 297661877 191372229 861907441 451743474 248430312 325087219 52245791 611301930 660014995 702262112 642057788 234710021 206955945 68768069 34399566 95745154 183326103 504173779 587019470 844523198 485155508 216226546 822385247 585030499 569705141 669972228 773053534 152395012 238786419 671701867 339794955 838856211 722986402 96401935 888945046 387422896 77016616 678943744 563935994 942546464 936672001 875428711 341676031 922595305 740743081 316354168 666322767 137415577 599300573 622959350 960901135 154418028 795070536 887407480 822545601 550117247 546222611 937973674 134044783 9390291 886965228 869773382 708765217 552918307 134773594 87994328 956022603 712446469 103379307 843117104 987471249 782810236 617178177 703146144 900382044 757660298 455874593 453264565 53832354 722108931 95626426 356291321 353731997 237134105 25760473 319873315 519074456 6189553 212777332 675127745 740781770 143749132 872610742 680717062 685316020 696349570 137768348 765946523 775242785 566078686 861037279 123936085 808422274 90539045 776574962 361782949 950832010 450012649 149920383 161991918 406070929 825437294 378394009 245173852 657579381 248544262 458146642 858355489 424202464 648964322 117103040 837557341 398768364 697555863 453388818 919905617 829603736 209375460 53340060 630661309 467354387 917285275 423017465 440842088 983571105 715044876 833320237 267170174 857041190 6191561 20496632 199220657 377958277 48577298 570184071 270434929 644814576 800169884 68535371 287529890 110984262 570875294 30052474 898194308 624787872 198380916 661762371 244419565 27278062 327641822 957850757 280553346 308932308 901909359 188129283 779703161 70175214 513248050 683620260 637748070 106191827 852980073 673818823 585595178 708731606 841512481 721620201 95605286 797946860 895918168 382736416 865119573 427079019 187105425 179017994 483660353 647184113 136011895 893273699 722162673 949885593 63223592 550259803 886986117 264152743 699680311 417789537 57079573 619064054 770385527 764868282 771472237 711188857 205418477 430979781 126579326 506434133 919357798 775935506 918806032 557772564 28535171 696224276 923345592 81529647 626724416 468148384 611884410 342311174 420536532 959332734 366828714 358998739 596416734 908976233 188469458 717035702 789761997 892519133 748588627 743119601 289527375 362237374 594103514 609281730 829545714 411589129 596578251 922538967 894724004 641005891 909213084 112793401 687134797 751870291 433840056 131055822 98998530 800588554 614048936 981341469 509472070 694060958 201236169 256494147 579890827 498833839 756011309 552076342 537574052 966026905 25516590 651193670 214422898 16444529 181621313 799063601 2097819 643699153 788588418 673932082 13591161 941487602 560273186 827948655 374792045 353785129 531099384 195670227 78234160 601009703 289789008 326450424 865574443 701113609 978431486 243220158 27814654 317363981 485789196 777312822 732982506 862538256 775297067 611542559 25487871 459401485 567509432 565262225 347770864 298758189 155968857 53524094 339880971 35193483 82610039 357777975 855735235 799539185 500558636 5243091 479622545 168567070 539252502 946823306 911098407 41924303 329570322 479149896 235296096 148397457 202426614 324195384 447867568 20827237 130901260 450902461 477893145 16444626 382844572 667892933 110382008 777829918 394788444 379188512 911097467 149081344 685218894 843729381 772621214 506612090 286017652 641779443 305901890 805628816 296598090 506706022 932762723 432722689 599795547 887107830 413014406 215929741 318763079 965962636 944752232 415599715 238536716 180021068 74081679 894818612 17957182 444177719 834751753 955479493 949767745 198603728 910441134 743385862 327895138 301318695 319495967 721468273 348359253 258962795 308409283 420872424 530397857 712978733 33102989 431630693 81343942 819062522 200270790 554834968 894003636 741110142 703308270 894193801 740944640 902768036 583033109 644700784 25940070 106482192 117931016 927049018 281075221 971526711 612605818 840656825 263165309 485640874 262711586 306970072 678337940 626189783 216051898 780225574 734571959 279604789 769477331 773308898 558370780 666528194 267991469 484949986 55068033 149586736 142216783 340438399 486115107 620450376 80983772 105019456 261970389 84107892 77663032 170066099 847791538 866840743 467861052 437770684 581721889 760910851 869270769 957520228 722707222 681271822 942074302 426155085 365058821 477847902 969564505 667151167 550656493 456772942 516109294 332339125 916852522 401542899 637564360 615161089 30761492 964356324 225036328 450026841 607722675 346820042 599148799 208414787 594052422 627540426 810329302 265703845 665383230 841729216 471666006 813653147 276834965 239734473 146853930 245580987 332774789 937607656 504313580 235749267 998228491 999526066 486917694 208798528 945214624 592601292 746003515 503765343 795984791 496329454 968789175 563943585 417231949 434575368 455361812 409133148 622355222 154570919 779743335 716297555 869874835 556024536 945878084 61862196 638930761 365900694 216111977 381870704 247372825 957197326 952328140 744649541 126311291 334728821 520896105 494776350 620255453 485953318 423208685 299762649 739002833 339063732 763595220 679078653 700381481 426226402 380428411 78567025 634104391 371363376 92635110 601472642 78259746 930052784 331535630 436729661 667813252 55632179 189723115 385209760 346486850 718566023 545475073 466457684 616626770 387509170 917293378 450687795 323527232 7943346 490355035 266443015 288559945 200467750 869025853 444413499 580892407 38897293 289617791 351613643 733329699 75222259 663115002 372382229 771157579 817532298 106860007 688446466 316027862 14514090 196443176 909391458 990872727 435802587 25268525 148903007 715792 7770080 433533848 435219631 650015638 603294203 48585672 930588472 978426566 360613736 898889125 695050491 361124818 177407767 397830126 984240426 944806272 79899568 405124400 253460239 703579301 199720667 816077839 269620301 665467100 758293629 352267235 230264686 859157197 787630507 766833054 691341354 205413981 580875734 357356389 96212611 577754142 424840363 42852708 611928507 716070933 370411502 460296053 527213640 78713730 374877360 100501767 734924092 851490778 627966615 203600464 13338050 257860663 218625601 752543771 622334964 925828064 352354336 460783742 851758140 30350652 143568537 650603717 139322158 195031202 44174610 713796661 852025637 563170771 348004416 122410664 681927508 376123685 875858807 613082285 750844122 250962910 796209581 714642329 961012830 108514592 134061504 64108009 931426442 457238111 881564366 319342105 809230348 418560780 170904334 301857147 742078597 512173426 1558752 594777402 84231132 299344698 497661520 430627090 549051929 454863690 824691052 188891215 99791741 758966319 756413539 221362095 915980129 437260204 871884577 621914878 998960624 20480066 32520902 165169370 665355934 881021185 937223917 962363822 443336604 17667281 543573275 745420241 442022186 483078184 532836555 617289482 443443620 215012531 763953724 552260020 427718757 897887809 345393532 17574831 284019602 804453267 718011052 102820382 1001170755 831519645 526017779 802517949 614940472 239872487 522360597 983240164 500459252 85926382 85951439 269042028 817981325 355248252 186215445 552824940 298439819 895913113 249775784 970899704 543789344 447185491 255029802 651990127 902741058 659334492 413807950 82298769 854647422 631640969 831292621 624914932 105924934 313371746 449794749 492847957 723939957 236471293 775515161 972046486 607233099 899373377 976398103 344239809 96964099 926728710 720621005 895782302 902797168 182828578 121460212 143367089 431248331 409694673 316867237 452622069 968726636 190087948 805516263 174419655 551680431 891568540 663461957 750238953 110675705 829378564 824998027 558366072 810224403 638925173 941287992 307624612 119224032 945460663 794414376 166910560 686340729 602392373 59591578 890852713 832128094 30594623 159957959 499751872 861112536 800914532 911218287 307851787 730460407 502578966 601569103 395672521 859870532 664457793 785164436 870702229 483817084 962067217 581657924 369766775 947958323 172753103 942688612 354985130 58307231 445143626 161764968 808537636 867399995 800851077 881091171 771077925 588424229 509299613 561018033 726317363 218785392 893541730 708703854 222061055 826402182 492861760 494813769 618351772 674358007 537869862 906077199 512118799 993207293 780363433 45816540 915590510 474219187 540777936 629956735 465466766 48404426 125075838 330516516 238224305 26195572 239281296 786269182 722898647 842305284 735476189 110960230 393898698 727388954 715174539 491902817 276775453 69630211 743442070 644070131 389163945 499613325 409509044 468496322 116799803 130224806 617287878 824190805 319883253 176121501 834580367 343754203 626996641 621654707 324735404 650190729 850127633 1000697099 741451947 483197760 867588270 494610496 285496330 454108332 954577683 685543160 660559277 109523700 604362150 260894131 806705879 337422145 598938300 367418704 929763732 61808707 501937530 334487044 407968640 581705734 387127527 539126541 828433080 406134920 454656233 215630755 791347484 777006983 64851908 277357744 728392829 264311972 378216895 190390746 5698975 396728445 140408956 395254145 3234864 552976727 423668958 745049045 489269880 88295927 207039586 641839110 678965279 356935913 338364458 887351002 407459293 120375808 566495061 94301196 818641273 1001992974 198353591 737834262 303494696 899812807 936133797 925416781 813261798 588461084 154963304 968621514 450040862 224343095 41748587 311929925 200912203 728650848 250295273 611684237 839852415 425138428 661320745 596573309 246298982 857334667 153502379 104048135 374684287 32969410 421506760 947954369 509401778 816514857 217774644 564230813 327039144 377885583 153882563 494070603 572545970 976417440 230190302 786086534 803900910 587775357 390408649 343733110 791543764 528592376 946578021 802514646 838658437 386174612 752517015 517122748 552641214 191894779 181248645 435239265 595242764 160701490 764690949 628145098 830458627 694371377 295891831 649034061 5966516 163415199 885891455 895829637 811353456 442381138 696958941 41441568 111311908 597848040 354971923 593378761 425185013 419597592 514266328 396301355 891399835 320013129 437322048 373402101 1002011387 604996457 800455134 312386137 419194319 118414127 827320979 420793920 433268555 551596798 579533141 564245279 79504447 980118935 814476120 736936432 437419984 252184103 303588087 247012246 890684912 435747158 611978777 761562757 360603635 417405202 503834051 669800741 43491567 863371274 932322619 714226394 689403790 881035174 394495027 188061438 976226703 423340447 887856001 509753337 36956681 108541423 292726326 734118436 709565607 378287660 309353283 99735727 797022443 422032790 264580386 917997993 577487487 664743848 137638318 38422847 954865798 741038612 657467621 973041514 741551111 688566793 640457468 461418928 65086511 577091709 367715532 58325300 240809219 63542338 632763060 661575850 510847957 252955058 617102643 49382253 641374180 733670414 350799384 394157498 268127763 329064734 945056354 654248415 786506853 419696620 686740985 35419884 594994275 64072111 223245906 607611523 162743693 258486381 685013613 643995943 128496596 93537540 75029431 246961672 626550492 616886722 4860513 618971355 958081742 900474500 91114905 655125882 152851547 416865716 100345000 794602135 592022498 50050769 466168588 704338792 713201985 798271162 339708757 19775900 13151522 445568992 316117682 573241042 486293078 255267643 416088643 921440341 529667991 568582599 412622531 705522359 589397253 283043455 959868871 662642535 808404230 160316867 691944756 113460228 170766594 114163843 374801956 119950750 119343238 352541684 159929514 144971380 213061684 109522147 390222441 230020580 380970124 959658066 273745536 41518985 949225303 436749600 693550347 229465305 248341835 617967495 28031568 181766229 589450500 717959253 923530218 715254714 969921082 563417965 515226212 646432916 817808305 976973183 760994255 479283705 552588493 728870919 705973838 533671752 465380583 943437571 390004272 51771053 862858097 412344529 84210456 995922432 882817205 527674978 471989933 781676433 71042078 999874888 500199271 855583580 342383550 612256518 134625790 975068239 941148904 631035462 814948755 832898394 391004334 534071073 240192442 517078317 144088101 142345035 48042041 456230215 102884864 720451700 67852066 399358793 322806409 598559188 699828701 494867429 661311983 209366714 151944752 113002416 52149672 485854405 453976699 196282942 974925107 203065408 91900880 21216765 205588540 203839341 411252255 453012772 414679456 926582698 152805304 483448382 467649272 498710023 17768418 654068375 514308279 485546619 203760113 738497897 229073671 446154518 272362707 207317750 908495398 616694541 81323092 639599199 844069696 134169366 56148221 317360131 442262555 508712113 462954935 709103880 112651793 115562684 933660141 919517467 884193301 220634568 350153733 66744241 775434236 713921792 886255092 258147580 843670207 893804805 582760032 708553908 174174032 616224303 750224867 378436906 585020722 335546863 365101357 401004228 160906929 241808301 67264279 241588704 243235791 681491913 443847805 366556306 511637503 826517177 159659403 174833972 215546052 755898511 786905014 765953001 281253985 578650851 441432810 456633311 174286607 312648447 608740044 954770309 879450426 377162793 541360736 132000812 151630802 408969863 64938935 913045610 15463480 235151493 518722589 275645999 223752966 326595648 759523451 51122499 682361248 61915994 1000377032 891436290 628072081 929074195 732138172 232662097 352153790 382645294 790070991 18494026 970383230 878017108 171981327 705862280 602948852 227379324 595416752 440572809 926052433 285456070 445164447 196494365 645769107 783242085 217849681 869069510 646739330 927850810 811855097 102275215 46458617 192415040 131041268 870227404 744191906 299283529 747632718 145413883 655109994 414246567 466236935 688903687 437589140 9211693 507570654 454918887 258089989 793228306 248054740 544210301 658803392 865157909 832699852 963784462 974380346 367621704 807451628 324045414 227739207 246609054 128199735 408136953 462803359 97185088 393437203 192570068 643088424 772470916 819231537 252337980 514306565 752385981 806927818 276763936 653408143 187658407 214675499 301755843 900569094 115778325 389950601 636554074 565705336 535056064 386869006 460338781 494332256 991395563 448709722 715565481 336017324 951401457 331342885 392962174 886357091 116300608 48636226 309475464 421013648 638563395 344762196 159741359 130817336 244008870 547433446 404075223 845306054 35033467 401055873 624784656 942374337 317281480 374799414 672615090 637568744 609123464 356677728 265946748 674135010 18572359 943743949 453705478 503900127 666751481 557771355 64148809 948789905 887669345 543066193 912707119 941207522 11763068 168477851 77640787 527957167 133203728 373766462 55252539 867801660 507496139 203827346 368052397 2498342 326679437 975598783 890825963 186317251 582276750 570933190 506765426 744755090 745981338 219294258 975495865 579813332 616525646 584675656 277886088 366380756 970194478 292127165 251775764 579191742 638718976 370439235 756198379 454545131 847696219 668121706 110270169 403667173 304235588 89426036 915195939 445157678 505954416 584980813 699026216 973476084 793601439 105299918 592790063 722840355 600341202 256261757 921639461 337300580 428591434 809876248 72335770 962978286 11068560 94614380 834444986 204618406 92573336 66609736 975845450 256973031 975924097 598672448 5123248 735690694 457697327 135917476 16768470 51230730 471980825 438922171 943221610 818980778 344009058 953515598 937622104 357154576 501234069 466472698 834597870 615634582 829082573 262828171 779778699 188334057 199795310 87406010 639388055 250436078 770903481 253006684 12888160 495462072 6337207 570949521 454221184 664919845 688360868 749437236 682874607 597280145 747342567 731118016 661239943 394791326 235130623 424972070 314162541 611375015 117277583 413678400 756684210 625058440 986418959 699669298 822008423 555707732 966360565 873974888 391532503 682996324 512732313 789474985 12509831 92332219 7566303 651787291 3664809 514443287 924577385 618145813 268481307 884444399 397708538 814800919 817289798 105167605 384847306 486344624 138138225 371507314 745860876 645524931 50050138 653388508 327263616 918722223 497414509 984710445 167789757 205762482 544134458 613069855 715364329 592697924 635338415 901668954 936974511 180609690 553755697 565166143 388296362 98588769 771757188 610343501 527476658 754017980 337442979 380447354 761576081 998770745 109661142 122076208 34715386 962224390 62844004 565681004 38324761 483918655 696439387 982051014 456894176 903239882 149193637 492380733 179763751 627207302 788328279 547808098 953915373 4002206 342596710 170534786 393050728 927450001 655800814 247882228 234454308 503174952 558530232 60271128 884211902 639440329 214168602 471432257 795694941 497121777 955321486 755571822 581633825 250855006 224707039 139769167 43889007 883902968 154339519 254733544 183808262 297458377 164370796 532689031 827124518 201794249 350774067 464205429 786509119 53921428 425699526 717433309 62457300 505517176 454511865 805872819 333320159 465451433 250452706 502693117 137460415 920560099 104715637 583497326 131890659 356081519 852000807 360085939 479293395 966255982 637598100 73725020 192912431 991102185 743752986 138561489 854571873 989293538 344228618 131603183 727663920 120016090 482406080 498499840 187598961 656299666 525947525 323520476 95207697 836726682 688175614 361266975 886727986 465944078 574803487 593236671 780877445 38544046 201610595 418387624 772906399 948619665 954789105 284395558 903193522 404367029 361885377 974355326 719276104 155546896 429426675 517179127 235435051 878943004 899767792 258536000 134546107 805071143 348500228 443094145 644148957 126646187 640257101 784051181 12324048 824357234 39975999 600097662 772413930 386877701 282588109 61320054 663559655 234894429 344313511 63603660 350220741 432365037 858296766 991215430 478394786 385254540 494420660 54684115 967409224 749198113 26903736 256798869 157774662 960445324 99900638 413487577 425211945 667470374 935081654 218601272 499762939 163032820 166008717 683271961 370341589 820260498 282390978 538659343 713388187 655910438 808632359 702177379 233109914 374977529 228007552 30659066 314262616 981161495 383843906 917362099 342585169 5673030 317038213 712718590 63476743 333096221 609909623 377487353 480250243 725840764 683750522 619802032 670565520 341235657 11911369 594416620 898157464 946224759 282597601 395384608 448481191 766146468 674578638 675629995 27234102 952587089 364874388 78143046 826855964 883221499 280902373 477565108 316362753 131970479 230120948 850963123 938076894 542838045 259801127 51081446 99060709 538155964 844235389 747189472 286610421 886212642 727322114 795511343 258048348 766445522 317729976 499057962 451584460 564057315 502020439 302590058 826169927 853067279 568920070 551295996 160361672 1000470354 540399492 752403738 739822412 382683370 501676374 224094860 130779238 888352773 338987126 540484674 889922911 216039405 408577065 289458344 516257356 141112721 518105825 727021937 121308796 158437558 185578198 337427761 798109988 630531329 410413745 420300706 530785752 497899261 122468292 224227172 550145326 127040765 81542857 206786959 829825962 805354130 396010961 168062007 731294622 801253087 45329410 730065241 354176846 392892906 978180742 941701630 770894724 995599790 960265877 10745077 98581537 447459322 669103752 86738129 596352162 983641658 35267860 101735221 730223145 821875620 44009404 572867137 930923620 978783288 338644463 801998255 945399501 675382672 800815452 87448958 13636634 457389079 671520951 518853719 907971725 858886321 173416791 446868074 346177294 861371354 159199699 500882390 313053972 773898643 705426005 766627334 620152175 166327935 138054558 364984810 133075182 521917350 685137160 582656432 2264192 928700964 584699753 66960556 734552117 279757942 852971747 930685621 533303767 925460272 159239153 872974182 239582061 533228330 22751293 440824455 241744146 460430788 90943830 735229772 145195455 130389352 343181313 184918209 25569127 254135018 945427697 643870475 692947511 51776312 27537941 270142720 407384708 945813827 496335229 448923090 802474202 92901359 49503755 848640939 413108706 392035466 741301136 57748740 585826990 505405794 381943768 893516196 666490105 452431412 755669635 206264272 835477913 520625576 487626286 748009066 478368152 606389086 6148595 772113999 405632770 506182750 867798376 732265893 956204747 803570616 655743352 875058990 389080139 345460686 572505478 563902212 284227854 610299602 411795160 241032400 214157410 534464691 631369086 793219011 81956396 143827448 640045034 565018859 520223778 877243739 656294766 450600527 878817182 687612374 580993291 559368640 354988 262077121 630012548 103043835 359785781 875756409 349234885 836021958 94745522 701487452 70116072 888009256 985434031 682526652 246674353 749878923 311900555 445301652 798083997 725288632 489684690 740385153 493881340 623295753 442057157 536662670 428849964 210542547 652788219 692238442 55820330 721946989 327494409 114626355 8759054 483868103 429679612 831554891 499172981 133728450 223584400 894690190 943538405 12872480 743263219 454546167 106057842 978930983 787349722 199616376 962714679 892204598 807500434 484284885 547980759 746960149 668302618 587940858 192611977 767386557 244624670 701765174 961664906 365506700 289135124 522777422 509185898 68460670 626014511 591715772 84461022 273246005 836098848 138342753 638590766 927836806 281787620 907566635 366430146 104020674 256994138 689248066 778163742 304886502 408620929 69048123 398073536 1001273183 707819902 248440233 833592359 26128581 531289139 18600064 549859385 87438986 133953001 283623518 156249022 471927774 520628240 911421637 690480121 970666606 710962317 352524763 469392624 664951699 389900096 693433991 462821176 473981189 15322953 752016372 840496491 316105330 735647222 125691218 822428893 25334658 420994620 410245202 88090862 141697339 725772342 703102766 46157187 342543029 32610820 214402200 760417261 958285606 814506566 373861454 43734935 347593470 416985768 728934927 738253907 408010699 650443291 504202241 427218730 299188289 800146410 718213643 488853492 849877191 706920631 191472989 561876806 144634671 721011933 612997030 111991793 225324949 150863016 130763714 338922294 148679799 503176159 999656245 78463564 577416345 892017959 982955273 203065104 395858165 670869027 244141567 934229311 683271668 828904807 69637244 884254176 148158633 609820104 951871591 447914303 738016886 928374367 143337272 783837942 712839275 688796569 94271487 860681872 991422766 154869658 30273575 362781040 174457168 353601501 320746043 125413859 59136220 813676747 945293550 267596765 954201804 962254587 835330744 389115447 330292936 684742044 434086369 713781574 100669553 83423336 974092211 192464381 780655640 959739413 352233655 114770955 648186343 301794431 968841266 874464534 757688326 7791316 289913344 253189828 421023671 688846113 938540932 479306506 728098082 372147690 161989028 227874560 877067412 684738153 291887093 996391435 652511744 650107474 34085430 877132838 681957077 514572718 129609348 159009146 897012999 52660658 457938814 993926450 784691832 558411373 246935177 319612545 133358258 781740217 890052121 308971875 851033894 292999849 32132472 239533388 532461703 635810471 801590676 719590769 135688891 706231427 283912863 641550855 17964290 120921970 38793075 245060264 863355788 797463690 88145422 209008318 988282947 180197280 308095784 102871193 962007333 846524582 753901402 134165523 8995859 711651541 876132557 238325764 672199556 429210838 415062035 173213421 538353209 989552215 172436664 476817999 311145464 658838062 36674941 647246320 189382206 297704645 689769388 528710355 309430578 721957724 369214523 925751322 623779847 310513172 835861783 791331704 902982376 137713901 627950906 656113229 695118547 350701056 865781707 662697678 439002713 509318923 591199784 199523574 860846307 479483359 3507829 273420593 20327671 934730973 459073250 724073302 325668070 46969186 649962391 434085495 789448879 725103947 132242984 287408727 804703634 713438656 442383227 193617039 648529062 679738598 389340536 550690470 50363818 210058886 360270691 821035551 658568830 603687020 879848470 856992774 401447087 728293430 107863538 99573499 215039314 283077438 488519016 800334137 969766415 209885227 153353748 836993987 719223825 460795984 216351551 117979749 374362667 431944926 680402341 424043177 365749043 388594292 925035089 711316697 374821833 319022443 187698391 386042862 807598044 174245232 27020899 233554612 667721566 189303708 60069717 688280011 674594404 97741734 847706981 921442040 710288778 822586794 845935504 531047406 239924785 536106184 263189527 713586748 880697028 484043372 306017123 781895516 165282810 782532011 694419578 590194313 544753749 205661649 719156698 102500103 649173675 658091412 934207480 82404555 794202622 320549289 624818750 304988212 257757156 336209742 848131836 232260059 344897988 47183637 90475112 492707530 545920241 503603354 868671436 87111101 537220253 955197254 369687913 2513717 464126650 979741843 704005036 642122478 839418860 262043121 743077669 301742746 848982431 128399352 535512039 987156487 465372609 471354926 381948772 251351332 24590834 365521704 441293209 632234705 377987111 580420721 690205216 148805465 640665482 320878294 46191631 147785231 340809425 847204367 811937204 785181153 672637778 604464148 940032974 547180693 682488779 533912086 988622940 735426904 89846439 955940001 53313215 934253749 639250229 524324982 358934355 69079110 211973815 260053185 393533317 76243605 607716852 541881376 915897974 587872857 676941961 804652644 804046376 190559382 812476960 847392817 15304413 623596074 858874552 61805044 180952878 169542077 909637731 313001323 202528535 850573685 254029770 56997321 296966888 986925803 865291370 949814874 321741433 481651298 996635780 779448561 961733889 697665382 208893271 873143505 245533536 835948288 538334831 210700619 836711350 42824449 160493046 653994207 159170242 921344577 755874770 70768689 506295825 364471109 865885189 193381103 586551738 653989712 121367094 332770504 107990180 846426126 696845006 302534549 469196022 381819741 498611070 502967955 189184750 906083063 898046619 496962600 367019258 112084946 716581972 280030974 619439795 267921589 199055687 176021978 58949220 494464042 770906596 75580137 950577073 119108518 408565567 167465425 737202695 431960275 381487938 851861609 530663061 179395905 759653500 923879444 322685067 525439461 585683618 371111362 805604191 795423440 556404835 292806516 775269599 736065743 783498349 536767725 221063847 602081873 183243063 881571246 301497832 932816496 429853997 491850434 107484773 241596490 129704049 19029248 671829338 383102556 602205013 135504217 567575619 562998236 79336314 912723842 950499739 942217556 559554157 926883402 989797707 2341726 629207749 39774514 747215493 558417892 231786657 21583425 115424688 564386619 860776481 709062397 787571364 160451677 397561879 681571705 920506927 895262820 25723717 863677461 98055016 71081586 902657323 287166323 116821483 481649319 759225864 651132692 460479326 490578994 392610416 256597085 25280661 491788181 81425263 70858206 545018901 924623104 9332491 674001018 548472426 957987928 434313008 179320487 314738039 515929795 26513217 398725582 507659016 314379543 368555071 325677382 427809620 431733559 531840927 807301735 342111565 859992465 462835133 483280964 402218982 521265948 447064387 409253775 715429350 667955908 294117266 351583997 708532739 918918828 810493965 516045451 101858600 130330498 770395895 649064929 464238839 857360981 565117125 320956578 486759101 825374354 369847542 133739904 299598374 88263637 668910225 473778533 499422921 494538656 265250012 487831222 217399945 426855397 230887507 991985944 167993684 77958164 947402488 899553763 258889468 552315076 118880689 526820084 313256109 374105420 307752068 550182472 908835487 24206770 750571918 712044452 871624625 903943275 443031327 273948785 302677012 822426094 732441661 853022672 673764145 858978309 633912573 691984394 207124277 343325608 979962462 919808438 858751131 111824461 631986228 106348813 39503330 867410648 645396124 5811463 70236892 21882950 114612288 712005503 871696973 890328053 989425072 374393578 390631311 945663537 803672211 447326253 814939886 905669374 304586516 823787248 390434551 362564796 401978432 244442124 511300348 447362338 167249700 151122363 804101633 208468927 874923775 428200172 149512775 832603685 107183487 977428394 729188183 650115290 793881042 18130884 501859565 21533079 129566459 918106921 877821275 732097159 98387298 201228135 937124122 527986679 251707624 733921310 646910645 101376926 426752621 769210589 875371231 303542102 57678931 352001558 988617984 724596477 111728892 743580878 355806195 85684899 871126717 479296192 968264610 349323628 691236154 922785533 732337179 403609285 599932710 910630469 705669301 271614328 996926689 494255419 191698006 389794149 782813568 668714188 442563115 778469309 197885252 121429276 17209793 640624978 72894098 999522463 213394082 656352291 348165873 887820574 698004750 72093616 789766962 858623254 733033289 582980864 154011078 624063142 446345215 675392986 609776846 230052046 341679615 581617583 172223647 355744394 696047162 492276446 84056515 34403089 642273594 620269373 981278456 887753708 204268449 78433955 930779039 991942401 202239376 773548916 921058955 131295957 370833844 50114947 942225302 328159035 605749349 299457643 824135218 429810817 369141744 776667537 824045830 883395232 747520996 533182956 475166865 639430387 438107569 833838631 259815120 814310190 684752040 164843519 99968668 266151934 564643205 936624121 357057377 692893329 62509553 651876640 416646817 655529891 552160714 569749532 795147207 64347001 753396052 544534825 211789350 893806308 311593179 489056323 768090364 697290397 811749650 464825915 503937682 925292488 634591044 135529690 623025011 723120758 396036306 676574184 102650723 32870221 686705359 808591721 260466735 887354957 696881455 869938766 675923254 21565857 798277466 484430854 411456647 380852147 192156834 269030399 87936286 620499615 220667884 722546917 802737043 852205597 602324283 842658368 201320963 862678196 53018539 140381301 632359828 542753003 43821576 741287507 692634826 299343646 149274890 816876397 658327196 307917053 364142250 130802576 711807835 772827202 440955562 579653567 73233334 19737258 5870154 500248350 613312102 597825967 27016732 729355836 582512693 71376851 89975683 300912515 894721175 737227177 392021318 354279470 3432632 540891984 366607902 166642855 374573221 288064081 778367679 964805772 323383071 967019413 127408693 224045551 211745328 734240323 42323487 987953965 971490017 977756634 604205355 559953295 551375955 751921006 271205665 126091432 606645060 542641223 269623107 660462248 751960549 221535658 244303840 168948840 934055267 594080694 388119775 516122642 456992339 336240498 666121156 19073617 209819922 900284757 660757734 129266 90572867 505927054 907493638 60023834 365763109 110372000 603937116 196200615 183674205 979170408 466788921 1000188212 943155577 165672229 918418397 525373769 264909264 442845788 15632501 543561512 730096629 957211374 622976595 651986353 533117533 97344754 527903071 373377409 927928653 883537353 247197961 366283615 9425571 993446953 831183170 989280806 853042078 399344707 724906045 205044427 68134361 88796723 582609851 896867717 8692510 603551532 259210002 177208414 33390452 993357357 645526948 720382582 557789053 64368672 464045548 699214267 809964787 245558793 301610816 522931997 571120306 634289266 991486006 673058061 629268154 897778187 205327441 218823436 951741535 134989319 275334301 953787859 24199498 183732360 622873924 195410055 804530279 617574329 418924316 98657687 125115410 667275838 290381521 488035972 752307163 968079555 609610886 618331502 546896252 66013986 916697631 321494148 308915181 209405758 607875759 712840083 125877762 388880156 801298574 507391728 985040270 366726764 886036879 820370123 218844383 90573622 191132496 605284911 545270293 520836664 790610617 120750704 273505171 394416943 825180037 605224280 436642984 974371635 685058692 14985135 123591608 244479725 216812129 397903978 912019022 805044538 843903382 177749607 105785317 178533446 640223321 736657547 394895282 794389326 315566960 619830421 424267279 322633538 62286283 261520113 207303375 396398625 109056533 668479275 392490344 53783284 244119427 366577744 147925514 928318648 142846426 599598343 129476104 597158618 872514464 802768425 130750356 409992021 893464731 738494144 781467832 244843178 166830220 604233001 162937156 918720589 816432762 19388757 364761105 128677432 879784379 632139277 485442936 811487661 529343688 863303822 769348731 841660029 860363988 659023563 271487933 388634042 4780963 154038968 731077828 390072991 925958714 604104143 175964258 133769323 161716565 691202539 77143689 290913540 392862975 110890846 838671236 475073626 575768709 854220408 206519029 930913239 143517234 575735091 222205984 680760432 115107423 548035328 418055793 200070403 875205331 518940310 903859077 655161554 514544896 378973324 966788801 371373370 345968349 935518828 450234290 873757987 40228779 206738233 783159728 697547568 167621858 61434003 850759287 127023916 435575643 328409493 146455510 949367776 130174780 850291698 670764608 683369511 804346982 431143692 604998032 173482641 473958354 173752881 234696373 633070281 157647230 703629995 600832700 88271184 314278082 273773877 688580315 501159086 960048665 605555536 548047111 789365687 109614462 118161192 221050446 630133450 969103158 364191569 797346548 982214160 827535525 13949995 484481447 637172043 499336186 33306844 839955908 998041924 970348807 301925189 141324105 980597466 780293227 486758978 365737159 601395928 543759049 592475785 352058193 121110870 100740020 135821903 693201698 896809492 335868124 89174683 100841621 496072077 950636965 251569097 209999720 518869938 107118558 943125261 877217341 901558655 641825229 966380502 230301871 935470379 986949158 970432748 882620582 752668312 965722469 149437660 794906604 309184852 719649066 427328898 262993046 989959654 36538156 663817862 760461615 45902676 612808883 173414442 505938757 942494007 889971725 98470505 189345787 895427439 496633817 964734873 800858300 797543985 771935858 329795676 970111368 422230278 804777870 145267620 815176884 948579340 459507280 703433040 309303717 209948365 51015565 871167956 389349044 564243755 425915604 255094630 108588753 589406675 253349100 323657133 436938192 344900547 398032073 116066309 669436742 747476801 905162936 939600031 758329734 470788506 673668462 992257298 731241861 129546144 524987307 130928500 111041066 1566442 284507797 389155308 59667511 508637501 224146268 130542827 886149734 800035937 460904291 247950293 928715202 348024713 501103396 797422204 345814672 259353224 43216991 529081537 102058610 230899902 475286459 569826850 833611968 773338070 949032002 347038322 41174922 66831408 370968968 195811243 91364622 982914309 638049863 20428063 851609392 528781293 41356240 660044599 784927971 903323510 285290351 463428641 801661648 295360282 846692557 603894871 768536712 216009798 130375447 475898455 639117604 582624298 257475023 575256943 571407242 273523700 654707395 750467647 25304864 607938469 817535105 414922323 613632189 678333346 27057431 865622697 20535520 477397586 389245714 232950972 134160131 426772376 407929535 602491848 47957846 165103141 645574634 754840285 728626090 428647209 751847995 358614114 245590316 706119929 427017834 420533931 222320700 748155079 451317508 123984271 879099205 264775257 530387766 269453458 31725053 944781546 438396481 365490525 70146375 747047934 16773657 746755779 553516111 201970986 241407160 980723565 100200072 14001753 983411587 810641169 79832773 386311156 683894359 412999830 630154220 577346385 787062951 342182823 146322564 419674569 223278190 185294759 854777945 490269840 749012202 330588566 393977616 393984979 849274009 898058284 136679974 478620256 753936269 493103705 87179456 439838226 274636182 858007905 147380236 930498269 2801269 812335623 510257711 506925846 4766326 450331073 8900757 505172564 548349534 451003633 795730248 478412682 466422306 220752288 17453070 321855108 703290962 15966042 337067630 584343641 55860551 51906049 485940070 148667192 873497499 758354084 672031585 810423934 200796945 399322188 118479891 753226739 721141523 393312580 73892147 595286343 630269505 91544797 799423119 97569991 646960931 934899455 201557847 553072629 217271985 763143040 616982820 205370123 2337091 231899322 975400368 655725337 849141633 863895286 572852633 556909205 375748560 4073100 325931718 567194175 377187353 810144553 324098874 145252442 242467229 515776980 504555412 434375807 601117166 718662083 99529536 907664243 427958496 727888126 847894451 763866100 150175544 802891263 630303485 178697142 76347445 459572112 234326466 879743306 278691406 38328264 474603642 290611112 424425036 271716470 257509083 660093660 667919040 75431025 453795071 794677301 170950667 765030823 971315220 168441977 392752174 690831759 701538810 652472158 999494961 552380899 332781656 191020360 712366666 829302663 891038912 776541488 45736228 394145329 968807190 571114536 758546737 972093732 552978049 899709558 187285923 684184660 473011545 349805520 819522782 924934605 249628517 277215557 176730259 444180803 874652950 41623443 101533320 981136990 808238805 259531017 607965417 370026541 15031731 63697591 179899002 637807323 703233222 659807470 2149142 592566871 401224217 387294580 953018151 302501718 410752796 995358718 331785639 186823999 291626549 36703773 868492149 524886981 70662000 639716516 335681784 585035787 167438594 158884651 794500284 915394570 571256275 853906103 205403764 827149690 748746871 398886322 848505509 486421577 375074348 324748271 251920739 484514688 834689082 15555196 903014371 137627131 28647065 751972900 873658816 817883101 43425997 264222173 498774947 630019284 995082978 165241389 537266884 766934995 237272062 568464389 522369638 244599530 274961360 1261360 692962991 670207027 535292531 813044860 713930426 403281345 110308324 68954556 185453403 631437499 914087478 165317373 495347293 94203136 138558645 559986231 853025200 478164063 557273813 640141853 560888830 182526465 897568503 590959801 155553135 458552711 12737319 126101257 796118752 882568484 486712416 392068876 953527178 265670019 261705833 325426708 150975549 14343127 499434133 565678728 971059813 6243814 13674046 777231471 685342661 953995541 167980371 667650295 683701797 125336181 525093632 73684177 488838312 804713736 896952410 457391240 1289414 223718080 630634788 183724969 606565474 575237832 945919567 361559234 900298613 53467026 759347420 465544299 621553788 895040915 248886027 62092118 853868994 127858039 380550515 193767608 598032938 631129047 542258705 877350784 679451294 453371977 460139515 363949935 601516880 191085212 785337759 186022351 214077272 241944358 129196486 714932474 510764998 127700648 675781812 563043988 38211979 295423662 432710208 740628670 828339000 92174149 428744624 2553534 628900947 895289317 319144752 119718846 518235050 726458382 54586859 528438841 737339647 339776167 135161154 523322655 23581230 454995382 907016075 505633388 804483558 499144537 642130674 879937356 502876933 995405472 792552056 578577913 72243469 393727973 214493427 726151907 120349908 331549784 884083376 408964666 132152668 557895208 927388766 593967437 211875566 38082552 565102035 154279850 788718484 920424763 911684283 457701439 502880601 269087501 269782084 118720253 672924123 400609027 27488949 424380749 525430727 971898897 208713575 810250135 193211015 667065149 973813949 211810982 262463740 474496896 570704720 988181798 345586733 21570514 931639300 302755395 53045566 210129053 752848122 947257688 844513625 38757122 611013479 963676890 739875011 587219614 448299254 36738667 543901488 329622181 632308743 63483620 942388647 407526109 806407884 733582370 299814539 509707393 658220047 940657773 515610891 354488101 230515848 12008183 338987777 35204506 642823873 17928070 712462431 426109984 898630648 585015751 758239231 903823090 351433218 585234368 325523484 647016574 825022547 337180529 695646980 698664831 538216357 887442421 523629591 539906531 372266718 632467807 797276628 455151922 328467885 675445871 427188870 186209674 154649618 36621552 713242492 851257364 98876332 387931743 721788260 913055493 66151020 813167417 120546273 25245594 812097519 565856121 454106675 419263918 604520338 660066640 807777321 721896569 950294950 362701282 651646700 757319155 761933575 925214527 328878287 398261481 668266081 953081319 913991476 980753187 269213830 639813211 830385604 619631408 196760363 692287129 842621026 259482049 861007361 379269687 398128642 111029499 630108607 254128256 589116064 799087153 956981527 226648504 208124040 592626370 592579485 907790101 419908169 455538590 256741877 930752569 680454016 684058169 928803078 221407278 306286556 305285686 526144771 461472655 901142859 393408260 327600364 296051846 779653601 470873646 8058122 892328898 110949165 170841394 82233223 284575572 811774360 562497315 955872090 893929283 6560188 67586223 890350463 703212166 487440722 244694801 345843032 812440241 953984582 601452740 239871212 885404678 209620324 486939716 18601939 305842782 442630125 675508963 812494423 147828493 214282502 715340237 90291343 992379890 985140370 884754845 948141839 355301117 948414229 865704364 668594438 870892213 382258043 152977417 500682321 403574159 559852599 731431668 284185900 268570007 885019381 52163893 45290289 925906478 58828011 251107043 603692156 50215480 737271010 526333857 346253158 463379778 823239825 161815056 451504643 736248033 469891019 183109773 773040198 466256065 860566995 390658691 473417075 745910337 785866467 92733027 402392306 133447253 641006042 41344470 64792311 183078690 1002177328 385676747 113125549 222570198 356921853 949936027 83592695 220308067 456299645 155381030 393964755 794688331 843803088 33084212 355290259 634851523 49295937 80836277 100640980 95720888 74059976 750529777 456828062 100295544 661592806 265546006 708191844 781231570 67933932 808942677 63530145 793310911 443405644 753564634 409711889 565913432 674426545 463278838 340809062 216744596 905482583 423192216 803356654 379575109 780210391 690791224 178874416 786228494 339086592 376653731 577916554 490179032 936234273 893571026 108676702 977976171 323748199 130580136 75202004 23631332 385013151 146752843 398166283 735109289 158785407 339466093 76434965 841738580 926598735 116617382 663281200 810047085 110228098 64921560 865644607 216097677 346634264 828919459 829275236 205830578 791225384 535711483 406024399 41323810 231867990 887142683 590828644 930663836 128680319 672227864 240924795 331550794 909478033 426812014 177115970 278659154 702382551 703115359 555745297 374917995 956341005 180958823 281691330 856221997 968760170 1000763105 222691505 549657933 714949220 119583019 762256605 308277715 106256793 790512018 878726650 775842432 144167528 352758625 420456090 895237943 766555736 333479509 708677072 2264583 571947083 882024108 146630480 828655178 33075161 842520910 296953155 494221290 991367348 765256066 342102225 385579240 91543167 488869286 657429347 101566888 959266998 293987335 49723143 292560999 960985157 145776123 933112878 573592147 475075991 304611978 258646981 142627906 90662968 170521206 787498979 734534406 663899738 359524336 816728528 973326396 138871579 881230201 263598242 657611940 171978655 181232222 943022356 633919778 738238972 437415458 804994198 30756332 992915118 897097065 56381699 161698229 492004518 575037456 473563163 68915396 340451270 686773121 198766704 658401447 486897149 967527952 835655722 183390002 521731457 101489009 915899880 372125686 751116686 977171154 732718708 601487660 395938973 733582722 668372735 797022561 245114363 756347442 785579389 502746068 427102372 346997472 94566109 886500116 163646412 139450654 152835200 375109692 974030765 345128633 31582420 126495618 347721560 891395573 257109311 813755699 213287692 634517783 521597841 600409334 885557888 680986866 700607356 947225987 472035279 513969902 304131366 380084669 660272975 775811946 834302644 167928138 324454456 446235646 909489398 336654609 404096558 210664246 237624203 673583796 668625207 80366917 819217952 591335802 516690642 360145404 553101492 795128066 224247858 509457217 266230816 882739332 807866657 806250791 303426944 969304982 698240646 85984725 221626129 437879507 183481130 286697920 482781258 370230117 229033371 333998712 660352745 316293504 218886740 327359094 228049966 587939643 826981358 288096463 44236336 887542147 542274283 938971988 266602242 81222385 281241144 270302808 687231389 444529339 422264796 616531429 90140573 577513534 756677912 64464042 903483155 957071498 521860173 167739272 182589744 214583160 269275219 660696627 568622026 133844125 512477845 735697792 399982579 91670937 177434383 342161951 4217169 876033047 415468500 311403393 738096436 110398129 739633626 477019239 250780306 104391730 102943201 49938827 400638318 953111094 744279218 624169402 223907587 312201758 215096914 422831242 575914184 716406202 165262124 393010329 506333571 22185001 362294883 329863382 41237781 935463614 663288152 155583487 153386982 742779732 196448676 790767541 144639963 157301521 224631085 701795589 679069131 658437637 330681433 764443360 9139499 587966780 854912932 955051939 679074556 986279067 152332515 602254769 420978149 903438506 829629466 657334323 770862991 69754043 770693451 255445204 212155563 139358449 98410426 544005625 160567709 899434162 716434940 772753313 642009732 199707217 458707717 280193543 464917524 680858024 208988188 440769061 889249048 475828482 901344655 646846997 704198582 243421752 686940223 414395441 96132835 973584603 370636690 911761478 71884868 705932658 276731192 472356818 887966850 684078222 965618884 318292898 27382381 610876961 890932283 117416890 332021321 821297567 229357668 376969942 722790080 637877004 503928553 638878295 607791709 502607480 79064156 101528484 357289591 191804083 651332179 704110908 979615411 719084121 861499119 732679420 167458295 229383858 354399995 606857725 445777683 928547648 372130462 59946693 321101557 72185115 139347985 141849658 864149701 972726341 346057325 990279458 862536449 218804294 534799256 488279891 894859101 657742500 797598476 589965980 175077675 971640226 506789523 246952977 610972317 2629404 166093042 596678964 816093772 246421082 971278855 24542071 522173890 754824710 952126841 180516652 282888987 363354827 185010852 132786831 360632938 83007116 465031415 487362911 63612332 115338184 150383102 781909893 138517897 553901623 527787397 878145150 8709185 412604093 334450275 29126750 314794858 332794277 523464159 808364110 900161739 404755521 444474060 711130225 760986536 379436741 918451894 885017564 150651543 568640771 417996155 417815260 684412658 675607084 808541290 465182326 370797142 178181654 459422293 737514797 893684138 112836941 535178090 174141891 191755220 942154326 816212668 519538172 699309773 984323478 592606164 954648835 907797359 525276431 302054910 331564128 164307127 899288186 785367696 961130256 674066068 8116263 251932320 998529141 282700205 511945654 802882412 925389489 78232395 95517948 875981260 144316577 962843383 851078293 10825 243276603 373301689 257911550 487620649 643919865 114267701 635028860 983544420 517251748 888500724 865796990 127681594 812846506 974800053 418560272 752147630 531724006 815011861 800797671 654046425 555499952 337296688 912701246 103279731 986580566 769815489 518008997 214156584 926560067 200983190 298831054 375323234 7607993 389863523 699032874 11737685 947777988 311082290 581918325 723011297 929892561 191273120 504606487 58413932 937509992 240677570 360390264 938064277 444910398 638183649 508606339 624357141 5143637 287549204 28187894 657775858 236537758 602856767 902186624 422395419 130053633 665593798 344643341 421524745 916888484 976175030 316383935 499890597 181056272 895934234 793138734 119130817 181900049 18293642 773330001 889119647 12210150 596894431 92990681 359311543 278827632 782422478 284444811 974141900 948082396 898616556 711584788 202294864 511982615 902765394 523291818 616957544 527922174 803103011 611865358 859374743 971936920 625385689 508912653 689433463 847422141 269336530 280509693 874653625 606678648 293458142 315465163 731105298 329246205 422716184 286516891 457350343 987752256 991593044 790879184 439140212 722671641 257345662 30377223 101141696 369462039 131536689 538747944 984799290 326361433 565162392 771906928 371195000 630096465 574574630 72194516 509566321 889576146 405837065 230804846 711111627 863796793 563792839 991886726 775847232 694644576 342097066 564501224 448082129 25217763 865464838 93314794 936240354 43752315 683281297 448438723 123118411 477129636 989697945 625414498 184117687 540203548 962560782 354484661 248082684 945857188 722090103 756711938 226621385 881210586 209739524 994877121 753368908 314541684 695693091 874005398 693445132 614538886 353588216 935564743 53844034 839642669 371503770 404282435 142566165 53663467 59953328 855252317 727034338 560365572 915704751 479127777 318418085 681535179 976069871 423005258 170557762 926486316 297177123 377350883 901734124 851067546 611446465 750206816 705722361 568400069 688673265 925870635 966160311 51274902 797067729 626076649 409981198 608397847 373280439 650078845 757316502 294514187 847528533 882202802 578078579 104613038 257384146 944555658 493299610 530788705 249051372 601251550 448861019 106523002 821030476 65555439 196593138 800515849 866244512 251689248 689354363 522161029 962508997 221587299 719250850 424099271 84563036 124380565 652287882 515392306 637916906 268468247 727176106 324900898 602376838 829988802 302064233 245046359 886377392 469981788 540461539 228520526 680671149 369399974 598105701 601896674 270910140 516666523 254563124 22270694 686121747 872808086 524622621 58544706 285283621 546724715 339726074 888493859 329737846 552285785 522704591 417572677 508021341 155324867 499572202 265652622 464784438 659612580 718881391 317932088 210821541 434904173 151557939 588228719 807963064 5868487 143767203 541237663 748439197 89781019 454884951 904471010 69392938 691366362 579925282 519190984 641987806 216500016 490108638 463704513 942487927 564032010 13515747 540598091 673063856 810751698 333450114 860702955 985171570 20420113 890303687 329690554 799927679 84977778 663170376 826642722 439159329 75989593 686269463 201470803 373880629 435531138 69097030 322151752 122193705 264912110 23022955 139508675 999548380 941083037 587865358 602797993 512089529 588268923 881938749 411966825 3097875 544684806 194935038 572554578 883051816 82975761 420402986 351166394 796875793 479812333 857914283 420123217 747468185 928557214 468386590 251463155 710530168 729047610 568330845 547745592 230956598 911458013 619809840 737680248 332885771 511488319 471224046 966984624 622024693 73122465 69583471 277680130 59455240 300101242 730467507 851536951 153696906 432048966 974917140 301107995 590334398 42659491 276812801 585162247 37249964 514066466 375189289 751748183 743894396 507112808 334329216 935626207 701340962 944003688 171700715 922690082 63637594 562013447 902559868 755782698 398694510 193950589 384520493 852672655 480053638 306455451 392393246 368295576 76201827 759808670 495112047 449937909 996113474 993784468 765446082 283638373 110662453 696930869 914439812 155900507 463833912 429058328 65149820 468007622 315217591 642331303 25174183 180920493 204837628 611219333 967891304 347229830 665117591 909363257 315881311 451040687 951320428 457647837 951290147 124461119 306044626 317922739 789808057 668051247 122843354 172195572 349579568 901670951 533206823 751552983 63507232 798789829 110105436 207707221 195800747 708619923 983886333 148449574 652974922 173310776 77147171 693176558 185705775 605414889 566636193 529547213 199021503 568301314 991123210 988653950 132742997 497133249 853551667 291616381 350725430 793453601 441076677 297195728 757795710 554213747 483923545 639361765 744521419 135893646 124121406 761058559 842311359 969425287 89213276 963537122 654615401 942945694 330505731 623647775 720974234 831540524 738756320 149761297 779719387 950836992 981254528 528666133 684821970 684062667 579340204 987846554 505916241 969416864 743567074 66521593 485489476 635131146 314486760 796785428 488577710 20795579 909912825 373141485 248211589 238437541 507694149 844043355 743552318 330392515 992582365 75607503 796623430 387212114 759853847 471629079 441435080 69630826 174788764 25199623 528199146 565275216 961016324 790263 243586464 786332035 628879873 9749847 375558744 858681325 772361463 193962286 847461645 825128453 528850855 977087918 671905754 597558157 917634727 734418170 572560782 535160778 574855825 544425461 278810689 413037123 699146943 268624853 674215965 787816786 67601157 452733388 480245392 186012062 566400974 144924508 633700013 710283723 566891940 27084197 691303493 750033829 67797180 681934697 456740343 196072359 998902496 513336314 51509251 540641167 875664640 996083252 11596026 482381460 206635847 659189948 851030822 800239134 211542820 215913397 905214879 212565704 270816644 414856481 635452538 523399555 75665513 305953913 214153438 564611387 45064753 890709949 13815982 111791247 219080060 323370926 471282674 963627536 136045506 976234671 733829960 546455265 222962815 812465714 954671432 709888979 500380756 525286565 517504625 412773294 622808313 174657301 122863588 400758226 616095034 338896029 382659747 935731554 247122943 176639699 453169511 595607147 922350938 363638175 580832041 88745771 80160061 221173981 422412199 463729043 448203401 707550513 561334393 161804324 636827564 368200578 683888760 153607366 95336868 261868485 753261955 700450924 902303198 255191853 96030083 704509656 847075615 586180911 114602052 780852506 764737663 991844204 468481990 417142921 936095496 630396447 364356853 442690956 899623099 388151350 8454612 945773762 119599823 157482454 981093229 373856707 800338917 871129717 868692086 116793801 435897490 404404947 80983357 962044164 899207754 714690825 442458189 882342895 929562230 847664635 546197165 428446346 839361372 240212379 33297944 27284482 30035937 687492482 680360164 918352316 102577462 345917278 383484845 853242739 565791241 317796484 414373089 27375359 775202111 650637349 964454863 286422440 924869732 999810197 370309908 655020611 937479792 414277974 512888252 913578275 8373779 800105770 409155717 4821768 23637152 947486717 263283390 970099504 567958048 689175372 645590899 517254870 623888745 18041771 551615730 445025305 946865874 846208516 308566688 999755152 381032281 800813378 48673338 235325432 3567869 836072408 125645712 314904960 450086474 344654045 90340150 607062749 68040363 217647491 311638444 105054567 891479629 539064764 269002751 415208989 12666479 196462418 133385553 835561524 749531270 467352343 836174416 337597152 920589118 911151871 245404520 564994673 420951915 557944010 560094909 773181620 964855863 213220146 84399297 550797426 75362642 772289827 318844423 96895514 232530561 288009275 392154256 258560375 248376141 494112592 627387483 337770502 571149558 361868874 351534958 375838686 662910273 166649389 423027040 747372041 763481953 950727362 229881094 110414983 158664260 108176693 709680638 608087706 523764204 860240217 421114919 8469386 284232228 92321948 346870076 1000663625 283015684 900192182 584871224 204431954 207531781 646410626 575647346 63428209 594275055 901621172 515514525 169378948 784673355 567996229 929421269 280420703 475410439 926571834 873388893 899088587 500350190 160604150 385961629 606863824 945845368 713979455 118805211 356149952 206951842 556055045 41934237 698222799 739905713 94281858 946102452 769238090 888859582 468929300 854581462 848283610 696493879 710720269 338532658 649701324 874421811 563847660 361454677 3923806 245073129 617133019 139231553 476431437 983084612 802456676 197023002 586083965 992261324 885880840 286213927 181206608 524695359 352989508 115869941 927533456 290487794 809993956 889489226 953825472 619804950 385770136 322989059 581282049 703662197 152041527 509052325 19580453 32024896 553932141 56432054 60868914 669024953 851211773 140668301 688774874 112672072 188557862 950055091 623179140 76098980 613289740 494501352 860045996 746057547 50335112 449051120 358571479 752176 306295613 656924778 698271938 333149254 108086242 546021966 541084156 248872579 497912597 713408656 141741651 74336520 100202820 354334056 345563981 185828171 803871016 335679296 858784833 94503831 607323325 107199285 34773843 447385767 391152145 435956901 528303051 129327539 325732769 265742420 601000817 406184867 548131418 594775841 988985206 308183571 14181134 197721385 355653740 675232992 288909602 252974792 994563078 779989859 579053746 929769685 886806925 262457140 641911871 213989855 927911149 94247761 768299049 188680557 115039765 946617812 311683627 728499537 434904357 680208125 473458803 410982477 958216126 649164005 441414603 506277016 451593047 811201914 956226224 34662483 602077712 36260684 219135702 21977216 421717517 399172190 386365687 712143951 558110941 201408569 882283301 232707991 3634491 354481325 135912348 244628013 316933631 522257990 346801900 271906842 174813771 899975565 811734606 994625674 951604080 455962877 755250024 182561994 730586941 152893140 988267813 659985897 340464663 355805682 1001652111 34667639 875322398 267645152 9503668 893305877 443199651 432328202 297149984 588493391 263285310 566728898 507132094 72321769 526055386 18539583 666552942 411173879 652620377 185630714 499262316 935312596 921255795 625239393 21597699 234190668 804158274 636491643 937945102 562170916 922948364 398076378 71382839 681147490 91470180 582111083 454867011 497492572 406917666 98872450 685642510 242367306 601381445 718956828 320078941 579977279 953554925 656149437 685865269 510244348 435095087 750255461 975149770 75562621 624712357 448502452 312561343 366466273 417561253 484981760 998522434 981730321 746883767 194097396 862305527 215500146 818837956 76951734 198335846 251843702 379199809 343621617 685044618 931860086 589785314 191750963 517951193 750715875 525399996 16157606 487855071 982724257 903206844 904962383 65990575 618183946 950640168 894153878 508517925 847183676 979291415 457431307 965714807 943076557 172941395 100493833 661248701 154606970 512998462 667950135 644124488 185143031 967725482 711456060 727271555 293545563 720081793 763277872 866957635 966271531 71270712 953919366 220210720 183933494 925999857 926803863 402715052 367711982 616122460 652340489 957246745 802870477 51339061 600317085 479251896 325313206 344740783 157919549 495485493 868530938 535937742 959564761 937187456 294366180 415456874 564319145 362959497 77354838 252125137 103520611 570992469 232890402 885980563 229638337 143079739 184641540 814288400 248801045 292801501 482614976 101939044 837681621 831257256 381140035 280802464 793322141 199918813 620677120 360558179 414187876 819207121 410115515 793364261 95654782 409987888 657756626 242195684 200210694 212746614 60168096 99809271 605068534 410624111 515532047 500821062 269858087 48565092 994529695 266226331 959212992 878455667 22228970 574931708 886980017 610675403 212722348 498415266 353458980 223949758 550932623 541109091 384306265 769382620 791905337 774662698 158614133 618938803 760536087 876536137 991823624 841936571 898041216 318382671 276037848 153625343 513261846 190135342 993367495 952475117 896948194 482415008 192352137 112669631 966761090 292932497 112049504 796179561 117386386 341326622 73052083 944808894 994909004 618179751 103284895 790904192 660343079 728223495 556515526 877159151 78720574 368659671 439768168 126444716 218618755 542186845 409332110 419357106 749340645 502973710 5530060 155673420 394102356 852662590 322677568 990484356 519570929 560747737 118702092 672868846 452741695 72694151 979996373 250119099 463109336 574428550 155492350 165104766 579900953 975751572 432212503 443571729 334250810 964329317 617896458 753699872 370986118 544060457 142607271 755552201 655643677 349571468 21918593 256816371 166944120 790751611 95828213 638971013 66559620 452624601 727576641 518971959 507284752 669629463 207955779 544769980 934000822 58400128 685590241 97178719 797921272 375210009 164475180 871307319 993602462 686303516 2746919 761913973 438031232 161864076 328020288 535661642 192255414 459648177 797804498 12585320 706604521 17221960 293057244 256315666 471274222 812181081 917490601 107441709 666102781 448626185 340367021 901027258 947131006 320632829 110224026 725933256 122716136 722802380 622247690 627920404 829420087 230780500 612205004 306744782 687046944 268143014 734497940 931050138 389055092 789347129 349755504 682887610 684823487 461318375 380737173 803166992 384067619 642556164 735182998 937745314 281530022 405808855 749785 555480035 418632522 744873331 749633929 717544311 923009220 383678826 491469642 175850420 364744889 917312187 648574959 671882629 148980550 971643635 631756067 430656714 705262481 260789228 787065352 245454610 60004715 79641395 918365606 870685160 495616731 491453894 430146412 677172918 374388920 113466133 680605731 508885483 258991244 95853036 108939623 323514828 156411917 967463889 537635729 631567695 415015226 338910797 39632856 683771141 720796336 289615442 73916069 457617871 319030473 461796563 401390264 607520779 968430193 50106579 153541621 117352888 64125717 182637386 738994548 190544870 553191779 762119308 512233372 975690815 229046746 295188071 69832374 896081054 128577687 214907331 727482573 446900922 234842539 973424366 29116875 132844927 690409370 481968278 53878350 121081136 387576797 630577355 266773470 408254230 198743832 521923385 275153426 391892487 980516292 95632222 998772502 915831397 938323530 429906037 536330854 222331802 400883087 442299663 118535992 796327790 915507585 384601599 431710749 697991904 542896956 996928972 398100699 115252636 505925817 79433329 342786728 42286711 612931086 22748395 113126624 653358653 943512626 832758688 656377859 28042317 576470101 114266192 677076286 978222127 554068854 98475018 134605394 121307807 428520232 103760405 442413736 308104581 577060401 62461459 598735618 305670054 334497307 147613665 731161697 503278813 83242798 625616834 782302598 667414467 947536817 677490297 153350211 494611859 131273250 248967820 590829274 299122285 666386761 71939124 479689900 894091731 97585227 456594542 574292771 443892023 829461938 815318678 812409652 26023572 320211061 408133013 59929040 523159001 889550797 444179426 611234273 400329767 925769575 923578738 745014895 387033556 966199617 90723225 517442750 27080902 163178054 232574007 102430759 281558523 448203543 65251534 10692950 791503992 510230806 663601962 461864408 312190985 197872867 3284343 245138780 557199510 716944874 249173720 512852181 921878405 930457778 597740713 356873019 676480836 707105228 514982327 64413358 315571748 127903348 707778858 696088019 678091949 315876477 572365409 649905020 241185874 142039659 554286367 934471367 822292457 500539335 642842296 160078959 997657194 786392223 22316400 619955814 979874960 60311903 975624664 63317789 751123119 973726072 424313617 621057336 791012436 504161045 649227504 851544187 911976857 427343265 645879383 521214793 189630164 203900887 693514526 793096410 285574501 398548593 198338428 815188477 736098901 769077293 311626828 669761303 74059748 214652146 144290506 512272555 495116059 749141891 415307289 951303605 622972390 321980010 117075763 411192700 578206073 200356118 911801014 352734556 320686250 600592257 108247092 754694110 355075584 26402103 113822720 974764840 825273955 120603656 843129140 200877954 184177003 391014387 308718538 726477716 318962919 931160508 681157083 100063915 729663800 14859132 637962656 447653809 859743145 267726494 530278666 472000811 450547583 736773577 519492247 983523392 837656872 48526805 626735452 895281409 116912658 573427084 1001299869 32647456 999438150 392391444 480513109 833009894 799779306 983976940 177534919 998810071 906702836 766441103 563200645 510979297 716078536 590744674 658203077 93328011 766998313 542124338 542311513 953708998 113064110 806404081 224624021 450053778 529339974 65749606 542009894 894765147 827879365 83268563 260637201 355588581 154400666 64138393 21533324 679847606 600078655 475661556 150789474 136455372 562426717 277730947 374023285 18860172 710980540 501174134 334259498 343547969 148296804 707253792 903674200 70633853 647815788 694996810 587904799 363147328 445946712 619615470 905543435 855059402 903779975 55557052 152534898 841137215 232939847 24054345 770597317 728606387 51363774 822913601 198812719 5913944 194239324 384293921 745066486 462823269 228487032 889812807 468613079 668163990 794470572 708393496 846466922 849594663 494692803 842808118 317826247 574436012 689464311 370653593 835999873 825734822 937203113 105843628 749193634 140266592 670764046 188334241 833052437 267714615 669380378 729135613 865760897 515840062 626402829 719699992 207354615 704253348 586263218 233172530 315013211 908839467 663533535 314083829 535662425 140513094 326445051 350160089 510493128 702539450 831083053 828130185 940495540 539828335 572638451 765282956 864291996 968962337 290953629 684346095 241223096 803785782 149502171 979507995 286461382 111594428 144704647 639538074 557875475 896512144 724360001 93162231 12588633 675016157 227890637 509813528 412361752 308950197 591707974 928426103 846405465 510519560 968592721 846724262 847116981 312482302 27911401 260496397 449861384 995875615 114014826 142187206 171268587 918326947 525235416 34567950 825037967 93966559 862074211 778614414 78693076 57580353 245851020 493392703 1075039 316551123 731044182 764018865 292374518 197725640 28082811 681128047 669868734 247188567 647729326 4727507 68523977 894739622 557996515 196071346 692819776 289685011 764868409 39748128 384729474 576200099 33537753 59302615 734944293 616585411 596360586 240860873 236469646 336257636 380373567 832062113 285438497 512922878 744079627 696088179 5377274 312279497 44989562 686764840 620980831 133690681 638352508 670818870 18518756 641886473 818671227 890127672 62900795 214806817 629224516 678654814 15835936 25165920 731023392 96803434 173788057 426452264 174648810 440268910 554122950 843175231 534221138 694866578 815301926 730056416 559721670 459115290 736590803 553040904 237850137 103915783 140578703 385095089 350835764 507769339 991582712 591062988 543669863 624468861 739179983 177368814 982382128 222000097 790098140 125198783 669443801 52796205 730869327 415153527 941547989 798286451 689072046 862332089 698388738 340105710 364896124 589345158 735114369 206376364 303968020 599843788 396135916 187258761 150039040 682995447 603551105 256823311 562141601 544388307 112360852 357719922 500200118 590884507 167841311 49534265 770821968 518064497 473693334 451380068 456176612 502195144 586331604 571676912 509042155 402927846 243777860 610494013 8008207 618238240 882499012 483246665 852881804 431304894 89608110 622401562 113069239 106641752 529071081 235781288 672993570 516139828 656277076 259222501 92038456 336587860 805029584 388597798 120037468 769555270 339909105 998008249 679618545 855811060 70968620 246052465 365145565 262980759 993120606 905868113 400961374 634161578 866539726 58611378 562687439 806892127 97007860 87075597 646393991 126801580 640676822 555421522 984847496 412871015 780909793 687361144 677170233 235137691 410923651 356817579 60695134 516760 359390141 478611345 830066034 355440496 890345163 684002355 259587564 830654267 928442406 569615428 827609577 991324449 320201347 658800761 578024416 397027742 863108987 142777044 380562963 517628470 733589198 28673895 961859703 167119115 22262760 466007483 440885220 845197393 464997032 25608771 207161579 377516486 108012397 882206326 291415856 365321882 436009748 257889952 226164273 816661339 520647017 710025449 759121983 299481071 844770028 997289211 286987854 573712810 884971606 247948944 187418202 680686396 435498531 97941489 747201347 196533625 789278754 834698265 126892911 498632828 633734735 554049230 875424515 895661810 883286789 220346505 3695332 734115299 914806329 733461974 872802844 883649619 210380012 893716604 890315021 816108789 168330634 2855376 395455522 874622656 487772228 241573090 99285084 411967441 649403422 257983180 431852421 617006421 485331419 952276958 975439902 106775551 236864787 113753175 905246988 956350745 9320038 694327857 396960151 836542123 948844664 200481638 780431635 334594754 294785513 656881784 331666 956917960 488432637 132636629 698575521 701281528 628925024 239839372 999076942 181318090 637948769 40899459 217108316 911692681 953381612 765265862 987991793 275878984 522621633 96864292 566634842 22966511 331220869 245838597 491216568 79347802 52848550 881177538 413851668 382464656 298402105 510389388 711980277 638132388 354581348 875545278 356846372 388177686 351008010 27646247 192660416 17034334 648614838 561030622 708662557 18789332 329139439 335932642 445616032 548971284 267727994 548151734 970200371 163417768 704968331 788542147 147260590 405717034 231290855 352378029 309322627 572042261 488665450 137654653 969918115 82272325 389154061 343789371 115453716 600611277 604999355 567928789 664445231 191680822 474730461 11252515 823476608 850828289 483890238 103684852 553072490 701177530 228370813 931740725 788570082 753186365 846700242 140898888 625362624 4013921 451422477 477821811 79612208 29584568 129115430 281356297 184731775 942439694 880002038 213805245 770576758 819628602 258637741 350165593 947956400 74367276 338411316 356678065 612295281 759451273 257641866 130101357 867110438 303381256 809548002 916010688 475179645 184482876 408099773 458258825 790378858 321854153 622341486 146317930 514107316 218915261 114109650 178354679 595427403 153067646 890287542 211679165 50922945 383465757 42090391 298033567 991303918 77450036 316580848 515404454 775038790 554196424 743652055 363976187 360473974 145696709 599705492 739323926 469302222 985727715 274646137 960941354 810050910 43467216 825882984 270604905 304575716 379951726 707657761 965822687 413106323 522882651 615647840 957207139 336352905 408517328 957926310 888499200 32911842 544568605 961148782 913035239 440548732 557254793 519792741 373130923 8963421 584526222 94144847 919375344 851530357 754256057 911446657 250274622 704327647 362242054 312107363 788745787 178801210 107672810 617190338 695218765 48345271 717344514 143299123 503053798 164149135 973672370 390920920 789537318 402915769 853488308 152497478 111066893 569051876 486839156 389343890 727680254 129035635 248481287 276558351 35972640 122325613 362165299 127117583 990360099 781315138 526856466 424892101 119439155 85984548 207741557 113302781 469485373 22070763 604476915 536892355 131797121 774576073 814524534 764631165 741917174 963478510 609892902 332124821 877046359 40990472 144415995 134944059 118224347 115914689 419731340 243706083 849787960 844558065 140858012 615188675 188348418 933636849 683955705 486597145 370242459 159196660 672632933 503667383 987540835 976672283 696252864 303336406 618556061 402165869 300082563 204854722 397847656 780936449 298883826 768552225 260572068 879983926 352393211 520871315 428840903 5304820 162094604 584596599 420406512 559462504 946191752 578013137 23220476 289346188 761176871 553548139 901812292 183448391 677080569 42792234 885769849 809021990 762810331 284980605 848443105 972006635 367075211 584141672 791129422 895253524 539352532 15388675 149846282 446533809 9903671 307781690 447750877 954740398 100930792 243405566 55970637 316673141 58010136 105053210 157496280 557992095 325608612 969432731 694729798 36463895 463785857 503048053 462691411 276245073 271744058 16028008 714332765 89747446 736148683 9012645 100035414 933583102 948736500 789573662 829244561 701255622 27334640 343312060 24038324 985273487 729225192 144949044 863648478 522037623 858004182 978768283 66272389 393691692 127002637 837899946 859335415 641814354 684660382 759886136 696032300 961317822 518691640 246130505 877233389 179812139 294676331 235894144 274941374 503595369 440321985 849111800 762275150 829006055 693465002 538519801 834659868 654894963 933738277 783895677 576658000 258009461 606609751 564581434 807645634 930439870 314491091 617725572 25426784 205720532 914691848 283150162 477100822 746233628 289712070 702804705 124654830 799640097 555252336 956870160 266283047 983448657 118043211 566595775 636519915 742238304 298746107 776698893 280506221 792302706 770837624 880765879 486724316 887514498 304687730 841664093 705019928 608472045 982754618 375458546 71737872 706543479 60123767 268302682 723564414 952912958 832341889 484246302 481610272 806304160 506437878 335913373 217551933 721286246 383509915 511297168 484112285 895314887 580113273 436006139 59374096 519668711 801125773 740670237 671480297 60037065 158018819 618543252 775862487 763611503 253961621 84931266 233787559 625722513 660693399 254904042 627477388 202610965 104314333 570553233 173611606 252634879 504957434 403771854 268556954 575309895 183400536 99343196 291424459 890611506 475060074 658572740 474488020 126328880 437746871 706166281 296575382 359282198 14557730 447206488 92465127 555853024 797996449 887642294 40003576 922901729 55271903 896228314 805787598 439846785 724698280 651790845 880681993 888205234 992071802 293200101 777495823 441511137 781709320 343962330 969738352 631005359 300469026 784155266 397673771 442309924 614356111 205807742 662411733 106876490 304238441 973716071 705396739 793921348 560265981 731713818 975742953 785650558 594146071 268603054 328706281 997792858 203247397 528323672 644684582 796370884 389544513 286207192 754747553 955096468 906021906 809222804 697099119 743304257 138071400 706085971 999130974 461167792 151980806 189269519 659813488 179294231 611325732 96536586 689095510 870192081 962107932 993826113 863881711 849553797 287552630 738341470 402058765 459322143 167028589 600377856 223589661 122501658 917344910 933515412 314130471 565264202 662274201 638731130 858450756 364112763 644717702 678618706 18871223 160252264 252638685 829884086 294418526 284834125 90183010 132693770 579387052 199279801 482371698 158486375 496864493 312754703 115877190 975114119 588845597 532754390 552409231 522282357 646962923 285965027 857101997 355169286 420915442 963388090 223610407 133891535 744326245 334834715 583158012 404639786 278004533 623868925 923978433 769193884 853747985 544547217 289846559 986514763 746832823 263372721 994830725 432194540 685025644 172022641 393868377 395229352 27861871 461702610 24125548 517035722 114540714 693653278 871129355 229283872 641026736 134644752 631012112 992690903 483629355 976941082 870048796 544342870 623211455 651742626 383063929 837945046 504384596 844849046 163729237 687587178 72662544 389059970 776672145 476664018 519714304 437539301 64743199 277573612 345647797 522748416 902401677 784384898 899323661 686565128 634347570 243829913 34173511 182132160 869893569 822911166 985625417 113409916 267181897 526720019 514588331 802084307 770139908 322045365 387530426 347446538 871805454 199963591 153761312 941382944 468487881 527536495 628691548 106337345 534108971 933657495 4719352 428843898 321810971 540424021 312896868 685315333 973085719 43215552 189782157 201722233 663227187 350965309 28268856 506954658 193788874 112001502 222637748 560184415 104956487 869055379 373372912 440223321 55295087 351259878 67630071 497421739 949054274 486647168 103099814 908411486 716502015 19277137 538767076 9132052 285095506 572382775 8144974 772616100 457767096 309741711 889415821 160612322 482582980 649875204 585526138 917013186 612815764 817054312 977795683 648207770 705044896 223578134 120042808 574932420 315626846 861323488 103105523 78599290 57354970 427931293 498528788 370292332 420973277 706448653 256983964 446023670 915723841 821349548 573111107 30388468 526738599 587594498 717476380 80089782 926257678 550360013 427952125 691159029 950585430 319557915 253653096 744531901 256412517 737492809 485809145 100438708 221501580 244527975 853363596 164596457 916046874 83931026 209801466 886390925 153847851 448697253 692706981 506605296 105074128 886496507 731603097 448071893 597149290 416438378 508144548 530876735 851793411 667526186 577033522 157791886 446037754 342416213 332465583 2601471 338592821 161226082 100501676 805422298 165132137 808046946 194504445 721127158 922987962 899845281 857704212 446428032 540815552 182561154 826988933 573819156 444827838 304323205 364047459 505874854 843673927 32383188 810296188 83545275 287984615 722650845 301719694 556219781 149225243 446160402 188940707 118787888 905392107 250531116 295075290 315794910 285617474 159247295 850821201 984605462 107552597 635584170 670759530 374520694 176378504 847345349 418306145 648188433 230867672 895133911 498656575 144107078 467608151 65454707 154938515 462644306 373741620 203027486 879101782 216474704 453677214 280015715 492563953 781588336 541374432 340951232 582358911 608817142 643638337 588190309 542998482 692223263 96319576 380918679 288975672 421492196 342325144 352158486 389961823 327689360 787875409 413288280 734306501 347354433 495301555 626528343 726518942 487508461 901331768 976507813 807866533 875509439 144635634 727917222 21871912 892921210 704025636 495275999 574481605 598452298 121958666 446533804 285571875 945490600 261567557 946692877 184854783 171283574 690638158 491695517 46796973 208776705 876275864 388699753 513978030 662606787 463747617 875405215 270992052 195658736 931114590 304846929 282490945 1000596237 590166956 997565445 379678723 137864324 129562541 912747783 774462820 880884662 690214763 566181937 708149063 322011133 416588770 389857530 151855981 125503429 47057638 262401056 321335238 984326449 544296688 704101815 593658157 385818638 401464873 71787721 868032944 977478420 515330096 326955207 526763074 500496915 977026047 907945353 197038517 787020058 601218980 506687551 454343223 341073026 705878639 182964744 251183030 488945065 797955026 226993483 411295848 703059301 987070802 351756013 470263946 106636895 493511245 201384454 387451310 730552348 603056274 815996274 416916731 27946590 321090974 81780674 375164693 965951260 126487396 447752505 647915983 661160798 825632336 142870319 739944017 597654271 63921277 162004083 622279164 143125555 886184427 101712564 57492835 919345119 220470837 567387603 586486569 946251952 954233207 520658051 249125506 114910617 940228041 292911569 957295425 218288148 667231233 390139671 883865724 789458704 353997444 995902895 460327300 497088085 538392851 985539427 445150057 168610024 779590014 720090000 432084113 574018474 790403016 617032169 940730050 898262168 489609655 242558750 949266519 382357486 220690647 859639740 778152699 821798030 11851310 983808200 911445418 119819632 345709598 24485496 193239756 763640138 726111341 84800886 434431689 355756075 117600220 796989097 656992731 738754001 732253244 797561425 878009752 914328015 150268397 952047005 793226698 343263743 191460320 866451066 13402494 841176681 621356188 674446117 504076391 608033400 951427569 585652683 964393104 166601793 547575582 300292619 418387233 528238980 664548313 253483803 422882935 318438093 348648686 488117145 835273223 50198701 769884118 986713460 803378464 479452422 612120346 715032270 320018663 324735148 55643080 311278166 969083542 81015948 132551407 450958976 354128445 726890411 475316737 247808962 936819410 153161448 354626685 659147241 707137376 645949020 590869804 114399959 553158692 151985323 50595265 222733302 569938551 253780389 513205755 597135128 727428111 11822905 179374284 638777220 464858641 336761047 861818731 92867905 180216699 505764023 602347843 145263281 56884485 64604714 827100132 74280634 462429682 72927036 137955634 723041363 621577263 870027793 357223781 133351054 824773998 923083960 715315890 283843223 528352570 928997617 973285909 891715402 775376474 360166917 247510495 898295935 651424009 580255532 123293437 424611217 982258185 650295829 385486030 582923845 191754473 619875207 11954905 503056527 375592643 523419732 434537687 388651057 79549462 855903008 21876856 997285682 261153582 671538937 176088235 387387886 482990718 625148868 856918744 855155178 806431523 714331002 839044307 41611984 855840327 300097797 315492733 776153727 53752667 852939442 576330913 572685052 707050291 199940767 59819685 497101350 406952688 349748982 30783667 277155150 456607654 126238814 391024952 189996643 488104959 340122205 540164335 546899297 341321425 350353062 911350566 447083705 303134659 676908417 872850442 912258217 711097156 818176637 390221812 365689107 499384009 786999667 267365743 926089185 46638554 814281533 463607722 667140039 110295999 997302756 356362499 525907615 605127043 214901314 887292544 591600762 77010478 828256833 659965981 557448881 684827658 884750770 822378899 742529215 655595890 973528919 966275188 540204731 42465352 13713555 308761940 397482454 595834328 189452061 156304 464574776 623205616 490714842 500360035 45452593 468466766 927415676 1002197594 210061990 343508311 720540110 106902213 926810683 920060670 238539167 788820900 533705307 667223450 344704456 723677630 904704184 944947714 546223355 717218699 480678190 660519636 334271668 821182204 64703879 140941495 7608044 963115609 187987924 17005902 133378715 612643034 563717981 539249552 702524460 985048701 406912873 598167774 546599177 783345216 447489873 147597437 974051652 710636966 697812195 890727744 106596118 420512210 566267850 876773462 599036987 795389589 23380390 414406662 600115776 679680950 681409104 929996613 174876679 915492110 934317243 976063036 79199057 783167287 747016126 187784295 198048074 189867127 260198450 499822341 966946761 182281645 663995369 68684546 780253818 766394864 970305402 697540806 40318677 958457514 218377916 375012484 643447933 387861583 226558071 363464895 228781967 98925209 944139225 663378375 272250120 860752263 305869489 750591403 166662642 848653228 4209203 752364329 596881463 217229731 103969476 639497977 11679256 263236544 209859231 847440738 507488548 53602931 810150020 834905276 861046355 545122739 571454077 67499504 392065044 826396791 99211334 338829790 211781461 944136746 39064047 182446291 413031682 215287741 450337210 86534172 748725209 690363778 575517968 356045894 449897817 279362362 179756915 532301736 173215324 118124548 868843972 340830594 45002586 495300434 670873425 174504552 663608629 420615491 482155802 152205401 951627533 419536645 557098315 78303916 737203555 701354862 942330250 243583046 631894575 498693596 883129157 69515530 401763067 630510595 81340709 247663170 970637267 946443131 444772630 268515968 748111339 310892698 852846343 197432102 846773565 420332371 215402623 987460529 293126501 938414094 77171617 347480719 198519480 158334064 202538610 963851048 332357552 144331099 442357193 880223724 333359198 511102094 372649012 257913665 297541736 499544047 481342324 802511382 750729110 1548395 733593395 595318354 740792710 66245346 187211490 90801463 782861899 169043619 643781455 942077640 796649612 713128055 707570261 821675369 421917864 25789911 59031342 836716012 837091687 536649706 775440322 950961581 618081542 44508231 928865020 634316465 835237438 499770451 884743854 10764339 105590475 233490452 449889291 787583801 321066799 713610628 576462613 830370823 313297280 571458306 220685751 465084101 647411280 897183764 997761248 695171682 985000025 151115481 200205104 467046440 783267665 430983166 564686699 529889903 51202532 943130080 113172038 583896569 334928233 270193833 903062856 704468412 194281389 476919898 409907636 705057027 67970051 79390559 807156282 130582071 729818455 320868840 414508798 768128320 813496914 777004407 459220716 883388884 883863975 691668678 52189899 489175869 596168750 185461371 791813780 530072682 803614789 532533864 481541770 828841465 42871680 171866136 257489228 435494295 532814426 472311509 572515495 549701699 774289033 913549062 414911793 840268587 322234442 693484786 871558357 124017816 184596249 666991448 86216627 605610584 419364281 646344326 234040484 354376681 603070740 299670638 150154168 637650988 406475264 569787320 743301118 100041451 274880495 24809479 770872549 892722621 608690810 41458613 939562401 44444842 118433433 285337119 679622539 569200635 310604788 376367913 558464104 955241543 492448443 983503815 833806747 634493558 993287103 676942760 497956354 454505410 305681610 257437346 481065771 609656537 500780786 252395765 182371279 706586617 312972510 923427971 21223297 683352570 965510167 599314392 436174296 377755088 802016377 671937364 356192474 29479466 833672326 81887446 352302446 531860331 887866150 747105439 693386323 827358937 154777994 1002129689 902092674 814708250 390751684 548648561 775097528 129949629 929074820 966535800 731469416 324761011 317450479 8252245 655457636 47459158 155194142 338522221 728398148 543148522 961654166 944837256 888292944 379209547 929317265 194285171 400798795 468053845 336730650 566875913 571477930 363752687 851778949 416001626 851328264 1001677734 200807274 711740971 458626017 890370710 130799212 397430060 281376656 390197755 965412260 984560344 10461657 345356992 342211733 533920154 483410959 363125575 477561540 716826999 557719209 970206690 232154290 295644291 543131918 841487040 43587007 389106094 447187213 417996635 571929198 569438781 704394392 768048563 473106931 147783589 760496776 272204506 350074272 196348843 688343580 594408773 93957861 152594599 459899541 254092340 629441378 923966427 730068591 694729614 203754073 317975398 487200836 394532647 442781291 524970951 422824588 146646691 223596349 54996059 204045297 231758745 388327779 135047344 402292911 631168170 596543406 110886769 837317357 647494898 572447139 665881333 643264488 311871731 79448936 527312809 51834061 25873214 562673978 111842922 962205601 270223623 202421615 868394309 999956734 631938021 966899521 176832946 138608211 346335493 639310775 194177868 670987362 350033091 559145888 498063263 679451449 325109268 869942757 435468992 709329425 195108935 979867954 65848809 738617715 443404742 993876310 27929705 747484986 168235653 822616684 645950393 867580014 460853957 915806942 549140678 437887964 246404591 686086811 335310878 261377778 728287899 766946069 234865400 148492895 436172825 923157866 849494353 483428008 690120470 533874146 463556992 735072021 115420652 323642844 492424549 512448928 193603976 559134990 642944116 688137351 447433083 633624448 363634276 975901469 221419036 460124267 850089126 61669917 921693344 211641580 803255449 303056221 871361739 541278874 481891488 491592289 729860702 668679716 901271333 272005835 730232191 760709567 503089009 652342083 493790852 362203742 711983438 10076000 773749887 429349236 167316998 583889212 211153076 688740650 154763462 171556024 776372668 862759307 289269861 939511338 989323765 978377833 603935772 112178298 507270548 743784381 765049042 474196169 670047965 389418338 651054241 216320962 472124787 889144384 974359618 506823877 977783771 248750148 716391622 370273576 904399194 632462862 890914803 785484062 628125119 473039188 58853872 923420866 545811799 815917671 644415092 519911567 52821574 298390251 236031211 401869890 696355341 958526023 599815883 658295484 172979549 248870978 866427184 264524441 361909360 555440695 744695019 693674245 5018282 248268338 457030166 132738757 84180900 861621839 625593401 971049984 606345626 956334761 123333022 780999953 265690313 502416669 80061340 331641966 204897815 294020363 21820890 623681475 380558122 787329665 93383101 18606945 481070094 860034581 37773002 401865132 421996023 416068363 204185463 983481778 185540 352726027 847018937 383202099 358119167 277181 371620614 78785192 255917255 253379728 561177769 371928191 149851286 928044091 458475350 44421283 178672488 630272698 763624286 123253975 424917637 219539781 663055370 994571888 726626002 875470224 206718009 260621438 483201046 440686602 887146133 728939836 598885557 301101029 141144474 390413499 729404505 621700713 801302436 853533351 866050708 480967776 486349642 823577933 98258164 985650141 157071420 74740371 235867908 156785167 888883820 147490175 148375977 384137380 580092036 61959073 743171022 262839178 952786863 25971605 862027327 356831344 600619506 802772643 661685935 207910389 650680540 183282156 95204676 103101509 288156962 494885004 289402726 790676774 873976611 838391697 475962958 840347437 598009779 486750455 296734096 598098279 327825080 812980962 769824295 458947593 391379425 702935532 794992695 109390877 937393081 380602964 958213332 205922715 901011398 903930585 418808221 218341129 274059821 16530049 272626949 535878981 972890724 968112879 188794345 227647064 873613191 283989905 530474604 848787321 656908233 730087513 499378591 626618595 426880237 618920456 183940685 707245480 167528864 959547259 638741416 748209967 265375022 17233003 815226904 347480032 522835320 563983103 99402567 460467695 707217589 934707630 284164760 551004151 604502338 48578691 268640963 147147548 404387184 552119784 663846896 336638551 436793665 356140256 61668570 611286531 281392585 537720019 363634535 513103664 665780924 32527173 130400236 692884368 41043878 854578817 442412485 626051507 888014381 788410112 102228206 750791693 658143663 670647552 121529395 707644761 847965739 124981534 428852569 186577903 612641472 802888411 644750282 45946647 438942657 325838145 112640464 271167092 749802659 407184650 458715319 199776465 611236903 387228773 842845288 816999671 563025247 412563429 816938596 342600426 707175232 84680096 536751111 38164440 250831475 250983539 134774809 920450504 32988680 248065758 542989618 219707680 905255350 855838547 844442287 729810570 294631591 543760083 877066947 193619375 833885105 824714137 544195408 932122257 238549961 669379192 577291309 762236673 312988455 721410939 722805578 424673693 720781789 401940812 750617700 209304327 126221109 996660759 215593282 986967227 880468541 862335974 613074272 428415030 543973401 229695727 293690328 987048031 965378601 942105099 292361358 347432944 600831022 784895411 794863476 245324205 338976064 743968443 616196738 985526676 942286060 936209696 104294998 332470418 977167453 884864664 150686925 304713653 474516952 246079424 568471554 762663539 458372242 158136493 981319715 269040947 276826452 378297937 730701627 87799365 310808030 956830937 285292422 328566056 384099609 579958057 951373877 437110357 365271738 981824433 490347128 285839459 359890569 346126481 802021206 278064188 865967214 535634227 645580040 702089981 625467227 111869962 285299960 107830037 387936745 26037171 498103066 777184199 529800669 201982606 477631739 461337859 364767967 886038634 46531874 842966852 549487332 981968985 429269610 558956347 720192218 455310083 512878560 919979191 226030874 683724357 707650466 216648254 592397065 901149150 870862464 955017415 312767666 460876123 204181729 975295219 257177413 928870409 816820233 378159844 456338374 461222970 907549466 784795880 732771381 683038772 16227707 648267626 522702781 933568299 197141382 919194677 470778476 164037730 931052922 438141797 940472868 23252743 403316071 996975228 71162619 943857179 67994699 746959060 389584203 36748844 705484987 689591343 522605635 203519978 206131638 283350397 603112101 294625296 188746952 774429875 242901260 130617825 693089862 229145145 411971406 805001566 216883370 262969795 830732946 772902473 363287600 645537642 315735212 109274789 600734964 47259565 600953861 69771220 656042915 235666307 599028107 264219927 566613779 757890293 247103914 1001598094 250707922 169946863 327480408 382811093 458720101 491489061 301470057 714639470 604014191 463914125 322934760 679589885 995048004 582655181 464067160 33477315 444819777 638619577 980143473 637619124 435228740 980428365 836645724 768909515 813407812 28554177 450178513 250098688 875116601 676225545 43317074 986389881 919995209 358371825 566352734 948079820 802433757 863906796 764979288 504668621 414985924 293696113 475284602 44084106 736898058 546428055 396477929 70422842 131652798 16613713 594191775 988935442 751576757 770238399 414417308 732241707 927756908 973389714 124026167 856979152 739412332 626565866 890255653 133210813 771472594 262129467 64001895 352008794 159009862 397408293 182292088 989470336 281572688 275332761 144659367 261015604 687658721 568313598 913209089 226492702 593482049 606123500 686162260 466632272 815272076 348823987 115004320 370297959 914514605 288054640 514698621 611737375 929497397 992929683 194501916 911760180 963047632 193090912 430113784 463987036 333020335 9393044 453192384 31230574 44648148 962037663 78407401 585976798 571179594 229310826 162397427 458111461 156933338 323666355 626491490 315141274 386356045 410053846 942524978 369238430 52763460 79884739 491946647 179226203 950004560 277915076 546605922 637973831 956947374 965418638 452056174 825213948 902947263 696651443 32420058 715928378 36899769 99647894 506673858 711824289 185431608 288028533 994203040 158570343 525986651 888394106 300122596 650106691 59676972 772114516 204341360 183764123 724145247 253383041 643328259 334276363 563961413 466573448 142274362 760872934 413108048 100275789 902735902 836855113 985221983 421205859 123527159 3715042 755932243 592560061 923241776 19354106 243510887 162224698 52982286 609793114 842482589 116017161 872189307 298897788 638616225 134507914 191167110 542687844 268257683 664922685 657377775 382198520 354288547 671588596 921393680 780406798 447397794 508691965 616847238 25375851 767632386 653501081 460967804 806648625 443509646 611371812 711046486 151244814 482765257 579193993 509316094 173735499 207927172 479847111 31474203 731147879 435325972 456217670 756494168 616012191 499523034 214694955 104146289 130404549 606872721 29504827 275044866 440490912 841058618 555177886 55500382 739703323 368554118 285085708 998838171 207764163 394957705 825068501 230400386 888703899 36477327 763932936 704961516 990414182 383815243 35471415 368023341 601813300 532948415 476729800 687258693 51432188 530528407 197139487 504223254 755132240 642488164 48994289 151450961 762952296 838398386 47834940 993347431 603359808 65920891 260888944 506741125 961097854 766407296 867886558 726094028 553307092 628801558 250115342 319377970 261558000 399143669 416006300 60425578 633120078 986626111 852938798 420023900 450400066 359782155 883202584 328984393 238939568 465060492 478868229 662245003 907786944 510990957 421561883 816307723 234939796 25747830 981519934 371504115 678260328 9302587 737732383 656905570 612385713 154466697 116391835 472870002 907206179 90046963 261434729 860398888 202065196 336024223 803143773 589336077 362923618 500919157 573341348 912040846 515589582 413853037 855251167 979591994 363962424 384246989 454584431 895084934 513813080 213575513 299871664 197946700 936617686 350727804 72280111 662155436 976774230 997152832 405463439 6371925 936332982 350434611 957441330 332248192 329075217 985460295 947277272 842885235 589404747 856509924 90618357 830784296 998890419 307058436 741854207 720925025 667700634 914439884 591295631 966177691 346975619 601786798 449077983 639080361 833001104 10783971 506394247 666564216 535567284 884092096 251411923 346956804 147050002 623904619 685329308 805356416 628357497 167430334 769449376 896706739 580127985 770977254 733615305 494896688 29431308 344842293 452492506 413370641 529253627 92093978 868985038 494650078 195930242 905392616 732701824 358332331 748892147 92056712 252421663 285846410 60722366 350567440 497601856 889342930 936051041 647762103 961095471 869627033 877253951 98576904 170318877 900940325 755950315 979946213 421304371 321664574 181364416 577391982 323166565 658836526 977707156 478993890 655529200 732862085 106887732 552544689 861811072 98063938 584547875 56153209 826911926 855814280 436917154 269547233 282155468 198057276 222977996 914331663 109877765 416743093 357271604 649555474 374363320 844204103 488230896 634543777 357069681 442318011 538025868 370035338 627207726 248460830 903499066 300093880 620900633 201903983 360931754 632188897 450031036 825649258 107776651 927736146 588185314 486462086 560720041 25899304 708271400 624007377 100326361 793346338 157752253 78589770 516103748 472086397 397810382 751947261 576146656 533065509 188649930 66412565 446004930 30575386 675320580 510317323 875220807 14511343 872594017 497824969 672846956 53571386 780898387 392356219 480453288 901373102 23121619 325886976 855094301 482939628 957580607 871024691 541595070 741713927 544668654 226882370 866666369 311031352 869030226 118921455 618177604 909015007 707726748 61340221 366547094 153125958 497367336 443288554 3666021 309520721 207743327 11574556 556153353 487400484 102111276 666287181 795522321 849226025 925566287 944976250 389007148 236652226 406893664 745320003 833752919 434900740 491645161 240316783 524153734 775530137 466797637 210734049 950260628 345374692 989994787 920898078 22781910 386677909 872916281 935851404 664440242 129493643 131613522 297092602 576528166 320580947 838744312 189962779 585576051 107116874 879603862 556874759 813087018 366302457 13292337 169630029 503423921 245466685 793539791 366815868 426351144 98898672 955678508 491720050 437135398 914870154 74532631 80445720 827942799 518453563 304750410 207449775 194959894 740370552 278916450 856703350 984852490 850628856 56891059 559305822 857242379 650668439 906036903 396876674 952547362 515872948 391101722 447894694 719149065 574544548 958476920 425728171 235373174 968336311 410129011 751940516 712818265 179068486 509661207 234441646 206523334 170068318 836877482 761186370 346173324 470919823 536388726 804004723 143119445 539440712 81213430 935403344 631981119 412246344 400182662 491490622 352434134 147912033 853738828 985182717 773531022 470664829 464328554 114856055 25727684 458944535 571189756 889962879 883348024 239613517 235216934 920363071 353802852 292278509 233968544 176515146 866843628 287413924 751968316 64676009 529991610 874631818 32380666 274009460 228369917 598994230 265275787 622291044 112906621 805866342 762095510 488948752 389311446 151330425 17318485 580367177 65531695 700871190 988558020 197461640 985639220 484224128 968567305 463647988 268857107 238837667 167085823 282334236 258913038 973242574 639897513 807093899 696755954 990564771 378641407 692960441 913103916 32265003 751528645 955738855 844531392 753005523 847829048 860042637 876349789 938428424 359124462 171949780 550112136 206667471 491697335 650567512 657050471 156994343 189220267 758798063 630514937 518417811 676242407 239663567 440825581 933709926 836564963 167561723 914128783 718360358 251312599 62998082 960907659 224158631 561788017 583263253 75663932 136464496 96046404 843917256 13058448 260637107 247419669 983372767 842425192 824405775 752686070 635988223 701104445 724782134 969319216 67638998 881427653 264111729 427202333 519789250 14928718 526680256 819065612 892323291 793613406 100229691 1001428360 3559356 491058525 910597298 503707473 452117970 598698092 272079654 931712819 870972803 696313141 287123272 892877820 838819257 975857934 803929972 503281624 210850582 659571816 938389553 736697670 295408984 547399908 990621066 601167209 55426267 506713000 967104236 252950583 381111387 561614419 882249081 625852502 296084461 892726231 111455783 840397921 796229183 743298204 453779486 6789893 587623311 227604791 401812849 611965416 438469054 841076109 333211630 518704480 418200496 826198407 356520584 324565508 735384681 805804203 110728741 768511955 419765864 31997689 112186977 249598168 501742709 728751519 165690057 843201169 475988585 435867282 43976496 907529537 456804117 428225431 135917848 354313773 544586892 562946179 379050196 435799588 765947389 43800670 944084473 509447224 537476647 845536945 255772574 656484187 755616593 34411457 492615861 186193710 678947536 168491522 149121578 913023914 615960685 977457764 378551245 510946073 243963219 428804320 137545901 81368418 293045776 72399792 129364913 550231980 595890167 370749182 992924850 768951790 477637928 484183376 483687654 66529418 475571478 37759200 587019477 866076503 664802815 879850615 859399496 454467165 473545120 342238679 119638630 179511997 44991621 590810838 875397330 670483294 993083191 377174871 910964399 174121686 704869188 672961995 123775240 951845334 538247857 262344608 727928823 19685972 704613261 851642315 294067708 280536109 13619949 456777005 977915702 616031302 397079790 839205041 453695781 311761809 821259879 68625084 161177696 527684729 553249892 348707734 47404141 282728443 887386019 844401349 868078295 946635736 780099258 94785345 187132217 951726519 324945807 896223567 156918386 587033500 858753918 422909437 700716599 248631343 182631179 900131633 727527862 864878342 261516121 236453741 678630709 547794139 218721579 878305651 269264008 402540660 735541650 766088371 97544505 609289432 269105687 29633788 370966381 89023955 235552002 734086941 791349211 671344695 162843985 253155228 286754218 996933169 647735877 522724085 136239226 871875424 821508406 346765025 596767197 270570419 430626020 426148016 396458774 401495252 152317842 182123827 290907251 302214378 916416188 678278726 386882290 450427773 3841234 769758527 714094764 516577682 347885338 644459276 298646635 78150277 608072987 553259105 516258603 78893823 680541943 897184780 426003863 725240502 451870814 131971958 383501086 773976332 107421480 725038842 254517950 479439225 351091227 446493568 222345649 720015176 380500581 981355967 595006905 793640256 360877261 158511755 380854172 430424662 97318922 338214694 893305416 249666826 415289711 276087316 216889652 228602896 99793513 594417605 713241279 445662890 148741748 290402668 526711636 46402251 386048927 977408160 894909239 797108328 511188166 697106384 262650309 496891280 147204177 118503205 152533492 599435982 300477331 871209834 389250809 188744431 898194366 688590351 946237408 701488665 791919074 467368241 785576193 483987374 128964626 359960556 364959672 990579511 975384500 565438545 787593063 51328902 257636606 672492646 545787520 244323385 84381897 77770658 556222037 799329763 556361538 458378700 382088925 281389128 948175080 618898881 267780629 633462612 23660583 386046254 282378062 559511403 905641694 580122198 418398754 720813797 176274255 364713123 162453336 459152884 292997818 9535749 436657048 57593695 840253771 169046582 221849847 539423619 403441702 447447402 231534859 830770120 857033711 978523280 337725998 294580077 400721612 276019593 175006558 283900008 18130437 314283610 547136797 407023443 876530179 390715777 824951221 731640258 510754806 401162415 478888451 35775535 333010694 888722270 48082635 350300387 734192805 666733235 553262822 528608664 169756572 404218946 684084148 330577238 344185599 875163066 333215143 320845729 255677828 693984024 599209085 717697225 689822966 248620395 42870177 643306780 483054159 640812466 683196542 813727713 832187748 680167158 456199233 738077599 18513634 913507946 572021864 346620844 952225446 1565531 884007941 937182617 504973195 532936251 563652869 557285564 530148857 263405419 351575728 253017818 407193081 831441505 321347736 867512959 545427270 301683368 286149533 606481159 596461231 492231280 244845012 246532771 544502680 726451275 715269468 757895234 928726599 953562287 607692414 89662408 849874257 786934711 508127846 553198820 922947095 753211626 804705850 602003094 372861323 471516656 379742067 415174162 525119018 573849323 528836676 853424684 880026649 321858711 90094362 633129118 991976313 25022396 433964603 281258444 95587842 892032547 749967611 751155688 65698275 623404498 757781284 682113885 888790494 559186101 527291989 42276680 733832092 401360631 621662794 363627307 500440441 727119274 889527160 500670955 371076755 294330247 438617064 734343073 810416346 243619599 947382552 917493976 626635096 11832463 804849071 374220121 902926711 826640158 659918581 608520179 664989636 107087496 237225557 739885086 520141990 612683538 976469365 235280874 821031062 886367749 112564816 611277395 207566088 880493284 10573844 815254768 520149142 416913324 419269319 41018357 301368445 260250489 858320662 973803734 321013162 56909367 86227266 225862982 454564000 30838833 291404416 338257575 331988735 634103522 286632769 488982887 10046282 669509810 552538583 168425445 741185912 888202454 830905822 499915054 440570507 498104553 927979658 142188364 426881264 71100506 553329851 255060502 757643202 403751422 380549917 702277371 251130374 171256185 832510788 795876633 557494840 180121144 999047586 585669619 304318051 409856145 912960175 328256069 97933957 814780444 370028502 628994692 708013847 199175744 883832864 728244668 553732585 722062345 923828955 26412248 788730393 4091763 347386043 864005104 925521982 464944908 758026624 270782160 299337479 360748063 19759619 945764447 855133110 60428819 437492861 562243919 242920991 972263126 116466466 645600595 261739074 41831757 24680187 309765141 271566136 884586398 988695626 878626074 712098606 917574856 97925662 49768494 675667133 606501523 422876201 223665313 558815308 621899386 250997621 851185389 15007988 653731834 985547186 94258464 356443702 1725808 933483012 523697052 935241941 881160688 511246725 822894661 652344257 190697389 889411250 87870534 559120403 373251079 603161821 551725054 252876965 460744876 842509524 396860979 729894243 128378168 49528296 590930089 201072072 451927815 82214867 616365691 667249747 13646490 871554802 629389780 276740610 823702271 716535808 265854215 405053953 599638491 152968295 38934284 119155874 978100564 100143983 229748564 912458601 591829820 691081660 444993929 47610910 171004344 630895852 598924305 41863416 337689268 72209983 888645099 3464306 648014880 564102010 284583138 220603369 438114906 334149085 651049441 516769573 67293381 984435872 277672558 390023360 166004047 79659003 5108018 294580065 224766191 918751336 982682064 353274958 864988035 85222379 31905197 928673387 458535320 795697990 938090908 798027696 298082332 499739031 655397283 203969911 615991018 203403422 18657317 712589963 723753088 846001808 750977056 954577759 656768436 884218817 611398067 705665871 511491190 581243913 92792497 716232925 27563722 500039697 488944650 998587005 764766918 677227950 541757265 80337090 301764353 200356806 216771448 765545695 38612080 799588677 81360275 165405394 343906137 377217464 502727618 592114477 688645090 947415974 677181905 585542642 115518971 23056713 487209507 570265785 952425375 71941866 924989561 265775720 130692062 702726263 330183970 78964551 940328568 93763137 774927698 913985452 533740128 855324752 650067108 221823211 442833897 245055989 706769606 688282106 87113378 989336546 933132916 221691038 560323203 428552143 458379808 305638332 539449903 243165395 817983416 613199672 252290703 16802841 644927119 118714541 874381825 194901117 949130520 390058983 972074204 201128356 229098016 493694090 201929301 3102334 942005970 740526676 334133886 937680768 456901872 178939313 274786102 254205090 761576058 543114843 473610304 34337681 515267694 685720338 390574868 115709159 425942589 871352490 889120461 418085879 11761504 165560921 98942269 265196412 590804808 242113789 202278250 466280256 389319579 63864552 591535958 702447346 376255511 694502082 117525473 187875758 638098890 939732277 472326903 948094152 506651202 457806517 277042032 526212970 13846726 575456399 420296126 305217378 36039322 831259802 447290459 226691790 724312173 782468923 707570534 671930406 113419105 503594290 735007572 207788826 601005079 42168164 673765981 217652823 420236142 462871751 388819791 583329600 136140426 964698847 169699370 90551700 622498168 49722264 908961807 438647790 853719713 602059931 106711236 222208948 816177329 10423654 18709247 681776665 426324990 576382148 959795150 761204012 333775549 468079098 526383794 488063533 162085012 312302908 287320688 469380497 929388644 960034954 372081098 482355099 535893086 206019931 794798432 626444570 333090059 887521460 781242277 377874257 854382912 944526564 101978427 330344383 948988952 922568282 862476296 20650928 645551812 682785190 119285449 55658372 68337930 907604469 457566485 318321745 741866976 626899633 865691748 563657668 248217696 432183383 173316331 998083147 756512189 184347517 485329067 162246438 38769139 78804632 972198331 335606524 300874976 640855674 645546146 25246426 404109731 529494169 194688439 510269813 469147266 933603643 530238874 112731211 731938952 221059382 529774136 788651887 660255521 353530020 348116175 926270992 278217694 957393539 427759696 353904410 40309457 30748902 227649492 733129851 353981578 86017183 764028718 295163801 456933529 582925026 271932219 44520488 326134606 647749391 451562112 344438909 54881940 822440902 167443890 859524142 817940822 404760312 890229701 489539645 125927403 97069193 25117009 656790221 794077068 781983656 709688539 402723531 562522285 183172610 77572095 879210465 211101228 794402358 238681922 872215987 390460605 358779282 221819405 102599674 259005574 738621082 676454603 583963319 955808415 529937683 978500705 895585503 645261262 698795001 543325842 610893556 332837113 992649120 830470036 990966012 778606480 69332908 772144815 836559941 489925497 80421109 185029519 423319098 286103757 964300960 173050612 511570311 462043516 744299377 251555495 777597715 121100600 41015553 75310583 467496437 438339389 711024616 6279590 739878621 497867801 533860386 624702597 837146448 675963258 87546192 686464119 350107655 194366572 538308996 387265701 510898149 584950445 597203285 156408576 252567254 845522751 214085463 318680599 871312105 243376399 269268979 370250750 597877455 545131424 154103016 26802053 738567056 13633032 882908138 140724462 157608916 954619413 285619833 284187474 362875788 148455109 100414049 151935139 842013957 905248696 307052837 663621679 148770584 349162507 287612195 573181109 288627028 113887350 831169109 447399740 426351768 736507005 875511107 56274617 485874490 909006963 277808581 18833563 820364709 557913996 271144233 792535116 168459846 613315147 606443339 1001718797 341539624 626501847 542151766 170541679 481556846 79062397 129258681 844121773 445730642 592959265 35833358 83948920 29565901 425023352 614877992 65734734 378692220 12663883 970448966 556289940 772217411 590554522 357697569 472844656 510824575 25087802 726721125 847425688 340819515 292499861 454766239 640483241 40589072 836553873 1001861278 825497172 173923657 369368976 737734090 335293220 922656949 47188713 711515833 62328633 866533464 7108958 751972271 189905544 730355185 602546595 849746380 653904714 447141396 92647990 540044575 991294986 408998912 575552526 824778511 667544895 466632243 694503682 943863943 557855519 449489120 779106669 152107737 426520435 248578710 726413874 578870282 819940756 311040973 146450099 352920635 383282550 958712014 142470594 750083699 488706266 536448537 340503103 997701088 833310972 631157527 230330420 775543632 737721325 839804309 947529417 847014711 378018956 754239370 369489502 753228946 266502271 880930796 714029595 342561103 518247663 143635686 214875160 417386971 801590927 561558290 342983446 68253153 714809219 754376078 987466204 937382907 423789259 600965101 927119435 147100870 999034263 327724670 507075674 145045215 50319252 732042786 46370316 481212691 96506394 285091386 4479115 332980934 118779007 547375709 190872030 497142425 866691612 807093775 546682439 332338714 997920852 961799694 590343207 441481030 830312599 559670490 466421842 168830115 701631795 822135245 367608364 320615465 919707653 515298161 817025405 432792555 336218938 945172192 246818602 667762270 101704716 375664515 797661352 941279368 927830510 380804168 405451667 543396873 90212267 271728487 947591173 867934873 973391204 288024638 769694969 329339273 665176483 665788981 387174349 374636001 69345261 96287909 832354652 756468978 513545118 264416348 539297897 188796407 716992782 511966133 519769056 340734648 26158532 29514901 637340413 609607277 141044247 584123056 134419558 331465158 528941164 719755995 333883790 509483909 194084120 316327675 74715549 100464374 111224825 976615177 913620016 616226651 212194750 455812474 27310253 405241349 834614211 527741507 323723564 415856876 408135677 548334728 403689702 744063289 262378252 899767419 133126495 833585394 125031294 106782516 382815181 226538512 720223079 823716380 495077180 149999216 310594417 711536150 104587914 870983019 299088381 653540158 471389805 103150716 667020561 927904371 955037689 292140350 926177184 447274602 656634683 139837118 344970620 909507896 988175317 25939210 900909193 996026631 590947630 279782821 218952637 211269195 191255588 197147236 168136099 330898246 433049500 542597336 640191835 593024211 866923844 525641375 478352617 942367077 647499133 560952576 267979818 841330956 72368595 381385359 611040119 596903043 624703297 706186840 171946873 620837171 611211828 201487943 445061056 962944003 976899687 685808363 386543093 736567929 890863008 149357889 661458293 474793083 834601521 109795629 674208255 171834290 120053691 45830487 215427554 259024039 648277807 362142185 140868478 57106417 455717528 497953016 380258787 382669201 831327281 469239423 760516117 938327856 716248286 563551965 280129509 917198617 162038110 613586952 901562407 90570939 575959428 502970617 324051402 714096691 804508202 615795358 535659906 143140639 407244281 701724822 142128475 872992264 486107132 510482641 293958804 24128271 531584850 829363658 611385580 789369664 22359403 392408231 429696315 85216211 376486235 205319115 94187495 271244422 517893238 240534940 701305290 943739748 502447221 748050493 522040435 897840296 790603875 333639393 142772260 549739884 987493493 484550485 626993035 522354795 418436648 853512399 252052621 735029926 967745397 690946174 26661812 446786978 370189352 845383704 331530940 460533809 32862882 397518626 393765215 804829670 317924226 971155693 794235134 230188152 695290262 396650618 526477413 419781605 52037969 518050353 526559080 315284261 949374413 136654601 370632799 853796370 688514679 866963790 303642714 151812156 638957500 389305555 699662227 506178591 435928295 894553876 666410559 709137637 568392454 50543013 339846219 996661567 557102441 516946579 82591529 943949578 368158404 307661024 216473036 94343829 329611677 503171852 976459897 749616586 670712778 968678247 876344686 360688181 39974461 524793367 632066659 37916347 756622725 611224173 581417737 989176856 53495654 392137185 361208760 789483284 562500012 24006954 546424094 359127080 912093928 98753275 369525535 983369897 42637477 665652942 116211719 791373743 536768133 454967417 141445633 416908918 15723731 609610906 585638326 436949163 249468096 800806342 123461178 817930555 976015541 26378858 745158797 39583046 414616303 150571661 54402089 376549851 437952323 213717816 197763474 843593256 841749942 824571058 105623055 543878046 867032124 871528147 237264265 154787248 669859578 225777866 478113539 387131059 380596502 273781020 122997999 235844231 677827351 423479655 644405099 46945185 166237239 819340825 679432885 609043632 333704989 806264427 895270877 365551187 130362782 986042731 552733792 959137641 616362467 296944980 713949041 569776307 507754334 709413100 595288025 730592658 17927521 852299011 273702182 898463023 446174284 274949169 975242368 372630466 329721345 303236966 420742043 272439076 211066785 567645855 40503952 178961454 372831738 854474453 466842546 418503398 183071487 434149842 906984927 21646780 161847775 664454976 36524809 544615763 73986076 19981364 844663166 524646311 427122745 184982209 751565167 379859987 777556268 303887793 110120569 346489832 715001063 47085215 610115689 689428261 775032327 786032604 15354737 761833149 724667414 708925221 472874736 661094893 239231245 735572482 148562868 809781466 366614004 769816656 845523052 264251030 653029214 109077148 655043676 566007220 829969959 581772895 634084092 674255679 216253144 771705202 283737639 18182052 59246583 238928562 979550742 598254519 653242252 963430894 673471083 348160404 454698890 997926193 609848263 680366790 137508781 575594934 23219686 409647529 999284909 38173455 860358394 348238375 582865530 918050641 230494542 643738080 624194380 9140875 199509519 855549449 860293885 886996168 91481728 871721003 223774173 128553585 549444981 836991492 848554879 519352076 333464639 831477281 611939362 930995303 934265613 512716141 855073826 607887938 559019690 991042649 184016907 761923645 217802978 17311706 205498937 37524709 132555760 891580632 376439126 557734619 965316447 410228875 368512799 168727641 384408840 109339024 1001637390 427377950 435069975 495477331 588406683 719752531 174474044 284913641 256543769 929365186 772553258 642803347 968149218 957480801 527135033 357494984 901982865 803414713 920825684 306830356 707866199 750308446 187236136 611080375 718014699 147633217 157654519 779105927 131008045 360483209 617963804 380513234 123062771 942544910 630966971 485933584 522144668 276701622 485014406 192202239 904030414 558748307 370695150 567669544 664957719 390708260 943137904 855769487 188147004 928514340 404920224 823565287 793272283 423757301 193959391 49431348 875716156 810664283 646328019 961279993 313801866 495816112 934129197 211885815 655289460 697043945 99294314 245292855 365976865 399729462 127489622 378396780 658715378 216653466 194371526 602444026 169273007 549465842 624123745 469202495 549309341 526415941 910729030 783349614 938002701 492605340 99420145 566497797 832534721 867268262 815967743 467570831 228333359 602923664 848809545 711545234 572440573 635744458 710586597 40464252 81268322 636714622 753496693 919342961 504863952 680776345 201387484 645703486 456427633 485396674 554547539 769148323 483962950 401558705 152737208 701508202 974084718 500472472 919442352 417998145 959981410 205972533 526315627 967858323 443136963 997729393 617655830 390607204 47282856 773390360 351804201 11316780 377686245 675497391 885675854 152828213 435987596 474845725 808610888 27567102 840059179 32173894 904147038 463433267 739784013 346071167 172393412 122989425 921071293 739859409 85238335 736213588 968823324 985229305 868660063 689508683 371416076 992970244 729634900 85074280 502242988 162087667 535337265 456788450 257623063 597047586 607433870 344077843 814157891 765823751 874380776 798527094 346197046 34312393 420902549 777785071 671179098 815790747 360068664 445031049 745280131 909607470 477291175 124503885 652151970 996435556 325424030 474871428 402936608 154109904 83649495 838681151 705144843 994283704 902515296 47103305 525989815 41558751 995662976 730177737 735107791 159524581 247957589 948960048 210362862 933617157 242111549 638197584 198235655 135377924 927801261 156233634 204185086 779519837 230034946 756467543 117275426 132189331 443984238 456287356 595996789 802289963 110054566 751536513 634711232 697869817 796751999 217478740 698272677 970498786 4796495 34118055 816778443 970018780 580828956 935490346 693733209 905290383 321399697 321239681 2592635 9661756 570354366 614968968 391449218 123732852 296322596 744112489 774410124 554604141 886347196 429397521 383904934 655499299 496240060 979211806 874197216 932482121 230732432 661069462 824126691 41431003 93015536 516318575 363490269 35338196 624030023 879354774 263965546 312835739 502282645 536777714 278463235 364730118 291076602 340734071 986161909 389264345 182045116 202503900 261820723 272098519 885455214 857869661 447224750 601234729 551216506 326303511 698003942 369354268 136538860 2501725 474637426 755915474 64323073 597478802 14988692 790861730 181542577 268796114 434675028 22309009 284932697 981168600 715312771 886813661 532139871 143388096 338845307 283556114 547358898 70398071 828847726 447194901 491767731 146612838 622994185 116177366 718498830 844520615 217387918 662225649 877891027 53285909 112954149 28355801 927658983 32262623 155109096 159604478 969775889 486787429 37067075 504727114 474769230 309473226 738411331 235399524 890225033 925736486 32809198 17166326 876908209 428444291 68846464 595439205 103698210 633428324 555073714 323635892 505431180 821222469 478792070 240862519 914121700 905596533 740055359 581471467 949406813 264276859 718961133 463056147 68784356 111265730 927687433 255703725 471592591 162893980 867101184 816698716 48952784 633601172 773105392 558395395 135359652 855804211 132318339 591705773 152835904 90716990 276793717 216111711 314666941 634016255 465409600 251158248 502975757 790547082 921291637 43919500 619492901 885871591 964011765 972116488 723774781 995138485 699326550 810597598 276653673 267193960 855698310 431259057 787647319 611621841 799638902 43236920 689318817 631920140 364461349 997765808 983157604 978618118 102716274 260668158 172245597 618929261 661748143 509824567 898152472 382232486 4712647 517888368 540981039 520903275 790105239 1001770182 709250026 530115114 512206927 708802585 638660039 686027967 318698273 725156907 691641464 534462349 618347456 806454354 582476412 471042898 325210774 736326481 462046251 601990592 260454474 216865456 853925177 11130638 313442861 689956663 666163079 852728954 527151120 508128259 940184326 85976839 37646284 613656167 605198305 586177112 151517296 402019766 726561779 438977767 642993794 979083193 637294680 514121683 629757697 702517969 209321501 469192665 358852202 192691397 905774987 620028712 762853431 782263081 162532214 181000037 985820139 321366518 423986170 330681211 967186100 51438386 324339151 160119176 849649979 388420765 104513201 260328736 560819977 639341528 932614087 995073288 780264208 997558307 793546202 168787984 43997465 185385701 916258399 426187132 666425605 676223734 852279414 995258438 278156429 412452660 672842173 871517503 895967819 546621193 337944002 554083671 304851987 749250108 628418872 356881907 992380532 876696962 111101327 162448775 778437736 628791119 711715729 666304170 837487766 233499516 986399308 267455674 8759031 846176069 842043589 937637483 540711790 813682353 701256195 933554215 621357424 890860501 661675407 825842701 142377250 830090589 158047355 445160218 480256258 882867980 902708456 517962478 557746795 689986330 913116070 251670857 529453619 35039314 723946666 122846668 255970177 814634289 817946833 468116337 17326019 804077268 610885216 69300610 969568468 125533511 576389141 198116555 337563984 453379713 545522952 993715135 871296600 376086057 407924405 168995864 880631987 695203233 393452058 905912641 648196279 291004072 388017764 780623443 512642160 899022883 147079419 803442270 318511207 400088044 203198953 227408824 833003289 671568222 338086586 496009886 379613290 144275549 329711550 321376548 268958332 361341462 427771588 418872217 448312984 483132452 402694475 752546635 368281908 919250505 896254451 731829548 793877535 510769622 125470630 427396819 452864915 96666427 19625199 85627395 857701759 602540505 953775716 748075402 132299050 837267548 803680494 471638151 414433187 689467195 295003052 245083288 395269929 215283095 419458180 696447248 764824405 748817856 888544967 365119741 684679646 719196337 469038317 933751511 366589496 171839844 423962300 90380945 811201416 249745709 765212367 180451571 895183329 681860317 671851019 773347324 730220479 240980632 261150269 474512566 224722686 346674142 851985742 522306082 239108351 973644851 566034378 653522422 545408677 925243996 586333292 881814047 485132708 285104682 633298652 561013320 788880399 588834427 909712006 570547546 422628321 622218183 313196704 547959735 924946987 563928784 378178370 376581458 13606700 829791244 1002365715 927817204 291858203 357185813 819717411 193050025 457301919 966667523 950095703 581420804 770293777 32421563 355814781 51521450 239577565 754532124 648761321 132595802 882119715 409276190 540792620 445986191 225304504 239521895 344263894 991282727 81964635 497266548 266375725 505275846 473508620 930324021 722401424 909900065 21693121 915334279 420990229 528413021 217050700 591361577 232803396 631541644 130014441 950098266 417885245 625492540 700243491 87452550 215323344 995377994 280541063 240614410 67387799 401429925 250896866 698742985 234758076 197402094 208812826 119365283 447597183 310252922 92754191 251308639 517832359 900173954 719376422 414537377 316397188 334543040 640391691 34352261 687514152 746444559 603155192 420927923 661413578 445306584 122639706 888684574 863807392 984819142 277576367 72148244 727807118 305518048 683021405 105346444 534206739 498104524 187029527 539963897 177334860 504955209 298166089 178077019 747856 943108367 162663516 246723711 226172321 459110498 57897228 205678783 974601171 209390062 561901003 907089139 991707017 592573981 249413021 278391019 26111097 538361627 324171643 314866217 840719586 812905880 455519708 91475159 713917166 545033482 464459515 170603649 850430410 924933618 170251790 267690600 43066255 448186220 231213255 487641100 28286678 771653116 955212461 956212867 895609964 785509886 265655549 777363639 938597374 478096270 749409401 39381508 833653030 926325785 785331581 332824008 79419404 832520368 146852515 388680517 780635815 197450212 730832254 18083451 432911369 702237864 72016884 643861544 345711021 274241144 732392541 218411350 908046532 362015344 380158784 960174948 772347921 789493149 689005485 403794381 821448556 571193253 558990161 985377604 69475940 431372609 931129255 723870128 811422263 406511066 451090276 457797333 408068741 749143482 798346008 997672101 384090281 447666110 61959195 470035337 541360862 340079408 740972391 959539243 117553218 877942881 773317953 949535340 58713914 375478401 47685471 895963751 779055421 792027992 937184865 427232745 661832455 554181276 429764066 558594120 216428984 709373427 362716528 803327730 122746839 152346448 826871448 756637087 470568922 571435290 709562631 213536659 439571404 428151501 385645335 400963900 306049690 623406735 460636432 604057911 719984322 912737088 983722087 714645550 73552206 835402146 382102455 363303808 728305438 286797351 634778263 960322979 67133733 334011728 223109061 967779199 345022536 649434512 336989399 499175093 744154907 826206532 782084318 522145722 971122660 591978739 700407851 696083025 292853734 940704099 286375132 848206702 406740974 601930552 13053294 565288155 242105220 536989109 810880503 731379918 484164917 379610041 53469874 967596727 873656368 819763259 629452412 855986612 626209815 797270879 906487970 227947893 786140787 563843181 733401780 986525492 12844509 211849067 723290602 612169504 817725252 539816696 547490924 434217447 437053763 464854058 898862289 398692325 36795727 611939107 788719196 583246313 891243891 935365275 235582590 968122678 380621255 16725861 296928156 436451386 801255124 937060310 47055864 381909424 176425162 260780032 629155144 169354140 663511633 931737497 643282667 788512486 173609878 783949284 392743430 284132945 698165219 62971796 685840858 943542791 843605197 240143362 17238461 973752086 298955187 517412699 603806368 969755153 795360381 615061436 883108979 162365548 731627445 622450522 510690873 110482019 122224553 287234852 477559971 820333902 678107474 783542083 274288592 224380255 812934298 794046971 663503938 302078800 431189871 415549768 220123207 111003496 906840560 412095587 560033389 264771454 735218070 226047830 289582347 316586721 110363008 328508528 258467238 734323205 435643771 278491109 699795690 852886923 404191238 197245467 906274979 718784544 979785303 870583061 574985051 823086726 18897871 740946212 18519649 517047804 172338799 625469884 59496071 725631657 198090076 697233703 419552658 273853814 847414264 660506291 742368800 86037867 440072677 402603960 646619533 272628847 988747066 566403250 825295597 526983364 708018002 714547900 780080415 580519714 782500683 155236655 552333496 736750161 845084480 489230456 748438346 998814546 370139927 276173833 413798028 238043931 606155665 492819055 761740696 302324196 367047378 54305815 71574611 188952107 929282933 777973158 481410114 708620197 46525239 784087903 274592849 681711038 288189601 533252701 684953535 575886902 7583637 418354989 493973456 574654068 10677083 310092523 975874780 568089704 548980957 585306769 977451345 288124414 911515573 551935132 961031819 751866753 577977351 825925773 472025145 801608768 641357575 413241687 654578849 46474652 236122710 688761118 845587059 410648966 126831727 506291139 586329352 473341049 947913166 702852962 334884672 692058277 316026707 813015164 969904590 320028507 126353703 416270177 210928920 386634787 726897591 71533048 512667614 745271510 411698914 887753072 266696664 27466422 805690548 585160020 478898213 766861328 104283070 212317712 29907720 624142840 39689211 469709898 489192777 624753034 730823533 489208542 184469412 576403831 40511990 567571821 622319970 921822993 930705689 978297564 821119522 215370900 471412718 752721257 98063979 14161305 642017341 295459664 476594074 128955539 938545978 219454977 70834970 125348732 311159525 886872813 522879693 360418158 388598546 60118222 234579173 157868575 752988040 446941534 855332934 116442863 415957837 184396022 392785804 742341716 734698285 832897778 580155405 813928425 541516275 616598160 316721146 534062692 266992963 201041280 480835783 239123545 569508901 855440959 576392978 785786137 884411747 421288894 501527386 422956744 201760625 423315786 610280009 364232320 605431953 91902262 667318945 300276018 812025582 820107879 483587211 658641284 354507774 341465381 596375310 647651973 550310481 550089134 285072392 105670074 83394671 684056492 199273570 334355913 917986351 572487078 517657072 428713010 729576106 117284546 833090435 515725253 498791915 101743005 849709366 701065856 209119553 181827994 753123456 962808581 658012124 301474655 854002510 704616571 306094362 667818419 959182976 205184183 672001411 699041596 409945365 1002375985 234046470 315298254 76802836 43616067 820199477 453145206 132299427 845838252 373659976 865985754 115544775 373310578 834676312 775869099 298342343 361540145 54146297 101512622 4236291 177094927 660972332 726119954 798270292 968566325 76147338 542458365 79399384 128404534 621850050 534843747 989953700 125527805 326377216 589082991 925736016 174222749 220203218 987321443 69910028 46531511 185690980 67819559 841717578 613734870 776661865 796286678 435181204 71823865 361195014 641426363 242064185 833827279 839550065 458910188 907488203 368922992 10201958 701169949 111134028 397468357 834804827 847816492 165989621 691084978 305703695 961638591 480619218 592569977 284068804 92558965 782696849 465508490 764181252 661055432 386728065 872689976 508166245 989571450 518293065 443482255 509150973 329077927 453539094 802594936 6475757 565711088 134307174 938394157 61847088 203894478 669144244 234861184 857914922 602512920 492277323 132119558 58542788 987449382 899537002 685848877 668339607 741417888 960940304 740978695 511505920 508888722 810366381 641940600 277811703 1000650365 732075471 586411946 983799903 152784136 232008160 29747891 747935837 582781925 893204912 331497085 153983816 680929215 145912623 836137561 196129488 677391194 35435779 116992426 367359482 493261547 817157351 790484492 177489431 374661191 701934564 155973770 957715510 31164368 326922193 317869729 495728178 778129264 167613529 463702986 133722004 153072104 564285007 493325121 938727166 876744621 67725143 598302087 58524187 941325116 406161795 922026519 784352092 208448261 231311949 609336222 805174519 526309538 253108609 914262851 120964940 717959809 177682038 77202276 135238802 176269916 796875670 842466817 162813756 386348101 449540262 534856659 140539585 722262667 692660890 260676237 67260715 389552934 936720076 95679588 791032032 198724873 199658093 977397308 879219862 545731035 17550621 45770497 89773853 878693956 130853985 127014940 201954792 374289560 160734609 433348091 537273587 912426127 893814054 774105809 785484200 799923775 125504360 343726131 585143888 656318574 60388940 316366370 712384506 240548915 544276805 62308626 50185338 352783755 868162576 270001644 632034183 131282212 211517908 940113038 617257065 383574092 420803240 346521940 297910746 164561451 413579395 409433783 103587462 139333542 803888613 683296119 791408498 152898451 50962793 204361404 999492610 815292260 198499057 547499349 945681886 826999464 84180667 680518328 700634107 444289278 948466203 815535124 260651768 421286385 642243112 793601552 173039307 539697999 63612485 49496974 908698078 932354417 993640913 494556043 197443850 674937876 606662891 395097401 104046792 933820871 458360754 79563256 451314347 805154525 755128680 82882500 122648841 506756249 310302979 774867857 93473939 325937119 23509116 718066354 458640918 321313638 474742487 709082706 400332942 445092899 228992683 884584897 282378147 303383053 227926169 57362001 298421179 555792222 907023306 142451555 817891033 198873586 285430481 202572008 475504388 200228712 295460558 217935403 873047158 200306084 906805024 409359517 629267780 861654348 759553485 149700225 844260487 170947118 563088590 60979884 962799058 829847073 68168399 751146668 217078349 137746274 224523034 684483451 248325014 381571816 798190504 225476697 861137257 379419975 1000613408 327468034 471969981 645492034 794267269 342021636 563783123 943263239 634043057 615050655 907293334 627126750 385110485 500205989 608990724 417934346 13649708 198669185 346678428 19289894 56953383 429758381 609851490 830415873 787328779 73562816 218593446 431769034 482900495 792063038 820618440 931569675 83475312 758730295 956188020 608636713 172326300 629024717 448235256 977539242 411494222 230963709 334076879 163209996 520508479 556453255 422872937 338211376 857811877 218846504 749374888 677585869 378386292 863804818 902868443 465604263 327948089 17051852 771225994 108288404 425159629 14439362 760248171 892544127 344736943 957413656 666645309 563236548 117471980 247372467 430405249 622329221 679569076 109224431 433220070 40929274 340552316 670812831 277254276 642805756 213613196 810712959 800410588 811416876 967824315 853244382 647921847 121993361 522971505 879543930 238876831 118640844 859538345 505816446 503537660 14084707 586950378 172394558 109731304 805457393 852134559 562166019 698209876 216948844 385657201 229022244 291206135 767077482 707640333 472643281 778322427 643760169 960592405 974795779 343434365 536902564 666665794 56590029 165120851 7701102 891175142 332531364 962711616 1216732 740403777 833397114 362940155 487692897 991048414 526752076 938513028 957949040 671706172 304188373 990299876 716630911 350547505 370089679 870854955 846095903 66989035 529059140 72412226 229653335 417501952 211279905 731769202 35352009 432415305 559754250 337344333 461421868 305564573 61910403 115113354 481307487 159067331 499506882 305556133 464203887 45392489 148641033 870256970 60123305 611515978 447016650 745620718 408228181 456420846 541682971 146879029 245645535 862502759 614782046 648853761 102665750 399771254 92572526 486131303 365025498 562455438 895694405 128174949 818718848 377355437 702506970 38997414 479135462 673789373 156439797 901604649 982098091 779582324 805934829 254553004 215043844 224268321 326812357 412865270 274402309 687660149 656581588 255083028 449773981 940469638 729235845 760752093 685881699 513574426 378064297 553803297 485772789 962222188 904379558 572785427 992080666 227384702 168282348 780792899 780481124 41678948 973708756 338187538 689469508 561650850 757794265 171774097 817306879 206635514 975380615 441849306 183050040 24092055 609785841 295995668 33101702 899535808 412783384 814345308 631887111 247280368 413803698 711910655 825728722 776108771 437101992 645914780 1001255816 923685587 626990675 859636976 54231458 144751759 75127349 573064119 356330307 441409650 269025396 798115143 476588735 824339023 516370786 108761769 517152006 657477083 994032159 597760096 746884527 377792501 56900386 445100498 660560726 344350975 239881853 789948592 564098381 252844304 23858387 476076532 867756186 728990290 380136862 412232227 805235286 564552253 350076870 933048501 920902016 646910781 481503862 246696890 850969948 117473904 360975877 302201322 315177547 704484206 500096018 989363958 838564758 815908382 568362006 963853567 501381777 998733946 794748603 943654289 308150934 792798910 462997326 288176452 914991290 552447691 752392467 902790416 550319611 304931263 35412036 751885391 465325943 664101572 443839894 511938120 924516895 182795791 172652179 855011825 747738851 954008718 886690835 566239348 55914886 713951801 677871214 642495305 520520220 465812932 653185953 450286119 714964524 702488692 720974115 737124180 199282737 358360477 626550900 702237207 664579956 691451145 892571291 20518272 981009989 512927187 566603311 387104922 414502343 173223502 840600366 263839375 427415700 729516243 548213791 163033389 1002219256 345438317 631031841 519364533 963950187 171538374 488586887 932506530 491196954 219840650 115581581 76221724 682011319 364906654 446713836 360796574 176419104 870670133 633881383 449522730 895111392 193965975 775133832 574627007 333381365 836883722 601034263 637272461 767124779 645996628 742286279 478642748 435018425 190503882 314778008 690529190 127843458 200187615 163874017 953365104 546399935 187319740 841043991 77627182 313998302 584589261 292650894 692563299 844311919 6703016 86188036 21619704 211407654 531116387 530391924 924465036 122905635 343711722 75414909 88929496 621912732 900465325 464658183 150770953 334669045 847585777 891154385 184226232 704958580 778351495 95694321 749375020 7925507 965311245 334235977 743306329 176521648 921500187 881269617 723510806 754317370 189715009 246085686 992799756 783527719 665827966 977084441 178074428 44732843 195583460 446084271 120591372 954660114 579199929 125949173 431103282 909879327 728894796 627665590 674300355 379429513 499276741 199790533 621897154 90894958 518113941 138337806 165846094 998948503 587291388 895256829 135372637 355547627 728547165 425802547 358456367 818872928 823375111 798256828 578975606 119413705 502688071 354590821 860652397 327924034 978926754 897731723 303780781 975947613 137242058 633076828 394117008 365457294 771106312 144624400 964626965 914527274 227865011 891033376 575692707 314418030 415266640 573033597 347330547 550544631 97849821 750275367 11096049 503103189 253365067 918616030 276341003 770465591 993476295 823885423 85543735 312876316 899749244 552285257 397774096 134267114 466872990 619047142 403099394 534696631 181532603 189651174 95285863 285180894 726019277 392328527 29162269 517530213 358733988 972101243 904865335 966709168 260951597 349009791 640698533 624151563 772806124 1000572369 353977524 529487146 65612316 115428029 628669542 752635958 498655723 720548355 376527829 820469359 733715343 21329746 86553516 849077670 157886752 158433235 7027405 851486393 99937253 775560463 779099082 545083692 119977252 636335837 354067273 495933082 256490409 147713897 550776453 84076648 460305769 902759632 123439980 640237429 254470646 748135082 171547778 456555640 455576448 126055603 566835289 563911472 532083286 788714247 448476789 966282580 477381156 604405205 622023531 307100508 896926201 308912517 115817616 580165143 240573582 942888720 568055382 783080165 845127538 798808900 951488767 624957085 124829350 615526973 33547386 34554738 130121047 11532392 765192322 489733037 884763500 585846536 287119354 316258811 772146313 248257682 407130148 349829011 652748466 884840293 676837181 560263698 371693005 977778289 477284362 957895411 957736128 301097551 98882375 420225547 849164171 444762102 624607300 539709914 896950598 701545571 214647935 292606350 404504215 495067254 209680374 758724240 501477840 568697619 426137602 895247810 234918517 551450103 828647145 839519504 763118177 337131994 112404190 803694328 787607787 547958138 716436065 356787472 624553660 544185214 766755154 596772679 698999323 935163056 29880627 752933951 454038303 698155325 525353098 963894076 155640722 927863036 541904974 316451674 912039096 751219932 439149697 248287904 217982207 671051188 2904597 615859661 898230060 903626082 548803390 151745301 488354953 838256541 670602259 359513858 898632558 524206027 709420001 117636467 204693562 197034230 765360372 546728697 582033682 43018231 536256111 889701434 628543414 5026827 73881293 801211549 394228947 478814728 630114555 959714258 56922274 679794292 959214223 909080358 159604934 602670444 484076041 576857786 514611385 325977621 388080283 598528291 3731372 511300872 585037592 676400414 252936942 72822002 898184763 836476063 680856219 832940589 687392898 492758827 820277146 315334356 566868735 90865509 791321257 265826316 352656225 173966887 594830175 955146831 129545909 942502305 707728653 191777759 88095300 606313685 499290797 871476135 156867451 304079717 968914542 569741895 192432137 43765799 745506034 168441203 326651506 307473708 555553681 762475182 786798391 810511928 444616371 834061228 997004492 677789914 805883266 364961735 95011283 197853251 686782091 638794301 628076096 971650207 978702047 911095400 741815491 925597131 444371398 682182148 916190066 398902557 974953714 176874482 394859507 618752391 239453704 696978274 855927913 179729893 439702706 971361597 890168662 803127161 592082074 354165745 661383524 869982593 865400699 555651713 403363393 475959970 885878964 839313078 967371085 378850351 450674913 33652275 351035193 814882568 954776247 624464770 544975384 228434355 34328764 334114638 523520077 737481713 695941986 622902856 239791969 89652184 721370056 604248694 841711437 927370536 230783453 559797837 317703322 38307191 48914599 833611983 531315765 208379788 767339704 77491557 627904272 870004230 519153302 75786279 326716249 496693685 265220560 671671527 110445219 277244240 854561142 873288939 956265766 65449686 261901105 24684658 51176512 676108971 171615671 413991464 222471735 781851756 669942700 736708522 176712629 214457728 447401101 574792217 56357138 172111953 211392503 811654404 611676571 29040491 205627940 483227182 109405722 25232317 308442088 964725333 383528477 854849819 35595572 314892904 567010475 346425702 702474647 263683774 354616963 940675123 136842265 741309006 257197235 237532945 770575601 522072760 855332773 777830144 99179067 797725715 702482299 234423716 515329776 319560632 571695150 243548284 982386991 778521541 558162174 34278873 706572827 333505010 50854187 862096785 713653447 73225460 725072046 296392717 718955824 281283478 383656656 482028421 998898120 324866047 288566001 850995480 848566003 702257452 994283889 942044183 954122132 392588517 863088226 657954282 143877099 984299002 89485456 80850449 481239593 100965169 879461662 668091829 763733091 912353436 738025936 693784654 370130604 50258050 361498115 257040991 709280669 646198465 472153336 307807113 541896701 450482266 773419081 756925030 518202157 830249717 390281760 403166516 164009939 610603517 726962984 772295971 204478695 312053067 29913786 234223831 402596910 196715944 676247743 216917808 291913804 266455760 954132647 996064707 964448728 783049679 854614777 515577216 646565650 506442651 356140346 49597047 22672169 645085704 499722903 871582239 879616628 139370453 267443823 50721131 860130608 730165161 898533427 697250004 950208479 959463305 738059405 388740575 501986635 888933834 804751698 63828772 462509088 349180459 625800747 438169768 48922454 195870372 825868870 192329582 124241326 705374941 733756545 584010581 587269046 361568071 954750628 618815012 122522926 888771702 309955660 775978337 167021440 112161620 188535205 90330420 962445886 287685550 101342191 127145192 818945673 74083840 542443832 42626802 55706701 446003010 800239412 309439526 565360469 849172051 430496056 907849870 883371759 86610110 921153365 177741584 202989158 594097659 631601557 821191074 507624383 835853370 727119437 880433859 458214753 478661286 445693888 934882000 964333048 397115212 218381706 318415635 521837710 868391570 86305016 3122855 398481700 632382314 847175027 805961022 524316807 956528394 952355957 345385850 44942087 180465635 562704580 508688904 576659115 219459321 693935406 613722121 63106483 323628524 527296111 569845015 467766875 564892819 97512416 575779986 717272446 50024651 314326665 447473414 689949805 248268756 554531774 496910691 715344256 533335145 757332570 3302328 616459930 968125767 957607311 675203814 232118269 701257102 345675016 176117734 933794398 72934152 726609705 334106700 769988515 64837268 98852580 620090947 712922617 691570492 747521220 628918840 764746656 309573855 943993618 970568580 864535643 735732833 468049706 427187088 747517889 501289523 658898908 305063045 545594862 595368009 372269356 75878335 911188662 692406012 532163576 408396564 396731925 549762815 952257043 45454847 876754370 261759791 679644890 51559611 481753055 533493848 298497987 182906996 955860072 103696755 183364347 960054137 538751242 480001401 925365299 713829819 837014365 894665600 902845987 200809291 313605785 205339882 767565441 652784882 903698353 256677113 130003432 108870708 757018941 237347646 667918291 160032872 181282603 833800851 828916706 827756974 282381260 671703141 625872138 160688530 168008715 569164826 279436616 946020148 567113967 449587095 352899964 754612883 847481242 216467379 382444153 582634103 724118146 537318511 488350575 381599256 289047847 988851389 405406275 258652720 756396425 354009342 322041131 478603121 4154267 809369266 185599711 315412760 616334111 737619777 592529489 871514121 462933642 549377391 904567434 352259316 5012641 455259278 682926194 159072717 252993826 295697636 507769872 492942750 565972397 230909261 514902266 178761906 209905367 989045035 714012574 735244673 385724324 686915115 587311482 10105644 580536042 918538421 970206472 422039356 38835984 315460692 746104919 633077299 786310748 80309514 867951331 710591970 631660262 79737606 227351569 75664808 594873858 707263665 987223886 37082107 210254493 668062736 192516515 516754928 67425351 87133675 152532097 519757041 99929013 692011949 341813042 591806971 536710308 81509111 147268353 25091585 676634079 625498391 305382220 475840887 259887536 626231633 888655939 327157075 504970433 484034650 363394735 351126559 663613242 551118466 185379197 849185580 854315714 404094368 514821162 207680534 128227428 934229598 294529027 685634824 184398355 154597676 539359377 857923148 750065211 778491287 654552568 134387427 604656338 677519580 653993846 24844608 132435866 551359713 280878983 794722645 945028953 376358616 450176182 302605482 133524864 899082104 198001718 872170539 165385602 959098829 138497516 916929126 104994429 140372479 657314248 725323169 146867828 857983972 918302019 548173204 424285391 498804598 315926351 812348045 574245723 754909492 270079407 45776996 199965207 476966536 914388387 866284267 383689504 903978820 114013278 245802593 334267225 261180281 472309198 431314068 836527356 141036512 860954334 431727784 664864902 552145046 255353437 575648910 187570109 956599273 585851549 57276619 264468375 771682429 616224291 761961486 271106566 148827454 249978355 751609783 737674177 1000655830 847342700 567755713 111068393 283214938 982116249 931941268 778171052 160836118 698453571 453833462 71789217 707042045 926481185 670684720 442137253 791221929 401900622 185939275 254365013 745007934 622121062 241029518 501385947 531664206 139850045 777492787 769516498 621328359 337539071 525953437 468639425 264934637 56416632 153068564 819628604 16749826 99932210 479534151 34509082 39289125 86549326 208049920 58435514 201985778 992830248 653039559 598230748 560244373 449429541 584859732 451605681 364819926 396850012 669504723 629443178 73493820 679439607 832850503 274288980 51327823 44428643 769409934 368508394 649416024 485886743 827701524 434773653 376670174 362158709 160876890 905383773 757515664 239678824 81273262 653760183 181781527 854888811 119103127 748024152 946360825 210675258 314269542 798945865 802440965 760793103 117852649 758905069 482578930 874901050 554162850 666112147 296268069 356448264 888747267 97538408 2738553 274892867 611218728 628124180 293477299 922531965 878649487 151972692 995285056 613399780 47109529 534065448 310149968 48562344 143848334 564818133 107293191 888961201 182237111 888278070 711323365 621595377 926817174 899774920 451998942 810706944 912727896 992523694 591131452 928459681 128826323 499430747 604719680 944740923 182826767 977892898 798837885 297548588 982606629 115716449 684217181 796295040 108123975 257444600 529423085 450495830 360328702 111698671 380665297 668960330 923642171 893830345 196543796 413821415 23412948 21498731 574710907 146455357 774198936 71980025 459252300 757501519 698015996 790755679 911039947 402735772 710379245 59538480 655840534 473445445 899626890 123616046 611991318 928551814 294250204 57579376 780419641 587982659 527558125 875206637 538107620 814134917 840313328 469474471 724217245 647190221 966793588 324856285 620590581 371821113 877188862 827487168 241689403 105004308 382524772 522346329 430571460 200200215 190520986 509072333 959826223 809149637 795803552 76808776 633511996 383936003 851181721 237428895 373163444 502535145 783142887 702516330 861628468 268677849 594104735 809309380 673768475 599947726 308098775 372771362 451043694 156061755 153348604 98397948 935446178 834558656 818340112 177078306 144651016 847701952 408096197 611005500 511638200 283997263 565860708 234012812 170821534 596886871 482144997 392181368 925965002 11891013 826830269 356731907 593593489 153158793 473177760 597253076 296060612 564098342 192855303 905742645 517594443 122735422 834725674 510788964 44741730 834610210 733722118 487823184 261173549 763857331 455671566 720916896 424436894 730549250 264382852 69961251 793088099 623437542 867258473 612556528 135244047 738963669 157274348 502054724 60531055 739892643 231044338 629560681 949657971 726426470 503185594 6223213 7234070 551892154 862334829 671273388 681037440 130211347 288235052 538298143 464941855 500345243 803782151 427559516 117714670 27524198 591756592 192483709 211558061 871835341 731270653 310099068 555135506 590822182 417857318 298174193 498991638 252420623 98284236 252990484 226995742 831420077 245585070 436839464 274128014 833170076 273996919 40837141 252124600 307283468 787612076 427612687 716610107 457951259 855743227 733814890 178955241 464395581 632532432 273872878 322816847 157459111 120243019 976095504 872525696 405565201 560996883 117885964 619198371 562638238 378209672 419484745 280358907 34425330 532393714 474541458 49526162 358739875 661459842 24105275 353322185 885135000 579337787 308179005 771727047 507150685 866870277 994353323 720472554 52860218 492180761 962861683 325792128 85262363 273809135 872976073 225830573 324600606 125512456 636605873 124194989 25021810 919852079 366298115 393158645 57142360 940846704 416419466 374015714 787303053 559420123 192277226 782940646 307413978 590000945 83887186 346647117 423750354 760758427 790211535 937001364 380643252 988436244 807733986 612894512 163070859 201897082 119861976 166146081 221073105 477295720 421156681 799310263 865496917 741312192 524351603 533557369 178773869 505436532 556220569 886522777 361521132 723436835 66835224 126423249 76945369 765857484 29428546 30164550 422335573 215645008 429982036 907654063 554574196 229285953 722306428 784111819 799204152 787395250 231251735 935330115 737966399 483530029 670784496 821832613 286061443 344137691 198705639 783494260 687743840 721196071 643368063 423006129 244750940 357944277 731705289 559015303 859212796 369969199 834931730 879400524 791983773 978199892 981454575 180332245 148839379 48240963 474662304 838577274 385691287 923481517 234654119 592884293 997675312 615023884 709047867 119538307 835750578 406925021 576726040 147580245 50361617 846176934 866255458 656253934 753608216 60666756 635318766 270245474 556169271 910862827 850959411 269381048 299250316 731992025 37872544 173137273 268317197 830864068 772525900 856971856 684271904 243215597 745181613 541173492 72725410 980634833 251619574 326581198 603329351 551397612 487367159 148498894 609255614 623349771 655402658 207389641 972754658 647938040 85160581 474386592 364840365 476512716 329484706 240160944 196250596 820701577 619314724 956109052 491234438 318835558 138785087 245836344 166569030 712293659 410458442 784625323 835918050 693150742 303095811 168245409 147188902 936744654 846379476 739061097 571648016 527304029 401801381 699079586 299174282 774222963 186527494 186679774 390084131 698268601 845217218 79696613 737429609 295916944 102383567 111366591 295552597 686939346 205989650 979201315 720072587 239717126 596677519 22831432 60557201 276176502 946801150 672654145 754534096 364646562 329018149 912340371 225854944 241490592 533821328 394929764 381260327 440205425 282280948 177041195 37858665 531742684 435404346 369473650 745919730 983335781 357980721 339919049 848591538 417303946 959558864 271331386 85003502 293636478 193429541 983143766 976995315 246213423 523820427 398609278 109768141 843741500 760456966 187341617 61981213 555973750 45187884 45421080 700940752 196456495 251633164 99733852 728286719 335066054 97309046 735020301 562677245 607604712 821585776 916244453 817325407 3230092 890049574 391175794 708972322 178596437 225250480 696118844 479860967 510630480 516383999 1001587905 854117357 645850188 268890468 205709146 69253813 704977477 940039177 941192596 601909892 378054796 800072030 584240004 734286583 900810938 747181160 354684381 340588893 289581452 975109523 939499339 244404764 837691293 991122209 209648942 674348289 11820005 535110249 163633123 447843903 367325884 313449893 366411744 413912514 317657071 654434155 1000737769 332427739 867761160 618577360 802970973 536684485 882597965 471767376 814579731 957954170 416214451 161396411 34922582 861315331 647622034 266894490 920320652 413550237 145708359 922516991 881927849 49463838 696945179 299940731 919182199 306801378 605592706 621381420 937660503 350183704 921822036 852112399 223767651 813476155 629013227 537831649 365613522 207108436 14247747 111510941 215040490 490483577 787956063 348117627 316757457 705222844 717892170 440226714 584739297 52101212 886862159 358706059 889709645 752283701 117135088 808717377 179783283 954127338 820033155 436842431 182366445 538485842 764588623 435030167 367907501 413022293 137634585 350580676 892076477 846313957 52429648 741551673 529105595 285962883 467687256 817003634 569908650 151371677 736414075 437821146 150441145 506786757 491948896 616437053 592285750 864421143 187306014 921003060 908128456 828184855 909586565 214819241 741964089 315077376 207226097 569897516 822035674 396572823 103948208 927058920 117806965 179877241 660089565 557556326 177857203 763475325 604377107 758154083 70674242 655634942 719450151 7556870 491642894 230518468 570165400 682610280 88340703 321758797 499033750 371519281 465839009 294804150 412222469 354782913 758502364 22004390 68821884 728423004 296381066 451789517 235387335 546618815 422036115 899860444 698034402 477001859 939148151 504947672 486891390 443487200 58470959 609035693 454308494 360109862 188204565 469731319 777690415 618702585 31108229 866205978 108763113 440180459 852644141 224078592 328288829 706104441 725484241 930955356 832090545 2460775 716729635 73562340 572299181 720679032 332650344 61572700 673510307 532973555 444553083 753198364 181382867 543308694 61999235 838516504 834319215 580556184 112754811 552185289 505757461 850287376 918976829 210098208 339785563 637185796 135089544 705273140 928441900 890832102 356676182 282800662 498976046 456509765 574921522 561122659 3449646 278565490 686979113 560982600 894314969 582875700 411282718 218059536 486497789 725216975 671276324 138647448 733824362 653914019 826076262 922582871 392465980 658405724 509834713 940380172 15237255 329235600 993834134 623369118 538647442 176841950 714565589 76740700 174538617 22751772 303291190 399627766 729439548 175469471 288885081 384358953 682098382 399552980 728504812 567369800 82031379 311455986 794029930 212172275 427659275 787074458 682877770 506770456 868903450 103763780 233704475 900016400 143496019 966571048 712286630 252986815 545571606 978723883 666654244 769289814 23289913 838062248 473795162 444430807 993260468 390165846 463029759 840066047 42194215 388618501 824334239 792249966 146663996 567326358 235701444 215199025 652193346 942127386 160606574 31284042 447452904 20537677 824440396 527687674 424851655 507874637 740314904 619588874 133853427 368195170 251903325 922567919 62987149 200780191 603676583 106591859 867421408 267701589 558112751 722772058 434545275 839912705 359500440 106302376 896543996 204393152 937282442 587776502 7112526 628128810 914916083 79720334 88011324 368947627 695793684 458650352 743539607 738559806 877671266 581763078 376677454 584600711 279860015 190100334 167086622 195905938 22624839 267218243 468971669 47062058 993872309 779859546 654893057 216425567 763687433 603346965 433290915 784303624 895150526 313960660 266655654 381841652 821384360 782614890 435961908 346968039 21712631 920133505 64172844 675720530 362413371 330180450 532866982 889373490 593651867 198221925 61528112 263110145 877358959 429468700 230686381 398098318 366135190 14691758 705640692 150819151 55857876 130654917 527989492 801068522 323733947 22688575 255576306 785470006 93013612 981078294 879111272 687734605 946132081 827586196 905330774 968698541 579117574 623134069 874536855 850156759 686714202 372455432 331126579 86035172 102157880 152446043 701519452 618389454 77211942 704029167 892146888 119376536 413868543 650778503 746795318 433001453 575976768 766604121 254052044 557503553 297972111 48119029 467361784 877459833 85366625 335131595 569983071 702089179 107074425 762026501 815270933 130013283 25228813 584271400 277493922 207303600 689472636 420067169 243368417 263483089 109416714 367213851 816912202 739335024 773564348 746343717 34076223 880747411 338159734 171862347 472462284 924448730 512294022 604428353 512368186 27635715 612990175 589210091 698179028 267659785 918916865 284353425 189368180 874529396 174735732 642407159 433823976 139477971 541232175 175929424 963383760 681667991 346972121 502182830 88735364 205649529 678703024 715569432 598426862 596256842 496162787 98261455 354878670 350991231 437489244 825026462 155186221 254864663 825514111 61354804 426921050 188571233 578234712 266165618 59384070 888571730 878605685 180357288 8487879 686753009 808967368 169842986 13306543 617534167 485267170 210621814 429651121 162226625 377379543 733068755 8792301 26675798 317468302 411755261 788440099 452034334 25921330 25819424 387128233 699929526 872864768 109431942 617364878 183655807 47531705 239172809 100554033 586358149 245455170 450090159 938855080 26604022 604351100 445507482 868010960 707505784 645161180 643310858 218268919 772368510 816254318 33117808 367331262 668694978 811761009 764006056 850036600 601106891 884620738 843469650 286103236 811192627 764632949 72445610 612535502 376407126 644679959 369718712 465543022 923173828 170395136 487923338 187987919 265675963 293436524 284248567 85335094 507557842 999573358 134823976 873379057 671670768 116215540 624515939 647158890 749076441 257245598 583578048 91537140 831535877 653584776 498796613 341763239 518554414 873718155 858315033 427986455 213962068 75753972 19391132 1000511181 583330342 879728983 429621876 66918213 911682977 598534738 222214356 884251229 94603656 873858667 721617142 801246843 10347614 559170103 393019805 581578384 100965262 834878760 896200199 786822339 345375173 354257833 546457738 437659834 699603384 63308401 827165319 764584625 14815672 214724119 873926908 586494612 679071831 543663128 353473414 322967082 805883157 654266671 294759634 716812825 514476629 211445569 512048500 553883783 748055114 24837389 340574208 957675848 551178407 190535847 959271776 74347388 177291313 796239969 929373119 765178071 680030674 457310558 626547280 853278389 728296479 275709600 244735985 690291620 267424891 263840161 703307245 279537379 388826645 152798183 99337111 560048322 22145466 645698340 897238890 442405172 385704317 406586590 427966111 293284332 928385843 232918820 72805737 247812826 938896670 708684011 590217129 725252480 4291902 989348101 735772862 142113430 571860017 739065981 368381399 411123424 790040821 115269346 376190152 521606024 916815484 593905086 941533192 434329193 924843784 994066920 208867474 493752889 249846934 655765703 764604109 779678948 460660225 80547624 334882668 989471413 921598116 643420519 61757602 394657395 744483595 660234728 820571973 242065112 585491049 477571813 126027093 575749350 490111732 330469561 160089323 385274006 929158790 255049803 740622488 225738674 981030571 411890707 376770247 21084497 900540123 737053239 284120283 69908341 851918422 416175435 164447064 322551321 343582059 105483337 635571253 782977898 166180533 144975019 42947896 102749166 759928915 318305127 875421477 662331499 860261961 744417243 762099257 855354082 407920187 200585811 360866243 775269934 794692746 859448882 981319299 697692037 309683764 353940428 471795948 239062500 180063348 971341867 585982557 740194764 326114996 435753747 107266056 219886738 239568899 741498218 863981599 323184040 208612408 468033583 758175126 427057016 513207190 962065837 655417111 152966798 974450983 553779104 919907007 657349906 279199353 249526465 873466738 205049725 457677084 822018473 898664392 802054239 388314161 419286136 735711552 159410949 397141393 803046060 245005497 707029615 952889781 878062364 772779171 740427445 911261303 187348297 288892162 366515609 110920762 290258855 924483320 778017361 893746152 899103916 232357250 670359029 48934385 653860085 747986429 899969208 588271556 782281309 557803131 680854023 552204248 47998934 181819439 423617302 785177446 789411784 802125759 498602224 261771490 62261691 585869093 970494923 363405989 469234234 897309413 68227662 297003077 512259208 548365212 80379559 5896060 108241776 895611721 346339783 594336936 931789481 233412318 264144987 281811634 635060597 545816423 716250434 456599322 796021265 25085295 868466398 51373524 536359358 249943264 379796025 517068548 9723110 80864198 640242791 536546826 565127492 56515938 316485867 753323994 496361434 394449586 958578391 30580794 156835920 5419613 562928453 87044178 45861050 353014663 211980365 415960309 961214975 59919526 954683770 757817077 361739686 38390658 144426590 614800389 77114314 814615672 304961612 977825384 922157796 194512085 902787592 19424799 582802235 577423281 801772787 382276499 672891636 605245549 393134473 750580863 992780056 128299668 734369466 450707507 159055499 498046326 694260134 724961666 951060906 631123011 952550681 534373286 726079000 563376890 534002887 979228340 912102255 643000445 528305546 693124961 771835536 466374270 292613544 197084732 113143946 693996865 470614979 886439116 849865069 903549496 235954445 81467772 187634475 631139585 92073306 205526399 494903828 826494994 731821287 529474778 968486327 470612184 866181652 910903930 64541753 60795688 370252546 15317602 445158298 675015691 111460374 189325785 410160752 408019293 849026489 757717358 402648883 417216259 187985391 325536004 191824003 218925531 808893413 542327385 530539824 545923651 930994277 518713933 410615409 252296036 981919901 415348780 612410524 512023276 474358575 149130760 193247250 788449885 15772320 300398164 787260011 73313296 933994334 528484301 267475875 542042217 933774883 5074468 741968293 642054570 844636364 358749906 571185974 198773585 917985731 498780337 643075009 71748240 54636942 748821693 132974130 777824091 805956791 907896136 431116247 461357961 600536689 892669937 38560981 687908165 903094805 785089777 152384248 911568644 764454694 475916841 31737806 477061829 718650887 382354172 813031485 417019178 514498002 69642388 582679928 78281433 667797374 269130861 27346049 709507155 645021587 196222718 488605553 304015649 819875288 702419428 282835809 684560100 414219524 760437920 495526301 115391277 239583498 276841034 116352699 608915509 348391002 826663820 732034988 954997742 783539158 999735734 32166167 294176043 453660701 9056795 576329470 430190425 318035188 228424715 798245102 861834739 258869072 953465074 683564409 446333811 351830428 353653428 765956424 203719405 390999216 540677314 696403146 941355184 201297806 201463687 36901717 270882381 676275511 107866806 979988109 261673481 822151604 649508098 29102525 775977913 683242384 718961755 529976255 425734224 671807979 574708320 470198804 365058665 282955302 726426044 277958943 978710617 891289955 895564920 373904487 228906447 304842779 867847319 719581984 182698468 458804571 508741886 933236311 542228638 93442665 333091169 463788760 407930522 905878596 705678363 999491233 177957440 103514733 574301897 615764571 852810639 890401979 150306966 321709866 58426681 890049989 456363140 184674715 413827005 686685803 727768373 688967583 760909375 894313214 747954601 166922710 509791575 867271305 852065789 777817885 710344421 964039061 687552250 276915726 451019455 780338912 15393728 183944776 408491519 232164232 216595995 350002133 243374958 724087903 202941467 389597604 766861353 535006613 907611026 638033370 812292213 482959929 925374209 885668168 131936958 612030783 846326655 655061025 258928994 330846100 697409087 21980251 261749059 940959169 521324351 111290274 319107132 849464393 119491829 654503572 370752956 181070393 235876214 861222531 268444103 995023476 375859492 323456223 498608727 469516569 838354822 154341215 706594027 448576427 504157054 806752846 849824331 574364477 471896897 661971156 154525859 992299194 50132045 613103217 615955324 911416355 35631859 825454873 748576962 899999153 564297008 655883522 332670374 496255891 48901459 86859735 369223173 48037953 792361337 149800497 212485820 798068368 17919444 758211590 341949112 843856324 113533290 490553543 363034616 834947870 66180852 94993358 853444023 725911296 387031951 79817096 289648621 614997925 227054891 380484644 965144397 403012 196370639 825206507 941124580 426581650 845821633 850584163 850769165 244588955 679862440 608574436 495184824 455336718 329301031 976959145 812762778 781708565 291013220 132028290 194081488 414449059 683077957 874003192 601331411 288709826 159086030 510101117 65372859 791107898 843797916 808318479 328788436 17362496 347127628 775449854 434601419 404593507 855348348 77085434 921902464 326641351 106922631 245413291 650454924 351971461 823750538 626503412 989777650 104988919 852562154 254195413 865152791 380633684 529415962 267222387 224899970 901139572 945215766 820485068 561587452 625930474 908425300 285549136 672956940 131915161 124066240 163966137 744916960 195154017 563081034 79790942 139946051 147105229 977027490 83728557 834148391 679737490 213037625 617879474 359536464 948936337 54214195 178106993 24240659 592937700 875838453 812005587 464495304 82863502 726223455 716058464 901441096 525520524 161044624 815906301 686972899 326424380 574346779 79054587 550163599 435640812 908519240 350271493 373640587 138493047 157294816 347866542 497649148 943074859 663110414 305375883 446553879 718520463 807402372 96383596 449074978 327901186 244385894 303640773 334890312 723284039 265852994 526176329 116980654 191153162 673819381 785841000 94326924 357947007 748732830 737621973 268438333 843853589 230243877 3323025 337703425 522901182 7617875 395119296 735864497 733212048 287400822 702942324 76680343 402804696 200783049 386838146 302864093 462633054 740958779 438848002 259790526 139044891 81276210 778586684 988606480 585349991 214443576 503625020 392105455 478415646 760536376 73005471 114600050 21891099 931540824 810481043 623142393 529427921 115981481 201352586 746248217 420635563 795711433 272505724 11221859 65771763 797477438 140339154 256318613 491869113 261027281 194473476 54360303 541090580 359775784 453619587 355618517 808160643 764507483 673154618 538204356 648485189 875519870 849510082 577507576 115595486 761103513 41933237 431675652 180696525 938495687 840897245 990577062 273460131 941686190 75652141 662981340 761272208 172547493 214722131 418089280 142160542 870313186 357685289 808451288 404822050 109630724 933284602 831492007 407807730 892856723 688134380 402469781 185783347 592405125 736041496 387858429 115920184 214662332 427146528 243100023 641163720 20334851 564611086 259654599 986700909 247017180 387938596 826844434 222670443 262520976 376823415 311547273 886079521 649622732 663276909 334756735 184913825 378715848 642709876 265730928 356510718 414443269 912791857 191028726 948597207 164819548 501507943 669230336 534640794 184812504 966660612 704885157 766621705 945334178 874168641 948091208 283842177 72876227 720758600 540883019 116589081 309704586 119757241 641367939 673833911 820593882 970275942 455744197 792493654 18407193 619222400 322661369 869706197 143095968 309694066 238574154 83822736 127087419 578103415 389481033 491286894 925838319 260734074 308575232 330443023 701356609 201682912 971421520 155111928 471076137 878129903 364036697 559820105 290281848 590924096 342855827 69734979 331866037 393580213 925487758 265672297 328337625 113383180 53914548 312968544 275596003 711866602 299001394 459398672 107063503 362092115 781107770 940204808 179526495 324687311 72295450 950256408 218524360 423283842 233161877 261465603 297941903 176083929 450521681 789657085 335160059 382360051 541869976 184156459 480539794 107359052 657832353 466606717 605590605 873863663 989989151 356114215 886514403 344637097 242476049 927984382 21180741 78945277 284989715 652432809 711495732 55959086 86771026 42805375 267614090 294690583 499505333 480782531 687659395 315007069 495715639 253751402 21221264 736624247 444328013 66821553 573972310 622665526 953624963 502248374 106067722 617470267 648632728 172666695 492223956 490193040 142410649 54716904 285392024 452979486 855010682 421790878 778366493 370540849 601430190 942311196 851662367 580299175 991430911 222959171 754361515 657309915 363153192 487526366 118876301 385681275 272917164 572495007 401357420 896992713 317353782 852370976 476942369 278144269 191980493 783007099 351963471 805826891 126378343 223832088 952967524 173081890 886183798 209454679 302989236 995862148 111449089 540804313 458017974 768590663 950068684 48292614 772642938 938932988 426225893 701499337 733714581 474866583 972479424 969926896 916519325 375211722 113800790 282662652 894517754 175513654 402248756 225218212 640675754 970183742 930959728 842884565 116864605 262584470 961104285 339428675 712269131 703933258 746612255 634791603 158742604 996144397 594802725 136008168 206003172 540593833 213102903 239447671 792225744 446182300 64515799 56582690 805487524 569055190 549335967 205683178 17372042 660908690 228723846 763562300 163463844 941648167 23778943 497962719 65854340 966063942 963148987 781292568 302607107 403865229 344600857 992214321 343293198 14800529 523945831 478838216 669385776 975544011 316851114 959614024 838333789 495890508 776673604 55645979 276150687 803737407 975340993 220535058 490232268 804575508 126059829 138559042 985626259 768808606 831578117 40716541 460398493 923223468 455553046 885452176 214770128 298510001 218275121 848596353 365361558 382247792 353988624 290418676 398845349 336139519 117836136 403548694 546899708 863791756 16191043 424582280 509928573 347097353 402331528 581898596 765707802 934466035 899727664 223998691 9932122 659026930 124840977 351925766 362895055 255906372 248717484 965671082 111814749 704964016 983790177 792150284 992463391 70807969 64276509 539227339 604837211 544792223 799758167 623228303 314377893 723911528 850172930 885528757 34045097 553472369 352384329 277890728 900664746 751742534 360007393 957823660 58573022 97419480 63338089 429092305 586312507 199187483 599292586 150851636 725154534 542456880 841968781 23516298 232296721 611691707 855297517 962914279 411720312 133195429 933268804 59936411 273415826 56802928 77804000 690465307 154087459 847700814 889733933 852030106 3183412 290128827 186929801 37651415 420481642 829620797 701690977 62220371 236702444 838837709 485016329 435952821 709284419 680195360 95658859 639709936 179416214 876376076 562714352 9940363 977581036 489197525 793460549 507903262 52585093 497959415 646006838 236553674 918845859 453381811 818608166 861963166 868571639 292795937 879469215 166009819 366693451 847633769 899606775 490659917 864026893 105595157 879989287 989107630 849745555 503101818 37210804 860614234 703074845 610929285 214671406 459112066 328321637 438090397 544146448 196972766 717585226 87005397 991536962 129504685 665132496 134110088 329758923 380620545 281244050 37330602 200363924 719552458 326631602 689539106 694813236 234200343 474319797 948110310 957694644 581320975 472608645 180277241 810187130 857461619 79074170 693968514 150486759 570993042 831541766 603502500 959525693 229936697 536360067 210707840 941129283 797975787 425826653 698679380 307966070 4757961 550977490 553858361 294208602 649749963 321449146 128995452 688057324 383826613 813082992 86314563 442814849 328509488 95489677 442268035 956437828 105162952 853366476 678481021 849704674 656397039 518192095 920556061 60322937 359160632 99631931 658222002 276970167 863751707 931247282 850389259 652376715 439715864 442609363 395457418 519406303 928316127 783555118 68170664 266176969 239928821 198483545 464263246 405798650 70995799 626355454 783579830 657948873 665502582 974610197 909220405 728448830 381748469 631139832 854723357 616714359 799778133 334699333 367358201 618927080 103487010 54187256 213882006 725751042 414972720 801991098 479574876 772236405 182522798 300108993 955532170 631555624 61503753 265462312 72265015 168829259 667274066 226681659 757398147 907859385 460357750 260506654 761792455 370072504 194690417 196516701 503893789 706026423 708789025 755160069 756746699 37661900 696402045 739570624 902874743 967301137 740845867 153399197 562620421 347602194 49268632 363676880 677682550 651337998 750908052 308743034 266303674 548722753 537322168 534671594 665969505 817248117 752022933 605724761 472128670 401999022 563684034 616957957 883355792 756458046 44691950 644870212 900198321 630090678 819985219 339142412 135556329 60087735 342388724 869079132 981534514 971970354 919990617 17885722 892294531 22752565 329767034 46356843 472258797 909164436 70742622 693609955 570451917 470086594 630308815 225192510 954695738 324819682 800918492 460372154 296050447 284112436 619322984 587168924 623065684 378974564 792469849 919682043 203661686 512585342 853676433 535816143 100203400 709416924 144206194 32711469 755329728 977246289 295501599 376490451 607733221 603565748 155052809 918308780 23400049 740866234 108787654 752640304 579787238 705993826 758131871 337959725 177399479 164446747 165583209 690793397 600043528 894699198 212427281 690624638 412642157 947203747 642757281 19882839 672474859 915919570 568306131 609636162 425549660 827042920 910051150 663242939 172780083 323592289 967242521 203928932 269543141 822151360 570525082 693096250 48988928 942891344 486833762 457318942 750517658 258631418 97418647 818648272 944717892 535153323 859478279 389567612 11569760 444123036 496461210 259358364 466330822 324100124 399398643 515032808 908430337 5566055 675011806 664969882 489905776 150911349 245041904 297510148 922393122 444566016 562758228 864639767 535491653 231735252 900621750 393668629 319309843 418819004 761639241 489067732 914846926 214542461 959408771 357764029 912298231 669887388 321368772 682855278 709700007 660794745 573465241 938123458 634262172 667214516 816788799 162099840 532055113 292407081 236919852 341460598 984360192 612955297 604125540 397994762 279167611 401683480 56344530 333546805 905447497 294951978 336990666 798378318 600595864 392554425 995493224 801275220 917980514 654012614 455131861 921123757 384113352 78140680 893950534 106784938 970351921 373528337 893661804 421542182 213563656 555267979 246584436 191280729 743836490 851384983 913282246 950078167 879111399 716670431 720764811 380163577 601545217 746173570 972669843 211869062 872427302 345692698 524982457 29759846 594782084 474140604 629019577 184676623 89314809 542456601 701542889 912535628 894841476 660603040 71590193 699898249 683115615 564321330 943026685 636882886 852086592 453814004 360747109 861928752 428297878 654084022 209883723 789039205 665934931 283759682 240234691 952623510 247113114 668184739 347752431 822578072 743500282 38077240 781772566 445198203 538200083 836477238 14067803 860714400 58561196 644058709 499491542 321604695 767963403 523440932 631650785 131080342 981511875 836299895 406960118 916266407 291527212 482627657 373652048 167767530 832326914 284293956 370501355 229762870 136584360 633472236 839841380 642226279 479455585 984679776 656371066 762832599 99556255 670597132 280044314 577321258 585107751 480189559 577745534 952181535 298696913 742018656 560710881 886261880 632987362 895647158 673872442 54297280 576508536 486623147 668218521 277628001 289730287 363531244 289589970 797377266 48641524 931245301 430926325 542146803 241192187 435642057 300426665 957156156 397912443 107450426 287589714 279382115 147986592 607175762 290597502 549492574 73272913 398060046 454855250 750020481 553370786 746452603 263244608 427316082 7484447 480696172 137798324 143821784 450370415 705412658 897981167 721200831 60714771 228035033 256479792 777407026 444482484 554595915 943977160 673974122 817015062 299481638 934716725 120325392 251245480 489298530 205655466 50599761 438158430 97573881 324512429 447030710 216879631 377370628 613490247 50588912 481084223 359678493 274103488 500436922 17230888 482968128 268373998 70691087 341625992 530150107 547001731 958390751 675743167 241132956 266815689 735643021 213337279 604558388 641589640 531028234 93640977 99385340 810811249 742914568 539990920 138859661 47348028 378416554 255933546 948776144 433158243 486965443 234425692 977333060 264244080 711267994 102096400 481311034 444146277 702030878 534807626 277776208 479591394 840834101 483684235 381754818 999588584 476252494 223326832 139197035 166649114 38229043 451566549 36804874 625269610 977202662 359736186 706120351 35173804 833302321 497404697 994668262 119830869 504781671 987511014 572993499 905949787 851964598 8395901 195793111 113968632 513197619 155887765 899840416 241587538 191500045 730685886 853354970 775967848 157251645 511939360 955067066 120094224 237303284 213218976 646331919 923004497 442034395 936075804 525962942 438068671 177373971 406348724 911337815 682145922 935573095 869969916 470924641 859700650 386408629 860425233 931452586 886342994 511078767 249769918 776908146 943395779 684757793 292568268 972110409 824875338 852126693 677526526 847282395 87112305 505427700 282362812 471369329 740819313 240607650 160814161 359139447 288449044 515171230 321332997 573595026 165870132 28131783 94141656 988783926 561778445 334196358 797988360 897947916 708010664 153244156 476401762 500404713 937968243 854769868 145297970 649995458 993634266 40071952 204148850 322204607 169025144 14415833 608015016 947330977 614172089 932718275 453570624 621405900 214022510 249757787 474419141 40459091 17026435 281101350 317186423 186808159 525251942 921382799 115819870 642439411 346807163 744402135 171203847 940984461 600489954 271721768 675195960 829659339 214727752 456650448 834792328 200916799 866499336 880690965 255906275 118272917 227501941 193731166 331043905 950015080 569856006 793078466 980467757 947360965 372404254 248674031 515629395 470085101 809843301 391530942 689073733 113526247 157191368 616716522 179339877 244921543 504048445 888148798 469034043 922501466 93217375 995055584 820185816 410452387 623648768 610167262 31951250 172491193 732319932 844824114 936479076 834357851 492723702 718977886 134236944 937658363 44663839 169423971 1000081683 219917545 174595298 731248638 145669725 551552972 314394971 639333286 163507584 687868620 569425304 895670902 259490691 52334045 508523611 775781922 580624441 733576156 490196872 589208564 130196974 623298418 315658982 721800969 929506960 110365919 161660840 748453554 172014363 910838692 143472907 716341934 198250926 160551981 298994812 736364132 281226489 125314433 675073819 880266310 25715450 196191811 868300877 248795930 885924753 44436258 431425573 421350123 14399513 41179205 922009928 547185095 752308260 640077616 110084591 732742391 81705673 55829477 525281743 75374220 941165643 337332673 692917987 492545499 515495252 397678485 639507516 228782610 830766382 378529392 725961447 319322305 119800446 355037731 188808941 916698407 732541880 64196447 32594037 884873552 278586530 89483798 120368264 8354329 368283148 962207199 510539270 824028740 198480589 587554031 814994183 449243593 514538664 647396731 88741615 891278558 802677627 119917383 687143019 836459212 140758916 840954036 409729090 408320583 397841579 213656296 618684003 186448587 518214783 256173072 504841217 667912923 284427721 481141382 681400467 527392724 422347532 492841638 888980862 704594991 375860055 994122827 538703167 216202763 650180599 76788957 261844380 849573097 473961126 903203709 312168296 914757351 908021099 18680163 874717199 851590845 466200295 335311290 448186017 552627190 150255365 528437634 400017464 181235224 805386569 339420599 514959284 530364688 35841599 315311761 954210529 892803683 166625328 828365992 940530602 209508928 239066429 529638622 594823148 941018977 144945940 875492613 214848390 739835733 545404981 540791489 514168326 578096314 800806543 84704888 899066986 792366437 104264993 271753440 886630920 290051623 736490893 682920564 501017816 296992592 499509019 212991836 293790304 997753184 172071672 669382128 89555975 645498310 418920298 954194010 642450364 589699437 25458885 487270187 811343884 40346004 33543938 308894679 811231692 908924743 829702236 543151575 193838677 753432147 51905342 530407777 808179290 986976963 199634127 989860494 483321470 534478014 62102177 95277065 794968847 831132659 45006428 347724986 175588858 285817995 321176998 904907342 415584288 487487135 383547881 82568332 307210604 495819096 307109311 546246661 883473527 2935776 362579016 687511347 30524008 908772463 1409941 19787486 205315771 482963189 385753440 762698219 375073256 356736371 601135836 523060458 578113545 96767340 246887916 568022776 174924732 598177272 908073043 602004813 402458006 274295750 682677592 811636612 24986359 233237568 652329102 219389209 831102552 131847939 332169106 914931271 182839960 384046859 913543306 532693212 701460831 890999190 404883920 207031860 231370377 716340809 135607666 962106721 273892318 735889436 331057279 46721459 425981569 476989936 455074854 404460768 611710048 898773549 806004556 12055843 349719396 137282568 460306230 198205816 934948606 494715634 24249090 178394427 450476572 255487269 573685399 93018316 314897276 744074603 146783270 968762333 972729990 620293289 548693272 804343029 855463722 672777786 196485642 308790012 614669411 744757886 247051316 996602502 160158179 533378920 560190935 312057740 122512726 673895540 43235705 635305559 898047154 469710019 102382176 323548666 470125384 26172729 16236283 634554264 97572903 306512816 549150167 743358787 293368055 39305558 153090405 220281252 190803089 930902523 132110513 707770828 42656375 85332767 648653985 781247702 493065503 820729579 174875124 697069312 367076553 798202557 705155493 175710812 833089656 676257824 190130015 342481574 605894002 674081741 163864098 664076452 330828842 695701680 947652204 640092363 769478077 230618234 161630454 616670167 370708201 452931192 97991359 813653015 645796304 198158834 346025328 568497381 300136212 386007356 719569271 505933245 948143761 33176319 698250844 20400643 152991262 391557128 3438372 63206719 826838139 276146694 132358497 965738225 339094158 257983898 923573774 375634767 187453471 733071064 737457848 504704797 10731646 168088106 685537342 280672111 685316991 171240304 975613413 563138060 328236802 868795261 795851462 651549182 434446881 800445175 966566609 262835690 422546004 378331837 894101170 216778808 876768308 273961355 155598833 155235311 669991209 326416010 67646191 313057095 661483144 987932639 829084409 496152476 449779457 225214327 581472044 832044038 363365937 164612628 345777766 730196798 77061949 907584955 498278999 850936476 515615678 378620024 782145441 753049391 910270264 575482289 46701058 959916150 883929674 830328295 76523685 723605228 395898941 863602568 244444325 969734333 474506275 801078775 10440773 669440036 652330793 976288870 323228156 988169549 249236796 588152607 747374562 908050659 646136837 905087368 391287298 467322143 635952006 221865904 639790516 85811782 895985962 920832558 220567260 380663752 624045369 603165753 448966010 856063023 787729868 933883907 368381039 161425720 633123794 230493039 798124389 84946174 438097112 300164670 202682145 638128124 21595686 733599151 201281942 823608994 962140498 133700311 64853788 732206134 823246040 738814274 193198211 837747311 847376969 479246075 604724481 368210918 725720392 984778598 622565348 698147256 466220675 421688450 624697019 830892787 568417351 852433850 30873256 594164705 589616583 48474653 376549392 12364641 801489140 471099267 659656318 719763888 830070437 488796351 822353229 70534570 413094891 322771600 38202228 816821786 970355278 971928308 613830779 333988568 129202813 882014579 622556968 669846013 281256717 42890487 156037020 17399942 343034121 649047671 999978970 614499664 671095411 943027266 197596458 626743379 41530193 569137044 698493485 497442533 27339227 183006541 853679822 786483614 942883496 95946917 55067295 362604006 594502066 258347657 274454189 47829471 163822854 979262764 72172716 656079160 527606884 156330288 110907385 90343758 688948494 372505991 284052000 439211069 478830028 957332607 849550200 376310987 741888198 990321477 431552869 759532489 425545538 612245698 448820895 603715248 978129128 884077957 254225855 180860790 661121022 987411275 475817373 81102121 992731112 985697731 961202259 37276290 544765932 128473059 172876643 396714900 936219115 138293941 850568193 144961167 710106960 383790303 76775793 561972490 418760929 86502881 391058008 689893245 296759398 594638251 449886874 163010435 659214896 539114141 248136947 285364265 261300920 360789405 478116045 609391802 674050283 734433229 569920573 736987272 786379796 268242405 307908434 539035015 858531632 83065024 145262977 518866979 312424244 406479255 216673760 275675262 708635235 140584216 970213712 252239875 433620222 864362702 838678025 271039948 924532331 829027991 840088993 806650498 941024058 355407783 549643715 804786999 172274582 986346602 60468323 620201776 712671958 401643796 163002601 744526466 365329680 500657258 455589914 923760013 984793167 997507177 490107522 508633155 92530873 268471561 185397375 788011474 782945245 991136511 701047511 36977343 939387628 206488692 790410892 791460209 889477168 385482753 179280793 505042325 518886311 935577916 547847275 859767716 710360640 515355249 590919792 986993857 751392623 435088928 623978203 567160210 195018732 934015746 108201039 153235444 874816834 740562441 263432114 61019383 730985275 699855491 216440212 22582195 244692328 895758953 177081724 285769056 31622121 887168245 853483801 531964409 606620859 961024537 365959896 349674370 943165433 60638799 357736312 282971957 167852370 266946067 598320587 726712431 47510672 845693105 812981514 425031283 154866395 8403248 847105885 485984688 764903890 924145656 856318942 516840210 620024837 668123604 579336365 499400118 152007384 775080586 263020408 390179658 179154081 912108499 319010996 127892637 956403055 695103418 679116669 430881326 349691369 808001336 917616271 897732069 648211456 989192141 483427197 49096977 323062115 464533710 534426145 331278739 4229331 698768491 226721062 138903752 719997583 682978723 724539681 279347995 211186215 227968603 809312748 842055788 203837386 75245537 233987972 768209299 849501516 296973962 418666444 331466938 796584312 128492896 155448776 367121545 21224946 807136128 423686691 591207624 553704531 236897664 608239677 903185491 611025727 152670647 288067202 247429468 228124433 943431319 508387288 128995681 657883589 634677117 58373642 386212644 957610252 579789102 771177874 267844613 325089105 25152603 943849036 171633620 764802320 157946783 710163312 268857063 446710409 303373751 718491446 177888693 775818512 330656701 801870555 945094287 534610228 335646781 478214846 413549523 876712306 63919960 539549535 695470009 413492541 813605622 51910757 629543689 5023804 613802169 83032246 958034219 455227119 727515872 492791802 979274919 553213977 811293413 691618346 277009282 828436589 597526057 632058378 274457503 623717360 300273892 408017615 659411463 897571039 159356383 323196835 443470346 406198758 717527549 648180819 469558625 921929615 177635233 4641401 318566414 352209238 938272265 456416117 877984898 784342020 80887373 159700917 481565686 592105585 364905539 239800647 826755522 378729507 786486640 874600509 711376072 335776342 717693009 953502702 235958555 793586028 456655592 198469995 146049878 551456542 393409243 79821892 789500723 199095601 507847852 768786659 740141437 128955998 178851099 1002270918 643665298 669817870 351197119 347759020 999327781 86564519 700526763 251557466 458520552 989801841 553755275 62016296 760785525 215799616 99939242 226939776 895308937 632360572 971850022 838074385 766937899 430605259 638445298 976075611 145157375 50586181 779600740 417852092 670842878 285073746 334578759 180514794 215265392 601410780 901530253 546785661 296705996 62357006 692674076 364263800 428978640 230306049 160567525 735943005 3787775 463275991 604643919 397502780 794938207 313049899 106384810 283012806 112182152 343464583 664626562 551892312 622469698 912839888 515430363 227107952 43704715 428225732 844117308 358717067 503721470 650577501 196879610 279837651 954678395 557064672 74252649 649931837 365701950 908536153 899360022 528083468 367600074 242499897 844307865 464129323 410863981 744863252 856700423 64907941 531686600 568274847 185981929 839462811 364041358 992613280 680948360 497999591 59516471 239973689 787395732 504421426 867599084 397975611 257459742 845399024 228690841 155951322 348320855 661358663 763692857 390239465 664236363 875961628 150446152 580138787 943214417 233963128 758792859 849774772 100240591 979027936 355324360 553045374 806739574 752468349 369764929 663960746 983861859 621322442 509675933 574660225 39450161 990517547 525973652 797119348 265255992 971782642 162038861 678807678 29267496 199168762 185256199 88766087 618133545 310065561 442497034 407290178 184175354 299920094 989010069 738662800 764175662 578462957 334337231 639945725 402673734 767204203 857131503 328006946 772439592 804708854 177295973 727357270 781072906 32065020 875229986 979565501 761151839 671839614 742406166 259842244 378759115 711856635 22883731 274576470 612679898 380846179 571771915 472606883 933066243 400016510 837422883 664626951 175632449 351119526 999320618 445470182 220362742 315572169 173278450 797254125 357539905 481929993 398828235 817703795 222036534 248453199 749365407 194327732 994155497 976503876 847971148 449428626 248153131 727871658 470956268 488424480 622258517 147321183 100693742 606795063 34276952 616778656 377090482 769775373 1002132692 784487557 836674093 66144439 170495012 503743392 178490310 536676783 403122871 623068025 529889735 300364620 32128950 606772972 354496245 636347213 733213734 471050007 363090980 263609232 221386958 633053578 548925941 36658916 712946862 394993356 681501426 289554594 13962229 305352566 20685701 666365157 423561810 249380687 296275305 692795523 227299611 850028345 727353010 132925304 90105300 692327546 563838705 188571175 105546488 651375184 690520824 806293799 569458365 984333465 598614673 586955882 828741273 236089432 483246216 35478593 122782096 668384145 580767754 168683287 573167319 51058228 471261548 844040988 206275060 561099435 126464149 462422103 171238681 650152219 333653276 628527621 67530305 303222608 403019383 944962585 958454941 261092591 497669481 270665699 284926405 851713192 779683093 10511198 184037385 967815196 209380412 510776052 428723678 536948534 294895325 807882346 949065636 68878402 452051967 851927341 997575132 664219406 934201330 423349388 165527351 415622747 590665310 897266908 317820722 582934693 997757032 797586972 386758230 188841500 438958658 420469291 77920547 520969613 433323898 514910479 496656133 663835894 260810799 245352572 412012292 845774459 583872926 299710678 953170110 279594389 118066431 31081678 225384620 356552302 639452288 14045316 321852946 208152654 699155686 878980440 16197065 534508323 436809880 13706113 569446320 773862951 874436412 621653648 714115257 305649278 937095696 828128162 205423783 890963993 666999644 291343112 532236757 746542010 351263683 545979121 221243550 332474724 476079444 9440569 10070308 223450220 617105197 536306289 942866406 656921952 667308298 784381476 1002253983 886450948 31399045 766344078 831383502 312269753 490243462 166097629 220870798 601265585 461024214 930892555 151586004 305640222 531749098 216840861 599973131 509876798 910791758 184742387 443555527 639859512 161080847 91034812 901756236 359584823 981250885 645975648 7841853 386125217 270661883 599941961 983000239 123644 768478213 25445012 656119738 108472942 938181367 28725610 230197419 103528848 891502679 439043661 406714559 59207320 120392388 817704826 758680903 435843323 415922743 397720140 93877350 337288752 214894622 831018451 611297178 450996079 155089148 650578819 660636728 997792453 562265453 658360428 214303998 690488833 331384319 430678755 545072058 951383493 183758958 188859495 790784439 900644527 223591703 430198445 862810403 777851042 820728980 721921991 202349740 357134563 273464655 873305983 730158360 523100676 293491434 103715856 839216195 878529212 39613211 473448508 983467286 287467493 242995460 157913373 989747903 921434925 490014918 80301117 613911792 942579112 846049165 303493335 248547857 562226764 643519204 976639494 405067900 601148798 568821354 154995703 836629825 622886069 130889034 830921792 797809018 1000387023 211781541 367038532 430861951 637153907 559487942 265312439 178178629 220822610 108689185 363849501 187239348 283347521 288241665 136737864 587576604 29244208 131630013 309420840 632712054 808786037 657024794 618165243 280788580 400318485 201101963 815463180 948185772 652611800 824039774 42650044 633844896 146583187 200275736 652148437 315418118 400581890 382585173 352196385 865150053 905535675 278163115 422223110 995994764 336377650 622129854 925185015 871995418 698787198 656717323 890913452 260230541 310574492 656056823 662933874 734302621 524989088 87584891 247422051 340548404 365344379 479806203 360270274 552887976 938314110 535331740 778376326 402198860 470101526 100522263 763016614 678981133 92485366 663528315 775861446 876711385 695327478 97686960 390760772 260955108 846994202 366394371 58644373 742669101 750848946 59804278 739622218 591128120 804284837 625435870 655398647 563614115 279539952 663944078 155124631 939755332 550739585 686381509 882748139 378292613 967334107 490495885 214900988 337086754 12359686 244937979 705557854 471669875 639634025 817456144 400615514 198406498 478861257 976464230 730834051 808970426 204770235 614990097 104002296 2375779 223037919 69382439 479532984 841253457 53637773 762263576 726154894 815941598 921517078 722040287 143900636 32024334 928228143 392315282 449211831 30476015 307961636 759331558 157771433 123198747 159413755 286340501 819509470 983700220 125521342 190635565 76868002 389164531 356401405 264774954 998832098 597915101 576435380 948582491 385717386 674765487 681630017 876400175 8154030 156248752 972404264 587305165 905341914 223130216 335734173 543775670 818144432 977072244 865109750 799899861 981502382 406748546 143010059 738262779 93562127 725054152 754863616 693362791 924570939 230293278 666718183 749569938 333932818 317314504 276919190 439483326 9272794 984428456 43877123 482669977 291165004 493374887 560046059 326762094 424613914 810681742 952867210 751260041 359844794 566253467 824744609 997552914 962766321 775200902 35775189 663187956 137801110 585023005 366370534 605445632 441577990 860646631 44315386 288537737 289994807 505327033 987133803 285016904 850240895 751796223 408570625 858854761 906516944 797192435 929528518 972961271 249554670 219420279 150627773 427246866 20978755 207329431 387598450 5662669 144153414 489029147 276604145 644714027 852506265 520199411 605729855 634538363 353889408 708833742 743958760 462128509 685977841 335754658 544285973 107999992 472958139 434202724 384205300 544531927 42151354 283869337 783869719 316017816 164923639 351286306 63433232 748419980 204147752 386743248 10533806 325617921 547746895 208399709 399461627 468058940 469136001 709221801 400273120 370214887 160654404 122388259 275106945 35650942 648012243 280108941 731800870 69577434 192076403 133963445 446038429 764605 856263984 596777661 559021430 726462252 673143046 57599518 351041252 438013348 752580031 834838244 567600639 903376457 254836662 854273693 44618108 777514392 852016865 527064298 191746557 304339461 372606201 857199627 671333658 738264966 199881141 531718305 618923812 421747188 714704940 207477546 279242606 344367000 370568810 956319922 515428716 642031507 454547733 882923449 894654900 483118867 680180725 85245903 220431029 850398825 414827210 13941337 457903289 361893157 414377098 629690462 515694339 456680249 587414043 854539164 369942022 275270166 289186348 628764738 843512828 496374051 804725693 573624439 20715649 972136076 925845741 493281086 668270861 65171140 245789728 425781165 4698879 987747535 807846117 305004379 836334948 571372579 455358871 252309178 67265946 427242099 253211306 926908269 337683432 825618521 663147177 164918077 674510561 59722848 544694477 523703679 448457583 750999133 376722363 220323991 281038353 192566311 104247495 915103452 731950527 636651388 538316447 669856663 886116386 837724288 381889128 647556540 153833964 974400015 738149243 421286171 688050438 250231891 111249196 190487802 429437552 298213248 973827250 673453199 855529322 235494468 734128859 49891919 930347571 912335602 326247703 504907395 147007014 680618924 301418110 359389803 793737588 490995229 309032743 994908691 554928882 196411235 447161054 282566560 184125698 53248401 729188591 516200179 851047313 472749837 373600975 91140998 567016811 421050023 764980964 960090867 427548604 687978497 940843350 808450601 813988748 234853409 36362514 937410003 400951659 751719206 90305095 149508582 707885780 36173843 618931808 977695477 809778257 983848820 82079846 886078201 873444428 268600346 584249406 108163897 418499884 506911279 596810085 829564856 177813741 147207785 183980079 701092564 452236368 867037950 311289875 963920807 709552557 140870144 260891940 339041470 838577019 927245682 510497150 694011679 114467784 68849994 405979499 706065205 42469979 809666587 720847375 900066516 50692437 573307662 48934893 643178241 770719482 138504681 384608189 793095640 902168018 968136020 724369911 430049806 352505062 490244708 107666482 261165450 148504486 242513831 979236115 610547837 640541363 735503009 602095398 744219933 428152519 729581313 66614152 995371369 322067713 914901172 268067706 910453468 774364934 675309918 511050776 206159206 681686601 58671928 732940588 327090231 143025224 748205434 981406333 188646048 160026486 588580391 663744054 422645815 825205600 182772967 266358471 627535884 837063777 864976835 900445173 948039664 698359182 472648842 205744837 13026077 744678938 204629619 62261520 691626695 671471527 447952861 392725821 915763715 721556792 59514988 126107209 811772904 683490937 771208107 664854536 896038678 6358244 933978565 716277515 620874065 280360104 616034875 81753654 614571282 855656575 772640830 284983067 512102082 592162293 25601117 509036232 717082408 568934630 911032685 403246808 587001236 336548449 394965313 343226062 470260096 988431395 465266865 354831002 414154831 507168461 838335963 399418146 41091270 781945258 399911957 507817328 483299851 870548711 416827764 203476644 350327391 210422605 577544198 154564717 134594513 998825322 880264016 452661722 865177201 18930766 549040266 648513498 955818501 792000742 129421986 18916595 396050429 331772043 190774137 918907870 601387149 154201409 841142872 699606318 11644283 485039951 840090565 771528570 790722940 948025784 4243498 120918746 434710799 11305005 104093981 868611978 755973450 805039318 715624247 859515154 309569143 329766869 112733012 364828544 324173998 571916564 831379362 925562867 107773311 931788382 28113694 934869662 629894620 288315590 241925871 259280366 648791193 175279598 9170517 273409677 747433607 122908263 378166612 343248041 647802979 304750775 877148097 976056284 570050543 174818338 612466737 259661771 366219052 284870472 996826881 518715732 705306133 816513320 813912551 409318272 716192360 316017851 875269473 768880322 756894737 692636756 251698787 49493666 219965852 648928187 710206948 124423100 832584457 685199933 152227037 812703705 777793714 148801201 11400496 257505342 790841906 439028950 987235743 376599220 888180254 257003874 384599510 750244638 490320579 575464655 158729760 400291040 254632165 294266931 805739854 143662158 74835124 93621712 954597907 601944185 140878662 413031984 851690467 427383575 262051232 948860686 162650252 453220464 51003490 142589996 725675806 44200600 160407691 986728293 116316850 966058819 78246191 841108896 51392923 96713025 830873663 426271055 484764517 622737227 339543292 13982668 890645694 673252496 489307117 154266396 662196963 958317883 734122314 364043164 687280313 637640477 927778474 901829665 595407194 862495543 163064783 720107750 982168932 652527576 178026192 743303756 202538513 246593146 203207566 329866275 794224695 904981320 877672920 393582825 929981956 64531359 397101955 928244165 28489933 383983865 816348710 5627201 726370138 932461748 705211537 81030819 588852158 921308005 229815970 580344149 813111624 926622483 524457327 830884531 958537950 497936388 535967051 274157972 471393514 488393245 756977357 42538032 78349497 670873580 42389187 721766611 582577507 876271652 192736363 243630448 843846457 338015318 5123370 593882639 805126301 688650162 367086934 404512700 428133400 613531023 306886913 355985735 38322684 652894370 723615734 442030170 886580097 793268550 896753947 658548760 726987670 935878374 283201351 505433376 606098612 471292684 782427822 553112456 538999767 64741604 184380179 249318444 779110993 263638760 611481613 989197811 171237501 526283197 579110598 354995928 547098954 847636505 401567267 347545395 464737479 99069924 11005744 84421530 38723077 23084562 398127013 43167230 663659521 719912744 878287084 237084240 581254265 406000916 634504156 620150892 380519637 286620082 893301151 706097467 897116054 896573875 310692032 779165035 161753747 759767029 141233540 366246076 407128646 991788571 272530924 45087566 962668973 501087624 418207012 851277604 60411445 1001646785 504036592 50672424 756587872 201493141 881189023 782303028 256518275 747781072 596816015 32401103 793361514 224195545 291554983 117608096 714030822 797147456 85766125 822140575 210174223 782955316 882612076 936248947 61428824 884110094 736752668 968006852 734308339 763068928 904980487 448037860 22187454 688439307 409793803 661408178 77514150 818124768 258346198 703367170 383002726 345344797 112225806 572802766 137146033 335743704 637520432 595802947 11754849 936211571 345415432 461836456 946640441 837811619 60022476 453709689 139532114 655344825 377010984 103467341 517098524 661370759 171143439 490736016 24299467 133206435 145353872 966220119 883877031 942788425 1001673617 556189350 813911021 155717255 907528116 960442611 735453900 203528925 566459729 873545142 189281084 399357349 715587272 176003176 730745894 290623265 873338800 563286567 272351645 605497341 305930499 164395472 252768150 105765838 100877697 962989557 888831553 185820435 882827551 316856807 742262803 48399108 979227465 431705316 707540738 228894033 369233544 54302918 965638059 917235729 908177475 803256719 801408264 258897583 647670667 297689974 908993129 762828382 496475085 731970047 906484952 483252153 180075079 702161174 237420679 412309334 589993539 107585795 162218147 973136333 472988191 643369069 2895341 421133420 249201239 479340741 740047885 684978571 357663574 504345166 524351828 624578788 513471699 475494547 88159601 243546298 887896653 702787847 504323381 573907804 334164828 94724730 908758990 133840453 160948388 894216067 855667671 892797848 579406620 553263531 71624929 94931996 756555547 56207434 616273773 30638043 476746820 189419005 318536299 516068137 700854591 226861495 623336924 445285440 636533325 502419796 496335672 456909516 357787625 428155028 165983069 436460427 743436918 871012340 660411585 48166760 554339647 722985798 779749787 373874847 342056888 173244642 686210205 127525050 443519170 58820464 551377989 924473258 133920582 558414413 165639682 765323831 222385364 643525393 279814647 308872397 441679926 563460160 686805941 998110457 730223104 10309560 339833411 235302259 683124180 435242192 147183261 656495829 759415514 845914774 223548958 277020361 48438043 372444091 608731338 639034681 699272753 681298410 853911880 539873796 539986518 886827340 425395275 708102893 623667114 13732713 835830937 226581771 174398667 810720647 374855951 463445197 768457733 788594445 357331643 946744074 773539490 791680074 286861375 592615211 887087150 841882060 487973834 427819616 310620129 149752755 842774139 586950216 593413777 837476328 961830464 483835842 329208369 181555585 82345145 858483394 321841143 346625668 822094198 577214954 826891517 624257410 640630458 818104573 434695005 34642872 431406925 225209308 575022017 340422826 762439715 422698174 727967486 673622327 470730431 914480486 355455364 612540200 536292609 427471689 989285683 181102400 206014840 863557167 780885651 891671226 506261263 402621057 458188311 452189442 674684706 229857687 572648410 649610823 181229132 34173206 741366460 759701051 44990730 881851879 641838957 1001295155 395316291 985611739 33705100 1001965281 736557041 304363851 273164122 69504901 88507099 472203066 211471653 704540532 534800585 826314696 923577924 276378581 90199503 381951806 712662794 613563902 5005432 902725494 595027514 647175606 712022614 692077971 936916758 254523374 383073778 606207267 949189862 126243820 337145815 966157524 963157039 5626071 410137757 87391045 448712272 580158334 241161807 178209162 4770808 959242801 255439818 819794929 60533915 495639175 774007162 54967594 838947048 434837479 186092244 653305088 550016352 89585196 111872204 236630850 899998391 382436299 318334513 678195992 811346610 141244498 977819819 389500836 457832131 826688280 436138442 894120908 191337203 818246895 438217356 970733938 642447430 939111359 587403261 645200021 128516956 159990197 150459352 734906665 236686240 967562304 849196870 950338957 241638333 840623519 137931759 450803169 913550532 895850722 953474697 17569212 661641378 362381464 801783915 228747016 63863476 372475218 706362336 467825034 596176153 518533733 504624867 206888672 564283183 531966653 812482452 147717561 50554633 768314029 402924764 481711900 115630953 762281506 157800145 778250254 756460912 1000096288 400373806 466690323 464593122 895850549 757786881 644793979 125817113 394480304 380973173 263233306 758218837 28815331 782087766 274400695 349612977 243697147 675040774 321161986 547674299 376808071 601677027 757980022 156938021 404498000 422508249 64087449 854561444 766256881 128019121 246319821 987428401 947733326 922830199 152758665 748127929 747679063 654954447 594764970 652150728 750666407 388638144 376265538 335129411 643102693 640759972 33883764 30670448 714034507 153803687 305451390 509697630 644595943 927910611 258039570 46333925 864626589 877023888 262987635 458426786 696199648 182915930 249021891 434165499 771076437 893607382 505423811 419183514 851594958 632405280 917446281 385668406 759792642 191958076 699074988 972968835 676026938 191515662 611351648 874834405 30194816 167119565 815058350 840874712 794709230 431126681 192234584 432477429 112580622 833678130 537653279 689413370 958120439 309786063 802249434 687969671 395980034 204460316 240300710 930204909 331875303 682933396 520818288 632867917 716471657 605844893 558114837 801814156 547528355 113064881 134608239 165321096 966042286 27657359 266962085 991615996 47641154 339428807 327012933 931194462 254859549 736977906 109734977 430456842 394820071 590772038 465865905 983182494 25180587 47104041 921475609 342211266 522358839 382869989 554148166 922092302 570928515 200437829 74868175 220156391 329751935 653799920 506575222 955690937 624427898 933096351 1000321658 81276449 651308940 528304612 678998326 486011375 455730087 166456765 763519708 418663707 703177126 832817286 236887635 993081327 124318632 949888822 684677146 108350302 941729192 761415902 893769711 498565315 679866462 280887211 986923966 115419923 488714885 468914070 308433302 622168482 129275265 46461482 787036758 854786302 198623419 182955657 437865484 351329083 4215443 951234714 762212004 895325542 423748916 957341241 552955816 906610032 547112670 829490568 611742646 399572585 978696417 911291691 756977553 302194061 701183988 59401187 142796877 257848530 667270556 903409942 529972164 421878354 173703002 337938294 28817067 377264729 943487613 128492100 248391447 506305263 1001915148 98160093 409794262 587177249 276464998 346561578 186436072 957013660 554086983 551331591 522547134 240683250 282786401 866885572 808570785 231467744 139186092 86938305 71430475 216130785 426430253 9626805 955587933 600729074 304019585 821711863 417543024 353110945 74589931 908918952 534538915 60823472 940843818 159487428 20377768 92337077 335205508 989071197 913376012 764096165 344701625 529167767 378704090 617014203 609637535 38738830 806199352 484769214 2100877 711729157 520715318 608974624 137966756 104161308 46487923 958591477 173648673 38791035 60703330 330117007 241668837 436632106 381574115 672270094 646107825 794133735 140470498 181861403 948513109 718128535 20255524 768668091 13963723 846390743 138361652 962803248 671126876 430843321 645151892 129940740 645487442 530313570 239383353 845975483 809042852 542174606 499263990 88754935 316372000 130771745 478318880 963313142 31190153 179392678 642929627 424659019 192380145 785322713 843398637 105606645 801163798 636462957 19037230 748130339 285079114 386315993 497775100 786495313 320481308 706581421 145270071 33844006 323381693 881003934 763385823 936215317 75505722 443281946 749570030 270877658 324486181 69942040 542225899 667390711 660182265 450326894 959529790 622316755 393713636 468151116 461257772 679264224 309296147 344450989 113357155 849847611 390137744 604030321 27290444 623272407 954654925 162091606 898246827 134341303 587732362 776408300 65655313 167097001 918348174 152363658 188128677 594734258 80239652 835576336 71711388 283414630 869396341 934813744 93052640 336493202 978335147 516957031 103364299 719012653 121563552 556674516 233051236 943076058 462720134 5268152 527495995 402424004 359432798 990561197 322675809 466191201 132804752 335464407 573462930 109801360 679779597 89214496 860804253 674671621 775043480 731517586 993418427 623701444 377919577 686605781 584593828 768700265 174761116 182237886 503218706 748626166 998397473 219124997 118903651 782161522 372536385 154689373 433629011 447888730 851311113 758242772 198608192 797351483 642493107 432447514 646944603 886189964 301403778 867761307 898230859 432041489 761559894 369101315 576641223 773293464 89895724 80878901 928922203 840842536 178036817 188215788 725419544 754239934 943790451 152737083 374399731 942462678 41311788 199196170 830156704 481232627 752904303 299987927 264911289 230632404 369905544 56951545 600380172 154557687 141905686 364335115 869757673 550728522 108986009 368590020 301909539 815493990 589419439 963862227 411466616 591313310 459965614 913070893 11194582 311354507 288603306 766850196 671504385 697468704 625713226 34328385 502460252 563281276 145103854 826349602 992465191 292586379 714658336 351443659 27474903 132622461 403730659 300238793 256057715 375618223 621276148 270324496 189697475 656286488 348367817 98145249 566411956 665260423 769997679 691830515 349041314 848218556 481839948 926079826 934391359 800789372 263505301 506914971 699908422 507968724 451741037 240377569 310134354 542279590 873585814 572198142 517075769 984240084 226351416 498242913 824733836 445523943 888380913 619165766 15315909 802480309 305918812 4607059 1000188665 464083774 683863668 691981192 313657220 936025531 504100618 732266658 796320883 619945413 814518194 519317037 967560844 877916553 43849593 983173968 617698597 94063939 929859449 601840472 412167586 930365432 268925328 17553137 998144088 439901144 466482743 541903129 857412107 225723438 334637742 678527306 557789499 710136382 613097648 852733670 939872666 399287866 361477977 827202701 991213490 369588137 730957162 23324306 145206868 457096728 66015859 813921864 294724007 526155317 667368404 265040177 51287077 433339288 682536893 238965216 266117004 291002536 803952678 440978720 150398649 492082644 92111304 910412650 33549170 908142196 986336708 291686061 338791166 242096536 904058006 907596462 494826939 430419088 309657363 312566629 296686793 978307912 742598840 141203873 197958902 392711642 874506559 816453881 766462044 585630069 682124253 170037159 235321774 964879351 134407455 192941270 996037033 622196730 204007751 564068226 853281400 199475113 114426404 808906566 917675535 786649615 448727619 585661673 591568302 237143309 366263278 145679898 542683647 880594621 425164570 30875821 734025969 851192219 700256088 833098927 133857079 509577993 826872138 406532687 813990423 394621771 985212982 228190950 907821427 901314667 606216656 736294624 282256085 238518103 822718359 767425962 426025069 38560309 819712177 883750848 176223158 444859602 933834086 99804173 471013132 149896813 234178060 231242388 119776276 222494491 655188730 328202663 371148317 263294804 713091844 24234583 272651840 149036371 598684336 539852285 921092036 344626796 722994535 1001715382 583573791 877551063 759123364 569202688 211615661 723060610 763741289 691393066 161558044 847644960 524013495 107129090 600334550 541992829 729004556 638780402 157998618 680804785 664783553 495231506 486737792 570667006 7370324 338042924 245010669 860629907 966237153 7987520 337692411 857170873 561720585 210908626 293365862 21850605 588234622 938476398 554178253 444331176 541086776 331997196 333385052 904542300 681540571 110711570 870602846 518611057 661462928 953909578 558223054 865734520 65802597 456008131 908554285 108023679 422019416 15326349 410764234 207299531 136300788 225420387 147571945 856647209 320333596 469585999 740912616 729164087 986154188 428403144 553671336 120001169 235925115 679648980 863279410 245777008 126398631 572689127 411980502 344253823 813711103 154084727 437838834 591277113 827175155 576370402 510345941 810719145 702763128 563740773 60703511 316602665 502172082 586524805 702316512 15742472 942152337 416256875 677825600 139568453 322401521 661908593 325076316 422593410 966670867 82862009 788169065 599006701 631686613 207836105 386477809 797477389 798066145 514239433 551110984 410992823 202501705 44724766 472523304 794585597 148663396 441750370 781600757 171647540 908151389 81745863 64178312 442601734 992790666 483835207 438078637 840578439 833930941 886502499 768913563 793299187 18560024 547692248 556526709 96405655 708302128 868568601 348994138 661784140 534047124 673196838 633040458 678360207 567783155 982944255 609872642 577911462 261554100 242563631 307735067 935904103 705502570 821905542 149089698 930991171 838565660 990403570 712635750 564445845 603071519 748563849 480472666 234912950 758877090 884358814 854441541 661677182 136221319 113190302 692023838 526455198 694247622 287632306 717018346 587756532 813303622 566766404 210092992 896945326 566348277 522866983 481996185 827509173 196460878 520438679 725208228 696103020 13683869 543001295 64616299 992758742 954590705 669652049 998486918 94114674 151248204 702259921 906972109 222724342 67712602 585455804 731668717 45674963 315359049 946630504 827638851 327885799 200823460 323117044 139436369 244025337 264461778 45516655 944666406 213846137 155670550 509303377 611791988 408985929 387889903 545267258 50569825 584584707 627138923 891454174 376501872 476027859 996471639 45806136 116948038 437884664 589254178 668397765 580711517 167732697 313753591 640140917 354377225 42685709 619326335 401681667 340054798 458341964 27199275 91357223 389426355 243897603 818459528 284336356 258779904 321882791 281020167 238691357 300494792 407315571 175078988 346459264 921369148 866886983 577037155 673293189 709060030 37116664 47700413 339529602 389762644 694295386 418799935 93661715 856996824 194032896 68078639 210041659 910337470 459075406 181373918 414777294 82538344 153045288 838190300 769881287 860876884 994790049 108690027 951273624 379219874 265617100 93668592 718076634 364704251 448961765 830263726 313553854 379427577 522942344 990008851 553642714 56933695 43461770 320792076 282820339 998580613 561054544 552555994 678348565 695387354 992879329 832841222 22189426 875789804 873300550 326684899 663158816 206380289 112579788 466880332 164073472 207499143 88320484 500950963 249392417 745344732 837587365 799440845 704129516 620187667 525335522 605372225 340414105 413130805 208405152 912170545 497723416 746267917 562483255 186006934 72403354 73076544 826711547 753268225 3520299 424458548 776690953 831256528 611404220 671468445 576700441 38223687 759031550 307306694 746676767 276438520 511820973 528189464 257693333 557421242 514513651 791624576 892621493 900218154 392584891 650082905 704966088 556892749 116249090 473368636 478708000 244057014 103795515 715175610 208999208 114683992 547792115 572235986 774913932 157248399 106018319 543206337 293115432 173331096 606642215 835450571 954394836 783192282 344666789 290863817 463743581 889658496 45377470 72927240 368165892 45478219 825268960 946615085 564258170 122384597 385757378 68860708 566893148 695828186 9010956 351702027 569770117 13431742 571900854 369190256 182685598 168261899 994977461 139270916 510500388 668207068 525839391 823649718 329888060 869285942 561005972 854820250 714707886 303253024 944739642 316872514 677877906 806279359 657173506 177209131 866660870 455371293 844599652 924759973 4931658 779101713 333416080 99472651 346804077 551719653 870608923 319892272 537367883 454381439 695256665 958616570 196761638 3975949 709822480 30416399 672940152 94935418 330433163 805782837 94623353 393363003 8792961 423740717 321811016 949151566 831740986 669775343 735626497 715079287 839508610 831593672 116352317 451207806 420084029 972168337 739213927 366102979 309282610 491758509 793479038 962127280 244749684 262322178 361918748 281777914 422330421 385579048 430903535 355966602 771490706 489138121 382000801 970086073 854215542 663709072 316152240 27341305 233604379 268598115 582278640 295001396 341076571 285968409 484263032 733857189 136404603 606360656 403084610 145057530 131298367 10953779 702674630 177419336 320139762 859296290 442453234 809143384 332020407 23852753 858887548 465663134 534102750 118577539 931311117 257333481 336398431 158349498 570550102 781276740 451534095 79091088 82985359 298064582 662926309 197819832 158091175 298023680 336249699 355185119 208324155 346420916 767611253 855299397 735420171 265200617 45173517 244534051 821463674 301324091 892676592 607523480 287087196 668329892 683892077 110260540 456853425 524497646 720335214 605853827 628831154 236379377 992392787 764181476 131204526 893150863 440278785 261769362 32412536 52129600 501905981 520621057 948961873 348468034 588531424 651087622 654145471 342776254 357595322 618152018 809064971 112831391 676611807 94371751 631501639 665115959 435645737 779678493 692389037 662277762 997131109 888590239 538723800 200738319 533226636 601839324 875820641 190389716 734217016 435861384 288246462 80191168 463920273 122670984 26382583 383710581 130024259 954605181 35613918 14200525 916099954 300678546 394365727 396049634 100690465 34895863 481392319 640423269 83329157 407387080 65414659 340491374 557127150 113691376 850930181 46332039 561272338 269383732 193059754 443384664 203276043 122774426 540859805 305677444 795554460 938690245 464429258 698463822 923907062 640187950 729918561 41664105 632483179 338406086 274244622 479488326 842862646 275500848 858410369 897526808 110867580 426952130 998600430 359113844 220377074 679860178 932406850 347362628 109484149 193850161 905915496 983725009 817390738 87740019 632693539 93885890 303248563 630614494 672750614 884681712 926584201 864353029 6404302 357264057 380917123 595009861 594371392 261139277 720583685 760760557 159452784 363417954 104171650 437172467 341387064 344852227 273367299 420625952 180391544 651994104 708150577 990359276 301492903 400336704 876174085 124296746 292069007 672842541 745358158 706769052 623735978 415048328 218054768 67432678 414998178 647811177 523446994 476795346 413404583 91348478 214295872 581904282 837085649 329643367 142760729 729237573 927563758 470675961 146778234 757080690 262313676 753663900 414789257 305084094 360146584 279021106 732191814 493568000 327283616 753891608 768051515 314042221 837606313 137270128 261996622 596239540 475762344 542743331 537834144 190423873 127827257 786373694 921253491 767560626 911050440 723979139 377398165 503050147 316062008 687233855 49276743 864755215 634584974 734355406 160670759 319949575 296616022 70391724 468973951 795698326 798967082 389409792 362818397 960948810 341740493 735230184 254295422 269597295 883923771 984436398 290326447 594679117 87899126 945581802 792019955 580588533 111855552 363386457 290411820 518425661 633856976 400265026 240427821 938424252 516762558 933893443 337220228 863489345 507200710 354650576 269046240 525700037 305751648 684094177 521007605 413171817 724263240 69999451 200134950 586159506 483420380 875667122 211174159 664682606 829911886 980782285 712737889 199963300 247552403 187452128 103538323 898968422 201261452 509099194 833174550 767717775 881820107 715155273 687208605 855647124 482788173 205203140 861573572 552620510 523596308 338967781 752115433 820026436 364802397 397408190 815256338 42177724 783675049 961800790 524111913 393296042 410240944 751730142 710864284 235897758 862642905 824914091 650306072 24574583 134396869 252556033 281089597 986095591 319266390 576298466 728288965 229128557 666827740 827564574 576087143 702774305 562691557 834116907 198027312 152960530 27280797 844736972 813306929 209671897 277507063 616473044 638513690 469783979 562283704 459477533 168027759 359018187 754277043 280734147 252508786 30728015 618093702 586502308 947245279 562911983 759900977 366044553 208144978 599261975 856918677 864829103 191965310 493535559 916293809 42333753 515382074 103026590 645375050 675096084 853950393 872436613 807319714 807850058 345048357 336388345 108951276 44992747 208266232 433680190 345996995 413751804 994802220 716349440 458232579 315454097 581324071 261087613 465387675 485022637 524637597 120961042 478145998 158228958 854769733 848695570 778976999 756956306 997883473 671481617 629055867 207712552 534987184 223912999 476101694 909431850 125066436 11551718 479897744 585944325 304801054 689084709 725145691 846541075 16733515 786245261 34007644 321875218 529053243 77187019 189821041 213820263 168146459 776078680 44697103 965676180 654327538 161422511 460809341 658134793 58823098 643082139 600366260 167004458 617070070 30394879 82727419 646935321 540300364 172412026 62161477 585982815 914179286 742141475 731792821 791353953 985276085 374290535 630533810 482111832 368895660 73799621 752677225 232117092 416067366 833640837 140734944 790987932 376585672 810165383 510677125 817261711 434565128 997770648 576942346 881973823 751143208 547813405 834666011 914501589 918447792 606425478 702896883 864821615 141156604 477919948 493013770 233882148 797849954 40102533 526523455 854241334 690035776 129756508 453408876 837396851 738881783 238084617 393939265 642433427 20515400 716629844 694133665 146669512 730221461 779185311 549541139 16368364 420570627 679492805 255470255 725722456 197078830 45284603 22457287 647096246 177426885 634347001 808261755 854941042 686882984 686279003 223706149 300856829 3633735 724227982 236006180 749918231 846710319 591241974 387203425 603208658 164414563 828738434 369634808 44870546 74763351 219465455 600821915 405517046 400162309 813754597 772341362 10524458 943345266 147231267 992247913 671555219 284779121 343248157 925667272 529332352 201016799 148488087 102700781 807022198 79738917 417852245 378093696 544632755 339097468 324973500 518658153 51016474 557300644 975117597 19224690 71565069 262039548 394363114 102128012 467743428 586627268 31163536 514293049 219110793 534772245 493785635 348877545 755080518 887831094 491099619 533165733 82286548 206789057 532579029 285082777 199296956 951785246 454136700 819520982 330479962 124023246 753885775 27502586 452495182 457705490 887753992 332915392 410404211 789028307 736253550 68216948 547155989 120200056 843824229 105961527 322090584 980820143 140440012 188216218 536378120 174925853 797367068 588589078 419060723 850387832 875728208 775212761 572512910 305552027 656273486 615141692 739249263 108840184 106034619 932349300 335309937 847187346 946052541 183520839 972862232 23942845 837240723 814849648 209379977 927645547 156687046 28488356 640828175 297115675 685698451 56065464 551145759 914627537 107248909 611364521 644638469 562702828 472581377 782466328 639028414 286162325 193999864 752830415 970452145 85607940 858854733 897328635 307403157 382593013 438889831 15804042 560131162 884802349 75253392 626724815 411896021 82471743 971844629 39223172 968093324 948589513 394694920 900774084 662852492 410143081 938870429 853656708 209021390 350223905 535440045 315418336 589750017 104613343 8972268 447416376 44299591 700339511 19878342 587606884 237560337 469923482 533780207 641259617 959114940 383539517 25031260 573263502 283471083 674508295 390607979 891242313 473221911 644219336 593002644 476030232 73678233 563502044 589269162 269528659 73453798 871185693 88640939 538688960 686908448 728907733 125863830 805641835 868072614 152517792 806833543 872789889 241765878 804610527 366300102 79680917 236788352 217700544 911035345 991051734 69351466 23141369 120809267 888011270 16760747 697595954 749129795 193876753 281394512 189696262 329314089 311340373 738431233 891388579 44114361 303661595 640334073 604867753 796708105 556182649 881930400 756434385 485754778 843970065 777485006 268068320 359244177 28091283 536224937 870702048 332700972 250136305 936550725 428051683 358298973 585726566 818187957 953581564 108935672 142441249 599899436 46356015 953618418 569494304 248372754 826322754 622110654 408281452 51583824 280878669 965594114 528666728 182566496 641533916 41903613 422198373 676508368 861196094 113899243 619337873 319197020 246367454 772441807 495691871 190625607 748474456 941687810 827018070 111754273 84907615 146847959 156356545 963514126 140015309 942996274 943405854 30343170 628531887 1907871 484086646 672247518 914789646 762175540 808619480 412713201 934823534 754861896 893848203 283577846 14930205 252714272 996807430 173778963 693595727 87560644 110756939 8086610 865142887 285127388 62945348 562937077 263269848 419153654 476699930 77033024 473141419 247079845 642155882 31085721 370611295 773160409 590797957 1000535670 601479294 323918545 510000996 318555487 24423796 586889784 634206850 348185752 48276665 386746609 472679695 98573414 264608374 105470549 966931547 924842747 313930280 870181928 879623400 240594241 470963686 864243965 783655687 408258645 436623843 908536555 697640306 299317838 240177895 495207061 498778490 479243232 929780605 651764593 974575018 915932260 843015707 1000107580 107628749 968201031 136695603 1002237184 291445231 320363466 75278198 43112573 245048900 172030612 924473317 743885279 555110254 369610660 649762466 19219490 219277362 653808014 391410262 579405308 611362143 477874010 596360735 416639866 98761491 995819077 673172550 321186567 214840402 595139720 956755240 529292869 681394706 264542735 319032380 885911307 728888575 152278315 335220883 708206910 299210534 771993411 467289248 185721132 92719471 628722544 617698786 287504804 635403356 212624808 248028696 688607661 4494238 324494908 196163357 795059073 892622531 670378646 297836777 967651047 67578581 655315730 773956024 122287723 128556912 232990033 521610047 775693717 925426236 783039750 714055843 93652800 624713331 788950325 986081261 540957376 110687080 844413896 525928595 207650761 932147018 577855154 506836970 150905663 823429633 717852397 797911097 56095689 17153327 924418843 668352014 568506030 88993390 517978388 583048833 904474305 660301940 74870312 985843649 425781939 345449089 34103570 476121290 195343904 193053246 356954112 838374520 90746033 316108399 293550213 842128482 9750847 993784015 888891497 228048444 240566628 624853256 973163902 635306962 162162024 231809280 270169614 106771896 360773388 651658339 39296511 414012010 855505538 496107269 665308033 871498707 230412213 221939367 570009468 334441502 167082394 858088830 582387304 272606290 621516327 330387904 883824932 489168809 725480777 470318302 786839718 936252948 199743765 299264677 46818121 594788283 375840489 952960098 332531233 735000792 993498779 865216716 504874011 207896823 335583690 253368471 28121743 77467887 928906879 889812650 909394422 337713409 914010518 386873330 180196693 91621064 878473808 845012398 115044743 930089375 345300914 293737516 5331638 244248015 259869008 244949037 419038572 336335427 61638799 453144346 84257872 322572160 849561516 582945566 422352643 485289748 477820230 271442805 304969303 941862237 241320698 737075311 713424295 933226126 311018706 108439906 973104603 336639455 176893415 516938905 887407540 107992581 498373658 324910818 724771120 961173426 616070867 188271532 760614399 1311993 575979202 402839843 110075281 866697056 992192143 666563624 915611849 50737201 584692417 725927987 429539081 136066528 572767711 98810029 83928244 334626166 314963370 789126887 620897376 245809420 380844452 470212200 95045519 903676046 792683586 988494211 770660948 73958404 806349101 648145910 300963081 476905880 614174827 153820896 780764362 434841212 525626238 313311097 455875801 273020464 568234100 91874628 286558598 509386292 44712591 842456011 526833636 613634064 222929532 68414858 688507517 120397532 750492253 269185280 359326085 924135391 465711188 336513574 858109461 907032883 628280710 991608438 231764726 213330372 911623086 286619364 520020842 419000123 444533614 268566278 156346535 661282009 592683936 937377374 373442356 621913980 45852250 364685867 623157398 707036006 304384872 256992595 748224690 509282260 312236968 454855019 473580458 480307070 748801498 962340733 195014309 660532126 817615952 281567677 867403726 708509861 50516767 948389572 889852750 635256386 638743707 32048046 66358023 774199671 198176409 442320847 470326769 585836489 141117874 23507287 263262746 737767125 352151614 834336107 346313848 347576173 72807439 850737321 443275923 206765640 671587807 651063148 285638731 928151506 379838734 409071021 783465419 254038982 722646945 166015760 890548464 376096183 411192406 868136701 801440361 227427614 351046789 546455601 942157296 287349609 333608238 166919741 187876644 587413734 178758196 843006437 882656292 845564636 735345663 554723303 663733153 428107196 327040828 361071273 781141129 723791556 10432753 841160211 301950758 937113436 410613898 283245474 574792380 280337622 353704756 655481983 748618992 3428370 612712434 126736408 812598137 641522706 311785314 276605056 85184868 997246584 399610550 165830611 787492801 577690007 340216446 948390826 493888893 737742480 238717018 864488960 929199873 340728122 19047683 526098382 33782027 205010150 846533825 296849155 230841660 417784847 218140767 75735499 254200660 373330017 101869341 609447268 693403107 279747945 821461684 227030088 253640666 513650807 189321772 632139589 724153634 211701079 363834395 707145487 85982107 954360332 982631779 662904717 919745130 470492000 167707976 400052124 619806954 459068039 494974770 45297202 610201169 913239679 206544781 87989014 274489763 837564317 527422273 761265385 56677518 662922469 331447332 131091306 182421115 147690962 585082309 682176048 645269744 988018185 536824978 879217097 617114610 41667408 599190041 712210716 931170801 987751361 556907617 103967098 880891908 271821305 551019899 203303429 157818855 470691447 262447044 956439385 193283194 287532006 330253086 598994680 451489438 598797552 603919030 690996574 419550435 360070940 242642943 197208707 709376251 861936675 296859412 282311096 66687560 540042050 565836333 77948888 656990157 933842026 882220603 352332859 364366103 803146211 515721104 680142109 445361235 360203594 75320361 540162186 624725555 464155611 753019280 741139425 33832662 566488772 754092230 55600412 807471580 450900467 242788288 324006959 624968186 329721542 445070419 457612427 902547416 951567963 44789715 30471659 745994312 913486040 654849647 279517735 194446390 183876971 868431277 586514113 814482141 30082701 879279104 505010842 878282545 272651593 77890571 723242620 312229032 335400323 886690808 61199651 291724891 291884024 32008385 657750166 196490715 635552768 256759886 475273445 802616695 653302883 672959364 767691682 510679917 603393602 535348297 543700093 703904930 482582809 700513701 56950209 195970503 524218812 862166070 859811335 155469545 133424518 809638069 446812888 24200075 132694666 549586860 432343100 238918014 355027329 630402902 94010117 333998741 20826313 377051655 358874574 607145265 438406018 337891433 198495543 883045108 118326598 65508467 141186251 458029567 24630957 25347841 518481312 272337031 266480500 784427786 295622162 418449055 738661770 502557972 234352179 535813915 840550370 251619808 359402873 198979066 623517585 494574317 690604321 48606216 832068691 728140949 383225244 170085495 626571791 126981666 988330542 673085286 332930608 365764256 146401357 361098765 117667875 514886699 670335220 148726870 196155369 615577951 407862924 537794440 884142558 24263301 227602663 535912933 351246904 717916430 932448078 154181411 921853036 462323412 740031774 632709913 944126849 837459479 400283543 241999067 470914438 796839988 729087712 662360882 260016905 165884363 552971341 460654510 292193756 842780607 143117037 520319108 293354789 748536007 438176818 495806159 364475638 842346183 600026316 111144467 566684203 854532197 886530026 347299022 96424461 653140277 805770407 968687891 313800034 162512956 476213018 68742344 437867835 94763909 824558278 599711598 416136749 902948095 374664510 530250740 138351936 846954460 836381404 374885168 976662052 342464761 537228921 201989379 348889260 923018004 551192161 509558380 909780602 606541802 39705096 763406320 216650805 883097623 461925731 844428874 295523853 352936474 631403892 898270804 469207124 312256558 507628417 838917766 584858016 728257919 106340092 675494984 648458175 866869606 897741938 433016307 315641980 666864423 456427156 840139996 221663778 612398933 709909844 387689645 372966313 244974832 980131088 439756362 113498840 493073236 293220212 301075297 597826643 600802611 694774211 741731697 979341971 503779591 618596905 254546435 844020819 607240815 725013290 1929613 948915785 388991948 370100712 852600410 723241743 194496255 805561476 137367052 562772990 19639571 856104140 764914825 652536387 483007450 98969906 375744310 909474545 12744763 251268762 312179079 607970065 866029321 870079277 899464864 283329947 828660710 437514590 59252517 807743518 738665502 3997201 797418476 269662316 613377367 734148029 543114122 298699148 956111390 734975965 958503099 823113122 391551572 962879270 567072892 399317578 41409011 969812173 791072347 275097803 483318878 904340494 171732836 727940495 410185548 219986930 16288418 98489360 161178912 886271190 411963298 567007629 798056115 641487214 310153219 6055716 421910591 196812355 435534034 94475621 577559490 349906951 715332365 317235458 899249251 303945784 824309291 443786480 668140469 928196988 41569586 165302458 236776473 391575526 56175252 408482131 673541807 608997471 672900913 343470444 58090755 382786565 199800143 526660893 200827454 188517673 521713060 171778645 341965796 586235712 617397561 246980935 707849216 243353054 673979437 358397330 439261907 444509888 479020351 986458396 850543986 349293786 328184002 102587160 860670180 591034341 649788124 625428660 636222414 295543020 589969563 31061828 799915538 453026934 911226792 728515009 501751653 443399123 272508194 907386393 712623950 297366735 18334638 486789076 663997963 797524036 571920576 66801982 690570012 786383294 484448078 343879301 874227196 736141110 990111438 828818396 507028898 693283550 563720926 190707703 811527937 375073434 212555442 425818393 951482164 533566495 770070764 593934979 239685682 745847643 898626363 967871987 252728817 854383880 417992489 127932915 863805855 826214570 876650101 218056187 222578716 902649116 291743949 361551899 805971060 964535290 477496686 478545834 571657078 874092844 397341698 648289334 800733816 449787442 221755961 481365266 549279339 833499927 626026 73032448 484328750 372749955 430813199 706713833 448873426 240013198 340935959 803047191 65744693 535642358 292578100 168042243 257489111 586862930 43202471 343101974 893125180 276431873 904335988 236698730 364993213 386644281 697002540 896476953 27067317 903911974 417004531 750062802 798876043 957473354 345372960 92767370 175224812 340169630 292448942 550444197 124913964 94020443 776773065 958409813 491004666 297250036 366991960 246787186 377935197 582668627 348787712 515625586 134973227 934232561 54614194 702347582 598007005 620416293 407218455 184257253 431639039 700520105 140876507 548056744 473763191 408246438 316800621 287242910 2569585 354220814 308415943 989511807 120859947 900699610 366720938 769433256 6232862 33360496 143156965 44207423 318088226 733483408 201486928 495074318 565332170 738324639 488588165 734909632 473100173 453079617 188139247 999730093 703466528 146131836 250433059 149881848 194072038 253040929 419533322 25030945 293140036 907279663 473612010 512110835 287686256 865150691 44206480 288764204 358863856 38941277 943722820 889661219 831157103 784312764 131746505 875059717 159019201 40784128 3846580 549284627 584931491 895996937 936603359 1000929299 688822107 340887851 100855783 514129984 764721039 52865284 822876118 832943641 951556794 593021383 183467864 373035234 657823694 732093055 550228217 940208572 31956841 674166321 333617629 335380690 825535438 515508577 145273481 860101087 70592177 266886032 56271320 255504145 750444559 758004905 199186785 333610933 931716942 988472910 847661848 480097926 804949755 206024271 398605282 171136294 392874134 518411913 818040045 794199495 939061878 785146342 378008861 835212629 413022596 709968974 648189779 598547004 148220687 960358043 227646209 820589236 218207329 513467235 369216974 529430624 593931731 366668915 911166411 85939413 654740263 152955690 952663496 822861412 463997977 586478022 22644608 769226108 304515440 701298938 83483102 929307735 156381657 155789248 844723637 236198450 904093280 673944435 951892364 985786632 859244068 383653886 662369683 313394834 290781333 71718597 442522610 822336872 177131007 633651684 586891969 309763211 113717668 969315755 309623843 661027738 261434883 461934744 211322225 912502721 790356550 679879884 522944632 83506264 436488018 928147318 794516040 299575618 565205979 323203445 550557205 457744488 587645461 709831699 238905461 560382847 671082383 662291909 895624416 516012685 347601811 906164698 564593798 219738861 823742235 494845942 550906645 805232759 841618263 847141196 820776028 903236699 341501196 321892859 783684581 933493654 293736823 709238505 616260527 360916252 114940461 265404680 806327608 499953486 597146561 586873949 893417011 821263686 866814760 803144799 285993765 874648879 12251040 276117939 461046601 169872810 938762373 223152423 740397455 801820430 596756301 101256284 306323577 819674562 839354850 997208862 659811816 688599181 834244526 872771262 35338748 218372630 833630964 936038336 784159965 78291297 803644120 122781952 564110289 930218463 702974497 69152334 910237328 860986525 590322908 275181427 87333481 440611950 595026937 562765859 902739165 804624383 988788806 914101490 564657005 358311619 552956255 69425696 260008804 840021883 772613575 557846884 701810721 820501278 4257082 802640709 438930405 910683944 72705142 102213688 1000462664 518387518 234950725 202919456 461611423 644621548 32963088 995291009 604763991 506574959 7607825 821267622 33642984 272481406 355246907 952138941 886661037 445302612 32067659 435668754 546925608 158309069 257762002 704141555 859637138 789611710 596586806 592576922 50720146 51564896 993286558 859478229 721309522 66467516 597597989 191569930 472600238 292979966 775592334 393691981 821973604 913161699 804898348 384571217 912420791 164433597 544387429 462310969 669184480 824693134 28955937 716342828 885004276 430335088 192543718 662673288 865269273 955171176 973047887 777668147 778852429 152532801 951108797 186797481 663607617 171295554 933749573 651730737 226748935 510660052 409286135 598076992 926209025 143388534 533821021 793695158 73682539 151490399 627944348 137565979 341123357 970823624 64891083 504995270 653083979 67278603 872603064 589948142 852553041 154324491 152699262 872473783 798312861 156561252 546205724 59979665 392278781 638167647 454966521 284968850 138053625 419065496 822150885 550198037 388043856 598710265 771034448 9252368 952993573 401976878 392731373 282393231 732065010 965020758 421023510 117392385 881396702 303561163 741913098 179118535 858964412 959287394 103163718 704842071 920101198 158765771 978612979 174993792 561940404 556772404 971284313 812411854 77961100 474269533 931436068 588497983 311200493 739155359 466691534 149837709 160386966 998775247 490607010 577589522 57174056 686567790 138749406 749256323 884799329 375857243 373603957 196115772 920974704 406548351 711796146 258956196 648794887 776277306 283873223 863840925 710386120 382798874 595749842 374453664 482809930 224378442 725969249 526439997 387649670 215159511 322191273 898854573 105613855 316072787 782091900 988185480 401441290 276416768 382715195 806527430 390680353 999960465 247930300 977838162 102369366 901730668 603280018 449935868 281447595 286347809 616312950 646974205 342775033 371473486 791669493 189817235 171446776 923746957 79443989 282233595 694957254 687427336 333117682 184563557 974540646 768749214 904511381 830522789 415653973 136193989 402104960 324797120 872787607 936639867 229332386 16958681 626075510 980549103 349357586 882996750 240945112 417629263 724963076 669929473 681636297 472485119 209491062 181978064 177327945 13244322 925364843 82492418 290932078 511307884 499832478 270261795 415504655 547172848 53882970 590575865 893659466 307048173 829530990 31565607 469262755 496696561 619558445 119658526 852712340 285201290 765151642 892889533 158708037 2179489 723600046 16249746 845182692 878959987 919348745 441471589 551799440 67509902 945736547 858381959 284979531 133361030 837386011 781854455 761607515 973494491 430425472 888967216 228110934 335253574 73351457 562373897 214670099 119450484 277062253 684533400 291979686 938136623 177103015 763623558 261376326 387157838 144661482 274133725 693457575 182282666 47391303 559114784 209866561 391915751 776637380 863352520 668310639 256216653 367267566 793119090 700714572 774120475 765159518 107768332 861603137 472808775 965582030 5781759 493051255 230059643 824131706 682054644 940399586 35067926 689864851 319984942 622101610 984047694 351896906 698012756 878036523 173658694 345230629 63461344 684661000 270914410 254585023 468407808 45930937 74095519 934857603 969899482 257754719 446349996 929938117 289655602 278427835 792683778 254483788 299549678 846859061 646377730 890074841 487882957 912274697 666564317 84510121 384516921 536345751 444485825 125630206 881087861 376260207 907012263 13317134 190543983 952160629 803350779 814958130 807653417 489020323 304385630 590464274 35329245 864668299 247963960 597773802 408405744 325547448 368789363 704125234 606702375 97574210 831662020 696081976 227411355 796864358 576702914 567008031 601337042 951382042 752140023 117937131 279160533 357997153 966989708 14923534 807816328 267975659 298595557 235853449 230863200 405505101 376238589 243360229 451269122 467954788 380367494 320928639 497481596 937178377 566502477 820529689 550013039 785984350 129556595 810119059 265326130 949782266 995863656 579304583 573883278 377378487 865990810 802181873 145154676 257955089 334703993 866711051 658718450 786598586 607468492 915341299 173114124 724942771 435878122 381483157 128827797 496075405 678350672 312209482 90048826 289075074 402317959 761843414 773442752 653305375 940023831 545835258 659799330 135737172 916835172 156978231 484090094 296848944 819978852 848125987 846317832 865370340 82612503 148527092 534119216 82250965 773790463 738678975 744942818 453958638 713972279 334349947 336320112 781669144 502852255 317724016 73988733 477956038 450698010 564958357 328856347 127456708 165444663 682843553 965072729 409093566 350375982 638542450 721041692 219663982 95358422 676988423 562828738 87078375 552285964 693436466 530050540 684693964 524610277 93637637 25452014 871194426 418785562 239566596 797171920 380872925 104285695 767940291 976769105 558210123 824336505 790203496 212171008 381017157 223887944 676205790 871045233 730654382 108834533 209889445 326854667 183591279 926860597 166660202 293977583 776497898 430669681 280290563 480927526 402512267 846875602 919803759 979445295 64286470 62337330 356060463 767821697 570282440 945628656 968790587 709882424 923803336 833311168 178382038 552613304 385726963 58864181 131316510 993990667 300048857 921171873 244219015 659124528 84639857 409823045 521284861 848276716 831498337 400843971 358386703 986812199 378717154 117628647 777602938 743439353 717984014 659057975 496758140 759228489 240350834 770893792 892139427 387929420 553236929 314594679 394468909 53409818 289760802 644037836 885863991 487762966 853310269 846949914 178975103 210816683 525110130 36392914 831996083 353209025 77971617 874795023 31106619 762225204 297902097 94505935 146524022 705742943 388156237 840570992 10849142 15004291 66771303 833223253 199885321 831156498 705884640 926522751 890922390 457610455 985228531 99622331 301332965 617221282 979838004 996940669 935785815 124601622 531621654 582423209 580933822 928396932 166013401 998935106 713438621 111990701 609517258 306673682 110448479 306720029 471575747 370233521 983060773 220874385 319003815 800653291 431089083 722510217 789914925 267566750 115247507 519960225 643580767 810376585 85786951 624066481 413140991 364339172 148193654 713710956 678882714 63645262 775034921 902993852 194424563 978073703 709513161 731505582 422875517 417751816 110446025 649602377 606594591 575639808 436994164 838677983 537311475 668190428 917249212 123456794 769358620 252008751 933374711 355301782 946990946 446938496 363857517 307499622 541224725 382210366 513736119 22053753 180247114 379988740 463023605 321097100 656065784 559916324 926021438 145887968 656961650 433574700 270743792 33400762 804248126 202023633 395246907 929384831 111863632 77190875 13760227 934320906 608488243 506883859 552630176 414753828 659551859 437791710 888682070 942938347 412886142 354309096 795921524 360788245 590933087 343003276 737859086 554762356 446426217 449915317 281643495 396272373 697981179 360402746 556395037 530014432 817332131 665272873 879986743 788476743 116320446 461526290 794935857 469864374 868844849 23477305 608248497 237425831 513433896 304326503 389573645 735944207 809997627 719853603 339178808 346456509 840119398 374915646 34528338 60317171 321926185 199284344 968803900 508961149 35852951 216960506 997854045 880846496 346657612 160225931 110295731 704767033 377240840 687760975 442135908 277126646 756633503 387206913 27590195 33479774 847986656 485540659 349605975 593647014 67166369 942797172 673856468 146392517 333064871 402937515 317211256 285592300 128508618 946811713 727170639 913463832 786311111 331737540 789535100 807499467 924464653 498083709 929362667 317087327 802323493 705654963 112208603 221224481 813936020 921233138 64126246 722530651 977153541 124024330 222788076 311358531 389563125 108570763 219534501 403871676 402729446 550083340 826744771 138105027 250752600 984414280 542355369 886272673 399871142 868632665 542761283 384570981 391536192 370290851 705041525 603795950 913470654 752002447 605145711 318909030 25828070 639161736 42807669 998824056 198150161 911077751 764526260 816640478 801657543 856290820 705907976 92062497 634136004 148395114 873093708 283327992 126008417 866030507 54677158 84310291 760070092 950200964 827743376 805397836 794000258 915603739 778021660 82921442 624399651 86606569 502585413 8631511 669150497 833204360 840060393 208214375 540273777 677963377 968492112 753144559 343888952 767206937 286173410 911903681 855637163 436476476 104137171 31286186 589420202 648503412 346543668 152469856 193271057 679682660 181389664 88264707 6233345 646515767 262069483 167907705 201939485 434542982 710371423 443781893 882589177 715673288 741136712 669925243 854984390 691286716 238697046 996141832 746803705 388372128 594485716 339321326 119611684 120419489 790903380 582311783 916981161 497530995 929821589 883252033 131894861 79025380 840379092 185287670 664435691 478032492 575768025 626562704 376987185 562887667 975236413 918860856 703520329 81565147 818434912 696590905 798244432 92242960 730678938 29633021 552308956 734392087 448732540 45080664 324309400 834923840 482444126 307961272 165036525 995069284 654978746 360542164 956771746 984444899 815273232 308262495 17186985 572765151 300232890 160467862 865700995 995770397 821945718 980356937 617225850 400112664 268258940 477319492 247914816 983073181 532548406 416564420 408263112 89918690 503855807 27475208 476219506 105837796 573172250 60850540 145183248 926330752 420492504 749106376 884811007 139496387 559861662 428504754 969138346 587106729 509348712 101464974 803047065 18233525 562195905 245153786 451929579 534096853 712997241 716956757 944761668 800143627 667297518 825866691 699546524 407125049 155284413 81320244 611787370 551698701 970361684 343065475 718874780 92626804 364149215 670419159 24115589 273901882 237654929 11454347 52455994 644196719 922160315 319614777 568394223 985285052 701015868 939837752 837656837 205022701 428014206 957496016 426545492 75057458 676043339 689487418 825097888 641619429 86617198 855735971 629388340 419923555 186342167 348986653 749859998 141786765 680658123 899845865 756480221 793253030 33374138 711159780 5600734 478679628 555423524 685544665 893139551 624107354 984516295 743910616 402672738 861044130 645663596 872122199 487877796 910655104 165330261 505389090 642290383 681129349 322948518 524717521 316028384 205924852 562684103 594270385 698109664 764380087 566221991 172820428 128506625 702344255 305488002 732597331 597788424 268880116 212208863 375675152 685984135 912490637 46261074 52032822 229207715 445725373 764153376 477836104 200037240 631520342 636068761 732881994 424297248 210568553 585209069 809378172 264679883 413229830 90003174 514779878 452178754 366749195 342317955 262514881 181450032 238254920 226817558 255956956 265236196 662010193 657191464 918142095 971426567 389081596 375408670 966096573 397005815 361948014 724668667 812812034 253538974 312753754 24703764 439469271 241371091 176362489 499642962 864657099 636008322 618063722 315219744 729743369 454202310 60034461 283797397 475778880 680748529 535822926 480750478 363238231 581467493 172863250 260874266 409173505 645432466 727835142 960788861 123598551 81675017 271436230 452217516 863655578 472810600 633621505 865901826 67327654 845162451 607785204 702504352 726990730 40560706 999418008 71104633 428428041 343854093 558929621 399349229 979026630 742125505 557072967 91429341 864057614 964272313 441310304 387615816 545711888 1092606 13013491 117263649 340072943 785803052 337465628 964714228 580674522 997003623 789471167 232584478 758087266 58120339 777378112 680045552 117497317 513242653 414502149 832873370 231662673 883269439 547375149 384502263 156384686 331146894 529397319 951111277 62365030 610676296 242817714 53732845 147957695 150641827 335368202 803203797 816952196 66595888 128067783 813337397 143103677 622136301 329913622 652729133 637009059 128137759 849695585 655177022 803567687 433702348 523565816 516011702 486080883 438736859 947147428 795093757 656000899 974464397 903527517 423948550 638876485 257546179 280565070 142626636 40435582 544901906 943418864 731087013 865935471 803394259 103799363 79512576 53979547 687056386 515529259 283525187 118409208 841822089 959616787 475615426 573547398 202281840 434324541 249759663 511513493 643781660 676408222 877241148 220354614 647183995 463524547 908514077 86868512 175559064 506301659 926544871 371303507 628285223 267239262 542188062 249462921 670233806 438463218 3521855 149871130 960597905 943315894 675933066 814603347 30728417 959034835 389076027 853092282 77025758 238628693 322161715 771455530 550305815 985027925 350039511 276066376 110410828 331609183 617336264 522446116 873541224 994574003 924752587 284923587 56625725 521872723 945137295 236010043 28244357 45546121 675835601 527846985 410168349 212555665 325186032 514120296 117850014 173417446 603075903 345453688 402469590 700642956 434093027 845759616 994543404 732851033 101954794 899505132 856241604 390690994 696931420 320580072 342098027 127782899 310319431 581563274 405253406 833783284 962888472 889907930 373915802 882188727 791556093 742784570 377533232 181124858 39128244 410277527 403559531 774867474 113486455 756226170 185147022 161049462 569855657 464773047 343046038 286811187 824749162 679424918 797757351 472925632 778664672 240224033 647110807 754107463 627455899 311271481 63803832 329267827 175099641 649200523 598722387 897883169 332437443 110716813 898643889 201647960 623003735 687448690 13379758 809010449 964079319 617581258 927520256 717118263 624332546 112910741 793876643 500001950 35558481 222388987 192652727 917667150 757330170 554189468 199982123 763148993 241275482 627912125 572820462 346583681 936604848 15819401 466982891 577077475 319054071 131543255 418724699 134641254 70376633 779523781 867589281 903670232 642988286 435022305 323150111 189799756 425070678 327489051 609760091 768348757 660082567 689181218 472687204 761161873 778379058 638108520 875483175 784405598 434925912 590123885 314058789 814360102 873102858 847729997 124520704 843025550 462483413 470769898 743374790 42936662 146259404 2938307 848416151 845117779 84712769 959334851 412420474 606709807 645668060 598117575 264951341 604487524 791217943 349190102 222069333 924094586 509788054 94131336 24386368 786129256 802943114 932128158 268930433 5210452 918741403 833951516 918768902 112527849 465724016 162340788 959001290 100026289 79557227 670785576 609825581 881741782 811355629 351611561 219842269 111647257 236720575 782022893 242840726 130384100 487613031 453027191 176642467 759027883 740302549 281762729 104257299 72327756 680993414 287963147 641068697 91571227 402452241 874326989 420417309 902659477 30206218 336579528 905387943 816281547 668877649 992350986 662881128 991493851 799819091 453973830 588828335 606669130 743844488 825710302 626297218 622660207 252906907 17215163 858522868 554183031 867260098 964748552 614698641 600706694 83004268 957289012 308398836 793305664 556770267 677326875 52346072 201188889 315227500 661458509 401105479 660547203 136380605 601873441 964339969 397544994 819054533 20888092 935623020 152712066 935377884 239507902 494092230 750828450 153417536 234011311 670941954 855320548 495302838 450301369 289635056 706332054 746933026 864723333 276860617 389869757 464026130 350017380 62729621 584314088 82659776 789642742 708289805 491465913 334335745 861487667 939077602 747596118 604200576 846769299 140898664 610994672 846009123 283331243 83698241 515736042 182729839 162809176 60087649 123083473 145809621 606179401 812768117 535608125 894220199 588970096 830005250 270910431 749667580 388804889 899409053 270450499 651561760 730475207 194555076 612248396 618949873 323296501 348635155 145169731 409972893 102257295 679476037 686531803 343356807 951421994 183518994 724195464 606022779 62243772 82791762 842989018 879143593 443822627 315436331 347501007 765393599 953301389 142240042 683847663 352345221 270809075 263143207 831883773 536094524 990508954 411794851 506580871 512007078 245793816 379642322 398905342 473208382 70634943 261378785 451534797 273440935 453965798 140900848 618555473 106239835 410455794 714571248 417378628 391968698 844875454 642149922 516918618 222933851 110714849 755277297 298996814 260777418 459503011 976492108 41013113 344730823 153949863 153346345 179095886 525341071 861147625 93770328 967449987 639258324 277724305 82353384 870835136 498822523 194254450 970298162 69111373 898338903 418055121 320030772 125332555 196438606 102882373 113730935 493913407 503255430 831606383 383226004 298245969 429436434 707421123 495418437 771019874 927710953 991508385 223758485 711784199 273337057 657435969 258431977 404647309 880741467 262588422 827790872 901898291 849680971 331642736 253387594 176259267 941094808 139234583 563518744 542745301 287738408 912422956 63093973 111175281 150999402 191841586 14394298 370281886 882527315 575589200 770267827 727359212 972632647 445874705 962385669 198609565 232458174 585695539 568220488 477449150 237750060 982939422 346700932 364374728 398100226 472843884 42085282 492901538 527233593 890922186 570683213 788778281 381394506 218228705 763168722 322719017 168533574 53682614 328928503 160415488 921769140 117287069 933663262 284491771 571614481 935129927 607931058 907399810 38298185 484627750 557249910 985591882 49914300 755469200 499209325 439877682 801134847 519463958 417857271 761053208 111435023 167125907 440910902 343657175 809774333 947724950 731042152 291589887 247214447 7841938 547130157 489645321 351941333 335459760 209766952 424210282 272950229 442713433 875748731 540807314 457674868 884606558 822510975 976684754 136317667 909873743 410863744 324049295 446177930 184591662 899041018 947766739 699324158 241634463 153546706 912938598 409651783 309436976 586911028 566440292 878347340 408148155 430966720 188229176 571346718 364413018 340638348 807127601 211117079 130885846 610703010 105907751 943117034 89209940 11442879 969053405 492987034 878238563 429453169 351437756 441638260 312302230 670495452 240439111 252610730 874714282 529603486 221793816 948741294 289521403 717870530 572859582 464546658 672479701 273235880 364309295 496375655 587838338 53288014 503891190 919603334 192042699 676184408 163108310 212698331 274264762 715352720 879125592 318560808 831512229 248395289 555956618 550145360 60417496 973956217 712610959 445809256 739581049 450204407 102598576 260312983 307670169 637623195 926846795 604624043 981951611 754695734 368033946 5517056 288571292 314261343 736973922 802186995 878158641 243331026 882378173 511007212 40263878 674592209 147102450 748076321 39221340 838357137 751218841 825837779 843566465 135832138 541312547 931099883 867736818 496005720 674789792 612904661 562029309 219818467 151021581 616804314 969260286 35683945 587539132 134178931 170073053 171091384 9116666 393898470 109880495 328398371 762518114 617008990 534421421 955666348 685384380 970289899 64575178 115563924 905459382 692995460 596405541 587881220 283995751 133259887 593915755 534220443 892103968 751863436 715305320 778216280 371151901 503306361 450998325 863717480 726140003 835601504 374412638 800840703 737544188 10022447 397680287 784654303 56655920 810903877 393824409 748075355 762051422 359495071 485189146 813009693 56227561 487634504 586177409 79782741 853729340 647836641 894864423 658423549 540504037 719468864 270210027 179503345 191885537 545835668 353340921 393332734 646548324 192920589 892631826 976879853 231420874 134558318 935706198 298322930 168655488 134809738 824487387 972798641 679597830 78380334 270127281 256186363 951998473 323710311 210202696 189089004 23486208 794705784 610212341 370229351 909184418 670306658 790916619 351952296 909382571 767013171 636368919 225084947 780101041 362879662 865105988 1000542854 80521881 725978670 766080820 107469858 398397032 85287623 332462872 697403404 777768882 684818991 606464678 827698787 138661413 270058843 114175096 722509047 679712368 455687477 694203219 93535405 575115156 217035464 560851591 385311595 228917105 342916216 381181709 761410614 459285845 973664719 464238341 383429438 948518407 814492632 794895225 799972664 384205845 250898276 781744612 781294913 515133058 758828675 821243812 293087303 974500329 36239656 639890255 754142285 122992303 67445981 100184668 919067279 495461233 647341152 985785999 210651325 548835954 994640507 4881490 298497891 617472580 910616963 398913255 2644815 244678348 135486479 485389637 490941930 850392583 864346342 160654203 570666616 555678943 449626133 724020877 79428661 18206498 484237274 678676478 437215394 961088179 864754552 438659194 277152993 26330817 845516273 948283185 107930753 550521447 254310041 18139155 270640525 795047192 174232452 691056700 73885627 796306966 221497950 976041569 158857944 144669946 229842326 221352556 272335797 902664240 334585472 540897444 35445765 820171853 576764489 997963168 415991387 409576837 279167291 590038813 202503342 851429352 996892687 142914824 379944389 575924274 833917544 17769705 342779025 814267973 578820127 422524928 410805780 571078067 194652823 694241686 47072564 424213958 461623735 706491309 167260959 267749498 524593029 992975580 871549585 997817822 845922236 817868296 402526862 295789755 783644287 392152303 32550577 178877924 472008043 675305137 249712977 785575927 416717552 549672194 126369890 193417987 180897244 166622269 393691606 664734834 755764111 337545977 404397435 648002997 752203356 259556811 927005761 145947585 314665362 690693641 128522720 231706556 192998947 673181109 782404990 462697716 824365415 357216260 310159071 856064375 681381073 852672937 77115512 776702793 313156598 402349113 89405539 283708880 713015446 190369348 807887882 736101835 224710692 600032349 620199170 908167819 143567124 169500834 619225830 296902377 164284717 139873601 656471653 666414521 615975230 243153996 998953559 368119371 920966132 37594195 113360470 780682174 215042767 320242444 416212142 584961934 461592653 651217228 80089488 892786931 692576126 850297077 141278480 139277644 410250757 445753908 33670027 187765678 874059895 24757411 205389068 357593590 977798102 337816170 510848496 646386100 761673901 103689701 437042600 733077896 993895109 12065754 427440149 285100939 153848535 959314522 327071600 432843126 99029936 480851596 506904987 684920413 531968440 558845452 414505589 140713583 3574645 306831124 725275129 803667891 357362784 30676565 456477585 42727833 867469309 985302149 386607107 809474098 120878128 117754824 884838889 749845661 326524961 543858412 607597757 977710620 629819990 162259714 338033053 2219410 916112942 555553774 176000776 18867341 285784762 811145371 349926068 985490213 16497801 142377584 794872721 619297411 347230455 457840364 135498979 280315333 383174986 14536211 225793022 197002131 857258176 429308718 540317944 70655061 784169043 296248513 653538570 112112425 639488361 793683796 933956760 290523998 657510582 124686367 222944319 576705951 840121609 30393332 592610492 119422293 852228085 164717252 784519898 571892955 112127698 587459909 894636878 199873433 582630120 636059616 677793795 859069821 588701850 537124945 651110643 356085244 853990899 230592078 987588222 424392552 536048417 493195023 863295992 322117730 887459506 606879265 387894288 625901377 372065040 348237641 707271246 544575542 580398696 577235166 247255298 383637047 194017450 757957154 264513289 875659262 186817526 649867865 43139892 458760019 400950235 545053875 538230227 227424074 974075914 591349037 295539809 478479147 70512275 356795796 60016651 309956319 16573835 407863253 480578877 367720879 835384145 345990252 530184197 699830369 894536321 436198 892304912 729257547 653714816 907220693 46576383 776013194 943256555 225071194 181918353 494648950 747562127 439774897 963296876 319451922 228113751 890964944 740594846 356331119 659803257 57474379 963679656 555154792 402508288 999393837 187923847 552710790 219040753 314116222 772284743 68421402 468165184 21862899 647136327 759387179 228986532 151025259 644104072 964071774 440078375 49732705 302211843 22738847 276680792 466039286 349485549 290771639 808668658 632109116 408063031 286561048 93786024 576531013 154716971 640506810 63936265 796679435 239479721 508705877 545921514 721973236 665989845 884519248 392316358 986087945 160516819 228213903 153494198 744303218 933594974 16666716 881111012 737112573 775240779 799452709 912196696 507388848 698559192 136554859 493840819 711521135 2142693 921606292 419260750 607387277 27285848 269089507 314265469 795271784 459260213 264731457 480576348 717666064 442133986 686404071 778859384 635077930 506279743 561424830 99709242 647098185 500847409 920145370 14350676 740452114 93515342 718037419 807274628 132735925 833075176 91527770 390361478 49412955 467657241 21233408 763919264 417944782 247867843 390197808 548416727 623879163 730009504 53569126 129634465 226792195 912714468 494085787 481399183 883102324 278978443 115548341 337016737 199888585 230651917 834377267 908798148 964483620 176878152 734049616 490485831 94730476 695452825 63456657 93265641 198290425 731461703 937659894 596882921 452167987 326065881 159709951 63711188 929163539 566534797 186006925 194746550 558162691 132296672 552508830 13271736 725697054 535552693 585213696 514049392 543160258 328170223 42404702 935462808 555760766 581921764 228172464 530835625 148716692 593201487 197415975 115525554 318022501 154477531 998108787 321604567 555538894 400546828 549426050 874962942 209100780 71258821 457278686 848579088 474863472 968287277 120300244 247897618 674062342 627290101 55956836 863208766 204814541 358601851 243928497 54852073 948741005 651343622 372026521 61972656 269268658 834894197 213720690 697750810 224184264 847985285 569279788 43767090 669869830 974533894 129787240 838659663 160826737 435433288 138588864 193256583 515863584 890613244 315881796 406613944 924947845 939849283 331870834 291867559 656252659 77192841 30772118 351956676 801595238 871103638 603330407 521016114 469686977 86657994 564995361 642404203 724596816 829279444 228548929 646602039 715378624 639557391 19105520 681051785 87354449 887503656 406379397 792563459 569928596 830529131 96508741 735963843 208286847 493638439 484828460 753412816 811036196 136913116 518046672 505196605 792540736 317164320 700381587 592924485 75877216 894705379 452301853 526033246 698661149 462840975 409010425 778521440 460437844 744402165 469058057 367813570 536404046 67146787 379842 894958563 47767113 804375466 225768062 538283354 413558634 359300193 615978648 117126595 825206197 916967141 851225318 795364927 799857438 909502731 348268862 276791132 894296432 831314139 96842846 685011354 202107112 672961934 869178958 460045581 705436151 531320026 943191181 78576916 837048347 58781330 945744458 902331467 214554240 917349131 85432826 170870231 843183504 890038834 105970231 617800457 769474313 915642795 6919707 17391318 912075791 745881692 485288899 411201507 150111056 154685194 923760083 847922323 335032718 584541649 845602769 632842032 6766206 188450801 604878575 801020001 171252887 418021004 593939269 286156783 301303218 827416121 86129702 951469129 541188955 549442440 949607435 556003123 71957190 942915703 318155200 765391373 478902205 572673226 190172922 221903457 179538354 23526786 427373274 346332752 902851800 636505696 141203066 546435024 23448053 569463962 147076208 458041566 92554576 508467285 773825230 468539581 618894566 530043149 254289789 625677604 862213163 77183316 432441851 676044505 35157446 611741232 210393854 612770113 42401246 924678048 354563326 966556150 657027007 367128684 925353886 47739853 302431699 844609892 145953405 537688877 145837168 308597590 621108710 566406628 15690188 637572108 218509310 77558211 379433456 297280170 358970736 60201463 596332421 54393970 240889193 711392159 678909862 779247544 753274461 995320520 81058044 866392181 755869513 854614736 46351023 859629696 109389477 230861093 545101544 80719184 614051715 224548387 488522508 916432052 677757525 597006542 90765318 964997110 319555091 207786085 215144487 881874731 585037514 373214885 804861138 171020605 637599729 487038636 826718630 242640657 129612360 323366322 374734377 908013720 475265398 226967595 556889647 797362277 576324983 997337433 449026794 177869771 921066704 722987007 278724127 519079958 697076840 708786537 508744109 260099640 207271901 616518872 372321871 456496646 633525790 388553536 254421085 750710719 532425708 901500532 971076507 43649439 59842651 434447403 817050597 378791268 391272739 527990916 974562444 233123381 607928868 245534776 206307016 490420746 646418268 774671774 446452780 984283071 585737237 358511491 59703077 621042363 238983015 636484705 375028310 321249186 334639521 431063941 804501875 761575222 118186905 855040777 814187223 902462714 310749827 538710075 234732467 847516901 299699643 442964532 895445372 696200637 554556064 61097331 89463227 710694517 926312015 287743369 455382206 518841546 106918066 512969678 595512779 391722749 616866070 438978350 604618022 567519956 219631036 221538207 177089030 589049393 136234656 546754280 471280199 346008170 8669383 9136043 9150525 131497312 467732381 548664457 476100876 334607495 251710635 676935618 126007163 543247083 735951913 608106848 72752826 861255493 146680723 911666138 294866070 723287143 737170049 867676775 923194739 536639836 775939044 165583023 930000574 726639890 941399542 52565466 96422629 8244779 533136648 292313376 901193337 236467128 260176655 431407498 285662940 306494370 166372083 883147759 49782053 140313073 317271154 367600197 326007157 353840779 30696572 159232579 621704387 764738519 581963050 50280381 519959570 958685054 229902748 789770625 979779246 208906848 257080337 85789994 729291043 268432681 820179460 685831553 584596733 780961890 890088356 203223365 422897150 999512834 669934384 513333319 731494116 63485772 543541572 499028445 15775615 212445854 200050540 661029860 173880647 793414857 767736205 230165386 313728476 465312251 280361265 933815104 96269508 833636468 564705434 710421957 244692196 395833705 156699886 719639298 568794756 583235690 300387141 7825265 313730782 712582501 35909839 852100678 786026808 534147075 807851649 473735893 337312380 809346782 317345854 321573474 604744332 156569042 122695787 914572223 788751167 640463446 164745937 288935735 853603860 156373750 751831100 155702000 814244907 157176126 398316431 253766313 146581250 528512615 413972840 536817158 325019015 282044094 980475348 267195448 603193338 39966157 74261664 857468697 309560687 11018966 416175477 837598040 952628395 376229437 45251810 505084246 917401557 368437722 583049212 563803872 368801708 379878643 565168398 490415668 806213747 277875410 58427445 694437730 815217780 38270357 428763591 613126135 84705229 340772016 619674138 192364220 934935192 452289232 492928294 390890588 115713768 485419561 342474869 7903246 658863816 78047983 631593450 355923334 900998893 116056973 123625406 691825475 773417255 343170068 184376447 558359987 399995220 270407021 693389983 5044583 786761363 9924018 807236385 255706882 790323563 848748175 801612618 509874830 897713944 497275004 430709374 733865985 47957943 73176408 905382683 952624618 795764453 725270918 476437025 707948741 745720742 301382460 469532216 511685125 173214191 911633373 725924592 972795844 373869489 277219220 336011128 932389968 201342469 935796354 821484339 923932321 849615831 902870431 650466548 250249391 611042870 666553907 786448347 280044204 203063006 310063774 537486863 888088678 32472209 302024359 796935794 236012200 170468257 713789909 16180166 782239384 56411723 208198691 77626369 628340376 529011879 76259276 828555864 715004313 801510993 935112369 291495639 171115073 797714419 67842900 756755809 397066752 221834864 513962703 938700649 866041925 332145837 40366819 972750937 61027252 600296860 104873159 422884398 185070283 994912134 418074809 374090921 420334784 620750219 250051452 63059934 491614799 913464952 411105043 358963449 139342138 744510015 872272127 439751386 414359315 733365272 471276805 531831045 305701599 717100007 247015770 774171410 373798932 35027942 945347247 877102690 213575946 839552202 371017345 564625143 42115769 477411014 552751000 228609504 950603793 794399695 338187989 359759039 118748293 993607666 714763402 352774753 550272352 753246792 337955392 154330420 627453017 907298362 395805376 987694834 634945900 793744770 165298613 456381646 150071423 328203474 729371032 217157051 591207561 430031410 626201506 694505871 32193495 682600294 984776612 883244093 645763533 936241666 996664781 900680494 614312002 682537805 835168233 889256021 983719804 754145861 171403456 782921136 78758160 615219834 243774688 334620988 524116790 70941821 674612638 345548 672792808 831191382 838535869 539977864 785103888 47697037 351868388 686810753 672059132 97156196 40341384 657025686 267942928 833299687 322514014 550130626 330989838 128608873 560986916 917378713 766230581 12453673 588596269 39632218 411907802 892129798 60849633 95635918 420690567 73529558 144911209 196999210 784210688 931575758 686344551 469979996 124400866 730516266 798519776 277111335 90707740 192644863 69273661 839659156 710195505 544910067 280024950 94345950 818199284 930172375 165932329 373175451 732043519 606860744 979573933 309791073 96103307 645382400 845681601 952357380 937350415 781737941 964577868 807380576 953456349 7005785 628525120 394448861 221562740 148892063 961867749 298455842 770238001 279683166 23172502 547481080 696877328 930529940 157211654 219289094 894818409 984473496 578570830 688582321 243301762 298362783 60951325 333769417 655629577 42971603 270424487 763434751 131090646 899304075 139535798 979501753 196005981 17040035 493641853 105622259 909275968 631166216 780476253 752181 960233881 752994395 95978754 816393033 310742863 86614175 501044179 382608146 128604699 646992409 399413459 817961038 59095506 56577025 861920622 604020006 313853968 430615327 14143759 307277207 844192165 365188142 784726569 942814337 654299494 692729994 35683640 672379473 674611505 610076256 83880571 745907514 145162542 457629987 103263062 599886739 397608916 802874639 644714369 953132037 750233465 121409416 803638798 404331876 17771389 604875910 796379441 258143323 459177211 818761458 237350925 754451023 855953836 829883907 764440038 896469319 718638382 670231978 525097514 556359347 369486084 514591164 660531916 380096044 666551302 517383334 5542504 769074496 42920873 790618506 946559594 349140042 883512658 272222230 989002091 671653491 722973939 620281343 131190596 680302500 564030717 635099242 935552946 723317484 813311217 340803749 548642017 55761984 166907044 376501673 922340544 693666747 861222091 640449125 313390753 749922121 672625702 468290903 784881760 740660893 458834583 961325136 649782040 839162583 411101379 338136581 399908119 25001525 593572868 136274944 359699767 46539895 354905069 957436456 360731648 76072420 886251078 118596827 266617368 141901576 442675805 841634572 134468218 683386030 101993525 775943134 974929801 334033483 571861855 363327818 718383248 954076055 637211825 492984382 884114548 485688104 707055963 610466951 689249687 29713891 518292880 784866424 125871857 241690400 614856532 186804674 167976986 314602420 509135630 562711739 915598377 724414372 409515674 113795440 562697261 33097209 451498232 68094329 936544269 918949811 316277122 610044271 396519971 611014388 389221013 316706729 283320222 920925409 162125045 293885639 714994446 785696208 102597917 953094001 856463915 49028262 990666632 692705901 785535676 926454603 128735926 695622320 711539640 128064715 488594974 274019254 420355306 659914351 786428646 694946430 236962193 346105201 797238468 751852777 210061051 409570874 307586731 303371902 118887449 618591282 411988069 602347325 245740029 914959957 619485110 385386582 50810959 96890913 1116214 41588773 332986308 236664242 211367935 312016384 150313375 8346446 931075288 325432737 60316130 516486884 947551483 729339488 387830802 24123876 495748765 156762234 42670783 131878498 994792441 41499209 350115879 860388109 592869487 630905336 610644588 330209815 362647479 779021337 800837749 910328871 841847986 135739097 309121598 62277923 705471811 59602690 974352841 996527079 758544012 836816944 894070113 265549958 238610456 94135708 398830019 876551769 419573748 325824266 885561973 711884933 748274262 670106687 879201220 522371411 689740530 156739028 918694052 700941436 591877225 796283890 574744698 597228147 438598958 969636793 994843011 284624206 948146582 279451911 220799210 142980491 212835477 721006970 571269241 806102010 51032035 709598205 809701107 322405601 333504510 606805128 355771993 451407568 415385441 912864307 813512791 931977125 674165756 57940323 393259997 264210299 595169940 733120857 102773077 565993715 638822518 514686958 335347978 394050306 821989237 259615337 115897468 500132177 512763737 66309851 998932726 420186454 221003674 490969532 733698208 912294667 236270814 366095009 890786665 672825581 675654058 910918239 581892007 252766038 759907475 790656765 535247360 556643194 570946337 269601953 61717428 136277599 188513647 506285270 379734441 679483546 716483033 67429804 517388624 171446864 847038923 437657333 193289054 602209061 166573543 803800206 245102487 424855013 324906303 431356478 143878725 307538264 281099920 22033959 860304347 310176704 753693375 459173907 134315323 45315668 352618480 485963824 167795671 525380390 964726075 404294266 39012442 630920927 41068974 366531709 143395874 742300327 388816939 695596494 104969409 656151835 635006196 595324400 232675870 681521673 811139716 764125971 912424284 942620842 618273027 734012569 880809226 528470935 715767198 344314049 694611530 213643803 98330170 458070956 632269363 852730006 197824459 17359697 378917394 742155887 480359532 466978000 580621758 435998993 701364970 907192270 512014290 186273177 523051224 1000404498 221409061 994829359 835038215 642475218 286769559 324021229 527703610 392938168 675469860 141036235 109880794 471782713 370977566 525557237 36801966 839509641 602287303 597502953 785119071 138722061 309256041 484663076 173244292 974366125 91770289 417942339 359878195 164093843 453949077 468971031 588777389 137401043 387092276 508106205 521797849 411311834 668047046 768716379 137936444 540579392 448583637 214682174 490269968 519609956 176374863 245969194 175528519 929020090 632299897 401982103 266397557 287391846 654911575 311123454 896336773 233153599 478083160 500468218 438742299 887596379 432112092 779372992 935372750 574781006 890500537 857668479 45285223 282772124 303069246 328635822 101194016 319199145 161090235 575807298 18602884 122201361 440995959 346084834 685646349 165042320 704251842 356691764 452257842 30168865 833691881 890408174 645500817 334812765 725980103 935903963 685584900 866246943 115671981 377171509 542840141 63055893 446814062 681023246 43559742 357315161 461688177 241498757 26451256 31802853 822309352 816214184 183985510 227448897 493924885 359378641 499601556 349759169 383141388 909320397 448684541 556542084 601849364 954742386 627077404 317018194 339794559 86599157 297283812 127920150 340273582 233460258 679341624 671290447 862474009 649955913 507843924 509489282 465647729 283644172 922638060 573011781 749767529 800146433 193036869 169907753 541809504 668441404 59640470 234404507 242659996 555156394 693195228 655920845 635359280 614606054 197513396 621159112 931200269 151844099 913759842 35670971 278703213 904512934 158759962 254938934 656678197 301888112 617350066 587424953 816759779 574331789 311895442 695440641 333936003 272594291 542260515 221878338 601480974 21045715 145010005 537098931 766099429 886144550 902979822 562936168 668619857 757992614 275488606 284815497 671439695 251475188 43857532 775004799 909149607 675786428 826106411 286737668 163925949 653725345 121889157 619328651 614894893 644376624 270131012 915448913 765025834 209990568 825005905 73373650 10171240 513247851 872276060 904435771 654446363 461493153 525636303 448928494 929007969 800099243 525893742 323223677 599965988 817295248 71082964 718736580 488086218 528018403 285861159 812734735 829593235 746851584 985190174 429335848 317820270 8719613 537476543 359163511 139065120 588805783 551091249 523671387 994441655 384247949 837663483 638419553 982409307 113028803 419344685 590905745 784174053 354359746 57559338 496179812 127267073 446974387 717871922 676557891 927356634 311201809 656728637 539864966 774249340 648106801 375024173 453345628 893297893 580456433 558798543 802440281 307252689 514233130 290577250 123308678 574339491 838584439 796488083 885321099 925190337 699808314 368347430 858830764 265291629 183965055 639166550 397748557 189044805 172493901 97703337 752395417 905878519 82808295 492737809 641868784 427651302 792072467 219278553 911658476 754613921 77993668 119969254 511249009 389664660 39239731 599595271 990343488 732856826 257146956 630956800 180383092 589040957 341140570 975421186 548722977 733406992 313715360 160386010 610211141 290896591 102238228 61560468 392142312 342891355 871391291 260404901 187435825 386692606 257118406 63490209 607578389 414437839 153822303 983734694 349772730 502703012 590236516 884199323 293808123 252875419 810759621 478261301 224606067 7130523 82720693 164658973 55750149 875789492 858172528 460814073 340887429 705108463 492098357 407346933 128630519 949280759 609464967 323707448 461704460 587763263 645492752 438602299 958559093 645335388 329503632 399216182 467952390 954344477 568771754 241983794 694245955 251483637 377502815 775816131 860940921 583917106 907384747 325736383 873138603 630468336 307463660 561887466 266611022 93474112 862907135 267350 755142157 387833264 608308026 976816556 717282934 499224622 876002256 220654335 701991258 824994934 489558717 494449408 614617027 99383034 4048030 639814157 732934873 863597513 888558002 361916726 952368120 664792439 690390342 569822572 532770231 7370661 414847902 528621679 603157586 877202507 432869646 552666985 927083696 963608932 270344988 81237278 948920377 332350366 92968117 963588105 64411894 943395186 766537262 20428302 758207211 285563010 930852815 227159612 900833137 585491377 277993551 774622590 978768751 875191932 681318950 743968538 640237476 710515786 705770741 93932469 309412193 944231118 741284307 510069828 730093721 607202899 925132147 687163456 861684103 454333749 77835331 460947917 210187049 893700172 454993225 235580353 256791793 981185978 391487319 902504968 873933242 280948391 835279402 747246389 153070043 885268215 696760253 58612979 864130941 919832768 824992200 481864886 109880834 523609631 98285402 61499240 575876486 16773708 764332960 243801927 915557246 308445391 417370513 441003948 283977677 294665341 858131950 619186746 869549 995183269 653313235 159877660 152041900 754532242 111539466 299031391 549493275 168780897 652932375 55412528 840854304 875945769 696969129 566068055 453120628 238690503 281409401 654324748 266035835 735393915 87205995 317969827 329864533 719900855 929677109 279149193 631112185 966366164 227063714 637552749 263212092 976794208 462251759 246269139 303254173 355223810 290242922 653955328 458987890 839891393 925465039 635824528 381899568 690104089 652588272 995873969 714490593 380514003 530983253 278478181 772211815 885099147 781925438 852446114 814333030 98225519 804821516 776374577 822422482 410890133 421778209 169709301 847669444 285794912 587223354 389989443 902405717 768896014 676113734 530632591 47274370 844500947 558667937 224509086 84717890 776900184 280195263 319943341 232101202 481893784 199959524 419474941 580177310 275601624 841969011 206087021 472509402 44552727 552872712 757995203 667637911 614382203 899782843 838428096 90003661 332321395 101130296 956776064 344749085 675859527 519278585 23341526 952683036 740042476 367196409 978310912 967385903 815809204 697372036 419608203 671243687 983313426 191570894 950918937 803884170 11496945 627171340 498945861 79601830 144409036 849582552 792891039 316402515 743535206 593518956 782082790 45678756 921649473 734559682 928734158 110412468 629263767 180928788 611532552 848148505 849756244 492054026 990898744 257991731 695283085 907872775 333644823 920301555 496170358 356849743 554998866 147272619 177615832 819393426 44780808 630121793 994497201 270021032 730246766 686761212 605319280 130141258 250410799 835077423 16052075 71795692 391761097 530258319 832030285 883748012 292847410 741841505 435445094 553265445 933078870 665159329 501966580 135833110 481853374 527091667 399544281 267040684 790792142 973038254 942607734 1774697 305612715 165387810 55823738 451167516 398726800 955163236 49708991 325538602 109329132 46914113 387657314 740547955 412875241 283457767 238475247 466873598 912435901 501525473 459561922 934488823 220366379 464898819 178995341 306442120 49577236 598190996 797600760 739042956 157114275 876191257 242560986 420444926 820918243 345220981 366739333 658837771 642853519 801770088 382072003 624783723 700997637 25337011 309358350 695569611 17799379 351024783 721248977 78102908 259606505 750120774 295729311 156053608 976127024 356130778 279291320 614855202 626645600 883357403 922310479 250592786 271698340 807665857 602037042 310529764 316422126 741191139 980469046 274354239 225499520 264608768 781750218 143525692 695655185 4611948 505731306 763473233 156591015 8241005 137375898 673219542 465831129 540701657 360118947 107650304 441516416 784461586 613846431 757755783 574589469 801327565 170183315 75916479 819913279 814191989 91210002 273001762 424661012 300673520 354349459 588763925 889833886 6227637 240443387 333521925 479137808 845039438 584542258 71991512 140455896 238723313 728894203 12480566 903842026 432411863 727600751 833291886 96188253 220762686 796135695 594452157 256511144 588988159 271654073 328489143 696725854 48727838 848870202 969460810 22523706 728458310 714297455 594776501 211068263 216964086 156548481 444983749 240348653 334006798 524185387 33847753 381944895 876264939 775319387 785900576 832326206 606922972 852244996 341704928 478359672 840474434 493221328 18779981 139269911 475633910 857517312 250756581 818858319 239909439 946704980 559750676 418373945 741192615 273257203 956715789 205198212 779088002 332707407 411557671 614884983 636843896 712132851 620328635 602871288 645568155 219251614 312779627 710206392 789658886 131043473 570179200 948719043 835849123 257119766 10248759 290746630 792355464 823003225 467516408 477627396 304336712 242876465 297021877 717539809 673123680 584828498 828906260 967298198 9814076 358061651 246495698 287873564 819277869 135401480 2219784 756248753 624242302 539586112 524866556 759584302 118798421 521855561 819117811 11195849 383757590 833476365 309601443 601843758 574679894 942495798 454248233 986520172 759075574 77852157 323637614 690749864 818591907 357380737 5431995 691918304 698674035 788369893 693456000 749593983 743279851 402200624 162708247 577655522 83097558 467851910 132214409 23642683 361267680 973076205 566931966 802352410 768598407 220598530 529829464 196270469 385974354 786136069 954235757 882761337 151361473 166400508 745659951 750626443 203255109 846951191 106657949 339915851 934732270 970962192 916954581 558084295 340486945 869134823 370521303 632750379 505952891 272278507 712106226 348106759 96144073 883606362 248403309 871530048 862867853 596226807 372241874 998932177 995819544 349007663 241091800 693181251 62876575 233706301 161696548 10962323 880872702 863876032 675976325 104280239 322594814 139168613 542835003 93067283 394695319 636357316 938231287 484398400 78626440 656555380 989316313 35730591 447261547 285469490 59071498 584700055 988953978 273912958 655185084 589045085 186825774 667333883 694359775 5151756 354490957 21456927 952074394 32624248 499782817 614076112 201804374 27702816 871192736 62000644 75913422 685095119 774154372 905611440 930458101 179430776 685016667 178232456 4238469 611296726 449785693 590451403 161833826 980040564 552284765 270235487 226785417 456507644 561382503 364701328 855831416 214955353 775662773 768735266 744704552 759464878 104415843 701008988 785752212 705477671 735963211 600910848 601028241 74355876 983182056 924345953 817997169 584521987 826128777 125382197 292030611 407374045 725117079 228718719 69203620 306166409 693515392 870301498 211610637 380256006 815630140 918066805 195130492 242521798 960201286 966246562 729544722 772492866 399019946 894204380 441641935 108943781 254694701 760384871 796650319 942088064 283393268 985525345 787852768 127511333 117017421 966342078 57532899 849125540 174670139 911441378 850832706 251199356 723864274 303300631 656422924 807691352 328054263 671664727 970396234 941814259 242125228 890349126 806550854 818648583 798816212 622945939 78574071 518685611 374266765 97102933 556453969 912638662 292359710 581933162 885694776 980373103 559654294 181950467 207919727 286083134 854577032 421132670 389716429 526083267 222481256 800176307 20507331 286118532 152883201 759150255 785339477 259730866 78484587 408672357 480366550 804705446 271025649 248749798 856773671 870284924 416094358 752026333 673839962 981656769 843567847 226834991 314477019 639149938 194071572 580453897 146629922 326983067 178352457 774066608 716930477 87642616 416790611 522221246 764895860 664623443 20274336 429248446 105535276 908874696 320836951 932431511 148106367 158383320 278176524 585651936 99006515 636574177 809608858 47545079 660154405 405242551 652117518 735096272 303177850 988697260 36407525 474790482 700407836 775860827 31244274 919302434 829951788 91349008 234218814 445423451 593845402 59338351 780346117 862797057 434633734 918637008 213939804 409518824 760065311 571161417 999235212 815636131 885745364 574740417 587693401 656228249 582454294 848304640 307233446 543372204 905217327 958901454 800747140 578137333 834651292 277397992 567349337 813352730 354633582 169602850 172968667 458260934 604364317 928019050 210864049 210001034 83288775 127035469 577909548 296603656 805664255 897382751 43894976 444148374 383983006 125978055 215731784 942217012 418173319 996662508 518067404 106813211 446556529 916373483 945065323 613842190 304177168 185619353 137878323 44042648 75280532 599375354 567682618 390613511 642109812 82334936 370520803 606058379 22954672 278051317 96305786 157745920 578060688 526936696 718141010 463198023 245688029 788307295 313862463 554615005 87943155 586640414 381427444 296959414 644263090 907907139 189534341 245036472 99122599 355483081 673089802 362154488 527465451 712766198 834825814 297050985 839931964 503048744 422765767 594566780 828806761 650937031 576583133 626284071 552847230 201010720 461469451 142329305 430823192 653403532 685463222 94616219 746350874 298023248 774638460 573187832 805196211 10260838 252616572 337833768 627873023 509968678 569942544 807911903 355710497 669128810 627888302 208162399 966673426 565029028 404780238 229464267 838263415 880653213 923856397 171445341 646013566 479621971 240494899 760322507 5922634 639091013 269681259 811398694 513752058 952984595 338404598 433813916 370542938 402858212 136171101 850778531 903977525 574834125 561486459 170390710 725212742 158198224 67837284 481197196 638961114 485645039 61001798 281985845 963977120 741843014 817352244 436146500 440691897 713369091 302143810 640537324 651317053 112469396 741640827 360974887 421745883 1088973 856340710 261574358 402131426 420766142 951488739 782934512 95479383 618509630 417330631 926886613 770786889 795501165 747891862 396012383 738104605 71738725 595128181 455283917 206009334 670282816 899702686 495965834 819789968 268077589 439471514 41488225 785534728 897999995 321856223 383687157 46280414 112355864 95590913 755426810 204956852 968657343 439422762 952886038 276832859 835683260 86825964 718672802 611288103 621251207 558369223 776369093 510611786 292490414 543535515 841923044 160354406 21726652 446922971 896091075 664850274 292290605 407405692 605417622 971785496 137390359 25884327 472820792 99214467 652627350 715793573 35107947 64967588 445884441 940399323 733392110 712206577 298257694 556929785 594355991 612650544 665497791 422860843 805334915 737903079 725946270 792315806 657175179 470306704 478874569 230304694 577693862 309589355 124727047 927087090 7253348 517859683 860020363 126663888 421252716 143881654 53240828 591650920 496911690 844068691 371821606 636874360 73913197 139180723 70820227 627934884 548040615 765510337 228083363 704663789 370228910 484603327 137056557 195570565 395741283 868900993 906161516 332565031 58979027 973883930 413612030 420812508 808165088 197986290 61879394 931769822 582886072 847439323 113623375 934493463 221584782 823498808 903330043 57600064 840398626 926409018 956236381 118351579 893357416 556435763 109038735 650708373 782336657 506848806 450020794 645860345 35958206 721774170 747758860 468945273 137824712 995177533 93321445 546311661 570442752 807730222 276967264 21258056 249667465 156504076 501295641 132795762 26750201 487687131 517428463 707079757 763891727 638935072 80040502 629764420 612340167 512068945 965746609 37196061 676941745 985506410 88405690 641430836 584976671 687631616 760707683 72658303 645139687 189120319 584237105 215320929 793450082 35385332 973421885 186680283 300658697 522907974 182679843 698790852 557628581 988358347 287233247 968281912 182895101 484955995 419524267 146401108 374072041 216750776 525748813 87649852 258380455 961061602 479081221 973925237 310072421 672146881 755591357 938939157 793113907 427292880 844030985 562867974 546157370 172240796 238925851 907776853 798930902 542275700 261414588 634188531 981365906 787677836 356511802 972541568 202306152 840623527 872996662 917424525 923499485 344662527 789534247 679204758 796823343 470247401 358190479 335791206 650436496 309167389 461474736 564536677 529303269 804071509 309904887 176204472 14695298 468159341 889753076 352900723 815237097 310929072 465891399 648243613 976610056 580266967 338298395 345227316 437661614 535264940 869296039 23925280 856708360 284270827 611515196 359586693 577891655 180512464 497578001 510959119 323191962 879800758 640626687 844388860 737651869 726059479 648992355 377416957 263994358 943431816 559850510 952153873 408356669 441308794 748637977 178045207 472219638 69944144 32520439 102422161 607242381 974809305 96397677 869442348 577390109 27977383 395505024 690853804 495269985 141727883 151031266 687502691 210184819 932601766 824351107 433485588 968442852 970937647 210559544 7025223 675660688 464569132 150538358 486797646 205982060 66496004 292970701 440394423 672871427 358897902 302061858 425435510 346678969 916715068 941854943 813945916 762666745 870887434 532581005 302064255 144185777 773407284 493413294 615586511 348821111 794877237 533019470 864415704 68008608 820523841 686299847 448317723 504418734 224455357 362705073 912783170 623690919 193981433 441227072 119027311 543187315 890575201 114328583 250667018 113643230 101102631 570749301 966716327 628162534 458616488 649500406 931814808 932638731 635865184 142354841 420132548 762068417 898088871 385169328 434305232 441252965 385083997 780427811 315491519 827210018 936292238 382115927 334823065 602376111 421820712 935015384 633458127 203605624 808340399 891285818 146993461 775587607 823641771 903809573 482686295 779936015 280079314 751750097 911059800 774277172 50893518 633503502 727903886 833433307 464663112 756628493 387974473 962684810 768093107 190012244 220858997 101569526 835314295 429869984 242878297 331782504 643850186 731032594 558125641 173089518 806142513 290173556 920891430 507671121 953837247 868634490 121768955 874176327 505263302 599926667 312594127 183160000 39737 669387712 902820029 933226722 426697788 196179709 108381446 553335613 106555111 627616558 33576643 576792215 213916950 188910342 619991655 264383081 354632600 459719500 750630747 192583057 816405790 805289971 70061724 276321695 94950395 571489329 40670895 474498642 786507385 825056235 303788841 222382481 55605059 976550992 133264421 799604430 102732618 815266288 470674436 607572959 261427576 982789938 716984020 848011414 937063933 286352346 412908141 862044673 789558404 63702414 665328060 313159760 433592755 531480144 528883522 295926868 148765204 216971491 182851546 549571536 736264065 547215899 933631898 402927668 303813401 553782371 948300448 945884029 423969219 376337708 168299476 146859708 410326721 218755680 712931136 338014299 517799483 960565923 166589965 348603550 236272084 187709095 926666079 794570750 498925647 355194525 121793416 793790388 404704729 221686629 605171396 804780929 908895593 295856488 849028034 696773219 990348044 347140549 109363147 138669160 176495226 316434572 765961000 829402811 238294276 908926287 255433916 996887464 854571474 127654494 711466344 27515081 714174996 622920187 558444849 627062837 921741552 238208540 72555439 343743915 138637247 675715068 262152700 971569730 244833467 939572309 681778616 892251402 553014917 818517795 146600559 919217333 669729593 155987377 157040931 978983941 815005592 976683009 9327121 805375286 240418683 250669825 976112278 223027159 2095956 887117160 938280328 352393806 463798658 59291310 46126158 536690248 417131185 497463438 963848632 102222595 149533549 74067823 424716087 799752214 737154502 602108927 890514309 812706057 57302303 91242268 339341550 198725281 75470632 8684485 960237024 193407949 638886280 824958564 774674633 897789952 488154483 918696531 866675731 621972433 205027176 129298919 376103047 469590179 567385130 280433137 796631297 618328702 782577037 666321362 237765742 537004209 992568857 936140861 829186546 555193479 361699009 942944727 56114995 507989504 541677802 79056418 268562304 924988954 557247343 487140464 529521978 273042650 627635813 774112858 925736878 526778015 431815340 58190882 148979910 738143730 763404976 275389128 653485707 39150256 502053661 8033760 741977738 592480151 183044555 362014644 416628940 431488659 62329700 131117212 525028004 20759249 72348273 962227326 548361664 92807470 587955101 822584771 703080427 225021855 302375277 41693943 528063163 421810351 840246748 680462459 683752131 656569197 721203334 505244047 563617712 774001410 644526332 107311983 796984058 676599543 615292859 557686938 301986398 856825438 804109542 631717445 440631992 985451864 804156419 250692818 38871050 628138965 962576371 582424446 227004352 451046104 301886266 737044342 238514935 486635302 300671017 852894577 78046589 899829229 674251640 611263294 346695218 724615753 947821828 728800069 907726012 118271600 333454073 769551264 838927752 859280149 864772836 716666674 195416621 898715554 948798027 901280358 385990317 297514810 459402171 413587746 93936998 879816083 208781588 496476879 979266887 964809663 961651143 958340157 68605569 869964504 427819063 119030552 588468137 697513465 544155950 115326454 471923631 294574306 784069638 595015259 319416849 166937065 253105009 804840845 678812464 209311868 143674931 378520804 647653359 753550939 226814079 364352815 593231547 824658337 409440702 72178527 584091098 383438751 819102726 268923092 511879640 647933179 198093432 263288341 793138831 857450923 22015013 683715124 569362233 733465914 954963356 34747720 64719199 849964919 785579278 295441157 255280631 521685929 328593609 876149502 841601074 780778675 724806038 921440934 745761256 829749185 61285253 617050619 600587118 431532159 380977592 32151375 642146516 349863580 746989649 32165622 231821770 255806434 699097113 833465955 187354193 814746421 523333954 296385553 509440765 569425011 278485796 715398054 569879011 744555210 542421404 678811554 729036186 600252554 671260485 464346582 225914926 396727761 662840438 83097533 20230461 560469542 448009827 501752536 200940431 311767610 349253324 712314543 379047497 459562498 217958988 603501626 185500841 385735632 416873829 649692646 969447887 6974490 931228071 530617268 666169423 528951459 648236563 646261317 390972690 942420302 53288641 32381187 822986237 369328386 513438648 625001802 294264999 225386135 936134578 541320041 75596570 538270644 206262533 899003880 610989423 392760184 386515456 262877008 321108852 163036247 221675569 113471860 900539892 756834600 930234183 522398016 19180793 673628672 985521271 88252656 947492547 41579107 860658316 145312913 795958734 34798260 523019290 372998291 12606358 28960550 264644250 158834401 618369942 8081380 37921030 631143989 285198707 130524543 751345361 80574970 419352994 145896209 637679340 600311106 44183841 435374161 456704578 841326888 842006530 55295076 481162018 235923896 588157367 369002901 764276251 52535801 54093413 307545929 348679042 88071952 545819792 173963625 96037589 973246095 872498050 305421693 430235378 993682785 787906923 813101482 475107170 832624980 467741047 494581210 431723610 226741690 445691734 82337543 117840761 888138175 553807985 574106626 273294779 913752837 391078808 202313896 768570506 506081103 205263294 213099961 138232989 466526072 978561123 591926075 712863558 349922977 360612765 905463765 312925023 107427920 581830683 950699552 733766974 931835387 189945610 122232109 241368623 809640684 489732353 341364404 350741628 339516879 838383924 403155603 694797914 763859165 27330968 836202031 857933966 614389401 736709654 516538622 710148066 852021066 393407145 718438364 861146941 796528444 568527538 782320883 991150848 670348448 920399620 871402980 310434029 626378138 765754595 506573023 126610163 514727807 836219434 47278302 831731740 16345058 68065632 117305097 247559682 508699052 443579352 665195411 337686697 552575822 855102568 342126992 298851490 193090587 197174969 123198843 827729828 264941175 879481306 441155237 997756896 625639740 989829874 639958708 34393972 260693377 498412991 723980245 673189532 665213753 745241356 41040791 893336873 328172175 58972005 143872726 744865328 182444245 659918393 853617676 290111764 339088875 344152875 908983126 126763714 912063710 876946995 619090092 194343108 999099035 323723489 409015229 742343604 817506946 433371836 30982607 314111219 886909295 516292835 312769056 356099423 299939882 879579339 634055976 538415772 845155635 74504833 343875944 217610493 994697846 385816834 924499178 539309807 250683591 915475976 809018864 730770550 625008406 666776062 650194690 522473361 641752331 829821048 297554044 522872348 536595887 178935863 1002222971 374509904 621609590 38388632 349115774 837085228 313124533 115298975 380031402 827179501 181790363 449651415 290257730 756955209 668791618 746877214 238133944 333769123 226993909 301964255 226781226 27052155 74036937 44993651 504952601 511381574 163678095 833744479 389302319 12990643 648876893 427898465 238294849 981943176 951009946 460958475 31881616 564335411 797302690 974867268 315275769 683033976 600903644 32430813 442003969 607671021 847427600 822130656 189768587 690647438 586060933 826084045 105435370 484740955 12862533 962112918 998726652 929209945 413684797 147493848 750793310 327712031 172762827 98782624 356386152 22634550 986022104 728543723 3850882 487760868 450293593 719006255 276255643 577431163 323646647 382337292 350990370 126225882 938871455 619136947 548596532 822540880 98060503 369924775 318344211 685002730 82570422 223999788 499093606 534019543 548438609 127785836 117364253 996596736 511351782 134500533 157753575 444166967 709916843 269694621 943245134 404420037 477112437 676336864 150650489 175416718 570454347 877978391 851039571 74095095 795374762 308903398 512649440 747610808 7569412 153811815 542927206 866175633 509776739 63660534 975315770 204514470 151235951 438975729 466785656 123975391 179747859 80421820 227858928 498766249 239550234 999627827 39994462 958422441 768187620 376807782 993810109 255794497 518348609 641768615 528839579 383532701 51072907 377550105 670033446 123334174 708660287 297156532 596372796 953178369 559258467 608402525 84260399 286812695 380957398 49936740 15579843 974341109 652869640 113696068 73662666 430111502 948617814 5725459 844829425 84779378 219707905 594123313 249092867 158257890 735400707 675048332 906054694 42873827 87546024 427304675 916864845 1857572 231565819 203000386 881922063 784275637 254586677 883459951 344544085 638993978 845350458 262349164 773818697 299314852 15102148 551365511 135042966 614450167 841149157 717480088 408991086 481277711 372415250 185306820 598884652 541026592 144671068 474280849 402158510 851616792 944382375 563365485 102898843 73420113 567505757 977154373 800346936 538240605 708916714 994873578 352312140 273978235 791692127 474511314 310307499 756760174 618075910 684357755 229803512 457446645 660207840 61716000 787876047 809605148 685046450 927867336 308590043 512826287 109869580 121298506 331299115 654305757 484022809 396428809 879185024 350651416 753772891 352462217 295998743 672744391 879016824 814161312 77867781 153529765 298756617 914960981 715930224 522544331 144930030 824117599 57080312 333301843 453108320 892104838 775382078 859765363 183638509 793638295 77570594 718698004 977281986 269844082 269680616 438364028 780211834 236005103 440429885 869756150 746712151 697337956 299890230 854883310 141122502 243624370 481760900 183624602 709919360 720846591 994670368 757205222 584336149 368211436 119290135 292210129 857887907 600796199 660398856 532313373 647293503 406734921 168706916 949125111 560402898 819869223 613297356 193879440 485996184 121764710 550203511 411103996 703901980 350635558 849294071 697917197 59367741 357799574 70671715 60985143 620547883 762957622 574570200 713989539 778712398 379547730 172221849 785298574 399530777 896711138 159052971 159489335 29022205 591443279 663436071 693407954 247347648 241046482 1002181967 360785690 241468952 681882822 495512167 557866353 997126313 98229967 846696062 356109136 159191804 167214776 889835151 41892640 204381862 320117318 631429000 486366356 141264295 730109336 348735220 614636535 304338302 777523098 309184657 989540786 843270502 592752438 778131646 936378345 29152565 18308444 885552627 824585929 887548355 985683174 189908254 479062134 132089784 739213706 959832224 452832957 811732930 21412239 226118029 210294787 676005370 287948406 293249348 103555539 485836857 890816230 216463144 776692905 754953657 227500492 683357599 151516573 993504897 839489587 323099601 13231616 640589975 56809016 812515642 615570769 472189099 276805340 833625609 487662502 143359956 656928254 785878711 30170532 310128589 906211714 894567380 16000659 186227400 295635054 412923826 552362417 640050763 823697386 801023654 813750443 43535043 661005814 515779599 628306822 100899138 262677210 788757298 50926221 225183253 813401933 490920859 609379770 465041266 438425763 839555982 612973612 261368071 528906513 158370410 815115777 228810276 76532585 428648488 873266121 626895545 689813274 559868202 253416409 371874817 395102919 22850908 184939267 982825787 985663840 574126575 53318156 344050852 355263640 14572521 429763041 138138131 287687593 92832430 240711241 684658805 793855438 727173921 788074164 780955382 700815790 115233439 901871612 827743708 417497395 609117022 656486245 488789366 480879323 1000229759 553490224 954883227 960346315 904631277 400340174 146187325 155070321 341597416 595156083 525080475 761828455 56388364 48950110 356910121 808825079 679013071 448238871 384897537 339046430 337537102 575702766 101703174 816749015 771985352 214710095 599507916 660088793 75211867 518271226 261085054 164252453 218356072 633465818 603334266 870172225 999624562 317063179 617547082 83430227 901907150 471081929 331924980 464472490 883572956 727162314 179959065 120666379 281899216 214115880 48031765 683583785 964945181 1190551 842107918 856018701 797046821 862808628 525508442 976631373 792061833 183844520 808340623 505703406 193147751 719490821 173735110 133332325 163922564 641442454 609416653 436400322 510632236 384169176 931197309 895195263 17720191 132560888 515656358 194492183 672255265 63458236 440173203 233486404 174037981 282288556 216961617 61763662 782644904 5737478 662292333 884048388 238731013 263129170 190834271 430664041 120519522 415356539 603337565 120728098 30407855 275937715 905340616 25148358 183896247 992611599 467214639 31386517 375203403 95921267 266481834 586318724 372959562 776176696 36117387 963406804 441797738 315002554 569372918 37397354 923683201 6666603 193236770 245292449 901474021 690840460 358538423 814532701 198075309 700750736 55676719 304081022 934099931 816063174 867590229 250367086 971819173 83232940 216342408 67649186 531138419 610371650 762736400 246938578 417642902 280243680 547933667 91203352 247797856 659560395 150737600 56361035 677185065 59066714 668843259 615668678 282143783 167505413 681548355 180779195 811996543 623687679 225918557 694000709 324336608 193908078 563461992 4131570 67330876 206560756 989879929 856297804 53680295 375380873 534773714 649965833 354920344 665639047 343551132 436358929 238202311 162595658 549136483 76566759 610225546 748939728 769017905 891523483 104014178 747087383 490207930 90306039 845159266 316146362 106750522 409176206 734936392 933233159 903573975 528726787 604420119 332530137 996185742 867992253 574112500 783025548 835528306 602111643 838779151 738369428 914069918 458626970 617589672 192155687 269963041 268480336 62164924 963458690 232512126 486421125 116986174 679933139 721403668 859348271 269548934 927062087 194635827 583359017 489599045 5776151 907223838 242532524 293391541 466332994 950717784 336869697 548697415 700900196 420155283 327816494 823470628 327175753 357661228 557827812 505474444 374619050 811156254 687507063 407202968 948479531 400484065 674613725 744316849 50834621 20090914 127981106 999776631 809477614 746184539 176581829 10017131 802125832 197882938 15961700 350133355 690359055 734495788 649553367 910827385 8844865 810446160 454703650 66603613 514777890 733524716 149810630 761951508 214661556 312297824 414299949 737562032 971064945 305113267 238468988 214519820 229668804 924761331 954194231 309155429 523799869 19874114 222320467 294392214 231113497 1001202753 909488597 546036827 310091004 865662103 904127211 936387864 932165134 518041828 900183953 593961560 803392149 491665976 491712529 165085399 700573466 820029262 302994898 331170103 58637317 728760587 601161954 664882606 792742746 640096004 267564956 789351163 814998110 174828970 636657419 740216272 635136281 708922668 710682296 20726123 440346215 662121258 658505562 824511274 141714692 750912051 150216232 660609231 548148936 108205751 534509904 618700456 1104812 630667136 905885536 81603102 421979246 723232356 822394448 35975146 961533016 840460163 738826091 724478582 371560346 624430451 532569240 938322787 664635281 115273002 745123992 240912844 494832700 385050900 279180771 83532611 658522421 499655407 264720570 530600523 346038349 49487009 39500682 21095933 867885365 668251927 516633538 366595416 409255669 691819081 279184335 675232160 692978725 578718104 819279523 92410416 519777858 846993577 188852700 724641132 189875757 174051715 357226157 540624951 538792636 214164363 457845116 245967570 779622676 783248510 227828054 398228832 75898962 686293425 263414077 813803518 426329665 235217983 15911724 505795173 914011898 985368449 222684798 98725767 495415147 447461409 230745544 931178443 960900886 640656418 63502440 609579459 953104030 70094598 393811191 41802542 175098387 114846349 434978487 140684796 757353608 288972268 589136999 107732219 230503348 786287990 639336918 872450338 157484473 517344620 607111011 102774465 737929559 179538555 616253299 707187448 264550806 587312911 564049075 270489254 105976557 256383562 865747209 26800993 511399535 973518812 139509047 655974265 467152303 849754022 857520137 205911884 717272579 134028152 419825595 921628337 255053318 495231282 505410771 781013009 702213760 163045117 829929074 365797953 192951979 683453822 940979369 701551224 845713684 723551610 734819983 373754097 611503279 597198268 26871567 285829489 768487144 421351447 639717487 717412291 398078864 278419722 451165546 827050980 134970324 496812651 633259812 810261186 726163759 683231133 762078165 1251376 233650753 538465423 112264163 342827226 539312792 507283908 714770483 334353682 913502626 739802611 536508568 845889567 60311525 744579903 531167800 772971345 997092334 894689900 514221832 523621121 269802636 605320371 828596 129805041 244400552 111975308 587649664 622339256 671629034 363466262 338946968 278599204 755490018 600656620 3528867 183720761 411868242 770386269 886720348 551620019 83494368 244755136 856489702 927801828 532069660 751059181 340548707 763993301 580245232 818494638 235159177 501861041 314629823 393426068 40684874 326198892 978625156 14069425 394728946 307609425 376838599 320594998 736504073 505565422 56977641 786197274 883399121 63148886 703759264 221269856 436943753 167338079 833120819 217580865 783823879 665816738 478660006 602661849 131409561 995315071 23759642 245879539 650327060 614890797 365551132 757782684 269535424 25893900 79500775 330244313 238427187 629049524 3238416 398579470 237876112 865144518 203062964 128764595 560144529 146008716 494402715 556719374 166901192 88936135 564035939 824750555 537521426 677929013 138979009 993218903 753741683 654282340 750446829 430277089 931034204 181757794 869151827 25466322 669423004 25985894 120275566 697036201 551330754 82777486 764732871 1001553309 422062332 363243028 810770663 402823541 747127886 226192971 196304067 759597323 971342586 407517773 198246809 497558087 943243287 624851785 730870443 832680278 397249097 91445953 929451795 877363423 409618566 526277804 689365686 847700468 564608257 648621679 35606379 651434658 596987415 482785956 773194287 619200138 314847717 156686283 230011200 746825961 186469747 700817114 190167774 360558484 202639081 321479078 342649668 227816238 69753152 11010927 178930131 129002442 915943378 932089291 246197099 258221405 783554768 299554238 986437006 227318383 98252929 932189964 517256320 818313584 632356012 288844201 648607936 875220302 263292751 653932652 960610498 407185652 193756286 138566982 390175127 714955607 653338892 454011924 83826727 577797186 75172896 114544749 782525121 163379826 544128681 422572476 780182451 32500485 677035835 864993777 76619420 808004700 608745289 489534405 338503181 275330275 508562122 432406454 272992646 948791442 120583560 358133711 7520378 974725008 414341611 592913642 738165694 162764818 594923761 913770410 556794041 157260123 259602954 244424409 93522895 400757595 867599342 347936767 440174136 259936146 991601483 172936488 354382555 228356937 158746007 430842271 97662766 41666703 440283756 455041421 805260480 148626939 91590847 56805163 474990971 176233879 320043254 634560851 608187616 559195449 737299725 520005226 233113098 525699174 694652384 642958224 461757906 899129647 352350001 398435317 172939715 245930572 142754968 674285280 304396025 373962794 691178040 875674899 829794705 177262523 472912364 326715188 585386042 344034267 910098289 300479482 861352007 566245076 539131234 328645550 103609456 258974905 169463145 300937545 951513008 436274548 414986233 108634397 453021702 663327180 83440256 916515150 748629275 52858390 517158343 311963027 959694486 857454095 360457357 676389763 894399975 922481928 91049935 418998199 928964491 443384092 820058897 953243350 383364230 810994120 284446038 111122880 746338491 306158037 465784555 302760750 748016874 911462821 289715520 155501551 396626320 641570521 66987187 463652023 308657287 252960108 542358797 601774246 778120920 720719140 604991674 941556831 991999498 35364404 32884309 402433979 574219839 517753792 38320648 78886838 825450109 499259386 4646783 321451607 129023933 820178532 115446042 431451261 732477814 498736423 33906396 184582731 814099805 389964805 555846957 285412066 835009633 977009370 997935162 174780173 672088066 938970209 729280465 482988986 55548611 877352687 232604076 458595851 930247993 575520850 41215240 172579165 674106260 201959718 395821951 905163792 11087254 634647045 739551651 281604749 182353497 108329854 190211064 812089946 373173460 400368216 195198723 808388802 917709214 988189138 118829534 529933709 931173785 273949774 432043431 762880898 124209832 326413552 751707332 222559436 14125419 150262391 85237883 658409280 297316981 636267202 556876024 416610665 816395371 525133457 348677898 221609134 628139357 990516736 433440807 383405498 594530144 875543621 864616096 96213185 82819895 461618209 324836623 319598242 701674908 895357605 243591341 108396331 478317213 801701382 53524130 187730813 761628560 648195316 867769383 612557318 995458812 552251739 875359202 614103605 720988899 781915316 739683121 499151329 974811177 686105227 814448441 676312432 819534574 232702473 380464241 372997211 767837151 603973783 581945273 734312408 39107202 821608578 800493057 172829410 640025729 228055843 866163037 950600569 565530700 404469514 485913083 189299395 957040070 100546278 228271898 718527458 136168537 773551716 591378605 282596121 963572561 565702920 203853419 467062284 182190541 154766627 236225487 961449810 67317017 844103327 504295443 459823718 890771981 768491484 926723877 992474965 452935066 536545049 781523428 291906749 537376821 305954572 270276599 317560255 938582837 71481414 760726275 696577300 989439239 200951463 916425440 47124755 813826703 120042131 50371236 408042982 34174048 248125709 432913614 799043778 692763785 282299190 568476213 261260538 832152754 746958518 561754390 356424319 752192366 921628549 201502718 895442006 16463873 8585519 836219579 793420725 502208733 933958453 957849622 289392634 503938896 901720093 592981399 66888325 733572803 580520896 49742396 770217341 517110166 556428514 16910216 997490706 578200212 881910815 336517101 893141653 696042023 315528172 19181732 609688029 184097927 598592249 778337143 774741460 394750418 387141362 726116132 554952565 204947366 474952242 161360403 858533734 660627471 756077624 708332822 805942381 898653724 662230337 608696548 503679911 143867214 680916059 722663783 601948026 510884216 154083299 701274698 731691927 982292657 325345393 566093747 807568189 461602175 206209953 949038295 660168776 963977365 655544664 188130098 224570049 289512641 168862850 889697833 283548871 777765460 122899492 522387371 408920575 19263496 324324794 109295040 711094546 950499437 997139833 804938221 759142307 23616679 941451615 422160850 979803206 154832835 138523462 368365001 970769854 821151322 77253091 207096919 640617163 669583073 491709094 733576308 715524508 349115101 450844438 646718195 861402368 506390081 210775391 957675478 804716861 29450103 339114661 670636367 718167944 772055378 756021966 608685924 780330634 56184526 108499284 195239155 208716264 864295591 876656858 634083343 424569047 623352211 38677600 927116453 363769193 977804392 838976326 60211994 854759336 227090707 553094003 315893708 832512626 887108307 661166988 505487754 580047324 494833885 152852868 434586386 954411410 150683263 455765271 590734572 906076620 826581404 389648946 781436035 311476477 4545922 287784850 292883113 725509419 729060286 47405903 527706914 944092736 909182592 858823755 327941374 230388065 118793218 58181877 341525650 822007985 91632953 998858880 403467026 61101702 325505361 944608764 695701061 900243731 518435376 540860256 118483822 15651224 972696034 432167025 240880882 491250075 578785136 850866904 281058963 594555531 320999500 988762957 514347399 331001261 261939143 992289838 876131625 870429488 88727205 690659241 644812341 349555788 739621827 4937002 561125759 237534677 196235839 875135923 453387695 299626816 372642270 931021684 23686758 409742666 669876339 42320496 340056369 580201594 46207768 281463096 9754683 875092076 727951798 922225547 964652911 632655726 740155145 195933988 55676626 939525264 742738196 884315909 310939884 672848166 374115615 226557535 327199052 824828736 76457254 538049376 724178529 951653440 543256008 630618811 61322137 735079482 824820307 339723905 632436670 351781198 907157261 220489009 725379606 818541875 617304878 643218064 2067314 465785728 801211078 549000636 882396304 645441144 865652334 882159594 220858561 382195245 646271373 828512482 353277820 840316025 52829571 531401755 786790257 495181728 257193760 687632217 775371071 581872631 545412368 783248997 382524760 245443661 90582118 355001376 854441732 777149487 539343820 914275237 424593875 545974655 115745701 267330213 468060363 477188021 148066230 788868406 291240529 160779511 32676690 384999854 797219352 956399469 792812150 335108227 587815326 270503057 412384287 837960440 112706283 225825005 656937731 131729834 529516063 33584717 804536383 607314949 878423115 207825590 330660940 406983215 333326375 479024010 133287371 272016286 963508167 110504189 57493349 916945869 758107722 685586994 920367739 953884150 318715033 114767480 22921123 627497490 648602564 549018156 271936707 803680903 923602492 769929384 606199949 917719871 967504104 683543860 244983908 264542 6406086 220370031 249393559 866951284 865462631 414300163 197205390 700580203 546733834 622729077 70969464 495783227 452781410 708784984 454275520 53355857 690582715 330340835 556547826 712989093 762426277 769455103 104641426 301023273 783576531 90277530 894140990 772375670 81275623 807762875 787243736 346421281 675255486 848521021 967258616 596525847 10555865 997756236 879296061 507812682 615296143 245417396 825804009 435052646 632787297 467805117 945320394 109565699 856503758 657224871 132576047 577559604 418128567 883763780 395259746 111287354 182487830 344173225 631666654 225162240 431435368 772957312 589291919 439669382 162171887 290801799 903517592 480527244 493920018 683500560 650955433 895347807 276780296 510056860 289087299 255042184 245810861 699494257 821313345 970325054 98079343 418909426 122012377 49341647 496711341 792204952 937620549 86593818 490515066 767384132 446287433 731366735 917325687 262129748 477739994 720059923 567664282 506563847 370820829 963173332 669575959 149813184 722664102 563459430 35511255 317357752 832973626 9326577 736376183 35642276 315006537 23188742 430806043 249517936 953170013 37353428 352979445 19788110 654366369 242586740 288149579 596345407 899849381 903196004 21630784 109877430 831913348 499698017 793954112 915046752 908817372 911247200 332324384 799548827 387716832 113893969 915536789 820954508 727121167 738932026 442922195 108683363 773797071 649343987 821706323 309720715 147000435 885704499 84572861 542738444 701563467 654739076 859090063 470162337 888346834 139686759 579744586 563844813 182319380 655646957 199633504 392964990 320496273 222857002 135607359 300910680 378033020 207250503 55873142 650048253 185868828 315336835 288921760 150194198 245170 119458031 365628761 154173103 850194566 85647730 703925398 635808499 845359036 649753497 512299365 619652110 587087514 503621477 50255410 43613368 764504011 131210481 800111158 143311659 505203171 247648902 395539046 192237709 152240542 146978885 411367805 624330519 106535892 822206403 446844626 673640332 761194649 899978005 501952154 980570406 592783425 662162817 808494208 520504011 995114554 672257208 894622522 219639427 979666791 362597058 159473503 210111969 668972 73827599 810175224 549655662 430536639 873928689 27274446 736713738 272522397 512609073 492041908 417317831 345927524 58482887 973649334 55899388 654009749 386842778 939584986 404714898 561348265 823483110 61893003 754961941 881173960 142431724 923229465 426306759 148662012 383112294 470387032 172309378 880108706 409250640 823035918 502959495 324826799 237064212 958700859 873957493 174256184 601929066 252773826 481846688 997007715 300708990 335140960 818023520 226068383 41955350 117600638 491854458 482731256 180478884 390475510 930119717 394707553 426022729 198760733 389733562 709404050 785194793 257166264 668518587 147266857 458883369 507097141 445959631 557186477 983178529 395457961 672324067 446134136 216246195 983637497 383135361 102962697 517308551 898798443 729165411 964783706 439498659 657666106 808221656 30053359 178765747 993672610 177219068 996374661 662556100 884749884 726890841 359533677 224272614 941017479 109274787 421369149 119542287 969972292 929394496 310590166 133845672 149023066 691817434 1198072 736267138 645857837 807153458 930344910 484463915 177342579 190752941 202641342 377272753 1737718 562831661 240823886 927466641 993650080 728932168 132968033 456487790 26913722 677848497 551706942 881594446 455264434 920325200 506243291 57992061 514508045 249526412 122531481 464499569 894738557 54646819 158436603 882158561 892798717 83957700 989064661 460537039 180707352 181632939 475437755 722731220 504429690 915804195 86500087 348541093 4406039 714361678 702528971 382960172 980626968 568438148 492714797 540934515 279217202 241032063 250680761 962082799 71112358 263754886 873720087 768804933 391351760 200755345 818461761 176434072 839396234 621462718 303450225 438088658 543734974 812031843 720936332 423180781 628429919 155214801 450356728 98640984 165001714 700748709 46590803 394124776 610809233 48040066 254288628 488533464 923221816 262104890 952496691 963597394 10360026 207601535 836423840 157834954 744890294 938244676 433067542 861458472 742066630 143801948 240337589 282864977 819538262 897590640 502411748 244904415 707214640 227252266 160972990 825019232 794421491 775457382 282996020 633904630 1001295127 557073001 332578632 627196464 377921673 774277663 544925339 513689321 543730510 391465666 664366914 409105868 414331857 303611194 483346076 414333766 265215127 260700879 661636615 31733124 432195863 377773585 999097639 961842463 439871798 498471765 254689814 7668272 876905172 72383196 839596765 233430007 767844927 291342327 443863396 823817900 913266142 653646629 292662383 724017847 726413179 985777669 595035587 216938403 86357408 415170209 495672293 147948990 967397481 3517259 154967048 521983515 833939010 35823159 635573055 434180783 946649818 148588234 702814488 850796699 133175148 810890139 963612068 978749427 94735724 47447904 570720975 48802271 260791877 744962621 50510243 592823130 47933021 676620725 236011487 14211068 619648804 312577011 613593997 756530863 725906799 178968874 693821774 614028391 287204645 227436949 403184622 790654639 393319679 551751651 588351630 552260452 615396074 486539016 422569082 597818276 882074758 687709945 237719288 4062847 339599076 730866002 67201602 767532358 589056400 453274641 500251570 148380539 532044177 658344222 13721800 936934032 366526486 769454687 410854976 755867196 152937845 54948060 555843535 777902247 143949414 438438554 813882294 94911764 537269356 403273763 117442107 364556286 545741486 473690670 794929269 262205203 785353386 657862214 764549830 13548578 272358098 991552677 608731654 772787911 739396140 773920514 515926952 1743010 105476552 340042878 401020093 662548809 62627009 259238768 396911972 319428861 227622033 784136031 128979677 138524391 326627498 674496281 937357135 534630293 249771929 536378079 72879062 698097026 314918776 506236646 259429957 582830611 204787543 108742470 151322176 267379303 808186723 416070180 171479000 560632392 797130009 898880950 526039853 429477582 425971484 422783359 172677887 704431635 5651209 714869382 874888276 709817843 810148283 230917845 260268215 650245808 783369025 891905539 243291340 816728671 407864133 482907720 39953133 249283349 244863757 961012742 875131306 734876309 742494668 712672363 411336979 473379219 998782266 103855514 425741307 414952227 595241283 718537011 747851780 360898329 561489065 345726461 543366210 393410440 4132894 350162433 601607369 939803734 738651627 930476641 527362089 99547602 264165628 303785074 70675043 945282473 872434108 759214823 413810889 948709152 287446532 36195728 742058094 729545279 880004697 560643596 557926850 534928191 870513565 974029512 958076753 797536356 203591067 766015705 800809155 621041658 329245349 705393593 232182596 533094954 844419075 646376388 140575244 835362510 33437630 423654958 722971160 818879778 88313628 530752606 841548166 566757910 577232117 979765722 349985498 748034954 462886081 436961751 802921370 778509462 708281642 477753656 734579603 611565257 593849661 388904787 803191680 993330812 853816720 404588532 159520447 598211713 966515494 697510519 293283562 578840214 815487896 491491157 482375 750220756 782143320 965479757 755454637 761103240 325189508 342521412 142017638 756005306 308515626 958790575 384353733 486089717 710766636 570256918 114356346 113381556 841681070 259169837 699318619 763400076 629809606 546682455 39513061 264210226 646492170 779003874 310455211 979398392 808382517 714755443 266657712 988150471 880510810 158583971 807764140 845447212 581530041 182815833 170242182 411929758 64430750 709454011 552297644 495624354 29648595 447828317 339960031 633032040 320004532 812114345 293180934 815814929 589323444 721284983 74489356 935916343 5293684 598691061 895790328 179001191 66244522 431967018 869381668 193325409 40497703 217037108 216719707 713624108 839707410 164527977 546481620 813930509 176764156 648884316 546061593 527257964 197427767 422260860 485362951 714617702 991744261 139437939 543613311 217060490 702212852 210815564 938556597 297902505 129697264 278797300 437137742 700060303 945338297 216020171 249454229 479155994 597845039 352215793 843796535 126894646 144386457 109753302 647600813 886724110 167891548 815931613 88794997 771687119 673864697 508768659 311072257 391752764 682948045 771100854 685391575 580662051 288375046 627423682 464463132 531209195 81268323 94352854 783132595 41599135 127153034 883143547 875400143 791240135 67791985 291658783 182499618 926640991 816184522 660429773 67946912 741787859 940483973 774531327 319922347 262328862 33346172 331606782 768611620 836457923 46559296 51887034 841036529 287931989 460536540 452848056 232118079 609245335 122449209 632590373 802018384 396517251 832319140 88219110 846084523 925370668 149821575 462075197 51008887 760207974 753053432 757772027 895047387 928137171 265643811 735805147 409055090 78642157 766370896 782561096 497742170 501260701 696737361 486934916 342865627 138722506 507543555 885878126 846770755 781510183 915786038 918046755 949479223 144192732 671755852 976092891 258601630 644546244 129936668 204233751 988106275 770212685 387582009 860719135 535895928 807437307 117704914 498396243 460838041 961488408 378882382 167131668 120021794 367883332 260422626 710204942 743638742 103019833 821398279 349408480 247722937 969647390 321222199 454402525 985712905 610936875 384445221 414113938 468967534 708989606 997936566 69435057 537656874 440670076 157781111 388340825 974938028 924583858 904275819 731310203 368099915 266272131 118524614 605480499 730176586 818053756 194495637 563360320 299776235 722362506 840376914 94543992 265197272 730667964 404700312 204763605 256413874 625041303 105501417 126746990 26512402 705215232 816960570 78714380 385148065 19410252 43647359 386772435 116979586 834171198 106835047 371459377 237466029 658362230 816157504 930473929 793391106 755841209 980638914 489480999 187608839 382315893 351525916 924574531 317642174 837183883 625543620 194656449 338189737 974400703 757920611 217619401 681551245 324129303 148547550 884681533 359747549 730252502 302694312 680319876 365702684 169831827 441426062 101822103 764562084 921056014 249961058 421942851 714122595 91138664 184681909 719218117 678903142 259033968 41730682 737846306 550865872 885550334 114056051 452968204 475659432 306437460 406630391 21961130 557933587 911229398 307844333 867564781 744019094 130449537 103908393 532373216 156479358 164806046 922719050 824588570 837248774 353364659 794076515 362850998 657620065 112425307 174257251 92164400 250551180 803693881 743156858 603692066 622798143 838223466 874179884 389855341 453197713 194067141 426081454 345226000 124043686 285001015 142949629 244382536 301459822 791120062 70352972 44100462 587570089 65006646 885495645 270070244 636733015 685636750 777849846 358659716 665774602 994396340 36750101 8032844 941508795 236253448 151943180 90355114 410658100 597074247 227437117 348393957 228287109 124087846 805049219 359487222 903269150 163793441 662296248 619347512 176577694 293534212 838496581 538784666 773845558 179594621 66517231 82081928 583896215 576457378 813935950 423457371 13100148 215588807 658188936 234617793 519781718 31097937 338595900 740716943 977914471 148749298 79633731 973953505 222781643 868938899 649851454 950114236 741018002 495149510 908836050 779784330 925996240 487813881 419642869 364663083 418815821 363571485 333836207 559219619 380870999 25984858 233579343 327408889 155422392 418365288 538875420 43561703 277024260 781978036 462457773 405523667 136223456 463251774 752178426 138797399 592154765 190855386 727263687 617091411 57547790 609136737 957713120 133081923 440590734 854225211 911200021 117214223 804256502 132615952 773845010 591639983 457501614 612595058 444253727 617386816 957401332 714480305 465513759 514178304 657104358 63983146 289904899 667742017 835757112 490198110 452912635 88756646 161355976 565652453 49686573 334351441 911588781 630624143 354247486 647205442 573303729 693982567 807722707 209094303 391208186 858701287 89460705 26425042 179468907 392714616 485484381 162596968 226452703 696136216 840940152 745858281 775793857 603807348 209222361 879945406 758525071 478915482 397253710 467504717 805243773 332237665 836338481 558882490 818751266 864263486 957254174 156661887 890074202 936351486 151715765 320017994 192895341 533017643 508936055 173132308 661462264 835542846 291990947 948723937 969050113 900968950 780408989 570555795 912561671 503607519 769462401 318182786 813554896 66856610 301387413 928199987 116284872 952194871 120031195 115635590 457498061 714141648 32473071 957335214 149788030 653383197 328590132 748629088 252932866 600079289 695752084 846077158 564228644 117381120 286974085 254999625 917717401 135022768 519409249 643341055 595268081 278793873 334257951 643868153 875223770 993639130 761618073 465810469 951721987 417803368 418376418 914091617 756309350 156468258 732554769 73893848 85770558 748570145 326948860 871309321 253949563 680734401 97871507 61327063 272225347 426394981 991948138 859086387 314457475 547997933 129070819 750713288 623985548 551129464 704725967 651433134 631707572 596048075 783778850 600696212 322291967 15872727 209602363 316940461 815267750 582970510 927375148 531788976 984468968 783173814 374091181 133755178 749439859 961841078 415529882 669184444 667266756 579038846 714542830 705802602 54077113 397255458 585342775 261741862 834886353 616419737 166299524 693050941 424179060 491713381 592519099 531947502 234175136 99291085 229993964 127576151 363301173 167097369 812515001 796375203 138681239 401768685 925368286 292488150 508741432 872328729 51867251 806723641 859792696 696756859 404605502 992073789 971212388 951143866 605522766 377068876 255083090 935597806 783602277 40900439 690773999 991259245 313666085 940220885 368102444 533389432 969913623 278347605 900760897 239704842 181175272 65147832 465869379 93163954 456264952 730432556 517160945 842644512 140771476 271141607 913967373 853557409 84978998 74849880 526012457 101561504 780215168 331118144 251259663 455877733 336026059 345383155 718180492 535705391 925523361 166291594 714106848 233850017 620579957 602215146 703377851 114889998 174552063 693271356 153032025 14022360 160940084 927593658 955242651 535917224 805419384 383176167 560642269 955944773 308250093 324124476 726880047 292688366 560821977 780172001 782341508 2514848 63145604 603027721 706883676 739297771 940374604 609004291 796240761 354945040 694700867 442549457 257091892 42773733 966437439 836856741 122908547 107026055 124920430 471069253 923501192 471707364 239252268 226386773 994764137 713671774 539293885 581280731 105729398 523711203 437233824 195438756 824223211 173736094 576529676 834256239 133111838 457277228 356040163 495766966 962839532 279304917 437078294 513481818 913883044 705974313 61928326 933665298 549800919 154933964 251022692 457771312 452716317 45153365 200395744 919355330 223793487 647452021 634432891 172997156 450925720 650870022 739692011 751780939 183318275 950674423 729855559 975637924 455465342 684233261 893941209 82411863 344475271 102130608 4088393 771363365 622210677 615387959 465943936 765290031 283728005 389721268 963882061 38230111 215920784 936158114 436495847 517665649 686835219 648824634 86233543 932290494 503480844 29133890 230368466 151949179 420121327 975487351 916412053 618829241 876156634 727997805 226606340 640663825 475500472 137458022 197013398 871526979 864974760 694317305 922683997 577768097 223290819 617337979 209599619 782078201 415697041 718168821 512342170 438933389 977234657 245972783 574606362 442410729 948995023 17971511 885577674 15081220 219419552 547046063 804245756 537940196 31488534 677957371 563010828 469490866 257987110 259287432 135564500 195095686 632850419 677960920 259475933 388500994 968555961 919811458 377570604 613441528 535786984 150722596 407264765 63434891 46459997 131983325 906012681 683530193 63211210 439464744 296576905 654477022 626975270 582538820 849732819 594244058 879131118 305698988 707332735 740628477 901056018 809930091 590942888 991254096 281486841 820482963 646852345 653641817 836365626 823146047 677834459 389788546 567900285 172268086 932065555 171425532 899794821 174329686 648994148 210598331 570584627 592256886 466505533 146878204 2986847 414491077 924819252 908421388 500151593 421416981 402985221 20329197 835943202 416260354 25018821 894531467 592580173 581919843 917880286 438954319 459091273 184790471 848646826 442579722 459192768 981862290 83984472 107982647 458842135 396431649 105027598 614504528 402166209 808680841 630600215 711970327 157619832 75031327 130393698 645887953 880637414 925100821 628658348 4012674 552883191 675360823 133532109 671309113 67307370 862198775 283446854 913321786 209830323 16456614 563535662 488961697 449889172 972126392 628347748 432865595 789726968 616519005 242598025 689919597 721315258 27856429 307035289 193893050 510983779 396035107 344313250 110590992 235714236 421556494 786271548 821766401 953333310 350017044 987013806 932688576 602696956 93580488 878952333 564913498 511202628 838437896 647567945 121089971 622349801 167074383 74508264 13302026 441495821 134144390 820267807 422757490 213947181 104418800 86260949 393959839 141863515 5658345 404267120 381879076 997155334 235488902 626297360 332963225 694081932 788786771 736466618 381852084 423219049 597397072 262596365 367995298 430632284 647020568 212867268 202747575 156618544 863491352 874841853 865356240 316788626 620583185 22238820 358633956 475353564 722249751 935852687 94342883 270662958 365370461 806008844 753817712 811846075 9942029 846312855 559161587 127571764 263467941 717062848 971238955 840278982 782499999 658453988 814063922 374375633 639193470 430750177 561632743 768619854 802767455 770747620 500613165 245777242 818714301 66739437 928155878 990322327 982489653 567916179 541567539 619337016 792588632 585995282 843205283 689474944 858533035 79285686 360947464 808795991 94834173 253170500 168837650 175115086 533774942 625835418 517843028 276207667 600050854 101236445 502438480 746927964 396531967 333538731 714262196 691693188 339927433 11263549 902427933 526785713 627428417 886219690 432191756 926663040 740791403 56657222 477154800 738776805 238172542 960078384 884640921 124048283 58317570 869103259 118416896 581778572 335569848 336251630 37365944 337816546 955130426 399634066 178666294 442162183 308972816 973928957 643865621 24683633 869174310 936299569 7919473 389720176 763189774 114107023 44566476 895402387 29175585 416392637 781508704 299341491 200645641 902284660 19023644 471338922 8899378 28800169 322031078 761204493 574071134 219785077 184011680 383896695 460148047 756779820 460659593 307207898 230857938 878321081 68304351 913304371 595414044 284915981 10816425 622436104 619035737 306960867 683847219 285615108 909134810 900122305 531925843 688034450 831112787 298123153 464564702 569113721 341642233 3358946 861126723 560850926 145065300 915782769 773330916 682402481 1270243 223300208 281777984 944996874 845532516 120558528 533864132 86844305 992428576 333220934 842338035 748187375 466719908 207410371 919039103 309286592 760638832 270394538 955276710 358684043 112835785 647078628 721939988 829500143 88220681 108136089 922052692 255063245 437109350 734704034 929406302 485253229 893424462 416861414 522681299 350286348 870808865 949815107 603283863 981933082 966955497 434474735 128135098 968071582 913218544 89836509 101575359 653239876 713984735 86887076 128797531 472262531 279184450 497100432 577207069 248485249 398577503 249443658 568820523 582871001 827168261 570405968 593348773 946334503 258732466 505273654 644884858 934395993 813703861 858790818 641922279 29633152 161044236 680324801 858587511 77878551 636245445 223378904 513910529 766304469 99039893 898154864 850990911 26612060 50892784 646724633 649635178 297936703 476818944 820082520 769523977 399887047 869474663 800768644 50833531 151151408 977206251 400967317 969899795 893638198 550108416 141463004 638995198 431255725 403854292 889335857 599962368 930797770 79724526 485006642 126306634 212246700 525833521 263379907 334500281 938723147 566592996 160005508 176222467 570062488 189578008 555220007 833492798 884534659 42625391 221300142 292766022 545912177 422674840 721468614 719788688 72061613 901675089 270552115 562417100 689031074 33808492 32640638 99076457 933961671 456177393 548689862 458378206 820767028 226798992 9316776 329475844 209082716 101250817 574854944 6027397 602921509 716515313 89449569 345471800 90939708 403269735 235248084 21723937 79871919 542514809 294863936 85380305 424649697 562670696 538860355 151549677 823675032 117623491 435202581 364021109 473480894 563371001 236467012 363560438 833034885 877364460 310677753 624514623 863378324 524610869 40695295 284934521 386872994 552560478 189664532 177085874 904252667 28280670 534880033 499256143 973884708 238711055 450845422 720403855 507175583 994605278 317721950 1001165227 964381146 849484904 961055876 780327852 705349073 913391296 920946736 281958347 741986893 584098294 465687067 55253490 844009021 79110879 213130148 713489377 356710977 765703472 102000305 701827804 42382797 345677672 717556442 886640415 141049882 988855231 985489751 606810243 593586977 746436235 661316812 880581660 321567485 278502783 192046859 65039720 542564802 87862217 774972257 773100340 948300795 118609205 366422879 645681343 69805990 862374600 248623357 167780574 760644084 862970775 364226402 265801059 229172938 870428517 577746830 271826995 635027622 483594186 691722214 212038844 890710629 211050079 876867029 581239703 632299255 27957779 358754225 323866145 518527233 415392641 610467288 125069671 561599028 644865405 469313780 358829004 622016203 356263130 674274129 287691558 464904813 338239891 283349890 947224517 706862050 615530408 276770414 115048965 614941064 199960529 9286680 288620649 560678493 523515212 582399839 837966370 305733863 541430462 809885799 7913448 79740203 1000999074 259056559 942372503 148251696 394795255 367176120 712386405 951235620 198632556 416216870 799500361 137314108 395848475 599720074 859824828 698894199 71152685 1002188405 825177632 401282801 500697390 569281694 704709993 491196101 540088998 567961707 144603878 693130733 920775859 776071449 701576351 70877459 758339646 14093704 485649503 613652723 828080724 211503592 893536510 676819228 774482659 286074542 459094071 614243730 861282692 385511404 505389455 287741604 752239027 449266013 343320391 41034758 688583034 412320129 955453081 652037048 409021206 527200774 527876116 210034582 498637447 447556319 645530965 689881337 274459472 744079766 110101504 182103507 266503776 589873886 59403693 985246640 262244822 49412178 258910871 400552576 410345052 245965982 23214754 468706378 158960382 109946332 17205569 951564906 395242590 459719880 81455707 157790075 349751433 969752792 54633228 559618676 988991044 53539281 248105306 277787679 405626229 473288263 873916038 906838159 903666335 332770399 909064660 660661277 155025669 973708479 155574344 201146880 630821842 727420916 404796854 601150333 124509679 837779906 517684067 643152811 537779536 500776835 260378773 142561960 174103577 351257905 290149205 688326144 949294663 872525756 47491063 318682930 555929395 614177795 692705128 907219959 565566043 497137681 15380196 818744160 619666843 537255195 353432717 457438142 358723669 242762454 798479753 307531136 1492177 405210456 479253445 246865314 173167161 940600908 831487208 332638664 621554711 181279713 952767188 536360681 836501866 341809476 349624917 952808997 610593133 412578186 205524174 319137651 136059596 947994329 858492165 288020121 197923978 602389825 856955492 785730334 536926344 887769070 978972438 190895312 392028317 738251676 341776080 469223493 660502114 73777512 507556837 161565853 33607143 361331270 75859031 798031944 35017272 617595407 640415005 974166335 675201524 951210826 143121335 596006234 505254674 9521453 746406382 904604591 593061316 102787502 591237822 5240975 206235395 688137386 656454118 711853697 364114706 516033611 636919811 121957456 818294134 749942262 743365999 319161693 383580929 476254841 584775124 922875347 661703763 969192446 245032892 603700243 533268877 976413861 945551056 532148674 767125105 762361277 910140521 20024453 450228530 113061575 528429793 465254738 376521575 18826535 106920427 192621710 87015705 179413730 608138713 765099203 393680710 403727519 506711802 1597010 491450057 221400014 457432519 831939573 337733933 429381158 547801182 600914920 256871276 285531768 606956235 670017720 699959170 560551396 535948813 351040035 442557964 589030838 229607974 62394600 820045160 453514262 810719087 504240966 454142276 283916374 375596470 673609114 500346304 201548066 153886144 475434531 766553411 419521670 396596805 773301650 862449683 526842050 890144294 421813302 560167929 883075835 325365550 353925436 111254329 423413884 925378026 521982428 393118237 921465738 611336394 951542876 942033526 729105188 559400201 706704916 673434881 230924644 822931060 339959315 302234755 912749668 594982089 240851265 210007638 210949925 8230574 206487538 961185484 982670284 276311708 617358073 433222366 305731942 460312466 320904225 345853234 474665977 117774782 101001475 673239039 494515693 476670845 618967310 116115721 58423241 772437484 221990978 550037916 875934678 286939406 747740990 235348965 264306319 493645113 729587142 726667885 734991426 585028751 164746909 822336619 656131168 14687506 122743860 458014058 81506812 234861413 217499997 654207730 603918920 593833123 732870233 814296962 378077951 409638172 306551395 644851759 765805843 642628661 391689270 473014032 364759490 112452167 448446867 904352001 46063471 864483751 412282024 565550461 383339840 324889422 194894396 421060909 533865834 180528445 244788594 432974956 139865019 642378463 950552275 397341699 899699447 254056137 273131275 529022917 90706423 162845458 893562156 199611257 284044824 948596559 626016083 434673196 733670731 950369614 387192121 237716025 6354083 373095675 411412132 615046943 249522411 946279285 584414106 685964800 959402686 189153140 77836203 238378725 189081666 725349168 144496363 642019304 186225156 851709114 340833074 536008245 790419602 718317343 328627331 216152639 831853746 374379666 184531853 613668731 290185201 582828629 71866802 250865898 126330643 87415053 398497352 235764867 159926981 145853036 481912154 736896836 941958901 675813265 54461694 778442564 273659171 314306375 452681739 848443950 948553291 918719858 933429479 762681193 531261832 345426054 413167696 547102918 49803445 836621927 961564511 309811045 337529797 406048408 501438909 951093663 809074154 462258017 947531714 869295949 158678646 186118297 289016321 320241915 722484930 997163681 76177350 110779692 496055862 963201510 528674964 117494679 639370042 203920288 309521543 34585305 873055722 349871668 991036818 856523507 688580475 677861656 488367292 263423762 486044001 789740880 470790327 910662743 438396653 914520862 146249299 578985144 863692788 978158930 52148437 939599868 873403189 306604328 908735166 293119298 717948675 828504478 286732146 223548377 580433208 516413494 694826601 462841295 679342610 270821823 224246954 467565218 168753001 879351415 122450199 988777269 55826854 204143850 89583106 694467897 226516453 460653648 373461490 486736222 698036116 22248972 722430666 519527152 221157690 716441963 187268720 776196388 376058264 679013987 341891225 749058627 94609866 176455649 428921223 242357918 116496791 964236813 823862877 463612939 766762023 804453819 522552856 762511985 430295526 413826597 650700688 924756892 406277946 483139381 909195173 348434707 669858709 987344368 853420057 494816212 625353710 403696214 716564280 354733728 126357536 110544372 628357454 799342260 436013535 278164288 36537632 248297673 103244258 845886693 768675211 186123533 711511868 41336702 93913234 221136735 768952482 675695152 69744903 485349473 950312662 979271893 680368889 945099185 555760834 377366561 396055231 952609135 66654573 897172538 391385552 276014094 54974247 585304637 426965608 818742420 492399491 538792648 460675229 81307931 946160018 801470033 544398905 303400644 747192000 526873459 495384073 407440475 952314560 913215018 855251691 468479813 239225075 907768493 737795664 348512023 551829374 276982831 140237419 983704318 23778947 850820674 929850107 188971635 713738143 258615671 588728987 972971138 221776524 972728866 876184067 471908250 625934605 48261731 225932253 820992731 444256499 669514196 537087657 655672830 432783941 148290124 529486685 220793926 221543410 668650176 383067266 862196493 25244058 670479748 557457729 919317682 574344545 375548128 955453391 246633098 811640881 991664395 853141929 981902968 90249076 262540558 593958971 7330683 841502627 201080810 145786309 837931137 695560699 422992507 566679861 704938984 791717037 786367843 645462472 633913216 871327568 854511199 404410443 622761286 177028870 219140627 63802591 531317968 663108605 795017560 813485692 9223043 2303679 889872236 39557709 915823323 432355800 968895637 195185357 753731022 393974986 245412475 695795089 745891098 239572298 835521698 620178410 585417071 426715201 632195749 744379719 751629580 637191596 277421786 20912799 899428372 997240180 380255842 551972375 245341646 540957019 789190124 630388057 279290794 701460236 430744580 641753615 64929988 312971706 515124742 645069505 797238723 292200756 295892547 927581642 673754417 465603229 469442869 318272643 771933960 818785538 936153561 626481306 297646300 923167517 449659452 645352116 169947070 299756604 432045601 201602296 740821228 167318418 299442853 351154599 844224177 978939733 147728435 624438762 545659624 47527244 960597425 807745628 659793649 672936801 476570200 908567549 906494818 656131566 549281153 731979424 316186975 210607559 829683336 653243297 974899830 749037614 690820281 131881610 781216120 55050892 421670953 610315606 437322381 734096048 670859461 4939279 836645623 103746556 473789106 712152207 850229582 751364602 839835836 893858544 382885992 266314010 959034162 436668425 864136789 805217554 734112921 33826576 416907097 707554464 716113210 769386427 467505449 792598243 417379245 335065089 421746783 496243966 938008283 849017985 747625795 930481199 343068081 851250815 243765948 991468374 562025317 706066810 478277954 24221776 367310589 67443847 107415656 178353937 463267905 817372617 993939406 782905830 758678043 63374845 196229873 26368363 307700915 202304781 639964430 136289117 322785921 760989534 567601724 807102929 978485601 431781441 739337426 799186140 37226557 824819312 13512619 388406834 612280183 236288091 179030915 455462574 417153970 593096187 842948544 625444189 926198140 744128103 624423498 596960791 51959124 65626071 216330950 715653180 780017486 929741664 629372447 505063971 80839042 403672358 647592198 259439027 663727920 364131149 25413607 440104962 279060435 60382601 86953275 321853067 919769787 128852097 70548337 565372573 24533688 153807973 370121880 530982045 499298149 355081906 159554679 826169075 860271341 337616414 784443780 869354014 280909968 571310884 397976010 967832017 551903863 875030133 924616372 837635251 653259925 401251169 270415413 581637324 424074364 104841872 720211233 945576966 168316661 917514064 251071019 162560880 302737350 526530733 663635065 362902383 731156132 934343789 716367516 958904606 466873228 815510504 301976958 33509002 659740214 142113416 45962480 455100833 561801224 661207651 751001208 333136413 809447226 858752893 558350867 565536761 553535090 734272201 3077713 995768481 282767476 318456913 646876133 577004491 91197566 419013493 757894990 946485081 133902677 592913723 486496942 347429326 746901106 528986792 869296709 990337545 452730489 555789795 607414427 582936447 528902096 185994177 983197809 615561821 589112203 354409653 847521913 786127865 336595554 623101752 149541503 949260515 523981602 970290059 206168004 961464421 387627588 389882120 48164210 252554306 565196430 278946068 877224784 710035196 438741820 28923437 398546508 112577865 453120292 642613637 955709732 957658237 695824788 777271265 918102572 796802534 791111285 248458700 101719837 165692247 72862852 754683132 268254811 479926846 107272984 307533506 802481154 430302496 58177016 550700503 933892902 545215178 421774685 394019594 658467567 212788257 199959002 565793756 284299325 718518639 505985383 984224306 939999607 478954938 87978104 557337008 191746731 629637068 774820155 591311796 334080138 211719171 450641187 817738077 24014208 654701105 469029020 688496854 770244381 640113127 794936189 126880097 250689865 965358625 204346525 996486023 353692781 126779186 453396194 791382692 854004853 366947429 816561714 11993278 394247473 975959460 954036971 451372345 145277738 851505918 442691010 906504987 573412478 182583293 544288139 269444779 416249975 163422187 393075672 87509869 11165723 759525524 912481277 525270993 340894865 220283146 287610580 664060147 880022630 392787214 879528428 643296672 332070710 93638166 740763413 957067746 201188418 312703743 892604338 219489626 913774054 293112739 255137883 577986268 185764146 395334607 43994726 703797485 776273189 988564625 444237793 716605055 179108273 712102530 851108585 670626145 521720066 387634845 492463842 39583900 864150391 737149955 368558556 845011145 894601402 430331561 201906910 311496308 536253792 217100131 747974495 957188484 835050413 98447920 764723001 774532419 568285594 749962483 743659265 977212644 981885342 54686299 738246406 637965499 667106747 202279382 741665743 747434960 810969480 102884560 506429932 359266017 871378003 451385767 597680042 583305658 82225919 186646489 786976261 394003694 868852971 764761958 509706986 452217495 723760130 3072947 569131412 41380748 829902055 876108220 977663274 143860392 203507145 926763712 172065023 700130206 480041472 207670169 113280320 446652657 717436132 646552308 269053870 615141617 874963214 875182983 135726376 598062072 291926741 599445890 740984403 469382324 564668162 101376123 991497739 815256253 69521262 853592536 410749047 76873229 977588564 651477968 965189474 629236523 609933987 881126610 725887160 62959844 623608699 113955474 867645657 690903659 261056951 978995134 753906769 682385531 136948912 32967236 458673417 451950646 485099458 292675953 780002722 948596480 759611679 678354553 334863742 538354419 833707057 368989314 812560612 348747162 460478787 69893437 276511547 623254762 834591988 204784848 909755463 137633388 622915561 528294959 947378465 164811106 892358671 547019825 522652997 914320070 564645590 835708954 314754349 892593402 276374111 471440044 234322147 824649979 859487158 785002432 129118059 589458642 840333415 797715664 567218763 275020953 716892096 717856715 932645924 174393909 934614519 656192885 527573834 558875130 402229390 446959272 194075190 353689889 82105316 367278055 280452978 522022856 218564792 517455903 662959095 409436529 895991130 534448641 101753439 440677140 659814548 196000651 656917300 812052524 914003082 271671925 362109488 296253344 464557585 374487842 223869417 17989999 604032290 347328272 960073029 110073466 491211801 636160334 166765282 632601628 819974293 993463436 960880982 80576785 965982524 962680801 183518914 423838202 578669859 934907103 229413766 193687994 63140560 67790552 479118818 835395509 383071316 35109824 69901513 531857764 439238700 766754251 539537927 373545337 135341827 778294603 391788950 846427205 971483762 476632114 75382827 298665489 733576811 468897761 571559227 293227025 940311833 747353730 237659612 199551706 455888184 931636181 517481742 560614939 869859255 642740425 211352171 225515327 299264171 144044514 939025122 169248148 432247096 773913187 193379594 370863986 25878563 301950924 205815655 199813485 313564188 74731619 361743549 277665519 206614382 252398831 188139961 566451770 932655116 544777705 735319967 756500448 588411884 328653125 886390521 645196475 560087654 788110782 554150982 341776887 448548030 649233431 530291557 802103382 141623486 546522234 760816111 354084726 249234301 115076577 985131035 370782727 886012231 996079293 468380424 330391312 410649369 482818714 553277790 386603993 553433060 370873836 871912498 521188172 225759230 521823026 590525645 838587661 826404016 464977437 293566225 631622932 922633842 772385355 367399434 9147711 115395038 145842078 504748973 753399906 945392714 21198741 94968082 508586046 150707317 147516657 83639945 795442313 472570503 190613898 696906099 877572155 38382543 993510104 459490167 94487205 656586051 831141082 945012253 595439849 136326873 947640261 734444981 685641337 461908151 55769463 410843342 683087009 308943967 589668609 539747082 884517711 582044661 661046902 668712324 852792450 9195854 552305923 678784443 920427435 436351406 791738527 973565510 139997266 584481765 23573368 855363458 774767539 158670667 734338965 824373775 959087858 785033277 23985231 707312111 267537066 535879475 879792645 306727936 348449971 245464712 576973808 984540936 470881406 495062409 60158682 804975848 139797707 682188360 671413621 809479378 629986023 269352220 47506012 542153177 786289618 221824595 771167558 751890642 366501613 831266958 977706288 556650978 333963914 834524390 373429085 697372857 579460818 583695154 37566339 838701311 66936353 457828014 677279054 986940080 745658106 920702731 590779182 253689057 458729328 591107325 940752292 662463834 950803836 613514800 129498818 391724418 779845690 199328331 380466466 305164782 526849421 525224163 315683794 529146486 518478357 346535018 660695352 389574932 173723124 844188543 987393374 764452756 553454508 732336919 132620626 479073992 684311440 761561378 628360405 106782320 149181744 357004802 248138871 233415540 817460700 349941259 845004405 106371852 618109588 87406128 531277766 579527030 996616729 673442682 788311256 834245446 700308918 544889107 338258693 869638833 379386093 639440470 961274798 571938875 839814105 873273237 484584198 592835642 421571011 196494179 757095136 230793732 782001763 877767979 917168340 530693428 356708691 536724759 65828028 231969178 254033290 649219934 828251290 804719583 130578070 307641649 12062422 782624875 847562700 825039830 366381240 961188843 336518634 850571560 127886586 303324979 504005570 354169265 427842743 471891787 126534169 564121091 301118745 204336681 16258248 922060293 941979906 784488414 46527877 693155032 577324606 373868080 335336827 523098387 472811274 317304848 168035510 848723722 496989196 119480550 826228556 302237768 308756633 142488143 467294548 32919533 433761412 79718575 331929294 982183445 877818792 847213746 148008187 421699779 505197492 430631678 704422318 462115288 103321960 448074550 26521034 174356880 921381496 141491892 432829590 898008237 825005890 512062835 290905883 570455041 535331201 254966360 131796818 351067051 899022612 194220677 721082326 443519322 371578125 710961768 885420381 678776963 569460190 410120407 459949409 199185169 748535997 904591286 741912785 453947894 201810136 231216991 724571412 707276034 224992941 240351611 770240992 53998985 552697738 812893242 286675715 157492367 623122193 431349340 284567460 949451947 944026325 816101216 608225904 737175956 781347301 75477045 397331433 298438103 379591654 80061423 25588851 819776550 478665258 88028231 247908182 330272037 53510829 313297405 661288968 186143194 359411699 522872473 68650321 323135743 86108996 422439336 976463861 449709757 313654680 347953604 356387093 957055940 790406488 611191598 426906734 707354633 901536581 994759494 476633449 359357544 657677474 274688146 101649848 526745716 526764171 450313277 450671158 119582762 372480141 104735013 206190386 700745118 905798200 245281132 528604805 965422266 255436882 713890318 501361067 490057797 439147855 665870476 489824588 380813454 697056530 200150533 730048190 767633467 157575853 99146201 184117805 773409007 718776449 330216121 665718429 328932033 185571188 876930291 809591790 250244613 519025956 456036559 218537775 349789824 313503774 236702910 773188904 169282475 668053958 309300697 597946415 46590353 287874973 613364484 564021353 89836331 882388362 131339510 123262449 233626194 559910231 66961050 439500600 887779917 720674443 635338721 799537509 506156001 189549876 458037516 350957044 892508323 260673789 877690497 33016689 903336822 826686231 396810643 461092390 370509247 78502866 916648029 108566488 482428036 15824549 510065160 536891761 768950621 445149487 86928355 799256353 515606973 67881125 698805307 600427214 397600998 269698143 11991203 379810478 32917674 47048867 498568289 966234700 85567420 636962370 973297442 270340739 737806731 41165132 795137646 701168850 214380611 579794742 90496111 280787013 870125951 624921403 934518842 924414401 172790754 114171109 660912863 677867602 254429239 827650207 304804737 178096724 236678617 34951313 297459196 158145805 121779086 177222043 517703464 137090330 863805726 734219247 242017121 753958094 797497643 304291347 758916397 712454934 331665418 272336993 668142016 712694479 406043400 496274850 635121771 91143495 91037617 251816585 242796880 984889252 434378346 629919826 470315985 136311312 106638958 934861624 926805230 451564400 650045910 106308892 950518329 86961272 912707667 717828388 378447005 449546128 329601436 599523404 226978725 632726427 334178165 524711987 990263172 699087915 87870524 309126394 3054677 969879065 165374948 311059631 185027031 161291071 972635965 265511882 662284463 294432769 585380823 853569452 546854916 766968588 697367759 796320674 36053864 80588931 950714033 520225802 670078572 977055302 457852750 91538279 432518430 875511135 41770421 402277181 473146340 89908102 927831373 569081015 827006255 180338582 357135849 261332193 950994201 891567379 121780268 432562993 552811750 896891453 922137772 707825661 563213521 769203280 316992153 547893272 548555285 323024134 518126499 547282421 322870775 627333180 757751964 461618749 356393977 445723028 309456587 392113608 320706744 938330629 98985109 142345451 848327182 136260844 402247691 669916016 766863819 206850676 990824635 411328797 24349483 573701387 350633182 61670495 487442917 604157806 795448125 982400378 47919794 460354541 99278549 826378478 683238479 189399674 101997644 951498061 264647520 649245657 856437782 233912823 997539454 955716743 106050698 89412239 241606864 287715373 81272936 223485581 230717722 413243761 633734037 168829410 365600019 135377188 285976161 425264900 38125072 270791692 377777484 420031789 982726057 331559678 921977400 735022032 636418215 238004337 914477533 319294263 431967432 657367497 124710070 763784284 252006290 154101714 335140122 645977945 285099174 84960021 80625266 645262960 928208982 516403783 498981866 87068000 573095460 778341294 158055337 400526526 652669580 662679453 346608315 900581265 475661368 658046331 853974633 532690069 629201864 761536466 860442100 717571000 782138713 400145626 344635397 739911486 914790729 968896555 814840050 688638311 42725389 890841776 905887798 411715453 916715987 967249352 416533790 268246297 816844297 11986545 685730758 221397077 151902224 688356604 518135457 732213078 963204155 162751420 78592350 622381578 534577169 26127612 403600377 585735933 452825048 358450899 344459956 727934076 985058821 218331689 158179801 37816135 845685726 967970694 13805040 681948672 49986843 186148168 884175620 637003798 705231691 197846536 207062937 934453055 501147960 871412985 354042772 362469943 566386432 563621609 495533175 101041173 672682049 554488879 901462255 499670542 18400673 720420962 239714834 388530205 972790375 202485430 635435044 183564762 25652427 862706736 491816055 870781173 223147493 567978252 361478282 631026597 639005232 337821857 139757062 895688731 699348883 5161149 542368464 84439729 492481184 554972856 199482119 239033436 352269490 783614575 327743268 563592560 242807184 548681028 139661396 571369677 178117963 881956324 686756878 79016383 58994815 278800286 709737584 211182024 538392916 244648504 832103605 815620381 878097003 230042759 898297910 434998308 363358596 599494723 695781816 790080535 677189193 779996066 586569868 722009569 419762508 902103763 315178636 155324352 51245454 466955453 596601317 335713480 632745235 385894677 637374469 81872750 707969942 617456183 799699538 836097223 552068894 237634189 187346434 559982760 197614293 686653772 746887567 396742468 647528785 626977208 798422165 992377520 537335126 599801486 192782640 435256903 984521217 657210481 296634758 918977831 379101549 76115965 153704397 289769924 722489343 487828650 781321005 307578111 324525224 346119042 131354734 799767489 347705687 595995215 281641367 350939997 232067465 478471743 279319181 965085475 376758436 488447449 760534452 590684514 932505459 912945113 665636269 157962671 452555872 796291888 595725628 643504385 512263277 264073750 274018283 322847816 757538636 327361903 95108801 409389943 572675919 144906388 532956128 850274585 39742765 108358629 598385036 731250670 721682564 84804419 416088199 677130322 171924249 38476683 347032554 463565085 991205385 424059656 489253710 947280440 633369856 555618786 378568665 827861350 425965346 947725405 326135374 901711445 91152767 793809896 678479520 147042203 105948654 584863803 148487188 865603667 555868004 309238539 499303244 600158577 283145028 618309686 21174719 329548621 20080843 458305111 303519693 229846196 486908513 911194838 131382790 521394191 231174503 945268077 280261158 125279762 979026199 720260889 660042423 736004145 864895223 365979410 728450193 645254126 687253541 48571061 373003444 426471301 723233134 60260387 62463990 524677280 623700983 40071135 799215509 927568926 35477824 520292397 532125565 589903484 885474518 871981431 450664723 733714283 419766213 673978462 132504965 955568074 900211098 659620942 524957834 788755943 438888332 552029552 96873259 933916427 898826555 625880248 281361106 692673654 421089630 244414799 978071793 735960153 70354538 916746429 645622972 771807889 269639048 116863659 583018281 688439370 843390105 975993033 907852931 223247306 282922953 149954731 615900433 479842867 977606461 255263978 834956077 794563506 366285803 628309597 284314435 30046621 722351934 462717212 881917804 984337264 558996178 946412201 571951415 518117238 666751475 140185811 767250086 539609894 713940190 46027012 655790494 344990623 590674066 548121159 766108697 242876516 396915862 130878078 582367825 252935992 371417270 964715084 214538126 81552544 915111438 809097541 765235957 730432123 726375753 311202463 767212102 353861891 618244103 749048597 4076145 427165298 732383237 42487145 180318456 812430654 247134354 808224670 365094709 894852549 605889179 801403125 215048466 20338378 237310819 213962819 298582036 839287659 868397119 314538585 722981062 40673923 488259178 822623313 78544963 268478657 517659012 316022067 839797859 331806796 958213701 565697179 565686543 456735331 259830512 555967864 22841556 873832895 362899494 197915312 290202362 146416643 226867534 771470274 612423252 239006261 345482667 350325202 587572757 573903071 869049746 195612623 749212604 738394002 608207958 875699804 567396491 352891276 136648180 725301357 303841049 931766114 788880625 85780752 716532255 121195119 323459629 99258021 143733883 309692986 330648844 770280315 827768715 652762140 699729974 704578382 757132678 756101076 974049872 824047510 973908736 326253833 239963822 713239408 73249919 458369974 275025709 844513215 250918202 358595437 985955438 780231077 165128449 358103600 707677637 708408621 469607460 592286113 847959124 428653643 555176771 720119019 44950578 294613298 268049712 3365811 962177223 253112620 577876269 214332868 916819477 226628572 983608119 457239325 765208861 194589693 417643443 521494182 13235927 319724825 917475010 324616578 961392620 426724235 935087779 720870932 164176501 264111927 316136258 468506188 260866975 490090740 773505865 695967871 519974751 299700302 431501077 314490958 485148219 435712131 812549216 415081059 379497499 101823458 792489600 55664522 342897514 582820753 33087994 409984272 402764996 783648397 206444442 89875012 882079197 702458067 691280681 425946239 349006989 589170495 507182687 502045859 778725823 872054139 957384898 281485943 897910821 776182856 452379566 43457833 822496276 723666600 223188008 458647628 852125254 336263535 271540639 435265887 164457229 970629257 429268755 639179502 287915375 688136233 501323213 929627649 245470374 678393008 99905175 834330189 849749798 327196153 472029532 262645671 720040488 37327046 214794890 756587874 264178780 492993841 579827491 951112890 966333510 951884946 315775434 487455416 690142952 164972643 938306763 306732881 328847524 136396836 860463428 94520853 453566120 433038814 717346620 898382710 264697034 980882967 848568492 788816545 92363210 742409394 826525194 343664114 97237031 42697657 684992162 709118819 364997140 556477614 394827008 354919612 480917136 773793374 831156007 813615653 379551870 322493247 757607461 252889153 216415617 431238550 106919398 949111953 683958514 106531450 961308697 720268384 504868972 800448231 801798860 689674122 504777140 646529058 873988643 96137965 789413999 821703442 662073677 840151737 173470823 808770244 821342328 162572355 452356863 901975220 494128937 41438947 35851939 24377016 431601666 75678631 543602186 215797345 176610504 723134746 5569889 947809396 474000211 554207897 424132547 554301423 381848153 488420344 678530083 147068915 333653794 962024975 403646339 996143328 1272466 624078213 491031374 872803636 340174318 575341851 504985458 218802695 871466605 361038390 255655159 287231073 839037963 333595784 419300949 982889266 155035470 2080226 844753416 348997557 344025902 922402277 57600097 902529300 878526744 406124766 305441026 500848428 955999697 268589063 307026556 989395548 787910444 17377770 810070385 672922760 616180544 126833807 953793751 450639085 802182046 471073663 365570640 717543164 234393079 945753248 546149677 193974900 313051587 845096501 937993877 461121098 4132643 135475031 478903518 761286117 448023832 35769043 846465027 958623763 812696161 377367667 65805058 818290427 529756686 743395285 754982449 198779235 557653085 218179168 482020332 883593433 615574279 196248507 49715225 555744588 693640909 413687064 826004048 553328787 540870111 746904764 172216247 220970768 220009928 939679681 444857419 419633808 728990694 959921454 311240938 374555623 266547750 21424847 824595977 503618828 206034002 868676435 252883778 814835277 724947560 592605705 405311970 828855625 450113867 873235521 453689064 873163201 271485898 310943557 537670328 721116489 921413155 684656865 118897158 608899448 620654015 51644686 410958419 53284324 983219174 533402081 480232891 328706568 548812240 420627072 656649220 82999065 400815686 548381557 728349309 856981242 228937888 862236734 20589333 331264216 105194242 342066793 828420860 974396145 770500645 376436061 465922411 713119428 314654474 164189660 398574529 253456975 351191978 914779229 147724915 490511743 631562964 279910770 148603597 754616389 741717937 678479889 866666759 633845849 719343495 516939255 517165341 722635476 103992334 480926402 926157324 181384733 660106230 2990228 847198883 333275497 740042538 267779949 180225649 631647568 781734014 146686685 587164536 603142072 533647222 755135647 396458487 959309337 98290466 155508042 43068344 478239318 945583860 407322216 693729054 127571418 832646688 113630505 702893708 246951363 704132024 175238601 507600306 828134035 926504377 717007943 885780540 372379607 372621131 649053169 573231814 411541606 663296340 62425950 724111813 185028010 499808914 622238205 67716412 301906976 314309376 902188483 42153951 737632642 678468539 23766821 119337742 827699503 544467915 490921349 647865220 545669920 673542177 388934744 782010632 496867997 405809147 693470032 159665283 912843992 62059620 895755083 19157425 607827794 696470605 952613287 271682801 255064191 298287907 724832676 737284632 577954705 13170120 439367128 506306513 312933861 220843117 132593633 31986755 936773585 513804993 609501099 407864669 447190885 28397705 22706876 775943563 964968173 428714568 264234273 630788738 359911803 685636127 846069679 163428488 972892793 365660562 765796578 119955758 578975340 354562763 65718613 228894102 225696077 70171175 388146042 195001180 559156706 10263810 806938566 115339430 722546663 232828265 338908314 244290520 568627040 207501258 833009307 315296304 186414936 334094155 591715889 24573288 338333902 696235957 833151819 237017899 807926491 488425398 833573097 752389664 244122297 847197564 438883661 194164869 653789972 283340528 491670533 784135918 757052652 679323744 922426409 347433667 341161774 130749564 541925155 572182867 822983753 726771290 752106389 507583650 131439774 738155887 745408793 2212041 948656334 648166275 444455341 244235464 511404738 601921269 88981545 474222653 270094258 752426858 653586157 75372021 48513126 294315519 324732456 352087188 183593364 60851978 522149724 958118842 468030754 391684678 389250981 822251866 341841150 696214107 656265940 985959579 884863375 387410437 984344751 298700909 36325134 995029773 26422768 889636255 384033460 484869754 230656705 800600950 13078938 457391539 470145504 673630249 981546019 217528862 939527439 201097531 963689302 479111545 812361570 559457406 649110084 801832941 890969236 980755827 840376640 666742408 917827106 434140801 290013562 471110828 544423737 705569595 461318428 787727314 564182611 753093868 468599819 200837276 599901564 799162438 78893822 899330735 43879583 612099119 859227889 545972334 792358308 917380741 806596627 487089870 397596139 220024860 576431670 399130733 708425352 855666106 111600162 79898216 670743451 54145476 666928711 209358992 548145689 24265667 180241036 645133522 960776524 922043361 724623759 283724096 125626505 787600415 392387185 813996272 874669288 378415656 149763317 937840408 172714062 296521328 718755795 93473217 587786741 336670678 53172389 776253970 384180928 151597417 405928696 235326565 716153657 238899062 78240235 555200916 804760816 436566547 781179114 600662340 911050959 24069149 376853628 70789173 942684863 38459303 913787806 74220875 120003663 351848107 246408626 978271696 715288853 369770002 38774138 177096606 152605521 23325772 671834394 998222157 832629995 870110530 603398313 211188401 496071749 350289614 221668415 101076142 952905560 267995167 14901377 294301506 141747570 281482196 887584457 992325995 525681980 345584161 147229083 587957886 362596633 751825045 54681945 201032051 349986643 795192639 936213568 993252256 523514994 918176336 460721480 718256365 362667663 802194863 400139 230709308 379215926 384525685 892410683 90618070 237623331 449470871 125760483 691434144 588833877 685351947 431801627 341028622 723670044 234250191 354084105 717671277 665203662 721893746 535639307 949258568 579430759 378201362 229699213 628259099 689400538 306676731 47534169 752877556 925775555 339478260 578819921 898910035 817509148 148763689 662325824 422601144 633666087 142834130 89738667 873234875 817839328 902133443 640776490 553994743 26646250 495495848 786335531 459746791 440498964 267468670 41078673 246001313 325470274 735886804 629803444 754716164 880788451 533664184 174562647 633422033 220416311 686147856 137508050 581336916 753934016 866301885 788195937 665112306 593270913 272285304 656915301 176755604 115176747 46050524 702729329 622913343 972765771 424041061 755527815 724339746 418472116 161078324 563105513 685853225 716499978 177370663 111534488 33988052 407172895 410430782 702126075 23104598 999508319 659608001 371977032 777990154 613476575 401670893 657392789 410930726 88446161 330561826 370358166 372386641 781771835 101215493 634509189 81924230 516313967 213681483 946612108 438608022 117194591 232356900 9857211 459218529 704013010 450779948 974404861 690220888 804145127 435554362 889294328 858764281 807106720 45380350 454089487 408031926 27858940 767466602 882657430 123447102 852427528 284357808 151088472 707986793 449209307 991303766 489059530 550896029 270430090 390749833 870633307 76298979 884457633 679762505 808646821 387409870 60901526 849675428 933419363 467405948 857521620 357678480 732901429 822495697 32577623 484236481 360784567 745290656 394303007 780013784 504113322 552650733 776861299 805430568 529274864 581300602 667529590 32277361 26678541 6680235 354584467 662548868 800686767 619713521 382940439 435014837 266685117 451699464 358979006 943135691 921127031 903515697 82614280 629271348 456129423 146457141 953402550 521922646 574503294 441270138 394771702 237912553 823454236 415955655 289308123 349432675 275488414 412453769 337649122 400228748 951223455 214047839 993061841 97441533 541616225 501021992 252279701 721022827 896686227 947638565 797196827 640167977 287302225 761151981 522744371 604845378 559893658 635237650 253912412 935840347 447430263 20064897 425727128 893830837 985040710 826315198 79128112 886376427 319847478 192035309 862362852 145366256 824443914 857857157 651487680 31198816 292684551 422330841 623132726 426879117 426523481 515637449 248050167 812775414 627986488 820986106 847957398 922103943 738819265 147783677 273987042 471705128 318407191 47708314 549343115 603850259 610121186 16398524 1002372811 563358042 607505580 562983986 315834861 894914503 970016779 514254031 80383855 944246809 796952482 70136499 325430630 1000418432 259136748 158167515 64926069 947308745 80650370 282453586 461249851 30888553 995694106 168387010 277501106 480285003 686624533 960233563 565491730 278751941 938871592 694804695 477244260 746527216 533526411 180833659 90162852 756432296 417684694 980820390 188324870 560756871 917642652 809572590 844679126 812169482 18569158 635752255 868352527 137095633 801769939 78685309 173148937 285152879 924569217 387599106 741121377 484266953 846948482 255209457 617494050 752595556 426583303 708474816 609688755 239470381 885852666 456946707 138731215 608729510 641783978 248403709 162160725 419099118 412546267 118198275 985363518 559111413 809526888 708629425 807239777 669309908 995841868 903128216 174588560 789684194 269579350 420026418 267753192 424602781 282533973 4829504 490696540 665397550 523864740 614840040 750267351 372650671 462304840 514336855 810131895 600425053 59497841 571524333 104694023 173891737 931256699 770549269 94610854 146861748 430393874 940343721 329538681 389711047 493441089 425171234 996308121 404031145 789921811 224851224 316496136 766971530 84729887 938122207 46438687 697778963 112349978 114929525 6016890 699974584 576161167 73781033 756638507 807256499 572158929 268713296 11019312 794027599 578923246 860075194 885827123 497282275 83320929 535137404 667775029 635424384 504181065 237944957 357065033 812902521 733988735 65878608 721896213 658150464 11574545 685605351 44827819 276057605 640091352 704073899 133726257 590837230 507963571 891663187 806664734 447821392 45679768 378529487 268037645 315013376 391041780 574814437 273755582 396527718 517010671 498237096 36331839 899226128 504632334 38787899 957875063 581500607 28581086 795215235 968392383 902749551 331988706 421093707 954071594 964400891 713598065 625658321 225483659 786150414 889183576 310106810 527897921 820227191 758290101 526541757 443585720 851374708 80463531 278032674 429073476 315398986 614000347 536244609 478037456 274611959 196613215 335853500 22891739 722652022 628080907 599161449 346076447 659087907 501471718 473054739 414863349 502212079 161910817 434969187 109930991 898154578 120206221 683238274 148190299 564810827 271565916 960317127 91802669 803577497 146177970 160105176 762405115 811397848 527641540 472622020 947527301 930025996 794538723 140521794 118870028 472711392 941875237 618152978 435996049 975140807 547894557 691657104 900450417 468100973 648675608 26205753 872778097 909849339 574230383 463619351 556963856 680584753 982172910 314955676 197379232 399013884 434564255 238201213 967717869 955564734 689581835 577668781 258635804 286819736 839092127 502007274 642476538 38443755 485271905 508168990 53096637 222305681 402923116 949577390 866124855 774249166 52382161 143629719 46187186 225461697 258411260 329936005 991876874 706259025 122856037 808552710 11840462 336580 1062719 886118885 273017982 399988433 302893502 783043953 571713848 283347832 634388578 470543394 749475748 54124955 481780911 773201796 242766921 762206022 172386521 652760816 486195473 129825696 345823475 496556096 149728431 351358390 674088487 859316431 95883023 819191215 495801166 124796751 127855412 713733897 267447224 640941202 563144459 723763532 727449174 702334662 504249031 588771979 38931206 7534635 42142344 738087995 590543828 662064783 545551233 906017991 696576563 626077833 434129470 524283922 223720477 179974187 337632664 824418229 944073181 480294019 263468640 224279708 819118360 468091931 882029198 270589893 759926519 233092484 534258417 117746185 10028939 328905469 816933435 120233592 838896194 187427737 138544069 854625700 553029211 989772910 750205788 179977485 297402507 198927354 717571377 699635318 962123964 203363433 286834486 378777574 306126010 212738371 672216811 339157028 299983099 909981323 527829248 13079088 335370239 684064384 989320023 383112272 725590948 406828199 169549290 167855002 899174626 562404442 545977613 557135524 673460868 767699401 15319273 454186176 263745828 117947815 807961808 490553165 244537976 402717036 77773307 634810927 660980449 677543682 299172819 118159491 328598775 7838777 248874400 56571621 967870212 131615829 417190898 34645167 105676449 488970105 705713174 11390315 16338743 567787615 147879971 494075398 48065349 437297932 883570954 450826896 435186463 974788201 507521506 255596262 948225529 964174423 502175742 725317228 931394141 48096219 147511156 73534947 431895204 510587644 722524814 868363576 958195567 521572830 497198398 656897287 550627764 979654694 791631645 692246613 193467974 895773884 787559538 232975205 529298467 42235719 595847374 661808388 542560386 531380264 465860114 207803316 1001873801 362618855 682983310 403757245 475127628 815640240 176035310 310226987 112009450 223851888 927545998 468831165 591241350 375419320 157072024 506760792 349880421 304476274 112787282 31349983 173405686 237513209 216522853 899256986 473063765 720262388 317408190 10707283 830922483 523987285 888913512 110118084 125829826 517345011 778541228 621315127 178011205 226817425 339284965 701687831 317224520 159603308 521200749 227922171 972106962 15749403 630266341 138518526 74652637 234629209 316039427 865838197 638728292 853312585 620125882 187451212 167505396 329467394 191365279 578573432 251102062 887494327 47803841 920725725 819359985 543604175 237138618 813741944 792410687 417792818 601476916 792627786 409725461 527201274 49850319 181815008 190141532 41488151 320905015 44343980 593966239 931628172 169834646 123437641 34654864 977782619 635560818 611761244 513901166 823464104 513297762 725621603 944867068 784184077 381075620 331705820 819573200 909448220 413698685 996620305 979575429 858171598 739950988 163563731 729922579 946178044 180216645 331660055 714897677 576499133 109195055 337868615 919655275 915343764 61031818 897240962 99793055 70903091 824894262 705476585 302918572 199123885 217009538 652297223 535488901 143283235 547803615 280078508 293437749 793924002 319052092 317821899 965269424 337731030 757389298 675550370 518227011 771665396 732955188 206777973 604007658 572641586 667940222 941755883 557035726 400356910 63602164 893960061 996972712 220736054 599664195 553151809 192355840 631691766 600266914 31025687 47505522 930143194 836757114 920620035 663549175 970767396 400653612 302861966 276550689 679864558 399272891 670981269 183187458 414222004 834138068 530753415 291440420 693347996 218245946 482104899 946477523 552147413 266721985 644275530 385508625 399303696 973586594 33258670 172744395 696711592 859983786 898779601 450705694 620449428 742961839 206093001 939732466 706517064 594431327 298863263 98230733 782236858 304395217 784572079 490191655 700191135 400395154 254655570 744881246 329192749 977247364 540259550 570758658 818435830 714521780 226920834 592858201 210223271 275436344 994269711 177424023 879083444 109805581 465306414 593250412 607208642 859107560 460406722 746284003 249363067 249475138 842522307 992650120 121611516 407195345 277803490 566393828 932126355 724588264 333086511 501011615 205711435 561476897 369122233 950631969 680134572 712889098 71666858 20156740 889261489 269755969 911610091 400517788 813098180 159159015 221409535 28819110 255119741 686016032 210939758 776585253 831578433 560617773 240147289 785306944 922301665 636187242 736557487 652902008 749585352 604447599 386857588 403375216 457262460 719609863 522490710 453719774 181069665 74663821 999914756 111494507 90524625 835926547 272772572 971302030 880077 871556933 908573399 200121012 985167356 293135268 796491307 779471837 511020403 660104205 678497052 906805396 538324434 490504897 853972109 845635690 303514943 792270914 194993569 703896144 960402309 412746249 575664117 623790957 618712864 602481086 611012402 616137143 344589545 695320387 205292626 715938585 444848935 212495789 435759829 622620854 1001730829 618478155 984791741 581572266 604810494 794734293 792677286 59537886 13847125 235320730 681302769 936416016 508460267 903182521 574524465 74818128 973269873 207229628 510979257 862897540 728323277 51828215 718104709 179235448 13593690 165864466 253876052 377160815 210194832 100879686 502834023 613860675 36577280 405743719 35379780 371416506 260165660 882299884 424381210 162675873 694019908 480309441 332328686 898328628 894593313 887668944 343053557 930806939 413283494 329766734 418076803 514544831 204605695 191802369 628550732 248761821 246995709 186422775 173448136 660380317 593505667 118747250 371855726 20780181 175418609 377945096 707786669 210646525 801811489 1002200894 344909274 523947649 762241275 409822321 23535400 192876438 671857001 466900214 161610539 45158942 406417921 367453209 18442432 861645089 709729351 82830686 4506715 908844597 351224970 456549000 575352524 179297386 63367884 212736566 717307553 762665144 424098430 370162757 302810830 955660168 925998112 608653664 618576490 248403642 872039849 248290105 146030093 947956372 19552697 636153035 322539402 239668901 804338895 760931015 471345015 31032538 574461197 851713640 703698401 804617471 719240113 273693146 829614566 428781148 547311376 188446681 197001858 344957436 753403026 162014341 937461789 533725893 196431769 246449652 873309822 548058272 298637388 488847518 907033891 7729367 993822400 270834001 278915156 174246091 637985769 289197982 514701108 4373444 330625049 408017699 110672014 715326836 943688833 758380972 212934413 446805662 240137963 968738816 297237808 962221927 776273384 868571488 851733510 657055192 343401711 502881942 306917483 815504002 681222969 941253989 540973483 698803497 850865229 649223575 23737814 252109051 102421962 575354890 410916303 848057013 588949766 145363550 953853150 880814479 910627071 96556151 158691857 893244135 237085215 276016502 584854924 876054526 845633034 21277295 749080341 314210510 42600342 941685196 1145452 515391522 619576451 925042535 550166455 875685768 194019960 878137375 472097388 444482042 816412092 711804552 537844811 546478047 744510829 591052162 570919359 248696650 443546997 875205737 508936167 142215076 93866931 438926294 513624155 989412467 372101360 192018014 590673616 286686882 287654393 38488267 961209727 585828337 243512469 264146769 384560536 280491556 770834148 867255583 77404492 941373055 677910126 799060800 757587204 404877794 269666744 729921700 202600037 277608748 689873881 348278334 557201764 528613201 493579592 750940720 125394185 21385221 696303997 319723089 483723243 871376532 547724563 162770000 577135989 904601668 860014793 638929025 102604636 414816190 357480719 491122902 470955054 775826075 702499407 179651572 156057498 661987743 691450868 134012386 99160085 640075502 680191777 780374418 316150726 4421607 96992827 22411454 923628965 764791074 490320270 121674005 162577372 1001233843 913351512 757955642 30729389 172463999 130221452 938463838 671885065 246808610 899299844 250748943 557180248 937336659 671078562 742174906 171939257 734341516 572893988 208042581 182877146 904908043 847195040 384382607 165303507 439167424 233825290 173877802 601395739 31637304 786049851 700279756 311955740 899311769 556590845 190559179 609190816 197267973 109624450 391509583 647193320 737983619 785889698 976324893 108622372 60011320 899225909 625337346 399916686 204824117 82952928 459941602 258254996 653749554 586658950 535364851 464662879 519828128 58499879 432530082 867912296 565326241 486788444 311140316 481092027 849188324 358424660 59446818 173025857 128699332 552446803 252561017 774146605 544978918 67688605 572298633 867455908 394757357 396825290 264118739 108697653 730750546 906187356 107237539 944852177 525031707 917306956 403081895 913675844 802547587 863836966 733645602 376400969 127362763 272583035 131523342 562502344 666703697 418983075 842812969 344614995 610154875 657035810 553445441 741762215 634204797 198481487 222501551 858768699 538228770 936392589 237417060 308288486 280828142 899557521 921829103 865568970 245801672 632750596 277579338 4373720 61757510 821987397 185377115 629331308 981319028 423296366 481634620 56842556 681288925 76273077 281562032 597573663 229781644 429493926 592222428 32587721 680318758 88298893 735907532 436604184 416676534 312028618 845430105 380387941 738342228 260599099 382165883 49370990 198214056 50186567 127287880 595522243 10073565 891817620 350249239 564989199 514916364 594630780 943605891 570106943 701178061 942557316 97054320 379737846 850720743 553107323 820737356 101123512 403271488 189522674 322718921 221354270 194884387 542061110 803526381 455814408 585974266 703781446 481411010 625218658 974982910 121739547 53111203 498991048 925700774 209998196 971248371 173482119 423416061 527196436 122309939 180125675 940420965 41213658 573982889 453493150 367474647 753829050 971643939 349077648 221923714 677664819 76663951 629905873 667038507 417864169 378824726 70384947 953137210 618889937 338956079 108043281 957742870 896695067 665139262 702570296 851137726 102539523 29540260 397280741 346095047 754931048 142413621 999808488 510239139 895740873 173615744 901671914 784095627 661671317 956017233 308917100 204799913 855019731 33610792 966228780 516054867 578189685 590679534 977615736 791602688 223908834 179349650 612189132 754720785 350664608 269300250 19046775 853212543 442004173 553580209 59699561 42294293 812503747 509627895 435185259 540198780 629049786 304970558 569261127 667620232 627236758 15458908 591761930 673104506 167390334 279379054 105473766 474712293 326105900 108207363 714487411 10520608 943662030 411874322 620355432 940525561 702301778 359010040 36765320 339694834 56127580 759287620 712734027 935280605 1981535 427613104 487605576 563171985 663816203 363470312 747324810 978662153 131173124 318861480 858903948 481435624 650290771 323691388 642674173 368945275 156561889 334085969 541047682 853865353 743161199 868691143 167082016 355477159 947289464 151607984 758186017 377247768 117402884 428874232 166142615 819604035 230179153 880316540 943416598 745103164 990052057 520409008 312950499 190235912 337503915 626932390 601604076 86332951 455677577 219978432 965230905 952454508 121839907 850357039 495011119 723175441 101658874 687586382 543783479 750916052 565583823 299974520 729003862 198379338 927373150 325555437 964087266 500072325 62362803 578849930 986182498 180093414 356055641 804266836 662669309 143493748 319786616 246415352 605730707 703804985 314430899 754188133 887152991 994962104 785746501 581784476 424031924 443454147 391843156 2796655 78492905 544828381 40743386 355231603 685686935 889341116 178652006 626694884 500607252 691455125 153161346 106648381 399656711 956426175 778837443 405634085 224795413 160504661 436678520 631834247 528325950 632149423 130923832 801816514 106805583 658665102 507867862 809238075 817668192 755355806 109848411 85945173 77719901 13212510 145594066 258258481 640015584 912681161 408790927 499756070 944249075 293395090 721497594 464201815 585765913 842193790 771170743 97571363 606756131 880601524 452376815 752581458 211215526 77250652 229197327 120930957 566949281 729568271 877684111 500724709 739942827 610117607 812740609 232785636 808007875 428990188 682765471 592488490 458422778 545878255 331412605 555017222 205271745 191736128 333447892 781556850 697511193 132356498 333579214 259284120 978517669 143579646 499930259 705574546 546501900 861166427 110113504 250088673 634243824 725406863 37130653 488759657 827976043 234577667 410870375 28253484 925717639 882590475 204427930 996169860 143799917 528258963 315935848 502988792 121496199 334089328 620487025 363062120 48542860 506226692 821789492 897159489 495830138 564809063 286708123 338163604 857149227 185398184 926663865 30322388 777148858 835583298 167578347 328678542 228073602 748018248 828762582 39200172 565583937 719595009 102720870 197641150 620218443 513727335 406600581 474502090 908238456 759923918 126547451 409455559 552833347 195122629 67075832 751975214 901735897 732109522 845439136 717176673 369798339 735841319 185734048 374046627 341016443 642994927 745375590 913571990 505633721 846175785 848551432 781804103 513718874 868507798 981382040 54369524 887855218 179724352 813429556 784146819 434416205 442745673 202262368 324170504 891616349 983472243 253315123 208263876 402875788 45557480 74065446 791082089 40515491 238447126 596899984 864942045 640681967 522814808 8688998 194997595 368579382 705375615 823454561 543532958 837275836 906153607 444647879 586931467 930450743 633200366 796702403 959276830 629712686 395467290 433120179 934687164 58712873 672634547 811498059 771262168 219349189 897897961 181343858 344996579 771354548 381550327 277467170 997369171 85013089 647839815 591941525 373219533 565727148 497500290 476367551 956583105 277486331 945307420 868293400 854710402 354041455 690527293 6754960 23793268 292173126 206441233 349312816 123135289 653777070 563386874 564066559 693007312 569768819 801383168 694526207 450701266 837217191 46607753 487197633 878077833 993034838 721988205 603427006 312446908 52895482 797252891 475493170 324802398 891066759 902962877 969895409 572624763 320529212 365621833 819664294 186340490 827611394 682694479 534293411 559176542 755451104 395724636 647998883 623983413 937709497 410414474 781633599 493657029 1000225529 950219622 165473677 686104717 536006714 133396615 880879696 331290750 22815650 771441289 90091731 430784404 551054398 944096375 604231213 215962472 842522383 853283237 958537952 609979233 389480437 28648638 752732502 258405828 354034409 641767029 727228924 520006619 346387575 172008801 594618015 497191757 825310937 406583346 211927910 388185694 698291747 18996054 80761581 380240084 863875576 207109488 912660051 789847941 663257555 549023406 971485572 961976140 985346247 426211848 267860570 350430149 407220412 224496826 482539908 266328130 174948265 755851977 195941418 336084327 36224362 29786428 117607484 959728859 933320857 649568301 450820588 156861893 622511563 167289907 380332131 961054509 369894333 832696558 708998366 490500834 785038851 651930960 355274769 653329618 164678511 147574637 976482993 438392565 850289646 187752837 142139808 677996289 102325228 454207814 692076484 920062424 750924779 153663484 574862998 304523758 353534687 58844096 134708047 816243105 240412727 761563151 802864015 791801636 895967306 74901654 842625167 615175061 359484093 251967458 240187963 158914060 325528216 806825649 288030598 877242596 870150281 106078587 500875135 199233061 921363722 506612047 754058999 226673621 172785401 923387210 826357900 148058446 250660563 610069710 99479828 41431571 698379074 258789560 917797948 942809165 906796497 703117178 559790604 618584724 873197154 729165222 344159782 822397058 202816158 25588428 252730306 808535358 321440624 516878859 206501482 593151551 822531787 963462443 976460757 885945376 266147981 866340810 152411687 351321448 74472224 689202472 473941340 55274780 821851264 424147996 534439441 7810907 443413631 33038196 970625671 364202383 582592184 713645141 287094392 928012621 118922500 358693654 651818817 24562311 584755023 643415520 515455074 40206205 983294447 955463950 204776020 682116103 184846251 858101324 484941492 34507480 273425723 111755677 280864429 983482888 700244229 116984460 65796608 943133314 238302113 653311267 914853943 190394380 560185829 933620356 918468941 159619360 183864876 945910517 755816417 655454343 177741630 106421515 559277348 822211186 593671702 233575006 443000535 823591370 48706162 304887477 75594085 841451579 777664834 44318476 516469647 321245157 197866197 699996225 195220454 793384752 533032581 472696135 74337929 763863251 320537418 152533009 857036417 746128637 636873296 852126767 177867716 581692427 558583110 437620531 713771804 188410295 640569181 502119254 265563873 16568790 154122601 979480214 99356135 170731708 370375792 318831535 664860896 981168160 389471147 71924583 82420776 435367198 413552874 320388358 236109396 168958867 490776795 864371111 304686324 424329626 582132459 367996279 811545310 870517506 978963339 623684119 923775806 960508044 755101299 42968316 412715648 170879752 790494251 40131458 442446672 888084764 899397622 333003538 314926917 602668224 229337174 401476043 517978863 644811069 997994278 186651194 212826997 200381583 999461660 564605443 93701889 18284346 681615454 472465858 772043095 915774566 222584384 28312564 502073676 648034876 313785286 296357123 914869141 785574508 187510248 598759074 72275720 898510045 263503225 169947571 879721778 780937333 187426155 688937546 46175276 672483048 502653570 57156864 698076762 786582851 278148877 957030816 151503773 986557023 967040571 403915794 627537967 1001863074 143733820 505891836 812817400 230983120 741848946 25544155 410816490 252948175 604759827 335044340 907048696 794550542 279950626 662449171 861624901 53321170 928683370 962413245 465221966 414970004 102375575 143417612 507650353 750322507 754407237 484983914 406896956 414033706 443364361 99336551 527479754 1482582 850310721 438667228 370402214 681143876 166945602 151367474 733239964 717638390 932890072 476729681 188788055 986287166 269384757 810958113 81414714 797131446 957454301 41371163 289565323 251808564 217386947 694063582 770150678 208916295 183884799 373240047 742838795 599277096 777256886 447959200 157005079 762101496 585258041 26453582 351265750 444730699 738086881 582895228 357695496 688279024 129885503 496604794 121210944 302016604 982350122 734252117 638045334 348410255 437310346 324532365 504730486 526946697 93737024 363442467 533541447 693364854 766738524 365540226 809421888 478527147 529283897 784417760 594103646 168006553 363331901 702395440 951883200 204804845 766363793 551334522 183692952 667563667 914035477 540375666 766245338 250351062 154920582 706485602 588487410 4607109 148640899 169768739 658867851 465544824 857973377 640257458 835507401 636370463 744431952 9159421 754357143 616298517 821041416 764608254 279655981 272525910 697338819 354991105 278636435 417598979 136726786 617034156 232530007 584319301 882970608 485927413 970233800 912009911 582789543 667014258 917415037 571048074 993461202 830915 180548703 336068798 571260521 386175664 561590779 814947839 918137874 815740740 448239600 410670852 871319250 492334807 442537853 707956133 796447212 968754832 866563537 447266260 304150344 675507330 726388890 847288039 303527428 717954495 435029015 736906860 895661614 679166415 804155892 632986897 209716381 40747732 346967945 988945446 307293677 852562258 976616477 335694561 532304256 720428462 719049570 793375052 772595728 593108945 451943159 427058116 973023136 119251031 376198461 145258615 331400549 788457130 200698279 646602892 951112850 867677023 490082139 247085654 770531977 196556144 177148904 851006169 863050658 237320403 791237529 405264839 349345605 249633552 400612737 782951643 353398111 153722951 475818828 36839819 992207678 996296462 176761312 871345763 865923460 448654461 66079378 201575143 470100286 739197225 958839471 199740381 744727810 860557730 154195505 260632125 586477484 84725578 129270642 882420200 599476851 845448794 808622955 615364877 699836529 24232945 593474379 413024175 806560243 58331314 190685896 896518498 703439428 33009534 761771437 455567407 494722058 362060841 910530858 230871397 16407001 834964968 130754518 570034930 865559701 451465430 557959516 771619467 155013591 761848960 487867426 146104926 876163124 538369967 146174974 700634033 996459421 784180138 412541211 545141621 779731761 44733198 266126542 958074005 419567106 924059851 84945031 330619065 581489653 677858981 178351203 527764196 267204574 280278647 838201660 718802450 401726788 485249695 859693041 74617497 288578114 817673193 460887359 682249716 818071042 331734787 551702135 827841996 963930545 680309563 771889817 16377863 286274670 20675958 983475837 964500480 515259122 203013924 586101121 121055877 407984000 443491287 610346976 936808148 819977003 345893273 676647902 742783740 302717238 948173987 684086628 471088747 295055606 894960934 57981904 370649047 169097646 634010638 608477402 985352228 559950641 527067064 10418320 146469946 792958325 426029565 180277530 676240391 397492332 742735260 801520495 306088560 217949825 392356382 311689888 77656215 48625147 47033418 660034055 2704519 985486569 564743812 214094017 509324550 49101981 141748694 44325962 597043665 850829724 682021290 713290991 650312779 974924759 55642608 470409135 859661335 922836711 790355499 295857638 673595161 408814300 956092979 215920385 972634585 371250738 977590488 747439145 762819282 755348651 759521616 781124791 758889502 952332921 477730438 861244824 153189762 287644072 468543339 983619986 76868891 341910692 93293645 203702825 697243125 446826264 713713076 117718434 707475954 232923010 95749122 483512266 581771254 733401169 333920692 747370848 971314246 33404449 880570154 712395523 650481275 625487438 294470412 374788763 651878497 58094341 688673053 187307570 86300013 311035519 451073522 248634549 992858866 373805099 826811788 447204823 793637596 648695734 18012316 185313289 865951037 67839882 472864037 301875483 704150149 236423334 157240204 643986111 638861652 581184568 764689154 296116976 205161244 624521852 933069424 49422220 425738283 698549324 45936694 677892973 192205504 549827171 385728660 30626106 414692948 829923243 58004620 31486936 623517077 259467518 465492073 274970146 593585667 80422567 933095300 7939222 1001908214 456081530 938974645 441915497 988187551 623711244 246417018 192871796 528113322 669247881 497810827 323204080 870537467 356636434 479343328 923322330 780115682 682758588 421664769 175312675 946447565 344736668 775759364 780104663 689259171 235079735 438453859 962767111 506523410 309912566 218802166 57563928 691329807 296589197 141047878 985129483 915272146 392011517 548027471 766808091 292584078 935566349 960811194 259240493 335243930 859543481 202990038 46377364 720700202 816999646 737643103 236191686 402564250 792258552 551266462 754422943 554317183 712714790 355078845 443673218 978149666 9862429 487918977 765389041 587569095 246472171 152923260 809610420 614739342 213997201 802456002 38450203 847981939 458394342 124051411 598802262 735551550 89800853 303523622 457320560 147662247 46798816 963026835 595196106 365009758 385394889 236773433 236086390 970912572 556623371 95797260 448254882 403547629 490449977 315599460 19094792 709172942 621773030 82640367 567726771 832791556 943424277 92173379 107655505 308185710 833590146 971837011 924351984 578640816 336197038 313742839 531164330 513464779 847442836 988564511 635276070 34711095 29911260 76529332 850720574 208397033 876363948 841977714 497101994 771454796 258287478 741312354 254252432 826804995 507168685 727521614 802454421 252502280 724367293 212021109 238198917 7507678 383380501 151439614 400038825 361153856 467901568 398551644 861292384 508072890 968235401 111015792 333479897 327963575 391054211 132579137 815992693 702609948 113336781 162662954 228949102 737800764 617985009 974272007 428549569 983085983 354879737 858737809 322802137 359021131 682112439 505794586 709502808 469171895 829729808 344030383 409419515 624441436 157986071 350140201 885208108 5244633 404841360 698842480 306185860 552236573 123508289 939560472 398461333 188548791 855038062 772776628 894631019 588413111 340722112 58570877 789493573 957838360 528268290 575411598 751447144 925519452 1000570632 167797088 455434478 748693853 225390578 386329100 805557882 957184973 541924193 216026182 625515038 638064852 550807374 510909345 406002272 658994343 387505327 992408812 342593444 133582871 868011243 336047559 92483588 850425439 238838715 594541449 482512525 917714286 803112593 199573885 801121723 871005305 939796633 794649249 992659379 876161651 865899832 360400158 897627926 399022958 105386968 264932123 159379640 210243960 636082306 981840851 302493097 449423240 695754852 797847600 20859447 251762010 645251133 598627683 252812544 731666200 227017889 349497959 554172624 441274575 821581104 933453884 872854058 29087861 699053797 239515805 663010820 198489591 630484319 298738165 869140080 422537632 369970341 475328280 408339739 636110231 938466070 588108766 368383712 138650812 725713284 967797457 520606014 669494988 666397778 526413345 219899284 451493322 252804079 744210321 872598068 933461810 884386597 438053767 827851463 106640339 159943956 114687078 521935975 796453772 277411599 55087894 800536500 453935522 413808156 436192798 774530152 542346963 299109005 642380879 446815734 742217092 473353942 211180224 860195534 543453038 642425263 822203274 291322993 226050836 780832317 383476155 98123346 658527225 574108543 914543936 494917030 5159787 708794998 816409 903671904 372635547 421281779 904599600 400180647 114884022 687693885 250459451 486944288 144804934 597641439 350360250 138926974 626697759 126207538 695385774 718914536 743867374 184070029 666343999 64857809 953581754 472228923 330390021 396010881 38340461 990567504 768979228 317358951 31277307 843932618 496037279 443010626 618956397 799570553 1001767077 825795371 746241279 758970554 156687301 118663231 790325887 204777888 209254814 250651306 679338966 600767018 940198528 193063633 400206803 155830016 525905441 337823558 500487454 248764732 929008820 425329642 550437367 984939122 665786229 483712914 389843439 311947117 970455348 387324885 695795639 112361133 568591421 109855840 88020038 991564300 667047640 98677888 909238848 119353540 971745816 194334268 422159680 154260966 768044403 302456313 363398403 347389065 21034061 952844394 597083900 364773948 563930868 332566620 454206925 315443221 874694409 497795277 28039910 732349911 524705737 677632060 521035717 962128411 995739086 724894117 469654206 227025033 402074191 973266077 73248252 224202195 122762483 604129841 96195607 108410538 582585820 197598366 547024433 693391223 490170724 317716918 338564207 460661522 270791156 425308596 870418644 505428562 59555580 293600923 163580710 789701636 28023539 585684700 694130140 677985857 902904787 901186478 39955808 820113868 383397915 456201504 812526091 811515984 947829851 295123933 752616132 720027238 304313826 456989609 652805341 53765307 301079864 90336257 907834668 271311114 636804470 335826179 628315873 350373757 854008168 983035827 316139334 959787589 806473307 433715053 435052549 639200388 377609558 861860556 113430303 851074547 507744927 8504858 128313789 311190543 510135888 127062297 879979924 293133118 686284161 178269656 625746236 645198125 607722405 893919600 689104839 922582835 427104091 759996506 164290468 235877794 681886963 154483624 390588366 43833195 641242564 361097921 43449117 259136855 124681637 836529548 730561975 558483832 299861076 810170320 317935990 610240577 781988451 386415053 570565687 638914940 113499839 263438701 228955347 883034684 591529592 538057278 485289801 633442109 661096272 535396496 670496576 957813526 148937343 935610990 51818024 475742571 863789280 132279409 349815387 305485797 287060829 200829160 468172145 362501441 362303483 281082581 138657351 849179574 159511419 170518095 889812436 766484142 710184666 843680745 860485705 377391561 119348501 72017686 499123064 753597365 579210241 643863932 655709808 903970755 585923652 646475045 84736978 707453328 566870121 960917697 988712325 945306665 131603104 28715580 593802649 812732068 253169968 975549195 481849308 784345199 112324718 856775958 52787863 474974496 501972598 792231938 747955962 457174994 361632151 669837114 825760268 487176163 122246920 168503791 333505530 500963838 311225243 335906372 551729733 999557592 371121804 647449737 1000116672 128277752 878871246 94271511 711234250 244425202 729211380 823170613 954686907 660521497 840236369 732639848 30014014 898538201 171610977 658423079 478616876 787985768 113200747 786291599 183770523 143239213 184268015 211269222 106408190 22167693 850038896 960233174 186903599 495488688 374038656 959528287 611634934 670081896 200190345 138779102 772220814 962038365 804642643 348660244 595267918 46138497 55937055 129640420 295502766 242630352 227266135 839184419 791880053 419238342 449537758 66147019 175995595 409113322 54250706 157368712 615671902 277303615 990826527 133018299 854469984 831580949 414640820 92520640 661203888 122785433 721582571 989920743 842429423 775172932 196734405 652725597 269933723 196686698 837715337 506842910 440356886 792566781 307540520 311881277 538553700 491223480 481128802 543842487 631055286 408940628 247085298 159306988 811090836 398502974 831308089 451182918 54212420 710676600 177726956 467845491 898498001 215325509 320881830 331742094 824019957 673572178 604975002 934451099 620208552 314318797 741204606 88023783 125308033 630726926 1000294466 667979816 154504898 75858407 734651634 661608623 477646898 414750938 621367686 681913314 472380329 901898200 954861295 911062902 102163648 677268087 530117403 104630151 23293206 825750449 874662091 947245513 976417343 698691760 907827251 560944927 617294338 475804364 314561586 669282285 78803075 989229115 303373995 490565833 954525794 55481540 764934571 274872622 928303517 790539993 452044336 7893806 368495337 677969642 217798879 389722849 605025379 967223948 481784052 269408912 308707573 581607141 953093554 874259718 196835082 181256892 823413012 568314472 325430529 288409324 821543358 512292445 138744389 147361905 515163648 764364042 53297598 815531740 505665672 57000466 821578070 482710162 799639312 728110987 753126288 479339509 638146747 25414507 748884196 404537935 930866919 409210272 790797450 717627419 264150146 579581562 958529977 710442934 533530004 928979854 368194140 141614609 739116577 908819479 578551910 490130810 461076767 641888681 286888096 168153754 563406436 873890289 857426818 484313448 646016593 871282755 702238082 693456311 877192448 895899763 862047896 223450855 486176826 231123347 306113542 535986533 945499563 366453734 585126578 949863318 41299893 356927866 919005452 994498856 616472154 215881339 345159440 999885119 30615814 435177083 836834490 142742836 906286870 517514615 387639061 373380390 450472941 154117050 256722597 182607986 107467060 818928597 594252738 258458744 684579245 386055035 334942633 891319343 323615524 711338121 987195759 526114591 570600632 796190156 877168793 270595935 796744268 426376909 567130443 922659356 320271199 70210003 501792715 520054934 943875280 720323360 122419896 169167167 368081057 147523101 864163362 386806768 666807693 399062402 778253699 376102607 593040450 215735256 639130946 784479479 462193993 836503749 706801550 591431958 333126604 620866035 669187485 708418039 737488678 450048805 30626996 865456938 296787763 206289771 844091683 132626585 848291333 409429630 828711577 188336045 932362674 840595643 429288860 487578455 227676586 23973401 369506221 235165317 355026802 948033223 465007832 716283723 937506377 880663581 405100468 860704241 805559791 272127005 321693719 630401578 597273977 957502640 125356068 467891644 724794394 50269683 573932034 352387802 65256721 777636274 177697813 419503772 330884582 793025231 737093178 963035451 897230111 295635614 728272942 602276763 662657191 700412517 1627069 527486592 489910734 392898868 632149217 188077363 148208775 818063991 851909081 703311970 165872611 507664360 330355620 185141055 814619802 373339533 196675589 257856301 923254132 912047313 848228327 285179110 700240375 761471536 884175682 304622345 656834759 677837567 16878542 589853087 618614710 122459215 618260724 954985756 924319276 419473522 787001631 705274501 873578145 628415766 124208104 446477552 272176822 487452699 499662564 128920018 339015987 111448487 497826019 568578909 2887874 389365526 935664161 682381973 38162357 93177248 314761161 86278188 863882070 970850487 990690236 872472749 321135012 359924431 150574589 392780047 207693984 669517576 875320759 761095686 337894949 935659271 153210341 748823863 721964567 99953469 505928454 910443171 882696626 162098696 568270393 532865421 154794855 773429082 800014000 929700345 98945542 744124334 819545108 301490459 950025861 843427691 339832101 579391566 155040308 965444489 404278889 537006484 77763268 590674522 592290561 756843699 474584073 161132713 225250483 72888764 221993169 570007899 279563609 823995689 316064229 759373393 115909583 555544022 491000432 684753592 630131963 777480970 435220147 989381066 187550319 136544614 407663099 222696806 931760890 110687653 553135345 153282500 310871813 334669356 489667654 20107310 58362814 120749895 985457340 938625450 776695367 38425116 16555603 928874026 675451107 874536822 301794140 288764528 570202188 857139752 34120038 639460971 934934185 139579786 653004185 141150664 440771433 678892654 173307421 145068082 828024260 767460572 497999108 141195525 160208656 545362069 631546112 751425087 594216856 579877985 825955860 819035767 272640626 239457916 625258988 462822268 272002195 684324114 375966046 389027716 835399116 299764472 683133577 665342401 48152343 394722123 247672052 774351523 333233126 549245744 267461603 256799650 943903708 448396946 83358159 185334896 306377113 990902828 527112557 224907180 876859147 150365864 916270265 515148261 612033545 804951178 847499203 639156939 130774385 856458275 232139969 628077438 155683327 695496984 869043780 310920790 122112870 282340602 612067635 893844693 595399367 72982971 764105691 897097365 624898794 931588641 209943446 53732764 433258201 443582972 597699655 477881872 938761036 72787686 872163768 934392100 251726306 68003197 878155018 381564190 601345749 305748524 339450580 302641155 481707936 999968175 467192825 327775372 217371554 568922697 450202656 531601496 947285754 112178310 519546636 185064333 725655320 898382792 830013269 373666847 102181604 112566 205518723 640186503 217804666 752076611 511472248 622810937 307636748 216873929 194504889 444578060 289796311 840805128 270857370 850483756 350568513 677858561 511639644 490329130 716309108 438986924 113933579 610297487 871402104 921816895 37544104 152450498 540964752 865380137 782102968 42881371 792070487 785025406 52825881 982117002 97675490 312430724 694880690 750445208 853696082 740675841 230132531 756066540 821863341 691086020 903748825 387927367 807953633 725087968 297197525 380378622 468412952 821062741 606257771 507852846 499012878 441857321 815595293 925072770 554685908 978224568 590920512 233249519 320175917 88005628 309576306 551459665 302830296 395296159 567664913 97768690 485254588 685087272 803842389 124931166 32496543 121900889 337258123 659136918 728105171 614590249 943581370 25269828 406421483 71586339 598128966 410272364 153512740 902715906 228486552 492121794 720070908 675119428 336022044 834362967 432117527 183636556 683879027 229762012 51496970 997886965 211421569 954053077 987095554 655395347 134036391 602868102 534284619 648064842 957387612 304288122 175029018 525263877 127340250 723176634 965547517 912436578 682703270 321215752 152363367 852829272 117453734 667088677 176035489 289301908 2679664 72592009 372153592 704964936 111711552 368566671 940729985 971277446 906788532 72720086 5502162 560913767 390472834 43469778 271129314 700605536 618756817 303582722 488995586 609066083 49427852 567835712 68627431 805791767 883546103 652792335 680537676 72196536 601805496 188434200 422598407 285433188 559055840 930768175 472322714 153494167 153093095 91329421 463049577 124337603 682597287 126438472 712129116 705482647 98512493 880024298 687864623 337651190 727128482 366751258 134144811 116148889 292074190 472750571 288689011 871795716 399148716 173823777 13397876 224245890 638033864 894482213 581073003 195474263 336042131 731009680 921321980 530781818 17729799 926196581 845671581 126839262 751515110 276825521 516325055 230382445 918317690 832705524 214472303 386295329 462751065 587100378 458993886 858791413 634621646 64391684 947338390 638021395 698993007 403471255 703173500 978321502 780164625 633066661 578511333 380822704 264943207 19396108 244440628 937862514 73855926 950324786 942290203 253326572 495650526 639898526 792148590 750419862 394020014 461008800 408554355 414801452 898400731 701711160 446458204 643453852 941771431 411802286 386475044 221969609 524742236 615277353 127438878 598227008 694232665 684995304 187444993 956386598 242510080 477231354 207301240 219448324 687873264 346690159 517110219 736533386 678930376 936548795 536073789 912308004 790109023 844894704 563415722 302123187 529664476 852319646 395085018 798371892 51819869 482985911 38698343 914535436 153376708 977275737 170033707 771593122 606481416 64886088 502596073 997578199 918326556 655209856 661865128 269986902 579231457 385063703 91279486 530575657 344331088 183589308 273151650 619298321 911691777 613189189 832145701 712873828 410972497 683171540 59776056 852226356 816084468 899890537 837181065 576884988 774771492 232419560 645937070 383924576 460722111 837665599 991635628 482659390 291654744 461939300 263055472 830721760 498288250 268437577 962374136 879667903 907552462 20437510 729779103 967292020 274923658 510247735 719622284 613747184 594592237 584201355 972668030 243877517 359286068 690020565 940636305 944573335 538067057 657193301 774958348 746354934 910778903 836869191 302918817 270396078 250838053 112744125 383498592 908874591 453633311 810292103 173926423 784591719 931614060 315590414 800245317 619628866 855127348 165980353 252822987 16448000 826037478 441389692 971000922 534987053 792574417 890693326 562880556 115572627 981656306 505563562 409264740 315204218 661854005 634200159 768468095 107810057 32806908 313129751 749579678 199730922 158227462 433134563 975405758 506509459 422918655 535825614 145409451 841400712 906346160 821663943 739899457 966266881 26513325 958530428 662115306 410713246 198638548 403390487 504924052 597299499 930199990 742412405 755144669 732005429 776923270 444996199 332636632 541647683 801018184 563996404 232833837 531481343 909070715 697719633 211521756 983230896 507532538 128876119 336230544 521483065 762068559 965149707 444216755 603118147 102776868 364047865 232602262 294097839 859625395 499460914 173895489 262370458 693559286 649728518 717227535 965750273 292944904 891989139 940616719 752733502 962651839 763938162 84564592 94963905 160470082 769246368 612182596 663797208 532235301 101235253 901706225 353238317 741439708 297357186 179094366 541391167 979796094 403708797 542310190 399318918 487212048 325220170 48484594 116709200 221435668 13269310 975997583 975948711 145374132 209338239 285178912 603086250 430640097 596314136 205377524 719959176 563748815 277617833 33602649 809101189 971616300 975233627 118345878 355846813 426717019 302963918 670276498 555787172 726249320 186120416 780581437 970425716 668062454 864190121 53218152 759925329 857566795 743035863 239250974 761676787 481752950 728487009 31300834 2825363 52191488 127676790 602670049 999570118 33050992 99525224 430242073 940867837 328886601 180746418 985652699 424947100 29483920 520830736 87267371 2017225 162748937 141437885 710320756 647999972 565262443 542946974 387856742 808660006 86302049 131033068 445831661 914229900 756098200 716578086 705732201 918305758 469176118 66693209 133933569 782708896 583007684 654820606 947835091 34806990 682399325 727512636 470637514 634439832 360382626 78047193 576767313 665529286 938897527 104936880 30263158 683888364 674194518 188713877 832314472 259289186 337468635 139417784 689814395 115565299 479692196 187413300 779825368 976941445 552322012 283623410 327539003 404575976 783506503 522978823 677073862 426675792 524127032 861196901 865445683 444050226 249776291 545206724 167310712 549411884 606632249 216599612 481328880 321112160 390770249 380435373 598774919 434059698 137726415 603161418 887237292 584950952 449930101 696884792 600423089 363016738 597954837 217621735 677186947 164527909 418604992 519456735 292233447 708175999 178313259 287834378 795098727 745905820 799070862 199528647 240104345 951714200 864887721 80070473 704880736 186655580 369016854 128559348 237850347 768987649 464119339 892192096 246893098 763111006 937150762 913790566 183685666 487955727 631051070 275510373 62799502 209749064 92768104 85954688 902609549 348406121 488422337 959776599 141901384 350394593 223546671 434879086 419663733 172187134 529046025 465694057 563709573 279188397 177926432 211766129 394111593 197359214 728752974 446436547 796739707 717720226 762639816 948079258 875254775 744565861 540576064 659921966 348680511 563658147 38168931 763649468 641349252 934469137 335881045 273497338 351136245 449300297 822591815 78373255 237042768 347508591 114730622 634433906 838824179 598613934 641740506 976900683 952025627 224149713 968255899 524988953 549847200 225613909 236975983 35082472 207475582 100967271 273612689 78757937 693686389 479498169 38372594 92380399 186962897 131851256 313839092 896832757 57094792 535565426 93968037 704325427 968672903 791041003 145237478 266535470 916035963 853496960 796273060 118822562 252024002 306404309 819109097 992453622 113944755 454254278 280473665 707444877 487423488 503748248 409066872 365457774 683116174 553753154 353238228 802656202 987314866 79719475 479704023 1000158005 42099003 488334207 462206776 420445890 629629836 760644360 870791910 85314993 314032082 155413868 434199331 95574776 693127981 970091430 74917530 903508330 111239236 198858024 976219275 961801662 273063493 308363469 349283619 807406398 465481610 420495685 558973882 781216627 474299669 995122614 843984885 984497837 3944630 874705273 93483346 414000393 814879608 503234707 90032735 93635766 226950113 715173342 68651100 417362453 848320236 835537265 576820062 602596845 327100787 375378968 29813331 666458014 509972438 216593629 328148327 602634612 735901529 685128813 145539185 76554462 653284193 801367916 847688447 750032642 761949282 965043824 180849971 513685082 23211979 876638882 653745174 308410502 750744230 769649333 995247110 101388523 878505238 866544503 437603065 986395913 857934557 828190449 442114355 615124021 58763379 796956083 679209494 408662281 966441761 575596061 892400038 322355384 616522782 17053720 524351142 766773731 389806367 48949095 21289544 677442402 385044358 367582739 278688942 906466044 159901114 784970955 991866161 501603092 945166191 634827723 846908896 317233070 466655575 14198927 277464726 982992803 138433401 777042289 957254130 62887360 455745050 382417957 571465131 308072683 640162593 27646020 397879188 399445585 599739478 493315195 794907335 27038108 951018938 211474831 715577098 26801184 786938560 643557409 721901169 784692487 161265520 74579736 464083520 250973091 220139735 91612728 274921286 738645784 408377665 860348244 166083500 383810265 700100978 852025628 927567815 354038164 961386854 69209308 460321851 385386974 197044129 31010015 532205597 101169749 100149450 197424119 148407526 455293858 884514947 501012093 861675505 353516720 56493576 576815453 989689602 228331366 738185883 267305477 845230640 268414377 256941351 849731536 578558797 460715680 935280214 523468118 733988412 564979983 39132050 108226278 806599312 67930381 53920436 221833186 595712932 387114688 548310480 816171570 422846697 483627166 81741565 784174226 118848910 728111365 907936367 630831523 663556186 938379040 156039290 632592341 993627670 507351222 154072785 951670947 111416861 690852694 319157582 737233892 892857761 379805662 362526726 784204948 81248097 755387721 836795276 837264420 332736675 406804973 898390022 119579002 630022671 154025179 538505060 841984479 319727923 766905499 547155809 997902711 275273813 221335387 812710168 837964187 300255307 451049028 343232689 741242555 129587185 278219552 602242324 201724561 237568148 556652572 6813108 457406200 13435320 242607325 456383194 538944722 134006789 3110965 203454102 839065243 52883232 319194368 676940103 848058752 440543776 698380382 341741624 77871346 727788008 450724259 197339104 686677617 871486067 20319595 44798845 684063462 602005385 508219666 429997874 961743803 321950091 678517481 19779329 934691634 269526475 687840024 493100354 971607273 441195376 468833472 166909624 623872305 837882039 796243568 251081577 246503159 617676279 496733045 685312640 381499334 553808811 633800818 308550209 917728971 970575969 496063723 866820865 451832342 173371137 75877604 910316548 729348155 315191362 650210364 407007608 777029102 949057875 965343218 867354952 258594873 409740760 594692952 22936999 680705611 913926178 164221763 458045394 539796702 623604152 321326778 130364941 350826700 374305751 518664256 149954001 475876512 200771778 574734885 778373114 622707015 334905177 622604769 911554895 698195170 148735311 259191706 409610122 23773838 60239192 432628543 292364771 25775029 508121182 626803497 15653561 228075664 649352374 809563896 459239709 528521802 619907020 23521711 648420632 405505536 500400372 110124140 960869774 344198645 832744649 282539681 279958511 965942382 818763411 928953922 169256731 75182496 960286338 351719427 544192191 372819896 656779676 52668013 95384844 75768698 762572772 315353023 255759731 619343092 421991463 56771155 619933273 502333564 471358985 564166706 621626656 223708053 31570763 896964597 932757579 529157937 520468382 558651758 153300931 183681119 423490688 786490076 74817546 814549520 92581866 754038427 212980575 283533207 744745309 911867030 301930289 451952088 644726788 776908667 70237609 385726450 409619796 538125625 72691654 508609115 753318985 522736046 996740971 988282664 862519244 149204583 372421623 334415943 286796885 917867881 46220403 759789825 955046778 558644946 262704563 604288483 199205437 841391169 615137168 379526043 206048828 444030744 422267014 645491482 888878648 159435322 664619586 857017864 387338531 465991262 569722234 431439299 708932951 957785728 182352662 736073261 939279731 920368588 906658094 63995531 787655564 25255186 507332807 677595520 843476341 714054641 79990704 285496347 475908579 418990275 85445386 562906114 391059142 786024568 425634244 587480477 787761000 157291573 548133782 579593908 945702323 690399553 193251272 540361436 35027798 990412920 320704486 351450354 280459979 170737947 900303567 131583897 338045202 887166528 66400901 297015884 425322492 759501525 278535693 787067348 148138085 19092681 502459506 557361277 921031061 246478874 735452274 204829306 951832307 486488941 335075883 880340690 289914254 452464164 658891656 179975713 903141946 784698488 644031594 600782284 136769812 94082899 631382622 760594598 123289655 709991712 72698206 449732982 921256104 289685177 233855966 570145938 402155963 446852654 754594528 16045807 382395534 62204363 933760259 1002135425 903414040 918091699 422458404 977571507 774521778 186749028 854132242 273394421 448042131 386499534 932009489 731883267 909849344 686114301 402803695 6810436 994561190 399047477 470657283 191779052 963476846 160670751 134460090 401684127 55088466 9666029 376849517 52718114 426922771 747073860 697957686 760893278 984009517 66149667 764027891 43579168 989731020 197619038 339373931 582866645 780526714 709912888 868443548 27343968 87451760 360077192 119302593 760322513 839950246 181489480 560982921 1834217 485917736 840747933 545792313 544102634 584575349 527862159 718928955 275023717 827249753 161216369 987242376 223562100 251682555 321243690 268189047 652914418 24261545 705939668 114985869 595352994 843694541 410956688 291535683 349335654 239930705 801664399 351914341 453524028 61195541 48213810 720726673 673506 196827805 813048958 297950788 167735828 268018225 752656592 659902234 190844951 871854794 255596061 199642526 698506891 242923015 867585937 55842763 280856629 970473394 703532707 692620715 544348833 9331277 299777373 67655664 765957791 66818805 33172098 608387829 139149067 555547313 319168834 257639752 163080887 345786575 684397423 600689390 508073042 484377319 767840324 790729494 659220135 577691415 176230040 378334231 631647011 648379890 744757406 569681108 1166091 828518205 380345680 62913497 787426100 642915874 58941762 121136154 713992021 192836160 525452908 79558809 937781247 442384478 424976686 271074440 15447396 38372002 126595755 813605672 723304636 23685631 532274583 875858351 1000530004 961796511 69306453 638689775 6880118 305469098 426597859 833957990 613422975 491249966 502977816 36593536 602007947 537050297 532688567 962328832 796990949 53842961 670277910 301761302 274799216 124753013 71066706 463627799 362178863 58151450 191853499 366437159 71875590 926625654 361862643 485754998 408597217 263754183 451548799 456375465 828118037 795668242 428838621 443999317 125452972 150344790 90010404 181050419 357789738 409820482 931334416 588679726 201020442 733242343 23001575 307439855 245973728 411840006 355644194 619118846 316736492 449892740 135181098 459695222 554494602 319793453 273046327 149285880 469957950 806761167 425733875 723936732 499459516 990355069 382689728 549382502 598410610 591175409 964141036 860702628 109716868 86525306 892001689 888619044 388394347 933578083 645531889 97670319 200026218 940225290 91005597 499702513 525071463 988034764 249429105 27539308 346297535 227941447 383093266 546183655 894482421 653714314 687867953 406706375 685133326 19193723 1104840 220118362 327246953 132237258 583557708 882484772 228038468 763335401 688735264 963275915 796676261 341801043 730965391 385545054 670817128 442329883 107558491 893361232 946030340 320469552 748942043 989786750 386387776 503408919 54453052 811828825 552147020 309760473 403320109 437953589 820794708 204234196 640121413 749838759 781697304 703043260 387410554 189102281 158726589 951240470 995158334 247823096 440982426 632716000 397923236 914137245 525670167 966814636 905953192 867215223 51288690 265895813 150378901 369745465 913925092 499666505 750498678 903401437 520081644 796363853 981864403 773093355 756398654 129037951 280148740 956078333 497732150 324333066 4551270 219545219 505475849 957183016 780464734 267674049 239966737 923682910 741583301 910206815 369329686 952233719 913499779 573632073 717663044 991875413 608010582 4714750 882878845 378911124 755991341 747840784 720666952 797626442 615160042 676804808 184798095 6503441 271305889 118475473 114712841 920141621 481115106 51269532 457832154 861802254 607037088 78233532 299592577 906347920 495649403 674250167 262456782 569220153 622387159 495655226 979320015 85389554 224606253 162160307 69173841 700777476 777625361 15423736 812500303 487025500 741826069 484379788 927636616 105551058 610571433 858193773 505257542 308022369 354315205 816662403 697516091 712559232 785593360 695456627 907988713 883217738 61771598 471946816 11588644 430330320 361042392 603183533 978846398 741298801 676863963 884125566 836556058 923930085 321623622 497757657 790270733 910824022 169921921 405562219 460722029 77343263 267677572 823209096 437774824 754916660 478102227 314342643 799688845 155363232 158231113 347113510 498104560 903740360 546630360 852029795 481015524 967238997 594576345 646180871 480007563 576142886 842458794 710048489 977567502 280487640 322520083 838095125 279160756 508306405 403925657 108408483 368179145 65249331 617616590 930938691 161392180 26212738 580957938 651209538 535444514 940336 778227879 784321191 29431132 838110797 305455172 370571134 160430956 230279455 856436345 825527219 218207996 377242550 297390483 506115870 596347548 556698084 372268004 683918253 572463046 738557842 4107355 625516924 603102945 265985892 92373302 265095678 31754786 546160680 296647599 262131484 891050936 848316668 907801350 382124926 427283129 719523800 741718112 343133505 126662620 591509508 502167303 861108770 698993526 925416069 511743539 898921195 748199596 841927446 847037305 918434683 24911182 859877021 953405821 840536306 760072718 979167343 303907390 497736362 441997069 950671946 808656807 796119133 628719324 11775224 725917893 318265057 206705175 596443350 546843197 234894934 191726478 776474317 326745909 61419953 255168730 277747251 570482531 466069113 260676530 511127618 572736178 314445182 828153234 113706270 77580532 212283642 224917176 41834044 782227502 853372878 991004941 710904921 910326421 145624009 341149232 167064482 782385866 108783229 514538727 450094044 594531595 575087730 128620603 417756504 69427160 135222000 747116017 286992461 749750198 122768739 75396651 253317869 696286064 793982483 919608205 182035258 724221985 213048804 34836286 951263994 153860591 361838421 110236723 162364317 587611442 358510527 970014296 243050742 215835272 650130477 561722827 477714083 793290900 228423635 643035193 283027989 434091117 84677457 39279186 10791863 672536585 429023871 693570744 426839892 167305593 376545481 356673122 199395502 11636923 969855705 435057413 650177939 680131540 368007308 519201698 805422546 544993767 104011110 559925313 302339825 204204384 127441116 546816024 154714903 347815503 851581813 873106914 48280256 305557115 380631013 918403161 565591029 450180416 539514232 955228202 347888394 704891240 657924696 653628301 739020037 289302171 576966805 927516081 552498420 366488053 505416214 636375094 610957534 710554673 392124288 908072708 579756588 973254571 134321672 597857530 813279648 16622110 899116042 674888014 656724895 242758581 209426062 957107308 296640640 426199868 176230892 323249581 518078668 12288529 112720500 134805488 464515469 29340190 982343578 353940235 547547011 166766064 957682792 752142180 957401343 90522486 202088156 720176383 614435875 306307886 90602524 195156100 772574073 558193010 842620629 591139256 872323174 142003685 374637505 250086949 604569841 730105664 609424916 513829760 399115236 145826234 535181953 571711387 29322879 960707961 808938199 558685932 945800360 399564814 489352697 832222172 614888704 563248926 231068648 475387047 874991274 129020815 229838480 814018008 782638271 840462711 205509190 271303105 421429040 745737962 234918656 88103526 77292231 734709026 270746223 208590071 891147742 573550231 18874083 972660541 706814580 325264381 46892932 861927478 561575925 382198191 386312045 562498823 579991482 417565060 457759554 442214058 227635328 555195144 312518630 913360223 377258097 865849713 992736420 350981017 149513044 648542080 49777268 705240380 889939243 367220136 27387398 213616690 702350186 821167745 766606891 402526333 608472633 819081692 162593313 325180473 787658755 666703603 238167763 820488939 377181309 194287551 355871512 515631835 739176199 233724756 460920603 407833187 743762199 596483245 994155483 552981170 663968513 532849283 853700320 691591937 233189027 455898067 528313152 428543706 299636839 13793360 371098007 782482422 847762932 721904094 563628290 318397123 580354260 903977090 111152358 179804049 138519364 331563592 526881421 651371581 941695277 771836493 760379701 850604036 674333569 934477709 373872346 130356510 808868326 34262261 713607263 541219446 382171319 29283900 126067932 178948659 122074117 863889924 313664870 858477869 990865314 302060456 967745068 545592639 166160963 539860439 58960931 627390773 193189734 358116602 217710589 767155987 474822016 176144963 10375548 943192647 37932610 692879246 928578764 931860323 310373054 615267298 22500771 673192980 401669526 935176929 177681534 188315424 33029616 242478416 735416109 26427360 488812235 980517017 71049099 480071229 568834200 601267406 265560335 64771902 793278126 171762254 361723145 691272698 961862052 809187236 664057712 150160750 885564627 633526472 483097717 94628055 187972198 261771297 859524066 529650130 285001951 758014073 232610383 560904146 52587928 867391576 376117181 490548844 292678900 473328886 443314587 162471802 384854422 149659998 545934023 603624712 191417112 10008125 409136664 777502409 172791821 667568728 34295260 177803971 175313650 643716392 275028715 320621365 795629711 447212134 10985973 19111538 203904226 437983782 633233857 398744497 436324779 891205048 393110724 779840531 817021422 990214724 768824000 540978099 164305377 333296899 695861443 887594107 27166340 753055759 997105932 327682717 860607717 731896910 90403708 806469061 307130715 858860452 142232849 531610245 725617671 819351133 613934283 354955011 365937010 404211002 51539141 14408174 502210282 116925449 824156731 7607526 892067460 828917848 489209036 518361742 599555208 440687905 67964209 67047756 539118340 353767239 808332635 586540384 657960270 595206886 515778124 756504646 973593705 542755146 278752383 105029566 330158077 618304490 567301677 798307136 623159081 153240263 315843892 441613445 310430473 356530913 279605262 745528691 513813930 300161885 43058847 390548022 720315797 42758213 143513646 491528589 147127427 652619849 253018398 166717810 834357724 614488512 821977305 427046813 757600168 615738804 519254792 917889846 301541555 20508720 995672320 493227232 591263714 667457331 369994687 856195750 182135387 721341004 937685658 517019067 203585627 712812122 507812191 922338516 321252477 166716707 536217623 497882441 373216402 478805115 148675172 287279599 65435037 95594943 344120895 441645421 294249390 417870381 904062975 714767104 265229918 567879760 363319606 952028731 891423236 160416816 317126405 581108743 849072370 918376671 641741111 508034463 617063338 271259133 196647275 14582120 389191022 880549736 93044728 605557296 694467135 536637540 438812024 684245602 63757260 153947670 791623973 963749395 965439505 15122562 3841381 247002173 843313937 375789232 537043950 510662930 203903905 240545566 520107156 601872463 234647350 481446238 459481661 170397393 100247513 806045635 19067978 890306777 473411892 636750270 959607821 391884810 365391504 201820229 689305200 552968900 991269329 5148432 268825092 419684779 985950427 893381018 640593051 288380393 713981968 547575312 786122794 944202135 810512479 215735069 574876050 338766317 116944753 486961380 824587996 38853103 35900385 480940240 853925411 995095563 843884608 277969435 19100864 166258532 646467724 490173500 621948970 58862970 66782483 799372481 515605902 584310888 509918783 778506825 901832879 835829353 639466652 698927666 1001200092 923235497 580403944 650603519 505296081 103819452 10319301 635695508 949209931 521242870 817301317 576674470 785291651 127747017 331304556 131084073 689173258 775454158 570482696 47241839 759365636 416253376 212715842 388553495 416702598 804049211 852496544 452918355 144311137 190823383 357378380 461356509 420653886 160622774 936155426 487672160 989970787 348896868 729963177 990023486 979163190 301547907 426249983 215424505 28555167 546680381 101769941 26380266 720694702 448678970 864938676 275717412 587393252 418876470 588533065 806263843 199251759 475566331 73541888 845057756 318503696 801266330 739806172 458858395 744940225 301765860 837575944 719653670 933051248 662376795 706314998 90984216 721011097 8876066 32524309 536926157 824763463 800957675 992012588 409711443 966493251 322025735 808446067 12479224 409100075 737706476 175067860 85795881 763753283 26279134 827316339 615666829 707370077 129093984 215928871 603726039 162782413 743441099 98892037 359347734 326908403 629955876 795082217 727120426 788062895 441977270 22834717 116603310 163053723 567046630 114006027 742723069 601938895 246020014 213273080 620818651 248375103 436399646 914747977 724000893 123254102 862449551 876359929 456807328 818816135 947928983 553939441 8776297 997205184 601026449 60666735 560948339 37356438 568903397 48205935 182664451 162011619 724941033 330967118 79575480 275509126 255623089 187625714 17789296 23210563 296158297 459910419 843178617 791399140 767458593 790197016 254557505 981009435 715667821 110585229 912618948 219937214 693874023 811761979 217628897 271747412 389191773 76229390 962844945 485743786 898544453 336573947 505245054 835044790 213566812 672852716 542326869 829121517 574881545 742263084 765460701 331677534 922187501 930227251 121312106 742394878 180711 523247842 349101172 738880670 427443589 930963208 523567943 977036409 380354263 119638785 433722943 815717008 66420402 77638636 521730257 920235038 377282453 230110140 71442649 715883291 979668798 516526691 31357712 100696908 913213197 366918262 54969569 554225756 501389186 460969505 947637606 251543450 259562851 629635685 959743692 336254962 403205636 546341688 621722392 763174892 385112998 553655396 730568179 638653685 687489407 614799765 667515295 55858354 790116768 993418021 200766697 916711181 805502353 478069933 168217977 661724411 833923267 456553231 934999734 297514220 283214715 38719063 37814135 317697674 218744280 897591031 915699362 960345284 835489407 426074984 298219315 189249946 972271039 591399465 248535650 743813059 638905172 646477787 332425381 814113691 333657400 800897249 492182844 85431383 241184921 660523596 870012632 333358029 43285027 564738353 541648514 63638773 693920937 907721788 626892459 394875009 213434819 838410945 835237070 486260827 536131126 746056536 341578552 639471290 961988047 839130280 533969129 241558469 86538099 781832707 301446626 274542071 377303730 520195685 92096738 719164117 821233996 488556207 739758240 627511770 870932374 953007650 735663231 834112145 60538992 185187931 537455383 765499856 957243658 157611672 413385585 779311465 653687303 482232911 257297726 985222348 190977704 849559384 755363314 575345823 633161537 217959300 618465650 608939575 334599147 102226013 618333487 191191519 414442081 666258489 610274048 103467281 931606634 162279266 809333497 544431622 676612446 325076709 276559148 500723593 343811313 571335607 120764235 632913130 30165964 649126341 79549124 294512912 638985126 788778768 820268620 464729639 824910478 110687962 684064471 757749308 741495519 101142042 429135622 874481037 649263063 770036851 615744228 135053705 629100170 530875875 259699980 862780289 629661228 963788456 194001335 84482122 421008524 936630230 152171344 948557006 847933880 863423540 752942355 737181843 888769462 27181544 315500941 328565765 284291579 828037912 363447125 586148641 667902660 574827916 883298559 966685762 69062428 890703333 880340892 868176887 611048207 240935627 198833748 493286492 455858639 118922324 526624297 744696057 983633029 284073708 69300589 318672137 78085159 272187298 498191829 748025312 796199627 501377975 679328458 435392338 457316524 669964921 427090072 994043992 618003143 329256921 429374167 434215386 795322098 958386980 318792790 42406638 691104121 400621515 375205815 326659256 813449218 13687577 184413000 131093364 995851457 841905500 485316485 403377701 141253337 189847064 174350678 781605808 869781645 991521545 719455138 820543830 255457477 384105091 731995999 177416295 764803458 364872176 266574759 985253713 559148780 998052490 475379988 3121503 140266177 990379897 26470906 36056836 534235925 680401721 328455532 536266792 109044958 103352387 310947783 321694428 487823004 582771189 874576614 241876753 25054986 549335931 2097927 901300560 200932099 358481953 202359339 940530219 292779856 265081213 206569192 105449369 831698439 997583317 215636350 416423412 921576623 638090672 555095345 189261554 17247519 816086932 846374419 380059001 380462194 504439497 359037726 824202385 663426724 884647052 244677511 776734402 561844461 720034336 115132514 920824925 588608285 778054722 198183547 611898458 13363078 771127842 244653291 415788471 767676811 357824371 721429039 262311180 408917918 832809302 175034061 977282958 1869963 218246799 981648738 994414716 428551854 30094427 643597301 448090826 584323164 412023590 181712669 915540232 367630178 734019522 322243162 571729764 157240701 23519013 407802630 205023052 675354258 679994366 88240678 396646201 650087827 347522264 57202894 182341070 33031707 841221055 484835443 148549115 620259763 682386883 538307522 643801379 500288367 481711531 961539945 409546856 92657917 785934521 279197273 920906569 924221526 120954661 124867214 968458694 806644206 660156625 676397954 817323347 650551860 258083118 356217747 368315045 483066153 703269144 682428604 458092366 272337566 313432384 280126721 27492378 837060018 38225544 963294797 310691557 260563868 599845033 589016897 728833369 241531352 198098425 471871560 821471179 623828757 868634914 249822700 872620226 36299618 506199077 911205020 414670017 410463111 164911093 454278808 920302598 52005065 633519216 46604088 289142637 961744019 802199752 312999429 348199218 925477278 831162466 283804775 334579382 112172036 171033352 726395334 634595800 382244563 410317913 333907281 549630167 885133158 241796685 383768637 532111541 999445428 958875844 162087066 551053464 81887949 78759788 474286645 600417873 143018377 297196 470095711 8997801 899645848 513001841 204868384 211312821 797009111 329191281 199120091 653880918 160828939 498190239 397152145 16472646 295145921 447642627 727242847 524940714 30765392 612955492 788111769 807227370 885178593 207814370 971323486 962308519 538156866 609870713 624965007 556660592 554914946 925256278 172095720 324374028 514395180 968019439 349999891 339495250 816764369 80116642 897237015 258372326 470888199 498230510 395882448 430912789 90456301 524448882 808402685 618532907 432311890 403788162 234974005 626150606 107642725 126397711 892012574 885619474 77169241 437467207 751275877 595160859 356013867 120595533 619643554 954984373 486383397 683860562 673878101 454808033 261219520 14856937 385730105 868568614 425476973 32882911 573441447 69520131 326010204 244613398 707752023 734123399 278168975 786074415 712603656 313850390 559973170 640004831 116061572 709208574 562735727 950222905 903613549 1000507351 432150361 417699912 908189007 316023835 852813231 640309358 635029575 493703963 91870844 94871303 141968146 358842558 56019101 599163213 234825091 84551568 627762687 769271962 403304161 868273803 956657268 410638551 709993326 910255103 587764894 407737319 807847902 703062488 5648331 511501100 81581861 960599964 524667347 346310776 602081482 125582070 218511482 853120455 168875699 679357880 993426302 746688042 933750823 855441696 425401169 992546238 820844568 29565152 368048110 723271230 369567429 568896496 39331114 787346904 619750566 750319911 630196800 999497141 470471766 477775353 554536805 229141162 297250169 755375042 230297564 394931475 133967128 982044939 733338781 389122023 103504265 669708235 633273933 856493625 261494914 17714419 887378329 309899868 102408413 908778255 946634269 177277337 574748665 314789118 743275589 931141348 12606080 991680322 743928340 819389279 592484112 12132418 790154937 20405549 640337888 187792170 692336193 449343598 373398869 624707641 948301388 554213377 956741082 77508636 27118336 457955325 356906984 367103734 706249342 399329227 504901992 15185354 870504661 281589347 486758603 965922640 253480600 188542431 347870273 474344269 567854692 496196935 469629736 830637844 827042630 592184800 756778979 215895453 800404376 762753536 1002309277 612191405 423998405 11298853 53670611 312340104 663395508 309344322 985892067 978108032 464607060 922414755 60006799 457954323 286973605 592771030 64380326 385453653 289074448 892831848 682036165 470089089 13613298 412863374 301346378 245330197 765179934 985567555 632540523 946716092 536330752 355870909 175158381 685678821 381291257 113000460 156085694 792228528 569458099 572860886 986947471 810471727 385517955 276854255 926813832 289822859 896929612 268044561 266770070 406850904 117169923 345640825 699434025 166560613 199478597 420478131 114300804 295614985 269954779 428578067 886253001 136334383 160255806 793942746 839365326 948776666 976763516 112439560 382686446 794707775 949837960 243191942 854981359 439761729 923769479 648754356 419295888 595610385 522752948 456237811 392194087 997819175 310409787 624999589 911586684 858486351 956159529 624879005 167715920 816169559 746974284 94677429 623445637 41730050 925702343 434312152 337788862 173005422 751732949 361747433 734475504 835845174 741838624 777193508 805216887 969296117 463676863 598731431 37517968 465582809 68222772 697488232 360390235 102290877 340768943 609231293 216857482 513141575 978385759 768138909 858721517 230911753 517564524 595336630 38767577 51806125 833101265 892078302 665730359 917154064 677874205 664018201 161110671 957612243 634452165 839153522 821338557 406019538 339610012 667141524 885307975 745004607 987683376 998865933 529754271 421869661 625982370 974726625 647152872 897196459 881136692 348405365 674860964 1201390 562256491 758994401 687478585 690485810 642405792 35732444 78454820 209202449 629264225 721912327 424488505 31788496 23527221 594100101 786920053 740572274 269813863 940335307 745576656 826194472 619580517 164043898 1553221 969021970 244053045 710766055 968424030 743771524 863629350 810911545 642815144 137739873 166640951 53658962 546836452 544894329 818437247 200377764 175760886 215303016 478214053 972360649 70734883 206578303 958158797 578225058 11351960 807231926 229696100 29847227 97022441 217841412 328770756 955317614 644853811 403434289 19157762 151703660 586332601 798827035 847692467 978882689 673454785 896007234 468579659 409506642 687621959 176065577 843465609 344232839 374509144 566747477 287876820 544381993 491322195 192141299 911634408 501041053 965548445 691955046 528215066 586101034 499830337 650335676 686719032 253638700 991609768 244791506 627189958 669756775 200466919 859218359 37265848 270000874 785066840 27256746 673171609 528762782 843516951 974286273 831341737 193357115 806149371 80360668 782674267 545775541 659452836 399616500 129422145 990493863 789080022 864071899 222591987 687804003 912318793 815652277 15514161 606499656 817568020 705549218 481296620 225847876 416934897 176947353 873132335 426673588 160053784 648018666 520414559 966856992 915586747 185191994 416671700 450235479 356601754 803344280 472328337 757027276 908719315 295029890 258538665 681063038 580411186 855317738 748745297 941770065 520167056 192307091 657232107 212514650 707753286 421266505 34429273 464654829 856823946 39016185 122529875 392943853 40854984 76833755 921352754 924271731 900646528 783493750 62453287 504978228 350219067 435870092 987534142 62459494 584073072 239758916 268471740 766803821 805607323 550912428 743825850 101389914 257159520 632331189 241428889 752231925 694599895 612774670 928023831 973219143 564787213 3076899 321858038 255625284 670732941 556676939 749967806 653722069 933275271 277848481 397377102 548180690 136491245 368550898 689710140 467840400 473344211 481908882 252328390 278571782 881651212 302405876 714749411 996167105 811615906 954966013 272691842 124962087 714038377 683850719 223624398 689428802 18937600 295675989 732364532 124915794 276542984 142699317 981971274 448098544 108588757 856351352 993249442 214799741 410415036 908763718 142985649 960755880 235913782 302468309 985758556 201291760 352820768 730866522 206415176 47445658 249543810 239629612 911835963 982525853 759072742 184158010 429547334 530048399 308464561 953762317 254482950 650099067 287791824 831116393 476501414 404814460 261001901 342276165 203329105 366647186 999513318 248425080 49966097 633430080 896772673 289735618 88516923 60639574 556629360 791759761 644585828 239243986 929714672 530476336 329987429 739406921 921579928 432215896 684808952 64201469 237877574 848645633 437992857 389035483 318282506 38687499 268926196 79798536 768492052 834408559 982199215 953691100 784364711 519370529 684991777 76260141 538041825 541389292 373098223 780616849 323759952 418045199 705020024 976172219 122338793 862868301 147008709 845881310 160803863 410873024 408488656 48798314 156839522 411415825 334981726 290708907 502034191 538332807 577528847 500187888 915257141 836524442 889914402 909429315 107777445 552812872 200674598 156635881 71736131 292107355 521520644 677125044 574337246 252930047 611605409 763474116 68994671 464127125 999149379 885734329 728618947 481407604 553636390 435495140 92247064 993495509 791227537 101136905 24992264 674379679 199692502 601915902 898228317 516876161 230717538 939323985 159158302 703784319 21574984 269058626 78797475 586683110 655324765 253631529 439519411 708752198 188395416 730272962 863550409 231977428 321595324 531048533 38156350 146370144 860088094 966515894 510771023 399150878 218732425 344286608 853474591 332876717 974538096 308816940 606743330 451360203 44407575 955599400 665847871 346268799 673412167 406037003 761604249 245311600 721232479 69150202 436998589 801600945 255637731 221276384 2661297 940332862 372273852 146711307 498190669 201551713 210852489 943387370 209796948 267857086 401436061 304455174 549420481 224576600 262099762 529150665 967451876 626386338 766768601 802706582 85657736 807505571 475850230 672648032 332484890 636980170 180531144 872977036 291490984 29450543 658548755 12665924 132818534 606055213 945298672 173479721 804732527 775413372 145825441 146402514 452269341 92230386 751030270 637181994 63087628 283737884 219150970 337981938 830061168 56919223 178440527 462657773 495686967 682687753 864213898 512504676 889989509 493653258 531981927 844903687 276679125 877952309 520326117 636866715 946909594 41294704 483453234 445344934 130718116 190290362 334923431 359868162 834579809 537915229 530445307 91065804 382186858 715932138 733600294 586442614 992467845 611804147 993589650 463580863 215969987 79447855 872624148 150180057 254707746 849408705 29649030 437609459 774652274 460654208 470864120 450801791 427887764 167481065 969440778 597019085 501489466 132932078 385831846 28882990 302855792 620586446 385638026 278154101 838443479 9637292 638395438 574558436 130498299 287166838 7008733 984832660 615925469 647871558 501276104 815764869 817064774 786565692 585273559 665760512 923968748 517662795 53031338 69682864 991114077 177672032 341989639 194410804 171647402 675377548 443572960 279362280 796359817 66909637 184104149 198241693 39259301 760011128 766721591 547538362 909394337 672463962 9160557 523941960 295441941 162709686 910478397 532695608 392295399 40374992 915974373 186716669 272783082 689130378 127028459 790281456 555692270 590672766 600651202 324288112 802342236 707686114 16613335 757461988 452711258 131843857 264749417 555931157 598745764 683931562 762349485 652569367 365075096 977874652 851958822 963103456 494272914 405290281 37970315 173108275 364295866 125508008 506760127 96636645 870106291 649611551 285085700 651133617 344253791 337273511 754677030 676788982 277047443 15386161 553961244 647753298 712667154 64286113 836016194 868720632 332568476 724336332 590938172 309019099 250620526 86863178 557203831 893000986 947813108 453428016 561147002 19097032 975393889 649822854 460041170 567526218 979917142 722871900 564474153 515199131 791213752 58797304 698274909 803867751 604340252 713553352 998872893 473532998 450763133 239088236 811468811 423869929 529178265 20280068 845178480 871494145 146850916 525004936 809726925 309598953 141549820 695696442 111031508 734779603 313809125 740403345 598168018 737174322 637255211 708749492 371868638 975559192 59873468 22918408 675313001 721690113 457904461 24290194 786934475 862114595 132358682 717583227 773681229 242803377 219267372 621207802 452418681 1002056837 833610557 909776355 165863404 240000413 119818985 789445582 95618645 408153017 327827131 759923855 198380749 942605311 402225475 43553581 990238167 83212898 773963863 896662545 903938187 74693987 522269256 470469648 779609679 390538856 401953994 653130383 828564616 743335876 603929618 941761168 901853689 939746391 597509854 784092120 770236600 533801833 539577699 641169943 869139881 553943897 407611979 656740216 433674906 280970928 898848819 828808036 23188161 448869207 747880936 269189608 124536747 212458551 665917370 608191015 340190722 771379980 581029146 657592275 988305675 27104662 96647072 714278793 435411079 162685499 969539243 681296526 498741390 877424802 449165442 336113106 577048737 676241900 492533997 978109773 810362885 516829570 158235353 51761190 673090895 775432372 390088469 877085534 935255585 171370445 626532410 15523986 769575885 33150748 342242940 573505511 310986623 950518868 346708752 105591650 734420149 264715805 636650924 979994945 519700616 944647287 1231669 241210665 886859176 383941587 636858160 850404809 104353211 957833491 592988762 877948291 512819158 605589324 912271351 674434526 898470834 140601660 925219815 858280103 933348039 122937454 588701282 772936081 307307520 398385776 884315151 655037339 593927597 648095896 686424293 673167442 792940871 756754432 959268600 135087768 726281063 103763937 266610207 475988083 528689792 735315148 184164631 335874793 79004575 358003931 205822511 82155366 93893384 527030451 60948352 1050342 862008835 252943196 392827557 659642518 58750394 631780675 720152652 962017506 992340308 90152727 930728936 162671008 971847984 721221576 651353178 189990315 945142078 511472632 913706473 762327835 694957090 88070671 883620960 582174420 283072415 770729476 556762589 416141377 752128679 76495947 938923224 705483427 953888346 721771838 649989840 226223271 868553680 766340384 87065688 420201341 374428467 430363934 712297703 937461032 876209169 732028701 225081591 335623905 852277564 783649226 140070281 570328256 514330896 884732092 884878148 542689720 664806145 970042931 274695522 540563511 831363750 561229715 447783637 907571812 322517788 242565066 20184365 608953430 628538513 663108407 841512870 671857875 585503712 262567150 170953997 397788724 657419299 943289717 23189568 174058599 179980439 403363560 527702591 624006403 466346192 5574347 198934221 78459896 456088306 921159054 160270037 13981855 527233102 292209955 508309709 518098911 837926992 501402295 628605985 791822383 222084589 81409020 719385135 7182368 247863924 927848721 695575960 405412552 895151058 9325988 512969451 161565866 520183820 83705915 534304541 920097776 820296714 294179253 939464229 973248045 548497376 372510967 680705539 680858312 327065762 914669460 87312693 734817191 703427346 132327350 268643885 475397503 352789144 232144232 359868083 461191849 247130371 820481614 902379709 759582253 579523766 999313694 670811717 105899948 456457913 177788958 996912721 973307633 217068386 355312994 89404106 112597248 201759397 24758637 392775749 527408996 839848079 888228858 296040034 281774222 407384344 408404884 847431055 885456529 498651004 329582046 245980975 941876770 970567499 662429118 463029611 741266877 282178894 490894047 489149727 229146872 513718745 995718675 372947555 333629638 425614689 567856985 153246279 163343389 501297398 754221955 850280064 414210895 446463723 895729000 681256892 486175920 44778246 261161139 101194598 586246387 948154739 615706379 316283723 243847803 67340794 131494570 990883427 779681213 573517701 189969313 303606581 19805862 83554108 223321715 368739689 601835508 852181432 411515460 491451634 272355567 510436146 705489575 329265623 493433091 214092672 934990823 392673626 593004354 103250853 327016060 915362306 643436518 243407863 83945028 634449128 252166502 170675407 837675853 275387558 679873032 436753312 580305637 719559959 301167732 949577172 525829767 120224026 393180257 882654187 803759187 45627423 371343155 455046284 566018210 198493061 357336286 851601409 144521789 26475114 478149781 571495324 818692647 462897475 794695215 822680697 552057763 927989496 801496213 785313037 652941150 376866023 858068868 33205851 206704382 98765853 883612384 842015012 793824187 100224410 390834480 846198236 851716704 627127370 333852482 194409237 214149209 446308193 492838410 822916498 214721189 943509468 308313110 210529183 64300037 935373993 414255963 53210105 808484732 519756411 432400800 52066500 266652599 409788631 321437117 522638216 11978077 372189382 551216883 412690059 150834738 301478532 862008368 769390525 465089191 300541747 840504611 994079431 34007584 10293390 871538814 867936698 901106552 231670491 870959806 197478900 689401481 924438928 783331219 429583159 310267530 804525263 856800055 795297023 716431558 972494176 317577997 940420939 910874016 969482070 264487111 374479563 122295492 202266247 840143641 761916324 380337327 754188378 848282037 975743377 126145310 457776064 565456214 286901022 966022913 52533646 365688413 870269892 653413314 231262402 493345642 684297472 304396478 706940303 251483915 829786784 110077988 126036019 659974260 529092352 777008404 236686813 645357114 156712352 759247846 201643286 740920958 245161782 196044012 694986247 921990383 609640270 948370088 885684106 81179525 554746158 189514304 206497441 702365398 610067617 706163211 539370208 211678393 189179550 930527469 72065856 14048234 883280436 10020077 1000802957 621489901 326010183 383891338 830414202 917215099 947565905 755053086 422118964 927364766 33558493 330565025 395826933 26593165 563946108 170047803 72987025 992106336 702985845 284153 309273057 518972770 185635726 195613400 430677422 972092886 648794650 22612727 274774897 389453670 114539925 68117907 580723744 771398331 851311495 369432396 867952226 218103276 353507740 14551197 532745761 791390750 254413538 381731301 927203442 820857390 412003657 770422539 728444006 85482141 515303111 115365810 354729300 850519085 33711855 176197141 222835494 279749122 427493766 812338192 971115925 396595846 815841929 207167367 854354676 779535205 263968105 522098575 529446451 330508071 988238662 146429879 367309910 258767098 369916788 528387314 37872243 492607056 483505492 143098673 511884901 914678530 709382160 336748493 834994676 45913003 204152918 564532132 446477857 808034119 583132156 975947355 911063382 119944545 345952244 636532799 195677155 271924760 597191466 327489171 893573344 104996065 638554360 554746152 79237920 126643558 268852937 487273022 762341705 306352805 892440329 198485837 770734056 492616880 459272313 270305409 111140905 388348252 759157583 392382121 427196020 735815751 357577813 678802784 233080519 737833888 91603550 570793284 157391334 313295128 136370958 348009701 192315672 132950816 794129962 737293353 969190712 576254370 816627806 987109344 284041801 188445645 602639927 338744350 413354882 623201579 380949366 346964910 63528512 903906957 501428138 93563583 20056389 493297179 78023205 645520561 274331379 30983162 979555317 160986707 322089291 795836693 840447080 986647501 151903362 719262625 152741475 411007254 754895454 628783170 851063145 249457612 338946647 283670230 328220361 780363520 722655456 261403046 207382407 9578131 902123266 671472541 541987402 444968900 995569749 232296102 783122605 959287348 513937637 194473219 733167299 82266827 610085827 598962680 374468331 635382775 420501371 634650451 127875789 567951634 899624148 857454194 459251445 350668586 716608576 255498861 270450595 680182040 964856651 614528709 669192032 235318438 560336124 72428017 419145693 506761763 541353606 748063988 953275416 137872102 830974435 815138681 246535547 128335706 75305484 389934495 952153 899410546 997729623 944787542 696960307 600913157 101156937 128341040 203377810 941393733 412710629 666388839 119836216 115344119 123064207 360391482 225410194 867626373 942079524 924663451 274823326 853710947 536732673 689954781 580166678 359698997 514440912 490829656 202179684 584615120 989720263 754345745 660860343 631248566 283058211 145349599 614675242 639713897 697235185 511441630 886736039 883773365 796331225 840297407 46154878 683381135 886830255 776435937 217335397 322554915 468840461 202693585 965549174 268740417 925188025 756039943 676245913 480714038 903901662 461636819 831875916 28635252 302403742 776704494 582055577 254290315 10956600 692979127 77866561 59938445 690040060 826354622 360726847 930515099 223423938 679029041 255003454 586037019 510085067 89737902 974212073 940231161 259157115 780649153 509074846 737424857 989732430 870424933 688220218 136613476 434686 61188769 960955770 655572972 681792019 266495712 892354498 528490609 220525101 212641200 901110557 408460150 776613704 801187961 211678053 40384185 511420370 527630737 470542203 896606314 955840671 32735437 45474216 722226157 406912462 945754 84944196 74987884 653773446 537300883 754357065 925177741 43705607 562901308 592673112 374580747 603905257 80771418 929363521 589139886 509327817 820162081 750556265 288041641 935617082 711425484 332416998 193346975 257278229 500230833 110937946 220455126 158597117 708565917 68082724 289798812 405679213 308602905 939261547 768739996 584856943 175764382 409125579 829820802 320283864 724300387 200910827 686809553 962798424 44344890 983690720 113050558 290443678 954565027 471887121 821073018 286506199 977714847 533340559 552979805 815753138 416704428 960702998 248867316 46208957 233181640 213935624 660890177 775324759 948083831 415053121 550587872 378709235 95596091 463621110 550322437 327987726 221935233 981690713 842004460 778318821 634300377 748759301 275635852 945582498 878898549 257275975 872119438 440293764 408550306 128166002 649781487 712070533 439786392 157971093 946226224 589166293 199977647 985663310 664162188 266582247 734453216 545043849 860766794 206763990 130817728 426238800 217791612 289764022 39969863 952249932 707440863 956625086 504828923 365347750 309823841 489802797 150024441 139165871 390388393 650295417 891805110 767391871 739052658 399901238 602965386 412296585 136586383 713420301 503289935 633888925 194067332 726036446 298097335 27590662 561742579 55462503 54443567 847258016 221002534 278038733 858397472 185943835 119742537 257915179 165197477 952778896 125509744 9907111 36786291 490524940 470601328 493393670 493012395 621847243 772904542 972597815 952190648 612707783 209971542 876831772 359954848 97638815 19155280 499134946 447262171 429201857 539731063 411861243 968667915 449557378 259453188 544793379 306095516 736434807 764166834 8357502 431133535 363502371 242638770 315056066 592249218 258125921 494870664 352147955 323699909 153464686 758382412 805459222 698219081 46085591 70441914 385455854 141720399 737270830 731747474 545986534 883778778 574390403 454461441 868334068 316057196 585811268 574355954 263838106 88411795 635055567 204961722 495773066 556783935 370847502 670723468 289073752 310648166 109486086 71033426 367338210 755361683 902349144 167218236 289605369 682380562 97979007 224086430 533776017 234396602 301459215 684529534 839413928 104213279 87861360 929113032 395524677 158588685 486086000 454385989 947763025 449588217 146953065 290083377 5600803 647265824 507671437 291188778 584969084 508013154 277532508 407583016 779194176 630433355 289163003 640208290 621206296 411048864 51130233 660514914 508473783 406091496 621930077 80698029 381123819 764634225 352444054 147316496 453356816 280763112 162801306 769601389 374942950 366076296 184513580 704975073 715630362 68216680 610584613 797153247 204685548 713086415 117799781 580571246 905194155 317951507 218018491 415336213 618765057 555344133 299804618 498321764 518764845 991552194 177165864 684105241 283957268 677356942 110219755 294554147 188845071 396266222 847426718 710871639 311462136 142761227 375702208 509594171 296672505 155375096 589503007 879294020 487045477 171599586 604247749 993936558 434183836 829767155 945627197 942973720 538927123 398048807 61242417 502567489 226706250 950044430 363783742 753383809 665150643 856686062 475504751 262903883 130999183 106145034 367932715 728485278 889631960 178148876 597995020 100988248 205017824 561333150 847921386 450369405 271629417 300259577 299659068 466114631 611285707 308486677 295256724 392548477 287054389 596008201 286552235 183120444 523487825 127733427 300036222 219550134 673693686 518446886 75875017 519424489 801603022 491489714 29848503 694075636 921400850 738728617 125207519 362814989 295301060 56655509 764083940 669250713 767244994 516319084 678330197 169370052 362157743 199599630 207646547 614126300 717158872 699076135 193829182 936594909 80276583 740831968 79180223 895858518 886115095 819647982 498683402 40392847 305340935 15068037 350386473 429676945 578868748 585614016 809973951 151225682 713002980 521997160 772492291 500416162 868111879 522715393 166168019 290015792 727613865 387224906 337186214 135812391 671594517 957675201 335793727 721556438 22807973 778612980 824934713 706202796 615308397 977436759 470864824 403726004 13481363 517735167 956152574 613775733 973774844 89077158 434072332 270049033 365421351 678421715 875942516 118891958 329388379 233945968 353047593 712127438 632065044 119965984 924443547 342334278 179505306 51211160 872454975 117672688 678030795 76477800 804893263 536624306 393549952 961541821 421250233 166320843 206714193 47292354 229034880 434046615 559526161 120585920 129965557 334816230 203265889 707592397 123992430 805818120 514506930 189818415 395928991 73651109 798262269 353195018 201994198 659378534 733871026 854135416 998455337 517214814 444882695 161888447 104444028 58632826 342223251 676123112 774723381 502561036 42889185 580185076 346507863 883529811 601601172 127935915 256707837 848180751 738821885 725565002 981354252 782655651 587501193 483814630 429928049 132111960 868195205 216270711 221302438 194887500 763019840 507992856 872859895 415859060 446054991 405388761 567518524 460897667 334480297 589357541 790662095 621863736 440394262 809428303 407281635 351779420 25253853 822519183 113160571 265699462 183421216 495097076 317592091 311015991 151136681 746126551 567087520 80929792 666040295 74012002 223396093 636420557 235193030 880836860 605444391 316790790 143533664 55068990 286687367 636771759 538143031 704077764 62264799 76240321 743443771 547769814 864474267 605967816 682290580 532826601 346907152 670161973 368918955 789180991 616182021 147608999 638898161 236426872 879254220 853645543 674690246 626793606 870118143 517166753 807512467 779419730 769898965 511817412 775986013 793543892 488497363 620228648 538916083 323597201 786505038 147550148 642127688 491796789 398907725 374000789 185573758 252647016 120765936 236243295 951340943 31076481 243499306 586034750 111957194 103609185 72207358 648202541 972654613 665501389 428002278 557584473 137757424 174128668 361935124 582103841 358558770 371655596 225031154 691535709 885903176 273430543 635118517 419085836 750546064 464437444 94401850 678026316 791882111 855950805 124510919 700841503 951234165 214234428 400093791 726984934 543188437 453350835 875661621 97219328 611309186 231591536 899559247 916619906 954013337 118304130 707708141 705604396 686918206 344256304 511174146 214798316 904172595 403635444 187248813 861562417 818319169 524555524 852183735 157058886 330428936 784032329 122819725 560464665 912160496 545872942 691317677 498634624 398088850 699961405 171915604 966246946 881865193 170912759 35470179 784242204 304911735 917910150 906803876 134002848 353951815 715906218 957855340 684247437 914010053 598068729 62507814 136635707 659709590 820652193 828720551 22004565 288952848 902032645 677243558 458339202 481744266 72864931 990619119 365090731 623046289 913051866 210131897 412813242 911534458 190040407 526795078 38517906 295391965 295825134 693826502 40488833 919740191 815947608 620453956 232401353 734273266 181236739 516684328 662233652 75043333 93458008 206578905 712639165 615723677 703227148 394838509 253770692 341177542 278108075 612340984 555165221 816501550 508816269 185347582 891509121 545233320 916613016 984043869 58259318 757151463 487526756 29818420 301097544 541321051 1955175 627022551 572054503 297882068 234587571 50284909 759340399 921037424 600685415 780479496 363055287 391592843 61079592 186321389 253417984 807963129 515502165 799706382 561647863 714950878 63853277 239985685 586213913 511846802 669143144 883408242 847857717 453538774 829155325 405441333 719751593 176084769 114851612 422793346 258547260 51808386 40539341 367971637 586310887 124161404 69740172 34508970 77247561 859036507 726035986 695378405 147061642 529575028 62632331 791508710 314768351 680336911 373235335 895312777 762555076 292358359 11836657 170662519 701916119 859724421 540807064 306389082 274283234 328196915 513273788 591276543 18626314 548511271 452456529 10374882 30006814 994791974 411751867 779237808 332064541 647423927 426766279 895503726 868146377 734293127 976271386 506674484 89968849 622673761 861249303 921064053 763609724 456258768 1173908 976478089 523901385 162138743 220013298 381694927 585901431 183168430 409073776 567265417 202310705 364276756 987662315 932696562 924955155 647200985 770286550 745470906 349725961 371126779 397726581 892508259 486859505 976660291 896158679 65339657 923343549 806937565 954186294 615005537 180791389 321089332 426168949 405500291 35534787 884087811 827452311 134199683 929505869 581671274 928144169 476367696 688522592 985924450 908458800 39406474 85627854 170713918 425745497 78960665 951900896 825669708 472697851 685264947 284529437 777199634 531573338 102738832 661990633 735809218 151422693 634616217 926288869 892190598 541166569 776012781 1000987048 138291908 307967794 796002452 468443169 635242589 906313072 684747813 222300073 926676381 240512791 32504558 1617779 241768941 625289419 444521427 529588693 390628612 911321895 812976541 434213902 623870575 603190042 102882548 838710087 179483469 840891411 430712483 547072466 974376428 629778836 604871662 764775764 315805218 591225058 28217318 716056386 122462611 595317194 601174238 164045145 997594494 434932448 268790588 446655379 107042362 442785908 600877677 259904789 380536231 433188751 990561355 591986222 209411363 212640694 238921360 303446538 641858624 41722849 151238095 245517130 760527035 786148522 99156911 834147870 758142259 18758690 777680322 588820572 360098590 633010169 611689760 194187484 456612148 791185466 291607964 390693827 153211643 739754296 711646347 486277325 481312417 485130146 449908415 404784455 958292558 965568433 287640434 534644721 662584277 553127548 203700392 67415982 48656109 821639115 265047439 859383844 235937525 113963902 663684550 955068355 462976348 985631497 245278647 788482186 104667898 81841244 284183377 25605759 848177826 100813916 366514846 536728826 406265169 519141246 958766526 143594144 332299553 66050422 925942713 62813479 867927997 197009175 377788224 873540223 649614213 199235465 790954431 904696604 485388281 606769575 77058103 923795538 80804224 397979848 664191982 166702747 743163282 547351615 433886484 164850918 306942833 676499836 314888168 463426304 465339156 765174410 617817939 130661902 947677317 382271649 668394378 106307998 647311949 187132905 321320318 972051099 675246199 961053854 856108042 250478961 524442086 196895182 58453485 175614971 141806791 60113907 530821256 280242187 806120452 598578082 616486209 413016266 563285733 989097941 200286921 174308233 769144046 11570829 984037735 884787871 407985986 612605433 138421748 22442277 580665006 290617870 991407104 935086241 611322073 155987051 23117826 937153196 713242396 104164773 760869473 680102619 701162408 796019678 928777063 268370296 703061450 532396572 4145506 790592173 318665199 909486825 162861415 848588762 271009230 660105766 145378756 728722465 335538752 646383340 51872931 647740595 915412330 74828894 921089595 932429021 660306264 465503553 257238821 801213522 219494137 736743442 982122739 26959042 940055299 616857802 219615424 56511826 630223189 38066919 753841154 426224813 380091060 901001417 241024156 314887832 530320951 622487308 973866741 163141680 189575748 48817919 306584800 101568312 254091155 182842964 547815536 879415043 789768279 369243708 309278577 177357866 594711655 133939093 736163748 555815207 825320173 716349990 91705911 172789114 541790349 722245012 828498631 137963637 483025782 26004188 390631229 244045883 82415752 715827247 216476162 651145379 790275492 585863357 232921197 401130925 568764569 245966944 533030721 969130935 534087892 490136690 715616878 571097042 909831916 312295878 335315846 841565958 496219846 909491971 863041518 617609148 183788411 271791081 162038572 715404742 198017826 911348992 86588624 233499660 600940092 88278267 864745174 898841775 911690802 130345828 989825185 452386928 788481120 251590083 51331346 645553595 916029155 101767528 250437520 200804729 18159541 995214845 103722050 82074464 276192236 879380784 155036672 150168292 995839779 419422315 752192034 123227870 396927412 242344350 790178296 933337539 24685340 114129362 558535807 445114403 285731083 344922884 471789747 605023835 989359995 235582404 620234016 542775845 860619163 191583983 414066559 339466528 970389892 812529128 445272220 516582395 436177976 397676919 715763097 1001485625 930072211 106175686 462695572 475482747 160948356 129065837 358769906 138903778 691034023 643691388 504752474 419534437 528311348 711111015 185665349 171484004 37527764 335185451 608309214 652708598 177714082 134283474 43656362 126308761 988377607 18354521 305909464 816864938 439987235 628336617 542215867 802777835 975566065 391934902 554050762 317427698 902468536 764302678 531352584 33378244 795973767 90838207 615127944 525910541 375709453 372733911 900068750 982025507 399405672 600052324 16270530 652190751 984407257 988191415 309804840 319513423 758235397 771077840 256784897 299828647 371859222 121762553 228005322 348352560 385874321 660564443 624025850 814940564 588215502 824916694 680295590 27958291 803413744 497981233 217808248 572554855 392612113 528789663 256911310 353831070 999161551 338769896 105424017 973764470 876895607 735195393 546475164 828235508 75643723 47941056 740178878 677246322 658440097 739555997 673535385 165702669 857191791 213531561 166837732 535555179 532237634 966870733 676915913 892490589 674515207 388141655 633240656 548890224 167577846 712299019 726174101 558083812 836162728 697095728 111400777 187622445 72663061 46705818 889068453 768130326 317084775 372636109 99655090 966554644 578430748 518481072 66508292 287014218 441955859 544549045 894749663 88606363 572471918 742052930 71434975 528814383 461224250 108568380 174090373 253199652 676703945 638442020 702078720 632089175 443110000 437135765 929355971 218477081 410756256 963198396 258709662 839883546 911708710 295585387 247878357 29906012 583810692 468811612 710503334 166825298 27635502 777447510 775751463 207325441 701431483 914957444 765036942 933945956 549442311 964234038 49617571 569068282 814247228 733140839 362934686 759980814 480614560 416460033 824698473 205179879 715258440 60349252 254281002 149127412 407399368 102572778 287753525 517352274 679058823 746519084 444742074 800916836 438679041 685165269 817273717 579991089 494462711 692710748 612789150 374623402 599668135 244471014 577152238 920129614 369920132 66683863 778313537 685978116 663389101 157563155 192909448 993229450 476443464 376203563 675490274 255242545 249701066 357745989 111334563 335957609 626026480 247446310 458689086 69859196 877373178 942540443 711257293 19639643 607974392 30545239 22569986 876306204 76193897 898557499 432843922 639867868 851168469 548734120 368052966 831739542 336697601 163019217 757462382 332104191 283605697 137801702 36424031 695880809 536389788 89780148 518565638 852978730 267397435 354322794 220723534 407310286 629755094 606286121 386531500 874951812 58714094 144101987 33299924 143093633 42753420 423233531 278696249 440639741 831816637 819720124 873679824 79729526 245213256 765611615 456276841 246861671 411080379 498362430 369369821 520973154 433060668 244061835 15872432 372913228 891570108 7767434 48480012 737736914 239424581 80620573 237859696 317638038 149589328 626501092 352053051 54422059 311119093 233800536 513078976 43645459 27634627 67075271 272367079 558298141 831701522 522224988 646229833 393280134 543506931 887159015 891982848 377055155 17002115 46993310 692750480 613874606 762814722 786629026 441013689 471706539 126097974 653614649 301846603 786031923 272230084 501116346 424959664 600098868 278586446 638358609 111659452 320828170 283626638 773125783 324373156 79205228 688476916 548215061 234113024 792004535 127030745 131789223 724512349 901040692 417868089 704263517 808354099 351158742 936481273 15863681 314110048 49071868 854095765 661590542 690337322 253144182 360875260 474758427 63944234 622000699 692265613 901572805 330981859 963768098 729083627 170242725 555245794 352962885 203951327 950593842 746966051 824592393 670884482 413988083 840009132 602120484 506494612 847595446 629305103 71974826 559902933 159933150 114818801 355690076 340654711 622662121 591697002 32905677 634880902 539594759 403886285 264313086 475337446 215704871 612730985 956092554 77030994 440919739 546046289 656616462 374751131 889443286 259722773 152802331 331635921 220683601 119273919 590177498 551007009 859465369 40566761 423424361 150729263 934734153 301271368 714554501 312234265 62105799 481463544 903994336 173653231 721536908 180138823 791528185 772103731 700860365 972183746 404943473 230186261 61568787 993502334 462249469 904094940 801150933 501626544 300652258 332229560 210905567 808437681 624654964 614006381 14307348 173439146 583321607 316243990 208135134 617474703 366477539 28358582 581979130 521256455 756900785 690436940 453687205 351914794 159360867 155017218 104641157 568649510 571185476 671151061 923875368 640540342 777733507 866935752 182493439 296130614 528067052 173076481 601526712 92977757 613819298 986273865 603256298 228168027 58222891 342094745 655982922 108530827 786108453 657898305 300857078 929574851 585550930 436717614 542869899 17047739 350459228 354899572 662673893 841968288 175588179 186399409 715889694 846700716 13881338 179863416 977606060 777230637 700167015 948773026 535699824 33046425 195414376 306947657 542469061 789917601 677954637 75636255 226311652 159589524 507723330 376417597 250373634 548018528 656576492 284692718 437797874 555378783 255722582 837856190 1000647178 496267446 680287535 795833820 621139640 501987617 458238522 876021624 431930634 746082397 931907478 805676447 278579375 537876754 227958583 296784307 272432652 512754646 961234835 365710422 417431286 417756339 268292471 363830939 905059551 875962673 80084249 465866131 485559757 955295926 96152657 583401103 124155243 719114814 615875392 244208436 367203877 473878165 578872214 285678748 395183556 483869341 249430153 1002287401 87812647 264840434 98276812 903593093 2940079 116446051 274940423 691368615 743190518 141069170 899356564 682685052 94281987 820337143 439693164 774382363 99811020 427675674 653899739 157152932 689074870 289604717 673039138 965555612 198910903 18151514 107072409 374204811 397626981 801509790 131022044 210150001 980302106 183934750 86444312 564282207 417650716 376657626 10806923 779447553 976293425 945850385 772139158 713215033 694688400 266675372 279129422 383515495 544650712 556049971 295370352 778803618 396379349 263229070 994958839 50632345 671710234 497679952 636848756 660135762 345698726 913625112 256152299 416532609 434591221 196942574 911915196 525469701 802935800 143412229 169882131 360221455 573173669 448832826 853921797 182609327 279857401 959519636 262586530 667401314 821661112 929235267 835105635 130923265 45015069 352089745 66007060 481628862 908884625 58194697 577073336 858593115 324674720 539732258 617887471 566556644 595179555 853031146 144006920 93694778 312183628 321506267 911905998 541877950 774686165 442467594 474597090 345202935 244567566 69908403 391345446 799252646 267843094 320496269 477032624 387861081 360530387 8797505 626146712 243862538 700856881 115181705 91356499 547700525 97937221 691383976 475829276 358019021 962020024 818380266 256181513 486396888 75990949 700425328 637840314 679863132 363601193 101860075 188754194 28493108 967139144 929771701 481762814 770202959 966263263 470187233 411341293 773417196 69782594 319454613 223032634 995499723 147067018 829418721 651563567 591436112 726903280 410878636 926418163 229319326 948875837 892983253 58876719 384852885 132650602 693115061 664669509 166762492 291653309 880697410 185861702 570689218 340318454 654375254 339256417 830334683 899153804 357476623 536762999 237947211 488435001 768359483 388648206 821074372 404769319 278659435 315168578 32580077 275365517 884902650 558140145 233348656 930813628 153884468 705640177 510237022 552981980 629171056 146992004 784388104 611979951 19064186 482031815 652209812 69880719 840948739 527324190 389233841 649614098 589988835 730281498 825307644 567266173 556040740 677057759 70639077 264340538 56539097 261421735 533130113 475870095 525386180 10378431 810838929 815973855 706058723 861156700 813543006 345205079 565673739 299297201 129726141 171304380 625854685 728186328 870013863 265568467 21046809 963800778 248570442 542694128 26612472 476938684 192849990 467920309 952047618 23892438 121441601 46883686 315116901 334964133 567654402 715569460 924475447 799279083 728497844 266118372 635804551 368687658 172612854 968530215 560433427 926400322 118140556 218458821 574120516 654951913 709062337 730664194 61465071 810864510 471091621 589430630 894771218 997028208 987888624 48710616 758120956 901558346 172685639 530528963 690170935 638577628 512903146 597830792 38040347 151174649 352680174 54759706 807154647 447322996 264146060 762211815 855180419 345021894 572064046 823424864 698666394 758978215 666079855 940676241 870549865 600421535 235793076 845844082 381386037 777027328 266528218 837761532 321795454 414181116 166942761 444019045 301868804 568725061 171790174 405518447 615839054 48967213 359777306 958695701 41963020 32003733 188103005 816676832 69956230 468290996 586775489 822578513 623348090 832567597 129628589 86411214 108401343 624262163 155940821 484336828 948363396 557853652 308395033 706104195 165900579 877801 529643346 619901323 400075684 795829029 672483497 43700474 912434524 205991050 363975192 132365367 20993634 597552713 343957118 473641332 777416176 666152720 287546461 348175351 396908069 336815554 747323629 566220532 568586051 646390042 464339431 540476754 533506030 808273913 616673004 369819029 999794859 441406293 577914151 69743034 823315216 492923722 101756533 511402462 249711094 538536537 702799754 772602254 508718539 825412935 772555369 112035321 225337324 892551556 804522443 678216546 461044680 997113306 494730231 946853111 991070464 965339035 47771413 118115845 816495547 397562756 437673248 655107801 569952453 666856758 423746582 842616522 72779371 987622631 454846173 71340547 692927535 723740532 636438527 858487869 430161229 538566055 733376899 307832485 898653453 363038768 97699347 355855304 772045819 253616776 519929334 237653311 139716750 846829062 44209212 257747295 969146110 687512135 479190867 447427111 675068009 454001853 12449794 231970306 186070557 421858421 54716733 937683316 608122950 56803219 142853486 796147990 490502398 42527574 271427866 154862340 804680093 292204462 878496759 433063166 507187638 287395433 641665024 534445722 598078812 204669942 874160489 455873211 655854159 488887764 6628927 581006718 302642989 167653029 869424836 358847353 30632345 758727502 437217169 427174329 101881050 453979829 196758132 852106165 83277301 294883683 157864523 423318767 667762225 375584571 200605303 326979947 399343815 737025839 112690322 935272962 768860599 67811649 606125493 140793949 554478092 9783196 909895716 20809076 463402618 80264646 660278859 292542388 295685663 931158910 67550739 971311506 19638252 297439528 701825312 289236926 668346700 411184237 866567829 284183752 434137671 994341976 507558296 994130260 287433666 915398903 689100802 107641309 336977869 428559616 52547500 459033751 205825990 553945705 275539600 183564039 629564159 829509973 523496449 918760022 825304557 320303248 155003866 909156608 335592632 384780555 361723250 757911277 620261463 251698737 304442281 217130921 85524322 914410953 729670277 119622363 22308710 19487973 642086355 328584845 476476542 515462340 641163838 79062139 496304034 319937537 775561938 911653934 907246590 250344384 224423634 208786561 964257376 473831749 423870260 54773614 292009396 427596480 425716387 678581537 708327792 786560070 382200797 727416252 666510885 519797159 314703981 944068030 471166728 279975006 243744081 730794326 500796875 215758860 675478368 637715960 643492867 515335409 530346998 140804129 547025048 133340031 20365473 551692460 746419290 719689924 185654023 239625513 293499802 256678754 37056749 262970460 337484926 159956787 885129454 747608533 938520509 621351965 21787968 110163263 328706365 553433957 144079197 1001506185 913541144 924165807 418288810 243450063 777995282 68617831 586600656 119004598 758913447 533990805 444942863 389024596 528913794 621115817 903892180 584260817 657169338 639614738 58127153 537708485 232691558 444412119 963785277 764948797 119224668 37169062 308743198 852519213 621841845 67888548 350526322 317366710 237164010 930194311 422263727 282866846 580374616 188320970 216077320 407703633 644849394 42468188 210576395 867640086 411671484 45577486 335384451 618333794 874569468 604239723 466312527 826882346 119480263 735379650 168011843 393307874 936585990 172319734 381598409 916204869 475159564 789039218 369199601 870861893 714365851 805176760 928666748 20153019 984482671 464880361 897960780 1526911 287750461 594315690 455012055 782520786 509092972 570700084 364678594 798806518 527001322 158751869 967513377 475247353 792800121 529170609 135340318 904021721 588315105 663029716 315934200 396482232 181383625 804216420 514123886 689156113 978873181 324139639 578498170 176287467 666182728 501447519 877898073 546551482 410595422 880774588 150741706 836152220 860369609 519336462 789789673 435754948 134771964 630544241 637753405 630754608 313965602 555183073 877749068 992218370 181436072 336822137 331170720 440978692 974755277 412742401 79888444 140355294 721255039 400766812 380835197 652970730 796408917 994330111 845244665 183222043 540898326 559824274 497444786 290236423 894856716 590079838 46794476 485028027 527153730 488772078 212632375 692782419 832896114 624165570 477826330 348369557 53470992 914124447 602618184 962031041 44728183 241436119 135456207 887327012 667457334 382826014 514426133 331077956 501492299 15400587 305657874 206479408 58524687 433922207 422845846 351816015 463747982 997780275 771407362 960338099 509868095 980408981 71911808 454784975 240791848 31683379 664736643 906967773 712258356 450438261 417709031 715057116 339000130 749376279 590559961 698794198 58408831 668015278 513177881 798643958 702141652 224616014 206891623 517556360 59280464 659161785 925719313 263544790 913832286 819171511 500665729 374847429 872593309 759269266 664313534 369913303 295727221 285873477 87272186 851680964 217446641 961036321 943964453 956067928 845224093 256555349 890762231 180490871 470682650 20987868 865503184 302980926 333495049 71411033 379795198 240566818 90630611 964390611 642423327 887391921 935015137 644369458 846115764 60731469 89661720 306268714 735658057 310107558 526796053 809584531 808400103 179554627 366447961 767272952 752656809 496960425 822019545 928792674 802362727 589762522 549628219 275363128 766766270 97662171 775313179 518594745 73764722 463715409 690523881 830992757 838477403 757331871 531927375 563790827 48866263 722860292 591954707 699283491 722948056 157646551 896157343 199101974 783883777 16112990 689662292 369208557 882912707 169840265 218600937 453587727 202756735 615884511 335233648 550867480 495791678 502425103 956177620 112187726 740354168 597262250 692421653 35815620 445891685 556820817 271576466 870635305 8284241 74554107 185707555 934686143 113557817 896686848 639381419 25202855 428657959 228206044 854193791 870347786 493573172 365371712 7580563 462477319 109888145 504415336 498124809 801020029 529625558 250947192 999731832 77036303 864002899 575033574 978136666 168384453 743424431 359438347 179596812 235862705 204192135 907641924 700553364 220994812 104245103 979638860 549986797 65920544 485891588 900891192 790758387 685079987 728451105 261695235 685544970 394477222 742867108 945615946 731102834 301992116 772934662 780089705 482139048 837267830 739603469 20305709 405168968 603127510 361661970 259020590 675336742 546460959 899461256 902502853 538146108 266082017 933124339 272192373 822063953 535329883 679802571 461103139 932757396 790136195 395790216 723223860 686368802 79136128 299864910 736989807 350372387 480544826 263829913 836901344 881650072 644392603 404734850 781732240 713768810 620347972 576844098 405523731 148303043 268353925 379805372 326858400 839099559 34842108 642823454 909104070 696969240 480711543 254609687 796025727 776989284 804110386 886333658 236574128 827793745 687418093 32313130 298234876 771918839 701468518 925156744 982376689 440510490 916792027 746912698 825909167 191020654 88752363 428561902 124887331 125776997 739831717 175788996 267866496 518073592 915749890 961460072 747322579 629486552 604400321 100994022 815707224 70985809 800857016 1355606 309938398 636467526 915907006 670894246 647152557 201424202 27292631 370637582 789056286 998184074 127135008 140648397 678732840 990145141 546128327 922374918 206701573 16741572 416896255 515126945 966139195 495199257 761795215 385962229 668281808 997156876 652322430 174154192 62933037 576251490 239679631 644791141 538060536 954983374 249359604 516180077 518098273 569434650 888525967 893625088 898069223 209418311 954202929 137872978 543889551 26402384 300825575 531787783 422178047 529319521 705569011 171990984 83071456 773581272 38687644 218516190 78774315 605078406 822283529 810404864 684677541 576200296 256495975 370784288 680961464 918531062 115905740 33604856 992459604 255422822 606415906 539682755 591754004 367548444 353936652 406479932 655720998 181580041 370395576 201702401 166628534 258519138 370758998 853948697 724858533 802526534 407391247 296097980 841417174 123666568 129281823 500316635 573047918 494996345 963366981 162768715 188984119 124102464 886881933 605574677 389325695 188858034 39707415 660722113 426257081 972393984 489384735 159422585 232113417 321158681 667584154 285423649 165116736 875246933 755829486 153388644 268132488 423234920 273008620 710742621 955972518 964354125 901473609 669308798 318451641 392026493 399903575 291305421 798638573 160945108 917932779 791778153 924613778 571615727 164410697 705727462 508893870 624829363 433759196 980835245 838716705 850369086 328870450 176837402 526329777 970178632 954079596 792820177 45800906 57249336 244050676 938361771 913216629 613958800 156329154 812886442 766570932 842139566 815377961 927407731 333256823 181798735 563970282 652337058 579991768 163234292 876348417 150524526 795166220 502591053 630971023 779286578 775107278 614893428 590033703 503064257 333938451 238233133 208339060 189665811 849961207 367888607 684995403 440923070 800831295 984789791 375436289 266375535 691731760 916392018 568246679 288190940 234799754 148642400 650307561 66629088 991868012 121684434 693448826 126243333 141033612 732930983 973679116 69526514 646988421 977640812 702875209 762833371 77316012 894814155 592908798 343486237 394019456 861287246 77647204 818281291 36260772 837224957 771662650 905461539 729092011 655867306 381634914 728955345 825339205 446319099 872590264 730824133 577403024 522563337 828615658 938166533 957773574 422575749 825501030 541389487 409172703 808465137 506311255 440268888 55593195 773413289 697336922 199270935 421681625 491566045 855640899 124900253 301264693 258320201 374592868 602771470 482351572 160887486 154121730 410409092 694163238 540289780 473574081 613731414 649228322 214505275 882494211 256045033 689720780 973415106 120349419 674152093 22055550 328610855 835289895 324442596 326654499 31151596 283392055 303452292 883114764 639519366 604137104 728451182 91465373 915930934 222698821 585395436 678173117 671926194 577848396 210514429 707114210 107487808 824877835 600406869 710717002 292263547 128639981 731820484 563562488 793268873 914711294 825146733 52634021 780675895 25907833 464253859 234002039 736158933 451291781 830387947 19137901 751749684 944204797 126343532 716186040 382371255 831491739 51889553 310949099 913925090 815441359 91437297 808152350 949478569 767551552 443619594 451099416 972242736 750908583 740584990 335888458 236518511 392529254 24361187 901163522 963806913 388373906 929129631 574915129 883916444 584259707 787628675 152103261 185529032 618689386 321413101 853992414 828572937 586259390 370620073 650485173 106312723 190406259 742630931 328247874 34082727 802242729 1000257274 144826317 144995584 32539345 102503728 117712706 988764432 743042250 38867031 572406241 638299010 617981449 861501079 682537374 878095937 397528305 953586446 937237576 259041180 683947537 801908685 315844202 318128063 621309519 872530848 143460084 931360622 817102829 9457091 562420511 955739197 123867670 142554127 67027209 339848659 478167395 70405344 775820123 786899821 507963749 408308924 294888552 466328812 850224070 945986008 216664970 917366180 612009647 204523866 456917710 320756198 617249821 849818213 576822943 945647796 687930942 535153954 212455579 149723833 45904106 497982657 757650283 149221645 551985721 491163910 927550087 186414466 139541870 73958067 816195664 978681047 741376077 169309532 575460953 301294584 292945956 924794997 593656838 386789428 716657371 88402222 380725859 11009091 21952933 566749814 834538502 730151226 272410384 761995018 519689845 716059466 23208077 132173766 539967624 564549585 915690433 223485928 767181984 893400990 825180667 414940058 891019011 683681616 443537026 866615227 315539920 312960440 814074558 905860215 595557520 469013151 893616633 58183802 736426428 690324000 598945277 597939359 692302498 583161625 54090473 363518932 410785409 933144620 674344482 463551858 62931743 397402675 750454000 255946452 896537242 181231080 852226187 233693913 921721654 705162159 33329342 104111295 378042826 155699251 863895243 988521214 585686704 229677648 66691862 323227711 466825897 773365087 855861712 982684720 392755372 971899072 883829203 234100918 505712523 228003703 573821479 956634137 697895039 345664804 954002741 596444400 188080511 584483462 319950939 472953516 891595578 61369705 98815747 675581061 826877930 749671150 538113376 248221596 548625384 504396258 272036739 824074705 891141658 570659742 999256422 299674847 967473354 542970313 629456428 454036498 180806817 435163512 732476861 951654168 593243306 749660275 802608608 186466847 557624747 494039310 709503159 651487153 713971163 577876333 250116266 736146911 60503993 734903 282524316 984601862 374637280 355494255 957621721 443175947 731267364 403565863 295379101 190255520 978433901 772297444 207155293 725587166 620143289 167226178 518385239 681272441 443050554 468535835 55678734 586800252 745677520 33306653 103809021 393833410 40763275 949114058 102842941 892342925 877201488 862453916 270029792 589385189 114303395 935548063 155454186 70049461 755504965 759799561 123346921 677247727 549093227 934181891 608958862 323466401 868932424 493438818 387043686 206565216 117860741 439274398 295453059 527733990 276166322 803213182 315754647 475204905 65023813 848517404 980649422 571199492 224906453 94613023 29078560 938227123 738225370 154743620 686227035 327748533 908689755 241177564 116488660 931314536 315868164 894839433 238598927 610393227 57299772 967530613 609806596 588727160 117443614 841648339 623086281 826692858 230460283 641237907 11497139 130905947 486361993 607792205 947515524 505424223 295908658 370362295 97642478 206151710 953740963 232916522 423854585 506868807 123195326 74727442 546816563 592963438 887049336 834141968 691751801 219905241 95729516 899382653 829269250 734867649 534834749 401296210 597894221 556117381 801204885 102139256 509022737 57016937 74171637 143325028 957186001 326266155 92870776 611098290 290223372 845538464 57042023 545098929 783687541 549739689 965862335 732909909 711997299 641124358 349991891 780230195 326168828 903989541 155264027 854141784 762861129 182131347 209494277 757083594 787525077 512357273 993047893 391064762 886901083 436183156 517146686 809601817 431181559 689810290 494562109 624665753 966764328 685770413 886771896 628516358 274501399 542818462 572306220 658758458 111223389 438107806 553702714 245915261 727412287 888706458 165885996 915574003 651779654 72038281 730213214 514960273 191411103 64211390 385348001 603872349 700793912 799962141 363888852 967859337 327197480 858124418 322089977 709034105 880768520 484737172 384314162 48789002 365616274 280764947 984740829 402558431 752559834 320964963 802436667 50537798 20601861 351585826 156550182 4596419 710995999 206066236 684183668 514207177 747232938 978405808 780497499 919503316 195380393 252337165 771258270 460562594 734107496 607930526 567348658 553654717 502272366 462623077 300665458 55346402 246935685 72022904 555146700 827263927 514261670 479188721 186477220 236337848 576318513 249743285 888800577 376179250 187452683 325149024 988274548 797163497 461968056 14320728 5455525 891653330 642780642 492291580 706292650 185217725 123626439 841499369 555014200 986284555 46770092 729774156 187351555 585288832 949605192 843785834 227889638 563270803 458293874 49118856 441985112 117320834 38093401 120603825 393541510 422914196 1001837247 656625854 814712032 919907549 706508161 221705275 430179927 743588066 650850040 853868564 206580346 204599514 12956395 593971251 214723962 29723585 446402823 818535091 838607687 64020927 243171478 316855302 402853630 256118141 328398949 572164589 815896371 435479613 986049780 793815164 282389893 18131480 166061898 92881160 374953504 503011216 818381430 445145174 9852232 189621363 507291594 503010358 462580182 190141848 531301140 656725444 42140905 714141579 17379091 693192439 795473877 870428009 714318601 209647090 407068288 978471122 494205767 908007325 555826947 601175750 576107337 881889068 712723279 994841220 949135193 68782810 457436614 43056925 557611789 789157186 486390708 516582527 322404096 222006417 597025716 86040748 359181961 584124739 719305226 927670002 264867171 535326107 984069029 659512103 257037925 365745746 3585421 636746754 790014441 146595756 606454784 755277024 263169253 960257032 547096436 328875546 8357028 407892170 4843049 109997965 535280661 786518628 530186618 841750393 403138908 66572983 191765954 999598698 175554320 254754 907836939 686154228 989371355 597749255 954252123 432635565 590843242 169176714 232492112 751871752 502966132 72077179 448591156 571016588 959752200 785283074 234962984 347260689 403116110 402957691 861753374 936526031 922570685 465360677 299297847 216928426 459272562 824579106 1001711612 122615607 534721882 869449151 690573667 420534852 88509080 947989502 321271325 264182925 408129582 175124603 493278285 932061000 73056216 815539118 521057832 498959078 677494020 141111367 421084413 726832308 535527410 899163975 353208323 121881637 340928170 553349586 263021311 936479423 942045547 116419404 973070477 768192025 535603370 343666360 322867170 946677431 911571539 166789654 623375493 780523341 281296209 398100379 96716298 80356293 108490231 434304737 293619389 154090396 39330492 828613274 715686033 483532988 251135316 125524099 147119376 58241659 729446984 972497434 298173837 287978645 581500348 570867808 683643413 494452251 479530486 110906474 631770002 239546536 775057924 380300669 702042180 465803244 272544408 186079142 617608395 229429617 525201843 42005697 219769570 122583884 769818511 124603290 96084220 130893598 791977654 661940237 919761863 137637021 261747370 185579734 752283045 197914144 559644157 843092612 111515321 985390908 43301138 591711751 179564993 828416823 829633931 111892906 683564500 321190123 633597610 492298592 490589523 347451114 194130416 935712407 264725790 277953070 819777508 787550713 814308197 144248370 3488289 925105814 150354553 326248232 992839430 802095298 755829590 773028934 806115737 57280772 824784135 728029955 495876557 994156410 844247915 276648925 510785168 464609167 355211617 223383446 346740971 28716593 902629037 337637617 743202670 415624478 867208151 371063993 402552849 941591035 433639137 977908283 211436123 920349295 701099390 197886811 530201100 887792656 397050858 885018847 700852060 314030902 818707015 48518172 541590190 678982547 895586756 799954682 216641981 184893021 871755677 280476148 28446326 102761782 121671199 118787471 194092394 1303966 148929415 587549303 934889682 525217484 421906985 483671258 645626504 398168754 571516196 51159497 489159261 641878414 961797409 676152264 170968 128702454 61778456 116646422 797581360 54694758 218870156 911851222 10387443 455500259 903796638 319929887 843595633 351924802 453504385 473163600 264475607 303727713 984244157 97271501 152147451 311472195 635034706 267189765 804251845 306875861 427741932 798639854 564483613 486072453 605826114 136935129 256269343 898837987 232153803 362842499 100977035 728793990 182058276 933108719 986828044 874922108 655577876 564766111 174896784 178601406 934172305 645183627 913650762 71730069 315391558 86712884 433953616 297958113 685723148 464920887 866730728 400604655 519618709 728269537 540660606 853382893 734061153 175232550 649921939 132322467 819527358 32917897 934756195 217142274 661936730 769396624 577875834 101010331 106673165 966109530 450720451 287977421 356001523 780405907 515187919 679906679 716343969 602803725 622634873 949603762 714566130 908283253 604139446 849049191 577327581 644356004 801079400 182336616 817747922 855168700 240334596 493283457 407503901 664870170 635220279 531609640 85919934 446459025 344494482 898559065 489054956 409633396 805482084 697206975 488970932 427630261 231380093 344401641 516589494 972021139 595014849 684167640 363468561 74151458 945291726 943200203 542763174 745724184 840782938 143725405 897134182 893661780 20632844 991169376 65049552 575868847 679842946 874317895 189654555 654376543 157400918 720943395 659761772 284630763 30825533 567898617 662334450 659363873 471582204 505417849 978439880 714810253 47460177 589381240 819364219 740290520 250557942 986695460 435617037 932136888 646959471 425994734 145446051 172790879 572171042 817144455 623388558 1000246173 401281351 725594627 811757960 9469193 730370727 485208113 452940761 231733225 244648931 398086662 528962308 803425438 894216403 924208089 37383808 722922425 712931494 745253011 257857588 8953014 628968525 740402364 132572035 739114657 307114099 803038826 931912190 107984707 126885237 50985627 376880583 705854146 569368533 549269031 347476780 530233647 97620562 296202072 910485975 706529094 378387693 999039043 527967736 82952950 607103808 775209540 755534686 635335147 716711664 489354579 709830203 967244329 491862888 7170951 620868259 62066194 658147671 891805920 432694826 363717811 499604665 680618958 501537154 786401317 107462059 988725921 824462461 385379258 626388527 331125902 395338324 106145516 190621855 514733803 638694835 205914298 762511335 756374282 419302481 910326661 56675225 323279982 500922127 329717918 363362934 200129657 601070150 643381780 396505965 1000591066 99351303 89956837 152246014 486610195 700996743 521432377 908818254 97481331 975702054 226749954 707527326 870944431 517078000 761896626 346617869 358549781 465395758 80595080 545719718 10510289 571323341 485056976 221275908 769276419 191633198 144465410 103270302 275864883 295886890 965919824 717507665 599975456 92374622 225818432 95474099 35983446 373507641 282660881 993097806 601184363 441549605 419094309 458487525 927948087 96597377 457100425 854484360 643927860 265050263 473470128 243108849 892912586 496425210 136644411 530963367 426513065 124203829 431678992 919062486 371645359 24306184 528853062 392593371 649177202 88360344 939504813 792583209 237281573 88560562 618037723 976518316 927929423 774275534 230221113 47371780 423161364 488685885 894381393 155421522 855865727 664857444 376771765 560369797 786695096 651692799 157238982 356128594 691050904 24169682 459510847 993867044 825843544 556559760 232197008 652018189 846664165 324180523 524329586 817640804 765332896 90714917 466010179 46307413 710724334 721714271 979987243 221522522 688803931 424421454 334356290 565357367 821357398 854322040 401479380 22897819 91801762 170669135 463696800 865768642 876533353 269481308 506856797 268908158 31276417 864765069 824910195 495391284 463298993 517216495 670998386 129166428 453183107 51881638 225095084 830697268 223790518 401443677 520048395 895935982 857451335 108367824 503371080 670847729 495405668 493112479 169656113 473930546 370208897 541512567 23427529 903863064 29657438 315974340 306393471 695524106 383643150 775323894 75109319 988700968 476803376 424353793 875723475 682945354 392355420 212235435 264379713 831876616 125655346 259561172 695116499 871347470 150271751 338167001 970815930 565493580 852319787 912044853 942418683 688623918 122984924 692899307 110700846 909521693 629903369 317149713 670392607 780744979 20631053 100488506 555689558 813401800 747572832 400921007 739391828 136322700 235957242 816080523 593021069 624441021 183035469 748183186 17006080 851404661 617365451 385612767 65937714 522092897 227989843 909140525 597071843 667815431 461606467 612999276 321624170 961451334 165041174 301386253 736713125 337343336 64049572 648315862 391346344 873219937 404083283 58599976 545972952 35928016 745946472 922468615 554017994 588503671 476627213 817503370 702725120 169370664 850668717 266527864 547365938 588080285 310536218 855148232 745121913 36943437 79343187 902587525 230970080 656012392 146479308 893574775 567406502 275453707 454781901 246052525 697533977 569534372 444939606 609674391 369642115 120792863 171597818 387307021 329160928 33002919 378943831 437962319 269331212 610320358 867424799 161233571 259860207 100268122 273676561 234689476 699181792 928125250 172336075 829972824 931836033 46337854 864226497 922917291 256309895 750186088 362655931 467998890 846367834 316559109 518287682 618522024 98890571 903492731 879625351 262778140 438307649 757107112 541204718 497565987 151835841 296877608 245889400 523227872 68407341 370106769 669895101 923602640 861082244 537783331 576243785 874616958 566701748 289511099 472313023 383928828 813968255 79390747 561566045 571580301 364424863 196187510 579492093 789431412 973293717 427764169 591509834 541439721 722073556 590605196 290904235 129540072 464746688 981979854 534938186 304062906 716172612 155558774 603561194 760276871 266739342 909093167 534900553 714261640 334263187 428714634 539299710 863924560 139443916 280384603 238086042 143389280 956584537 587258315 679595619 649616212 1001704542 557534517 164260612 573106637 513848831 898481479 332810615 80840657 250427067 22752544 902190609 360583533 567138617 953456221 915941045 120062649 769049255 192373754 855407963 960538749 408180269 923856556 321815214 336587895 980485952 850267125 201000711 527714314 761079269 705120094 174431089 140590399 515076534 751722040 480425798 284327206 150372043 916686592 111364977 395656637 706672665 666745515 225387490 394571957 163334835 213738962 838246376 512860322 892330493 728654431 543388437 249382264 299764519 536580385 980806590 352554452 84073020 558852970 811469984 428154156 830139243 449374952 757603688 535308491 867720595 579093608 745799143 372302985 600698266 860939612 905503332 960870099 485817572 961740037 923823376 954280938 538411668 517418207 467627722 579566110 154553111 242058102 721997514 529453823 605081211 886874413 426546637 191946756 923271855 203570902 227672220 244019428 707866560 713430746 123507838 99856052 610899808 14770225 840770513 524156292 325285807 184516136 384029107 631630378 787492925 20490336 554382547 437300438 532485194 468990153 263332055 87864531 935813524 837054406 5155403 792655445 410215167 373733336 193847284 464675754 284388915 106318913 359380965 377597911 465142417 313045604 849796220 878043490 949534683 722435513 423059763 662033810 525335730 390519759 850758181 21909189 235050301 729480403 299327924 401816027 407761716 667178042 623386423 211035929 610423911 939045018 664818083 15686507 148912359 716160176 120427843 225537450 733953453 211651456 395128665 712933308 883458756 565199211 706279387 194319282 308988765 367732095 580888037 57854443 89672071 963383782 260559447 956684774 564715357 397988924 326715742 197171316 976277943 311604907 353546206 546464498 938938905 460672915 841007694 535142249 654287293 239474634 826075046 901006804 399374398 745938210 182459322 342642919 790968111 939730256 495864743 588966286 940712774 318869774 396197772 981349857 768294865 76602906 808444120 426019367 584476342 658843152 769628090 504947956 901954943 895754975 83411761 375469969 967148912 439389475 955177162 813447860 798694831 97408278 252071803 610934301 1829720 807953577 449231198 753158290 131416948 850651178 834148453 923060930 275691719 387659950 880089475 922461819 826639147 21080668 704010071 2563429 239881938 877787979 513696120 997394535 571937189 164946806 114554363 143358393 247740395 782525680 121230634 159393389 493237977 705772732 294440387 955902211 443156283 506955340 513543607 114019054 421586738 847809015 911598962 435763774 993842571 846958815 538371902 253794960 63842108 540910335 271567713 11197648 421207045 93480092 869622652 637520185 484943798 444121054 288322516 677950932 144247284 454065239 410004375 205020579 281091637 822016875 421942092 214248994 12704758 732544793 397522530 525312205 979057917 781617715 776352137 466660574 578840232 761756942 487543806 383174581 15475355 536356806 585372440 628723669 281218280 320796686 942962702 539763075 699453718 52332147 334740083 599659373 242107630 628684210 917075890 649907945 580729014 980537068 79739305 428383706 54866860 95427858 734452594 209148475 481790810 83226490 74057834 996045884 284270775 691411468 620365011 125688582 951982362 540108530 485406320 11164869 125383122 390932593 699943299 803173198 910078019 656971165 335784781 357326537 575899630 95967029 286763305 145782673 766020590 634762427 730804296 1002132617 696532398 848887227 961900807 646503940 360368460 688269545 431071220 791724709 837779833 355707674 890374032 798344886 890107084 136316101 707649122 874754440 282384446 593790547 731653878 814229049 234344595 6084086 155430522 49338660 402351197 300668773 718961551 149967027 605394732 863496189 421105263 388211648 997387251 885122384 5138400 136980364 764584102 650006756 407262463 416814292 419267811 472021533 760157761 81370641 129137838 928293265 199105880 764749823 457811470 704701947 66634373 327085999 147415465 173841119 282654620 714003931 872023581 506247612 686615058 631499690 572561106 27117653 621270765 997256330 3097446 212588879 659593571 276108686 552592598 468656011 1000356337 835555820 317849132 324548346 73419645 344171587 767652118 481211363 965401008 159364767 29091747 245786555 426772341 512777972 10203737 802876377 467565785 171044639 847341771 226303077 807721015 222284285 393559882 99875135 314395 903862179 725394171 446551666 884757080 769411323 468047238 365999301 947518027 543816981 1145195 700926286 372421736 363629106 893418908 567682748 889550198 132459025 622843530 139765354 559086076 654530472 228851051 312453008 908100285 128325106 313443116 340117439 67414691 31829967 912579198 38776789 187381142 709219033 301509601 520154030 403705616 510974429 845113625 207467716 397547575 164090736 72653349 647952095 770078506 752890593 377598872 8146306 665110435 564633899 854236081 767551627 925235049 580529848 719711494 746832762 661016868 550946423 813827746 868176938 851274465 664236651 415781369 630971096 768392292 808380007 766639198 570165841 860269318 658771004 160225726 480338790 462407143 953447183 979836230 316341051 639779791 851329866 294886412 303480032 540168865 821714517 649318132 645360660 977293735 529767635 543554212 89095596 338518051 680004490 281140455 162301309 248872412 445294353 290615768 619885903 151076204 667470047 839573061 631021918 67598223 769451061 428758583 833142457 451850146 309987933 708690315 3389382 255609162 39410410 315264604 677872438 138440955 803115623 56849591 810692367 643892037 27089714 507274572 619019466 813478461 138720158 612695762 429674335 387122312 648940987 714999145 255542063 245771474 67888868 999322752 725447735 26913366 616891342 164451316 182842172 705610906 683527727 346028901 820591107 782735985 929522249 37469984 164700580 967601707 804360745 982323852 704937330 494003461 348379097 325072339 9974015 197179074 726978326 138328068 964378847 810731500 45934381 856994593 171219520 540431911 171974643 984080336 751779441 592661137 47417734 197315773 343456439 305097569 76781869 469176508 708412632 123567633 524839500 20479016 939282495 272919564 254026243 837217399 600219683 740641664 492805796 791659809 463612840 463150571 866711076 419350755 833141505 927845860 232944864 294014346 706492041 604791051 680973795 852994039 196290508 536542115 660604876 985796587 511793168 798053442 588665224 247332349 967340124 410697191 275619071 905574813 355169990 745358413 223503754 143330146 108171894 867059601 594003278 169438230 228499998 250430221 257215001 655803389 603379714 327786242 261263489 272569467 502734816 232381601 556674394 416719573 927603085 104973025 179674534 474701531 794164073 595470831 660268698 253584626 814908565 380065003 16837836 813750037 876271039 609983556 689453564 296307409 960526894 554991111 746271941 952751531 509678001 851036909 992930588 637709583 89629295 558961389 610541090 144301736 62601617 428417078 184999214 784592260 447418407 927165660 251537916 973533420 293974437 899409245 106695384 51634265 879082098 240978313 693459563 662537646 32332400 124991327 615942093 188090539 945443791 474905978 567513723 539968009 317975500 273730693 694643880 326616408 277560286 288138327 378981097 69178961 29411246 994256715 817400059 151760004 734587824 141730032 140628142 217568822 984257856 990110123 922812846 961251575 311892434 199388108 473249302 502499402 164461972 135464215 612380261 45618420 966217166 805475302 714060928 537940452 492349342 86541499 50352962 967366202 301593658 429766549 523121378 701850059 838722107 89265317 243901960 706898368 929412942 679938148 745551782 911973752 390672418 638969715 229643039 156876915 143392406 785372537 915760 500232421 478404758 904361925 993209034 56554599 96673537 389297888 993184562 127177275 654797773 893226260 381087996 825103994 107045572 896332245 393703419 14304355 581068995 771099338 36318470 318415151 719015268 149648607 155613867 399202615 251578216 25091188 786664898 106946351 707845820 761948396 770206491 169828289 348540907 796813019 515630824 709225302 518918797 541530547 607983024 42741901 952197037 875914543 661981057 560947606 796503206 325972869 369374961 633521853 792869163 995063545 953262389 910769601 905836196 713213619 760218973 457061709 46839310 741890035 562775779 229986037 839991906 301256759 66735806 805063200 180898302 200336032 52301701 418358487 32038882 195423507 957928034 41233409 931349929 72881681 646848370 884424275 967815135 481281708 380086516 644001346 444570672 389605560 280497629 93946404 711949597 93758099 370475495 235877893 740306381 183192846 444627403 123053740 609074946 892724330 21921409 927115551 807368765 899447111 964929983 803982683 773542773 668716570 721035671 772674563 256463200 451122310 30464596 937660175 702475760 105143783 732750170 789007822 121249187 677902339 338709482 43635495 137252255 872289925 12075935 622500997 31267494 613760883 723947558 160259844 787970338 776449822 512531323 167391092 414722059 300093965 540596658 180694736 648034223 351164981 676140242 19687041 418872593 188282298 465176091 367527355 164622140 767934434 618015535 541188280 713859409 458958728 481949311 213368658 901038430 590454201 701600200 31601775 815852373 73491640 161215266 360498394 994573145 826129556 920668162 302104242 496355513 652361062 502531491 380018454 369562276 266735712 411584991 480905785 981894792 911686955 580896165 996985150 727371252 341509790 445308836 234933514 122358491 181399838 865595960 462821005 808931993 180925441 804106517 280340004 498159001 228335498 504766670 269746531 160292049 478498582 411717677 460714746 926884138 974561446 50041681 914475025 14669703 94600935 185026241 946144087 84809567 250168042 134007962 17269224 238999891 327383810 679632542 709655236 109749602 403154218 587277776 816859651 8163147 669220703 695632156 498600642 273995374 609384285 931040755 327369466 74036579 252337037 1360571 273329956 771532295 452974964 761217152 224140982 687922948 92201316 666129308 181767820 693355869 800870698 123189362 359686514 979660091 906833165 621844064 198936798 491878270 42870518 153753141 321703365 507776064 989634336 856466163 888596910 376709548 965712423 252129437 825675697 707211896 145361545 793516474 890417419 969230534 301231117 226471510 163683262 233670240 999165103 777368813 7173177 678020600 262806422 236353846 365189149 644572536 594342644 250701595 256158939 882544394 799969354 553260560 818446473 424727254 341717049 114155710 301825997 377398922 333304420 919595609 400405405 799168858 644939993 937360247 240795718 660286307 329901650 13166908 211275350 753803723 886025262 445702819 311314989 300725021 388561352 321327541 776320594 204423953 796985013 659638101 515390668 717599503 938158781 990451803 890689864 399517987 862890920 778609256 88230113 780550120 924067868 357801069 425467263 335708006 287160818 515656172 578199468 681210401 27369417 746971129 185092543 427224562 856587048 49599184 517330682 764139666 154871434 877293177 152079956 351809532 39430486 523262159 151693324 358197177 202265999 631453253 253331961 29682448 135872331 583927923 146771304 492225699 540009068 722094262 298773905 127834731 962046914 789788465 944668483 637888529 834941672 462409047 330689733 568204554 569118864 855776528 865745366 129698450 192183354 742028333 819606712 417624843 832705944 317995984 188056592 424653137 868541830 854023990 491959007 625939162 282436902 978652449 439775311 660515239 442556599 152735992 490361226 23493913 152996722 616237715 51531456 223300385 417901895 32606891 220612142 372762899 780578315 518534877 617745015 456631011 437266082 445605926 789225121 405433661 528095464 809860063 732756164 335793549 146558775 638570865 736017978 645518060 78740742 419957232 230713690 993267219 888373185 822357312 76272044 917788647 518766953 70672039 602461689 363605666 679526397 301624988 135002275 342734418 212101106 760826833 163922199 392355696 599253217 429430564 307113121 49850251 40078231 112785282 112614528 777782836 699083087 382242401 988660778 137813448 603128420 474509942 957235324 384040591 100171876 269792743 657982983 739495333 651613592 830040689 750091558 216840619 323552895 928138303 853588859 786483775 862284159 642939274 807909313 253230527 489446916 827084264 959246860 728069729 778885019 493487314 872895201 423413473 91665592 942672519 441616504 134481714 65520685 432766645 326896990 119102394 110743956 453268136 440123929 659902684 47280861 649444179 265854283 639106507 285709259 531658243 456635627 265767522 411457079 706398912 819399343 454364639 173129663 247643824 528259363 506901093 592499983 25118605 478123730 257678938 405342810 748008167 600007661 29253841 11525828 361010098 526744605 802896983 551664404 603004469 584012343 815381035 871627490 868614082 710405871 659736264 104553713 312686133 431834280 271296603 830603757 528087101 500129000 833852433 233805113 929694825 497146244 150515592 289697808 706316557 497475915 430055169 134624016 544991004 617048301 706581800 313983584 688302024 578028711 870316975 822670074 799013432 210486621 305929362 764776636 177395385 104370393 994271346 42941965 593987127 418384419 157249087 812823094 279250051 64457167 917694738 537831129 954090816 215760443 354300660 161093156 526134648 407289289 463950196 837364868 73689084 105805858 468875507 791640082 472998132 234482321 130879149 183506835 778815567 981525649 637594773 272492437 83630945 384383706 167498931 680139612 559189590 185603174 391473062 471709494 763276422 3826930 779314094 782483620 335720377 256143090 200725789 657799110 594537528 758235801 204338890 201450252 705138583 407203861 710745374 128164455 878151370 732429888 424572740 714330055 737586859 656252527 249979941 530453902 733113882 452292869 431897484 938113854 963731553 287471489 468643903 940138447 782963694 192181435 547477186 559258177 946735673 191601549 621753692 109602119 363954669 978565747 579515569 736723442 476943907 846798468 938052966 83950143 349433998 384290379 363161302 563501542 363063049 866120173 100961023 616370940 108604952 54777220 841280207 358129158 587227767 492091706 758964038 950263721 720536891 827087292 793421811 644415332 718682877 120064639 72196969 942838290 778976029 446986907 489583793 795751672 987663053 814009539 950364577 674737023 999838237 278508303 258398405 361236682 251035365 936385981 646688010 865815607 173824829 790453125 728509197 745258279 670727700 87730507 604418792 596764330 603210606 315234816 680997580 107507355 573233562 211496139 664909666 668833752 540374005 485497935 190573134 6005682 410350515 644414694 54491022 487684837 339726679 690299379 371628071 115274086 427066351 423430996 587622673 371878401 509910431 91608438 346430451 605035447 842860232 745674652 584188530 596904624 183031266 1228274 561252094 270561037 525104247 834271717 264308882 212557642 764706588 863857646 106582569 539615379 224918997 267820364 49819164 808891471 958852623 498536245 879505246 847642775 380993741 503372001 213554642 447090040 88920723 698112308 726661211 753135396 134132602 621213927 121810186 91138035 704953968 205850789 448013890 816828779 102971595 917113125 74757797 944925588 326723986 695249305 887243131 564213888 820816373 467937618 166521416 677905059 903005433 254981007 556443538 951404673 675488447 142311873 392507065 743836873 272528131 484784562 351082914 313726702 453995360 97412195 867559506 339072787 1000480580 991280908 50113459 607893052 454360706 283373191 795698394 614072838 169554741 606638276 919382945 391152065 506678944 382200059 335403052 525402724 676846112 992009940 408268858 974441676 328794674 981724009 55255657 141819713 280380875 242799268 266144547 507634295 800628194 336621435 620182957 212105601 735993077 626937422 486602901 814916710 586111982 390487867 696422434 320703839 925466761 375181376 1206483 442063843 117078868 213044895 73918035 653776141 952456333 728436325 213793397 783719057 493917176 309646979 414958010 351918692 180380422 371212158 380857767 726113177 87595088 461612700 717396698 418236783 748638339 512494191 404998812 667742430 943674989 347317013 875955251 906673305 37229098 370860721 645888535 309533188 200027718 599177478 463739831 105350508 878194068 858486754 923513970 221784030 707513555 373986904 747528897 951405346 264189842 496668661 416574031 287656586 611435499 999548890 117249534 47843859 984354026 988162234 649505479 870373312 611569009 349131256 984488624 786938197 695128916 507099546 652085333 903725910 235644813 108359065 281425733 789967503 88801355 621892928 532662259 734104297 352405183 693158776 379047756 245986736 367234393 840572469 781477242 837701895 873420290 159664166 683837856 572351890 504994393 255070824 1000647170 55354988 642541114 679923789 907451440 251276848 737087528 880096765 932808868 78611098 992760830 893842485 933625576 744004845 279292893 472473194 267370041 824195458 133859228 769885692 12247519 963381878 731281213 686766116 607593444 756303880 170409014 365637363 716669100 435287129 878210497 783724498 474372736 6070086 974907589 372283615 609983914 591709784 528706633 290375015 298630725 784071913 206339094 662384370 506323599 336173809 782386669 792598823 62269439 5993053 987391979 224982271 208686446 682328136 557228771 875963833 538291844 667934135 288279021 628580332 456793382 174407554 275535848 557603822 281393762 492531872 286980756 54365255 252175100 335147447 709047705 701006643 381376446 720913798 945667883 556217667 779864763 210895975 701124677 89633804 665383639 409885906 198245724 143435242 647961850 32612050 753283083 274656849 908186816 18036605 557637865 631617240 135814074 354213624 508196363 2826050 611760865 339571773 448392669 169104652 506382736 471176333 928598615 56388048 838696090 746965462 284297764 241894528 245652852 724291892 343625039 914166971 205500784 331483406 314251704 917833214 944459644 213030303 770443098 587979863 576851426 825321661 311516984 129441858 972977318 732980533 925149315 967988237 914902171 568868420 426345994 437354397 177278783 82050061 425767670 878497707 769799535 485506176 532895899 800952160 1001728847 381284150 991042048 833847229 620295363 362690125 498805677 999159267 171877178 709082522 55061577 479022198 763199292 464276143 758157481 321953921 327378126 553370992 97437584 834743460 117923506 164043089 37458753 888736576 792719593 916029939 837345392 941884295 270522666 667096955 185555670 809394068 423576034 35961183 398315843 718406636 191406502 920886888 948693428 691358994 740768812 315986439 902722766 696199181 199596523 528060791 438008361 672850760 940189140 575581492 585810197 212315878 109613036 756324252 968417882 461975946 589203857 943883279 619616688 330066890 921894235 160008596 46295152 354381350 62755900 635063879 989326453 780901257 686738570 120967863 855172885 247483307 506362688 167187336 123761551 537884498 4742773 932695457 829021383 594481795 375783676 951515773 189660521 910384134 666757421 685470095 405929562 751381231 436075835 196937215 416946872 153055491 654156400 667730922 223661008 250120822 784790817 678108291 523932959 3305888 448800367 269560025 783311093 97516325 815894782 814407646 90570145 242487162 949226102 784910180 773570155 551830740 5319835 395079625 121149783 231506531 376751769 784197567 343122454 183099007 177081666 603668336 765224668 358552670 178776484 247972991 64892952 478343313 916156418 985615385 168077398 367168180 630839621 351462936 808851898 487313845 790752403 418534647 695990130 528434489 277458934 838935891 82097369 318622617 706918090 457107847 750270530 880167858 835593300 81218631 594348934 684038740 561094698 245806608 96182623 487826123 457725846 665495704 339869630 625383274 174742271 355932243 6554357 89982393 36717855 838937215 584177199 234227314 64293516 573500415 81359883 220723931 210444496 15746440 302609327 88391669 409921289 865578658 272853441 903135416 214523920 384574073 48562720 121169766 647203140 706536931 910108698 142731013 869152101 568314642 942300971 789043506 748415053 351676107 335836343 597632906 649696831 614783944 50037003 227670749 449077855 646432519 236069030 692965593 830560123 642230403 431183494 515490230 223270840 615235588 106731697 433307745 65873936 960131467 687307572 90978330 211578232 314739818 676841920 723855146 486871905 504244610 751689361 899755528 840176499 676564905 16530977 248472263 645222674 874497120 560792080 117432988 895628071 791599379 715498945 618408179 863493132 874908123 370354887 990344800 630198028 206837157 601887889 398652803 986008169 509186782 539848245 657006435 195399509 806559912 755098089 39105343 894404863 303311341 817059344 748697913 586770832 984536663 516704197 694729111 174306063 333489647 977744531 524076824 396989187 813540472 415312453 531512515 456622860 640684106 618785286 593375279 64792617 230180466 841933796 271159616 658770511 775921239 535335489 604969907 286224205 117508433 639417088 503054728 488380526 771124859 507202780 821127934 811294521 242870724 300442424 899167917 383479768 991875509 736202084 552585510 503083360 6395814 305206938 815453018 575048772 994659866 922390162 796519552 521659384 417615695 244320174 573307257 636069399 661955039 478941548 928852319 429476702 679886056 297942777 764138233 310964009 70181032 757649027 839974584 401701701 377767644 36252308 536434042 523652258 84602019 475638960 491533812 961838314 820628043 910078929 551490326 84751101 221666230 247620511 803906753 951805369 257119836 531185809 317357469 245017928 399310754 823925762 702730853 934018855 378527662 123086945 777436109 299592633 31666029 84728523 248210346 16794821 347536044 778354416 206278973 117260617 719900761 441147873 688914744 290860327 324434284 714485282 409689329 357693178 961814313 118626602 224983450 265300944 494768455 562756784 712933607 873408354 689009214 534125584 426926393 545972811 143020292 404841810 825296952 157736801 944795811 546950931 102894977 506966646 116597958 661677855 592261605 566920354 2306329 152122252 329502793 223232407 70295531 491476211 481683027 212249636 994313357 93002142 651559083 570784815 647399522 669627336 185311793 316749972 870456119 924834319 265710129 728119158 548753403 309816251 49628376 584293633 553942384 470539636 810381953 10934043 35263851 332925966 225588863 642450229 819363361 232127281 745833917 360076405 319554390 139311741 668386725 365596563 755211400 426148477 300958072 268029601 644205355 172631433 203073866 620259003 7185122 133875649 614752274 559164629 44668316 181657078 648478748 780850070 453392120 911903183 1000379393 52021791 433940146 95707596 439965180 437922842 634649061 777586290 1000024188 924600864 373608848 687951999 74440324 664895619 555021429 274602972 40655380 781100266 289450520 300369089 64068743 772712769 396549744 449087261 776603914 252207510 430968050 950554914 738061989 356096527 957813921 276792048 598897216 613917258 622328095 774686915 793435836 831604014 46350510 245825170 245673277 411333951 63942463 582163825 856010592 597169855 936806645 244504733 50995294 780922774 850886259 754568555 977739613 499377486 446327697 46246290 632731937 790138380 555032594 163035562 959917052 23198652 2605108 849453168 643099206 744640224 597897108 946963525 194192348 240792452 559763169 942926089 67236911 933139007 613034441 684917156 415075013 709745335 114726197 809249822 1000955152 522853531 793638116 798648519 1005075 715348905 866913573 133170444 564942001 472790933 20131643 107506695 720924077 912912100 953919955 91245622 725196376 826208245 676468249 214816171 213642669 322278277 617322229 970518351 712420139 268732894 389519646 741393612 39178653 305959349 559000240 668336020 634988351 389110227 143439283 445100136 337139544 55173980 468859129 314339009 38356939 185737919 915502611 21876029 765286994 548111342 686822538 420520828 256651721 320864788 201629183 365060864 338756830 90909843 229118831 935108977 485128401 342358140 829435490 143344594 282425044 486331830 524336388 740201680 665009127 443573128 688614681 455222392 152603747 484703672 762462566 45388260 817267558 615316486 779866287 55451414 556534104 272752482 846941069 606122538 559523374 468017737 72352111 694153943 885007532 859732912 177824262 257750637 373360140 228825656 170835748 898616275 816635821 317699954 599362664 626971545 617471346 738560966 797101620 128301967 181250526 139376548 218791810 759302334 430842812 391213035 609400671 307064306 167028904 923382727 744997258 515920461 97422061 4475370 742239990 796431245 493732159 145699544 217093023 926357967 528661920 220407364 578891014 956981484 982215602 372136977 447287962 880721679 40483666 780184770 906931521 763801040 740802986 361918943 531965081 947514915 982097365 770471497 181369491 828751294 497169578 572133734 335566415 99620360 432797545 987331930 532905152 765471031 550394493 355487848 393668095 619681823 226396069 529594502 812064516 765817873 618787858 609225166 772359379 34293850 773578830 32155286 834607237 797382143 991960469 78797327 900229942 834850321 741331549 572400385 132547922 648957857 501480810 595704062 982841499 120351157 977911090 629763858 164590910 956542795 924398071 835779907 524432066 215913327 648645910 650278821 924307186 908039403 517383162 580318510 999669368 649726385 964527724 192698860 605231977 348513060 284772548 634872612 294517275 545895628 509296262 225365763 669962314 116490796 832314242 357719985 583618849 49712608 565725419 324351935 699544175 411636506 33257151 477330533 37513357 219764233 441023468 609065316 633501525 307964809 382786973 818488265 576773557 31293908 82091002 614569165 743808234 793323031 17856288 918059085 725713198 573817411 57583277 281411068 370465055 648496461 440058314 776984020 434157556 189190017 881410625 522623492 589593753 865474111 204129675 340104606 282470255 702415907 788919068 868803167 531045041 603473795 39634613 956230496 146033897 525625115 189059318 853250039 495450696 302065253 169187087 534036329 643984580 778861058 247239898 871352683 92913142 343958199 266915255 445689501 185728262 369211022 371635336 562352077 421287182 600494965 455103388 421324414 275222034 845781423 210251377 814807254 81587699 954123302 687389262 925548153 654007202 609639783 572606332 369798825 689820312 888347571 821945541 219935516 754983627 125182205 946589707 929200290 508696004 646761150 647048853 214331251 807277338 376260446 985327150 594303482 636698017 138155112 745596181 910225540 921024840 377201807 71442139 956724559 367815584 204833778 249853332 7140821 323728105 195974310 670258286 244274311 341837856 20046384 719666845 681439635 716104938 612101569 718514311 990840630 528825886 101093096 425011334 718214067 421286895 34931648 288038289 96563771 370853440 555774977 241636439 195027936 53336861 567132913 901351811 176342422 856559932 6404598 918088452 717253086 575932194 429627017 735664255 928413891 996830078 678694113 512345684 732172995 648450227 506743838 152990242 801675789 961254026 731617807 990280049 906431513 283393712 801699667 541130658 987712450 362826929 553786350 414839208 154977826 220238445 867429643 954838379 526221974 601809063 117947682 217451229 355743653 159378823 111516520 365784401 234215350 785334701 257807265 243435929 928319730 43727944 280222483 978951914 610021137 454040213 222053850 22937329 912644357 831974100 723926057 946662060 432221945 628428512 950789702 164377799 297705137 407787338 520070125 776871993 108171225 186352416 192868756 814374759 174713218 52217322 507993321 97536947 646788590 833184971 398905044 503673714 900828658 274013634 993020166 840298933 788841812 275509040 921072119 623032701 646058341 951811055 904508892 306270169 718139859 327236081 158154347 290564234 425426028 640809375 746142664 44932866 637394852 596941678 794590859 413657884 439047993 186974616 95877287 805219733 940442391 800236586 844783756 807900413 495540461 155669495 720965523 621363913 496519160 205669803 923303614 522622468 995587068 40318298 250160940 665797523 326891004 184314697 537094594 314703568 158162126 614929193 23473213 826785660 528954522 748646468 701235907 543326717 935139252 492859807 440231524 288460127 412049131 398199391 287852067 730932190 90065014 365683038 92158140 658267916 946309393 321009233 261211282 392314140 950834476 531201152 805299145 687001547 744842767 424645825 317503549 737360202 617019437 362281164 300311667 620671558 508574500 911194390 826542577 851923005 695662262 333975390 506974637 919732292 299652773 445271629 57802187 875595339 214788208 671042962 944651533 641874619 418482569 341803136 375204924 460885616 994436869 491592005 495494980 678322548 25943765 47091922 508971987 517991167 606020618 339489694 437403341 511530303 379788847 58572723 278431588 682692103 93238917 883613286 483471247 521467287 631196230 925773232 530733961 14335377 650904387 652485975 497483287 452416673 88591884 677954319 579754152 517452936 695707723 605980454 669400699 983521985 39480501 381613989 779829769 907622720 901642620 626072269 470146935 735971688 35594234 130080617 116180277 447998003 804587935 154698015 835913967 172017094 871225618 359433993 424983622 583193680 706939409 727017467 476157430 808393085 632960817 756031527 344815547 578681137 755353567 514006722 357121629 9967114 694624069 733485119 969013910 465631178 161639576 234206891 191669656 630519610 687195749 223514948 508103359 479672258 477967660 622000865 937336611 252898739 282174034 409546823 240146713 607699705 766842854 548690278 321398612 636499273 357642159 308840802 866796991 879487294 749714223 77395629 137432826 676109719 27940429 161330794 104230381 679606430 151070101 558228845 763935019 686345281 465347094 316476583 384436121 662787287 427807419 568330644 437307183 781772599 538786744 150894299 115449134 522869481 829990263 208777062 33803571 106058132 112672489 241205743 839772053 953865697 330146596 986511647 700197001 52273231 919680132 593333510 543572664 578993081 673147508 477607298 664089682 768030535 363428954 150194170 239787109 882006167 993069588 937920990 471589397 410708389 521432191 629261007 657403708 925924531 57160318 607977775 277985086 723789405 633599031 629971101 893884936 968682171 862739510 516014028 773381160 27096237 185774373 185584444 568240485 968559135 432742557 578546115 249721717 401594327 841844706 613437679 499500610 690764556 630294914 589364077 128998089 451120296 238218491 814766190 981140441 517636275 439949745 353391411 783993228 444671828 441734785 581110535 231752034 392272157 964739245 360129701 558233000 738890822 891984984 148201291 660897335 720383020 937870044 522871044 306147911 619010910 706152084 704492580 101016188 339159192 205044055 38443781 264337978 614528887 706310115 217101393 292232932 904983635 694510532 695823130 915785792 883601546 810281507 841321643 217171358 810325371 768461430 983228262 95309757 70180323 658862777 755979985 317673849 852843877 50196751 810329782 47925557 134281444 547070648 968747692 137434722 538720241 760634089 906146220 914909764 919908559 849610620 2201558 104545143 90579877 352045162 742914069 350663770 211916190 291333163 292916995 858657849 878065889 28709219 305189096 779867097 424549212 720504017 320572761 15200867 174815245 588897180 961847459 573093922 422948424 624431003 973521509 941092910 176750709 964360556 139517425 964886610 641580717 284987945 837494911 911615198 753864317 371916348 873012473 286029176 747073923 489692015 211338297 197592318 878463882 185516034 255019263 180554545 699412908 689313699 424538715 831082032 263581457 50511189 780656272 890114204 4335152 957979176 352479357 652703568 948395505 222374215 798767550 641677363 926708880 702644163 384578130 113022711 876222687 237227251 144813456 445080184 329962919 562367021 134228770 170724793 899033541 246625415 49731233 536311013 520493212 108157957 552286100 472509703 208679682 205896761 222589198 793708005 160765395 438914594 974810270 16687062 301828315 924712074 867814192 857277856 393344765 479110634 996418001 262246992 377457922 815575968 462618818 139145757 923648106 152544178 91975735 147062928 97708641 499183538 943755594 852360927 433318952 66069464 823798561 539354109 741943837 746275792 419667986 388958402 132924763 457202664 755241798 407050427 17284564 419401379 703722712 635244904 732025343 958461815 408106828 146469131 666255796 148583247 623531891 58619972 866724643 709429266 958695453 569900652 68192878 626723597 708889522 504821249 908761631 193359157 921285775 173436828 434939221 698937106 392374191 877886754 298060943 621158205 514116613 189198926 446336994 501878809 525523882 754650604 354900834 334384433 161465134 847669201 78968689 231137799 547248575 694379761 861544584 51685934 833978091 319128006 411428631 732586104 30283941 293920022 167477525 322551070 102918139 443988594 294375531 3555552 542512583 409462477 597708105 443648510 237975560 527880017 815820609 852446385 305647199 737134868 112661799 270480592 447752159 413691618 219858512 840489150 572537601 759082707 417454435 936714981 229113536 822312674 166350334 429696566 25689180 382581852 444504759 292406641 614236906 250441623 177683997 53615003 213255040 259136548 181749254 265034396 25676834 178552711 59719367 182623417 676743199 105086516 41261092 833176729 643061093 481864927 591367345 319479403 617698109 588848133 132138526 856295041 524263238 61923068 334343769 710005958 493809807 933393748 347704507 400795891 585911350 978636009 734535109 353872734 891951488 175018913 253659261 80576974 33504330 435081399 312839700 529910529 8760837 717191005 955961280 964346010 290610461 824590434 21028550 784921227 31541532 622392325 319452798 676446965 217535208 709215881 545246176 395766586 470012643 488019342 797271850 272900670 175904973 391738206 425635803 451103971 953676051 390505112 532187389 72777008 466648287 713602852 165883626 23553569 351664614 931067016 286312050 184187837 644575596 166540945 762541419 218225914 971786423 981865971 343944837 61762990 211604740 866293689 422097493 725659826 445335877 450491015 919464834 528857520 951971672 786639524 113863277 626598261 331217431 558887369 910635314 775924032 982555218 809385166 555140966 695321200 438787525 173473865 321389568 109347095 441453991 914638215 230968390 711053525 772601301 996841749 186556432 770282875 940980014 766006368 749965959 539833154 495577197 230207732 291709680 458897786 851338289 905406010 410304701 815045774 859010687 365934432 293298961 204581965 878146338 763770208 281182278 374839324 950347783 807937728 793070319 583992240 10992166 973393463 995409096 384020096 683221514 943184618 829985783 273251782 512097568 474904555 380180250 558791296 646736157 149966117 987667876 21852777 75740569 378321754 853194193 343201368 216514695 186315499 650336867 274389613 431246947 94763111 955150470 273344446 13107655 903993706 174785648 555803777 544026843 738123863 911087730 957067216 928461810 705348429 364426979 353085828 261972094 606929936 932656933 732695158 703849478 914445991 301734246 965455961 273337341 869236620 987205899 589116473 722047594 390104686 58770684 743807711 1000949130 411469878 884111283 556011184 246547990 841099427 268780996 584321490 748118965 938609492 183297377 331690133 430901246 370512856 499868476 603691026 136153024 668742567 603624988 566904827 205429447 489596450 656548952 774812487 708630186 568477286 747240098 696809385 871131626 385688348 896259496 629964046 166400123 341644741 558490809 614470547 321517053 419308452 47842715 167513614 957215897 446308815 927807290 265406326 127340170 670524664 623468929 758742825 462204927 515602418 722619278 960395881 926005890 483147660 459887384 783198766 14034179 693634145 293018330 932162358 356822980 446672432 390144992 138391764 354437665 833212880 13634177 430386905 624651555 945405241 720814533 505698627 174711878 966233858 316638686 830276005 136349259 210978765 857578063 303538632 399833132 600768203 377613351 876811081 192776958 1000168851 773421557 345320427 108365435 264236176 982506828 131589723 66788977 160661387 40379943 554930596 86491224 406993 742932586 177610381 891325540 447526799 948802492 244821291 857326819 10328165 801665894 983136471 785728849 648211312 325432974 872228611 407007696 793788893 432461424 116372223 966226124 520015218 291501600 549492673 940544127 179548736 694300367 425331202 139647266 748684003 398592619 72682866 473021362 869138617 198243548 649097984 224407063 549003773 807956382 988417299 671318696 863386326 523385451 265492597 472529104 577314822 85090184 648774562 502587885 546602843 943263747 965546108 296332613 214891896 236414193 363426392 2813528 681097023 944380509 52442800 329283990 749691401 12452130 276650954 872756173 60769402 421406676 590849537 234792105 473024196 446386373 681696128 557996775 75380396 212715773 176204952 836910975 80816887 252061036 329630035 273357414 812152814 630445307 746545064 50673448 11160308 231045644 672969298 237273565 511133431 684547229 346331732 386789113 902049571 285379941 131508868 824996780 384404207 207672417 735068647 683376425 258267912 518186393 418280235 241972658 505234024 829148881 791562089 919466840 616834615 636886467 422214891 359882944 457090961 193057482 209764837 560580186 455180859 25148233 443070735 636367677 918563143 615783070 829448639 593414038 249746509 913170373 316851800 418021338 801166949 141381923 112485565 230891352 877102849 723486336 48662691 708828274 331676499 417184743 877178500 602694071 553401896 393133521 503383043 555115578 809985329 620084074 942898535 557630053 258345554 158860187 388139418 214970698 38185959 249796039 492248802 693230711 609668654 303701330 442934453 262198287 166536964 721786024 38972026 874902579 460600930 925052549 341298144 372428866 631905446 665495916 52975639 291294709 132718891 467840311 148319120 850812568 659941071 146056730 815018974 308890993 867629060 445807830 6448282 144910829 328504427 990006945 571993585 96514431 952676314 706339355 888310093 458057286 715189026 784149112 187501027 744577832 293932091 963090095 930347169 973872978 321498010 460400270 707740540 240269959 509391843 179570510 348488519 940333773 558342323 532270627 904672136 908361017 804851998 384104940 592414530 791219743 794806121 102139384 226711528 64770310 23651990 698545323 111136862 38652457 972842384 542472374 714027814 621423317 612158474 89160288 601095597 989197221 332250883 879162421 357927335 160354012 29084860 280130256 238929967 718284674 969595686 845737961 51205643 15504766 9477647 550994025 564457107 98243341 753836683 439406854 598726310 214657155 702590358 670408107 979687621 691910429 807903712 390262013 778992938 609605501 227723130 544801155 673589411 131538074 770737294 225596211 255641973 544782096 983165495 271089632 389102611 659473590 860292812 207370451 31308087 563404962 251742249 116042876 860813518 604863401 203386535 584001213 623881319 26226957 206436537 308676552 177995909 428688843 98905275 829523324 465082017 772468840 48216902 957241025 876093333 679765704 820331586 318903543 687230837 717968325 836254796 550225188 237896121 499194349 311947396 485926955 612095138 221489745 412504711 426010826 561353867 118778118 401226477 478451758 551469171 201776645 725606250 681742382 327022763 480311293 959260075 146713837 71436759 733057216 207028905 222345907 59818013 762975386 652407115 909632597 801513749 992039941 410584252 837950201 23368356 606907295 352209589 26928620 92044921 350111274 839939697 525772754 87818247 950785776 148658978 657418359 618799727 925179529 477280949 888137048 817174451 847520126 521761872 183098101 68223273 708372362 565139763 659862906 57948222 819370577 808372497 618463964 488424296 419557523 55243971 665669317 630858934 75030313 838125188 624207907 313638849 974992092 309500660 465984350 695092447 605519889 9166764 277457498 809429096 722316928 399384333 842304921 442935291 402889953 732771743 764168458 359066244 472527086 983554268 10931593 538135492 186246929 474647636 313557005 973637817 584288994 670379560 645899038 392669553 895246765 154371653 241996429 590864025 997001982 781760990 804759381 573372187 493106453 650706384 586464718 92440553 736141356 272144127 957455057 953820318 750896926 646364796 223330374 391747802 71437170 563561524 331893526 24351984 12083806 259335907 819742160 331141055 691705869 249197930 27215449 754024877 724854572 784406488 903778263 102077596 509523534 693151855 707006818 557735594 812297245 174931632 419682964 803795427 548211937 815295065 384738331 869333013 330059581 645357373 696526739 73715586 93664801 516501197 568136305 617970386 449702229 181711887 253401080 502675730 376847685 77631091 837991002 136287817 274980699 50656853 961384414 55489742 828486720 555732933 202771737 870508670 744538186 686141156 241540123 237270158 704312839 413713790 621101170 524648714 244914367 884125379 577199153 203565530 82223963 869021252 976739075 620081420 193568344 540256305 95697803 201966933 805376263 234328975 839864910 237246906 541619168 910690688 40579655 185033759 604860469 88641693 926333839 691135490 882099788 381207468 703636281 623184041 444738410 148930981 884628652 787932682 977892277 408385355 956776635 382937684 345860878 939935977 859101233 558788577 480510352 634376626 930474460 441414107 911612548 135548059 347422183 114600555 515816544 443772253 749964689 723975013 131931065 999246367 255886848 294451226 628670740 515210383 103311380 91337065 719912335 43067233 678064163 785916700 45450251 873843055 558780373 347052949 859718544 598980651 264211606 475260891 461300590 428580811 127634496 727363131 739659613 570846611 18377916 601426372 893765570 771713586 477533411 377835982 290257820 689779055 297019066 691364448 708868219 354530291 300543538 368925314 951154513 410684352 347225915 561818096 500998318 913955911 726288801 8960454 300159128 257509673 316589143 160660721 563250807 47903721 635352589 52677115 459729964 564658166 312328720 508819521 822106239 981734502 503143824 41559322 956725004 664085161 537330895 441328566 334574047 545171927 385627745 764074203 540064805 436176582 314924278 877361014 720624790 525663203 586618598 925425752 685989096 879106530 971813725 38572102 270343411 436191350 624576116 389816751 800317014 94002232 68559436 645150926 980673315 161906451 918794621 168251576 202649779 587650440 854600064 195205875 966867472 473728862 463159682 433950870 8987664 371915648 579577918 236472040 954062327 798237063 995105776 51700027 484699978 893896688 163834232 916134790 731530119 841336700 656303409 602488010 80505732 751286154 588857439 997030986 479505527 722311240 678059453 913390566 257654162 51928848 286938277 206368174 481789150 75123151 469773925 280994482 626127236 608736933 918862137 433080727 812925853 232945280 244070233 359685514 446121199 529666142 798296087 142832479 987365859 779428974 22602877 978165384 233766725 712322264 551466043 286270256 269490397 121664494 890889026 304942007 563843727 577659604 527117742 82089070 495238561 712567961 145428111 860319467 4310327 176186948 237745278 752169875 748680055 1000247890 457328339 322710296 94910315 256045874 57493966 242426083 225801355 848748388 606523812 374579640 868988025 779757525 41882163 10769009 209833186 252924918 580521613 207688806 969149615 40249702 96453674 402878777 782544939 501577951 99261567 264663053 183790840 341639429 594878395 595025922 96897796 628103847 611999040 28650408 959740476 190682245 783230281 208547904 638724505 290486871 274617092 792994489 479756110 5128427 298014702 870330304 619555395 871783158 334361446 157163968 785944516 481157097 567821920 951367932 354747994 197671280 513488320 315680935 318002544 383953180 165017462 844453184 309740404 778598187 301349267 864654750 59779125 600499345 619731477 192340120 829208016 973857723 461175242 982018633 544968377 644080732 317799937 619522493 161282466 241296727 654810479 379136296 707116632 356958665 897451684 668370168 479673239 676077309 392853049 727253861 825522052 867983759 386381999 273544731 319214364 396547900 850828961 530987249 539430931 259266054 875935818 65305697 709220529 693569025 838886657 158501559 656939417 87741651 637500247 910035721 335989408 576305099 656759142 438898425 438548880 965851785 832918503 377192271 48179923 593924929 509974800 65517578 206796649 495255600 492343107 790340459 252144170 212906818 130171356 998688606 280733329 339521456 109853193 337542523 90235469 514295008 724104044 935578414 535417076 10147349 802793845 881317110 569329678 154222141 483292873 890688415 463846267 614229135 950595306 370530215 171538420 274971856 416972196 639993973 230896771 952094431 5390281 761605149 98401279 243130701 611659639 531182207 612178155 262460108 185573514 758181058 871377923 28863688 696530478 485814565 497650994 680916436 301827653 306516964 668013365 466471149 897101866 735945242 383612109 308509972 388794633 258221947 488992674 656921204 747329143 495630382 528805572 796976184 61440255 251683098 458863717 492317729 251096957 577395734 958415379 253288593 846729329 763471416 208384260 921438484 950947100 713028336 130644240 932056323 998336197 282090967 963610200 952366267 12330323 431637950 536589498 804652654 624964713 228860477 210376163 375852687 253322091 463616986 227567285 150855654 433271427 628437173 248361985 572549136 603427378 27738264 911692227 564658042 252155329 44411753 771781733 60650765 97585857 769420201 204506483 773613402 992806955 996252812 433777365 823381973 538873717 393318808 121508059 551353863 156012591 489160204 280616539 561555813 336569322 110485590 161025323 751858732 188060733 225450109 209747458 713758147 406108113 330363795 596615975 442136269 662213119 738560592 277288814 184065929 609619920 907896810 220847830 866259541 265826087 607453171 363371553 128743670 590373869 6303768 662821464 641938803 67389058 97798299 815412894 846258158 283384699 768922032 860417411 346815800 70291883 594003403 548011 119433964 911806203 770575883 437281229 999152401 293325176 98576877 735684171 216728897 262152533 790148999 99558446 641425080 906454286 132196930 464382795 77199759 968194834 622805878 262309826 779934549 964698218 458725216 429864851 284674056 189114623 131588701 870444097 631464092 329324552 41171118 180673329 309481980 479583801 20146872 728716176 315699797 882655154 43135970 667309553 893594239 309792453 192359615 756035239 239753659 646994803 90596802 30804328 424077188 772555434 169725780 354584179 565936417 870389922 619743608 604088385 427542318 41853183 244615060 627149528 21258111 653095052 650242115 5573086 123649888 60545249 197938498 857949457 962713198 921854313 431528704 272853210 793845973 780761061 390096646 699074822 227028896 692306754 414420104 531484220 688024752 972583847 689735252 1000833525 976066093 457710342 783672976 930537420 998878112 753206279 239733222 203636223 386018566 845602838 785859349 299971947 990861026 690942410 927526324 808850018 330558070 93075351 913234883 852797286 989233059 151634599 818561582 549230456 835296297 430513840 805946619 956041206 537242433 118967226 708098461 801786697 512265950 513206653 219240239 832548145 205016187 817919150 885999302 582307669 952374250 840178776 220648478 132750468 527659520 357014491 172979968 433750457 976069150 428888715 729062626 129027976 567467519 891034990 771036258 745400370 349592028 527369328 894475817 594356985 455243978 475087158 295355011 513591685 761207780 184402798 892175941 38306934 909567537 19354785 228900932 653575258 926834593 746255741 672553910 688060958 90012318 463593097 414540305 331360784 866561711 743508805 15252381 459084870 84326925 345533428 762211786 843433152 729108603 383465415 994110043 410234112 421276947 421990543 439145624 702995001 622946922 962996393 821757931 313576149 480018930 194850390 512246954 289379362 682194255 504429505 716406087 599873105 15048129 976327008 53133448 294545571 137418619 464632903 888167967 489008548 501509066 792927625 649715460 411870779 756269462 719229941 985233641 424473552 314892169 613470054 101743064 95429126 134195619 77721919 376556096 999201611 618776213 628420095 692608894 185611139 565108044 804484655 760106805 696590834 629944535 171075148 190759086 147314645 290858231 236964576 573270946 213760653 211009810 544567813 192662269 114014585 878500828 548991091 486920362 171470661 573769159 590328621 619984548 338170097 25225945 950990107 969991260 404490559 649122147 71658868 617495377 809787503 955357669 812264625 832440607 126705644 422006976 953420136 344213508 7422506 526362356 587711966 169997244 56175031 835139092 861041637 535747700 594878611 903584220 598288565 302598644 40978592 854684008 552147749 411177370 403215035 373485091 414431329 342863061 745525702 330144702 689633936 216633494 161668938 342443068 982641706 485484029 983602126 693884341 322099545 723809386 333282175 1000299090 526320523 643388994 111401313 907904864 169649944 154745472 988518629 2582174 254123851 284053054 417503514 794583810 787777194 493274600 39853868 981739997 168090680 964180145 274701355 454852181 956480192 515276356 816291318 458864452 328391900 37577025 729549233 567112838 807502292 784014204 827550437 140847902 437066767 412336173 63623446 615143892 642337113 243984908 252296384 416409654 379808938 248211834 685370751 950747091 814209194 112142738 494923499 644197023 81393867 597558752 887070676 764977850 357429635 968792824 963492498 712024952 10810129 465605944 516157226 757630589 570524082 629421760 146312790 584164725 819509819 924761705 215050245 932970510 884010293 249137757 458059606 162102534 550575965 192395724 852962733 984866243 993095147 777288408 147294736 999259550 29166395 522035800 636588514 464760377 969090018 636462221 884482635 947437398 344054393 826627838 578452231 912408126 264572247 716882393 671303948 521572253 646569757 814354881 622512383 65662769 373978116 501938235 924120179 30670187 911966242 360894395 728736001 432418502 244818813 43870221 486984721 944462770 741326044 339845786 256600824 907489652 123021792 225426803 823245886 26139960 720562290 104015340 13886895 777015554 700909508 591852403 879145865 129103274 474131677 988162767 121122407 298374331 802637403 715021607 72309748 936430260 120992129 873884828 656701241 506573661 409512695 236513755 185960630 129412729 676922545 608765089 217106412 901383779 439858138 961684223 449393304 110332507 705049891 124457086 377677090 858791293 563815711 22789965 56379819 950935294 725700275 745238446 808080327 161693714 759825016 591914238 855250467 86523393 401466629 98930221 197709897 423875396 724768564 510814666 766012694 459829745 948598991 565505126 922000543 336897385 131816906 963545693 1313808 165124131 110577000 114559432 658297578 189058812 358556769 173922526 761356240 334643995 71338115 426058924 197926510 893006795 144530543 450342204 779259190 494691526 973736353 648243059 833816442 905974941 635216031 539666462 360437106 253391389 779173366 437244624 901425431 621193069 650381008 83663844 97057691 591719430 708166499 179832773 902878214 465457446 77089404 467686173 428629773 47587448 293599902 701863583 585734162 143880538 234140881 367998819 172592134 226079373 156727931 883496316 189463851 851233767 555657028 70732591 595730958 676497371 139054494 133045953 422118439 65673769 115922156 647245066 450799817 592477202 755982949 620796474 980584739 482777917 231204667 559204670 979205264 513078700 490980213 395790838 682393919 564959533 298549395 650246177 35244807 559898364 5618227 432751645 467082439 748614103 662505664 57114259 595538157 696420905 969329614 949437782 956434770 984066960 611340825 168471204 642875631 201419154 588095048 739566741 565795783 695818949 38593434 248863817 956916574 607627156 342851220 836149505 4476288 30128928 204984362 591793146 304011436 635543417 225805277 468678752 267648299 339724110 70061391 448226306 600538446 750540036 985818566 447277693 155593548 537769567 446566182 542883019 782464882 256709866 529306428 260141328 134994180 163760694 54788157 926053152 676388836 851748424 632371465 585818875 352261311 267911760 631301851 294803701 819105989 145411904 656310324 216681672 810323564 629396523 295419067 610025776 73433042 237419520 592614037 444457010 147453813 824477996 486676285 294744909 507143305 652036128 572723022 479752343 750462176 406785785 209430660 727816011 6506882 781491660 301679634 744495831 603173989 227332915 995100960 60658698 667943488 356826550 258267103 510237816 103137230 336222010 289158688 780051303 903029682 713614744 448362575 110555435 960715005 935690773 970620798 742336594 735949026 792367161 90413705 182600824 796406922 147218117 95223765 373667549 41568443 562829804 973291796 918457734 256360388 889607912 190830971 630906456 856952202 95622637 411176389 255009681 41729574 456353678 102117988 898911264 972125482 107660345 927982528 801962138 701740878 946901376 104706369 807810274 738170511 741399534 353754057 918750472 767466453 215718647 91018346 725184410 909266029 254711980 304188587 155022998 803663960 254323646 434656389 975440925 667167098 688463353 475927077 219702375 410831665 19181644 101493160 47276991 992281584 320059539 245557410 220228673 416639971 534320869 850352871 465653542 934494251 392789061 380993481 866718204 64478977 857167726 111874550 128223590 753364014 43694542 657644267 621976894 598009806 62177064 383759926 955593263 408818265 625994045 62445242 279050885 222554277 106435690 154872998 294803479 196288129 913765210 947291774 72519490 233931872 261281372 12295472 675865203 100943505 589748160 913128920 441731099 317601493 14487179 495871254 420626161 565881872 74354942 437107260 897364026 188242076 267782762 93912822 287395654 629475458 435435412 53230377 82751008 105508514 211146818 222372040 433051085 21950751 787224983 679049834 985483576 675660220 426040226 818888438 959381736 95180008 6498575 398814125 703323888 281442863 790273562 855872487 718708326 738790826 798369069 222449982 448004327 425351230 916037355 15286841 211194064 537178905 998969077 108622664 127322171 541640923 16663499 162607224 478908058 260723419 442621580 378986628 858156757 59708191 982684699 320507660 511770175 999799896 934692261 686441059 943838771 358039766 363048836 569595873 390734256 815630814 253218810 4664438 67423125 355180397 935137251 762214058 601384177 821501665 377184752 978294972 643150691 757636379 434634610 21245837 722177159 68430605 881090006 947379092 914475328 555553680 874082486 946194408 221341541 637503843 280891997 753005713 88601082 452641725 851627163 583773877 610837765 919386382 956434224 465444277 609482825 334637697 715741752 718895710 637632000 663103669 63293331 829724635 630861519 283596542 538578700 729863261 879320892 839807170 231676063 681376277 156863559 337408060 48219256 173581571 693381326 883370403 278197006 453036921 807445059 515727285 163350559 556167539 238926734 945625070 725055357 750624140 986784236 35436319 498103811 294180098 546624476 372982805 348833853 720810620 667402777 118276840 479914889 145491170 992052353 49448955 179685620 683887803 278143061 226911078 61262288 891151427 226479318 277405452 143418421 796047808 575587290 154739700 889774925 42108767 818548702 162322149 551399904 12827539 485916860 913354131 969052732 263719574 211178038 166314445 999071601 475126596 867191578 6853699 645798213 974524838 733889081 555675436 524991473 588399801 393508428 646216716 28606860 230649403 304418788 301307403 234500349 797210885 849737332 839221913 21080252 373276537 247044357 994725497 741928085 813247518 505042572 681184215 835262574 509127750 671873325 457729378 87919481 585867358 866940247 141608457 777509355 447598578 280654118 506914474 731192706 413477907 823398776 19191724 304902985 438939807 874569892 657637771 30501400 823243062 654725524 587691410 580588336 621239738 689576037 926284814 808520689 250839596 767088512 324335804 962084686 705526406 948672462 18548654 544101658 158568442 729018992 449729643 160456721 793236719 661316795 836975913 26374533 444771386 877863220 1916105 30232925 91008959 180555424 666193503 628853574 255813635 831269799 364831223 63208761 48598335 596907453 635719718 984471897 823727208 923117521 171988981 991306422 319712030 77644938 552107529 452954986 607955747 219350288 397156900 357526322 651683784 281720935 367181115 220237138 654806497 547564576 912509920 474086815 298286855 428985619 360222666 88769410 286916208 764960207 665769176 72075946 34864525 489562501 494415342 953040757 603137790 703489719 162438868 644833471 507220670 539325331 348441183 892375841 189289578 132373797 545387376 94623871 177971854 377072914 892344138 592850976 507144367 800863653 428270346 48831608 809086981 923915380 504382175 612102397 218385940 783329119 297700523 524848570 774063322 550464780 178349225 349308778 166271097 357648463 854327223 103535845 618860450 905432441 955308045 935758481 793045381 381185880 848858446 34829642 383510030 877646954 743691727 571178771 958225928 245945088 293175034 262977395 864335174 246298891 850022980 837125867 26977402 653618436 393912171 493105401 462950064 625725016 566845605 107969172 966987931 493891218 20671914 522468312 307505631 282909146 409063664 963564140 979370612 881796737 25789935 217242281 196297957 643073882 760267212 738197562 928502904 855408729 363394576 483304721 658068879 533614915 84131256 418514730 630926481 67666998 289130362 92134949 791838230 298076612 550221213 745911707 597697978 318937172 140487288 720802966 125761975 373596740 685466336 250537233 776955783 754791340 872125594 645850224 256672888 955051966 535292311 792321556 278989893 71897728 915348131 935007217 819916635 821938213 901832834 383192856 910226588 322466828 709659880 448061527 335380239 292776927 704851379 473125103 56737412 16188860 115447307 846417511 55527092 969265441 156869776 515327445 747863685 52284520 545453879 434664781 199839016 379059284 37719058 460443284 825180899 921527934 905112018 139049768 30917502 694449863 634624208 41529868 368688208 369048518 751932597 156086010 402180284 579491567 537997465 620899344 236928897 874875287 401990633 589368285 836141435 689678522 157913225 449694848 423967680 342855656 795437223 324449035 913372366 776332776 428426172 854224012 621845594 899642933 77336046 1000816368 960394270 431190483 958846164 716905658 812021609 168676234 561673946 44241170 275174628 650859093 540774652 956264510 368994847 287942245 646793368 695644369 993427699 807498850 827624066 67392456 445690218 295403498 352157364 930957828 235527722 670326814 949199672 428004095 484282729 341587340 46420398 670934809 440400606 212496463 169916951 398699724 538548458 776091493 468728215 336080828 743208261 268998798 755499251 71942189 478961259 193731309 501977460 481107283 800358122 446502300 578660747 975652919 752332316 532033650 604769441 297717559 823352119 146663215 104196628 796750438 929235476 952269092 957414483 904249710 568668669 167566013 450756173 704738090 657961667 706440390 228805766 680550070 950545955 552364196 41408487 133125977 268069834 476793924 389747568 58279397 624832275 922153183 158446978 512315777 546257407 206535925 248340429 251196245 705746096 621837495 4123321 496912213 47130842 526679155 658056936 467960526 325178777 729049693 245918241 288612224 116036090 312364191 947244820 650620547 322059818 485986213 572394500 373796510 261855733 46646535 370286569 221168970 868269465 645492983 989505069 62010187 884234223 172578919 540076555 627807099 713284468 911104682 874821122 578227255 797689596 81335914 261729730 538484785 783818332 781138825 93832418 230728536 594987593 910355046 587141593 152959742 696990275 506188523 192324155 996864149 474885312 20790969 763761775 609647793 377317170 505476491 505956097 496305514 662348866 543057237 486641837 914125197 146936245 868609093 732003889 601455411 967082193 54289657 625020424 831358717 708102817 166518004 34721324 576666661 858234065 137528213 647822487 547547786 511620581 389101581 134931258 791211566 394841766 193588832 137160870 570477359 470236391 19092739 292995917 927852331 471084202 785383694 842964645 133422188 100899435 921259125 214289185 245958543 278738974 609926355 41346113 750673661 251124090 937517723 610247113 463752525 1144151 50628594 918375649 821840209 500218262 944721036 395761691 975051977 195828915 713597201 397755929 926307685 38650030 121051164 932216390 892065640 687614134 48587972 573649792 802111890 702657593 208453660 795228232 822294055 886880651 188304423 506521005 852036140 552969793 609855071 720659248 263585693 696718357 409395613 780211815 102181813 29688557 251328005 665161080 157342211 797088120 999804128 158364409 515457834 806695022 157290401 605653699 978999598 395754907 709045558 78867326 7226062 64155291 781732083 824702154 54983993 730098223 706707126 658224440 940550779 533532982 877286856 608497916 609060188 42666510 361793098 840507081 200996842 543564712 958992290 25456352 732692897 955937447 287130499 915321592 181598133 20335903 151096110 663704595 155793927 339021592 177982272 397251957 295134222 191341373 413607847 457180587 907805239 967128121 626792226 332050600 244538231 895519359 774043030 296116632 815171591 85427894 756433985 549352574 161207660 944841474 764039760 88168954 652475836 569486353 675392683 172670159 859259328 820801834 311282232 688590842 618374560 557402952 429710840 69020404 833093312 405356874 38001229 542869710 465022996 629157520 879462513 648775570 764631461 56296469 8367808 684551511 89723149 759341046 251969446 145940609 138207991 933524360 228529713 183270749 208035848 444065666 142636842 549974858 12860312 334216044 981032790 317319980 29524171 654227363 613148986 869126839 212063880 636078758 757872261 307105913 6998045 570353792 748887694 839349106 728432622 332092457 482482779 957366324 359794648 410435381 463633175 616272691 956775087 32038283 850402754 296865952 775169428 746256877 98542940 284008883 633525678 917148724 541950390 533266470 700219316 624599845 71602149 843284083 108206166 554196566 428876248 569690764 733958297 297445999 103680811 254086799 749988878 999289002 280589304 542237139 786341814 950591581 333393249 802510486 187487864 770160470 834159218 864601643 793413016 474515420 216307577 860605792 49870438 768149069 841127383 323200880 224735133 201872011 713325368 642428008 407181521 479842854 448417157 715830676 718817523 349361453 341297597 406899774 128507556 16702236 937393321 744103319 237990860 972167042 82726811 419086171 953807548 955093957 234412655 202673480 407067712 931948394 282300465 752558445 139021643 257804075 683987015 844147958 351498234 963563619 134560276 270520218 917944524 225828636 305733160 236253499 498206944 48587526 23703550 280435400 182196264 484107087 667901825 610093995 639068066 66742189 989181653 616370518 501802042 174947656 572712146 529032366 939908430 988331376 469194231 565124464 991152847 124008876 601173490 495444627 848277366 636808360 768001652 894042573 818810659 560863831 559801992 632379898 318478287 206570938 938350395 323781593 239323489 202620661 279852802 284602916 318467410 248443051 583554622 62327556 39652781 225099306 192310788 112311611 477019577 318196331 693477329 126699286 781109862 831842205 135708355 729628739 828908299 884049561 578960534 997629159 582747423 768251739 368398641 715560596 324166256 852180780 118129632 549544646 279983735 712599828 223961977 643694888 542640979 829164820 256734189 908926750 11516386 756508788 222258726 547139384 42478513 868874403 107783588 959733126 915554099 375304347 354035591 341913014 90220153 9055673 536150048 301475856 227073070 224604958 575546094 918304697 74021714 586079097 345005467 722237478 281626836 144237693 87485876 249987916 851208322 906170520 767578463 97109569 317129583 855842007 411982486 626115647 938015925 167231734 635090057 490042694 422643098 369307000 592607507 1002176704 933519818 957899564 348116519 96425026 384971449 736768474 608271641 226328567 242974593 233711112 624790409 210390073 868638409 595398467 706419973 301655029 680765688 815545519 910768171 404460608 493658535 770217371 213272058 215167238 750090789 807739671 954656631 214840334 231508921 533137212 20302602 614483002 397443324 79804244 132919620 797851751 365581883 397118352 650474201 917562969 835202289 149722076 640650262 319104469 863341596 798491526 84316934 325610985 173881762 637809827 370833256 333610668 335246858 846569058 548823029 526393591 949636507 460172035 721636855 910204033 50401834 187652577 372192307 130157776 120943908 267490335 928349671 284543252 294208123 541512475 931237348 490380815 811117275 999871268 138248999 411991044 945006179 709896056 930489028 392399420 555304512 195278067 391467434 749993278 692623152 162677066 97577149 63738103 710190012 940070267 330867450 986431645 940605669 134005658 231255863 852912803 533370947 888439804 647593823 930458144 807904330 465224608 662344069 46035638 460795535 714699690 248093313 516953077 11362887 87600728 253885687 512772472 211811989 8628382 975698877 294127618 980906629 647971215 589205192 360468495 358984101 165564278 396627413 274213639 784570915 253758997 942312232 707831638 499158890 236097607 633559268 271950848 575477196 847147474 259916163 351086686 47124883 799160298 658823129 268912329 175768073 860266450 142041574 684281417 610048848 166833985 377020167 19582853 580389252 783057370 471997797 218524812 722658243 411466880 529745687 746751878 187976383 271349066 1000274397 194323075 450019068 631976196 843786521 819707332 275519920 999651244 376338241 177864144 111733215 3354665 770187698 430787469 557231863 525209570 15162085 693821288 121993725 297826994 359949738 450640050 31775228 944689767 576248014 910248322 251988064 583574043 170403884 896651203 583679070 901859171 887629012 983122830 52706564 661074206 344220114 666611835 772414652 4490339 216886714 682268629 832472283 712656833 63923446 848533854 899127769 353403701 807258277 923754493 796536363 340605411 149645515 964546680 692672915 285453587 206316334 43862015 800376326 22977801 927030372 930732000 646083622 686125685 27824949 593217843 438279242 375950175 124220937 912153214 601018065 857672426 246432611 456780387 931862802 944550796 895759041 469540402 497451839 681302867 758625279 863650561 44667067 308830046 763228693 627729261 194947191 545727336 512933949 254277772 638897596 558673794 809743998 597810647 43753982 344948305 286854745 102017923 73908733 481298062 569019054 325270855 183882172 226995897 16132339 634121718 126405281 220170099 290606556 535067434 380745260 21617682 564715534 42254484 489257775 897403902 738160977 426070497 103544144 445088773 647076759 776278584 907636058 638038880 152805403 553588027 575360511 971729780 513752305 905879084 7870272 443083924 190179331 202741397 516223141 214122037 959478514 219062107 610208160 711752293 852285247 370844343 962211794 45816862 538645169 438641996 446667034 302534701 119828728 64739792 817368780 227819058 444973862 726212925 111818802 474924704 936199350 62582333 841052710 10457474 601839862 828473544 727416522 761617016 888920852 634877144 274475090 365089643 287733800 331236006 249664270 370742274 118148318 312432321 468289201 187441837 321952065 613298386 621988652 458541555 940403986 54410465 942161313 208976924 23551601 747808279 176987032 363368873 853962031 874291054 662099008 262639930 62507118 675105499 207013412 162487234 385299674 997260570 645956359 279916682 914883512 738326217 231491867 691805550 839814194 841388762 468801836 240989353 626143958 992383185 278646879 20083695 280480552 132845288 587138346 426524026 286344806 747237709 966446350 481739434 393601296 133478150 936392200 628944012 717417737 502199092 447240998 347561874 196910618 509523933 820335775 186263171 780610533 118529836 687047909 926858509 705006959 812254551 808843641 814116511 811390851 29877849 473970174 533650388 963164145 397069200 861445403 220942489 231506841 93716516 229542563 500497957 916070548 541587096 715379006 780169550 152525452 112808229 25344665 307908506 170866402 219132302 638117139 687076083 225169196 473474001 920139302 881524138 156443519 157402770 618838537 529199324 695489327 902499329 540230890 412421168 731374318 176557266 287001622 420420837 392402809 35137300 592284452 583144895 37801378 312360216 945822942 504061132 862926211 643882585 871142781 594469445 505012368 509501237 204765493 136639070 824084971 324247257 443400003 946230716 848031717 357697167 450771283 698256668 559114264 713821422 967892264 70161804 972705885 627314718 500447813 893084432 152442646 90549393 52812624 90104394 109393172 387144296 338798005 795920559 42988849 836216787 475679948 998244596 78372696 217829052 981219226 752070966 57265736 44009216 437109300 145089601 530183142 922899362 565138391 997391837 308785710 109093881 9821544 680248215 786204569 205566332 545255466 288341854 639994742 284811632 539905451 995612408 344296206 416583596 962899285 828006058 413672807 954339040 98655071 648323476 676766445 401665003 42720340 273133680 300152303 657617426 723866584 357314210 636179605 967799664 408238740 379023019 68218076 932815303 354525417 159649009 620036972 813909934 105861957 144542810 72630282 323236055 53486607 546905036 992311447 715030972 797585426 490763470 934820598 592356572 318109045 41491015 245014298 722581750 514906099 633481957 129408555 907442662 417504486 7582715 591964586 972987481 300881668 271906666 735907046 564084816 305163109 136275112 575314311 543418537 814912727 38469975 7983307 902861530 518309873 27353516 800228126 187724011 746257092 604906950 572229473 112744195 891333334 184392810 551573071 649289022 257868066 595990432 867535235 90649084 834408085 321899350 819988444 486938905 523517844 381603493 73726304 632586362 469435184 855730604 61154354 386644878 661356571 579805669 24006881 698763968 923506145 68454011 253126299 15274143 144095638 299166745 999409739 678323165 617495080 404025997 356620235 76886702 459068872 422972622 659301254 184536392 808768971 77799103 950765702 698247232 457813075 529708892 916037357 370589174 187384784 904033521 240194884 801753906 388976992 394172312 457405355 662200028 340595311 718061249 741013547 883931873 596028268 744926559 11314962 351167375 591638482 502496106 388678628 601448308 340037991 518003808 995384981 997905729 457960475 751651024 468734614 774527776 473444643 730208508 3398872 745301168 250636385 566221144 358618307 840645289 58370825 848086046 403440710 741226418 659401203 842133890 197863833 484259535 297957791 241919153 559272695 578913064 14624884 486826082 924680066 208906845 754347368 294493983 593527417 604019795 455057311 308484609 731347390 751337594 322567514 550318254 282176455 471584699 313768066 922085897 220337868 407736694 172260724 895668270 671687112 822513329 907633650 421647161 724306009 825777235 111056600 28273299 786182707 448962001 693467659 409451377 908131814 54379746 160820785 677489149 255731918 69951889 404719999 965065871 342761288 279115928 103235992 156495278 512142883 556806568 367094408 950099140 37180989 880619699 114077511 689938840 446651941 437347544 35806690 237538252 497529715 365688258 871782142 887559164 558539831 423425592 327953850 477957881 444644665 889468518 176267346 824507873 492415136 819357342 480802698 395863504 494305264 898484184 961418809 969747593 650808189 298333661 766711567 467338714 162911497 849732446 317160546 118192645 91367282 382427740 407461806 158562152 799465853 777077982 265649806 801965122 527475263 95432194 637572570 213967413 495508525 558378961 102611178 152361105 204996489 572400166 520450656 752071463 119186681 923921080 360583113 121969738 679142888 203119195 64333013 712990630 795951942 656723767 23579165 990484814 927485294 724522603 928708802 470358905 608935255 209836195 261033507 246039313 113049811 430617463 979099739 36286478 314968106 503857359 833175778 286745029 686128756 469396960 719900546 170055896 430135271 191444961 695168373 199057781 382538334 977085468 919131404 526344755 698473192 381043334 869475204 674572836 865240819 440945326 560192874 363643440 400414605 461902930 95539756 54882780 359092188 924428350 983724783 738259742 581979411 724077056 149288688 288469541 703033422 326170610 872538547 518397007 30005195 619436799 669671938 342101150 927577256 387553303 539099740 360435196 314539738 534278950 469722847 196586611 256628806 501583775 614418993 850092390 902173785 530241562 446569049 350344223 86964821 767198267 750962601 466694576 20602976 400894879 57072207 208074857 72281201 184356526 119397833 442255438 424185508 607890570 422097567 270585010 171316914 970744935 427786618 416589497 487666774 569556841 14938072 1001609704 123144038 36441081 443862507 954838758 402336035 717288719 102317622 269494547 59903442 711710614 157856151 731068865 397595080 753421687 588199264 904977906 13284122 587104429 376880293 273496672 362615003 99991140 545844327 99569607 696322180 128081593 682477620 416520162 56556632 933331921 364922425 484618064 939716229 419927839 46118193 546327229 263299354 574538854 112014918 538806870 837926127 977595396 497538797 901313081 949205106 351753993 971617902 388968527 227113040 141959200 944186769 937632511 209657221 557317147 613719450 222217516 546694649 771671107 401497900 467313927 787106925 912049452 216995102 520660533 435545094 513095168 598513682 155330593 233997899 593153328 343192795 415273582 594198917 447919116 300372110 390659554 579772265 124188663 450481616 646399435 3042068 609362921 946054403 426428043 533779519 114710315 622988187 301049889 740421548 184367523 138854973 484185184 975845864 905195576 449029945 97846663 919376046 751579363 483055320 36304962 142322736 167314471 349196826 500304835 832144103 970308304 291019818 297759925 72778626 168059616 299413398 684165063 159586998 847782119 379858300 559029126 151126322 878389552 112780914 866444674 460633435 247920105 128095088 304752437 811859353 301117452 5624136 371077693 782782631 216505107 462751091 342021058 503353725 517275950 448276495 649633275 27461939 132094624 569398600 794298533 513256139 353366497 527541707 811230816 661553550 593215683 804568823 499811672 839043726 539350989 999082732 354387700 912021175 550302694 238485871 852710502 147838825 706400248 782454851 103736405 907423357 93454649 449648967 753727523 93377019 562259237 593798899 18812063 370250544 31377973 389370920 336418300 880843524 332318071 22260042 681887242 58948409 284534995 44960827 480668020 914590579 177182504 891912582 720227004 523458419 650559685 359678125 378735652 280138200 857842845 164695971 234019550 951388763 611705489 828274186 947790700 41363646 387267024 582084583 443598759 44912457 191081193 488067601 742348131 78802774 195297038 880246603 336012456 295776930 808682244 597585507 345750747 967732328 481223717 122748052 965446692 749883435 700283008 679997844 619503878 301637531 318853252 935435542 624025149 953850948 528045515 149087382 910163941 285039626 499839997 950065922 136467445 104211167 257652049 527242063 527963969 871513562 478712302 756869642 212613570 260593789 122144632 880814419 912108624 942994906 233908590 628036122 116165390 434597625 959191051 718942200 755953739 456067887 882871086 74395830 437906145 205750355 344019294 638812277 979647402 657409344 580489376 668404531 718244758 505941754 252114403 674720473 807623553 975525394 865058608 387035090 521176250 780489388 374971550 857661468 196081901 81544437 287245874 14191673 167864227 185793492 281058775 25163134 743338402 454599726 431357556 753520497 927769288 519184972 50482723 680882914 836504263 959292402 513552449 716451570 897500817 507174473 439684726 657730971 104238555 473107098 974635701 354467428 327038947 987103741 840831155 34621717 61159314 55280112 852002390 510611197 163799124 503522642 343470582 258020248 307398412 841451500 279587851 679929694 930203431 95710057 647140464 355940059 1001394892 14135364 595674514 715358743 336172800 872083645 895108635 295035723 544774172 579059520 283037282 859833104 281699765 656005064 528559717 730922460 320522130 190537609 618573354 505924882 695672555 493009863 214352880 309641945 712720836 150706219 739071733 849668730 566823821 250121134 43848387 969360136 34577725 881150780 959230521 101649403 504040857 558816995 629164632 344807692 825121184 115899851 424193677 760903165 16777752 886220321 61979002 690614124 456143028 440057963 391696930 868293259 823183513 898849540 274067953 194887387 862954722 970943245 430913442 237553780 954332581 549388643 942342128 197416115 958000596 553514875 866354461 758457947 593263303 835561665 64571135 153398548 327212673 82572384 598686974 211887010 523553916 863441498 589603354 146488351 360676430 73286935 828647086 600328553 262642780 609795798 278275370 950562438 412743102 624171523 680372982 400202567 895655303 943304461 100633797 791007464 342099543 705065956 990226108 747925984 525603149 763003198 191690717 786752688 676050799 636223602 770008220 132845946 98540890 308759058 209023802 19558468 956083750 77580715 154900764 807931189 515944719 370771811 854955025 786536486 1002195506 887443647 967438403 848451667 830017810 743341454 852557407 718387863 298422411 297131363 635977088 562951320 819932977 126501275 309928194 232642428 898496857 201993717 949727113 38811899 224617860 413660741 975759965 598999751 869318044 57108241 12667537 784654704 452425109 503936506 714862431 651391903 520069576 556780269 485598792 189231479 47348001 412526227 585696219 317644738 108087354 565317130 156729720 413035510 457339185 174843767 783098310 333866742 431580341 205862706 293018905 49251031 987940317 759132465 981784637 858320928 817000 857389041 886325162 243859605 527550868 867757976 524428991 454940915 884799747 234087300 597058077 937538363 538559125 711057640 339081929 236576216 354533748 642622661 835235237 630800842 334800338 888724554 286838863 65264087 149848376 12726868 660071203 273976240 554536563 174915419 169832370 812125267 728656937 777387097 568896692 747348309 583572740 521487494 320512725 654198947 352836660 120167348 943651042 788187576 572838004 818942837 836144438 487957899 785158626 254486745 200732965 419898690 304799046 861363455 647947484 746572481 136197350 146575775 521000000 765881456 222744033 734383525 798034632 682181350 666202929 69151396 15003345 455420301 415094802 143376305 136308122 201143977 159259459 722206424 804425011 660590491 476796818 907714684 995589978 332051519 645440417 630172626 436995130 173887485 481999745 515512951 656218658 120329763 300137855 139028693 877757381 263475092 287911450 819791981 510702632 947335273 719843873 989972215 809849182 601252686 95339884 536559917 968482353 264124338 635203558 798240818 355259503 967834852 118765518 62097932 765946226 856824253 339078100 998267073 472202754 420267859 990788610 401603768 280690988 957476912 73945493 543883905 293606068 124388369 187458340 997544824 686192597 704383147 346207049 310335037 147094946 307897452 595949875 10528919 41109464 323158130 38951955 446419353 28101607 971335807 890964400 930733109 49667575 585298857 8269466 121051692 217720159 880342475 532075309 913863924 986657609 17577670 545927472 437757606 70865712 629404410 1000074973 741662566 580226444 235706613 945758166 694269638 507024928 568154830 935961224 775052447 790181623 399230970 894348095 212970837 450507813 745865862 181984562 21464678 67399040 826841653 234077510 450702726 623230612 566680855 242729859 958799123 893799268 504540813 878892129 364540705 572779462 233397536 181922191 426324161 465060885 198850959 535667369 361825252 42985949 102814909 483750758 204482589 691475446 92288322 631883017 576973939 688192182 729715682 817135048 229908549 855968761 590387675 663382081 504074769 854246712 53431396 614259104 602461628 272536706 316936745 416588243 5727255 718202343 601851588 312620214 618408629 448611672 597687561 563610770 919165614 501902771 587993305 865505977 483914594 203387507 783877532 970356160 48790631 605662495 265656525 709455063 215951620 954466946 144362272 971180128 627721838 79243258 810084295 216332571 833640391 893086905 447578353 81668920 179398180 113619557 574613704 453992816 50004734 653914063 640141428 33722201 105344001 218757211 204869944 495269915 715550627 476066457 353728351 284534930 730165550 301445896 890536335 840655245 820883037 454199530 315692073 753031712 688389655 793153796 406060655 716410066 523668303 208909535 48197038 33555175 852765313 554821614 906764049 209460257 579257099 992968139 585737190 178058450 928044570 85987914 800220283 499871380 659744799 30446086 613814664 702031074 47975271 327754174 295369514 991182533 921491940 759186440 292682941 586533350 63117472 610476764 700808908 203559374 668406578 23578243 206742909 14070744 245083465 752365530 729482803 905706871 95379666 549132810 430946852 218801549 754736797 571721744 180696186 97254853 151578766 107734755 255441449 790828797 509431817 290514151 438636142 770182932 28442332 126989568 820654787 924436625 755868814 328786475 589094608 927923512 718104872 889701652 741424143 535047624 406828764 408492783 93227634 410401736 986294464 681856390 948301994 973582900 785362859 880026292 740378113 436141048 156579748 362959638 428867806 526227467 55420401 592919841 892830860 533756064 172479869 533119364 483298394 979488849 954492288 234834030 425028308 947432373 582828279 560173648 940951276 33779773 762780512 602272400 356897224 33346562 433259651 164858166 633366850 827802477 209163546 442991296 736728124 847544598 607184635 44663645 222858415 680514900 156391872 536363377 239187572 267596539 431309704 157792072 964541302 746390 389889655 1309974 775220208 706283497 653087151 588535452 540781218 906715960 829273155 512180 91696991 25471264 706051723 306385812 622021345 786452223 345537374 871570121 898383967 679093195 309686525 76128975 343804900 293119348 989288345 690097059 640241826 616094330 341821480 853096670 869252004 223516359 285107488 856391251 541460243 92078763 269461764 445525208 855930836 175761075 445935842 121966108 58417274 89044922 401760214 263661362 533800148 975231244 936585497 67581781 674898860 361769509 751295102 609216717 438977883 296381182 855935248 773779591 66504811 825452614 78002062 746687290 268400500 889337965 511628694 440718010 667981075 254878747 233888012 870044072 418932114 242954288 738192512 741128556 105571318 43699108 130702994 615366411 114197387 767913794 375781372 472473528 313685988 452934125 177157060 310668207 873495243 939893413 937478407 357030418 964908718 687485392 671021126 975483843 46491651 81116813 403251168 752280868 48309005 889301006 455707676 227517937 926985058 711076974 567867714 72818201 213778437 753959979 420644253 441819023 668509390 288267804 48793436 504486252 980250206 460141262 723343667 188701101 754007121 452172505 139880723 263623162 529751125 120269332 854825330 597317710 410242340 957240668 901456462 236311596 664669666 545043145 228789751 380819747 506510930 679162252 981469598 309186777 218350681 626416668 284822700 743800823 298132941 417571469 572973292 495161574 297424194 150790575 602379141 956883312 697677647 277839005 964177816 726628243 463020312 776723964 796564832 277840227 110054037 870574455 252596437 580101652 625178690 546971078 8354773 967663050 571912034 664618286 763995658 53284557 199971478 384429136 695987389 478169705 168906752 929622959 896592357 280093131 647439690 76242284 494541334 871831919 277893817 44508384 267614260 713423709 949660439 988354950 383488060 864719984 856928132 392518748 327034335 684642940 468770155 799319553 308806820 948067471 421490519 400933416 341704615 905747720 820707805 511681277 184957614 175193817 282433810 602497393 522865816 300836500 484573180 943232364 913251136 321280871 759633046 963415224 202491569 594663273 628747919 222662513 582766159 799617409 356799372 978647069 372778210 722592655 621150661 138300184 653938883 862110718 521929541 127144148 995995665 323745153 892069548 269833714 176497027 254766631 404890113 102554102 93000077 723948628 386251832 247674010 250657433 146669320 614158000 946534625 904757489 170803189 902979933 567976484 150506364 232521732 394112153 650723860 433548830 567032769 339603952 482947486 437457966 26464697 401584036 253975750 199026726 257021992 870720215 63610857 456794178 773192252 14181621 206220406 40340194 938898906 106438987 895631385 249255960 756450604 757761701 194654339 495913625 928597026 376226445 530187430 100673128 272176863 598697054 83902582 822195781 295260107 759508139 12894031 40175577 3203141 970525677 454988540 912216957 478865170 149433451 35896982 433101615 722585320 107584738 888210625 918959711 766423143 416363007 830476625 295109560 178819108 147755093 29615694 749799926 382126930 161925533 100211149 433827932 155518159 812695073 36429807 682053495 483261903 157023242 756149055 555677191 137817964 514306835 525715237 462431807 273098506 556551280 966141285 34517287 897033781 919494632 385612609 349894977 307058832 48112250 43214296 271276941 182610419 525904607 645486202 157114659 133228222 148006116 621064270 320406800 943690061 553188136 148380601 94952110 691384200 389015320 809304655 150586487 977182204 398369646 854417809 580970927 427688845 723037687 320657585 665916758 574365292 193176545 563682550 701408717 914158017 294902470 87402 38785194 879668612 629950838 736196444 423558611 357778419 129941184 823866978 814188312 444831457 138810791 993623670 874397145 896275567 666468731 250661225 733851686 197334956 935026417 349728531 136942237 479129556 605824402 874295806 114017199 640711011 780747763 570109697 992253706 915277107 844034066 950350018 245398293 154144397 764378268 831660539 54245228 63979762 432467329 464724126 205562656 275262588 880814891 559471328 118103731 728554931 208778307 35684802 844567990 598420793 396370951 350716631 59561677 126082672 485177768 546688610 901541717 398905871 935617484 639245749 951089325 295995430 465200921 975224206 268411555 580051935 633442991 205228047 43005825 593300894 186062358 526227433 651290611 497201289 14519637 622241836 308871819 900110572 713136553 981743721 350181570 814845713 283295560 626139760 65974792 391373897 920244951 242497740 408886297 525924981 868510192 932245806 567788101 642414154 919442571 826377989 797556938 647411573 166035452 967269536 177360684 511416606 601778452 296807797 624121482 626276282 586721655 4679531 639701041 61835813 967602819 781622334 130823187 523872447 143340915 903847126 682358195 29030160 565100644 837871990 398048867 405189357 321541655 955834569 510870096 820356467 129551919 230065095 601871181 826345343 70573215 876822133 830005409 635969577 943267178 151381129 518365397 244312701 880079298 193117947 186693201 60559981 837777827 87241187 461220673 13687642 967529330 42336305 788201752 122397929 668593759 215436140 932001806 310508410 815656647 855024005 299056356 982191261 239001550 568058291 5021498 548510141 514165545 223251414 659133512 983638296 890607317 516489684 687900297 380830898 843197809 631221267 250377034 514176305 471047383 191159960 571060450 155929373 326739747 423965873 115929684 276091854 675350401 113907178 943355745 110445269 926735874 446419296 297571688 987673939 869009540 787546184 49264030 45578555 666094052 187306297 980139925 399297334 234590558 27995106 62856230 553828578 255567271 745816983 997043304 364995686 788269387 456254783 703116438 585777234 933795038 753697839 303073417 629461968 272045829 363993944 780885042 71770756 557679153 959239004 198746821 362002257 689120986 887151487 776054386 224433998 787134575 144352821 890784416 995282307 950354428 773146179 766778386 285495014 558647135 968721725 90352654 805298997 230601484 955809614 657922043 352247748 256929061 912443130 609272366 415332732 28869438 984915941 968699414 190930634 588075207 841849768 772137834 187993427 396911253 787383083 221635605 532951637 68332479 328422348 416497149 749548003 746536281 3371002 714708409 220587044 487708504 241256764 662480918 117380586 957103274 11275905 114315203 443512598 822620927 655963736 2406283 555860541 693709417 733667073 116697845 517294243 838765258 680953291 83957397 429537538 1615829 738122865 666199721 12681328 145883708 283953528 390363075 96624939 795657411 698014337 759720531 672616896 517418080 603216450 543325998 321836504 706362262 112325765 819912137 289737173 12521214 206478443 32599394 953758443 537428752 373591453 266718861 699089791 442865941 752753116 161952887 905279032 75293180 253794430 707177451 740360419 267292400 349524696 779269751 691909797 113376019 353879862 583162602 312528416 449900473 876632671 26874055 795135438 342947587 795324388 489089894 411632493 456387000 154925113 961757283 621547404 376693863 120534251 108972756 800862663 638263746 833315807 975097729 624386216 129215058 723998120 426345749 482680982 336628906 336809185 205524056 651282921 420749701 200513132 763120260 837608084 397697338 197874704 986151261 269500596 715250895 726822758 239148042 179268529 496433810 671995214 946768732 624050314 546760466 876735390 607726840 952657571 406513470 568498266 513845951 464196307 319866623 814926295 485300465 488877755 179888992 619639311 407869823 132941235 218906988 202508784 861363048 615398940 504960766 249678710 244257708 812160413 78617049 14160617 141391401 231001636 772791993 80317801 698431947 658926865 119161031 889675317 87953976 245888005 968277472 895126983 574990008 851940615 943778837 564979165 137469458 735201298 578531410 715758124 29291348 106517238 379599153 425243541 625484612 497147461 500378636 130418536 400469415 188723220 477340705 846748036 622060039 488190357 403788006 720583855 814973812 849938419 287248149 547431370 632753960 725668775 647856124 921012505 588240044 100196824 570672183 562711198 479126833 712819315 361692536 767480875 611614834 158315893 956768219 450786209 271834180 333655365 70289722 420899360 674345704 770982298 67235592 333075332 297660778 749642427 194355065 26528398 94625759 102834810 475604511 628936919 715705956 456406206 771137565 396203532 905726859 398466197 127466988 363897795 256132050 11322860 831071366 268221245 550210525 780224034 972997075 808061536 781824728 937429842 810744282 281014351 18319592 399368061 677080695 162525686 713277381 841134447 698628037 838860542 410472589 366020351 323217993 877872750 10962705 635955395 98706384 698386755 330257839 807321070 650391456 316424897 972769506 991880371 99542013 119195765 589209892 791501819 753998436 21921448 676999526 247872876 511265257 463942155 46901699 361911519 726750619 99922500 684839712 836983945 655286457 899711527 212966975 775892394 538684932 668189496 550730261 793562 3111513 272960419 186139398 945801165 442444317 128556907 560338331 245891179 138304974 450518749 484487356 462375497 617304578 517344965 259393486 997125593 259051882 37032509 468648192 477795671 217413582 840284599 421912441 515358821 951367817 101560284 223619419 392201914 200023224 531151276 157351379 385709710 762472585 21841086 111567865 672756600 889526663 27924950 234239677 186137814 555313357 590973419 154814190 947330577 720091973 904138512 384825638 815974111 759224375 978656347 632739500 783641329 243894820 971590042 469710497 498484202 323524445 804317421 870691826 619066700 55635473 922511523 733751364 369112232 820590061 202217607 863030245 12928554 476717761 888990354 721615455 237575562 689481455 746478402 834142749 934970163 535065889 286740300 727237575 645244945 617827695 580654084 802129177 229725404 240063945 727507100 90513125 100301919 112115962 486910780 379790095 961404637 879232916 324175411 272874596 811896085 474041961 809410020 767483310 911191463 343855990 140391599 847817882 554738345 801412685 739581977 970474961 587777746 771423595 610478663 558334301 58716992 897313451 139863588 178534922 914560903 43300531 343370571 509407654 665047402 928445939 791110434 93893046 973911611 670529133 970001346 641539359 108210893 992475949 928562550 205857165 595051445 845650351 337295026 868606618 473516477 284693920 71404664 131779725 113575401 440802558 693556182 843878562 566539174 805448257 728984141 260779914 95468446 475395815 157663493 184186342 87203941 45020990 351761310 847999509 360632678 403337735 222697659 760439755 878333727 582275019 763231285 214382894 430401443 463740624 539592635 221190761 182435507 109202 102568752 944351630 316498365 11401157 802373749 77002937 705600069 963539248 54910344 515933286 266583933 949258119 230757760 630510885 681086329 324732664 754272519 96926365 192232357 992762675 524288283 625855871 421915578 588547643 621597625 192851965 33189249 216465647 906278788 295903996 685033257 144823125 490934100 343036094 639340678 442768505 410413161 130592567 483653077 401982094 90208141 197584655 247571991 48690969 120770277 894242010 780828616 35038212 487107138 475718286 41997658 129602965 765766062 411316909 885347126 657351610 899637268 227380965 536392484 342575147 574597819 180286367 219299596 14191366 927792861 735265217 201053965 446731396 225372639 135473753 562636458 507000170 988968225 940520573 431107081 440385449 685409486 162358717 853631869 759848762 843962673 578101818 213080146 597472162 772951102 56712741 947328713 1001748976 739443373 910388915 97109584 858460603 908379524 426073147 556767125 302365804 665851518 72285194 461912623 211992800 907936553 539121129 894593745 176160162 277489548 825693414 25165310 43708893 387479475 352018959 37423440 635231787 728848662 551274067 239184477 869027526 715132606 890803476 112955485 46944845 691919722 973879329 532399135 770401880 73892970 56736005 932214475 937011237 30604399 825571497 98952044 91312237 98501527 161120553 495388030 774640474 396306885 206926778 286642093 345156648 485863856 864940829 25244077 73363587 660864172 906421213 229837961 657850464 605888897 244582890 128466725 189488819 159413376 375300710 405373782 589515033 992835635 644858273 743081277 56277415 600059237 303391697 717360341 837693413 885957104 915309292 285027501 127806789 2542877 624166306 465675558 787276220 148728104 867401958 648364376 851345919 535114355 643930985 966962886 427571608 141377617 411995618 302084106 554812475 806912901 734989561 781335440 812717617 635002826 251004495 694655454 113244815 168309051 115111730 461655601 940476899 305675373 781606683 149460525 266091883 160473176 743499006 111071219 604798969 462557971 732101256 104614339 430539950 241916321 286372057 741689750 458704924 132435463 844406846 872216642 222158089 854035818 823519316 541837373 474455391 689126353 897117830 384496432 732389854 1002003920 562509880 485305687 92974292 8269707 707225703 239101944 59220691 611830211 461867946 934257232 274274843 701031522 530061548 569899747 926284158 684205125 985034207 255816795 670215241 106644992 709546233 122102761 503716565 654680832 444092483 245448877 487586836 134407714 828575951 384032040 904761423 455018279 422241633 857842176 664762350 527209687 54646712 277191739 298919966 30069886 920511138 899162322 621997109 28995316 932338576 424519717 474715212 70036360 144750939 43620602 176908927 378347633 842735352 194637092 929461158 439470356 946721233 773406864 774962850 996748758 217664956 103176836 399527166 208322899 120419723 29478259 669092856 220435920 454978083 447668814 972393153 860836618 139651891 513306283 682961656 719012240 75895590 371205950 115461993 111876393 508298286 118921969 396994854 52929417 695118870 91815062 613339997 390525145 200451759 697428399 824064836 709681861 334149990 234939371 38593054 644069150 837274252 201755660 617825894 460896357 597564717 487137405 857035843 813056693 812735435 550401807 192444518 990000435 119354859 939919198 27068968 599952807 828278567 844288812 962951858 81378931 506573476 441769430 689006160 459090611 33721994 229173556 806434516 7973422 951272086 957711491 630964195 442903251 811701901 883794565 997493746 462562045 429587581 353574805 254324397 789035802 337119386 29673626 380413450 53529935 687444291 553109226 839712039 421438156 707905984 511166728 447930774 340068468 670495358 140896567 807824923 638432042 314665298 333202440 311587683 98715240 472805465 425531129 873967404 723019974 994115726 735995407 470021291 666331169 400134311 893621872 770097043 66141195 474883535 607784067 409380375 509044961 801003668 26324356 872276513 344850399 832824486 443640422 581436211 860348099 444988680 462223412 89890945 203393362 944602186 167100976 197943305 831250909 906144321 121798803 108002356 885956811 195377769 597273881 776897125 759167431 694046705 626781744 264675762 270283743 517596011 730539839 909367719 74417439 939492614 1000527809 692178184 690760438 2873901 708696772 901032555 303904486 864765382 388588817 711468293 450537051 461191510 931350868 392070007 334859404 349837477 603982563 157188462 201889558 404745696 252273378 135804870 450091011 944817653 301617990 715930316 589248547 278656307 154227085 830146105 859323430 346647054 919223711 710672362 668089394 390878634 705479448 586536056 343990687 272698064 278232487 396402279 114047255 372243217 377440648 810523018 825619278 846441309 491102799 636777684 299771721 545235167 653053739 857955924 670287535 110332550 72787922 677843879 626198830 794571875 644619466 583313796 666072760 8480921 80470352 547140689 989460097 212574675 229004485 582517930 98056079 148449245 462539528 564284147 731871791 606865392 983928734 899471309 167303003 215360329 843771663 714858889 125132731 394559829 332034164 836143906 501640409 333648221 473456933 785791135 511081276 101716761 923966012 525054086 581016387 381478822 757262983 804735190 346331846 196687406 501942478 955800866 464400513 219264565 984435219 367423541 513455317 193099650 236682805 768141343 870647314 951876035 207314498 409196596 59602739 285915299 59063701 176168062 211216782 106311563 375344597 615494593 437625098 502743450 158993447 76021231 371624787 415162708 793593826 520794954 8943343 547334542 385219010 723932253 977610130 17536595 947433286 389022600 786669 577205965 279343198 198987196 906429682 231989463 368384847 803852423 724675662 735077206 685649995 685732729 887384252 71611240 559118021 166272274 367251983 163194926 350117626 411546382 450040392 290836691 331834447 816271903 438993531 331786464 396378203 151113977 892615220 172390786 682641911 72151974 871888227 824826144 751760362 138046938 986402093 992432853 104479629 149751781 341325938 529198441 591564634 599660313 760746449 737419544 286246074 613765744 745989345 867755215 773298775 56730688 449914069 315833309 820037683 891462021 729410509 592510652 48897265 115409181 697133383 705615660 81082290 803963884 656402972 962856288 681145667 21664894 299117861 823469836 837470007 553906087 998229817 283833124 591080936 303906482 204664362 114994591 247620323 426935312 217027080 523531271 958880075 961303975 541619206 368829919 997288257 256404533 494244013 755499124 287966178 959954597 483838873 807858706 555400438 377800122 912150891 753452438 767615566 564536830 251007344 55784882 171130168 420208767 213697111 509102788 926052816 723767851 555187833 474506351 749524548 171790806 958373127 307691595 420981339 974668075 34802482 614245522 670790784 520534516 480508606 667856927 161858170 746455171 53022297 57678386 623106454 189613995 375534677 372078086 336089779 815764582 47150096 500446675 851602201 297820596 171366187 694438695 953173774 996542781 932270855 899734217 169769972 139223737 220730823 417686863 619684993 931300203 955211254 105195782 444249167 714250388 639930664 780447053 945852544 724058094 828029823 755033183 967318185 75575264 556315696 221552100 101517221 826798946 487949072 322335070 752319519 214467285 94495103 779235670 736638040 571624302 573727543 203713394 1832439 150580642 680901460 902606912 443368345 734773581 439023403 964176280 311948341 133627576 537079653 663140393 36044559 535513344 24915500 667684639 531598208 722501646 495731495 695618616 802596030 572202666 676204651 388520856 400010142 332757557 948963882 862738571 422939149 90370945 699789677 168208740 217411928 196707386 79539093 17387826 175206289 13238974 803148208 485785928 860008219 250974880 720819094 956914669 292079211 104089564 84648840 525486527 528925966 775809240 222939331 450164110 253893243 663263496 907638205 10733067 795337030 785216949 271414269 563660139 558140810 550545798 382595028 569298352 728068588 235949718 338764902 689266727 131465857 106166839 36303394 949354401 824313625 16860540 752109689 686673130 893440267 139750289 585096021 197660726 500303394 897702257 750347346 494500728 761728715 262767437 904067900 854920825 74757822 689234000 403210907 743742983 61113700 850493665 863535444 956570691 879752263 592672565 905268897 119140230 404124014 621922402 615490383 657499334 48992651 98377806 991958708 115350631 330666845 701904057 984928265 224048472 282215457 774402688 25952241 552102346 533304817 85210335 404737863 984470177 162447714 452576039 5272466 257428782 448256937 910010139 430888192 5627232 368531034 771526180 210759885 244060321 133200952 29191591 358275479 147448081 169312044 768971984 103692729 720870450 344278455 186419901 179698746 658689105 31335022 36086452 148437936 404107910 508061102 313676880 408464988 412988165 298784540 615086110 853528841 461516948 630092480 310728393 512920103 307274006 595083677 578301537 989793887 983571687 229741371 451272957 446614949 173345610 535886776 664698024 648687436 663108380 266537691 480465740 589843858 239311814 754727915 344614719 642382009 565759466 633895608 125767296 340487845 108654621 59211258 140577485 695064307 175935051 653224420 588066262 102397525 724412238 86329419 641771693 254360586 2550687 478386472 20232809 345763188 788185835 270219504 477168697 396880078 735492478 551490826 506047335 558642638 907596661 53019611 721177399 174698566 754580196 125751762 77527337 197071014 765284887 183273024 110121830 264208603 995358081 376572405 424326165 683885966 759640115 763547012 840971513 760753941 137509786 538367242 510735691 680903719 53117028 337627237 366586493 564885576 822166305 94393850 801933048 503637039 140115808 475608853 570622590 90694194 955747368 834304896 778023835 12730809 389452044 128190034 261271703 914319537 922043410 266901190 120059561 188015045 994311253 827269565 460158546 389679046 149893702 800355633 775611132 241180944 536310774 341558677 534460924 912979134 656963218 72586788 256420200 594143158 784716551 98987435 716772177 827244329 1000598984 5885654 874672116 916833692 295912388 638912069 240619680 247709170 722204704 371384764 826840903 354717875 801230621 841739246 859074939 425809452 904408608 765133927 672248053 190437249 189491410 132101407 44614239 416016255 46295174 635695272 949239641 899515103 444328285 865978220 845925032 821335754 169175866 309966294 620551814 559548154 924718431 708219869 469685304 829207228 120881270 397167990 860613202 650590027 991451774 603317655 62638013 466125300 470290522 316972596 738303527 2471473 323123425 386592179 367840843 277142374 642617090 884959523 153906686 869194272 116812745 937395192 645346934 660278630 791548129 770974643 886133746 375914650 748221345 919173005 408831747 848725498 265905797 867844341 919784807 280989028 869467889 964215556 773036653 1000043274 791699348 455588518 158685191 440497950 367742574 997728437 121698735 920695491 595489920 739212423 296849193 777916669 890701296 58251229 438004970 528959315 23549263 268697399 123316523 479112368 264075328 624197603 19851637 634649397 916397692 198933697 266213773 960783645 598965943 896323026 413501274 349547056 402473300 950302161 166844147 663503567 353176200 75777484 698188351 159591979 492432105 667492696 680477578 476087003 132214860 874723177 351781806 842410870 410034549 276542763 616284523 178176363 726423750 861622381 935268329 233847455 144451919 768458672 249682734 391222769 828470850 244866445 75548146 772285687 881792184 653483447 20282533 587429061 539859450 791083572 629694722 515376350 153527210 441864406 921482492 359478425 870059604 969796413 285808313 77696621 302594205 589988153 132386104 20144666 244309361 857885825 449554874 365961440 969466323 622594595 768725183 223489652 47772076 851351260 281948978 558541580 276659608 750103583 44255703 705640569 64512085 569964705 42147635 639672179 67752008 816838455 419930357 950229043 21335449 674080506 623013874 380399268 127356633 622028618 598014961 666310661 319695710 204766456 86226980 901231445 210580870 334352921 51409860 394799207 593956550 207799625 738970696 588322680 844777456 47438384 294901223 770097305 246452551 800761936 688811470 252829937 180536437 613750059 194419381 160811145 834576577 678303197 432239184 553184937 700205464 165283581 222462058 789334073 463283682 746821188 320058866 328293707 91067835 299555850 673075415 580615338 897559783 786641107 653145482 667373486 739632340 648418389 712807587 470018107 459618898 346777968 329825309 220272558 159766671 856340690 605397987 990048567 609632987 205863604 376894258 409536859 744744195 299742374 118799753 687838381 847474904 31171742 657112284 858924879 991172111 570315854 217994863 8274045 197831814 388983766 676118537 864443086 464286591 379214886 509289254 319013937 784987154 834716174 888855055 252318125 17081186 1117613 143946188 923140590 745040523 724843306 922021963 672641044 795589179 549230718 623418870 29499012 604355193 56173149 276251748 634432856 31971115 760288418 393999088 619243559 112646891 481089284 797795315 845953022 348059926 191699723 998976795 101375036 77992893 346424625 6662090 244638266 325953002 904883287 331268144 592794810 416738294 719345402 740177735 292510988 195843074 1002204747 321937508 437323461 157354870 284741827 510685358 378489961 101790270 521837516 904470378 281425852 378192060 35489039 395984061 81891124 391016288 426439541 331578506 99009752 669545309 233491493 841231156 154724278 688707525 571027358 830872588 862042580 99584345 254849459 428575736 400457667 546692418 328562656 124424244 491685189 522790477 471640365 654855721 123391092 772953597 640970799 829291692 408597318 770650203 922732565 231800915 255834186 181514992 569767697 912514376 842631866 718032493 561506294 847643240 927203291 119979009 784278232 412010084 234369462 753969655 916776334 557381525 87743389 588429721 666481380 532309418 643924107 901428782 909723429 960402637 195896793 137638654 803864038 577156426 536674516 17019223 117922449 277628518 148984582 534310634 920869145 336931331 141144947 340146808 25505961 706794413 96909955 693955907 100570302 586393400 495065059 436959251 877091934 200804058 425385120 369052983 415671266 656118656 209959484 645998562 894075360 443384070 820944531 434363925 928802388 746497903 114543877 682150703 767072749 461417757 29317482 207212193 241992919 1000319741 159369022 580069546 677458657 390783660 810579102 846128226 533306376 929607994 840125049 484830090 157016263 213552228 753426018 67749895 472496543 485428595 492191184 858184941 71790102 143785766 949567815 21149082 541179294 243922429 678808725 101077630 855714787 322300003 392676295 302482814 32897979 756352592 566650262 137229409 242390623 617547685 832101672 570684682 605254024 815428564 110594669 426107121 649500003 990262941 695351794 721592502 598219865 517075295 440159861 247309220 387168376 286266685 172124882 146480994 112566736 813407041 763893993 545372351 240783407 412366264 770874766 376895444 610989471 476541143 607254005 736489423 585819247 979916441 893636772 823526837 145442571 154774670 461878581 399731161 763885032 811410510 740401531 694328631 160736705 164110707 149377295 120207139 3317235 739077060 919611877 659530763 997769111 821090282 562232904 744164608 731749144 393927922 962766532 154041754 485892798 381359191 914644961 275322219 341277827 763481033 584841389 741551177 228432895 839850373 156944654 694941473 493357812 56564177 137186040 894699490 591058674 226014757 844524740 6684202 824289549 751045908 523146522 753484548 823694662 688727388 413648615 94833332 832240868 786486938 488373099 733967286 362258539 279995159 414482373 679267183 89202307 93365596 51167269 515395305 533485897 293690106 981232698 30567758 400166777 495384805 102811273 109111558 791818769 203440955 771186712 957402425 415867290 211148812 129121394 79091433 290893466 34356482 15476001 802371546 765874581 979019804 442220031 808887996 833653492 265306789 518480463 417237555 66761377 53264742 840159504 559510651 927476746 63738709 983793022 206007334 275396210 286781472 5412040 791327434 186493862 123331322 889484653 40402942 413551070 597803383 705161765 674872427 201542951 359555157 276626934 221183847 261386420 149731790 850015719 853484072 231751743 920562686 541997209 844631998 351266020 34067366 174755918 972865828 278709108 611973263 303480975 216720784 797632788 895665538 868084644 476209778 675650897 792524617 512974081 860840929 311267089 774630979 738941886 858738589 682091783 591685495 14742831 339542606 941624550 105727450 910419688 696444545 418714908 742403630 181449380 50901906 309695889 964806439 931119517 181901135 171733557 834505053 971767622 188856601 828621004 308324331 397884649 729987087 431303457 460917637 253101563 609753969 301237559 395956628 982407838 127830075 563333425 285733293 40891343 147607423 115162852 960732559 631828833 61991791 670307109 667166319 827507887 644606136 117857634 618589620 610856404 646689470 341872439 303779891 497902392 410839826 945285708 838861650 376233110 574528316 724899043 89462449 628348495 211262842 956497291 341209662 99130082 692035042 969517056 595895538 308489013 823869237 244832445 931261050 6877861 906356345 489790894 999265552 363058439 437724716 723528086 246525197 258050270 880536791 684577713 771062827 160992094 621393881 573138415 295516291 595127619 698898362 980543390 891788288 47158424 759486804 455672970 563458228 453588094 665704503 94092103 543852524 906683581 94129537 721049806 370538675 637486479 547618066 274852491 801164374 259502003 704707190 487259434 425396096 602607107 213457103 759834901 363623276 721822917 983735828 123779721 881430321 436912518 82147260 503762520 491422883 447689729 245433069 987842237 913036484 50334668 482617219 242599049 950463491 216165892 82085931 666716057 620646265 395923489 647644800 679483137 119577736 362332565 535025032 746865751 219638420 27245593 894088877 754244359 798536802 285676590 628712669 15958524 869387197 737061722 924174991 293941545 702889056 574351859 803453816 706077371 220652095 947259284 442603322 945906391 391797190 860580254 655624702 713245360 139830688 626206257 752121868 243982339 839319080 249411927 161447427 95075648 662629412 511527214 328845920 936313022 719232524 113017973 965958886 830724079 66714470 397987232 190147771 24061044 896226187 620500399 160368265 746087510 632302839 306084081 915846451 14593459 710898367 5636658 959581921 930495316 479539561 909590805 618666543 293092909 543744507 239973690 952724252 314871337 510123521 334840848 852392937 250075705 865301941 179772114 823747914 606407684 897049459 502961251 549037341 249253184 838925218 253670929 378209719 872985434 725338675 987203680 403717183 10227917 371464447 109355740 212988880 116265844 462231102 922714617 838210307 446222582 863925009 543818986 243157969 709195054 784829354 264486985 55115290 294132036 472538160 631199706 917540607 499913971 73130928 658297076 224611086 505963321 489342009 105047494 362928677 971889693 741031896 664742290 894046270 652701286 5652301 567424392 218369435 200673151 374888197 54155038 798390414 368228084 542702168 472666531 610083712 127726157 138553639 646329996 348444639 579742784 369936042 560322502 116337921 418391494 892315376 540530813 63238496 732492816 868217599 523858246 806384711 454720103 649913623 355697324 945605329 572011299 964767816 448460526 325676941 651149431 168056509 346464313 288416363 755199869 382501784 460719583 188362531 222811447 467926103 718657611 343092238 394967143 105846261 456053053 675768365 476992309 79928172 21023592 395111056 979241337 812205391 81122503 168201936 234775815 142632251 24177840 224909969 869581433 125175183 715868894 371862910 901230218 137689271 81975204 162840146 598114993 502528587 760859844 714505018 358376168 614308541 35027326 587589235 654315705 979278348 520496159 453245439 390210835 670761464 554059127 441916750 712682185 498188637 86269813 520237285 795135371 395460987 736273425 275224198 800309190 970427142 791571975 915908743 631379805 952323497 467854479 161975791 398354316 537848011 617267317 215244501 242492492 477844443 203635260 590717699 47817303 431744663 10112273 748284801 53615772 673536429 661317319 945824319 65237870 164930594 245410070 265394805 495713183 587346846 183907146 74924636 397153017 357381377 301111711 219183192 131784607 718425616 117922567 827845587 834012957 547544717 50443935 899459913 562116211 236413598 287404882 914899360 932596843 685724816 161233306 187571989 635406857 904276621 342793368 788616731 53484182 291559169 272870253 253170102 43339982 506201241 528637251 57002197 980233357 305597942 351970056 29733104 816616749 959512374 740574618 121459104 996781740 673758485 765713154 636829327 76296812 525908713 468088162 411336586 699076605 22537010 957497317 532161430 539661019 656469799 467705501 362060057 453683722 259739856 1001138607 658814999 186071950 665137864 924308590 330023544 734823097 48468461 39378268 962991563 678922107 283243269 244488690 207517135 610703981 723611552 74571539 953848105 196897614 199146373 844832765 915461662 91008974 172455758 993887520 727596489 80790642 724363911 367339370 240346940 709802639 21256749 979515360 472599298 778654309 525682206 961754637 670617624 956597495 750578378 384145912 86160488 5407568 331336092 457980690 32533455 340402358 671085253 947553919 803465746 812245641 435074451 892994612 294966475 821447335 708848983 449258313 773294065 349020694 753097572 815439377 226462939 580932337 663570177 782450739 577949299 701005765 134513409 511259749 856446562 961519785 760374781 471138135 97856259 395303860 599460858 904887551 588092186 979126960 95540629 553365646 787228174 320241737 609300770 337692910 255870898 888881866 746907490 521456598 441306886 759693892 184671578 526523399 615922158 103715422 904385147 387086989 350852552 461502523 853013342 136433773 379184002 739588731 16603380 60678818 377812785 459516948 422006233 937662078 15682517 171929931 523715236 38012312 123762090 785323058 506367723 965516393 930923793 328517921 751358546 281124380 35974944 513298220 739844011 843751742 942718109 221157004 633016763 324556088 236016226 347488392 632113398 704973078 338486261 173888576 680796647 485524729 343838045 725020989 350535408 783888386 690987705 609649024 892611313 297435031 891284000 750738044 706153179 17278322 251821589 453927177 438540445 432531367 71381142 574443621 312075967 15736071 887349324 789353307 890708528 32756950 907789113 4698623 959232737 454852956 894272881 646662694 334689257 915327317 271673114 180492155 323330836 488986454 628404776 50449897 68876059 885205327 792659936 306874580 262398190 500703387 303076348 341032772 457968345 26542033 341922189 653377088 628693495 177079794 875325861 274005966 620205168 575860782 133434204 983206244 944877536 776354072 162881944 835236213 800993505 673447133 654923275 379212076 988115101 640307411 644744926 719566401 425120648 78717057 628005784 687622464 797223666 612743024 541465467 870523415 312322549 486502965 924463597 717289742 245585974 617360742 463091285 47822284 644686897 464913608 506064188 174739907 842998579 912652521 304139192 829381963 707569514 967920628 126011402 580961811 701320103 546692591 805411154 888604823 592644649 796890777 866563168 555456964 142828200 99599890 182398657 844350291 786446181 221806359 830997946 683822891 200212958 966813080 543129103 987516826 357624558 62787717 715636662 326543191 107485464 781136089 392749630 934132419 564055701 635706645 801395439 306171617 446248117 454641946 450632374 225345380 413229472 922876167 419270770 264015271 606168571 980091919 477543930 662341517 338178682 685355537 855813711 183290870 492160828 443013876 88764111 781768931 288072727 874248456 258556892 924473404 743590368 212357676 759094257 978116100 289732813 732045266 699782539 424213969 356450947 328863538 144933690 683663381 788361846 7079447 360291696 543367058 309590475 148981146 764346537 7021973 7988776 384719449 504840010 101289410 10224431 6985472 296020755 268016442 84058491 577468977 258044227 688469855 682470080 695252451 343136177 961499528 53935827 610687406 499033859 864145045 80264911 177842087 977308779 155085589 286034506 374441733 371048247 532668648 164657890 754773593 618041014 525776041 789428722 414125016 19157610 240358050 829425162 110270473 537721133 966116051 129343997 998138791 919414608 868258348 559758996 775778582 880937118 238383777 710019915 663687796 333450887 212283138 14738477 903662579 994372198 555192944 552227186 85681801 285168634 103717015 525567995 448082784 251589799 935574379 170044726 616958945 563466578 515740788 646155001 845048588 185873751 489877607 741575646 743550808 432253601 764604118 907748145 842061194 245887130 751568492 851135487 340502448 156586413 472533685 631960732 902045083 947057209 795428831 188260955 268873010 792580940 373326433 742210673 298328886 507473062 620850749 959708153 80289801 315617876 127845038 845084836 477442133 946063148 653517560 346810075 740443107 610784068 361773280 961066412 18433158 385408087 634570251 131732622 218011863 881770007 115174808 941997803 377448677 540521386 231110635 120663081 590819920 7304839 705362339 85809979 615366848 7221025 136608155 164958262 379265898 303380148 314101333 529904735 176270411 26811105 972553733 316712844 48671098 47063602 767368070 817692226 840299156 904042001 868404417 293972806 641888419 461782087 35698441 279468916 169702941 771035062 360937370 941273400 66802161 152071670 82650820 942595689 41412127 695602493 101988881 636440071 203717559 582726036 268076419 635715222 960445093 103575400 950186486 362470653 83348627 529556083 106355597 275662945 154959229 734874877 588123384 736922642 809225609 632749182 983532626 139994199 360822018 556001904 51680404 209226729 216882590 230958678 587604398 527094403 141264680 345532312 672009946 481144807 393714043 944094939 807175611 824998708 11243406 370283112 842397313 757205096 45118745 492762864 799303365 433924316 239625979 403781898 612101339 463290504 561699409 441345423 561862327 963530341 4219811 574088175 253564159 781515047 802394165 877386755 742351994 787619812 825583348 965581472 4319406 95321199 857550539 922361362 264213778 298875864 749897687 344482664 176604596 884005069 569426228 280903403 941400507 738893500 37382865 949093380 921403479 854906119 972870141 754373259 821611174 414152602 451472108 608589212 319668226 967692526 968400796 887840535 822790493 389495306 626060361 201036554 694044794 706252829 166723303 464974222 533855444 191601960 996886987 734203685 247910734 459905829 268222570 392203081 485055347 245756840 980478519 362302017 559063363 76424925 744339579 310766380 181200073 394282129 616842246 675338999 462948610 532237630 642721842 506866792 615500586 179190871 676064446 468856321 594281794 644848066 577509770 552454609 886020243 931660341 473965478 867050769 930401083 46387668 647668725 389757096 603871605 837646414 367093005 336525063 689243497 989662648 833615377 794991091 739744272 90374380 784798814 153486272 909964202 750449537 842232362 235202341 364858388 78280509 368463090 428515858 529182785 779906896 587737394 280219201 876043062 288319940 718012223 489241861 434601563 342024974 921037001 916271531 708484139 227713802 333683397 641542066 653970565 117781739 412433987 510165018 353609732 900254243 931968028 678767037 727102411 990900925 639220727 880005062 764930299 431007691 163434257 45800694 836539217 16245423 583522615 669290636 275687536 82177243 119158035 188581001 780080890 54004887 532085289 921218612 177528596 703251379 354680726 935080039 114672004 964219424 641302655 869035629 222357910 718447276 817836410 812258119 559061176 365663601 704122949 261592588 711332397 812573680 585701704 665300662 846967159 982767689 349811695 709656470 415526018 898756936 392725576 341619720 307774041 365059554 667800820 169834371 415894704 779608844 220363032 459953212 907822115 412659525 308149787 477545242 342776992 940072407 445627563 936225670 502827765 249416722 973369807 884442969 285135097 88016346 717694227 958591124 847822136 427120044 719119616 11910359 375192665 250252337 683367587 923316389 552569620 622462301 457985288 318801526 850439499 76626735 578823933 578341729 491627120 301099712 859326050 583270346 261062078 899353859 266682684 361145931 313363087 618398957 472555636 603513360 227745607 573879735 707039685 438595748 811759740 759250728 574248466 896923415 768496167 848015916 481854708 580185353 24015397 280624247 470778313 381697656 889374525 324943361 666529737 8443582 131538536 798261101 587710335 749783395 106068892 145276897 360455337 195800655 650456281 546654324 698956644 738966808 763479125 443779334 67258839 783095487 275025125 984748591 344549503 598030406 40355330 356295318 636007846 127470986 631307202 748592890 328771295 337599362 322328445 647414837 535676061 180317816 717576227 339951779 265187672 240551007 367805901 399866166 812517805 500681454 560558701 201108813 5403327 436804370 725923866 548332247 311841798 191876000 825074735 254244888 622508992 248098168 40059234 112540629 275588397 623881792 29515147 738228199 556551302 295153928 241322362 237033409 996454640 81282641 348331592 270731250 746006952 705112659 726192982 472337281 13927057 95081848 762155137 256204675 299870996 310123497 974565689 446103642 501687051 861816277 448657570 636799948 14765357 882313300 165634927 481794468 965895891 623493980 425779657 135299099 839387086 292201194 790588985 858631628 40645853 772558007 825153773 73271908 135733208 221629836 821713520 691965938 746398237 620698289 549919727 102252976 268686420 671043291 105657445 550992954 840825663 451505317 208327512 602634205 280736328 481410384 475922554 923134559 581572676 933595298 303021061 38360906 578209509 110919459 989913878 300548718 195030829 418558217 871190475 251935428 497793480 598195655 947746876 866772728 494041693 210125102 350933640 7749020 679574069 696511721 333673588 510733866 18917079 288846615 578153037 552313552 607195828 546294683 394830138 340696204 216238993 701863366 278717553 460883692 277397354 791156229 379731436 533098928 428978832 51483266 274111002 381728919 969866512 211064852 454909043 89901701 483779607 926053910 58129493 891188424 99974555 923276215 907841919 260875727 886775106 60067778 46998305 255850534 988726049 880896026 628402428 965616716 69988494 733333469 130770942 650654802 937382153 164235496 932516075 123651709 757488213 776052280 824414859 425797558 725623937 176776249 533688226 5717772 732654070 999225985 597644446 634676125 441447391 950205994 10548679 363848439 278794739 599472121 899019975 601426053 637485639 980829453 298326068 349150744 757498576 983990181 850306751 616136082 882465904 113882144 816503837 630959016 177015704 490351467 480576941 676248566 508224746 757733721 91608764 679493539 40139963 79732841 483059870 661061128 600244004 527069728 599506130 766492626 795618806 936439911 640253677 436074918 234156390 221687402 173047748 189093038 617809072 4732017 854258907 38662688 512609157 358619865 89654718 605773647 432146220 708717204 733454039 926900072 339425155 520538675 460936795 572122878 139194532 606015869 601432369 487499335 497435849 103239959 223270515 170851871 935514813 886874196 414712923 903501295 778291205 612520757 21027711 269168750 864817879 642078560 855078784 974438618 89471399 303753151 271303656 872172910 349217716 286700314 61022570 470375114 158229249 321054076 188174147 559686534 857729959 913758274 486816013 741077536 416729501 485646664 325404374 188307193 392753060 364366457 376336429 88328025 890839639 397686767 277170296 498155641 102756375 246848198 182226410 529899924 645499186 425194477 242927832 181872575 180410730 227638947 770241700 468762754 57325367 129675154 102025534 836693530 775551956 703237205 313833174 644925605 619512373 755464790 957345297 588580308 454671464 53727505 795695585 316653330 203074586 923340905 89692300 597200301 68382211 863029514 389216761 867911550 918601861 568449443 909154286 533995232 442904552 896011852 222060736 474673284 163222427 782079881 556265952 885974223 287510157 187459403 56808285 818294328 285111248 516089826 528329500 587348458 416970911 629831326 639274392 322819956 417786612 154351557 317796498 218899512 242449006 744443030 3163102 735062655 552062757 349569865 901121002 171281881 144444043 870341649 750635596 5898201 754263911 145124089 152750055 259776029 682270394 650420184 246967125 681154810 61818542 846786100 684683049 258505640 247300191 872859081 162333967 981348992 851725637 298045130 695453265 50646067 509477594 951492735 426434061 483477274 947705209 172311652 541935911 480775613 356400497 386555445 411725605 775165779 858412308 181797987 995049684 846620280 678500000 473366189 532945006 696597892 753929448 863803525 189945417 345159079 954123855 795063691 589601468 965949840 58552144 62152365 913439561 719198616 288641256 684523781 148228597 362787529 643804530 441518684 711880700 116601904 95307119 176505872 957470733 870203037 362226859 651051554 171238266 587192208 145267345 772595195 356650522 900759799 288797593 367155248 819833471 131320069 327783985 89875207 603077779 271566806 53345068 895255690 504627689 58698990 831389773 557457104 436438764 334909800 209159185 890502794 27794698 489950 701058463 823102581 315519121 202348873 758274064 110364743 781680727 793611047 857378981 49629304 240678827 861527532 562853919 592933253 131632278 816478400 592262210 644171325 743189965 422140869 75569402 688872652 701731194 101687183 700953341 564521910 813987673 434824348 292490123 543059849 282447911 409312886 381747590 828753678 576756806 294771107 45463586 32744078 997589521 334034935 428443880 402440765 994893384 817142088 837657678 679973637 946718878 746213604 275435030 210620135 651337783 235315985 492042919 614644240 53586728 325218062 272275976 130478976 918353851 812021167 819253379 61367004 164695118 647818619 482380549 512928752 818945404 570222958 998048490 572644441 149150020 329915709 783276749 613580176 490976819 699527802 286343581 472158405 599727229 179567402 414650833 984064822 218646213 17436774 98325790 648306670 11538941 946248188 396564661 517976890 925918002 838947157 16108675 177446954 578840243 134838107 792648981 273648448 777903141 188970411 659971215 526539630 409277462 629528585 583756848 355518549 26905756 17303894 316235468 777815910 691189152 636102917 191043347 206322781 414539722 401890200 912475359 131714843 953882860 447120654 964680909 420495692 875303635 850763457 329528540 618446580 184793866 734927414 375361085 817306211 839471004 987541842 370146069 506612170 840361395 69575503 249801449 135076242 512158826 569337647 715699653 681624729 357438370 430099029 47530513 81512676 616007263 695606694 102383106 263289597 278063635 842918676 942738013 353346798 419470270 985490298 971482465 29314124 390175525 256922586 150802363 72278855 898571144 247422530 822675150 141609985 140463292 352778065 371203737 736301566 803374497 133131397 106895920 923100346 878978508 425253758 714713711 810884305 298201914 901644174 402864370 828670750 455775491 339367463 254133263 467334627 774833820 965515724 596418206 467273567 317909769 364994506 882463242 43669137 690893384 231456297 198535123 950381862 828010548 432554952 272815176 503341282 327620080 942052126 166429772 383448300 10059444 588240916 268964272 866496311 93098649 757627882 281357867 197035605 472045100 58471652 946282433 126487611 19171705 553433500 417419154 525457598 76707405 514244066 752037952 959343042 517326564 978640402 475330274 116146322 975245437 102299123 324525762 702207366 137745217 128058928 703379355 430686119 184423164 805646406 338056930 80372949 732015629 357206468 384008506 508494761 896242813 451364359 532619473 214654335 149354783 273814165 6212434 992287694 537427167 648122370 120566540 622608689 335031563 119549950 992717386 746642441 330662391 945353742 386909584 204053970 261117679 623005565 185207472 133688147 151404487 315804481 753198593 344903613 244417898 1001796087 884977914 648701569 445314120 961132301 468404735 415999225 627740733 814295208 621015733 971255318 99986313 433866574 205768670 151066404 137994605 727995776 616225355 37762125 397089076 537970709 156958912 13092717 842074454 435425027 721558369 322957548 497062134 247426160 135838256 806125536 899501365 71085431 309924327 740206229 308435584 237363654 345798169 524745591 664688570 328943873 789517467 66389442 900683206 407763553 765554525 325842239 563549898 157729413 910614177 185309933 698554616 215966424 933176849 879910474 523699000 711802027 520938145 794117130 665275624 947719727 356377102 749825551 186620649 948516636 768274755 997874562 810548139 331669956 485904958 975549802 819656710 197899907 373473587 598281211 719052135 7114911 63354638 1000591328 342813457 392673054 49783459 281829000 530611886 231335206 603569948 643927836 541014149 352443088 545282998 478476361 127437025 677117951 711018006 647689041 110000860 747779852 987113126 382151849 509092434 87156350 381995862 311972571 143868341 195123733 414460324 639941337 329603361 521731947 680849208 238203453 54428275 792027233 748347923 137619395 942160775 511875895 957427598 696729913 707593117 418639072 140447487 843118306 608736008 341506590 359441743 792553952 279048739 117043188 782544896 298967767 150619977 533134538 583409692 802568961 706610799 863664212 239980541 29402013 240839328 791378851 32150000 689023128 10978415 744650720 689927521 990489608 331066309 217199142 810035747 881572403 978433723 571591259 800212774 438771455 623187891 278021640 224189318 549685204 552304555 809936652 528931115 801462221 552279755 646433365 505377904 958389717 932251842 760805970 771009450 45258802 773889088 36765507 610557842 446323701 540150498 150319045 921417701 728274915 447755655 725516329 92002962 800357810 985622914 98873498 679030437 23554718 451726206 95937978 842432695 371758505 75849360 768312667 859328097 136994516 162802397 910954014 348898886 557312788 6289198 722962234 703552761 532909162 159522662 983008835 176758702 679699809 943689300 366924957 500801973 508559148 714975145 177811971 423204346 955395973 334055049 82198837 528484208 681213400 649900188 142760227 91176027 459122503 541581811 501850908 145215360 940786197 733498268 984167579 655401076 762209083 957487184 179651192 289460988 467861540 94884447 330696092 145060775 957115364 472413918 761004808 726288545 842049415 549258948 904038607 943985634 125645597 67159577 835462902 348550934 82084244 465152636 308885441 858719225 608163498 882727911 888194584 49555573 52349929 496792653 416023160 422960928 519623300 182355232 929856980 221230907 446098746 720762354 28419100 391463637 233750268 762901271 52353923 487893037 654739998 857085227 768939709 649733709 926805882 473346724 262533528 146956165 268642209 403992374 790270358 574686941 714844459 196819709 326587845 569127824 95026554 417931759 921911333 808753664 793462806 896615191 864340374 327384276 194319885 95886021 953484045 415922483 447908350 964577223 156251127 282192717 283189257 816511480 229650394 579203237 498374727 488504671 987960063 472984005 369961625 827399694 289399144 997605470 220683204 897529459 253056451 717590178 79830674 896847424 798306308 197557745 639012315 172142125 527330667 621404569 373509530 990599189 831873562 99302904 5818913 985449906 143884080 14274055 24582621 127965123 820317158 373661673 537549307 922076338 773954430 811430577 852569524 548895582 917551193 113735939 362772478 728866958 680617773 414637603 288851118 597279745 998816833 217032543 570448977 862115664 886308451 796385972 322402123 440913508 669165523 377225974 423611171 810367904 986676236 598419729 902159376 624244398 117831297 926365978 336973988 818737726 438555154 705446845 10185646 679350125 436123145 372128561 959881340 272261037 274878353 729967315 114549474 13535028 319822308 93407617 460734450 271297133 314711740 513352658 862602260 336145436 389505455 437016949 941030262 655010902 178335131 524758165 462203351 577275867 149501600 701450407 266219776 810595253 337315108 655435057 404963401 428014185 271218756 449402617 565735864 743941223 942792825 664281972 277457196 84000681 208282837 394395463 25117981 342104502 826811109 710644302 735026805 777823367 659536906 889392285 19284084 100102290 772935632 587190343 169306189 689116078 990684267 861464906 824912763 288229062 762418766 943987608 864185928 370621734 269883855 565526562 547234979 237293219 279698419 260170745 429666325 170859443 649603186 657050386 133651493 177806344 527018684 486316411 807034306 561856191 250694066 812182281 14585784 30013131 616594175 560467636 711886052 303133715 810259309 543348619 29110403 909802958 485051367 925873146 955753432 148754424 705384083 94709178 472058051 698963480 963364616 871410422 121242505 66953789 805010558 745145940 501832535 631278163 705406443 438592852 862008107 241256666 772266124 181889321 342585419 784286090 130782792 268374130 969760898 760841498 344475461 63216890 456655936 379775341 283798222 134023093 624003086 490499339 940308301 767343821 68084891 57941634 814468756 10915012 738492359 632093836 256819884 731326436 745150067 665013280 634186842 302558932 663257561 304677060 654122941 567809973 622898737 675073228 601133826 243368852 852015979 703955038 455204533 564462146 698430814 355675334 196587664 101942516 149740823 59464014 131489795 963176539 77088847 472852754 964544939 820533657 319522197 499293892 772442395 828974907 430742594 921476325 698260775 87596761 926010453 509664626 855349965 372520096 301220627 140976644 317033749 101377846 984307976 394677612 16581401 367424233 199929042 678114347 781954437 806964147 418167400 694228029 258140211 475020548 214741212 534713794 146053735 486699256 487826017 999620379 500625415 953896236 765846293 813356260 681825504 672690548 890964496 138637277 62270681 295391033 492869461 679009906 370818200 417819424 111383462 588263498 293531668 823513835 915661838 405675278 86757172 36166109 320440899 851544685 199721059 713497902 734144539 92623612 953013598 513794414 265502521 568327635 304076987 960176681 449248158 607902096 909391490 521564184 731208948 615177921 367439822 394308580 631880903 112872807 764296977 153869478 388665097 808265094 705987755 982963610 872035590 172645443 61336433 258300826 460031780 170098786 996221419 146874791 251606657 493578686 714666167 426348955 908254267 696300340 756533054 539191633 598409763 380845256 498883947 269503865 871108358 855886934 389629854 46181271 31984608 456626668 200991703 264176280 92232022 275922251 74205896 607926986 428654633 176513138 323827456 463481631 791806816 795574261 367904432 366814564 836535501 748529952 584535798 25891094 833229988 992810884 334748361 497926024 992248858 449561889 186164398 723182765 817136457 871696797 364640648 575816664 139473756 672253371 866825769 283850069 774603838 377067920 553847372 835624781 901269671 568064376 408628427 441393995 389172509 393922565 262575429 713888480 948862801 290298334 924146848 314090136 590947051 149482209 604084124 335570415 620110461 690071247 888516066 981610157 305330655 162256326 724482335 592669076 398501202 322166003 631667245 863048456 417113357 369626913 416439969 729384807 783209949 864238513 728088646 564561133 421078330 962963217 577889472 109288352 518219710 814732202 540879667 838603589 818858325 276655476 267379666 983583994 34948091 764211743 577753886 778383831 547537772 871926821 51759799 13064851 173138844 145385970 233447485 278440963 568719777 144212926 824343492 983525884 376168334 882557204 216869667 93251266 389986813 380369474 261781601 783255857 177465210 393245729 161050288 990790169 475991517 666547326 879408723 884514003 149458487 376659302 70698262 597260598 840094578 835616867 308572633 523377769 762178201 583261323 16361305 762801133 202709156 330512377 37876825 902934391 4700312 728204316 324914461 346131543 130364377 809377940 598835511 373496339 999504626 434407502 415547324 529438097 872452140 564760056 67971989 210875071 190930284 226139995 864243944 323231228 544670589 60149724 893662665 515777549 130893492 836592120 791784785 545723892 425694016 7776420 958870819 372396048 614140466 751440670 291759817 935069575 497433052 214396976 761826385 160851801 670016442 625075715 589498209 631916708 208307509 808433992 511018249 574452704 140885477 555531893 659223824 432322579 585963211 829861262 467400689 450940302 210821225 53914569 23986098 308488815 85692744 455744033 558512939 596779257 953763741 831715336 178060944 987755973 92011052 54827421 14180999 278478081 742002383 479209899 189385152 686071518 267631255 952772412 630479494 427146053 245974306 920207836 372224585 353171645 1000893925 784744081 195569135 384498854 897380511 975987719 433790802 613833444 413251948 706773314 68809053 280101384 283448442 819972108 132840285 613227458 932015343 88137116 926593091 91920597 134166450 250751859 378248404 397792438 656741871 344132051 20930369 345210138 627673795 627029401 194281167 927899690 335375865 358947385 687107946 783952211 886950833 663455635 445753342 255566689 824162675 527046280 876284661 580824558 835746899 170138122 867787454 284638558 846823388 232902179 916774972 438389586 911337643 624258027 480117610 864702714 387945574 711975369 905046323 537270450 740726486 971497053 926799130 544143335 315570981 713447341 591386517 482540636 17423586 10395370 826554305 669668400 547261851 314680619 688131142 590009036 539014611 927228034 445249805 167361752 762906360 691706393 942836938 275874086 821692615 258937118 726547280 131270612 433096937 842497167 434438260 604000823 860212693 222442048 615352514 456077575 462455444 661582848 799836412 725361574 258428624 21081451 753703317 956349443 672762103 762102290 164118812 980687336 643679721 992290479 792408607 96116694 254042661 772213706 806219984 100243347 633397066 304591617 586476006 728787278 2215567 66305531 493681428 933064825 967712924 477539832 55358143 264489472 904352973 782147989 684638014 897309008 571161274 796806980 820841847 417382460 518916756 928894495 140030496 349564731 222928130 972077579 35235762 237665876 200622597 144365422 584354768 614894640 628432166 776178915 496335779 56939304 734117917 668064222 316990481 715490275 19223706 930454537 597685357 267176095 538948466 408950329 185400296 438632526 179595845 106267918 684807876 546190141 794024339 918203252 433961819 433348578 265149089 891385811 365390908 792606690 975724169 83151937 176271028 87422227 349094592 428882266 946079292 735540875 812355612 231729021 674389374 227983092 440113621 985676421 988451615 299915765 855944457 123166745 288236965 626653907 599206662 51447274 733697112 605734644 827275364 813893400 535484179 207497613 353563103 240984845 907943727 99052675 956245089 569440328 902913529 846801134 319136010 59354909 17094491 583793251 464081483 550871785 420649261 483874086 549147654 533090361 110719444 313496886 59325410 284697046 99750851 153604516 919426738 297774394 230014612 997045396 766578067 74677909 771766646 585095827 56413959 518657432 827331074 162605051 679542640 103284155 923992566 286432674 958752608 664148477 588143288 719097667 382019518 248254106 466591684 180985681 29086581 499953350 591357196 839672608 665771061 939486470 665075858 843996483 240413680 699512816 125704715 10664926 991054212 623515317 452273367 467214383 777897452 359429037 981473668 917510393 214268465 641300843 348477274 225071615 767846769 272086302 676713918 669346216 361399808 276984180 270052474 9553131 9755393 754962317 771282063 523501239 943615809 493426464 801140468 404841215 706338632 771652788 329308909 881618977 600205622 162860112 716482170 694665868 39851704 910588924 893565434 409594265 384793884 910421765 246167160 33438729 20592465 613142932 528188570 464983222 596403245 632757852 423306359 586901350 540324770 747132261 364827859 141705844 549910512 318088527 875973055 365187117 969832928 164286091 284107688 485143647 720052481 36895687 891994037 337469522 269628224 673467934 450670895 179708634 633351193 279056300 93884545 260253565 129463056 916484284 450983538 456306258 491804886 869394601 446296509 458145711 970812213 936090116 82796633 12254844 505847601 77631415 851612733 727223643 402549484 594457550 46673522 268163846 320418137 665888123 494141515 356477319 528477905 719053761 534907534 17351641 737937166 939499670 217759877 937101633 486904715 896315887 58983774 381018547 833265925 463483453 392161578 533863682 356033072 264514163 715603082 434379385 200787349 139417397 527572122 983244687 314499670 511021121 335892256 244589412 55999159 925529379 664768832 92697352 221566740 892185602 403089152 968315389 919015218 919890566 582760550 932910639 563218263 461553273 793269651 707728958 583216453 721601104 238549906 801233983 403111124 694903754 933072635 32255107 475967159 668266725 433381884 54084765 798304964 656105432 438556465 884148582 807607159 771694258 193376881 721924996 342221053 832809849 2322401 973100912 432421762 455825586 230296236 713589419 259495451 547981864 513131578 32257165 668958064 394066326 637541539 773342243 462812737 841287900 26557240 376501399 926378643 930840657 496262174 537482443 425828170 400943570 26738338 481895956 775681072 315762240 889992827 654588806 854497901 808039726 276176512 446670551 933247633 414237412 685188711 478760129 96003768 360347468 251679279 892062590 983011210 311835752 119755766 888538877 369557935 521064253 864156376 44128348 430015627 133158829 970936247 635933694 146284755 848450899 989811334 713269605 245844420 112435711 945128295 246052306 838446450 875011023 807936801 897164654 494231736 12241161 982409214 695491429 491629867 588297232 259021788 687610791 147676610 961988825 553535351 678026817 501903052 312236819 911253638 874506949 183657969 239891751 494074645 841397701 163213886 723494114 439779546 798376156 793893926 312429246 874617459 129160615 669466118 785390429 549335718 782758898 350327307 49260686 847185166 231232409 881648985 476040890 637288907 721979264 922007306 115680267 927067017 943685873 505341323 6381172 580002081 924339983 122691758 770766716 144310815 312993729 651487982 368484690 214763678 238741444 167894914 615553629 497546307 344181381 83952175 119812942 519280184 629079636 283742356 430743965 735897696 190309117 818549673 811020051 744095238 462774160 657449712 621962825 711838253 80965042 17888059 34933601 316345869 965523170 991347083 537347258 779641794 688480018 625733629 499672693 298379237 926861015 321733801 948742017 214250524 29654135 624338598 552507227 863978145 936271231 611922072 274610300 690080519 63979033 940294168 930630001 260256351 740149078 81028761 153879687 921515036 408335036 180963001 836542329 545654880 103374125 87612774 628312608 69928369 996897805 6492793 162585862 161842306 899209578 550972836 75801232 975965848 862709272 364830569 838169588 945078237 881456059 517083482 928855313 872375417 613763453 983126462 887975338 303346170 908330315 395844364 217987758 45012355 252221874 746945078 501702577 61891514 294027605 997886439 865013245 290632133 628977623 392139541 223100457 864051222 714601134 337231014 487240169 382053666 43436401 577647313 299403501 371592798 438615826 645218245 703307850 750689332 183122098 528236566 849439704 556250071 915100625 610255684 786769212 972193749 830440548 136387770 318372748 826315107 845688500 993685938 537353753 215661528 101818702 456748727 447445001 414642918 851590185 658730187 640895400 785086317 113664789 917033342 709810600 98115816 856033110 228042498 207075579 351136947 426348268 783023687 281848946 114340194 569450139 737706940 962511160 890649446 858284888 360481223 698782844 516645189 262335763 977620330 900335221 546539935 207956398 724250190 960496354 296058842 640502398 392282360 503928202 93414948 254508105 736845573 805673019 201549547 198409039 622970844 464017680 218176102 825122630 681441838 647372638 925485655 845363672 474969168 724187643 11093545 10574446 935657019 908485076 591659136 783338555 534283630 771033013 283367409 353334084 856450233 148204336 527857782 116630118 217333664 730320313 210237561 727375371 818004757 356374967 470706220 129090145 374726172 269436540 475038118 598525868 390662592 509662857 619902840 250844903 494634283 332817137 222300709 570574174 698885517 149042331 382738502 420300382 896035057 371289084 120032935 689800949 328103175 406552593 438889665 479003216 672696601 684197192 306698287 941079875 132166881 537241775 917058213 515723682 453154223 402313697 152406994 804807649 60354459 311422224 365159449 384248722 756563623 756850954 926807744 142097086 729381985 928407056 342582232 740596425 179309279 986440039 593341380 443426853 24238960 620876482 17963569 578291362 306199330 540257708 120949462 365790328 644367727 167243288 131766010 559842003 662747421 68574320 538670230 896108514 986399704 720234093 606430494 485118351 941525878 378318296 706937477 849814069 148040967 525256631 19579200 276718403 8421547 685866972 812815428 206528315 925283221 603081049 779761844 60807747 526631243 652586601 988603090 829419999 477528708 730638436 291475063 4321469 437591848 404836377 113361437 604815551 25079036 882864661 128812027 126400250 867432054 359843688 280426731 326880588 831102664 494740951 45159299 192070185 961167072 935418083 968435501 198827099 805817045 623641120 314883396 207221146 959459181 356602629 479463145 607303029 235884281 612433361 165268279 972162918 974807283 430819666 456058279 461870871 797713317 597599670 93369593 453875431 624005308 981891247 545177181 758164170 482252890 881683450 286027193 335564445 885839227 153343404 191775763 138326317 190842757 625866640 295862161 770248997 786811866 544055331 112768007 219641515 800940985 160339385 952322836 564268236 501995254 369890260 608414691 844270874 786635222 425881149 375110891 786188851 238048735 3457315 519676278 38776749 230177593 6239945 659029396 953610965 615266208 241712088 775253301 110507664 871666026 590678200 127957418 623187736 22379384 662540851 147054327 665872000 29143332 72414556 76567118 482912085 48968510 23400369 796414881 843906322 12351400 368913571 346843884 335162771 646916886 529890264 900328574 188708470 816452278 128385962 1502866 700295803 44661018 450004796 259293503 639677940 272857604 29703933 198628161 694115810 253045369 884559206 58551714 593802978 484261681 838846664 136309887 434748439 902606454 141862017 433754491 746616268 268112658 393356335 641468579 449770075 613403756 750657718 258528972 580097914 697089806 447490458 516875078 664605021 889787841 873102819 876820413 208929196 140964945 21578540 342540358 890176384 869254095 768073721 349038273 399866131 454898397 849834017 562587788 593206653 39649974 431134103 604185398 962706221 397566631 129042377 167648214 747238830 90845072 908034571 954160794 309747423 257605775 881285010 386813456 592789845 247197522 868934 83085162 325871605 321770442 964766141 480954263 96824871 220545512 901877704 233295545 553936044 178779785 874277085 127042727 388747244 398255732 943476054 999280079 53739315 967093502 962270514 451527754 355123507 172313113 410529058 1430472 968339206 453482477 426269305 371540030 226919742 892136198 591783850 459027763 259095538 476311534 17160186 399001654 716698024 61852929 749413152 501401649 39668881 544039213 996157016 705942885 738818779 809629749 141610173 558074898 328099612 567114091 821549996 171601288 517257943 779440796 36283916 433818963 279285905 97009343 442657903 257298668 912987279 164385067 620707438 841295297 236189921 752510443 971238995 73116062 883308953 673164367 660486953 20671971 402754435 301118439 24053941 511125406 61961425 187168677 483687300 123412371 571042824 248668945 70247822 437761897 865685043 477219567 416895088 416417410 722438370 848532399 819239568 599275373 461314520 806624921 896339452 744066133 890426219 791290835 896524214 948416369 55109345 509147318 966052390 492769995 608060623 413060170 662635329 836720252 69582830 688723087 672437814 987209329 726991708 96163431 887028707 338737217 351809940 424151111 105611525 558995225 429824510 893302481 707056396 593223761 236528705 484054193 806593102 837888204 25985151 809755104 483078413 977851710 912334953 573848113 365598222 141829752 65999075 703719224 488809207 583572146 788674070 996688434 738247224 179302753 384600299 284851906 116267489 186265825 547361320 675467540 227348028 333019589 280154955 211914348 256494936 125052142 603036534 631174316 983370709 78648945 364720627 630775180 743747247 516853348 826227182 789053147 492162945 222286782 470476393 849642868 999546348 126208710 265286643 456687359 26610099 322039803 6871469 685506150 269460042 31171092 288956418 78653010 766129153 604890425 609299203 449592381 982050992 994580280 986521295 296929769 730243094 540170319 493303822 347052920 913976140 234775007 906996342 336334152 279546569 160967454 374271157 59124153 34725560 510463587 221911548 445564679 357191956 747216528 2726134 751446052 607032841 496441676 936021406 705661539 729192159 843816691 983617889 766627447 38258015 175153222 361947482 471907574 885672467 60969325 5628774 624521710 770594118 848298253 699843726 73488153 805252677 704858231 316911103 105291993 881788236 567186587 204331599 545269980 83836824 906863249 621588662 938290951 922870239 316028989 68568398 209741119 300736994 27700209 284749259 441112412 570791666 11236319 669191793 1001275301 534352729 298397067 94642788 213369036 708757921 354745923 572337752 432070234 19825230 635488565 916633631 879940752 760007745 676658298 389702101 657815345 637714100 707411708 865979622 668011564 576943522 424682203 805049605 393062114 706706191 156536883 165538535 111052572 618254055 347626845 317458023 779099589 872657652 658434670 258344867 687040918 880601834 584916940 728032419 952160955 612926023 515740012 821616081 495994341 471020343 966032926 346482769 698584010 590570413 393690811 182755372 150170826 305339572 913440554 726728568 630884731 777661651 482494998 223801780 851368701 120180768 938032172 392506805 203808593 675663437 128136969 160064926 20652609 769684855 520556199 339668157 926910108 598305599 456527966 478719037 585070031 491134710 827073808 440075445 647805632 445148560 893946115 707925124 257934569 851766935 70324387 258186896 171470455 258273312 767861045 55629430 237929963 812313476 423868557 81509046 45628757 951125627 702349424 460285850 295882110 210593151 732511480 896992211 469057446 519740577 785961911 31762700 911845447 392037500 120179364 395252453 156392921 609877079 950745976 520402348 239342543 978668832 359634208 938712026 469431431 809967399 891794356 732855371 606047436 331472502 471618795 478054546 202171347 23368602 619372338 132547761 860528469 151763413 853751475 660429173 756278948 202422856 980471907 105486621 420801650 533439441 932689416 5774569 505930233 663697102 950514334 204138758 42183679 967386283 669043896 341286430 866506321 77364878 27551643 798646181 429137081 796876653 996185066 692191322 108035159 114845962 207126544 148942485 770500877 276150647 220163109 30241918 758204417 679059150 439289292 636485896 384384432 52951123 282026099 471371277 131918742 224660147 826032039 732217510 496247444 662183521 854106327 117079557 614825501 968919968 178045975 311250844 976435851 479157582 212933066 205312815 47973878 836026298 900987112 274242156 285407185 61292920 775069971 172902348 855730647 20468561 748725781 663333664 246354890 211606293 802372249 371727409 768773773 55776574 922317597 140471030 141680832 55703857 962648113 962134144 504407668 294987772 731037573 222914227 355830210 32119540 670597380 268727323 133058843 61000425 710320255 186503596 329411594 292275483 91964114 888283396 237897027 856311337 241482622 210800588 412682074 427665805 737964047 651600583 900911475 573465667 672978336 716868199 427256279 837300872 370950062 791113935 225297732 972232598 331038121 512228242 54376212 944325192 722733876 963310938 430428384 91758034 732288791 640531093 401612782 116139091 51072522 793325599 142860356 613426138 777463268 866284541 607904494 204516826 80334699 217535160 907877840 589491826 50381474 796344943 517404049 854559847 301968556 289934533 301981888 701930941 822904070 473182740 472676782 244990552 74582763 941111913 855532149 127320057 876699551 596117192 934209100 286469431 91857499 515417129 969319552 320029542 285627790 424478959 670827110 780324828 111209959 785864156 548821098 143565909 192956626 251730401 918933040 860494281 997063073 511439583 1857113 167733956 709280486 977826679 704850896 407318200 416216193 457353301 209359925 42612378 429965399 519528872 935989565 423660332 141903784 173668927 800311811 289694251 601441970 68093830 259904368 962494945 182196890 882537991 414163630 752175388 260074241 766911065 456586770 674621382 888700829 716784859 523211246 858378561 129611771 152608584 438404329 660428186 153113031 14528011 427666730 336914248 756683776 802291267 141582232 466297933 180633 856864621 935832385 973500730 465099084 31899120 511486741 489559776 562564846 248619972 307414285 514976479 781099825 708472986 378714814 586438347 675230564 298525189 391398611 652660002 813130211 969967734 89561866 265925238 596455782 193429037 119042564 725659357 579319167 302402628 399969994 376706746 783627614 199530398 581799826 762581004 272954418 739424896 164042830 546360746 568003174 5841408 206010390 706989142 632310288 597892406 200903754 924139428 56870895 994917768 147573949 481241224 202717532 530073064 25967988 460818529 802192488 769231000 693113582 200386986 771488581 635049610 957226450 100879682 595299126 34674179 829884862 65799065 800679151 263905823 370670993 338008187 410153689 263744163 298451842 632563904 68230330 432688844 325919150 65727966 146669363 676070916 128396775 887608652 643857560 699151404 110028186 958007322 939422746 857641091 851458099 129391852 739646032 882983466 521838528 597974286 331471299 140157468 153176198 182061198 107634587 569148144 315704005 813867220 582254869 285575372 328717204 726878818 606039002 898583947 403789250 331570754 425263714 950450456 609958814 567948967 855473424 411012338 157877088 400821026 283304053 539469841 191953807 657785248 294194833 238415205 173012600 864520418 19878392 643607787 179795639 732598626 7719747 874554929 199639954 487228540 257450674 498442786 616787200 255981912 808730766 366407751 955858230 304377371 328941308 587274894 882820965 375507508 800661618 950300633 999720303 656144976 931351108 652284088 970414635 939510539 702235657 98645660 403715631 579687826 196502717 827345370 199796998 278724166 576274321 75638786 964971307 710242959 335835650 800621507 428932308 634010669 231364163 817288380 190904523 599596272 357042594 778153013 921487266 231454142 321907426 998590225 264321772 571913276 365448901 864913235 65715050 483225409 973568136 728116733 483677427 636322791 902637056 259081179 968657212 54761402 673435205 867950451 817883831 154343975 907439289 307295475 610600383 756903327 17606802 9210700 861301050 358202944 924404903 878332501 34787971 317946502 54410393 324719637 772080445 721274810 374707101 467423411 248123831 947095323 823446175 694001131 419454401 199606122 43367955 422157698 145269104 248644844 805403775 93589101 901873096 733698869 13781736 978349741 141575400 189533539 199289456 124033893 504214021 732081105 104015450 185575593 801387662 617491234 27984061 255231225 228977009 577240338 2905060 125786818 502341279 760274739 187187592 128119631 876263100 673359030 600068059 669537957 184752092 508580432 630177202 808063635 505703196 742882085 21636178 827780607 935601244 808130094 638190597 66914213 658962778 775532433 452094152 315156545 722298583 678227525 881613968 771195300 382756880 19050309 718325212 644171146 607195371 526518863 898353175 751138598 228575186 7722537 169443875 287935983 173050283 173192739 564110178 671566060 298869014 464928407 165280257 936507268 531318038 953052440 723250774 980785895 304016264 407594973 224538231 83331056 963110261 158967417 258705374 176996 444199303 927215372 346545808 794113120 183259027 434790075 425422698 727660882 964920233 268542778 680520323 632102008 431035244 727293785 411157841 460247389 898233166 835847421 662530337 846021406 204057746 283026110 539893961 456922986 108343523 748496036 946693266 418340678 64375053 160137658 987869612 937504998 804373304 711826070 913000966 262757679 4091166 233580921 614661088 517064790 417449015 159301213 456484391 78824340 923955844 330729945 633015602 215801381 933118717 975775199 260167482 837473271 781689546 514522171 713819876 931576760 69801485 72554531 672750307 71408796 787462699 116922355 929980284 551498890 983302497 4834522 765504167 643574607 335791427 103791537 716126781 558530086 259242502 956622971 24948622 927719766 466831456 785766220 406398254 607414952 227329996 648513499 222846436 405320420 164801927 772366017 1127864 1000444590 499598855 412917759 558293050 987599438 113435390 27662933 972797770 570432358 917980607 907959037 621364399 39309872 243394533 364833177 569874392 367106466 296460212 999190161 353393971 250139546 860982635 461435215 844283612 98825992 288417999 892481130 635738370 187728193 300536384 226501189 896640880 813031787 119866176 251689369 976375806 456720839 132018487 640738475 123841279 312451946 768163123 475730020 517777314 540763148 708394548 219183375 368328372 97902763 633677625 480203884 154060642 549545654 319612643 118206108 210391342 996433451 603826517 812243963 141531074 34147243 872215719 624750882 75212325 829610853 190347443 20183311 60293580 300843030 432103024 873453823 472246127 787763404 867575161 531535847 356808913 201304205 153735257 10367452 198559748 548514587 722041228 654562366 886723713 451027784 1000969495 49353312 300066076 472833355 953274457 525454343 222397245 212114038 492943455 123802627 902257069 971965149 194471015 644460914 562608091 874565236 1870553 349216452 35627734 469311034 380825604 634777262 390088137 521159402 238750499 801074274 397752361 610020738 560042774 495513355 166653068 114182282 274216996 73338291 701376694 375274313 563707022 856564232 513211104 642332200 758081794 689707558 708263569 397491846 37187923 304159321 836395920 815753478 934909740 511704501 623083338 76747144 216659599 230945197 336483209 261559861 611707982 577754581 99271751 352410127 247990877 335329972 897190205 633938617 181047254 850742363 408062012 28695221 539550520 62989625 834816087 575791250 1539559 897362004 883507604 422771598 67518734 889243793 250741318 989406311 515162574 217485653 211242114 260848790 914853775 291675633 449976381 968516203 414339098 166099926 394163371 781670794 706806071 571417559 415892155 658455109 114330919 254559183 152643723 879246139 916818622 173015612 908586915 974146483 524320831 848829553 645576987 229052767 616036286 385711148 378272408 188885193 402065417 373068659 615652707 931591147 440523161 257671123 755270229 810071861 932637267 970301738 241639410 225106138 151470517 763843182 239179950 438441822 137208642 615700964 236087174 477974123 251551021 111039503 552396523 637860332 778321375 108975505 412652558 378699330 198541240 180821275 375021865 488069071 14509978 681969477 652973203 801233824 314130422 356661606 103735575 865898655 812638810 915387014 440645577 433194418 744167102 421431010 380251967 89007136 26770208 848373115 145951196 402983205 746443011 320164282 656601798 526577900 898684111 182762791 734018130 270282934 266709273 992013492 816839485 843086610 6398864 611928425 193617724 193629466 759558040 312911053 605796540 644391318 328965086 354660482 885387268 748461132 556953164 314055112 321485856 231079908 957246602 845327943 486134254 513789718 389826222 30492102 345028775 227583988 680935967 832737153 904826086 662512885 115287503 910779147 864537679 390181735 927025747 138017842 667355627 687712190 17544431 931570653 164988646 570798301 112812671 627484321 386141423 450083815 548011112 490754271 824420324 350408700 438903749 662296186 480259970 772706426 311536789 882577500 373139596 604241066 597821858 392135279 757339703 294977584 226715679 568129152 664852116 888199989 247748905 454707719 670540535 331802835 446636839 616019557 832773077 414191923 706206975 127732066 172147679 281790580 309849261 606376736 426086165 777748383 548255795 340248194 903744974 420651959 532187767 555092509 646641066 238467270 862784996 237475062 633853331 60767359 451614569 1000815580 67948868 70947381 982799245 70785907 718446935 652650985 288623054 747485458 110517912 135217091 335307425 238776409 252912700 699809909 491984316 920183832 461795172 756509331 557121651 14740891 333859151 550852427 904171735 156809191 518866925 113598327 956575129 935852209 711282473 141107583 175322567 791569377 961456565 817836138 970817547 444597716 950776984 854870017 161094834 852891095 493402116 167462838 360434613 322731992 513497577 148929560 456532140 918497385 12992990 439790332 901244540 395269425 337776524 155602739 174615625 122272613 202660108 871377300 864734223 451594263 745074798 84951128 587050433 772595198 272510158 17079883 532977176 730113774 364721900 298153798 68514083 335446978 64248101 256747900 22621956 743712315 383874845 261094 985782746 714871083 923374271 235372527 317587915 670682914 271155249 807928952 651267361 997137510 581405347 5354571 877798639 540271778 58979084 789924979 69777334 26568446 37920050 582648344 219522419 435357012 876914749 311876086 521053510 218991633 501294298 2223221 262089459 648931960 456407279 385565352 358787296 689523982 443418291 163668103 968112807 598249361 82404758 479695264 131887774 663887558 171243469 49920068 474798353 190486636 913008584 567521959 385522136 186716607 159858396 288610058 982749647 70739626 661864640 726211851 377794050 938847837 647404039 711812946 945575433 924334003 459513354 610523671 508942288 956777189 148981325 40574719 299917668 608469577 79515827 182066065 144078798 922350722 463304559 883235850 748110178 745154369 244279171 22620721 544582955 951835239 431609667 687834369 280237294 483143316 370794460 565244522 206607959 807153486 998874490 277470027 134810017 793606132 176392302 419259371 483735711 492852115 725235157 55765698 984152396 788517961 223131078 646718835 982552773 630779353 435959675 48759559 216483267 516128930 749736962 331346838 534406507 900859192 392711938 460624030 91285715 240331408 744408236 376465362 90158960 315732964 289650705 308488866 148151197 500742613 284596920 15380367 304090932 767779152 173483261 895594384 262773752 874266809 621809355 467368682 597204921 68851277 941069898 772695879 497446421 92100711 39159513 435731133 84820129 876973467 515988645 750653898 104169108 375521631 882972601 526123622 518339802 918809009 785399642 77691760 312475276 751035428 732658189 422797850 655830113 668751746 262937215 419746187 363633348 700770917 219760160 773819261 114570573 916612142 580521602 51260303 52762493 858598782 97571940 119528127 78003390 994817252 108242550 510745241 326785553 157385021 545322588 548630589 512167699 870289944 360695588 676987936 446265901 348222066 206451322 826981036 796308153 854989081 434754112 849551627 584131991 578025670 809281985 969261569 547932802 907634414 121762770 208070151 193574888 475023043 595172386 605092427 428860967 457781581 336396278 76365786 993432990 778864013 728000268 908057084 759352336 296340222 210032806 781216910 824530196 183029390 380033978 483510170 496263618 633512990 989984925 617645982 653322319 870302649 111849508 650635636 822650987 392619390 729655841 188089777 259773332 712286052 85169719 990987047 179077501 948386752 606942006 141354017 714094023 302958696 39006638 619058475 180891062 271714081 960560714 661143904 33552959 34317715 464910683 649552785 855897219 671774734 317777817 386342198 948836186 976928584 443756917 161613925 180809273 38605645 610264688 542685041 277493333 663366171 700737492 591079093 675221947 853507395 98522646 116965640 767446884 162115368 861928971 213654180 495557057 298701566 815657957 152295277 753578648 855996597 787072624 60338361 881906483 721437953 453853958 771513439 754109862 592240862 728390507 924773574 891537365 714164915 707666782 30865616 64307007 987414832 66012103 635323414 10190338 48671623 519480915 373529730 382670514 778241133 943210273 935924631 947517187 812403324 210839163 965895825 903908255 382638553 985674106 798863170 91823185 938841310 725787044 998216317 204855163 609408973 425299977 173637665 514813131 652420895 123841104 25322278 267573889 419884667 465424562 745748246 583706455 695672182 151695664 546832379 963858079 602768990 434006093 488819501 826582158 424850558 421737916 535332392 158296288 177839045 364749245 475190280 942276200 929445767 407098034 864457743 547017761 932992354 490509226 268255428 664265653 444816955 185223816 468748070 813778018 762192393 103225341 801072763 893611185 14115328 585828725 992425952 411570693 758906331 267001834 703135290 981540520 210981982 499599783 358299732 745231859 533894616 74580319 488610249 613174478 525503250 398712799 892164325 182317447 607030033 353923462 213762591 464447365 18986821 780676635 977363653 695335661 329028434 622553913 907506299 856769596 411954984 343345216 477361062 904500469 523396751 68916955 301789415 563262768 531773725 836590713 983661764 745388294 851166042 588336214 97151271 534545488 938137549 450670234 443279451 565341022 262176201 889335086 256756204 781953711 387164379 607337411 218479148 505368262 228487505 69885454 603487551 887604983 9638944 845599912 667423712 400323262 648582731 702571320 445312102 469818477 1001233876 199511556 702479873 783193402 413131189 820690660 114387376 270107774 933304129 755539017 303100627 530510671 878198790 142207526 10596417 467050381 800414189 216183730 716371682 300946535 723445912 515959927 858237038 271105345 1000919921 697535794 872605912 885091312 119255978 180469626 403100178 5701125 45925626 133542941 364008439 661240649 804065742 788824454 772379387 389053676 434768277 19770413 951851690 937796338 314024464 559578393 551057602 267228842 105744684 714458101 538690077 558232245 828330525 711066804 863077809 296279616 9734048 492453885 708075374 764048803 372937999 378753246 461682840 759771340 716648789 81907733 797083856 337389542 942214472 425545767 572643977 922409263 738550456 421562385 689791758 348720009 526917220 662270390 113508470 533768628 295822137 64786079 702414714 613299444 383062951 682926216 814692117 512201857 834757826 874961064 908584465 95594864 809234277 693764306 307224571 807711528 191696433 691114721 785152782 896777708 529980518 450491640 665087587 757668683 209079494 952203216 695788503 221574932 78847807 347419284 410153468 770062984 201095300 553502994 117336541 806794339 714519056 141554763 867232379 307980389 942585729 5238052 61144347 872543789 895512235 965312384 808826326 826763949 948281669 917445546 175299835 810244280 689908607 471227335 420926486 777876933 907535804 845481581 105397117 810138880 936226266 202433414 620547852 665816112 316860790 826291756 5315245 339438508 403754569 568271779 401726975 401032056 363577449 51796174 203861274 251256759 517613663 459865373 694919376 42943443 663169404 825941575 404319398 895591166 306336450 218632751 355023645 708190259 685039836 113808538 884628972 384001010 290688049 812117537 308040357 849591041 202641800 520780752 277636539 757003405 992061333 118575035 258256794 181097995 708949975 654582460 167915055 426483979 66783390 71352948 274914605 117194640 356160366 375100309 228641566 683392574 663397838 513047270 940064018 29092334 732222045 24512382 215065999 641422633 137178565 277327837 20227057 499243769 59576969 493463912 485673623 761921879 67468606 399672363 477137504 669120910 671516656 335662113 902172682 875023368 494750309 809583994 529396418 37266858 885061370 58450567 353545234 783814943 973784545 145456479 656249203 229818081 829827549 822061663 728935312 396337613 231363709 599345788 520283598 55321557 963120936 435280248 437979587 752334340 421172220 123559911 410512139 903446427 55444348 994025291 165410801 678872735 871397533 303333323 933248571 951812653 182896242 507422374 940151315 523816544 775241114 385671687 216688814 346514572 900680130 453353168 399509496 194887418 448677207 29529826 362656429 450475145 808219772 408575450 891816974 240597008 739336503 403008816 305261427 327963475 855047785 182849306 292176298 912461650 545253189 538425632 784273467 313344551 46903683 851859794 393238658 245001820 328112979 947806912 529649396 91510700 363891692 112332557 173729217 514066077 434451118 517877393 435383156 869732551 652034577 73327535 979396030 210331776 930299588 705092990 411695463 735505477 857639989 92198935 940362486 120087667 574803155 963749937 56208631 25352879 34724987 435299108 431431857 238003001 329530457 19957282 50076470 502339332 675079495 869580408 22106425 912385875 681940552 688991060 41559920 500217137 283736435 994272443 617685763 29669977 31599472 449025654 638736994 771645691 811108420 47752622 102894835 487978852 180904363 478570541 385180938 369126034 883918414 728947981 267304586 943787914 984269083 768003365 126978527 650350640 223478738 573558927 686723920 227187206 979466744 235567263 853523205 562163213 212250195 635133177 730603820 686165079 112261197 50959777 168355930 724494226 878211346 236408150 505700359 195293247 96521448 227839598 742272139 376341909 495658842 182459211 629853322 105012674 479284633 857527166 552859153 367861604 300642556 932856541 70729091 889402232 75125539 224429973 56759725 836090728 128713443 266526287 101728875 103816020 637352237 284700811 733531565 312720648 748113835 356184866 33048802 673893575 315771713 850704303 22926533 300438406 185437357 144165902 88579471 251573900 642579438 536907894 314733600 978413869 684881805 654236987 93860497 656588681 350226 406039381 215577398 719986368 932481664 196204456 230665086 878224726 644435008 432274803 913406736 176293556 75065056 829486618 607524958 746253582 635127142 119403217 1386890 37422436 333188595 95713582 974482266 842508397 110746637 771682014 420445123 156706862 73831685 808157689 433319524 389093260 496836405 171508677 239582028 594413981 956979561 849458311 340357360 835661354 169782310 223892490 257593386 484981887 684130614 262438420 894469401 313966286 982250181 456589066 809665085 481545367 496660138 962615543 649848026 348725656 577879258 448744571 962070805 551852972 376395051 352225588 941936637 630657920 157033534 569869885 272684285 141845644 788833155 18148300 892180212 103856135 712998048 397015409 350852180 979532287 310122190 672799758 249677672 618480143 157898763 816797847 348033598 873189126 979219304 361669223 498311968 538711425 391974261 259944918 489196748 802140177 948130552 304301382 593176845 441915069 100745004 760442748 83453946 563092658 985873638 94811675 459420149 226385663 145166089 787625158 965553218 704634531 406746049 846500940 554641533 224666460 125769542 310965753 899772499 333879066 252962731 969448728 942773737 959773165 86687801 328259784 747833288 631799278 769644984 746930384 1001031664 363727208 80135054 555915639 551039444 299005613 629115803 110362418 861888453 775405544 306177211 325326105 315584983 310190904 360414706 549007847 558912286 618333564 391444375 875158219 571713924 777308831 972582286 549187303 138466177 220693001 758775767 660610089 284038942 220944375 680439854 486301668 943796245 857250635 201079568 482179203 687981937 819355412 182351639 681160286 898839226 405553917 708390229 126682053 601237977 526345458 781616411 803332623 866735630 714061101 637892557 391261410 146166515 57278143 312942973 840693917 127550987 165138648 905391944 524047350 91357587 817911654 381042091 721548702 279921044 476879443 757871992 499121154 702905056 819608257 783815539 89184949 653116696 456088145 952971122 443591548 521384443 136838773 870428770 98332067 209398009 430010895 132098711 716491646 420145098 108845908 916184936 11498637 984051803 943776054 380659680 700334714 65227176 838579903 900186279 132540440 374108286 237455167 261430992 642202985 257295947 140774666 135631215 429504288 134525923 643123276 248707471 153734083 206090562 5539529 656545921 878966273 304235547 849158656 639212258 804636552 444460168 119324132 917243755 822627853 332130612 933511498 886001849 265992725 377126274 810700244 90084781 51814836 188875812 666018389 95393906 200454206 219805686 848792285 60919341 441548749 451494411 803179310 304531827 750306854 725451289 512130127 634712572 483801912 493138887 183822089 544448708 456585573 131455837 941713544 355229823 17930999 34961564 261776307 514235328 347899591 93294003 658935384 877506629 605426169 353230796 804227381 975535075 771411858 547997442 836556976 83885664 690048910 267828059 543794822 559724162 5406040 20219519 204488870 505114758 134514602 997205682 273263601 951938539 727758652 156549412 332382247 609147258 728681448 264462801 254997522 355342160 181042203 772639820 580907771 643907555 782554032 698428618 326876080 543864592 182825864 528715638 687958688 211669609 703225685 399731743 756569913 530851942 296082907 907190649 248470796 414573830 727798071 103875778 152703771 435086897 794982736 663928986 509100357 946979566 373838280 37673892 276475482 375531662 749684776 376379228 299716559 173130717 8103087 605649976 236485219 232350183 696847835 881482654 259438128 892563226 666108472 119119531 821262587 838595492 586420311 77253064 347205930 90345048 558190515 925028049 846311496 701907620 812476389 784109742 823547832 447486730 9283149 864212797 805498264 670843006 102759734 661101823 472644379 449572251 872495146 492359716 6782871 636175735 820420041 196183929 230857799 359976640 427645777 827109011 708048948 579111808 859035988 686176904 540773928 226742768 183300101 995418406 641579048 297462637 991231711 144519617 63126636 352785754 644846703 922715804 573737932 455171237 698164190 85286842 543493813 355315170 411005719 90297090 861352372 981307034 89761609 943513820 130487992 572359279 590627553 2470859 993844291 933148953 370304376 869067642 55180289 161104670 461348068 184375990 773589326 933971617 600377162 77155971 897381750 827300326 820048328 60347841 539578791 495567017 634327031 529797995 634383070 153845088 461258570 476203037 600950533 454764997 291560916 371472109 537792907 551816131 116270708 996049036 810681875 226767009 284273015 983846956 333402733 762210662 590342986 406792820 509705255 197282846 228207545 92760441 982845866 448119318 120689898 755605852 925960634 559955650 428698580 492234949 724534905 131566472 749425175 245132838 416826717 921638742 469135133 138178382 165408475 321816489 482838882 540532021 491135296 522374637 48615190 257055235 187998266 526359077 160953708 255323156 924571809 869806334 366235861 72854560 149878932 583104079 481243375 753290610 389950387 120116041 674297269 777729915 353932986 909318387 382492947 174835424 64679502 500549059 485453388 120502405 652961655 364261617 259677707 347454163 994477376 149720013 676850194 328523278 903277368 990940294 27203756 194731223 918430556 543489779 135764810 40172382 491651364 28624914 825649408 816911289 505000206 464518396 132317167 108762217 880061174 956128372 168103769 567574251 89396205 188025916 719840240 26640002 606684870 541486173 552244559 448393749 658458314 744818803 647794244 822500965 812865210 792510522 371443167 700766351 635405000 125096459 86559049 663586251 561671271 34923215 465151252 375664673 170546221 587051187 637667986 247131628 198172586 503140581 130845165 781058062 252266278 18106383 678394402 748596553 257561923 664849072 875333019 740270219 860916333 858393047 975821518 780150916 772553771 198935144 547207972 858890366 278591136 977378157 695188960 799441359 963646190 950053895 203417179 481563303 435834521 394168878 959584095 686523658 399674564 555686131 49425482 305802075 709606860 479855802 589228343 226478728 577073475 141162643 950553369 604575053 582886708 258180034 911461693 777897873 925231054 506554222 384476364 1000062876 677140488 855090409 358949730 138820221 963642845 973778790 509172735 908184543 583232801 749200315 587187981 633981028 564629283 610808491 506798126 980095143 122076582 593189695 465566544 523274947 122584235 789589787 757920531 157119151 220149804 304618155 880611485 108953882 536483259 671304596 316780058 975282314 326979009 586568998 915640890 12626228 189032095 246895002 278533383 124508940 418940724 527778609 207487435 408562172 712569640 235212128 239932452 859978109 142191711 48890516 309350582 56519032 890277445 156867141 418472044 104430200 511393886 325218338 731323468 746155346 350022916 630078096 875264378 651256899 379616748 357810216 106002099 940900727 134880848 121525268 552851964 776973164 746606277 254866723 551917101 747540418 409889179 970863508 791250260 535270121 367795551 181148954 183987315 199299383 616848147 938478583 307625756 500767956 514582367 577705774 955321379 996079642 22543518 510887341 594358820 911159967 825049009 765227559 736682094 160455155 927893717 217482575 101144384 310348091 924521416 689399963 754205130 321116629 638563341 423965661 589671258 808214644 866125747 169257510 526890587 91744863 34099672 95954201 429632256 649955266 535718845 856642121 897725999 702977424 86389279 273350274 956590460 873826529 972311648 494703512 166345957 859693927 347106128 652130922 97751180 823195429 876463667 519188621 990566728 562883612 474488738 636654228 177752208 292610621 815437070 515375373 574538500 20231035 94407419 695404393 425741967 385570543 911996259 781405155 141291197 397530264 851545371 991138506 128354230 642648752 651283817 413310887 595267423 357314611 675061059 22483526 159841116 544155663 647991425 227354241 233110153 756314672 917938945 412531461 786546305 494844446 638560694 688502367 527762541 148043119 519045564 285272924 156497245 499434358 484505466 814887339 255854903 299776488 126423499 728031204 75723586 509862497 237897471 141651629 71569442 54593055 968862214 111398824 668862676 73525941 759663249 72412001 890060165 68845554 845483688 761964002 123631855 674426984 708034578 189702000 322539789 147618115 33940965 375702882 303453138 172192176 668114925 61633695 832527157 350490908 992008433 743954323 242978746 157073761 245650469 197604211 2764446 39138350 307963220 491748848 915505536 11003248 529931062 485593170 425266153 327538203 766748949 504738447 399859462 199627324 861153018 551645348 870960760 407441159 345844587 58153158 387959789 49960912 238052475 1346151 424013939 440426279 28242086 995915255 297849582 920026499 778474063 27144745 896620737 46046122 333236872 389429360 915420408 583967622 846865414 833851455 796092951 668576569 188233904 191189086 958840225 446171363 754602111 766624117 342760339 361914957 292796779 580830957 113514819 40823867 642173809 529492129 374705014 74923221 217366690 583801900 899786934 272163465 419078360 153220393 611391480 562210860 510725246 831968119 273790286 197678532 995990904 737696648 4619914 648022742 351771124 107700477 751555064 682168696 391265094 968768 568463120 591380038 492878477 1001079631 925373173 949702599 759759479 416347283 50286237 350694672 306337539 744176742 630111511 613236022 132508064 334782175 62678774 806258513 923666237 433455177 746145799 296107317 998078498 320308184 792768409 77062668 972023292 583042861 116836345 994843097 356078556 765455955 118963341 280024247 6132837 556727009 189598287 37031225 152569032 550007556 808175059 368487394 858672896 483044868 875737347 786237889 33921137 803613829 35686701 877217762 62491984 985869918 282545325 773818573 206658083 543949183 512597170 587461050 636624249 285777568 713739503 544021761 348336362 339040271 94267521 279799244 623812985 788250758 672258715 708953101 146768059 53297330 201424103 724414881 364732428 373845007 468911177 891996848 159838028 748204554 474668426 734156753 317902256 546772856 317898029 156126104 397508489 82347063 529378892 294620240 864838193 967570325 525211946 723709954 680258148 900332172 869175845 649951707 116907267 899551166 641598956 331614718 923044932 675839860 151216690 686181438 630755151 60401299 965759648 974960634 380631745 177358641 219725700 184490971 235703610 40615603 975429470 388999779 401568945 104305944 463547378 561558525 662652499 863057813 634270756 509527678 967859336 527217402 245687629 187638462 357759983 207827692 156171179 906847486 61695868 233189378 226492409 789318602 734785877 432953647 891844532 979801261 426093695 760932141 551802110 427855419 976641501 827963294 969568677 953672129 718422290 429035109 285299798 299965131 568449097 762951125 571617449 715600460 800993843 212265228 928102079 871781326 641651904 955726906 326260012 651290051 124548166 423497815 603921293 200461614 506220155 68488665 236299081 420804238 278195918 895283093 711523743 262610229 385789398 31964213 933521090 761652203 736473785 591992647 287467674 969619182 123554134 157003144 859025071 381309752 587334315 610229592 437763339 76493035 266109695 136284706 370235581 672537707 369539667 749973724 810381107 73803971 141895767 398754544 849096213 714763841 646656314 409993881 264860254 32329262 300823616 598398086 413117744 262237578 371255978 513451215 706010084 272343761 541278832 268739207 326852965 114736388 351833497 406589399 955421135 753129075 934723617 801372786 165546291 771629157 962652752 244802258 836073291 564464557 981496965 28278386 939773945 178186564 384525802 147065339 39196426 408895346 48810696 971228875 220320086 568396259 44816192 365008152 19015035 170083449 912599114 204379604 457580327 338595480 596502863 791730696 879805699 681407595 667946817 787232729 342869062 921742298 802154670 159304480 152708198 782178381 531594687 665614113 260738414 105615 278290713 848010308 917241230 742581208 498127976 128016281 408339627 511113073 407354177 432224990 684931665 43897501 329329167 545805196 598402117 743386614 569968362 265147535 959421669 879967820 838390028 1001052057 445953752 530246631 976037364 802807501 365248601 134887008 925187542 401375658 371253592 358404024 111470245 961411759 647469898 699223530 561449462 276764184 501983403 269720816 901516428 166725440 850701113 673335233 477283982 678771287 961902264 61154675 126888832 838474018 222906776 220972627 640454423 625398002 459264751 811644472 494450938 963018459 76568369 89904615 451213940 934807694 609730414 72433488 873408789 593972001 452069448 435900239 114659651 308868062 827539129 694229122 253079380 38597452 735493507 142080500 714552995 577893419 505406845 893977414 416589770 82312801 878263692 715024049 756267551 475467907 184890819 938675078 289243785 319403643 941988522 875129477 212604947 828347414 286810721 884429910 912278658 197071793 11762482 287923573 204315139 402103107 621605764 272382148 672968560 847675096 335394601 584723537 741429498 183105176 451910918 661567743 932628747 352855682 996210414 431264792 255551292 655546271 696130239 819627000 667668521 765900769 283580697 546837569 998851141 241969170 875364498 673878160 33282041 21983370 73015136 198682807 739355241 556158423 245869388 47713060 334944303 884414333 160307575 809343226 272051882 203347662 548712762 19899943 800656078 612498073 319131001 473575333 760515069 916099834 770331555 550529153 204584489 46305819 265866581 720818848 932045429 343382109 213083205 458106713 968314537 268387398 171337787 493658081 790968380 771631505 260969799 907513772 670491915 600122786 65053398 763379207 557403768 463209897 668238614 918259389 508835121 701872409 804568153 379804361 984525145 752131616 6547489 490846329 970168587 103017314 232754235 656539089 8752770 409116810 848069547 424039038 947611810 318816909 940257996 786429980 96617839 362006491 430479391 106976669 245707117 33643315 504029751 623151400 949141157 508826795 446826670 776134517 763932697 595021291 438429685 197045837 952451234 166506494 266827485 535526369 83730989 519351134 985115403 75311452 912987728 229886281 171256894 170425867 523500226 646831781 806244598 246738215 813530747 511113363 346602324 614484617 991421552 998844415 76482460 432454670 689307672 171250660 264322998 768998237 72094524 183016767 705224097 978014425 81127898 104794034 400528786 374296120 407046387 306368198 135368617 834282845 651027523 239433423 664570102 218915357 786551587 451040254 706167669 823414392 274841475 230110601 627196564 16641310 384091055 616312268 999378085 356019034 166062227 869707573 255703093 782554963 535247664 69878732 956009762 480237288 547531974 998667492 168491239 741840520 902606052 992956275 708341737 325893379 237077360 474935804 965924601 932735135 108397289 590422851 955020107 393915703 820264580 652996039 779883342 783597569 778215703 188537964 107939084 85966567 479917037 935872645 41954643 670078862 320716057 690730104 417824618 752533788 459689174 836185721 864759319 151353559 218108738 792113632 889263489 396937532 116009446 99825843 589573732 438063137 658880592 628739991 55039002 858891847 691254503 980062248 812626028 755757274 169908473 883077797 847844676 245195352 136898677 797497250 844050469 202731536 888290317 507966938 980906394 413647866 538751979 530696946 386011073 441528581 112495338 923828859 331395286 716464492 671870051 27391455 853149792 688671305 430750131 97236175 419068137 663518568 816769253 361050715 541121035 984613774 147305866 551938120 417786279 17906476 934426359 786437495 734703466 566619750 180494425 2779588 698253289 810441891 441227279 28213023 256400104 674436492 383447882 165073391 21508882 876246634 737557745 480214416 962936513 925995780 67204924 309968756 206496360 336930160 906803237 283643376 287684726 618407023 230702434 118793605 209715332 725526006 527901534 360272761 828317380 940023956 600941982 618082517 244538803 48515817 133314803 415173235 505690570 353717747 88432594 547325113 385494579 518330803 686137885 179365007 651628893 152006533 552911531 370034906 218793479 355423676 914218214 455584382 634593388 401848451 697405834 760748405 751877458 868861151 104492760 159853788 61285759 948858022 181082127 344653892 120980937 427628123 634138759 174268040 442597975 112951473 48281005 871857140 686297223 588100018 674985340 274697936 171883700 761415122 849110355 337886050 660168177 83510849 710428414 152745115 261303074 40217028 30724304 67859059 792981656 613391198 256867191 39259737 380140012 119531514 587899341 464667117 540613030 792392329 638827722 161188225 939498978 53136579 178507328 231339338 808042774 993707457 577228733 311511186 811511969 558373456 62428471 815228931 920739774 11775381 972002740 573109684 912275411 373022012 669878398 672451332 146078941 39688351 258609381 213269760 526804897 429232339 148786499 311644587 297397700 898262796 214657333 981871885 809229081 214264243 779269178 112249365 209102098 23817634 513895492 769008742 637429076 34464042 649072496 986625897 714334096 361195758 860875744 464147538 65395845 904831204 216318554 961831730 566538318 892209559 413117525 144985949 502323953 919630186 335280024 42787953 363142668 917564870 537737011 991643701 767791967 608943628 991213232 707243493 473726786 296867033 304113215 505097935 244062010 401241235 772756928 362732050 461254579 828170107 754980152 457458452 838727760 726603481 573684222 459289223 94359067 685609177 782325368 904008541 259818759 701303017 908056138 906864397 880011162 328125838 322331967 657598582 767600213 854428757 322916636 24254980 317720047 613993133 570996580 434205495 511754921 846733025 193061077 254167050 324139281 690021700 691794075 498017792 207692192 200516833 856301018 564817707 588898693 509676265 977102569 768831272 109487381 492060504 389656943 889995777 396746265 612683685 721093649 808774976 468511487 138707179 427101066 990650071 878984312 834202595 605151697 874430435 652325920 697850529 26897847 820162856 10630886 289095132 338314305 152210081 350208884 542618810 639520305 437916354 579987768 339212757 957626772 30578260 938323295 932873453 367263686 730230922 106282056 580807853 8818396 134811697 513058549 379249990 425931976 382256678 121795490 651041577 679223635 98429212 120049717 261514134 490524072 998606150 955180629 834019845 539325703 277093564 833808668 797893484 667365621 279009661 233702611 988213842 972889254 199005189 61776433 170517805 732435240 916856070 799658570 775356625 574692551 833780201 935777129 855399532 431699883 624665312 686105532 304252711 63288608 242107656 298258412 608932368 907065869 445272817 30403236 784953326 182872609 628018457 767718073 856431683 311072114 333356071 378000316 33171367 7893034 118920884 152859934 279878093 68035592 68434933 599598622 330200411 823860659 56558996 214922426 602996521 811564881 990581407 975694112 820291464 696136482 412124108 573901997 904114565 171549302 473047351 669413659 99900844 562854986 739827687 435436286 966186954 578772188 694844189 991834294 792023321 825157562 181481524 731453217 383480445 728349302 672575659 725047067 367481634 176028053 715841369 807201244 889065354 362719984 800756681 255969751 816579532 314280732 74262796 129925354 21121511 582717047 13964348 27178385 59924448 927860400 435128177 734963443 356156976 446654670 465171046 266379903 939428171 751969746 755790913 888991958 932160295 286271894 143064552 585673181 558421832 637849697 91180306 596975935 39771147 135579102 776968120 171249678 357203492 891236997 736034079 562244150 628756433 144366380 745072019 591704875 419567739 955405839 8003627 819870175 474719043 475744785 617088372 385948147 925057877 588739226 129370808 43862326 120994689 919928224 649179176 401116519 201864203 863835948 23752898 946732861 799556402 916875645 194001328 489591460 923050854 20557034 965896642 916607518 63581314 423901797 216563297 219670660 610773616 810696756 315590688 46930564 7981932 162309402 482452890 906839142 716984886 334449265 665798514 444661257 228661308 411158617 76933206 449516776 464694168 18552146 607218420 336201935 43082497 875071584 310221783 120042605 892044951 312351647 915216123 832773181 64408224 868677963 397763217 10387379 709074791 118041881 650084179 56673437 131133887 706579354 455010968 22712346 781560131 299464568 775897564 667068509 912270794 877512636 956076808 305959336 627522607 902907475 276702913 493775475 980413366 953784777 811834876 712214766 1001401403 749076117 922569293 990320139 495979562 438186079 791524896 689061504 897511589 360977091 512051455 577473314 618295027 443754332 265601776 26195396 404536924 177104370 446857554 61149275 853913556 249650359 755165665 93366568 775932476 747688356 617052913 104350519 361796056 308458892 493042392 788427038 304142849 459109499 193096611 306821675 672305379 695684377 885124541 777499997 197217036 746885168 515066240 238089904 86623672 685333102 748640970 808645538 1000135775 295205155 575779887 787254706 446352912 93210943 939082178 681159155 80494717 143512410 221479031 354788853 15654336 974911258 281349667 293431222 880367097 148239252 930439714 861116510 466726122 491331608 608460702 379438139 225837393 165995519 882278484 91099186 284425375 620557390 61914696 695630031 45668813 253418836 6103505 37483839 859581003 684982412 825933892 772234581 874593178 997093518 41611622 232000385 163860669 220224161 442645717 948793930 200659529 962761390 959256341 652323097 219945116 129870066 167626584 831650246 834650166 157302701 694502515 271605641 972953451 206517578 593499204 985791770 126395611 206025637 677301866 682873575 414891760 84034361 239900630 220793284 559120516 550721859 486730846 896438440 90717789 391072717 478404234 718287619 499393465 281522934 754131629 322411515 631766396 334133406 837978134 938535415 74689014 168744942 154723877 709008426 546511783 585314303 104366719 164236542 680988419 569570377 533274485 393095729 28897598 979564389 661783616 316134454 676616561 434856885 908479119 525454017 258226064 257951490 861821264 456716300 400724505 816748333 808212483 254247278 250698907 313608169 44707409 991730746 345075333 723484811 311922196 257473408 641050182 6384100 127884189 351190429 854838033 401552702 393534129 460887492 342743649 127925887 865251818 255293562 357183052 944205354 526794947 968300295 897262711 306863410 129267470 729260560 749018830 301584177 357037650 503593716 913080384 808402772 737243353 777742359 5981741 97340416 23691608 913134650 835156679 859088307 349228231 290001086 822320844 122139100 868748474 14553413 285494119 972048867 589196226 957711968 907628969 32749407 635889298 109621297 950354674 918660847 275166919 329654163 901240007 41470857 97629395 622404302 887433676 515144581 107441404 182887368 65356080 775067052 826463757 502722990 11218459 422010715 204772698 720697009 493866659 433454953 879096389 871847235 141413442 555687747 867048786 67637925 829105544 629797157 75430336 371542107 49244378 2677765 198082546 237596509 840066000 375350033 763347831 169465307 430926044 986347892 226225700 865387105 296871503 880062906 505014780 83667793 560964887 984190269 29059088 586544861 496159924 66154300 337593822 396451897 815856309 489365466 358515464 823876163 449421918 721537469 80262279 654974858 850246759 909937127 119461935 688752150 220959820 129709991 883202837 662828194 93079570 822759053 335296962 265991212 300140046 658632471 149846926 818303416 625442310 468725771 151861539 162595241 445604371 746393871 17439038 629367632 776218883 938519257 265605833 280103325 406986157 296553654 980618032 686667252 534401077 878959709 7906911 664240817 178744711 995719732 254445366 873150059 609815076 906543196 3251655 117365293 22467699 487020393 692234611 542053597 808549806 578761421 506094453 489109437 648129470 641565360 859307900 622219717 319796861 841968329 244034926 36261193 933895293 698544523 638754954 254178622 261545758 830721472 975184518 673076565 830207791 436370357 783606488 398354850 999854295 652475489 996038184 351331089 349128027 897984124 329883187 452902005 772696979 783010758 250216597 441875517 819701499 425041606 408622849 563356713 983247077 158461787 887780135 281203824 196787919 79709885 864777868 207271787 585376918 62007878 426611083 982978256 967366500 321541042 911446669 902786001 999405197 205325306 725910253 314767815 475186327 897256184 892027967 635980810 756597374 155934940 40176566 301246513 133923181 407528454 35380554 756709381 491043982 465776160 335705990 90064365 578325603 885436831 885761833 992959398 93714297 144084934 729231433 53199501 45809637 684782343 380561662 323696943 738956767 746300752 803641383 205873110 899886329 545892041 869498688 190540614 472912821 959588427 3394728 157908811 374389722 905738624 167737050 427621068 299747294 317347771 149027089 692240896 387032231 281486435 487789700 306804199 694166484 422605225 570178022 77842436 207833270 986523444 372444067 793872557 673838818 743006481 882990617 108424696 611259497 630622534 140334783 146652065 482292811 408084277 876374212 897312847 580774949 923773527 636836657 385787403 225742544 839782108 174815440 325384461 535511059 692378365 994959249 453573643 805132145 318258532 778892198 451030277 154094546 5306449 787294093 114443899 924647236 670600010 403863155 366053994 1001635362 647109708 665628368 729295222 643778100 175357337 929269039 811580436 310060512 62210827 325073234 251782267 200220801 873435341 587132042 507287920 202563555 625111309 149332688 760723350 728969835 240052719 314667101 206324151 363363635 529970193 477363336 372241298 654224616 270377538 453960919 39032321 240262548 938516189 701432525 427054144 59498745 286790555 581106175 878956046 967941388 670711702 447594579 621310306 264741606 777155840 14906474 775295887 4120121 573364858 199570350 533287210 682503564 516993647 352673582 912744322 693896054 471926060 795173870 535223044 268039679 782850753 598674432 441222198 88364490 652505759 669871913 404508509 272431317 579406728 882520510 887481115 330127587 548695804 892545522 332618176 868826839 416103598 369030111 491855453 456580175 886514273 698857865 625021480 881763399 554439831 718898181 407611684 39055912 883015084 823350591 89776639 400549460 718472186 514788654 955930668 634084922 426676895 429406468 297419129 233719542 319692453 19643355 472801237 256878074 334656213 108635611 190320649 569145003 141907908 7918823 563899795 243058921 523738681 19217473 22412724 361918543 662618434 133828614 93155665 596545252 348754002 574528525 561829460 411938817 494446171 383367361 885795489 661084534 726897972 397005390 884957860 299142468 2877504 46222347 669448816 953407314 677669208 868521003 56568757 289191256 928109055 342310402 884367100 110035764 684526553 809629382 614454393 817148288 630455505 1001343535 109504510 346671857 715306329 1420011 160517907 949690941 22768559 882420450 316909067 841832442 440832860 603775545 973599798 960486217 586213136 296038334 122843065 501203976 121882887 664090843 502470264 770410504 653986015 681763986 194175297 912286856 531335709 486479506 5397985 729986357 427938770 358984447 116960584 368800936 28983934 828108344 571967108 797465609 933879484 80794741 589858330 378776778 724514229 169501832 296923480 541972638 660551295 284502590 922171970 332933849 318137287 287084781 382630719 90984937 63859035 743725980 401725361 715205132 714863533 192459240 173196588 121577638 109237759 224703355 924517637 561815650 754361618 259393087 549163950 596894866 554119084 726264310 768483815 742394963 45973318 939907983 59220300 532843974 179825131 89211929 245179868 484957217 694635551 437580191 372260218 619452879 337739652 268226267 426801747 920365760 351336819 321081017 685563016 830501753 68737944 960401417 161649679 633878642 840789428 335826267 172275102 469196425 196313755 693529122 897101971 218337359 819289147 685198238 274155299 121469776 897368455 5680272 269989971 137504744 160627885 372970516 39484907 848520280 486194946 484072558 139614101 563797668 699154383 997068329 460561562 916385302 248741695 583819736 604224316 545709294 730187653 937077634 376044513 253379130 701081272 664729252 986066928 190998128 64976409 709840103 591394248 138302344 79498058 618396220 972921708 969822344 773879441 35512432 760851052 738985059 283896290 654155792 467388061 529380695 640097950 543934016 844443563 934240847 841903885 164870943 973818881 640732252 625379800 116445403 935253180 857197736 753712591 177266731 838326788 616820919 179926477 198361685 360829446 231497276 796272648 853861124 705802023 976199729 891555606 331908052 293214637 385382078 24849386 37011387 56527068 57979939 703908675 662283666 158596879 830033300 352334566 323911172 969978404 30034839 39523040 708886388 797415605 89962188 796638173 467087419 719613566 813415208 730655909 93161119 506972138 347713368 640562576 593787150 768997072 536985958 745240447 561202271 348240889 106771766 549389425 594028744 173696836 169249424 719071975 337264180 384549626 150455697 667158691 638952842 243270470 9837505 615624177 123122455 755255970 696621036 945223545 156201756 130661901 571471712 957978076 487622077 886888043 810926978 263458081 850587811 617871324 357042853 18538108 454624027 303655791 223447691 397178639 453022745 476999336 56382825 751366734 168367683 374528010 732965601 511488088 951398076 393778282 756131973 175551095 588820820 398531967 184696172 904840798 168143728 38862845 194060801 69251014 64085857 51804661 285055453 144879380 220134924 410546477 357000060 478583613 731396711 41412806 936464904 758874424 71426640 549179503 926022320 927973127 892734686 259934371 1001963769 618496105 159594299 698383049 336771599 923025383 236978297 345000009 398266175 822570707 122776309 104242503 580233077 128173835 473788330 291410573 978864567 331935425 451133505 70951325 538739769 718540617 979697290 447373177 153025292 910062045 350663942 469062011 533751775 850591221 253217995 663376599 237912774 49085481 894297435 600955431 235790687 447746549 701747709 118295839 467543308 637052217 165274100 626223007 896491562 381968771 42012885 440168839 228705490 393933385 194962660 620982074 606476478 6565298 152490075 603251251 343812627 304278804 16502185 446070217 476934637 142313687 537656566 307859865 629648842 129731588 621183174 143322124 621577273 781216555 119774871 744634305 302751081 56480400 342598953 637379632 998092471 691863749 799727428 475785046 670709743 685042498 296176172 512662401 694077716 638658835 725522919 487299174 397832102 690231671 4991602 265764155 160829689 51164347 589873740 567983762 792803211 180336014 966841486 820624206 250331542 748503669 437292102 138150843 360513494 68273062 74299389 715712600 896019715 144732176 888244257 627398993 820934841 145505579 793292426 645285310 685915235 571235469 398275866 753436777 811621674 103746243 618948112 991867483 412615485 397784593 983700898 307699100 603896993 116554948 401804649 785597869 600134730 489507112 230659145 112292883 840924713 640092703 288338866 713602374 738589458 679578360 263509145 851088191 355054514 776949858 59274706 279501320 447024423 773574311 672817162 764523855 805712561 256521659 916195967 25854156 318252266 667710710 862185178 681374752 622721244 775564305 590486863 155737338 910956985 534248851 579917241 468986104 885035714 485637409 369700895 297322206 99103853 661464008 300258315 407844638 406311865 278099580 125855500 451451983 20743198 559994795 795358314 527956208 550470388 782775742 117006838 489047309 859995463 409726855 185644089 289549704 908870054 292238274 154484227 509604863 798650973 27459320 373474569 505297973 634975734 703330328 671908260 502404483 356453446 650479782 910702915 310197022 579651740 3865091 536746151 940900559 845937489 522358495 605331995 535668921 477200235 932221947 892364203 902369408 228458602 699119251 339040494 900056635 638262904 892402002 602068481 845524896 282526803 494166907 349818425 176573091 435444831 327225025 935546575 446219802 749467594 888191541 763913859 361332225 513636079 796805014 208582289 893466295 503588041 822465852 48813521 470583990 610190351 217130189 148552540 464333836 926260350 335218825 551891722 764710654 176574191 879975899 250974835 739722757 524578156 583848560 694733072 603939548 798251117 9596606 704373569 720403376 288792704 246366626 937786313 674896303 943668934 804113953 942231871 232251489 77833584 993019754 304431309 729869043 604665383 699534651 93168378 998699420 831177063 625268259 213937456 354010566 755978885 218373819 125202567 602461572 595964968 442562471 961028804 164076224 971750484 793930853 613711386 123686200 181006643 212328976 255516200 292801762 988634160 994290912 608485765 757787789 799458336 646312655 952415340 203055438 610499161 949498072 767177961 870993000 877152680 798743581 51177266 410485729 225608479 266170250 407627377 305639714 976228632 229198171 218035256 106606230 714604808 969619372 526858060 988270443 358070987 105688829 533257966 715671943 210086470 330287485 722180766 795522196 681310635 444229143 616551186 526450113 351062931 625963867 641358136 482190389 941895974 382247334 163059289 649640642 217819666 806232661 72276840 65465061 571657373 757729172 130837156 504162871 977255609 157383368 558183212 726154299 937831773 609390455 1000092689 956687539 327678341 767018716 486559905 571248905 531916593 579353233 595436836 402758509 49223386 808717443 124948019 797370647 304494400 420473213 634970565 167723339 240886589 414979689 606499432 318231657 695533917 967813571 836607932 398717457 838753555 258848062 680370383 523829426 972821798 930585456 712485713 105338867 272916143 241910164 310871273 420018230 614212129 352847182 411972296 362947679 356907215 965152924 560395794 380119471 978339425 727293022 505208210 25124230 38809893 281805945 419995186 844516098 597865222 911636040 527505584 584952340 617425297 426537612 511059131 784090492 549712836 882134913 676817883 798471035 983772418 302567340 914774066 846448515 258383309 704653682 482330391 226384889 20505119 791023776 905093403 66083613 386926562 211182242 753972448 608695640 362191677 79173621 889161692 959966163 576089361 436073292 946351810 228303635 645008506 94844926 747576894 229906838 991767989 496876765 39114857 903724149 705792896 461967136 180688386 375422759 891598783 290148272 835314583 451181297 459268049 307971677 307175789 800930367 900541367 392235573 640803775 805098427 945987752 349494863 596409789 193506155 305690657 980490778 89650299 349341003 311962153 222154124 46693916 347044339 837929347 962678611 476150077 355439036 47210727 154985703 26053235 537406030 898380301 914604175 918562641 873258066 287627487 224946979 270027001 42231155 47891191 342213742 26938574 399195742 647771351 291759303 786701859 792299495 290819981 843062444 406468840 878328318 63787233 682706019 763178872 90980595 435293134 755173048 34682098 361736142 141563349 209328129 32780595 635200398 759578859 852174024 914137790 893078590 235525993 518989008 787475796 104229364 670849173 797158432 556344976 983715893 86754563 170705359 232018191 201111595 1001079729 616807786 382945928 381979844 161952427 311798896 193697640 822531389 117319493 639034030 275271948 823515109 698788773 454015336 397339088 855207354 626709077 34399941 836989166 850421591 905454425 222117735 27627018 959912822 546252681 428140244 871787175 540118829 822065361 634981263 445599081 954267150 775614550 349749055 458635226 13623771 177655358 443580342 695125961 114966291 978344010 748672463 122516660 635657249 498999553 934602854 571158363 414183520 217912410 291534086 251944222 358008649 71440239 611486869 197261546 778153589 317087938 939637131 176444107 431571363 845014946 764574806 903033028 73093206 866415662 863005041 735394197 890328938 860592134 980513659 611606474 200491282 661108867 637298610 886979315 350555997 238310987 974832865 949236174 304305651 307696907 465559162 609049995 570216584 795290479 816488452 542198728 844264564 571924695 97608670 394312169 721651557 505259580 327643555 375587258 619612994 731779832 25456764 261722391 630938228 597283747 61578059 926023734 197946148 369937105 606387584 675421803 432961186 902363398 397169844 725688705 924932080 90581565 72278578 955467206 37483640 934208696 133707881 576174074 997183724 823285617 783105709 894222019 970628533 259828756 515065416 899223131 600248210 256230104 806123311 877310067 114361402 877051235 636662808 156728386 76544207 715702047 856946760 392429383 814714561 800312369 536432976 759266742 902676005 375955397 725554977 376935136 626098045 357278952 970391495 160349649 21058498 186908319 306656319 585937289 91074927 907192028 636565414 456105708 475560534 431183709 956897419 693927771 858186058 944833340 426265339 409072120 272475284 801342719 948799743 293731962 263518740 702097125 787636289 284080154 239125081 527712498 124222912 792529759 355975032 979276443 725484605 853554996 268623284 712536393 271158106 426943568 88774792 246756221 105146046 416584917 345676200 52232829 69968456 494338865 47809262 264495664 121678879 844131721 210764223 816388085 242729431 943092080 324077419 200734073 490590351 698807149 671464547 413294042 570046127 498100734 647817859 136880337 614742597 234341974 519965281 389446791 105748764 777417696 590055438 669214822 127083694 735551418 2110960 518408668 963787887 693278491 82915394 849803083 93394190 863736605 742832312 241054357 639820951 924027271 227759493 882449994 948244929 404840615 97491924 622018389 493564447 818466473 759288865 196007552 652266612 286794270 273259832 891801898 318090469 435885913 377032477 774763896 330098326 898687960 1859610 650140651 559903038 946621812 71285377 384641513 816057800 97595508 854839724 256082195 174014154 177919766 959908894 88634757 478462797 998026247 67571379 500805782 513166183 369321635 260824321 711587867 56539463 116268720 834715026 377649085 215953786 18885517 705158715 535854701 501717646 694416986 458070898 564363583 618596580 118386322 970096835 34699717 501096015 214778885 193030956 363781538 320804781 995056333 98941683 854707581 230806845 587646139 409350275 711224311 74099805 904784313 491168491 489855379 516584540 765132309 343846797 242293162 17154001 971318289 436910181 530766432 319270285 951827037 664777996 324574510 776552362 44125076 398904255 222004565 329948635 739806899 777167277 783890657 20216522 640464763 638565742 514348788 193302871 707138485 697850149 583046315 375035212 100632375 84307099 403236754 429145750 223443972 790956335 121475089 822755015 327070562 353136904 789480657 140383915 916184566 92551426 102285073 316268654 251202266 423140539 379603617 436796207 894744462 457427397 355730136 315118739 738756228 925919186 475067369 748677854 973440670 273260260 312792282 468334519 680288586 789296509 770428132 77678975 327568322 802048538 853391103 61490957 862213552 946547041 325969036 812645341 780054060 584859957 662221879 78175420 235493588 563288188 811347682 489396176 245422610 688197439 962298305 851690169 2730599 751569034 50319023 118615282 947273828 809534152 686943652 278551850 592731070 671743266 624964831 61248925 447009796 408047857 980802268 967888227 18058197 391688970 1001519890 610981570 646366895 70451573 362261795 193814341 966798885 298223269 151406111 582074762 865482650 743447905 24921547 695364678 145750023 891724060 857119413 301562520 782425627 189113233 585066080 897441767 608521317 997022693 604930027 538687010 422917273 837308249 813010866 960449700 357529755 865245 560780537 785513253 268416976 650735353 895087984 159828863 604243868 865290825 914008298 927966827 339720136 63050655 932338445 929168418 843172489 307784911 249519451 561867251 137257080 822221986 57202892 178357999 760419657 545850967 512512060 785471131 887355224 528513845 489468629 548885705 71538567 824045394 518179352 80523845 443951799 969448672 840173342 15742358 431880323 405854715 647229977 64128410 699382809 605056691 794363876 107697413 446120303 899034422 416713263 614901226 841036113 979997360 652955978 925893193 356940068 753742102 901012893 770424593 464119511 660242876 553226669 154008940 693143926 959053794 429353461 151534738 200092076 898111939 14193536 407305942 208532312 511278848 660891182 340186848 741351673 453665847 424936106 490842052 379220827 81116686 521032237 570618526 332485822 558762466 248054222 381066169 993331360 363262458 556609521 934944548 728566694 521549288 881101461 47179465 60783523 117291246 238928551 203077132 194378993 411727201 589784497 23781849 627600177 416470493 859631827 315662373 161447607 905133091 433479897 970271017 51596850 960200708 312612231 30768321 249373786 851948483 723504178 4811789 592399399 636325332 777273850 289645855 778065454 103756078 733474639 264735441 862842244 360063233 966579026 191760658 110597691 338843567 495570485 421534568 432546044 754812845 194213244 975332650 375560973 185264917 513474512 519653028 845394671 365580761 772333190 238834113 477523972 132231402 428448187 463078165 799186020 634963934 396575565 712414989 311661517 878486129 96100652 117907735 114849547 457228040 80345355 247877461 834115459 862552320 35082723 303013964 815998982 845538074 105277247 544503755 42973686 876332035 33219895 803978761 434560214 75541458 14337057 532818668 66871910 508812028 1402394 264599715 701753804 847213298 14268004 626935458 393890910 261044265 725888239 779261655 111840248 271967844 72006738 198729782 126976536 178065728 188750945 894969866 971090634 995674301 853736571 619349078 264660850 703464319 912327438 157482376 108051872 309793238 431834701 341744603 593208734 460427337 788005434 862384658 446165677 874733670 568199201 762651837 748174112 733294280 496642506 846925923 916438437 989336296 179886638 741886576 498800224 244697329 331128734 554440026 616617025 872939758 912575023 407481488 457813242 191969027 77291251 162172879 756052684 23822887 409345166 761214093 107554486 979078514 202369642 33038936 656840163 583490541 503216429 739366091 613208945 211733008 374908800 473201526 256445792 436256571 397400612 598682784 218712043 464342689 685460002 43609288 383844494 231692443 866083866 127590259 714128849 293427645 903904959 539553156 573686957 7972867 245550414 299156898 6860121 323227973 149541 970887589 380254847 233303433 837017743 630987584 66100398 668355524 493846320 549355745 612062989 248643088 666699902 992256825 417093198 787750279 591804545 413076031 493687854 297402656 606523811 867519119 167656507 890585218 195565632 603690014 163466797 334704058 961286227 350487872 252663005 985025214 505760274 242574167 353531721 496006345 531847466 14947338 326291536 779210164 159027729 773860475 525070177 577791236 826064060 428934726 562600493 690765982 496151749 251735288 93581713 888900128 842400144 359992808 597024291 421027450 17935900 842774921 288938366 501534247 495617077 689066390 896982238 635822223 681360505 225173476 874265779 265157549 332862010 558381048 813370002 985685661 912708989 322703566 205176301 766543303 106515211 547324252 635279910 799740577 549202254 197336767 488474035 369663770 821360780 266512929 456000032 357761498 837985404 582128458 135138490 968036168 636635711 988639740 461954620 130901355 338754052 501154128 174856803 298191541 271847619 286138712 643502065 568122624 885982504 531973459 517112567 930374888 541501853 858683073 890138770 417434744 518314459 700322280 369428413 778859239 953864078 318523622 212924982 519890706 579849859 978887928 721886685 195705665 935865745 689705820 449222907 249680473 938104215 845997215 577168313 405593096 443626546 948112205 9002582 736762911 561495201 989294750 856462394 747171567 932266440 491245058 525627665 546933574 352583024 331214366 648759898 24425364 912065641 591415862 85497857 262032281 838970037 580625282 915851687 347180228 896208140 111156076 357247179 272725735 677501843 324751397 493796981 977674396 6749085 502767197 901087774 183614429 841033461 676420682 595078419 452233512 295357922 647937379 523973885 97098667 628484165 491088875 430108299 340341103 817596779 553728240 293187533 636928068 545047494 103040179 404061118 791270542 293401026 697299027 922228000 47254600 613893090 667532639 364211967 596016163 671290980 582188386 838565735 522126095 21855708 40837539 968688112 351270697 13167128 910528338 57312766 28363969 401517832 391898199 142853384 211285240 981518597 932052898 652609204 102249613 286295029 859796302 897605933 499688858 255135633 285387351 158248693 946001051 217027430 87789134 844778846 365313308 537717544 285471706 13298290 706575144 407129711 961152425 456796024 564835399 683337563 94327259 313288444 143700271 102115210 202447364 687180223 7768505 639985 127000938 86412255 962434237 555133771 424942528 135723305 999216555 12186427 554545403 928673663 364575084 671931800 178770190 889785707 791741513 186145649 279383201 422657778 877773478 732876970 74772712 233874131 723106928 337204556 963574074 821301972 511343048 544561564 566441111 177877995 691358712 815699191 781746664 487732605 508142112 970361637 966187137 225342744 268229762 986627647 187683223 424674750 653170298 178993657 776385210 29985270 71878225 280115029 785257693 657558946 75981804 999075026 173781793 238919232 400903535 808530847 915879108 751823908 714016778 826063384 72924501 539489479 752630049 901585993 594382352 477123536 844603938 272436790 290815179 773408555 934237239 646643892 985750280 807381235 563599324 455766051 705992807 681310232 772858725 248822529 233714234 890954108 377262740 619623480 706250409 832133666 552853839 576149984 407046973 378034231 184573726 660208723 923186718 110963677 729268692 915616201 570787309 107401185 945884937 664212429 573376090 502916313 589597684 870752240 838525950 581448052 180723305 221978669 282940560 406558601 582072203 567901034 207011971 446724531 361052832 52416286 551992519 840157551 38165929 664787221 864107660 546201908 203000399 225877588 966490128 287418286 275710228 894312613 883436626 54057063 312213358 677755476 6024840 110795589 191685600 497818995 960621828 239928119 68645536 879433645 600367138 78178441 293795756 953823742 47858754 831131380 72664575 157662995 10891582 703527415 851169554 653935778 129724371 58171072 184640776 659849549 370806517 518679450 422335973 290483864 511714829 858152683 41799646 915656236 922305703 71389031 643821781 490464608 551457871 767053679 402335221 380524938 683882493 669862111 811493299 113544912 98586855 841878295 523099668 59365975 409724912 243853230 289587845 979576765 182414748 917682077 198133131 529366179 490629792 680596989 492756148 540788133 541587293 726731434 49415372 415196522 331638503 516832971 722568714 836273774 654040476 922703354 158972276 184026403 647766385 370502327 391516154 590266635 575333616 396471890 898448172 106738353 721414501 798670105 34038379 181413861 535031285 318292512 867631406 442474654 126058179 621033325 928706081 337267471 973434975 360947960 841909932 827579405 481627132 891604378 958599297 506034730 349425797 263714019 124430609 117761742 2994770 942897618 493384693 890062118 269646209 658387345 195216782 985102320 601955609 465709719 205655699 647354513 200036043 969009515 635940383 982441313 29524665 455885263 210634462 872906324 29157393 678667000 954842316 207541231 569150191 520225458 571364430 969694586 118927757 793706484 604002935 598275953 192472482 304998356 541654966 146763257 61968539 639611560 535773712 624861039 761869366 440688508 51933490 953479848 763086443 599244364 500662884 133723532 720353 30751598 680583478 187405784 610303912 575230903 21357893 212074591 878284917 777336319 454094470 660206780 466681019 158505737 311399361 131216351 24548600 785529395 963120781 201577942 326573164 176737646 964027965 214071634 732257806 103647724 88237042 97232226 772476991 289338883 395517948 749733427 87758480 588735679 103662130 427977662 883621849 928791600 176156138 779010823 357901312 702040393 827503922 197831144 985318781 571213162 900758840 423990916 693106426 1124666 709598466 416992304 106609639 349389184 225324026 994742998 809927485 992952698 66133705 971469869 938186464 416785951 562005544 416081243 892530387 498786834 617310051 570241672 52632222 491184914 216355453 78115591 120780545 873020177 683943199 718220516 494180879 913318540 259364326 328857790 368265223 953174993 916271197 866240219 874262208 669255742 497992299 766622062 579963493 283612089 835366502 54495128 146261519 502395805 60233963 465725451 867583801 268973855 381718383 836588205 469566972 458348388 993191473 542632990 343944858 502852217 306308350 550337848 4878489 667941586 165183786 739230104 822900631 296840183 459223898 333372989 255486457 990174013 702915573 284878411 674667861 223790773 454067720 321545944 591685456 12002049 761390348 849973814 172394717 189970344 593355321 689842928 397878610 317548700 193714702 59530222 515663745 249344208 171140165 357566496 444908280 196629560 508495307 415300701 877880687 992414853 932075580 967195461 239014144 228590926 193548069 768759070 50917803 531163697 75839900 432569935 68859769 138256008 842023857 837481890 913198385 831931721 498803286 388022269 275588851 512341257 45938974 246909949 302922723 658687420 803791775 888597735 587082387 480409270 381801996 363587690 254991302 235324581 575698653 581445338 200174459 994304023 710140986 527810998 585088104 734791862 482925376 614784151 23165622 447468466 30167369 602341152 803005018 10338634 815429395 905613214 786005718 303235181 457735366 294733855 235695816 396014726 31389444 293620434 430507012 303914811 499961487 682038552 187316600 173021403 997749280 460667656 523547525 922523427 351151449 619112548 288716900 351621430 646596786 510883173 498326137 986963366 523525398 200054698 918838848 878833331 669242580 367966061 417045240 408461240 829415909 665932760 409343542 404953389 575194180 893349806 949371518 452850540 74703687 723037605 477429016 107235512 218581635 900416029 642142375 206458931 772130509 288993162 507589629 450613507 69104435 64882244 181116481 140650578 557009238 320081220 26854002 275893694 32917038 475904525 309849707 757210378 858244846 746338261 839128594 811208448 380873023 419412513 878589287 394471099 486621843 721005455 645762249 510333211 700297890 714163002 747107251 959998721 530745453 907015656 508643464 672025704 847065904 834787672 512421646 531015626 439995525 704046374 103915594 870109461 942510436 897858367 328125814 931473961 489357818 675310192 671078280 24570881 901325254 197301540 620102939 630022274 669915134 752763347 794236370 176901321 448016404 379423372 881169333 560983670 368589248 243429413 628803646 984169993 992970672 51931446 843095487 360998942 951479455 320777921 992589423 993389407 267006052 386706278 880518330 393805016 52318502 125693787 989593839 770103865 124626489 343811168 225564490 773056719 829262694 112792394 343128742 113755321 140198388 972488707 530873041 337830048 209857846 899795807 194773360 969756935 287447938 637136773 815582441 956927611 946723341 868413890 145962185 45533022 786085834 177271514 939549088 606875290 883514411 906936178 854737720 636771652 185229311 791192448 150143677 231045419 37208107 418342538 945237512 9899857 511959461 509018588 412679743 797036800 139951399 811560481 863633640 975422565 932624866 259620235 289817466 813318088 254100861 889955717 531891552 105251683 857389962 583304521 818835928 147132203 811272860 49267600 110819816 841016184 384898858 646929545 663219111 370701446 442768078 765357199 629917710 175799367 589130900 253026767 268106840 685042215 391077894 453751406 695822256 979855787 866038290 628794568 946794908 415043182 505880582 203649527 452257577 709200394 926667995 487789565 547329492 171141567 222765948 133761558 522901798 677044814 527465522 6568161 404626165 744144068 58748925 961667152 420048662 171147250 401896163 34654052 999781983 941802538 445251615 856723142 447540527 37231298 333023117 858392958 814322604 618381917 942049788 461687768 636942842 841963873 839881299 940934944 292527148 673296795 892991953 832211791 383953387 612434007 621839712 398223721 1002271344 899463123 207114480 176848199 384720312 409475482 901469175 572993394 864130575 222098374 107162024 597428297 60251450 478669106 544919447 159726706 348150272 803351850 230633321 14883464 43427652 144649258 277475867 84178428 271013747 850730740 350269045 206052949 748082333 632690037 724685181 601785753 531068071 728236681 18320374 498082995 523333792 28787307 229874067 801676102 663867309 741412028 921220377 693845557 667892712 877774271 550660606 407993345 661955719 694470561 277038393 712784162 867364489 372592253 613707583 204469804 731111644 132100689 314274520 221709 763959396 845394915 758198349 432405117 27390817 639156232 1000492096 621192499 916574354 555965579 437776677 942766761 23213213 462110187 651183940 711739680 756695353 741151295 424130385 251354059 797976014 22964788 754193302 818221998 603081117 651474686 579284041 623762387 772080741 846273863 675641708 988469513 228856028 22521102 914068136 766899125 205353146 881603444 652180900 941445102 901807445 717521556 907719855 401463633 759405113 847173973 571476251 572633947 881328429 981042074 127213656 606381278 30909950 865764260 416314099 555848301 424622335 319641379 218712744 327748372 100152046 21654056 886925979 630296015 624819974 24293460 566443066 79975392 498578754 330398556 980468668 316973497 206072509 663936610 872914858 234199248 957682486 290820457 714772480 565111173 407958041 554484766 580824604 622375250 374783308 220648277 706509083 211852885 112899779 22219019 413505381 417432986 827902798 552506979 685362386 592662733 65004775 659207172 632278129 321269908 214749787 143776713 798798707 679395268 40314236 796975952 22453754 580137703 976988901 430958391 140566733 217615507 851902870 493910528 844236514 852651321 675011893 578983906 235976824 460168716 244147839 706778855 42349044 365308357 760563495 216117152 745292464 189456845 393947231 70610486 689938976 70392900 7507937 273380160 852818200 121202688 244392378 897304364 226640603 478540157 554728086 753692496 184109540 974162816 970695199 602550055 830177921 101946621 570221141 214643093 5143321 337887518 575560075 805743221 963031533 706899452 425164801 636803404 910807946 779367333 353313661 412548590 264762013 460599786 915743269 948683777 737212295 464144688 128952470 266096621 645846810 36017733 143311259 996444080 401442987 555176802 758204284 164678254 777332678 374261002 721926302 291460944 186540500 335295268 134135498 689021720 418038833 178781481 459965117 582220899 197775584 794751493 627780917 938086415 107117021 415220215 597020945 671665493 932153483 590120031 620246842 423048164 598545675 393703169 367087573 618596210 256355161 718076317 316106542 908263720 695482484 915865971 400069440 611299718 742183217 504944860 866264233 599880056 972054919 191183749 940656572 262956594 288310909 475020056 412713272 828572020 404328624 427739742 803858727 241088236 988335488 167388337 891670478 449554378 713866723 763926188 531270752 113682531 481867215 998613167 342334496 127307871 246870839 829792339 858874275 473822111 569136936 216632104 41299798 706269353 255292716 939659394 444318105 849270568 68416745 874760378 423289369 990414305 674547280 984514245 350077537 593963945 188529883 267182659 79734913 210022369 2279244 554469584 899476110 366626879 801879396 971297287 718935516 721976454 201558412 58510608 362557023 215681471 700635614 243206271 17497174 387430384 490730987 878382852 411402464 824542764 181413551 209270938 412665116 49151771 297128853 285830036 353958477 734208313 644419246 828265905 765783992 156072549 404403105 735541822 916904491 88849435 456954442 738768094 316538944 759604753 119950512 32002156 807623552 867177967 290815576 179216435 288631157 686450022 242754796 531526321 371931631 963604266 208036091 872506475 1001076512 418063818 609668594 520040333 498732584 760963848 37999076 912410358 591582248 40897955 520512037 983969354 489485321 136925856 24210304 468284601 566103425 248120776 308096125 653296004 832746455 502715570 40353053 456418024 203629143 33537927 428123914 149184820 572903636 893162101 788394132 36043809 609241322 157315131 104786273 326434320 450602599 64716651 703850572 916475954 384066480 662673895 810724526 896611360 224626327 632253898 814777522 932717103 938536575 530390160 419507003 930004196 906859338 661398336 226124299 773366596 656698603 2887133 805084194 231042905 620721361 814880655 523717071 129101142 424149483 822748775 460225361 145996032 130769073 235296153 229757557 959443801 771356507 480004647 746570446 5060345 758674071 942544343 224712698 261321214 197719752 644047597 734224430 610750632 149342992 536806001 481929266 535283807 451512929 326644655 131376635 494519510 426853873 956576599 613078029 343926426 723848117 373355548 693388500 844883307 270535409 474330941 501030791 382538870 580586665 177924567 212582965 430965680 280195777 779527483 372232579 548896042 342949680 739067912 69333579 110807208 163804167 881406088 416056929 587757124 915585196 408558567 473523218 432117608 469277975 954788797 973783797 373984487 598254350 187405905 332866441 141105825 24041671 744762028 378826723 205884329 189138095 287214409 985305476 280471291 817603543 639504912 447039543 241468453 237245457 646563398 264719719 167601226 591205200 256140198 442441135 23321068 64591243 549195167 951007044 74451880 903942978 332106476 503207870 679665755 999149557 981175021 44029666 513454902 479395880 431902518 627188245 95176129 141762716 981660024 554739307 982009100 971005133 695879169 428801277 987437454 148807330 785251291 416024051 758345851 432947672 123620558 576998798 739208996 575091226 896894373 662565156 426831337 385676714 854675052 691233439 887244733 662972563 60441066 450419136 499090654 432553793 660794903 989349690 851446782 946211724 577157833 283951673 702057095 535011906 306612375 963617825 533074169 825494256 719805510 481603880 258120136 633488249 89388006 975946385 671609536 28882106 492675850 231426055 229846317 445745208 851221437 977002768 250242964 536990214 905777168 49525674 250163631 438262367 181237540 692084332 548410808 802179594 604113012 74031659 922582955 665303740 706585291 520586420 1000180183 732839942 510661523 632147421 528020578 357083678 6990871 839658607 776382449 834246213 755281333 838400167 989669158 647889610 93475224 230965104 161190453 4473774 454692380 892345930 459904310 798323241 376210184 603497377 729445815 43475084 81310226 994127599 240193945 720015869 996828260 159528730 866395299 906910290 443163951 790725351 416849037 99002923 815782224 490621545 276277123 474512048 574608105 661619525 206127319 903834339 60337532 755202006 330267593 637341299 950178409 181596657 506167369 132417374 443417162 300911530 986919960 117844808 207700578 70288927 364130847 961784364 621287417 293668884 857469937 591216192 71602197 273649528 286102412 516779529 354194996 154100533 463281627 743335818 197437542 191291547 494969867 173987953 35991159 699245394 241410433 16747268 468882741 731240351 836225337 502969220 916840275 382463301 726864119 899356890 485783572 784872929 547582862 532751090 325383204 133884285 723219196 12669031 74290912 801372947 531285870 332260354 242298295 692132437 608840704 127402667 154537879 484827685 354163133 165131935 937548059 130265916 652800241 562743189 863031118 751811653 410076409 433465337 812617810 992582790 785157686 410887504 170575963 923008343 236914874 177138564 111430032 527775397 310525736 421879071 418544104 135571099 846600816 929865179 987100688 558222248 368413249 443916135 403885711 686607972 83401785 264089246 159910479 489891995 180326028 70714765 584077353 778780548 379240886 453828142 217972181 146978267 817122554 997568438 386906392 744213071 121897117 74155802 111558191 702226080 571434287 966739190 702249571 552511340 985777857 5571707 1001679614 835774639 247956270 420945123 771354323 166288147 468717878 732755918 805021367 850234201 501963045 708007753 812062736 212105994 410743816 453986905 345808763 421863925 71688376 271732003 398877453 521202771 258245972 401454441 420834867 40864649 215486235 906016371 233041347 589512968 967409602 837026295 821011406 952080944 227017822 241489116 832263159 33033063 609465210 627291899 953566248 734066207 522370409 359463653 839051871 528582304 175709540 515606487 364978385 251628747 601790940 577597764 269878353 669502402 336276852 411228630 561645524 381661159 204818607 7244473 359732394 798256088 358950665 963813382 577089448 368083865 555944339 125950311 637450270 1001363103 698859329 553567141 185938599 404574000 251969199 513345011 958185317 101866124 727848088 883372656 430559863 136611094 660075213 594767871 918223492 998907404 744910739 555077410 393819719 229269821 540712821 919270466 548707315 405202076 745199645 619852191 866068944 852053374 555360424 983958040 701525437 114605416 980699136 897831676 592843387 147179018 789251494 894503631 977546760 824929638 43789732 109451482 771631576 73958352 329264235 957732900 24212067 932507393 511951742 815826177 612826322 464254047 229540587 400659723 169050812 835748670 424524024 153548328 251398759 775147701 982958645 586082462 294938866 771024962 10449007 958694452 261150087 717037612 964009231 124248940 493846063 82435146 767931862 912315620 269719674 775263332 59515885 968356701 807621916 406460776 901553645 143728898 322674794 973481 500058688 597759760 906596764 933053897 870788286 642700200 493327634 899638185 655339226 602215013 69621719 450026938 624431703 665997291 56900881 977256225 67813938 139007379 359193463 817992669 246988688 668063247 973612660 339093361 965498250 538004386 494386813 96936202 668153479 864643084 943991136 504147579 274909919 976823581 418403838 78599272 728475825 108553635 554694928 300202945 745553860 208361780 103306150 780090345 860439352 209826703 510600689 340318705 87543284 862862842 452559028 729714761 213322095 75851844 15334793 9015024 654496382 161084795 816385821 624813821 882625096 351490616 39122382 770109089 114992427 154060904 222075139 22920626 821790277 131712885 39824750 952651756 462102972 275509893 110738100 849618275 249355954 931938609 31518775 462505908 722464625 514821512 834344477 643087856 601320287 418668090 608501269 909838730 72270933 981670822 95107806 801709372 745061891 199893890 881533161 500918078 905171403 10969056 55154688 822851833 902264881 176172785 625588139 652558767 241293158 13930454 825965895 214737163 155309178 664931332 305558717 682094680 548287777 889375763 13788002 510748603 385049901 34620175 721755550 990455628 642342653 625998784 908931896 250371391 536722670 839039623 110398278 62743997 252093113 317742928 6002138 831074770 679552151 947672863 97377192 31974251 428859051 114539739 69348719 10070890 87130444 50688294 746929992 552056179 786559071 218063762 309866594 994497955 652674006 627095620 262321853 659454133 655221572 129806658 849654852 945019645 941833823 449029181 248586410 471836195 893611209 332162997 215400300 48849852 932107697 503516020 164513892 8895070 374602220 29920543 444173261 854024863 987560461 872486339 479488307 541126958 320601945 675262401 845397449 559504547 26400726 226204285 254254335 168491981 887910273 522414079 235901550 113786673 483605953 824221338 270619314 679720656 637295772 901696808 551499500 438320672 549377413 862346653 978821724 537422530 581601098 47006407 698091011 1904733 516991932 207515114 747323205 785680260 299340666 789330149 942954059 932957419 379531951 47265114 427970485 467905202 167818546 71888052 710640664 704198053 43898820 566698935 369248121 450987763 554260886 12519762 818072696 651991267 886990786 654269877 140207913 105633639 348471907 113479115 118068102 67478191 173038444 905106786 663450621 800052704 23649502 801161509 762200678 554254645 47187506 204342557 947721456 451997920 674673262 103950819 479626948 485073591 216749482 241671625 97334812 210444440 899999339 151083931 887712889 797313252 601467026 583751985 156056785 960969899 361415229 882642726 155956339 881945170 764443093 480045172 889021244 118466697 624911321 753710583 221009810 520010550 67230596 355686001 663239817 442294135 842209236 939819799 2262705 167894926 696802025 805743726 163080142 973430671 320964571 718747029 111704899 932964910 106658950 292389614 659688088 816520210 327787329 3839139 868141478 714797078 129853166 129808423 559546309 722601098 253198309 796336174 649762197 480242575 431750986 817093419 558999964 293099448 632509707 595215317 790758837 2257045 64321130 225092705 511293746 804921067 840695964 71486728 721738281 272166159 950727265 974765340 615814025 558307911 95120304 9533602 827123368 876544467 7322067 568590553 645694011 108043311 260937604 891729119 276400229 734751668 785347977 1070434 853342854 4759141 437316700 198850720 337503374 850189886 265726992 121417387 121572573 450996069 215738570 340702419 389810610 974064668 57380322 311779745 707457440 658526112 558263040 302916593 880018246 47994930 816206257 679856517 863071028 990153972 82241583 705183721 322966895 820339724 675420020 135349198 155837774 987952524 484108706 249118397 1932925 718928884 641713721 880520057 732485651 925946723 587971714 944607965 584639372 985900026 810360520 250116644 753272470 28683896 829823645 882482584 810731761 80073094 855546037 487646581 133276751 426547406 327664294 431084934 806281033 497882879 191588718 557661674 520676946 144029807 634646252 445196136 210987108 917742979 222652420 981897804 28626333 683482580 493264337 714193625 537368552 322150751 498508777 857272406 792430652 192535811 642019064 831143343 728275501 555497874 278410923 655816070 460440655 700919694 952062863 492536126 935419649 920483101 722719209 492725712 540432831 348464189 880604789 670026953 254071970 79889813 70384624 357848854 6551704 866099179 803166906 89849170 249089689 468866985 120351412 167358628 944786115 277432373 608877312 154380756 453304726 681695481 638451636 922293338 57267271 490140759 377095651 533494718 82715868 288691887 57799069 46515649 302213451 839737316 49381816 45623903 334162729 289227455 151282050 361600674 314520691 563077066 436974495 570031305 338740446 452883405 253951672 495105371 130703170 948668666 726020098 951589008 884849005 204315970 611268373 260688157 63656282 852034103 399191309 597886731 843274922 997780053 287430889 280696489 405258346 522396935 500736155 678728932 820275482 704840959 625523679 403388410 242991589 551412204 7044462 268281531 108422553 382423214 863287723 852391780 107393015 832417541 469198635 21705068 351529945 442725343 276522230 219258232 581394026 546550549 878940598 50478678 736234349 345549998 457121599 328066398 360226942 503502486 908131200 621128519 812784708 958692329 720770812 506076372 471451897 293163417 709302882 779411887 761676086 309034228 546540602 685240301 486689627 691460083 825567071 813420035 97713134 576584673 672310136 587711302 803589520 800139215 522600869 876153138 918694387 436814284 157822020 508645162 308838148 954946603 716237642 890044103 642567332 20897585 841623343 953961924 825818138 259812834 345370148 974189241 586261631 790010301 903589938 39831809 750844472 515567129 13235140 240952120 667773801 797673040 252516532 522944382 887428428 313395803 191687008 349701478 210615182 314268825 186789765 625289258 247375143 66950755 133792377 320763670 199742271 374983253 931098037 931143632 896761333 881821939 461006202 325160127 140674560 609378602 512325529 667180614 986435192 431676916 940729472 935687656 354431883 364202145 836763526 469274993 564279619 929924481 292480607 614218036 870463462 133400846 304166768 699445123 603379151 172969579 153126760 581748008 187758668 507597629 455138116 360469280 226375548 236701866 666217079 133325097 192321525 7326679 105799231 420424982 677874993 266808640 539563335 692777810 839030186 153933525 527318865 667928149 639229767 479730646 476881924 986219801 203522423 246091215 208978156 261556311 438795822 791749852 265464141 964359240 680588996 350885359 718346913 592411175 201429166 173302643 320777050 967974637 243092704 64816686 162120985 319397311 587619034 334746362 549075103 718135447 1000781734 74002286 515711491 395302037 711782097 787773240 809944231 416704833 360670176 763297544 566065939 255581577 296920519 98916812 216806855 274940177 237673071 496072278 321228114 632108774 770417241 686814984 658442849 599409261 111788174 41703518 140105895 251669576 243433298 3492563 967748035 830480335 418551045 251137493 627783994 76105200 264735534 433784803 756110198 877064551 347499888 328373967 827091607 634481865 400912307 870420920 287612775 198046585 234326246 554802784 375130129 225232690 654863224 694036287 760285737 211538237 847739393 447575338 67538407 924563764 817270597 404737867 711191525 328744313 276221485 354913827 658645764 580415202 127746342 266161228 677591494 766514961 479518574 319421244 365052862 63526042 154596026 271303512 493392810 731837834 408433728 241827267 655635250 385107788 626914723 534694466 323604899 453330995 948383029 516526924 145712315 392742915 421067542 115949294 273051812 421734961 516660241 355981808 458244304 888813091 34277289 483659592 545942054 8674907 839996484 991607931 608372963 469894818 721743430 842843434 680429037 823837557 542545393 588218851 968226456 173305714 897395659 380996294 41377230 934705374 375198560 572407316 50912459 467206984 619447147 787616959 590941758 328582284 752171560 277217280 135502164 5194716 243601904 762950595 303612769 475421281 842924123 742609441 493041226 55146198 843691930 121515305 519269745 667136157 429872206 890532352 476004149 67767960 724571862 235462068 992252618 25758466 218945318 937148433 367212419 764522393 616811359 940346577 442364662 972158049 464980557 291023895 458287463 968323744 667760446 43038741 961129717 568357099 214504455 822683413 257789831 841056631 993840965 245474937 264844979 882950165 659988115 912160772 657270017 32968078 822473490 819504866 594176431 321773190 834083306 126735193 854362119 979109750 184775160 477785286 73843462 212310012 155449264 805827220 944420801 653361694 184491517 443539308 417813648 270753979 659174005 430865812 477346782 516849640 357715385 621213830 332114066 509794627 310898059 2567504 233659971 344977928 771659431 302291473 382289506 858084780 832531007 830240299 607511904 210416194 242696648 160987915 682205999 450604153 973051751 252816857 49493774 458216381 70306160 966455902 146163251 983213900 759428875 135050577 6537819 448504239 34060761 580541546 980530360 666429043 944195248 9748280 781995284 382485774 267020715 776631905 143457640 750131373 224158834 717968373 471121532 960920864 271158324 683364804 218621117 862962818 81153966 311193119 624345171 324327147 468274383 1001319117 333307111 196270543 371321249 698861335 605206331 637986602 448059981 186529030 977055420 104254990 422482726 419839536 539152498 773505998 167423964 131444847 195249053 22450594 885950026 957637029 108446562 810487904 602675147 448479532 292236408 120236023 675464253 843708110 171800160 879817777 133196272 33067573 426053550 933508208 928077364 390488432 906374548 823882649 199307513 389822521 752164913 405357767 553185750 165721910 305546987 951292493 19092073 812304142 547593135 459765015 13679334 591762425 808079269 996611473 204969261 947554842 471913309 696064428 667507117 657969114 352339687 921218809 47522799 193377977 93466104 902413654 609619620 320716646 218945341 265895464 916662266 273316340 459474518 375066787 217742969 634261966 751005913 646345283 955761413 147036248 970493331 335034286 731992946 484220615 18436256 807669125 331601245 733919631 133251170 268980226 887712162 869915662 225357678 961899940 234725574 895985187 870439286 610848395 984914007 232782827 367277746 624587436 486199288 63666661 721392608 847815755 490031846 793534315 561507720 690491104 86763160 105177940 935490623 611022393 288095902 518639387 897522487 313996612 144274899 944258344 600681989 953434755 829504432 159960441 555425637 228245595 15728227 685183203 857402567 132945278 228120185 616366972 463540890 639794619 162959170 462365368 704930373 129935837 771002467 536296929 986897694 834296325 698732524 158615729 690919155 832671520 465277563 617445906 689950689 423501736 790019978 316054686 45101921 940199700 548254460 508188921 7282776 741038202 921272069 206968771 205583076 541332888 53834959 545311654 926613121 725337714 215078565 411977116 505489276 381691412 347660212 901168744 46232776 435520111 276751229 356159368 704066306 522823682 438123713 587273080 140775066 7336422 370935875 211452880 611063165 688376316 664389699 521550421 547549536 285402347 401039197 498546789 346142222 894063538 543991695 938729666 678224556 403577127 686187895 690395412 762663041 370479827 791891266 803872554 577186859 511623984 994089534 572667550 739998911 542682826 752104694 694699052 943535042 173836493 295131651 493427980 274946405 551403888 553260064 702355597 648377602 840828822 407836997 749843934 314225502 703853779 45568521 663996471 751358640 606087135 575320948 574447842 434554575 404527501 400892306 836111820 114422535 263865328 536785190 698081916 545895468 720708637 38641549 561118132 82982579 172512539 99972337 178063462 721083812 237982323 323088836 829360660 68791789 349966880 737163771 889614812 86520859 649273859 303458994 938782160 300090849 69384130 547291286 99716689 260371634 972396785 361824726 83263849 187001518 994253661 611878557 282506998 1002112840 270338342 285331227 23194703 627056319 494494500 378333486 463147465 965649866 833975351 801185835 452829054 867244860 354571253 1002028349 538182746 477553953 917806202 619003779 522692430 539976434 63197019 191098720 453283196 466184746 256721695 801753426 632514086 531598932 861317916 299599970 660474405 226568973 284750176 829495580 324701348 514935855 593049510 287667354 386424737 664313381 633781113 103874312 487623301 397403510 139677042 801492974 367032790 38825893 162485395 938859858 293514013 40141012 729080384 577560182 493473025 977991950 691177589 505050294 791360134 506904119 449844245 932352133 323205972 189121090 288252536 137029894 506031982 430547068 428335824 616595935 549563068 818388788 532636721 846957341 839572487 505923088 796328214 642330983 560993674 244224841 881590700 119044175 360170527 290772732 545666441 756736795 54666641 977484467 942073939 991969621 107028126 185388046 229069051 314767026 971904855 58550942 483199254 688489940 350314634 539016886 84975442 474295892 4157810 281529035 523170521 484365325 485676269 354208817 213857820 148266385 508479949 416287985 692217173 714225075 490808788 393796109 959809100 211172430 499429350 492425167 12999269 775020643 459156265 711980523 25436757 650091146 885441594 275473422 80411621 244524698 12598635 221085744 233042577 956629470 881174585 382437930 688502238 656089191 333014452 916768675 523376640 324408289 367021380 192324799 985404134 271917588 517836574 621308461 722614294 834016196 291867115 284767567 767672757 498369454 809077134 749503037 358256805 158415082 450755089 100485723 958754508 130589557 843014594 887100992 475585871 553236074 853173830 362485472 632201656 245835266 785734234 538489014 462637995 492261030 471733071 3700547 566557869 717032604 843040929 766796392 63542949 264957978 654392340 286934150 34367510 726240167 840690640 281480074 809587111 258149238 283521318 489755773 884779399 414996706 129619045 140689623 346479122 431935902 282005560 70763786 719199515 890390517 748248649 671152469 837040212 537936835 794553871 219565847 461618385 662476514 133544434 231866497 494532105 781012874 865434441 941151042 912108233 453924827 96750905 247484344 808924157 621734322 192842892 194439298 176736842 616917214 859982366 858614445 66432498 590997503 525175353 111450443 603098151 630246375 847360583 201951362 152957403 798580874 825217463 618359723 132982449 103435418 685726835 185074560 990249189 128519541 963674250 495340596 533876970 662607696 470421284 243929415 780791012 123907759 736166570 969178032 14699854 607659962 830879386 594164543 847145871 201212006 748299576 302490934 739678899 192989947 309419027 227316858 374099981 71906283 97620208 96675118 452018307 391406269 740996921 347823033 411053695 882900374 469585994 470753728 439543821 823527428 695336517 573475770 497859154 167425925 918365481 717864972 154948785 634218738 919053220 965095651 970137344 78468020 181309822 556526908 117300167 305622219 819102590 367330038 515086122 46591552 238630394 402240774 596958634 135539606 162273800 40147380 750619506 418407063 449133342 93920606 500076014 31935919 913978368 139842325 658934673 727891641 48637650 319684439 629223236 877028662 32817326 135035478 968005995 911346497 693561819 878036067 674494902 972642423 993060648 442631522 446488668 304954914 60273033 621040776 678417027 885763851 973637558 335148722 383113762 502485996 297031975 883554084 626058058 71841165 857381329 895416809 929757868 46046141 210638143 573046506 477519352 317143107 372215288 138236605 693681429 89920756 83054848 404145617 343495121 387551300 74693060 435647974 365602495 397505954 991871048 473781056 205465967 69435374 555811502 789515640 614406626 736381158 493329524 492978307 723191506 756125216 260358147 370438160 538165574 712159724 225415947 708372463 65639142 513982632 268099590 439206831 328867705 235978617 232611166 333398510 863341650 894152403 923473380 848079330 205060062 964617629 90448100 454924057 195116472 541070482 766960843 169363967 874993696 826182816 950187492 299488473 514970334 482379125 515255844 431207314 444711598 49961895 232723670 367050506 232281036 530914871 347345413 199144518 287194835 494355464 307818631 310840487 604446076 66066985 45927605 528749130 36697555 540825821 196996877 278769838 828749784 297696491 451885546 529414502 315918641 86811078 337690992 232525311 141912235 582763195 732215735 706372581 518819232 340474879 187599020 140379824 372011910 881357960 566024796 688206226 899966992 243521287 339346983 701757411 345766971 608384195 248906079 158531929 743698382 23749616 986473374 88641382 76687709 249638803 736828812 752941228 957981092 49079438 982648524 612847033 697616164 32500172 455671080 424523698 969652789 722807523 304265702 581085163 320775846 832206974 235705161 598283459 817834655 231244341 194005074 910960997 337665133 575352716 17566458 81741312 201720816 547864152 599797062 952671294 54857739 252418531 666343358 299395786 701569296 717416900 333587641 763789573 307932832 86696678 457532551 10457566 787606384 171892870 865813584 609712103 19097470 555862809 745950656 255531403 260890434 398549708 285770286 216110349 489188863 852311664 968223210 746183935 179548134 1002270275 661255632 20229766 971773861 207924508 685904787 768114334 833600646 501230927 353069144 388688581 80439983 86956828 89685499 417893920 548383632 538805194 596654675 382628529 735236425 886667189 225615377 187543104 40377115 621323801 329090730 327137566 224557194 821399930 969411287 139334795 290581210 485873276 26856728 969474259 617286969 921436614 845145005 139459388 414102812 571573798 867476800 215293042 913635856 772365021 220522233 329703866 725424791 89191720 695285055 234715974 490058710 520304602 940557316 1256134 882377444 259610264 928127214 474368826 371765179 628658347 334047953 677632560 57518017 36222276 944950499 656257144 762647923 61966889 499214373 816174811 781340585 279756034 30590105 425383330 152143728 348412790 994426545 466284018 758830106 28765812 291651366 832847135 385261656 918867628 872120597 174919029 462959737 537792074 254620115 491906839 291381559 154144422 199228827 164261781 131734852 209544092 223263 366425581 896772161 572646123 860898131 330094588 473698858 264646102 563250270 579890115 201945870 224713816 349094879 898089 90350515 129365873 968241834 907388684 26582970 805532582 509224916 614999432 40569503 892174509 85105146 816858350 28881952 115627047 566440105 491769487 507339932 450973029 461085372 115391559 614543225 627430348 53274856 829627968 259798643 53726852 101104250 586518147 947502648 424637135 282005970 594838543 778981204 504310617 506466885 207340894 526874887 321639535 537491677 851197343 427947263 955648119 61246201 169481464 658723606 614712362 438169154 306658116 198217174 158152052 272855634 652179356 203273705 674285623 543651907 904704802 538170148 78875871 8490411 279998062 825719092 235060263 268179022 792883941 268772742 85691251 753416577 11208267 197786546 607567183 402173989 437614816 438338464 343831137 459510685 260244080 925197691 905448287 287421607 489268389 292744731 748313168 592923136 346397223 680188665 958520384 401563387 325237537 835772111 612061138 669906013 637669849 785000022 122083427 151503290 319104270 927003316 680552274 685305903 415748154 538013634 832646642 884329148 460849748 222319077 806277229 139908329 991510421 331669333 449231204 5442518 763673605 27386064 572203071 692742604 480857205 960056645 954287717 485815427 967524694 64132734 755290478 952530691 586824271 922860874 529876663 42502669 712909910 891711739 354998481 160821204 547781486 291437650 100296204 202700429 502704091 463831747 678270664 155677096 911685050 373995191 378954330 703312532 354386586 273352357 673206008 188845497 327662944 131352767 525237974 127823353 798737458 716738433 530153674 584946473 5705619 270680519 950926755 490771273 367017192 669263554 191101225 513643406 692611365 5463639 726811116 413453164 778647001 399866967 214774809 605529705 874987415 444403452 721006205 39540107 147608935 96439899 873736205 734323548 42152684 640088810 39341719 143542619 964530062 133071169 59868254 812200885 868105582 802011513 428810616 402238992 510015039 180229275 114567393 538283243 379171664 622134361 482309242 419092983 143996046 192249947 876481471 966947783 224743007 939270730 9565331 148322513 291137244 301566486 153584787 647767367 122798074 55213738 263015727 482373948 530482782 187531437 870828934 946344606 952503142 732811929 322960360 752092145 748299106 40007651 923802357 239855900 996976263 448213762 815476982 786288755 390883031 303792755 411237392 724035422 931219845 391329216 609354864 126255882 509996406 622315298 354688345 549522099 570821014 441478738 36191772 873587940 332373014 984897245 431849865 528552962 469282434 757569232 986709779 266688415 435341949 807895522 560873668 188217196 559674624 885312186 464358142 140233897 826969967 558269759 316547752 832135021 993160847 760463726 114519023 805555685 24401101 696799167 610647203 402246440 357229249 496493360 684741384 347692572 343374319 471247286 43932162 917453793 594261468 951048926 786470948 560119890 753412596 553204077 747293728 15106015 61886377 132772934 379330815 689854121 179731311 459595632 824646160 570326947 957577487 498084638 327590108 281440978 545748723 68197626 963563983 230033950 477839192 316830968 311083247 687008027 851479109 85227375 291372336 988001822 440342823 61927099 941712271 129963823 87753604 917912540 865378103 68081632 976002756 71184913 490129775 569285342 259157657 348095102 874360753 425975375 212457573 727930997 870202734 289163432 445474014 525258846 287388552 310388018 293915828 92073546 900594154 16267028 346997309 131347354 963249711 650803981 335730786 715331629 80785408 571197865 106160323 190940746 350076734 27011469 904191093 572063819 546979238 81209987 784419234 95890807 990208347 739077486 939042261 874096215 872015867 631871486 835749660 169830336 895815850 237115501 747277057 364270199 543879415 901489217 58204719 468575512 27673342 23525968 681681510 879871700 574610818 764247702 175601021 33366905 93005630 733201649 563193136 841222271 419071596 673744370 100383408 602212885 620520891 377878819 313378247 109048859 778197396 523314605 639398473 554594229 255007233 425018497 432862708 10110129 923215797 659373829 294096442 674732924 24647475 905413544 491047054 332768349 575536463 704554800 389406165 971271709 980701063 911225059 792708869 222777291 893690866 740474733 931888586 590114957 887008408 308963501 467147104 573971926 933709946 787738411 507425197 731532986 83904647 692702805 458408557 124006045 816947454 556848997 205818345 900462005 606161630 153655333 753708535 745878933 183280776 3672439 944793609 916843822 298919589 522808573 427324313 556595118 563211542 784030532 81303508 136800552 369135648 723217823 929657779 696173560 900687403 790969080 374677338 824653925 334204053 651522363 120086667 801653334 70756995 910500163 654490480 991924747 728685467 730263665 248160033 682885840 196264482 969936273 204187200 206878138 191938427 128205296 516062310 182583362 214872410 535698725 597794465 453334888 345589136 19247519 597230999 446841942 372053188 314994266 422017745 626998195 926112544 762706218 483089260 525342329 799286120 305674113 691967425 251464871 110327090 578385517 520151414 75368911 154542250 164439527 861630692 959347079 127932027 664977822 272170527 569846174 833117492 856383675 152041134 430273072 487740753 662079318 881646831 964688883 679143570 992637920 123699589 129293387 878190353 486157091 411804778 42067166 846710654 797804605 317011832 610851532 524813407 66244541 53597475 269779765 299362951 666511509 18822500 835167212 949063106 135538989 940101228 664131058 204445500 976358771 127980468 981796600 984809865 769378428 962009873 17227327 890684619 164008270 303679755 802639694 916230950 133986077 308683940 861836537 274392393 689808660 633354541 671573744 783687223 417075771 787845727 873973249 33830172 680416002 737771440 75737932 134555740 268076710 465152136 842359167 928727821 496982118 830123461 536323530 978058721 782035384 62808431 339750060 605439816 499379697 790082255 49454787 945691173 168422408 216211043 643048567 330106132 81788304 583590108 109323965 697177665 812172298 108061312 603194961 810864176 164212539 312942637 724484891 259817536 564661261 811392616 421878365 169298055 778698158 798864431 215807391 692145212 239756504 569676566 792788523 913522111 439712528 882312300 140556145 844931882 649372103 910333473 324655519 401030354 29399540 779077086 421393249 816378511 669573531 567095737 832928901 799399581 496459421 64666957 191325716 759573886 555584233 899585058 530369660 873716123 30547735 32295469 545579990 241646026 877890288 862397499 311531216 718990014 1704757 671100966 731629069 331231738 665111215 980373392 898277465 72568475 714615117 930959558 905975355 524854834 498626571 655622453 933633300 889091211 930305443 832578683 749441949 864457532 765256658 616905388 239362612 437318508 902789895 169797562 79049600 930982394 342699489 597204524 637168393 841284324 941008853 829987941 418410806 521972341 611027849 648323580 847364497 534311805 695828523 299690151 874961089 266788438 601692268 174723153 501612122 455572101 825766117 858799256 203396542 66554984 591949462 257158963 73173734 773163662 409191913 135483727 968698163 739146225 592577646 731096862 536087440 500718858 706120469 164236946 965397466 597521373 118621189 617282214 991947601 682170792 370903750 430462778 216284173 43074261 282648374 306703525 240411020 746003694 459952603 835041021 244004457 521953347 832637545 360019088 654317849 532264123 534189848 237912263 38043643 978474687 222808851 733103306 701681507 248829631 584575685 844041758 279522220 162627914 340039085 309694155 4296887 741852917 358388740 885136318 219509740 488143773 841596104 897137312 623051332 44174039 898663562 476345878 753059621 832395220 843119066 622817852 256099069 119303101 986242361 42978298 915721931 847018707 861874392 285490704 433516939 766017807 496335070 86364830 1000887100 301111527 375689820 177448746 863905135 574750273 469926818 21024378 598222621 10022938 944907132 13809349 289966037 391008487 582548391 415088485 573853983 533578369 474145244 259318015 345539160 826902116 488918242 677825457 389973680 565950891 867007257 841102306 377748412 321403904 401375 314205721 138990769 416747284 107735309 108595714 101740239 331109520 667247810 778589852 86211820 185207589 232207250 626386782 822930553 704949562 97919810 699379525 981188051 218545109 430221876 384135372 715788442 4642935 763154408 789195488 152105198 662554181 468625498 6702680 745662248 700717193 186678814 934364375 525865304 371695577 23545011 732189940 666148047 454636822 91638838 165317104 709376366 630384363 276008271 960708269 719490189 633256840 609889675 482651108 262462440 344005914 918633217 32929109 886379209 772739973 876088676 853449301 496193751 172427143 165313275 924042348 150218535 542810550 584812159 301757768 613218769 815886404 147175640 56935336 965926503 143989004 138696081 546649282 531353154 355003236 272465480 514198068 914754414 343628963 719069692 526491388 649775302 539718032 495754596 524253969 268160583 188744527 149555969 602288898 268901699 879295018 560004527 355797928 408235262 895336464 372514375 131277358 246635856 426205328 939538240 38623500 940691228 517210821 879020552 980069986 777942455 70332853 898932686 13948352 509027456 977765786 345818379 140461543 32794087 204247318 930201023 288459137 497691969 762544067 762268340 604567865 801875145 231732586 119059984 772794459 610448401 245992082 230787127 908877072 94272997 865970112 204326593 533262537 513735014 791848212 144970942 975092828 101482468 885839997 916794925 409785645 335284346 573929844 799288038 190691445 424796393 236300384 799348141 195230530 910953649 629452363 891303226 549140304 359974704 505923393 217437847 504319370 219845004 414564866 602658570 167204879 22521177 711315483 556706079 841978161 637866334 67952556 750727054 992323967 180159928 814183749 367459585 813102967 321922389 735591327 662445550 321695866 148048787 391837384 13464525 977714627 264238990 997930389 833351280 542688147 185855421 1000229939 166280107 602417388 276629552 168415173 460793075 271289898 518922693 795460808 440363380 278382120 573840463 616851291 4300574 38698189 521303894 910359119 307377953 185626185 674670078 733554852 421138576 17613638 19562203 131982829 311853236 637145326 877679002 86519523 469319489 699724308 349594626 91439876 341131036 800239626 943760092 312004378 575519730 798057410 559939983 990652222 447378538 174682678 810037961 109351524 438486400 689752966 78559959 754531148 642206476 341479275 604803828 705872311 547704428 730236502 120654944 381809189 68366211 341738690 190330225 606389006 705388353 264172152 677919649 964173171 200325354 109551199 248613139 159785827 433360263 302773032 728576716 155540906 893027788 133145872 389707024 730483720 257015744 414991647 161652034 736897446 98427889 669146287 201536314 936268756 502542368 737184840 69065018 685644785 597738104 534948184 655607844 41880224 627442272 852200846 445770607 375479604 848675609 543800061 671894236 363014501 625561889 736947832 684402989 389924886 548896211 697436782 262117287 697090720 538123824 209996100 985645276 785343626 649152796 507830807 75374714 969977320 527876519 331691074 850654666 610694475 529066330 956897547 161680381 993212536 960933840 267497141 775688439 734945240 992198009 841579182 193710674 267578174 565281972 423184584 809259433 1470668 441399087 162240463 937960931 960231803 246364765 509863841 622783094 58618031 342266247 467728975 771539969 644511624 607763933 577222480 390752944 3901115 23689350 175704558 20208706 623198834 67411416 4126084 425526204 116517594 136614835 335707654 271235591 256980147 575587953 493072150 686058916 396665323 480517911 20480996 546100820 227847463 953881795 4614307 83561047 504563415 45996912 942275162 142460381 460321707 830148896 233638545 129877402 157447101 64415561 115661402 868866205 152364808 74066807 942910562 752456825 785196190 363369839 925405416 248651597 514188479 741384363 968332601 277226504 921014113 825066690 732520282 719447441 620904555 98061550 87819947 484235919 522265159 623156160 463379126 112049586 604520779 671932190 525406135 345447872 59967552 496107717 509337520 397021106 95547232 671718534 78528160 836451063 499823154 82718536 918731744 134367023 207280167 971330598 663683925 340046902 203719062 233553961 682625409 988186611 175909835 399096096 162598155 791012984 76992110 237112813 334479311 992554436 923800677 646512165 855715076 330129873 163355448 352801698 428886369 420270837 1518197 105034377 686817042 138910622 546666636 379638048 542461407 318221738 950394902 532865735 836029880 44576307 340199939 899344190 876631279 222076121 691951850 672503606 845052097 694321561 74670778 632550085 378453651 118292952 310261058 587277808 286939113 205138120 286514905 34873365 611629718 564802918 85281764 48457849 568703817 54401730 711359948 422509516 364771541 161886134 178897112 186917880 655895188 50795887 300646163 695101694 161795358 890719366 450280938 42380533 522721936 184438929 742015009 594570567 172981246 66520812 398523465 20562044 531927705 335473271 435514063 998100048 813710588 179013412 613059734 772364212 257081769 956949716 833433929 920907132 539390724 297313494 962389665 506371832 197023704 34990365 458236192 889389704 127669484 864762946 529258548 382756413 804803509 21567584 866421355 46881553 137804402 787523486 169917811 473038675 668255337 234212347 67792148 441416297 518903943 898048505 180760852 696673380 459460741 355645295 816409096 915920382 331526387 918541548 295914365 645713209 256722447 760480653 292986867 591294924 281172617 670176241 680654181 967745103 827183309 877715058 357793831 229825894 488947872 673288061 72185580 359650226 75733888 481633061 841700420 940340347 249672599 105457771 60252375 116560740 700524484 191943917 603150904 584796592 362208132 347051441 857764316 408327091 107058878 832556981 47538672 544496678 825665041 494765672 618114717 433132925 554173676 566158028 512208312 509649927 602277779 514568466 847504302 750499925 314826777 589627075 81624108 997820219 479502765 970993508 553266625 397858622 602015451 683684027 952906193 832378239 110479337 236738231 985012141 325424540 521535211 231535151 80106629 906369649 199210098 159022680 60266668 106365485 902543915 968035795 316862625 250524629 132945817 362982879 884647565 680310676 729248904 940261721 797493210 735437882 111788461 90984867 71239459 764459425 928622455 928228330 775368151 386963751 612101516 652724676 965046539 779823082 875873506 480512913 955235753 610755789 61904427 71007193 689969243 461069176 814092774 551814892 195026654 425498011 321597215 709071823 532883965 447009688 308287834 366495889 134588543 91922983 886435298 127084600 399813915 884065487 844581112 177783137 715044509 268078094 120555441 547876889 972974202 108183362 579566092 256027643 400347843 532096557 632483857 786183744 1001053816 288651777 514770318 935006935 336359672 643759201 57442340 761443906 741705789 695341531 649715334 986536286 756301130 850352738 424879070 377060881 894041139 89117721 791392597 122394195 133858137 260352632 884544673 989095414 172694867 211270545 294651629 571242540 438370624 963430264 187639836 136417365 180374221 787844479 515455679 49975433 468115348 505883564 72777027 14447443 664958660 611682734 811224982 510438997 334995202 54099519 341730195 176694193 296963816 659257973 636498768 561356644 214329394 335019581 977200145 550876493 538316897 381042543 842329074 314224353 193978497 883833244 357585391 481566353 758919578 803297329 624749904 133911036 88133000 319583249 73900749 584199195 389406394 270996518 822896622 81077987 397179438 846633903 685809587 678618374 659204013 9812010 264800107 328864582 131321835 549279675 285945311 668789034 460504705 668898233 317722426 116052771 178569649 228226818 862534948 133413865 652700441 621547820 745178043 215139946 723019617 723788171 208375628 302855720 938772322 199136102 451087301 144463626 612822313 531674867 354428752 780743204 452727365 648060305 223976295 108095697 350799667 775110109 961184727 578322779 993919046 105568257 734123142 148085277 94399560 358032791 733651983 45764036 78307331 701143208 798817134 851327155 484706498 65535784 885989332 861390622 5511502 362669456 496354714 283294140 607905880 643219168 202107774 144442884 133860429 593794903 798165771 174013918 937815948 17718993 547299821 704768096 368261208 673682763 525996040 15527072 943446855 340644070 721925835 341251638 581654224 84949237 961333506 109640630 780495220 792907928 333653142 365199571 775615255 729357317 857252972 510502022 253341340 433206347 215566935 925655345 277357061 251401234 26970611 937221910 841451019 370165262 29129885 435379778 888682299 119380250 187336210 954191910 261247082 659009898 84561087 120133072 60874089 412037390 762295622 783479083 711292508 323049842 115741836 102174321 278424954 647389585 509801405 537473821 459411848 344060571 73802941 507393667 667326994 976571219 687528630 912945646 865289707 956453320 317311041 462790453 889898256 624304029 202759870 324419313 859234005 183628418 9393814 680972143 199821670 957289096 3143545 415166745 570189601 235514099 50218432 634625456 956484146 451442260 402232674 330859873 740012245 335008286 245663172 290089720 222152323 940434224 973312551 624377863 988124461 480407401 54093717 407805755 903174137 355478284 798508545 682144561 368699954 380028771 80745192 100665843 461849768 585810470 889730336 280343286 859657131 172583441 351041374 966511275 785404865 306760410 60875323 470157511 436838582 509247390 248834615 596141883 258422666 200842062 982002807 871896483 211883205 722877747 598790682 784888383 502562570 576223577 947294074 814553269 483792118 632997477 821863530 941482719 338502462 181453260 754189621 916994372 125579554 231659414 708200555 780010980 591686721 104443552 874506220 882085662 54518680 929577098 515356608 108703907 218140086 580682450 418210348 3803167 876648035 559516334 239229508 239278598 665126456 142004903 539513886 67918472 950871919 290767107 556895835 378374796 55109157 942082796 278039170 32044689 668630550 203554370 81098269 770235735 741810678 998309740 21833005 727215138 52514374 568853486 456560513 873853774 461587697 201150578 960699364 566955136 599242501 939925415 538723104 54702072 422049593 29494175 70829314 752554615 776307178 816824374 847794469 9788368 794413516 609214097 743106557 903339258 698040613 944532313 125999792 987401285 153890583 389932866 418277638 13077283 904705847 45047465 218479069 482279616 241904746 608379953 817262203 580032072 174804643 29630461 798242052 707966430 741743117 428421804 407530860 750730532 141887259 400737289 355114589 132707893 315556859 28370268 370552880 573685333 840671934 667646769 146776454 716835331 312354192 315764059 254390901 32962567 469550823 936425175 373749980 337097772 982975168 980437148 773834226 461278932 604687158 416023932 788104095 220426902 616328346 727641057 234097152 463880166 388568338 995737877 144325228 882551734 351180628 64747211 31122521 855615962 390570039 639488353 566749822 897674881 461283863 549235187 988229182 45352608 215465492 923910405 425964587 505198678 52308238 462384439 975999241 926257481 493852767 386090893 755515037 535350813 268654448 317562572 989392328 230825518 190417645 546330409 319965448 515166963 38246817 158358618 367814993 136954284 793337359 255711925 558844440 352499779 647968323 67647264 87983191 203687855 841044182 439034482 60826419 920196577 691422673 527115337 351901951 241183579 658877056 660659474 554424028 912742778 368957858 374750760 276614213 133137798 409397323 253324862 636533992 25344547 339851158 757341265 987807591 402885318 179218140 476838595 543287901 862704506 134672771 778172795 912518741 741693117 374119644 177649412 111873999 32008472 274672410 125942421 970801316 378016129 365443188 528255604 105355090 378951336 560576938 36179848 420026504 238920842 4701498 699467673 844677690 764764864 661744336 868141284 775397063 353064872 514215371 978361643 4377253 752055583 215894929 262484530 751845048 690714575 510612662 7644528 16865644 125700804 897661217 385538538 587339844 795092889 48204025 90172371 471599584 231967680 883114518 789745386 540725368 234511715 777589366 686449980 64730637 419050970 684115596 920954021 611792334 238394070 454078148 20040074 254767249 706630940 94811610 177803990 550423791 887806647 439228771 636942673 543582360 744539304 775233597 556743460 54076359 465995921 584913859 3607936 645717679 419851576 736228533 19373372 563180980 930623426 214241393 791761824 704191875 181326949 573031688 687695475 294077208 756865191 526832711 174444129 446160420 239965274 110935566 785265055 146560603 139112244 780829578 965595093 733150212 6094991 2417588 980481374 529410094 270855163 201836564 890227138 730697180 228574737 731379472 623813813 797050642 624069542 703535470 662201994 335657559 278799921 53173865 106226257 268724929 359630308 380388851 931010936 785940595 631264566 245764899 976021109 910761129 471661199 578048916 177057763 864029094 756548947 550117789 236399838 196264042 412772485 768819186 650248353 30003182 286878945 273884958 734011829 119938321 861791971 892740679 608922765 288627434 480617929 243915313 343476522 232545258 246228492 974298360 964359620 160821399 842546783 46134284 334060360 523921047 134806273 636653792 513144035 253928127 540177194 760169118 512166883 174183751 741392572 315157245 294443834 431957215 721206501 597186092 110235642 553370763 574396284 37152754 37603010 832956092 693432066 650038803 82326531 250635593 191266243 781992603 141705751 194632006 748471840 158030159 79857605 148721503 582646770 851003845 139488649 498058759 393057706 271558780 333671057 184397658 156259163 298241517 737320547 39406688 79012341 157722314 60585708 172924039 312805952 840972835 770669227 208744573 311696922 647563645 414788525 457645306 39298112 291654593 450368601 231974241 889701456 928936329 408096485 725096352 51533174 835583246 177570057 869930400 904482128 169796282 716807997 698817245 164372544 332409985 628672320 267064988 288305867 567656376 554362247 165500173 408458979 545778511 743120581 313829055 130503484 69851180 368473989 477967389 16090886 955028187 808087762 612950327 243500524 101067822 574323906 531388876 303388390 457266457 340694607 890857443 645360889 696715635 997383380 386115444 115093562 360561957 704773683 257882239 649451467 67622000 412534263 7599544 90319516 713731834 906448578 406781858 159194684 184327382 882351202 799449005 784914314 590843028 148802417 474203274 591811656 208696076 644825987 27676069 738019660 623811465 610126625 592229039 993207419 561002673 394494654 23999848 52122259 890283508 554309141 494429644 891661867 214737222 651839436 615991338 992942876 883124634 436772578 352855756 855539600 866325162 347469218 777540934 681862549 461843311 578826963 348248708 557147741 341572655 855525176 327662120 670693566 793320978 95380855 303514450 398658940 446714373 253130265 352376 962711088 654249695 273962299 361429431 810108445 45412624 555823319 607059287 636465535 70857888 967873298 621224206 557848622 971236431 391113645 305922923 532017919 478559560 474328087 387581997 261859803 126926670 225786263 738844177 194488276 851184992 431430063 732617883 762433230 741726566 286132888 515542708 205844677 276993104 349802490 841201001 572875905 596868952 997568132 1000495234 446388608 986202538 716642749 288930769 906073693 166232941 634922319 606905889 592395592 902653044 593428868 596384414 326178758 938565854 716506186 276958227 856652897 128625819 553351460 214715503 264194294 333765193 674102046 540572432 882148746 817712113 517393279 166093675 489829669 221864117 225087145 403523637 487334551 286995635 936819029 214355544 590630463 49056565 873557206 208926898 921272629 670254740 712636107 869726356 494524282 368700409 85603229 406960762 572084477 410015641 681216830 371362670 145420815 186139930 625519384 358934016 768972268 948777759 589640414 388850028 664567230 508518627 513434600 191921636 95692733 577682269 754261096 274282450 846198211 770118931 916576606 271608479 77830652 472905798 216587689 120906185 467129846 307458494 511624438 831216393 537154117 73869326 191906002 978143377 626161378 743520171 695097315 150852189 244025439 590456331 977089528 115637875 32939852 165903722 638510871 54727104 950779494 368733880 372839286 981179406 427459357 442091741 318264239 677784339 308617443 345813916 234834526 347441424 793696824 528285833 907992548 850104690 621624872 385790991 162374510 674758145 302927578 640134837 568277200 598942096 472433373 617859893 630361154 737774602 689700741 848029132 322872425 998527412 988693854 674784421 863496215 675886226 846957541 996501766 561466027 849023259 558101380 762805369 348244175 718172113 449029204 411183775 314188644 676052538 674106611 630049700 616461130 374667875 464923320 529729973 661805560 904790965 245417835 892279398 755729808 888336834 713795020 266341039 713184982 422684066 686036277 429597074 971907865 791547198 416622733 143128532 991009652 751802689 868124039 375109296 591314629 337581884 414647937 262097418 255314490 908773358 79884812 459493992 321240812 375990532 665168953 889771378 710938912 300147763 849946556 698262498 742063167 461039105 610064629 901963558 431864200 897850535 492033365 273899434 949044110 906236536 195522801 141142609 774761020 600966045 35137098 170964205 150686775 390400927 547698595 668959133 943231220 882341927 267222468 800994004 109909378 101325904 744888893 742865090 1000942046 109960467 424658193 645630080 712663401 251269194 383617853 467600711 488184732 436251344 641829828 360051251 416254074 850046229 449566048 484789487 55124808 782464810 5011934 762695365 358203248 297844419 843380766 761877533 763434016 781195422 726979903 471086673 230360766 114773881 584517972 566974940 239994852 686331802 583635976 462355392 532816173 674040807 797579347 640717572 870619132 2458518 748174106 287463113 402749951 830031805 571843163 561171727 937386591 947349075 236202767 372822345 50157893 397060553 598488583 385134007 769676297 799970776 627577158 161363854 44078572 32043807 693363136 693433179 420813000 62653576 303545016 648883338 403771803 264137188 819110787 536101502 950538107 77496189 765903906 973059777 119129781 770246164 705540555 966701526 705772609 808332826 191417359 383614681 291896633 534613857 967070722 163104033 479134070 526281568 367147666 762612858 931515732 249973109 555295885 887332035 114781314 84025682 531717317 243715418 684755229 374304897 127279749 983996040 708852437 739371258 124680548 389069946 307739355 750126589 694904022 599410533 660412067 865891529 111297987 78577358 539136587 188159481 527148710 545810901 633746229 530757409 878019458 57063987 735432999 933943082 623168261 396151151 108761364 487018414 632789307 274176145 751848787 397411743 216162078 702630310 523825451 884723498 515233405 617638461 167931436 704941590 543297153 501393610 683471409 280625797 785435881 17119178 873588471 707931669 294942979 498305975 469810750 497831072 828958297 686360540 894984311 504677557 886655182 343868035 394468860 361986872 472797311 921654775 190297750 693482137 890367181 94189094 396200396 575747325 30233544 460871839 961606909 276378934 284856803 350673735 961590920 316007062 226497063 596224427 316900366 78979101 46691256 283186279 363780390 822398304 248530005 903742545 809716383 183164127 523775489 926283189 428444063 640617018 314487533 57797781 638514729 676820581 161906630 213761011 136405701 849957933 223813937 829981938 180717408 557701779 466835091 392047451 514129721 620279325 29740919 383822607 429621055 912095981 318135611 643888476 445295947 854051816 624814707 335642235 707141331 646686787 43990154 495006300 373464189 461433824 616008361 683205599 552737783 913024737 923985144 604991777 218434015 23667641 899788789 914273671 975309155 300380534 350537514 123053938 37341148 851742768 892595996 186183418 581814010 370289371 189615259 419129621 522881393 232078432 824050129 141140926 38718201 273449799 328055485 134893368 254587631 999738825 511648554 73940286 522726728 502488856 531978683 755223125 908397735 729174244 591464126 420527336 325256862 174327157 862935107 496379360 533209315 554346810 12427752 698064702 589740442 983011298 147902915 85559692 912901045 640138172 445772561 444849649 70823207 457907072 97639820 916753020 478715949 721759921 62405983 875721695 840634977 16563243 389141110 343005150 697863769 215824724 363326044 665213355 525332888 755751328 768098370 992039407 272286145 282309967 4464805 340994828 535615413 375014534 431716754 989982157 65212511 342164 224108762 917245782 651107581 179933261 527669506 1001956260 762512898 562377669 480013265 718924489 248627076 870867762 464199884 488369202 627481972 130643482 674230142 993777376 557520265 691168502 896321380 409716031 75629647 365396507 487861240 64480031 512770926 875357240 55835649 296441438 417646964 489608611 339446386 807166341 838044119 42615776 876352696 35815382 264783187 37595090 6971933 903378412 666155862 347659969 280187838 12882982 777392789 268105071 694032453 698198313 35657435 234446777 79212811 574680715 623384965 290215008 408404603 293760009 670467378 326556281 444680758 945475748 835777698 615212436 117301980 766779099 546832560 79973558 520304353 886748036 882439105 285117033 474043298 301451736 906003486 652436684 322974314 558088244 728618062 286916689 601020178 404578109 645428842 622032473 417417902 868546540 913890955 750433057 650815970 658475730 581505396 645316137 499132497 54397993 834181990 955113861 627327874 908836190 187607453 766330937 266667134 107120466 958569433 639653563 11948164 109989284 506049659 667435834 593473007 227478529 557251573 218771465 868085043 923992398 606262018 325558129 113255583 921701509 230356163 795170339 336994141 769021470 647534351 483242084 638286930 973690748 401530121 613946637 87127821 799635234 984363362 175673652 849594564 102698393 225549096 310448117 302412210 914266967 543486135 158268246 948149909 848606872 913276622 112255673 932419204 963811322 372611051 938777278 91772464 968082252 944242252 864974481 88833795 959114944 655691215 210014247 518439259 473520147 790396196 693894034 251253299 562053752 181856137 872695097 364422745 47314035 120835601 487259698 420170422 444843641 357015421 166172383 371146592 982203403 326290248 755160339 214761840 88068304 477789098 603578157 886338395 914720185 498323576 737740986 147630127 224183687 745104020 611555841 648023286 698156567 783863211 460081124 495735284 619207111 703804410 414577787 649725688 509911595 192741297 848980602 697600392 929030115 208068649 278620132 758740145 744504322 302406026 863234518 581217627 397060289 86445531 52105017 536126813 468125345 293010641 850351381 375848720 922465857 366738535 556329750 372238423 57779571 527464163 110009072 786530340 480943453 845886409 299284052 707714450 919136118 105713119 132310772 772047875 448362778 105802443 263057621 113906953 89487867 101974026 138221648 388180738 68779611 4501824 636978616 872803641 517722556 821567253 824771799 94850488 984256322 10059335 38716185 405967486 839613747 835242201 298615648 987883732 578166585 56956176 339017886 569081724 583977133 253611003 657087911 391542988 662088107 547864942 874536328 3426553 3617701 163666764 240132836 675835098 201186445 855992274 705002399 504892600 777576466 883549675 296120580 25636451 504336704 909916379 967461230 998190764 673438721 272812825 942783023 557833951 975992631 696700979 198497033 296994552 404616904 578783580 166752709 985712423 326923031 987634610 524362511 186530897 220649553 589720224 237991094 307574335 197344782 716611963 624959319 796527561 289764217 21960443 343667941 986208924 625179069 503168953 401258089 1001261641 633714680 44218541 507811698 521473565 191707600 826639381 837554906 695069996 942908990 1001670867 641067742 884152700 1001723913 845670320 145157588 467176923 98598837 707546005 246901868 366038094 526595603 880125454 685572193 391933016 172505891 119629905 550621408 502681582 305955422 390116067 38738137 13240884 108788782 784224413 938879001 408596989 56446235 290506298 984536088 265750190 636859741 422463855 848333501 143750386 65303627 45639669 463001097 571210653 498975038 247805439 923511824 460864795 194314314 887197872 807454205 925868398 891486857 289086318 782420290 579504062 791390157 69874656 708272349 137992047 277924802 830953865 390390713 144162553 165182568 300483848 263834429 375812790 115425359 586166797 498284095 475622883 938381937 866910156 18695649 7290309 395235177 98742350 901258271 197489459 100058751 502108031 117620568 465349551 697725409 1429292 54666229 73753715 537844371 865094791 640993147 699342688 74814947 657784972 571268035 258012150 215334615 740510363 487063091 804145526 212485042 762106838 855129285 441148268 721946161 528203798 361359341 855267764 974152657 650028177 803373241 144670008 528943034 990380227 559528660 562286346 91943490 25521313 603025569 528589580 36882353 107700769 177272101 592765942 771770786 956842944 71199698 47314627 575652616 174535609 306055345 580406170 526571149 553545686 761323790 927647917 350015300 386951025 359985148 109560780 294123896 571940449 334849823 187846698 356922164 668576840 52739528 570968110 613376564 465632683 823079480 77681536 505965092 228984113 256178583 919774730 894126667 78133858 747465979 410155489 71767867 826559348 767893536 559646713 139719607 389372312 561900366 917177588 784186105 77359222 647926907 842489488 787166693 567131118 376541176 431327111 515385437 121263275 147708564 608652719 540995152 803902934 386474498 511788305 301483331 871997087 597776643 751058495 19465967 280926707 119010582 742470874 639562976 188698205 857957083 629326569 499316607 591080860 472408506 215643058 159343540 491976250 137517936 301151463 336672634 608322684 876091206 784917711 634639392 652092718 711161466 751870681 597067574 203787706 580327283 823281432 122912943 787271265 507653044 746593863 88763502 800824824 987271368 937423343 366491009 18489131 784223865 177822600 888212244 508821833 921974376 119156797 416132580 700954685 505262286 86723569 909439119 613495180 182516161 609289243 713069225 89002436 854392097 732466244 555923092 948824973 269685823 581434578 503771677 444573795 56529570 805688931 302921320 283514937 429575591 212011382 262692853 448416070 579298133 578193367 178587374 476558706 848695833 253091062 212709380 962653850 578846734 127660855 449370756 538066131 446742939 668963546 687343347 15098352 521226320 537323505 19089160 455875665 803224223 36052086 173606438 745812131 982929447 908315785 43466981 847445565 221918843 161695039 569596150 183851265 979074195 841571028 177137275 425496289 531725531 1000327158 341705233 249032393 209036292 648231033 791780587 522061177 880104475 731030506 885585812 62286929 786444041 485630394 314812789 885971561 549054335 316785920 993708870 439544981 262719526 304060185 12013988 856111448 446398063 954433005 237319415 43051450 17668985 853174724 441369345 257749651 907060083 238382900 498847350 653703121 904344622 109466759 336007244 890950878 84815240 315597940 352559549 403193305 836986284 398212426 723793042 148937141 742604162 406639325 483702738 493519881 519412627 998469882 633220203 940390155 658995763 692407535 903591446 700003333 760474096 148791163 34748087 517939972 824443564 409921484 480150619 97356899 827956038 180014720 686294754 500412350 863208256 233989522 375849067 155764473 509648632 23801802 385845031 417141926 742101449 578451417 903542569 263758263 185581235 50774242 973284038 866145458 178328539 222907915 721810663 959603750 461801371 465757200 166838302 724524557 469903221 520903107 310104429 982628247 633815263 737006491 520776595 549423122 919536465 914386310 948796034 227075208 754971503 753959123 588740498 674710607 29968223 962032020 372830250 481733766 825900452 519099964 892948874 537202094 524687406 74149472 825113130 900256755 19726308 753703161 111696604 500547164 971470506 712559377 238689624 319927494 310149470 518183219 20247966 792603736 773341329 989053337 578249307 772992646 340779883 836284514 929656370 801422564 290805317 116076138 284497282 164729485 557438464 677822867 674724901 219807360 451927016 975345497 1672866 678719699 161799601 381287725 1000250825 172474854 847616689 400063308 275760077 227381879 741340916 788810191 449772777 60644084 761257178 785674555 985189640 81188882 1000345834 604082205 905011688 432946240 353432887 1001419698 323955713 729664294 237791514 989513774 384343345 140285372 814160378 561672398 467035116 793868029 253784489 873548078 838487659 999196826 551121576 794059233 396244302 170052992 246313010 298918756 471720916 998188603 753070089 464616636 234155856 352767370 893361697 244689327 187140457 505842468 966841779 866174335 812407881 868539538 165996757 241076177 542078260 164298913 417336752 750193847 537881571 698153297 871766053 339661931 692012080 267088561 954285825 211121727 451783065 138563408 478973261 589880867 547596398 915981599 921656411 152588552 301679706 574422305 721320375 447587492 548510673 884130574 726926637 886484250 957407907 549212942 427966200 717376365 177209977 591645524 688757271 900371789 7720341 284329920 718072761 581631707 77470858 120224288 864854090 7153295 160984352 577164957 931935837 457174379 954806602 35973738 185107794 238368772 847055008 475503334 385699532 204790469 99708020 206515827 730342869 48974864 423764594 521927301 678189159 682896926 105326692 427792721 199294613 50920512 778914039 520771105 608660621 316744207 799123924 189835567 906511410 299341015 407852132 392937076 935645987 825837207 80607891 92528852 459248392 504519757 113794064 221579279 985535890 560137412 212457055 446891558 807338153 975619049 821145976 508880086 708978350 519569107 149369689 329553011 554682557 898737837 425072219 24329839 499095798 164965626 921524364 819450183 313936614 828578343 860183184 335673049 208379364 34609310 269732054 544150200 102094467 303547907 365935730 903512365 583387541 174664527 287573792 966888712 183628343 623244 890063199 673469553 555961568 282830696 42647767 3393143 844825387 148081427 41845375 306827577 782160850 107938728 565229499 396601110 727355101 769466910 225023968 189274518 542110789 969590769 219201347 76299895 270065648 590022803 145470530 41957356 673496579 651236023 161273924 215589454 101401074 728697785 827934985 190752577 632278087 258993313 165647392 1000690350 86801590 76961698 460381002 340346303 282342696 574980584 250067219 137336601 518161482 708273824 254175277 958716752 614059142 389957113 130132094 825790449 678066901 406265963 248155488 967192595 173005743 339988894 438561262 660147975 14132018 952285020 415269463 388816295 192425278 783651552 14892663 798519754 628249285 5368981 735201688 587764432 279609887 99716131 90324176 86792561 32703798 100864326 689535245 318856107 509444061 786992662 229442655 812250237 795925697 443836054 216285847 761511976 136007786 212098860 403356828 300303106 82107853 610715199 152132842 919750101 442225587 774847396 103129238 696842875 219994977 434438414 745842471 997645383 902515477 817984701 817052385 872933369 567630602 325474678 559150540 15923290 707828059 310215353 686030902 944600898 803566219 51416645 484940886 514064298 827301580 625646947 374113519 578769670 630482140 206692507 476255268 595697798 437177323 154118120 327779062 866961399 847848943 331789119 692756638 960309576 602628713 52571724 605772554 61749876 598902564 830588804 731459778 59959983 766626493 350206621 82967070 137636497 569993000 507243028 14766518 293871021 795841899 951191230 659307729 2359976 819358191 655939228 964359062 316068335 793591884 331182191 765635446 418584375 345262295 80867345 792090514 128786776 221563756 659429649 212434270 218905707 726308781 481681389 323297867 345025942 240221766 955585431 786680018 254324565 594696334 728786247 787505345 952974485 514026868 170976027 707930798 973775053 962062031 343176316 194370292 904797796 1002000442 844603990 795595896 348758150 153600391 758169767 894068086 210510754 728498085 346589108 6726812 137321223 419449247 167839951 856903515 689851462 14045017 991001387 116425744 239415765 242860198 201190058 76248369 354553404 963212515 964889654 677368390 872452638 689566196 497476202 963165631 184684312 45490068 54853299 615666396 932964593 548045363 623035156 669860157 724441024 290994799 790318583 25363558 143370061 812382305 308934965 396885534 641786231 306777692 304680334 398459748 215638604 728877131 319981899 682235685 13618616 959418907 876071087 928358177 370831079 860304030 437878057 734719659 379541456 612038489 984980552 257674374 420664794 383322043 817784285 918488269 103963905 197048751 960148750 422713175 524993333 108204518 448867418 416246355 225056069 956043952 789316762 365970832 589286976 359383290 454788748 852035143 657287065 625577290 217994369 951216800 834331522 957694641 317028208 758968317 51353517 465076462 43239055 854635389 395829984 684261938 367909187 979930875 67675245 458363880 845567496 161828975 422363987 556645857 516801175 855181850 808209794 65953671 8444247 78584753 882192828 749382149 945023720 577394367 972845645 624794654 904115731 528372921 272420816 629212592 336400348 273584317 954758813 244816243 549442362 635974386 830073667 964950808 920658354 757710640 799452548 569778665 155861255 168630735 244419945 230371967 68561837 230068523 360412161 552086690 266582244 416024897 866019362 495303658 804967865 671168541 757867812 965594255 225902069 886358629 168575588 337773016 869636950 48323838 249819830 495970035 783721321 556366358 143073917 159669379 505425990 192220440 422008173 21437509 773580362 54253156 457741565 561131750 897586913 910479370 719007912 199565217 612435604 516507169 374470261 898913581 952197381 452843088 328421505 618795453 83447914 544925660 392223364 316095138 450648316 677851621 434343961 558490727 416581092 47379860 479071340 276877048 226682668 283833944 161641835 17872230 807369138 914195127 718540964 666606240 217056341 23216553 746729105 524459565 277244342 317340036 310761790 645307872 336806169 724977373 502878698 861748552 852263514 345226926 631592032 485656232 592266628 421442029 603319418 320045006 208900339 453573494 142863075 41937019 672316592 900530626 482530309 480998816 429450648 306157542 312009435 872730135 660623080 326792883 103918488 405813161 214081004 610045237 226353792 13796877 921727688 301583099 204321901 526984696 669380263 805500101 342569791 557347383 816047838 396934739 361445513 354638469 850424811 287937572 816542087 225678716 923824349 934267034 233818935 789352916 885961478 663052984 365865975 616342274 304046815 823279660 322634263 716417694 567996821 740854209 606977056 340006986 588658685 390297570 687041627 453095392 914839323 339950796 107165404 884781789 740253970 670999418 953098765 24643333 706597949 620899855 251615962 109665281 292456881 774925401 754980184 942376133 326610929 163132543 347550418 478279169 723030824 672778491 496516745 944251333 430589111 30466770 561385056 89676125 133170459 869034666 650302196 482115433 194060425 184810136 629269044 658343195 620490629 505266718 133961643 541941815 487255386 773723948 834342809 297460415 184177811 439409601 589432099 607735381 525108792 447013956 8284247 479657807 505303250 114173820 311999282 837479667 867081686 206072177 989400906 840769513 228914442 645956265 446323208 479788165 830616238 719097729 566177451 245740917 257199509 425607752 313657521 631584889 572579548 403125902 166899162 770260747 406316316 862319413 701349330 213783236 791792408 223677766 953836006 28124059 199959686 671290700 926793331 363577869 953297986 601304330 235668249 866735818 60456371 39507866 403315331 186119896 704580009 351621464 558448168 788095761 502105243 119983905 629932813 322865787 255074980 99038261 172516964 902531547 873709994 70729381 648992993 939586493 790963844 544674071 162542591 239835319 666262028 569575953 782530968 515683014 693055645 91295285 544805234 151363058 435012364 725744491 714150928 761399290 733506814 922471795 185423742 698793201 549777898 218675469 497440282 880804573 44595814 407547655 948900393 13722501 928172218 302604239 288427688 959720862 680452755 311934660 420697646 869770031 712475726 795898485 468575723 154601646 826394198 484833990 395537538 63022097 666822909 93372236 995391234 405195443 289134798 855036398 550084607 486991242 442047951 989703296 33887014 438075826 55979115 362000420 927268703 450148228 227176358 581376296 255670862 363447084 606035874 722133734 925409930 164912201 616669862 464188136 216534494 616406470 521823258 620348413 134228503 564594329 508646326 125763885 133460896 44220628 125426782 658781631 306968597 464641738 479921717 269537951 499388751 829991805 541669905 794312953 717092251 744645248 290679269 343457254 899728888 200245297 864984637 904420960 312075474 838306124 695616196 437891425 825228375 424520114 694980321 525680873 974757733 294716623 853206330 819547126 188291107 646250015 190049682 331280177 464265726 900788588 701943335 666579772 679544408 496627738 629329281 763633279 296702925 870945759 94215424 992547735 68101044 754947023 698757253 10532484 604485624 387238878 146811921 368865913 235535355 502330067 747980039 133892169 438449558 51884327 230628952 395191325 357666965 363356136 302394086 522083812 706517857 478980421 608142027 113038334 357550573 633081319 130104897 448772569 121125652 361688956 916752237 515359115 741974707 566386212 164898671 215560249 948168564 681956746 501912876 189618303 806494029 699137872 441295729 14449361 180117570 440844154 864086847 20502163 292339451 879833064 148661139 270492826 521430006 963677568 151985320 461121093 78598658 828486321 180465899 615962979 972806726 711563276 997746451 578360929 471550732 547633728 747177145 365843290 474076295 752383852 574266567 230629616 533469154 490379503 508668920 873537672 659483751 301793033 962030609 90762909 335587349 884449906 186065905 749694002 269083479 114646259 70406393 770030913 379106917 893003556 679389500 404581494 106705562 46465627 999572407 847523319 365773208 256837034 424811555 695991128 215909891 146295773 782738922 63513422 325389555 170612082 218761213 680508111 339427089 764286586 765969614 301697896 772325965 67701019 53918854 786701707 777927053 904674320 1000137262 277985595 420344390 654293505 374197872 580928316 405520539 910007788 230859998 162896338 633660278 139117074 584049995 653639673 894665646 532741057 308510216 482589351 754932073 896915551 238319673 373657089 751452775 482630502 942480441 556567018 979030094 990998810 42796217 495874508 672312316 504349925 595685408 338251230 319661774 389225489 911800590 514956320 976252373 809930696 907026967 798100655 312413637 51004999 692681338 464596005 23375347 783630617 27817812 211894355 265596218 300144758 519095246 484864963 59520370 899507555 16752327 933603490 970207611 447087819 905064538 760187179 798735140 239519069 138976427 409001620 430445332 708890766 488936405 182941672 205203487 798294786 212452284 155253271 946714513 365424739 623215965 780833746 249000061 388082214 385395194 135309287 679195887 545224973 671597761 341194453 438158499 63724889 2062780 446213710 982494945 11145871 570502483 330560353 925067264 50306456 886741592 305154173 967878247 617225289 325801655 805400757 158701884 567272852 467713554 58338082 100832039 328311480 661733642 752529061 441038960 700295725 251139926 715217163 663109798 805994736 12137026 81861326 668949080 246403449 663093697 194722069 945955820 515500092 88917421 818500807 439094379 348434464 286984212 675117846 826528039 360342179 175088032 819720219 541280675 465346698 815706766 753141003 856793587 704527106 825910751 255364913 388661031 851410300 950915723 780978633 138477605 429862366 854439295 800361979 380270325 477380080 271374190 408205254 541593182 297927216 972847876 117645122 39556584 221936156 536052687 400157643 733629319 619339643 62306566 422978663 441747573 819163948 185264919 874943259 80923642 61934241 806873688 109935033 127629612 368370564 984208324 509865970 157665187 557399962 256674175 796314462 119638895 851575791 260460332 495826306 593558412 596309831 745490900 679862646 735411407 389804909 632946978 736671261 452528207 936244344 457303040 158673686 878557531 636961308 140571526 375758501 778424359 335535544 665541303 906292040 700781977 666175335 864839654 1877002 595891532 991204118 886036424 94605207 668050020 977211201 619264509 224441616 309840033 714024530 164620134 73839645 858109723 743377613 386634824 555496109 778876185 882940100 863287792 831665598 553530760 800806485 821713088 179368180 351531344 544554851 463045858 798399936 11184537 692500099 576004335 167291905 973987767 132337272 661334286 477293738 910258851 244141842 824958738 595232712 394708308 461669548 150299289 715538592 200134621 902588947 768136209 792969669 979957690 111180063 563237920 554037189 952823660 502541703 626645290 202507460 625986779 695352510 131319142 448498505 447863162 786698110 541732311 858851397 942139580 573951747 939536396 813261872 20272134 417157988 420619917 348591953 99790418 576016134 711170212 749505145 932057747 610262782 156469204 406391266 499296778 445754110 435983815 409758275 711579510 220479583 368890957 275552312 707052761 944955209 43408012 664619815 600005630 833569852 96546168 691004732 727598760 152323917 425740852 936454062 359037784 906362378 100863386 893649848 139480915 61817610 799108250 559052626 438416864 467786632 627654293 383313807 47522540 407797775 530399156 320635449 186312124 900457451 915253681 764690081 906730262 11835196 283579500 651686848 131312761 668185774 410364840 485793938 86156517 795892867 831189356 743803508 952389612 250618726 955430781 748000217 64602325 259837341 924908410 642281020 300606888 677991678 756849553 200259790 172413918 980735073 367113648 15243011 749298404 853351345 829304304 198694331 738549748 491092083 883519278 86686736 516156313 4618278 476107148 992930774 214722921 586194955 130277768 654928826 156020491 389872716 655779123 389836409 747517050 283293237 807150914 887189917 667206823 204154865 863221723 671413834 908285293 175275042 800967340 493376013 229117570 475658327 86191731 790638257 956487966 185297138 224621052 636987697 235187364 758857766 40225587 508878079 389696676 945097664 239538023 118534243 984078700 975308468 87032443 601101756 655615749 595686879 92135988 503864759 648758142 417540010 283234707 262393111 276439563 191089050 477410362 339869686 494665699 779069175 765065609 148375104 879580242 574397689 755713434 272417352 783762699 459181028 540012259 850275665 719675177 186767406 892266481 172941841 631596969 898353145 722544921 897687625 601882499 143544365 347116845 882337941 715151818 875222368 873185762 605359941 914159768 115078363 707137233 661829722 485917326 654340041 887088651 971852232 114246517 223880721 838740789 26475870 280013631 720275876 159679760 472972756 231733971 403651191 882282492 463472752 721791449 379968266 350375302 675688493 409294334 988746203 445384189 914059468 718549054 212844506 317917914 922679633 823594378 14722442 176734926 768747403 640498817 821682477 13767973 587291215 450286910 533990 708793899 505293411 247413031 593658426 630224908 564541341 679288351 64636097 571774455 884420218 386455360 199563080 511582772 189714537 101862279 199257001 811620119 349443921 517820703 743977301 650986065 231792507 707582125 392750969 257809979 75838922 604321103 368099590 293543523 660207904 150154971 440833922 957358810 359782877 817586851 203751448 616731561 657787286 872732193 686162760 664221285 704071081 710174110 559093188 862729515 834632437 529700545 451407013 786082727 378084234 75980538 494758855 813323507 730428510 963335920 793126054 733691270 987416994 720705257 983843022 831324819 937094270 517472336 556710466 923597865 60545024 154010167 276940975 317657923 134396648 348064952 33807694 940350026 63978254 265994293 716622399 618681246 157043568 641798132 886563572 577711182 334181590 234042878 456283911 137148149 29092364 88602301 218282056 988102532 923897101 711703783 364182612 519498499 62509881 659586510 372771627 858355453 291234935 411069453 862216530 231173973 247008999 366818939 727476309 72039038 260532991 548928468 1162670 467085135 355096228 469334458 786719965 448444219 155031571 559367389 921274325 478590716 161446625 242779815 36444174 692051876 994117226 285139372 880011601 94649013 233605299 404826089 725232052 462990064 436381006 165592100 981176140 983061349 291538273 760572700 525479634 279237951 419681502 32861694 454497137 976431721 328200785 915555662 673883831 934711019 383070483 907615999 320138175 330655142 654800105 102513638 449739079 827454989 192798150 646746227 568282157 879180808 708631488 368438101 443789947 106808964 50759470 513638109 457506439 617100356 856156828 476123025 892994245 986271956 666644838 172351541 402274883 532881693 94216073 660346759 189981148 393172291 824381051 548618590 106037709 151665895 537788043 675767654 158934358 592887272 198408058 62898509 887167297 904380336 424157543 829939858 204299312 910428516 501959526 150770617 418859751 784083541 195706860 305156842 181965318 567651517 7247859 180507026 261758303 501049188 484108522 130685693 981210239 529664340 545006776 916953299 664831984 778910315 498708519 387163085 192673042 525324895 254587871 848374788 695254821 556920560 490913226 32976807 240997147 648497525 613284520 163912308 749272463 436041357 832344071 757596490 411772112 4912883 818813851 512575379 92075203 376746697 490420574 479297685 927138220 867674924 661606327 403362980 125265408 189298311 696666807 259039362 753423586 245403939 287941866 901463951 605549955 376100870 469325798 104311042 849992973 797824671 384361098 942618066 920309355 444920019 363442343 765135702 193317974 1000237044 609784632 295013699 153819497 586146591 170132605 478419024 875879272 177457191 359628043 474493734 372161738 602789417 437028214 259410014 818108479 363089192 448571389 796769132 580129142 925556918 535256252 365901199 187284161 36407705 130659479 757333631 849718743 911017457 702698021 666800774 329338179 248002671 111653042 927802797 880365158 823965691 927641185 679988452 283597092 619379042 698583952 771940531 543502181 369760809 849805506 84196715 86762977 302887151 202197643 50515021 704267887 785211223 210056499 937329554 191670438 306123391 757620211 78618136 153881344 624471985 913615965 242478158 904791297 778268766 660334283 604611325 758887498 58326786 308403102 145222225 521519895 789944388 476223638 280040697 611156452 294332029 14664944 725034061 423943121 661367195 914591309 431519475 60207938 20131058 293482511 77631017 493744246 274770189 751130773 908486194 850348059 427209044 420448220 207233747 151500284 906112058 37354962 64348776 331827657 289740671 890719645 180814191 666483271 218620953 565810934 667497299 763613548 394513479 942538832 758088340 507707265 513356431 201598897 360549675 139155231 74003035 359858853 838276940 847765295 451487539 511921532 845211505 818607778 26228442 320718457 236102526 127307891 152745946 544985336 843602564 986772328 554068931 84980029 619429470 506886612 511603009 916217046 824111240 403089205 610164394 281021979 581793051 306985625 676510641 604271325 857328188 327595300 352196616 351077738 791915790 47582096 501034982 167263977 3314020 626176629 913238490 318534449 278463395 843780794 590677298 730663709 782579130 11964168 648392817 458847573 867741273 996498810 723836133 42962332 96826757 939328212 899069175 774421958 38274422 564541301 280137300 625827562 382759339 758016452 797080852 670709834 465618437 734866226 9187431 172349236 244958153 860322591 756112767 499989100 812536816 557490418 36985653 150712796 794478567 25462679 867775951 21493573 384674395 470211224 697340050 450143888 346010535 723750153 774753758 857309939 249457980 152964170 552161108 172103996 419022438 189081879 445782654 564708779 229309194 878852602 385462117 645897564 169582681 588128567 913636465 104595311 948010476 476187606 222366846 881318831 1991406 989782304 307510262 832459498 962515546 531764497 766655838 447131988 948051444 177251682 580865399 959550068 404937843 499648969 455921920 437708093 693425043 860498391 574399619 286254063 564624562 933608178 564472438 16848585 309640925 60315505 889143478 110319795 639030128 737702933 327068589 681305118 737487857 891310229 822158931 856205194 54509986 66854126 395409240 587897624 109936777 642008485 46258839 673548694 483325414 88345247 442929661 584225432 365471899 668209720 589035513 893109678 767932978 103519017 401489119 549631276 581701028 177187186 53124215 928715790 514188897 183784802 893419418 713742581 599153159 43456959 817004147 595199702 538656617 57763129 737437464 930843827 223893142 846113495 928534886 345752551 177334363 617705655 908900509 895590372 962767013 571006172 840239242 8043353 717419362 132700830 918972913 100724878 726899100 607096107 165998078 797272789 686104071 887106212 524533754 514297424 378752868 742752455 507600498 669267522 560209401 266756946 102473599 1456162 41091644 1000302148 885933959 773359494 625024188 451551559 342484819 112368693 759184370 44718191 50824058 146941282 235858039 363237475 48103645 755362640 838697625 455345332 784751999 681471328 529090827 572793753 302120070 773064593 724851309 757495552 609215620 371107600 759359527 318124942 203996055 160661762 540009549 291157052 216128419 690565193 1665140 577016426 441300532 251167151 797057911 989695209 104469975 186094457 619597158 593777118 633080564 738291406 745281561 319023542 476879394 433966800 489284388 74259924 589374821 136222621 250285883 293501111 471160950 193726825 132275653 551401642 819746647 4814537 174228166 705551023 224386846 131538526 995852478 917637064 381996191 220325483 330792164 66804327 342497283 631568888 603220567 510730614 228891408 906835504 627716404 78796081 864130764 568315788 344120073 791249426 992089686 480961705 978820802 806703548 995217151 861106905 722331070 385769318 349569835 760598080 217960127 767269344 247511753 253140381 584709623 149199265 232620727 10809766 143277361 497598956 692839280 499438556 148163002 964884800 36839036 277201041 637127983 801620482 44985484 25390469 720415086 275759074 286586570 435818051 826231905 129829894 616680517 445000005 454749125 203979993 664504766 70863429 753754598 557657149 313219178 619937741 967785615 234286671 136557494 580287034 490676438 1000960596 297012316 881880445 756569978 467477919 764378239 538652861 636323671 561406322 96841432 968140637 713857529 873077972 470506087 44704762 203877946 282200170 721194257 472786723 20820236 473669292 459405045 334285238 592127603 218860809 346086778 636661706 301449031 175932653 872008889 579306538 211125597 609507061 324081170 498686572 292875780 460772958 605385251 922500399 297438451 906812125 225055807 525946791 515954299 777034204 800697566 580838084 781210406 999857090 115706984 417077565 452862717 218015069 577536892 746583263 995697287 767726821 537128213 956583427 836954075 704384517 427221482 474394310 830536617 206946064 100456600 943972522 54312963 355411546 173606844 421903773 215115500 75022011 614260591 156960831 544576877 800182360 445682506 352391850 339160150 730017819 84998410 808301615 307227453 821224695 840660099 724627626 669910180 266209200 146102089 108314740 257903825 161200344 842540022 346009125 216090432 217748329 548257691 298847206 962293843 832017035 132629936 773082360 343980559 493287159 754712726 757453769 639709842 25198635 708379685 876784184 375912944 375520844 141512749 36425057 168079613 463843190 869499847 893462500 333951652 171641517 182335611 971638893 152080723 311368963 970834360 624883481 565036310 753511866 72519035 906979964 330594542 377662054 409244759 425796148 326151401 704317635 539310635 382245735 873410321 185125845 97150175 973675340 362102730 880268890 426826516 262151826 13177891 447274818 243997998 846790316 663458870 104175806 620152633 607695300 121767980 609010100 990451031 183320055 355153647 148943406 853754831 132052181 404392962 848075476 185611168 969979460 429461454 585570951 117423825 758565081 654686599 708960244 44600951 535236684 64163986 963683522 847122419 880377874 611018831 95265206 812936116 159654646 283304794 642394295 961480960 482585241 783818296 208611461 296718787 422436474 17547635 171406467 359224618 185766803 745377975 567077599 266520682 338836984 580409424 211047613 638745399 389625826 216216223 503021376 621779422 895744463 230501543 238051920 658553170 642724844 195696419 211761710 904573708 512429833 665257935 764948898 347428284 386875191 409789475 301851131 231404169 334456479 568024160 923242769 841738546 867480613 749555663 165076854 719402856 732572303 593846138 939890086 521784807 689912684 166732335 408437640 443816857 410521906 585585675 895742018 132780474 612670544 564821794 788044423 174704563 682900209 597671998 606034658 918415495 65684986 407186884 60098707 582574372 945306723 440574711 113960163 399858527 215077275 632219009 45973357 5695847 978478213 823245963 340392470 330089831 818756837 464350591 715385749 156596141 611634291 729142764 604510920 219933639 237437929 1002059929 906314152 927350952 735486764 534445436 306557616 96878646 821615910 662499457 291061846 300661487 880466037 908399774 744350695 772384086 693516104 469263882 52726079 574841104 394451540 872152552 342522626 704458015 907551395 474624570 662645085 899958460 37244318 313301256 325956853 648919067 377646933 580059855 836806034 480897156 155720538 878033165 723573157 621179884 560918108 769362152 65742804 431321706 159769856 39824130 431754817 280556043 822893297 437155445 230981780 723586551 85946648 823413618 339854352 98325943 379504632 45369151 721495641 497200154 706623037 575627626 957692660 141647704 494454287 238764100 387035328 534896041 143297619 211531627 203580820 955991587 689203263 407941067 42818046 413415386 778719526 665931450 411666617 517271566 451709497 137247176 130366571 687273409 248134839 776118328 766905946 495179297 157952155 465966248 116231247 739915456 505228222 604331155 174992475 132670878 893951592 641597364 949256733 528614730 968569565 735475308 981905731 254878971 976406476 184028768 41873073 923659225 373324575 123842436 934067711 337780381 169005577 986053855 37156838 580076597 860993198 327786731 616940431 688027783 873824581 763758827 767722714 44558165 725364320 590164034 79144118 852337312 388967649 977186414 505665663 117891669 781224901 217296079 517203897 862847391 461500585 10544352 398122074 11818560 115738930 73786085 549251789 267725543 224020909 663336235 365893337 210891257 242841927 413951958 137471684 513144435 442888564 595413810 503075782 712341784 718921164 415488758 439349406 975701935 45639965 998395048 352019020 10669221 655223455 172450483 55488280 635813890 256780155 258727606 852694068 696923259 723215632 453370273 648013381 525458874 791061670 575975463 487015162 833488253 1000671438 857612776 373873514 878019402 35160970 138423353 468142965 128941613 688285250 45965197 549019108 631939456 228285891 624605917 10664179 559173910 724935241 411620785 864858280 818427414 585033454 431845661 956179564 417637766 314642749 894281334 972599211 956323961 505235182 979222343 491583035 786600351 372134045 895695004 673750946 936876061 580964886 727415180 193303570 573964747 849641302 121725702 818243508 459938560 497622413 599419977 231570115 129487074 231644250 71050038 923832942 46722690 827126700 894952264 420125778 307259324 820671181 198862772 450686503 587632770 796422437 539673751 964453857 43466567 570887958 915593454 62106339 506626901 708276071 301045105 709735984 265094988 301142865 832936822 856403935 626062819 353052034 677017860 888677098 938271557 608077136 403524770 948500953 605176861 177912580 660132995 592937490 650566470 583340816 930017441 396675206 360543462 458624297 168967311 768997293 750559443 283801640 941421313 723972102 684569813 32702558 839617554 728417596 844948654 654703194 368214024 798318220 520209578 10218760 758628012 350966923 201130726 539159461 329335310 847367468 115725212 21579824 707872768 281463635 612827881 329231023 442383047 992104821 996267130 978839034 216540618 222239302 251590251 710173756 987130226 173919634 257479928 510288355 602846283 546547154 99686431 759382669 319705488 382925937 896781868 529898916 580459414 34508544 632365061 285701330 915830907 651459700 324418916 998379005 89217325 37981257 882118633 723828185 298970094 3930085 611496158 851422506 451715832 441267460 163395342 338062359 722167254 476037611 840029310 777861736 875037204 928344799 58204043 713478207 396891415 967015726 204453107 431978143 230117017 590117943 14991696 727659341 718940135 199404814 761358278 198918074 763655785 983611913 322242159 285350711 631911726 169662814 22850632 91385112 915434256 359990964 327274313 62472090 367334246 807753826 754797666 958555730 623896868 863693142 720039172 659996770 873242310 600234098 955847337 41046950 865626288 136829284 839475287 427712399 86710249 732638000 984435677 888681487 247403312 295678959 2204211 62601038 158194656 132218039 930349800 15188106 773517473 711837216 464743093 877059472 152704382 171672420 133846287 575676044 497155920 422056584 485810473 906890247 394766990 671169304 290849329 224833447 726564575 979163124 889033387 987565065 388402133 595841366 230470248 635675890 113568414 471792453 26143757 644377570 780877490 866189045 765572418 165445892 712324087 421751907 223718903 616965770 796543526 968871892 991345957 924421130 296564355 865063366 847771559 678462760 245397495 627228413 158993848 626556815 535068140 395993565 168318814 966929788 856841578 688623707 105708214 74739620 493372511 730827959 565980462 38222151 503222688 816248745 428090456 951290754 137021864 253815579 127874842 138735755 343949702 152669759 274601896 127275734 372943539 762448420 669041725 721134038 45132101 292670616 374898048 606941336 268466431 303845351 662243019 904133510 960730122 443741338 111046546 619143128 147147650 4391718 452957605 546585559 11186735 626614760 167485370 601895812 911521131 107773599 7101195 127412552 466994341 194337840 922427741 435907829 20926299 442824488 729560350 72868026 173087070 498753385 883590193 592346121 990552613 807001699 945714778 114805860 330712855 43806678 354944417 169392472 519105773 322079145 746885233 659815741 409107902 194202952 701302416 927831805 616087922 962942819 820776001 916442821 206536005 347674443 51885633 10833592 915495955 1002123730 756753050 746079252 101245653 823435384 979145819 774216498 24102403 864191976 662802894 912639780 58819398 741508027 924424888 204768546 136897495 121631447 514455539 345334614 515781578 243218862 302903272 898292274 75341047 959094130 54077364 921913168 333662748 257128457 304486081 515100793 417551259 716561346 856216750 443722841 472985546 822167685 612565947 919041808 343401750 931504496 181965310 393294022 531535143 996896587 349495621 554658620 171488619 803847950 607581392 138569426 21259526 461761879 415828274 559026007 625691121 435650153 916233261 489299309 49680508 631730176 214846464 447426866 874395490 152581754 289183371 148364149 606222159 147389285 806741231 90429233 621883568 938478801 93416841 763308408 140607996 881435027 781045697 476269309 919124760 867556957 597568905 421889033 843585363 770007221 208175708 695776473 476849090 587779275 91333830 869085889 20178129 862872018 14652432 818169336 565565816 438369250 467354224 26130143 791679418 94262223 562580598 46733494 11847354 777743136 180408396 367029082 186997107 222465418 748734105 390862353 433263031 429096238 242291016 480570178 34187460 234354358 275415033 827646532 500719601 586961192 389001955 325229734 541479364 103136499 22809592 779099582 37510313 764097488 199246721 760926458 293062487 703796070 855083471 867042872 679142774 12025290 450598894 941250692 275817786 321980230 636772271 322748414 221838429 435564678 366012329 610556811 443141500 910551229 550020401 140805851 386404957 1935782 509967862 446033609 269311754 250995280 823559669 158799666 827640387 64330924 644610739 252134987 128941339 620591917 75014266 863553945 990785336 20920910 893162208 64876450 924164391 513316803 300902285 807121900 518121302 874335252 283281625 883835451 862027488 976773232 690032804 25768594 229497494 881544688 366527758 764438518 239810753 361349809 172797810 346384616 494547121 532406975 543958990 732582384 145172891 654062321 923361529 120204707 851313295 39403574 576326820 138504724 355314920 689250780 734202222 29021879 321470752 272057098 721012513 476933054 982746378 718172295 86972772 74168719 406975777 706752392 967436716 863350199 45826919 674809859 995539797 798895226 552513892 142907549 538720265 673121023 605941193 896381648 737637954 208185466 315978513 801702832 65483209 846409741 960293990 766146519 183728740 800120759 325486443 442616393 352065759 752715883 359206288 169165536 310750863 790633838 676198749 728013544 8717182 850337111 857204512 605720094 183562011 219233749 896043981 237283850 242158344 276094018 892446392 759798906 512667282 670269355 43816504 581365117 777566520 552685481 903651252 494664143 968300690 556835288 901438944 293874468 227358828 723292894 161344021 28588420 760548186 209370403 316473374 679296968 239902125 445190296 518106163 729546757 87159205 835652386 325145853 825192593 642697624 343979026 963061009 575708995 37253470 42031280 716758865 808233165 739687858 850721963 699506465 347306868 744293447 477758508 854774213 570791771 535758769 90051905 456245701 396578871 997251535 555158969 737912982 422728129 840682283 210563074 671530820 322669726 545875422 540492272 190514705 31587754 425816834 874612849 845856860 182883928 994801851 495906243 101067898 223083240 514815861 428519492 839911300 894228423 819189860 403950114 575014026 997977439 970635795 722323684 172251071 678692519 68447052 608717001 263224568 823519462 227728193 685181841 300050543 846443565 476049323 98593417 857275878 741476290 838127594 725650451 964067553 315005340 559753933 934183019 126641378 263289149 762895416 828239810 593113832 417432682 907602766 514680921 782721672 79933015 394437718 373144537 1000464185 148064218 735988430 340916823 920932195 740068960 296231342 763012656 943850692 219846713 774564369 590378807 477819045 638406778 966360645 981375589 664722986 826543836 148749934 12099057 337096227 145488360 137486732 789590057 706998359 152596423 402641543 757746676 808590472 718530630 897598302 573955904 177383272 779949985 225626902 906679079 301161299 775254195 258687652 521478299 576317847 203593449 847392701 490742108 664750845 563006367 547786736 376826531 605035923 408748100 176752857 278614868 276841598 182172776 430255188 446396844 497099062 476040648 951981161 165487383 939448084 259769724 875059797 568687965 542265130 849456215 826591117 160976435 984726851 158158215 878700378 4122302 871164556 594904988 109146937 253618026 545890202 725380068 866340371 690057227 291216753 448777452 882770062 915381800 305557092 70947763 521235881 990701828 647799574 964675702 141472976 744741974 734533471 298988278 245768450 283167443 470335616 744780084 873055199 745590506 547258114 946257602 218121735 909161050 869211134 330782021 141685567 156764277 274259018 850772940 685879160 780206908 920197124 497979451 779999857 926318462 287316633 705307365 184118276 938756646 317444935 921726856 834894571 361504567 204313944 776968777 77185440 198427215 770648224 3328416 376884929 869834338 93933987 497941978 619281450 996964036 387559927 953581990 752326091 626620184 123317869 177257755 764472375 12566355 580161991 428388760 483862429 854555295 44735742 491919504 677837626 983183519 984980837 665729344 255243513 282647436 685125871 976985460 834220393 696881919 385133869 250350386 387356719 641577949 992801430 884327110 858695291 631970116 134201260 964141952 878418311 950654923 686662489 630771896 368171181 384544644 505221363 164619543 338924111 898895702 765900666 19206623 745287687 541573861 903826553 286273186 232290878 131564831 516547040 526068150 865361351 750187393 266099475 802506077 91051056 394381244 640209030 842411600 124716752 589870593 236555486 401034264 577827227 634559733 841950210 398114998 311900092 501563886 192569533 993923866 206452483 800040628 245235725 626404489 35965747 63295711 539082321 395418413 967993195 217138070 964037569 336942660 392373167 916867712 333773545 14414218 873718997 554575788 816421609 37143436 779167560 479402864 355656143 172270356 573025800 11534653 965109242 852058222 469790467 664272713 316179341 346646576 165309223 557377307 274235693 618698507 250399379 952604628 935544710 835741520 171191332 584380262 373880054 33839524 771770351 383384437 330015060 802258302 413485475 932312448 4752202 258108167 807983269 734674710 743788924 650569539 235885006 493273717 938293218 219379111 678275491 268817245 157800315 81731805 257544300 520498659 938951103 52054753 540483841 716563123 116560274 848595366 219241023 293294542 623935382 107550724 228461315 689008436 48198163 629280035 747919945 446446637 232505073 14181703 590342960 278693571 956794154 145938391 210667611 201376313 470760116 288601243 448695436 229359769 853801143 594285466 867805454 509111184 496766246 255491301 820009745 155589786 457606588 382621988 641705620 370582973 134673918 864831552 204200613 349242743 121795178 66078185 215338237 133787989 610284855 601305244 695642454 241755883 156510400 95179274 361845441 468409162 366090206 579676503 287700277 423918867 865384101 485134558 594250527 326854744 54224887 408951541 637390142 345581043 945828346 742797013 452640814 955075574 47819242 696276576 90308596 339371487 979788327 708780668 588333408 887751499 606044752 637623356 956984932 166095931 601052034 440368557 514941377 312100588 101777416 610703499 618346059 263335517 171939891 550845520 716260396 454055784 430777313 459241954 635801414 771905527 94415281 302052185 64241186 198042514 92492894 198546573 489250588 958005158 269268924 218868599 423229692 637371721 970726065 421099365 748090517 15023057 476930266 326787229 888466017 276217567 959666243 448654898 914588702 639357567 948356834 182032585 166692231 550489049 970126205 753999821 588554207 306235648 198421206 376096098 220480756 96475403 309404507 437644871 312459198 542710339 656035350 529361292 158635723 367561810 297920074 868721262 114503314 615584089 334907689 1001197817 779855815 79994758 566514054 199156511 9012461 873231522 643378995 269982224 210601465 241154880 346832354 15670004 234806219 416314059 623311212 899864590 401469408 981970135 813218315 946723248 980212572 621769102 754030323 250359055 692224781 346088460 279439871 919155923 281488697 530929049 966499582 984793165 960721082 789379461 682971106 112081241 441455040 771377658 492699372 983720100 945374400 470335900 549425530 350538760 650151041 846810174 142712155 360338958 301383425 457895771 683717037 895658951 500256209 725226882 238113381 17259597 824806645 555778431 634055697 821951967 43081816 332514965 658338866 233805063 45568437 278689431 62053390 297342940 798430473 803708196 355190536 596380429 940465726 925075305 37571655 90241068 660628203 566954873 329762189 761667855 273980157 885738166 677177312 77441750 128256712 877063786 924503961 265054145 979610002 705928812 177056887 444130208 60296072 272037779 647119261 57986992 858519429 127441290 103771312 47860459 873719648 334875023 535352124 898709515 976428362 343536151 794225241 600387794 488419453 931721932 246361104 942188616 891269799 594652088 179119205 352113038 85702336 786963827 906921462 404703945 926587809 429488710 893646697 352469358 487965355 945643822 968901267 906103681 493306995 386676290 508225848 809777718 464620431 465574989 617020709 730380838 734114964 334822339 949135225 495824745 331614391 914423691 494298770 229550045 955969831 937057586 375768388 441228240 817084129 834664139 715883076 106912119 500694062 288344509 137805033 275157120 354040772 128220083 356445494 951432184 308940404 630572098 367984467 629402270 427985313 733810904 933984446 202947258 344131151 639447496 52574647 62625961 328113675 62272160 338691794 309629042 593701574 768805471 856146959 632658779 415415081 874208111 861985642 77357432 909172333 617495802 923799534 990642009 561940471 193831405 552674353 20903348 520120351 976811072 10835370 410465224 450693025 973811547 106066302 714597393 572412635 740968975 883661985 694435158 613146882 936816797 753860829 194307412 131647727 191152913 154231061 655615126 562720209 783669687 966670765 300210303 724338431 666480765 458140027 689712666 208602164 147442958 966728996 999348203 608111337 536544090 218590560 510455873 384048146 192683652 924869922 810846993 63651452 169542416 557987848 835279807 223652759 931737967 251342237 462599511 279764491 554984412 722788127 631820533 276280013 607962249 89899229 526962212 314869400 977787989 412049275 362316986 822216370 18067660 861430778 608699740 935909111 838995063 575411754 966487719 162900288 674337773 112587531 693421039 747466833 404286225 300294155 518561094 134434445 698918940 933262463 623995923 22183046 411403348 895218419 536384558 356014383 750579199 844420282 288531891 980646705 869268570 128469404 147529950 551732928 626340394 97890260 717970212 961399271 771164507 133667316 178004355 47534344 690015911 197389409 624578707 894352374 457747290 943204482 859288794 1000091483 484777269 233664701 418803932 482746939 783568572 721932368 962061324 373662235 16592181 744855667 781737812 263463319 210370438 52199003 456494143 989443572 707504642 480481495 75584156 973838757 477789690 752924829 677306244 693529050 320439312 936338333 910418788 275607286 980448425 640654028 568624982 398379961 140892044 45957806 761842969 23642538 708972056 943439036 915515338 332440813 984932494 244275946 961551993 872509589 521162169 983470031 711960619 191999316 931326686 454717953 50746131 856535131 195945613 879181596 680500617 80460435 525584620 100156334 207880490 870610744 672107031 427692530 267220367 298960747 967714441 975313202 13649200 633501040 520616448 293890082 917084274 615363308 415516650 970647683 98916667 271330313 595357079 646546162 251133841 328400543 26171335 425869600 108556885 834788287 895384557 173588724 985590755 954251719 128761156 155593588 1000146254 868433078 941646058 734021099 101434049 458303574 550446577 362682480 270610408 675552745 774486822 832630887 401900211 970668907 636726053 140749351 820188284 159660139 667334020 576111394 693263920 787898330 800495984 847412513 629192153 706542329 33269841 463258338 462465745 371642155 232904340 311165816 572013062 612136018 73325775 896097591 302141224 559626132 877522594 211128029 563843502 492724034 302065448 839491278 879486081 950666882 842341572 173609006 946191336 783618206 734394530 217920488 67713824 654183658 362133429 605298012 729417256 854767017 860462426 91563194 679733020 286360825 424286422 283834400 436816144 272334726 997715115 25968246 407509624 828926102 809787990 20623331 758709570 388373305 174317016 578802646 65751783 186127442 394102500 970650578 262221089 227081386 217152243 922559317 941733211 110344157 32835462 94745904 740529622 578046174 713134037 128599086 741665893 342296282 909379548 39446107 623647099 497330192 649161739 678476038 183514053 345613285 3829205 446040620 208632029 767572283 744484155 234784401 973533610 429427847 881745023 472149375 712617995 260561513 755568160 742311979 287135022 34225500 355075768 150335471 386733138 552165677 225679629 375801706 317931676 28645658 9418506 532950040 833451127 919928434 465653816 520688067 625572472 192036898 573467659 212476442 28484034 301497744 352327817 715215319 479707537 248778433 691028306 84984930 65578455 774313655 892384764 35755091 714889810 731189143 72948172 344231770 181668814 572938513 19225999 30859560 741654712 648373757 465958566 437619764 164793250 463714622 505778942 76861060 81534980 125556263 445735673 102321375 79381963 696240408 139035443 803085568 413665578 656645134 566250601 649240619 704662182 227023493 836416898 656967591 620861085 763893246 167995647 254425472 252389289 36212830 770306389 562824747 821180089 359954519 545892323 483102441 602129818 532024853 937375316 729766192 722369669 76942005 776759496 109064751 948309494 526582594 156223033 443630428 343537190 434021582 604083536 252025805 698837676 299520864 968947641 708667775 44110432 235096923 444466380 723323741 780642822 414706566 991564597 441412317 869619065 762260614 187610374 110945793 535879137 412982785 528070443 257205938 863730807 624013675 365480156 925166766 909027731 284695798 240302963 942175809 924256921 870481225 943731615 74158091 134288129 793604015 672127930 284112348 369569979 879929373 67708194 938661258 1001917592 864845277 562324522 25096893 221754199 518395085 925167162 876952085 449430174 138549834 547591934 247766145 293190672 412098402 341982370 462357917 246075715 6994495 251882309 33804313 329110644 3685572 705087496 120801541 176417694 195192329 862201579 203100791 588533786 416664555 152461548 911001047 719988667 245255942 830183720 637089676 883129086 44530938 206555279 496209573 786259208 98019230 413054587 107285125 351223053 185302767 801093661 591319158 198000455 98992655 376876288 1000820150 162904133 580263711 446430070 805418291 167961625 996853933 225491821 450301293 733850213 820501636 845711009 895501887 418326895 754939127 872108665 348044243 717428985 691209424 323408164 543398286 889619053 618626397 467305447 606013005 770296357 551586706 428319501 665148362 941723099 433928413 825500706 878058592 368343991 326758259 425076137 397067972 821653549 296897343 440177152 281038474 879131811 419136714 654875176 406705867 110321665 242625428 767248474 488331482 194708615 911967496 210852769 894065496 208959609 698982384 289249803 576185633 129356719 740885833 113397443 1002057458 236335183 874958677 575337631 37378768 770374750 806182312 519787344 626383855 343201062 43263789 550616902 718371080 252310126 141123225 376032565 900459100 892321979 353156426 466360851 312583405 454701372 262655695 405515911 475715290 81310494 298103462 85924013 841778986 92384781 79740511 833513501 109125657 188998034 374192575 529861807 99359046 297932566 92779399 438982733 320892433 235108797 327280539 436518095 191092611 253257354 258684421 651064279 997271540 860375948 970391582 927412083 656331901 370541826 999019128 610973440 816843862 869085164 937021567 294894183 613616811 398425809 326377457 36016916 417024418 286332997 524345421 389859767 333745106 651939072 729165686 917678910 950584376 348305149 480943369 11203008 247716835 969370351 679116155 968727763 435633502 951657413 861659301 834081369 734177156 148005762 704037184 294750147 57101295 962049354 95566565 30759104 466520830 128914485 206971136 196332653 153476211 278539633 339468755 577463861 81949463 516585402 610378649 154368250 405983233 265224011 312241899 452022894 583300849 885456108 179134307 172591857 54064963 27265433 440950505 295649712 147413019 731892427 413343567 320822707 715426362 705659016 699772251 567752363 37083520 44642101 326718939 900402305 300049781 578649613 34462062 141680083 587684164 377501173 766509798 862090683 761157081 338256040 304128029 160240231 152995109 29402892 878773528 787710352 594014612 498463436 466268715 246708764 921220442 177145786 239806735 131573762 770749453 232220748 97914475 683973695 695409832 551583726 595064267 123077046 780213036 400023129 763471388 657717496 996284283 512055024 168338739 121012859 490309783 10261240 530478660 246799881 4937408 702849636 944557435 806776718 738041496 260520030 204149882 218218542 563011101 245632842 364676056 272313028 270331531 298201385 900984532 764154677 974787382 616388894 865975436 613803323 413128085 770665996 194292194 474954906 719428691 924363509 700954071 718354119 426043501 955812704 196395411 985320084 663991098 731578144 516736900 475783210 649712358 487542666 391919506 426505302 98266457 122568851 269206281 321376721 242681641 10116853 457653453 698822038 167264176 36336151 233568695 240464970 49771163 695764408 766354018 762628263 29393114 12128488 836529835 557175458 895286632 640102776 489862848 742175580 157746182 185853707 776149568 786853915 483108860 738500141 790661447 887010060 253127504 788135724 859163209 713487304 787095995 534574337 420949592 479152125 109426896 366630321 998863463 68344700 842470453 39692752 786247686 355786231 749510814 913455036 952414342 14068591 607872609 722304796 838102707 364779156 600796614 396154087 388329503 601676647 107733592 41232895 308965976 662971160 268684624 199456853 537439951 84502119 688097938 859960264 688030480 597947889 252194179 749449384 69432920 843729300 68406868 914750832 213622437 893293512 520344747 73852319 117852707 275464933 666600154 826432787 409869649 890284005 214082362 519887442 706449311 452942961 693614257 82026765 981956246 579604117 960666280 405341992 817882791 490891370 312328754 130680747 660692332 122566903 700188124 534894518 878213570 117501001 183041221 331658622 575991899 634177457 22329981 340940125 17948259 625898095 463152066 410293558 350266574 552793003 307381526 480007074 797438245 985048326 322196215 737073837 919256799 910185468 43246575 221477694 917670238 295213 392067119 59707718 64413756 302385828 739785839 796549178 242955516 8727357 857576842 291984950 293317261 73022954 778722201 992997362 988527847 9212462 550913311 364575159 238216181 393425343 323341144 747344561 228960934 673061788 967151095 526001270 420416354 772984294 98431343 691301179 976508873 630905970 468873189 162199442 432912160 73164700 618563528 219374920 936905845 434476375 28750481 751831300 416622878 173808684 102425409 687259219 782607984 301695016 569654927 758930785 280098342 364276969 359734069 227579812 469620408 470162542 323271247 403024893 821054019 656391797 417012358 777550988 784582260 315616394 218044124 491618993 686242487 286625939 686338585 833208793 441383434 229922976 253694290 692928860 370494521 665729289 199540108 381029485 572342504 698118601 735031839 243288431 244109866 274496081 879813123 925230726 226443951 211868595 451170636 545781753 170569251 922258987 68801510 752417883 881024368 182495851 418716493 27893799 549740228 468026681 901205369 936535505 963147252 803262752 406026866 735023381 575252381 780890237 597440559 234965700 466860196 718549898 702054576 107441280 426249268 212323708 517000812 870526802 887737734 516209742 733431448 865854941 612784109 469357638 438379465 579743522 860231680 586640141 167275043 549155488 288076668 98828597 899094111 401631764 260548577 763114562 249458739 926008739 613768845 876881759 895371841 571922079 13822932 884787049 415934262 234124389 646068848 796729368 735542011 672946570 376907052 878242678 592214419 405377979 407305443 58676225 224185826 13091277 520892360 589476141 400752084 869237469 380419267 854314534 835051320 326290425 889911387 866893044 131190773 457393191 390568008 823253895 108957015 872651637 909660224 523085146 558774854 427061304 214787891 241921065 42535936 352069935 718578205 125281692 684687184 117365996 588913313 41997330 304141093 669073592 965218978 271032886 548546009 62513707 533127472 255180919 100953582 149772353 976512331 556208950 509899535 705030499 221743695 887663774 195788119 286531073 581297031 531303972 129226608 522181909 569875346 936889161 763500490 457440524 267102423 90651941 245763299 765974451 964459168 220261254 809917511 468557429 733387094 38420989 719593048 815231290 246694772 293558043 270457107 819294791 826121202 740576624 227387037 793076410 187182187 799682435 698037874 422609484 115970501 969093123 971196990 559949290 789721348 208557398 340513216 803102898 634796498 87809693 624622876 907978115 407340670 647773282 522923638 81334910 512836429 683410652 713811317 32936631 614436444 209323189 912296851 171133009 386886088 950314888 118763323 618897274 105986090 476885179 205915789 748376359 211078966 50402108 789696270 168057158 174423566 284846148 39954081 439058527 48844549 557517272 593505216 837302430 916558942 516532204 8589232 651009206 982155968 720775014 697041933 420391514 350783283 131122710 753643327 946863341 342934324 128268479 941107984 836404448 260035035 719059008 744027641 983176261 229336042 664336997 29387685 494218911 801962470 422496201 413422180 40058392 317007967 623760031 824356077 388817235 362929456 865275194 484011691 795838930 604090235 628006843 216125047 60917248 671501017 872453598 2574474 453845421 3504126 176268355 485065780 821143075 810997613 624171996 11906104 455335210 538134081 827391579 991386344 642899527 77021767 401372560 573347807 127134105 597378467 420932474 200404084 658430307 161300540 559941778 660728809 941728030 788242557 795665608 214566655 534246225 451000063 900808357 187789485 486823565 65894175 124460063 599653563 377001151 82595495 133461068 422110377 528101814 80562055 612785286 940816495 823501833 342341999 334157891 894190934 883267085 456052014 170841325 402043063 511451000 489353909 177017466 230047536 656785748 820477799 417468476 322871148 168588733 470134863 160641473 350857089 840511520 357216340 338282457 91621690 123031226 233540345 63259982 166603035 488911647 968795111 706885757 330831745 920135618 805610376 302495857 676802500 795942569 579520935 142156928 702285398 494560589 514201014 356253153 112931958 77647380 681490083 452371884 564137600 585093050 282677111 261780925 621339339 625608102 866998487 650227237 410754443 754817653 787672215 444720814 676376186 674318800 578974242 55450613 276869169 932799411 404283551 708368603 405230271 409244817 885176879 564194559 335551498 42561150 701341499 117401742 604435942 192219901 411335298 141469191 629648405 685434938 371378049 567073167 394644438 682660297 408777480 362439974 438066098 781141677 169502189 928689246 961562826 92333668 889785439 833938193 349661565 233539368 908075319 263135510 79988009 123673317 753528989 26005213 436475558 164431542 531819666 920201130 704472751 177039965 479521250 710566880 858369079 813807769 98773885 587442057 145372351 121287218 552405705 685900468 613154253 59925969 66356876 907961679 315460621 555846088 751710102 844849777 54968488 387719080 255609122 974841777 21475333 424196682 160986291 14308193 807021184 642475536 14647711 478425656 641468213 164775457 43955681 20210981 252080539 631605314 40282136 339533979 598274852 938702376 226398872 707246039 440761578 494878461 685297832 631414170 22443392 275991309 34572357 36268520 508864408 64703340 828508230 120472118 498797850 438603106 561337664 551707741 248570917 635762660 434451000 900962204 390584813 2097872 990099979 316465812 775573599 621510372 574956378 221219020 916880697 277388999 143765215 556230540 99438671 7738928 578175796 877924760 858700612 577647761 51397309 84555838 853156500 460491885 797954779 710041608 150818154 1000222777 646743477 979658231 602725403 72726911 983325322 800430978 615277655 177465713 666950104 628787427 980678276 537683315 325999872 816836920 919988104 197546015 852638576 260682030 729391347 330433207 908681706 33575405 190374046 239794501 392390804 502756989 817114280 633776008 503106075 388489648 348753338 244279011 561973000 716287422 86224223 160399079 537027358 347648576 217161269 18623939 749020837 485446890 509685170 135298783 663565387 93839035 74379454 948244561 248053336 90078883 741665556 601850598 830131881 486565982 532027068 734672711 155497247 271967411 486032169 125075426 885557392 725857204 39325923 773619416 352613012 364946034 345479696 397926449 928110848 162383278 179558496 22680117 588591943 437274044 734381742 756300422 12414304 75246423 562696744 626651407 92545563 651129270 361492415 118292291 222778299 75720762 337738000 658448981 959554241 203478399 430935676 4818702 16852781 987679405 762803917 518208224 190441300 843771864 646083917 730470310 382725829 480783569 469737708 859992220 192313892 179776654 275171043 921824997 383582498 881619422 958510960 715380483 701884062 492233787 159394717 900679440 303075809 906010681 631664844 156929107 714240811 997924597 4538603 925172790 207421355 52794775 269661804 156223898 69907959 420123287 423168042 476533779 230163562 903713993 169304166 608571986 756038863 898157874 890394297 826133395 735724595 936764229 284679741 167994283 610211952 28443750 704157408 400873255 484055493 674458593 926957780 210141415 708355759 426327292 755461389 739661410 390723494 258999920 922375285 325433418 328700444 887740316 592226956 726401557 450567199 330244584 186262616 59277273 58085798 237945436 8862520 552408006 714928478 776342146 871799673 406045344 65102783 373014062 482696322 669331546 82583331 742040457 214635850 286727550 321408755 221354337 567671752 254522764 781448344 630672558 3929572 274774805 718196170 425516942 449865009 425938274 872871956 728978428 241296454 435322698 238407007 607280671 437800710 332657937 591944173 731292079 115783670 499232851 30788643 10279498 909645826 286586660 189132679 272048415 983045237 211207394 83346747 277905741 441241480 779151488 597109686 353874640 568944790 750720822 364491694 938869930 767492366 945856019 506686784 841204927 227041425 794103445 413957892 322830891 68804993 719991002 64970125 436571247 619633415 658809771 361401083 338011780 855736752 938107547 573532161 526738411 410976453 63160355 992897448 228132872 1001533115 33161758 948457875 823155533 543207199 821117364 830536733 395206505 439731567 704858937 841769968 273436318 39459297 375723618 736536490 314101099 436485310 585044386 340894204 410529429 534554476 393046900 121225459 907031098 812748793 689893069 4945143 275851366 272241584 864390451 535618453 98341961 829481711 519348367 684064678 394402475 648480651 298083263 368567368 471681054 784928170 659043701 687088206 22784556 346442159 41556965 529924298 768288144 835124924 482706430 169852716 551590821 399667299 100756082 637230179 785911363 27438575 912054568 671272007 225647861 439445020 338590782 744700921 846977575 533365924 343561761 637240518 912786525 478739504 492027529 107167970 569224988 153025251 434004478 329790221 711976063 196725503 344253122 955160072 127828586 628594490 361964294 315911495 32910597 635061757 920361369 68296857 882416062 829873886 20349893 249210810 320738862 429092635 654602053 143102624 811312635 360566314 594000365 317066085 526857848 535800130 387468860 97872611 104176225 726852405 738471311 469376577 423181064 584361522 447904088 577845473 647814037 650008117 386388730 856546931 489951039 959594592 756484706 520379150 541329593 533413863 166134181 419707493 376930083 190233567 640333247 533561818 760004568 883890961 848290063 862305839 848169910 861227627 458061057 442679128 603374749 177661837 853957268 489135321 738252813 818202327 375653249 525425227 404331238 775585888 67230473 483103900 284938809 560291790 117091350 89363483 470285731 680412027 345826727 85106589 345955845 241861374 953049514 219291233 979086587 339410208 295380947 299672927 610286359 870484806 705598654 603102293 477075072 934143672 735204519 124695849 428779756 433962637 539992824 292890302 517042409 927984316 996517135 910589599 987386784 553578084 826285049 954908904 748830414 14144470 476487225 555919122 53715861 356686758 280014492 41839253 62723522 705765209 559846096 203501688 737898023 144953213 360055534 567784975 138849558 873213365 867049482 71897778 504497575 517279619 169040419 856649944 338750560 433605211 820904312 733926477 67692337 383570726 695905597 61081967 122732019 442399516 367902324 174067363 566946869 531896684 746099309 61465404 67858140 718851096 958416258 39905022 647375733 84687373 106197142 151269706 407198405 451088768 189246762 872024520 226942585 908871404 273044131 347517469 850302047 660065471 79703149 837041643 928921057 872162251 269490058 796093387 575074632 98737217 173438354 258586908 175400600 182124485 611186932 524301586 547898523 472360833 40398835 426843540 167616364 927970073 455431296 992069658 464328268 273940178 694461759 624366947 560055226 489320836 43004635 525256072 628970869 20188797 493300773 115709132 461555983 229646654 655854707 531780992 824575705 335219353 900806603 393100764 110481590 963532936 123189729 437633856 683764320 270027772 493168666 401672308 400278 95669705 413429871 469273455 567563402 232470772 577741774 429834724 911066137 852219910 532364421 282447661 213546816 987902516 515186036 898025434 336305915 155144522 981371417 643043231 13256216 305023360 274667867 88388533 936165834 959714185 838238365 144220537 141430469 460823363 841797666 198148122 849070041 813355162 875427294 186667319 218349131 759748952 34798405 637037439 322861153 889381994 549041055 927090957 117622122 349648298 381616885 470815117 758350357 700072612 755157587 414276583 42952193 953693805 635026881 111672223 100384546 665425979 580337635 345334343 762010821 557211020 389034037 895603132 628194779 571724098 677437946 515577214 293638864 797340849 173496708 762459813 319446350 613846393 621674108 394328180 193739961 651258731 624315733 784817989 25640935 982605773 962081669 283129204 630080366 709721067 573695586 59320834 807213350 217034429 572895679 861938235 602107201 902504740 139815394 971113781 964781806 816284275 172346370 85662352 369614093 650905539 928806202 157552192 423874839 606000555 229931127 192402340 849855789 206471431 515710340 713693158 492659634 828167515 132289437 968329328 165179584 224016586 14398145 633887236 370940690 408711822 727134887 655948022 307720225 799863628 431002603 804253799 618658165 865355806 369623766 48663108 766043207 42887593 654746056 675655947 99897114 350882919 444790696 724892598 100260706 740632971 168629119 394077283 420271509 234282251 156543107 379829211 305386381 641869580 669692481 841932105 955664016 313741782 494095246 941082880 10629244 674860456 774750475 966063816 191384062 902228091 187512628 292276558 671342688 60688705 825641265 702016707 744057956 825747726 518099442 160463396 858857348 389564946 432999475 167616399 262572280 982188986 351662086 634123916 855974662 18714234 57042652 746281826 736199116 902532229 425699538 31512378 253805320 457976533 600499756 24270839 345432813 473079461 788557091 855332949 42369135 585150293 855906600 166225551 850333137 39831691 946730332 675348083 615664913 174180558 1071045 294445340 127544747 396012525 917553674 567068271 183981776 698875121 848774624 823488512 460630018 43176135 479559639 645576240 23015248 937936743 914281891 594169304 285517574 785476498 643899075 369341188 302962739 133104018 258519913 448942295 739679937 556696855 301035472 139031142 508211628 757164242 458801449 867462515 393624287 430107207 466464282 558695832 748725963 828021415 842378604 449749234 762211404 243876759 141959204 253313174 818951576 680419957 480484944 165035099 197152469 278056812 770491009 799624940 782334095 829475103 699605319 542101222 570464065 373610200 900886538 294749501 82798372 802765840 613738936 885837631 685934155 829420299 769757539 441536949 827035232 153900652 312585572 373805477 121413221 753202037 182795918 817803718 157567202 213364165 446230696 61085909 562411486 819346712 838771348 372115951 318875336 736009262 40718374 683146391 874195159 813734443 801676899 611941219 517359831 420886782 389085293 214792180 443458843 580269639 693400957 334218167 527628803 357458146 538406337 189165866 310172698 431321121 356769887 939874938 131828518 800822453 971302238 667308692 489550560 378995090 783762520 606199571 452045473 195806865 906399793 953358762 926736035 393975872 899899864 193169619 775538472 66316716 624233480 759796236 525049999 229854528 373719080 448023685 186029153 351182739 517541439 776039180 218092860 527696595 671613232 242746467 355587121 266131680 480615267 149048622 215481887 581282815 600841262 709786423 755024824 855449887 945402646 963737125 95516915 3247566 755639703 296348244 147570567 603052173 895758215 687386591 217467140 933588725 302693509 689689764 969320393 894104385 165347922 749473623 558745482 172044324 181126 178860157 145143199 134005122 803434080 818869699 634332322 700169314 862697669 740467948 954961013 242751923 418672192 953595245 302169063 48814923 82703363 794612805 467950534 601531385 390173623 828001300 308503913 736782867 568235782 14451924 927005002 667031765 544938978 170079858 216026273 366238546 425944275 6025306 525035497 221189561 714824998 285080625 932970754 162143894 704604988 950581943 253813292 372955994 769145972 729085797 76074182 433070289 421995546 752048737 142757117 801593197 417164937 787244451 964052843 125550909 500409158 342813033 661276610 491400262 104994848 426941130 778028751 664117881 997484790 991396719 940171020 30663703 14970680 674665406 125117349 284895515 57488539 176771297 1000552932 845979209 877956149 411157993 425584514 270994281 560168560 482830860 973144932 499285498 783734289 593594862 130024550 183527485 302604277 541087963 511117626 458141782 652040591 995661885 383956620 176845015 431786291 121006763 699690114 354602464 883026218 585788296 141745626 206013655 618628430 469495340 806135485 116103018 45520238 783718594 404282392 351026589 494810338 716868302 921392347 985992966 221627608 802241498 920226189 14468009 744399222 394772811 920531523 208628095 816800256 573972377 414938917 762641753 672498317 203240237 480960686 608069321 392121133 279692745 126876549 910315722 295579801 708709861 838325667 723959004 100787288 402979615 686158264 140371889 539288274 37314492 121378782 929577965 770880381 528262202 104798911 546393803 381385917 642770546 676924720 172806732 251171157 157896606 33221935 409164089 186070336 865078744 167811087 186210082 335915324 264143973 344104483 603069907 796477252 974157881 838377267 297546940 698661757 43679120 543853744 91431076 835854270 756899455 604390169 298005575 160450273 192820203 181745635 612806957 42560831 488942263 419652479 533699981 493882042 928930489 197485976 362645038 382144514 94299682 737327758 567552550 911334163 947173302 298569284 158220081 306713216 283901137 337568524 695044983 102295665 787800824 813555234 986559591 440689242 293300214 668549008 256124175 886943215 265176392 683755621 671524693 247653608 875443406 496056575 912184318 672853279 931665084 519431839 5231385 958321395 210943547 875469903 137019830 716196658 830156419 499475647 560768869 158626545 702208594 842158867 170696123 579307093 930124247 690116007 712333690 973054531 965021199 547553794 60090160 436933094 472256882 382714974 440605899 106607786 193645725 623817149 413996998 735797725 782513229 375299572 325490092 7299949 419907698 946394799 859456519 486917261 945776992 564403308 438897923 211964002 220665953 209825550 775964612 558164079 464191721 382875741 541287054 896846462 436153441 464523213 469539271 635581840 846428786 427719252 720913126 519321554 642145047 791858398 164236507 402133053 432502451 652128474 215083868 883718833 386370483 147045885 470805280 222200654 704184635 414626948 434335591 537797088 776632082 602899992 914523295 314526553 550449288 323869884 166317505 441376408 651663886 443354239 281797207 179376138 188034839 509060020 672044347 815393219 479171941 105030711 332341032 953451385 941498441 413985043 838577113 645590306 887558021 369589260 417222506 489263864 132636944 605657509 920641169 415024696 384284424 810724567 229906415 232297801 716684121 346071394 577725514 131791044 844710895 90700899 536171511 321270972 300652400 976506067 853233831 323753934 411242509 390804317 704203053 861878173 832453104 86131237 894655548 988759364 210652883 542462542 608621473 537114158 716565866 374786244 955964004 993578089 998206530 792033802 65315260 575707867 954552834 4747585 208263321 524164686 770697838 632795802 241976216 214493576 65705504 120991491 934937379 688770962 407653503 56454741 708876278 644094827 709714612 324962021 579116410 379348635 379974037 813246827 653048371 427759558 255184491 274364563 231429639 984182717 791955191 485603708 837228053 746074736 681564509 311064478 542945327 23269133 649022795 229285522 546567429 509315808 490635773 509374355 880991009 599873634 598748776 515789772 890605652 526835114 377659871 515078045 186676958 387740936 672844206 583271378 755629047 97141154 849409725 208969379 511355985 353605080 270385628 550895324 685875364 542468818 225859965 388487745 34294177 990415886 19661756 645264118 429783031 751395472 539036453 359951525 156299525 228821137 108047593 617005078 100145253 50336436 66063557 487140845 813189231 853118538 176774174 951609096 882152398 599310762 453124473 449069162 210292052 391538780 638604162 233740365 914677439 757592421 59263753 84947349 595268642 61647675 349903232 588301849 597093235 137608295 544752130 459786000 606831216 323473326 48766788 912886287 76890454 796979761 394117477 837618354 975315773 881972124 680968235 430600561 356887062 7295571 723190628 107604478 326862855 158218614 443264977 519256651 340166315 24199324 901332069 169467868 815697791 421984765 685860584 917495826 863164432 774219775 427948155 935929812 946899585 330925646 848590525 124877373 392256624 595008720 765261349 125797562 573631152 699022651 601264078 413866977 371744619 472709928 3372707 852272626 500117322 795275763 415210498 629173360 280851265 634865686 320723594 58642506 312173702 964865668 860839678 550424207 785116808 446934214 268692641 683491088 701996414 159781989 897057497 868813186 271338431 387692085 323322497 142415246 593609040 127652403 884152387 853507904 382677751 970523012 69330543 872951150 928496562 207106544 994313658 663132496 807933804 689834287 898830210 157165421 968161498 520461257 5295193 177926199 140198272 376216359 553793466 801115201 999984103 611064795 583305397 811397757 148551119 850770115 743557091 409062199 631577620 518778783 739951024 680309990 493762466 540330294 244423083 579312505 604589585 925444730 56456595 598753628 371113736 515102483 924681940 857837957 368672962 571699419 396719938 700620048 14618501 198198296 394723700 634152810 558047773 874670786 601707392 746200926 491005061 357181722 301660133 9686254 454044605 708130318 384362244 457059160 866578064 701056773 533263966 870209836 350218469 302823999 759445679 152489006 393808551 542095519 594479780 220693571 381300701 424516452 161859825 856379511 133995550 589963719 349795636 269399146 806064344 492743216 511896575 751230384 508856337 974308684 741644278 177655708 706341125 69033518 856453586 925302503 630932565 484353295 941731876 720227023 543229089 35251055 57618421 786330577 163643459 714661559 483129100 700940145 710947529 86770282 348767780 601882425 996737298 555998021 286882555 902607679 399628497 260225061 752013921 30542172 388111216 71420572 569181358 274117381 859040074 373236039 637456510 315640784 530268854 21120464 513092850 708457254 711247936 277375802 748880655 340817119 209484017 595155686 380181532 494188339 692205064 143171343 716093901 227355373 578530038 383296698 348771666 563747823 599682658 900794579 880584132 856777004 343023649 845902722 978070128 371214600 232132140 749012373 310903271 621214396 191166640 217413489 870124941 801644622 986867721 989616957 591086882 162082749 158641374 835826424 920330116 406044348 29422649 400337851 45638225 486354516 957244135 663821255 270113243 651186021 369439150 77203836 735073248 610913636 546552317 113143353 129869119 815935378 590160221 956603717 147725690 208632649 461746319 294104140 531723054 240377959 807153876 512688492 305117067 458605549 218152667 327158208 160547663 385225579 451616433 178606786 947908945 644065478 279100473 40801400 791412859 685997452 262772336 914231187 17341146 670907244 441286703 380027591 621572344 341026825 916786112 800743126 690185095 725811295 252819164 993960608 401453708 140170539 575221366 332370371 91379006 199256393 860537723 469682902 101823794 811942888 853847427 855179078 630036921 373799173 812809048 161112067 699924451 742837116 241408401 885578484 564871098 265635340 867360359 365055691 741710360 131836634 37021366 746059106 37185076 989107953 479378407 569750763 282929739 650701110 342842646 519235990 342819252 438325733 947247122 234833626 134641730 709083229 911471230 860666939 20838549 212633005 359739162 69183262 274152966 794885715 950159926 541677938 671483305 486470172 197849671 343060113 894138620 821596671 432971813 825057388 230981289 336835487 874617031 249276511 687156366 868848368 537358903 856157721 428435770 323490105 304774089 969409801 582295617 895672258 468338855 860270804 274191781 80501240 308438490 13973343 819275633 687600329 585171030 558543374 644635938 267251331 933213423 967477385 915295747 252083139 454699442 810767699 567740143 865117399 191105446 845122716 394227330 365746175 338850792 878611851 892284646 390237026 988969871 360780352 637559767 446719249 177687260 395009695 835798174 695793112 29123315 727184313 219239597 526198722 563496218 972131039 772518659 566548560 625949885 606716832 386849810 496248505 665050432 705111790 71659590 98682608 758634019 467230918 118060692 325992347 835460659 944389831 206163918 145027762 490620158 962721012 197768628 254478684 865043586 138372669 267169267 999309307 294297074 189576873 205468498 375577640 517342991 583046850 286716752 920401352 34667533 874770355 501743404 796471040 160260428 802102178 212126405 389356928 592350204 282707205 537397951 494710201 468346040 139690695 60155914 552767320 831983571 87911134 157676330 585911937 910856800 533264834 682145107 976757941 772686853 438995005 335126853 343684589 615113964 852578392 478970073 975944684 876927736 128854825 985836724 582460987 27467632 689087735 964676403 772590676 343197313 491492106 675772469 959456524 716289477 891236538 488918149 321987971 139918608 69808512 639991746 860873724 946692109 621033011 440155817 956599061 91078072 582450361 891507645 156708009 458139327 890698048 734863686 94416633 326174422 750789051 787260021 629155667 722923077 887029099 660188701 514707070 776442148 327063225 475683307 990829138 755535835 129487747 924941238 879665716 891433858 204855982 407480237 439152130 486899875 945122498 80055908 811357396 339406531 240050479 268005437 278810281 595213083 5783238 788636177 623603244 592980452 369258436 874513381 948208431 795698890 508678164 951711441 652009577 932794125 603060186 414495168 943336266 610278834 578863296 482699112 15304085 635217661 124649139 457932052 878891678 124063729 316704440 803742994 436954951 536016400 790245172 229000615 546219618 679193995 411224558 340203004 688521230 642755511 413178541 209921916 151573481 883685426 83341417 239771704 835135791 142074196 291131973 327166975 634351857 887553618 883402847 559080917 478130755 3446408 987282531 894304270 574332910 502514462 147082470 124039351 372530219 930906655 678288330 65969707 696417906 855904243 524089064 770846077 379581522 384641649 596656248 400187798 496940028 499814554 608671172 394848402 376883043 246722575 399237204 635764239 914133625 328279674 858600050 471188710 978906151 841415615 697017379 190571142 67994375 655751339 396919468 903901699 340701084 767558458 720734665 650497472 361571792 124649613 556568306 152261876 64357415 842540933 826796819 948845688 681568310 222809953 671716485 118215765 946752348 924269494 914692604 494926905 80924429 702247664 536099377 221562754 572033722 977119306 256051558 40394740 676467861 857086942 389720069 912063201 620733117 621324347 306743799 543289469 201431059 845827339 942759294 91811043 950563719 937506946 386277507 934818186 777009389 348912956 782728937 341196079 784018261 891909473 754023283 894409787 20709254 730821960 835097496 394774441 696595680 651506981 961988382 941296209 985157075 479237266 3072576 469096200 236553894 500133036 867479116 473959787 305493216 616480805 415695613 59199764 904245509 645773106 805378923 408770051 265628652 144933957 24460925 502792918 747254348 860911586 987028244 378207955 620467656 103828823 276398704 269456877 222908183 888188443 199339200 540787267 363336286 944176953 815719684 812168546 843630921 353874383 87417419 42482915 482174509 571081859 94622329 480802126 962762631 634946758 373132187 28033842 546967239 512214151 331510003 673075344 628274113 273273291 127466840 727389856 618512793 186635385 735742303 258832893 936255528 860972021 620236757 267035917 232960260 801995883 922445756 758975084 285516913 641740824 125047280 835512071 813087495 833744842 76272666 362048642 686423078 439856862 483708327 184355168 298390257 193373281 227342043 3134415 671892117 158038178 94572716 87057299 665036747 690208982 757144025 611602584 439462890 786811977 155054618 832039494 238508240 158180448 634375639 48180381 28736261 646254284 440768321 666939234 147681835 616161151 408801736 60129780 603645405 727326877 568222293 450546156 566896760 135758436 773214863 202804137 784281681 356291234 590338551 463531288 475868729 356821393 440756362 407272348 854670404 611481577 334181735 604788010 188183599 998392837 993072846 411997178 404522512 559742064 763688912 656720786 605008950 924853595 220963932 403914065 183402461 283691301 964353877 568736571 537036088 950569841 856236716 265231886 704997334 327045709 451759007 997543811 747651761 496434875 456006164 135610396 250692635 105457799 416191618 141406769 381538882 66937631 516257620 351026317 787672047 761375811 571743149 134391960 445505195 865616572 650856052 450721632 289168288 493618386 793936214 620916810 521916062 297159587 431458719 299009634 773612806 202098667 970172237 83947336 410712719 281432797 108463022 844288074 418118135 813274416 104825908 992382387 334929593 395196244 355215959 107519451 175274460 55248744 784618040 425681761 647941143 393918302 382775672 219933442 862020143 255228400 189237205 467569559 263782252 51003498 270672601 925911507 961249485 869707802 353502981 777161146 984917732 98659607 878382151 111803035 732305437 598738290 530429986 817014266 390622511 560134193 475112840 110284250 359002069 577544954 133013333 96268457 970684459 229928256 903930961 128055232 140941981 710070872 329666900 742113055 881348803 29071182 460266683 912959666 949439380 313675102 258073722 89235273 449742347 150182694 309071966 74222535 913647604 144277431 586417092 30251961 116139127 641902796 755554356 187456151 299206678 203231627 301060262 118390165 735757140 5907604 511513865 890596932 861861872 369249132 987079294 250586340 312553453 693743774 859544133 796019508 365825790 647430047 13858949 291495046 779924671 654411100 652849656 527231444 580875222 836949676 393409178 720008989 523419200 34041916 33941273 381892164 895171379 261886713 3119888 923936403 650668670 59142340 323914830 800717055 140479345 901965509 9330379 888678756 723239434 19317272 282933945 36953275 178986955 496312245 566538803 357964959 98724947 386606609 23885207 549724729 552859705 80957927 62179419 233659496 451261858 441415507 243966819 491032550 288373687 850004967 668394106 451586782 144282900 367703250 141302821 464196807 40758825 855189415 96107927 923552160 176397717 987496745 195175346 831668259 963868240 674419197 137215624 26166607 654731201 956339499 433131852 760773612 25194321 899419139 87411028 866792301 245248384 126946403 198819400 804604174 291098273 735677559 263641458 720019462 542958107 901003951 833378163 665067294 203819616 313009080 306443491 969656968 938988402 695254193 954997481 198224037 62628058 167971399 890523574 355011449 820874618 541871427 650366738 76240147 999593484 635147984 592423262 762971513 586400742 258670824 572831640 421905339 718146714 835853602 206604987 81732597 151657076 336760920 522007717 869608837 807042037 618150270 595854986 898101505 4530227 773610394 109564543 318872240 344996259 168240048 818725762 353344891 402253060 411082822 838978804 257059302 77460255 576945885 465082344 671437342 443481974 597943279 724673636 473756526 25327987 264997349 719406807 82192131 843492926 979110054 428339798 118060193 781009248 380543830 192512417 658160158 793162773 632505634 877713600 573760686 199779232 583639038 595614182 647230681 540881185 232789152 404551927 619490301 936680432 982180448 556772533 671892282 273291364 872412319 449184142 437381108 984341770 188027693 598456050 972450328 311836036 752801799 665372005 900469459 80893662 850995817 983749994 116363088 628810032 706495971 198286815 720158866 928109722 979478844 600639753 29805675 662257415 123433694 34585937 957609805 103051048 808621078 25875158 938520657 639031094 297902905 245063181 343777822 11599193 876956122 85573069 10420058 281113721 943685964 179821770 584542696 836549404 652072576 664514329 342810287 3866540 600811666 194841191 356869002 828599186 668071097 601850570 327729127 927204715 166111903 694567482 907555041 556614099 46401311 198985254 784925683 643110599 181487511 72778362 13787823 201494491 629443973 441098696 400037151 10594107 171212941 353788825 845401235 304772479 12608223 888322456 38375463 810624204 908330248 678552527 863985681 817248307 859902948 837580497 949807498 273349329 201804091 407031958 828137104 110338463 859857361 651705295 291932610 985456150 205037690 138460861 431930926 681023419 17992710 715672417 328233646 72320176 911745705 393653717 846853071 438607128 512309227 577866113 66420277 472142423 173306181 176043149 955445663 521887054 790119794 817700321 479421144 180549391 255945043 335869312 911855658 329152295 75117394 963888595 446610172 183728823 289285729 753242567 547398923 6776070 452394112 592783816 882421558 90937146 426044780 12519563 498031748 511834134 884850782 294771432 590350692 490780605 683553716 853306595 401988583 303007299 64516104 420327764 351253017 107153202 351759288 740839910 134170661 66885154 863902451 449990267 113279608 791678197 482630911 100272412 9600211 553680807 385209629 321960113 816448035 515797066 129454365 671682247 465291836 30157231 172323950 32119726 695630834 387222046 996700992 397995499 939181579 65635738 379597202 816065599 946949354 982093429 402767574 576172849 538392976 719283894 487963723 441043323 427325335 98551457 257599654 419671716 205342056 652152273 686559994 592929692 183424142 665550166 764044025 999574604 370417271 213583422 701053158 880248330 96521371 523032255 775907558 655729575 69126345 969025829 309504068 626804029 329469673 634049087 589838506 822389380 101597035 924720152 844259637 251506700 624626382 721777214 896333376 993501976 360169564 93417357 145260215 448968398 940510140 645489956 83557709 194167159 259783582 505337833 779737454 411757243 457823090 897892043 891087584 936959483 407839628 590530477 428450025 219243569 659930170 61811966 875812063 387599578 529855455 603492242 700469932 4170136 84505568 802763821 180012140 84550886 922355264 754244302 567272552 244155828 200702348 506087722 348683297 115246976 678292309 382439792 550150161 784156710 252983335 260486869 764745038 667785866 854987608 483166856 465022255 490927719 277044725 22428680 516616395 549631650 331344059 201381783 157091116 915730802 920314036 922326749 740619575 227338822 469647142 146388268 751886494 67579369 211104158 765774671 14827342 852891385 781535671 330781542 94685283 307799810 862989551 576424592 538724700 730424238 414858725 679150386 688705348 890972869 434847417 149701282 11177641 695069134 970249967 900177456 694592005 404579164 23917564 445213369 46343564 131174349 201136168 990189817 552446876 940007726 96351322 199590718 444769914 102407880 73202214 660951695 973483464 60287273 224883841 397643761 631288605 410960684 593009693 692550706 572611335 440023052 143648836 961269711 995893085 503815250 981388308 360036435 895078562 709224933 46382734 899785855 990851322 547267017 184884917 956551612 987275528 1000759549 890008238 921609325 682354961 396807261 360226158 986732080 950229457 23573276 857141352 811769799 481257139 186511053 875673661 332489921 622610234 24607379 759070417 652565613 818417558 277440044 589921321 668874794 708932959 628996142 406843775 182168018 72255184 547670055 338214469 112952914 72451065 957019617 910540910 56031963 818035480 816081259 602725684 606812155 530991819 892935496 988927123 663184148 307609272 984789331 248687956 486966011 672336085 811332020 708662299 166806667 67141090 916728371 630141995 955623698 878981975 726792681 273376980 39638577 543392273 255968608 717653615 534450744 804335812 469595400 628313715 561553450 269620019 234049253 746840842 724993157 63251816 185285687 694299536 156763231 55245890 603921012 34654752 761046969 67639471 46613394 934053987 558278913 558773174 334821891 109580946 562592072 74914673 571296790 610719048 154654617 918838920 240068514 787662745 409549578 65333267 396941319 823607251 620507803 270668553 911586848 162432868 642877548 449758753 135442332 850352755 694216396 669625120 257942218 750266740 172962442 691261948 914906644 69901196 59437265 499701549 741693061 410688443 701845470 227599534 640813639 366176365 709883042 243111102 152840583 808626786 872641808 704023590 945779826 58745805 633921614 165636441 564699506 427944072 715885062 365551211 621149017 534248784 826805046 978252785 763361425 777062175 288543481 428072013 174298737 874844664 200048562 945874448 864468208 741398066 151621120 309741607 370858104 319874286 215139956 862492531 388624234 179334506 254402539 463515682 252117241 835663315 260539398 8634183 329557794 94902739 391523006 221070982 396975023 465830771 650130878 616269976 851046408 498834441 711506215 621406226 565170605 838518341 397431472 476667018 33612365 21215264 4789610 968519061 585787620 662493439 359284095 564794130 516936998 275450338 665139272 751766646 770725283 290990080 100803929 596431009 458336605 991471733 401205376 698168355 212918008 137039199 947139407 265910544 632034821 420062902 992823090 350405863 615197900 552439998 504716157 544351324 484564837 613677174 462728452 81166922 416647560 868661018 952871671 870679754 975058662 285910317 784874526 782559317 949091850 110929349 595026461 880256287 423550037 219243221 834468327 826945834 293981928 284667978 738691498 916753703 652414469 662627575 933732849 200890177 443813167 731728602 236266311 435038271 294814623 895780297 759756618 181492145 333160569 833126628 318238837 551778612 16808085 886027744 443704135 980634176 338910715 628167495 762695766 510759935 126438339 241733264 714198558 472018143 407887799 5434361 965085197 489050655 105037963 462524637 737465310 925961478 447292665 376899295 306716347 580859547 649190942 90056259 618723169 1002181052 243121180 809587731 689733223 59986171 106440968 176191722 20409365 477164098 187931211 662361976 267786425 470979491 959324585 42491073 147828094 207121864 917728566 653732933 461364195 54548119 830462728 663288503 182201850 336336658 716604602 659799541 713804462 701163560 969875658 497460726 607461609 272622082 560165547 670662427 335330704 995369140 300804734 941533086 947989574 408722751 116590480 417991996 45103938 972273016 821068715 667324664 137237431 330507850 997593612 424112979 427074551 302207149 953398335 499082035 26999599 682904000 235056146 99726750 759063983 155790037 1002040050 974988749 510712162 438803672 140489247 828778615 918688947 766133656 920928517 588609616 329490513 344654562 860476916 647576944 160221825 361125013 896171869 788158574 811720436 204933486 323304379 37760728 289218394 763149374 418591284 178945406 912191826 399125908 586255867 414954204 65389609 495524865 324425400 455376388 845501113 298169196 924291361 480800882 458261456 96161591 439316229 754554978 362570561 128910895 389758495 563596295 127420439 446048961 66280236 222856473 208894148 647819558 77963342 778247776 636221803 398438538 106483455 248042550 871032681 797631421 978606699 924476443 532797922 76040593 990316161 269419434 582499130 876786837 967630007 326395462 883522417 542370440 489374693 424968804 952902993 908919875 729627395 445351201 676385782 433029950 672215997 914418470 555944733 623700637 258359106 96413152 410170928 105069937 550333592 265383092 76945110 885099800 833056666 995964423 353833564 565290667 799126262 763059587 190558669 247817093 69507949 220776233 339158808 28066109 439508222 42199259 743953822 642019053 622308907 611345552 798121578 103634497 662830769 579793542 466533480 29764457 716807667 747305337 555541049 2396737 714326122 826008065 169479829 300530156 230015881 662050248 585071670 692209081 295714741 393127601 307570766 409501292 179222237 380887728 811314755 864733007 134003919 190825930 394030835 668785554 851821859 959171445 94843425 446883223 639136205 125297118 857302096 558837087 485142024 304399311 119770433 899300237 921768587 396787345 83577860 629411331 267579035 161892485 383607981 247883952 62644635 732972318 669096203 181291699 249062433 705592170 404954101 376905296 57316231 610812235 507513346 737345822 268314410 410148294 102598944 358837084 597782320 827925713 758277854 868198707 554190810 167505770 394683346 408884004 145906342 271874891 694468208 362112239 156353829 84356863 52894467 289061883 179760337 685186522 72034820 481454487 392566386 385955454 301126753 923885400 162194727 594597337 90284559 594683080 603340405 766498417 766548298 901201548 304888774 96730593 324373150 440448062 10733050 688364011 314298287 241182815 134463477 988264603 82996451 127488850 638710912 625655232 332509474 482438966 141595714 804759546 618424536 891381186 26578449 227120718 873459168 667119943 663083232 714345524 433235141 598135559 496604399 483945516 959375413 477806938 450297621 124523134 572292760 624236375 403625048 728442655 542103914 513391419 184938463 940832434 569887273 861295982 709604030 742631750 282535947 977719780 988921247 363140039 746848764 439671128 892632584 820835383 263048293 965450509 176648177 149378766 916059459 818110262 33480920 230927730 176310045 9667673 379989787 263322481 868510212 339597073 239589636 662789955 499938803 426257899 992283576 612465472 26452612 59093463 865651604 899816556 771644807 967602694 694839490 171256167 24611807 30704785 211945863 787284467 926736045 500038298 405724833 511707155 571914367 278843951 312153283 820209426 324957192 619329484 313177738 993540094 223369571 789485383 509840401 107980050 261207352 682058863 226838029 454440232 69694902 453254178 852393761 664542802 702581844 381636787 840557358 670429291 661096945 222493071 421739539 510208783 392442422 163733727 583580963 4195135 329066940 399738118 287495387 291290748 981383262 973570684 292028544 148258839 172888875 453609121 593044475 557260839 486016668 530108875 952010869 915476476 564010381 51716726 853357636 979183414 231934376 286376738 538852974 280291036 214907166 870237448 686043225 308967370 512965569 168479832 526791114 294228683 905520312 830240897 337598814 105805629 987844894 775661919 866428677 782265043 758752600 818872673 448266847 440731023 87282447 816078578 612695155 290342566 743112535 933066173 182583441 334657950 212954385 767504878 148588917 482919052 793236421 760868615 224097146 547342111 654366715 403157778 992286668 568452492 996869907 845097266 37163728 565282492 525653147 197967166 254774172 131697919 96748068 286475347 528189281 995095128 586906997 515267235 430360313 768030505 889568576 873458628 736871352 321981422 614182607 737572933 276168808 740937625 433042023 25205191 207198931 485896935 211303026 659794541 566208617 637761619 4509326 891016505 647992881 628519913 672728586 206671187 395161789 579263623 660526736 740773155 402488336 202238860 726682555 369585216 222758173 771124149 68736480 101733800 564515303 265733550 920954559 58916627 385487986 33675399 998277665 736413301 268747984 146391056 873579133 331799957 583020251 196840757 877709364 390159860 98496376 569155875 754239577 65291031 620783082 978888041 166208107 45990876 641901573 464145667 217431283 630262990 924629309 937733010 451897652 653989913 791024695 359952537 250128695 665740275 446974607 852586783 42733966 541975554 636783912 303708207 943736174 549502039 389729423 372329433 909518807 443827267 622371196 425279453 757118697 518607849 473102491 605805610 575302366 136937336 955190653 589747409 445052884 148890357 520514696 652572723 727453562 690326912 823332896 991407801 863820628 19576158 719394588 397894392 403673133 202632122 574774908 389400691 700757834 701903585 1000912790 360101943 812009221 517003293 151567261 341337213 468206517 523734709 427572051 837131688 147325914 532418179 292485844 67907310 126153333 673389821 998974941 843406520 142875825 679368607 95950358 359218291 565828720 971772971 295436979 739163423 298815777 263579191 407866628 465182321 145445324 866352213 210912276 926540482 728106726 561828783 432782335 662937378 984824199 478497291 264764500 142706926 563726340 921103034 764649907 686544687 133908724 378893063 903112133 547826375 425438932 870645999 58783842 669605690 439552615 315633851 739086926 150559603 121109910 709722668 360738806 157505263 105939681 170716196 293137970 840405538 880106343 519891317 869371061 364321232 174468017 857765296 720355873 359252837 465694976 592680147 689632301 433240712 732333857 941136169 293013331 121228105 80160295 78921206 873223633 751561914 653713988 752419707 487761409 201311542 800564743 292820668 171480561 884094391 260141692 34875273 397898622 788246529 81362543 667847764 378543288 585168018 410185628 311568208 516974298 7529737 562183064 65282290 804182793 190259478 831004593 78064492 621736215 545878489 823840481 447292032 594503441 537849952 840041250 48624251 927426403 855338325 699420991 483950008 222716874 459812657 857595033 194331094 193304414 161171327 778108871 574746453 936594142 526149589 441277308 511444934 230520241 36874816 550427303 353351581 944986400 926795529 142603665 380028290 700675822 390130281 413480086 583386584 737870485 155153860 85628446 861726958 781557252 976100987 263708469 475334806 153977082 636711554 608895524 262796498 295087856 460137134 979425756 381430239 190104951 38692218 469451552 900043132 821479474 277024677 851314637 511811724 862864169 249347835 727763785 690059863 639803334 238123716 355209746 581878500 319696697 701060943 641572957 759616773 417427727 443127272 255300808 847715465 784059411 491452878 380066139 778152503 375494880 315056620 287424822 676061728 721207754 419226020 248470519 414136825 558265992 859927168 662844817 773633896 629439134 693528148 440790976 387915350 800835063 508222592 435889618 133374114 172519210 12231044 813285344 693902932 352617927 336536670 576345426 603056227 393911724 965560931 270283541 321446676 490749774 218411188 111132677 417571180 64651010 712124025 124436805 402967432 46345588 978162614 856888267 574981056 398624422 878230010 538189600 667159762 924874204 612807126 580331223 535749140 778275969 146006964 47401675 777653308 137562905 911507184 805396308 158365901 113803057 101326947 541109118 599265052 854231957 608509057 116695468 423627779 835753775 560723982 94964707 896908020 929736906 40686798 257915812 498967505 462762437 191935684 162250425 379378616 782036935 816276434 506772045 556094186 852133317 214212375 937696088 817447868 214980084 554640110 987508886 694430776 1000459295 396017133 103977137 601692379 865763631 588421751 117331374 995095537 668297076 637022719 704781836 423976740 833440233 72042683 55089241 903458294 318311954 801812053 621615522 314607136 32115592 421541014 768662151 679361106 391542757 306503206 767557428 671618425 769046368 534574933 362298717 900902222 338268714 374397769 96919237 931420972 550490700 930134952 729743227 783920898 228878576 180897294 81786121 770974450 22947140 596406885 600459155 380976650 867496363 522156726 303682579 585835547 887117444 523725686 848284863 33832687 641626579 112769034 815518426 709911817 137741322 846576795 854583476 994302548 582838371 660057968 964174134 419754214 892048815 177748470 659829697 557623795 565182675 5768363 926851821 189043707 777493514 567619742 547782106 418304183 351450666 729961914 851893603 972988721 277130289 595271321 433635355 2343589 215745057 37951239 659380007 457512557 227532110 637843681 584903522 165725874 584059289 754244479 362821968 335606425 934261150 403341576 108867476 289446612 545854859 772596455 50835061 427712322 755309558 282944826 740307120 747722729 396954335 160100634 802200415 742041820 326276855 744647980 582832228 404031333 47960905 849313148 469934826 118663999 595027957 621424696 793361501 218676355 897810249 446495234 747329610 425894845 253662377 335149560 8246563 134800625 532985978 193679635 94324648 920265782 851316036 479609490 335478414 244264550 890395436 823265660 256846107 281898700 332090377 410729345 670545178 815803833 605668042 199365549 817594772 258132989 801562691 949757671 357867634 313937640 34096368 802022203 569988104 534676458 282440791 616241597 799152570 439136055 924636699 134614333 383898999 55154454 266526884 341828496 403421064 272952259 809463424 700640853 189863616 202082953 893039927 916742521 534141539 774884364 31926573 249973166 96952470 316974497 48859392 503816199 10238926 161605207 871247470 91778417 367322037 832961737 979797090 966835082 987417299 487327332 581555891 534614271 551663814 395103905 416530242 130685998 985833718 237553554 536339564 439899955 605238063 816187606 465675208 918077295 674791909 454049444 461923213 454736134 224157551 672357901 218316426 251376298 578409051 108811829 4810446 496015344 629580071 931637943 117178232 919173477 712511419 579612495 977085077 385731635 780887263 826036351 262092847 945112183 791491341 980872803 464921350 358301252 778688297 581310337 641610562 219744316 643113770 856273347 509317780 750103931 957048558 810023379 36148153 569177270 275331796 957280524 937242605 375444820 593341519 122373318 572730166 360801011 863991970 239288961 80740752 622702665 129752048 301466 83941146 661697566 925729645 583459243 447203554 805612659 494275982 942182959 327012658 466899219 35073345 777118030 552482124 753163295 703653004 778090069 935660408 471087147 248696806 83110776 336689565 414726504 128445939 661533222 900263034 334605331 472187721 590971336 229719281 42311620 683664973 121477631 451396204 752713886 71376679 150691912 1000202450 932759030 167825983 613157414 110309631 191167606 659839959 628195156 934077653 916388776 308814316 665761416 131750397 569274239 886472023 593602970 994236820 131796343 242405151 616708680 225814714 805724378 345919366 121731206 281456572 319671794 999323068 819769252 259816134 470957766 696122200 354681928 560873384 107037570 164571314 415218919 397083026 538918122 211496011 130291302 319415853 823331481 514312585 773760584 639073923 703459390 804279073 278600210 950835071 448511418 662951826 496479671 740677576 631847087 69295538 213264964 940582357 358579066 317352815 309464369 441007065 599475203 13083654 665284151 582015055 313273614 761417511 462294720 540812270 566901436 639414826 841266994 634392659 180790045 358992036 614863607 276091673 317293377 771377531 477352525 566213951 56638270 898458538 337111262 1002232329 977480349 79615668 939472279 921532193 959187231 222075665 794119594 586744677 140492526 244164570 516352854 671998649 856527088 267637953 723946625 626183608 789978799 485547337 547330807 811574037 715967293 7597747 359436692 53621813 483701066 773139008 77799617 579357937 407373030 720945550 874682746 180920669 426814524 991167805 637361937 969351555 663087360 833655025 992643105 217022652 781007153 784751800 747324987 868828844 681033449 403179402 192044085 286854490 673572309 932190584 625203381 371599125 213788209 171141638 238499149 48455766 380291466 347338942 226384569 93443735 527020198 944636838 153098186 32385423 553521485 405813345 429098250 762544408 607676910 712821120 59781901 180422662 633060879 651802540 474435721 903309190 564586219 683703916 542587310 18803940 288387393 866549293 670357310 557556850 385336629 652422520 212474988 113769253 7566594 510365282 436841933 278576464 881432104 681981799 232845152 404031258 77001960 554312815 207050544 807925358 979211225 852097431 610731435 823671043 286980282 331597540 231670480 801762800 719748275 475705981 117882256 450166307 819458295 126454198 74160685 55071254 207559293 956822481 335815761 567427207 794211073 985927321 88198583 956096799 704577612 931134140 526973937 416876947 290513915 446323173 657140667 690564215 101332325 564815329 145650558 371568444 605250485 206426200 356087312 974172026 812188903 991755350 845985385 288062075 604609844 849834897 8989863 887360202 74752050 767061450 959836178 313752936 279340633 614602758 310758503 173929117 606242056 989386476 37936545 93045852 597020570 134880506 192655417 49439869 983961588 921968408 941138989 678501637 788196490 38469633 717264870 472633794 421966759 33053812 312107348 130982283 333491549 908258755 1001796303 566419109 215267439 383479511 70209383 116379724 386146668 165339489 879614534 5596514 177441403 628129298 74430506 432479394 429845495 817759191 329103172 686143564 136825524 492692981 790453464 376631403 34512277 774414607 8921373 280495873 306384444 72485219 939395011 212535454 917876408 352772157 997119728 446435991 607122398 398936878 179829260 784319420 629828842 694478729 733659550 666726918 335939824 957523763 972137680 241258622 527428522 131714807 52291660 139153580 637486532 237871086 802098296 958164404 170344995 556376297 748084787 489758033 132476646 32109908 127248856 919222644 231800679 376442577 857573650 402602441 695054566 975251068 538103420 1001324928 1001545421 998089640 279032075 282882752 824557880 62861727 717201260 810595884 87412111 614146687 520834281 939769478 767826498 705229704 263234154 105710060 14365203 26441870 294331705 355337190 461222934 355174890 197812032 537248715 294265274 622248556 674101643 892116991 34583555 569076069 3430890 33807246 171901351 898753005 136501312 129142068 457572322 838965710 58606225 113927424 408129069 547679864 104506319 582778634 702748745 355117403 638222806 764971072 886615033 880153047 671165555 318173858 395133076 894568272 965604240 821842243 337239503 545603943 812450655 594044670 923404427 750778647 765366558 497693885 266253056 510335291 661250735 57272438 139635812 348279839 639645867 379334283 550490904 433758711 911875342 683802813 563706642 84922092 676198297 924925292 85035475 624175905 969463336 620031307 393810755 995269444 763570712 239585245 861949974 585228621 399052809 500430979 134258489 414643435 856396326 565871468 943535786 604875394 943061616 507325649 798648036 789419392 211592025 385742209 57026423 98868495 477996043 333485105 497077183 778324149 866484285 670493989 357304708 635153541 778056176 299177134 868772391 250125174 252147114 631304844 12291606 826278011 851801470 699108777 778288850 413914740 76688465 460590463 782987255 595416586 534479658 245977792 327476666 937696627 922314860 777894738 126994752 530271876 246032028 310988499 35267363 420392879 753254337 511341442 696095337 857126486 812242626 369549548 75137845 728768321 575493233 80201574 397254256 395344709 940638312 6923176 598602168 749956852 811882176 182355683 667269780 528521801 680704101 732733223 662520852 818840993 540177366 169724233 18711457 291765907 373403825 229915106 315478928 287643929 346917484 504271991 749868265 68905981 552463780 918644767 518894475 11800778 987096637 914228787 885697519 379175982 125507159 218120575 524510388 489413985 725675991 576232964 502901452 404921165 79483170 539755661 942349964 816065687 106744664 141712127 390601153 761315372 642742945 762187588 423388423 166792829 235648132 139451856 792678191 417607181 307295180 981064900 431286290 119545037 331904515 912672044 968998598 402347643 640698433 454466300 797800453 631449690 810710270 724942510 861060773 709820004 998031494 418179801 765534993 578690460 277382106 276563031 761747271 199809134 922062877 770321299 286120150 125204522 961754114 339135248 506684328 118184305 848131277 702994310 769751026 329613643 651221309 283598814 506075626 253750197 607260282 818963782 360980698 291829888 292277354 392761126 826662561 926962978 798023798 586286065 412251163 699705655 1651117 382103198 87159240 277359783 963465683 511623172 714241774 627409123 854384248 293788767 895395138 709983389 824322948 598108140 239538146 690493164 307764416 469449927 728026890 180750784 311483093 302284452 209146937 240702550 296830956 855252027 865486851 374317819 762000395 628377712 583058330 607359639 392011573 32412656 309177288 176128253 697684136 514912832 460428756 360081526 191252968 680551580 952987012 28826871 465889472 390154269 720464345 5637033 273314170 431880070 1000739967 682102307 695995658 475835490 931017128 363019722 835087309 531830355 634898726 977955022 596155216 268038576 489860592 766606072 120639773 982268909 495597952 280213423 781092951 408075181 779399628 500360226 47861528 337892797 898727837 174460187 482359634 268275236 20678545 348807408 284761992 438350892 336186653 305915015 55949879 172974805 903578932 510168687 471643569 84375522 750013941 768476580 912899445 766260181 912936071 836762440 500624024 22086174 699624890 740371940 26624768 993221396 2403681 674681595 146008811 916172857 975841994 669474001 400439979 179808152 826527877 395442389 647986771 265853804 250572680 665988053 190344555 892275827 168273750 375847003 345360274 470328032 885128792 268222811 126907354 960811166 320388648 335492248 102175259 731927124 299503084 542032133 454114750 483061234 470775382 36300687 769926637 956027084 309439083 476558524 658925282 277982389 851639904 446585677 148751136 576359741 444029187 536718665 476455815 790302370 110859381 410698192 616997967 903138400 529372581 666018758 685030681 942558416 280453806 825407981 425697053 119014146 594662648 954592882 405159020 698698637 131876552 818880973 185086746 466661820 657240527 735946395 398505096 479243422 714840299 860554323 810132720 491051813 528016105 173350020 417260544 872439189 261490555 782830560 135805127 746044806 698098585 420585957 680656655 360370715 62986897 146923605 47025119 505369948 878502373 318479650 19236056 136420345 514576963 39235822 865934702 563993949 224897558 889025445 532157863 867377559 967754800 436132117 394266502 761865027 200110004 469992992 580326145 815496703 287073131 238158454 669063295 411434274 970883573 221805367 946291653 263096202 192138781 413658424 307486595 143916573 174942672 63911957 157654230 645481207 249176733 763390338 454185993 736279573 533576309 576042551 502199849 983227380 251124008 878612460 803521313 550837855 751124965 998245700 681317061 146747793 32631725 568719459 65040620 483025388 182255414 484459995 332474079 2483888 833515720 492193615 549921963 975221582 219404477 522380724 279405432 655691848 967990304 324399341 199162968 211868176 918343452 758522725 728643371 544789512 301144345 106032101 461480791 148887568 780574325 143551369 108838544 165869196 967372641 923595031 379736337 295122910 490594237 725235131 940098903 374162102 143609149 598122477 592186638 304122960 168798938 986559312 23218160 305962803 963606989 819735233 610414089 482216047 461762319 978379548 805127933 995277509 676966993 561106399 380782061 969819890 673295337 604804887 980926877 907497228 566638976 294891364 740334720 374618680 756426577 827712713 879509953 396642443 577988590 243675532 63840692 752271272 733426112 119367610 68584863 403157466 752628038 448099314 725472573 835410171 370885636 915920519 486192204 841854693 403744109 927353007 863649514 349145793 32647175 197176888 45483393 855844741 699667081 674560876 437031394 2769049 61026912 856262820 724273429 574043573 6353767 224388271 167599792 535842950 434605304 20030627 24709715 455859365 187658927 754529380 50746527 940971855 933433136 506378478 893979192 320971547 756920989 878886501 886607233 758945169 30759420 764086912 176637336 224080877 499207558 116730835 176505617 385450188 93058240 754625934 82786052 853456561 322807539 700256157 799871432 340338047 856325207 960870974 639346472 51180081 179833779 750637957 96054273 943971552 273845036 604511443 837879111 871566792 185561512 349662197 927985078 647715616 96593382 130025005 165451215 793686392 539468952 284254236 224958554 51310642 562715241 403840779 101162640 461049758 253172822 767393373 419435473 792268070 287635873 3324941 712398881 444306428 939305994 921869067 719692762 120690444 391428664 123795752 595073463 694829672 103072056 807817227 803771806 949120538 36802433 301905459 861771825 697725185 751679720 817606545 119692471 683263957 803311790 902243633 529525231 125803960 817479135 670732757 526965436 328252766 778744474 190419929 428894456 14777379 642056367 328279085 800665954 984794711 83400716 581522906 246484493 55197682 574580242 168909631 289787383 13820859 575497754 714223515 665812944 224180682 233730121 533682089 896121872 27265786 770475000 33789021 280803706 230803686 457870835 247926585 328816633 206561037 568067048 270076200 68507065 341831606 353414913 780155433 808207104 672912473 607145822 658561922 113589329 959261760 918822107 324679605 394527358 72062915 38850077 403199826 877532753 929192579 699544247 241397673 752849340 401238510 903923907 777788881 132623491 728357709 877359867 200218094 542832757 51782352 154756727 264962759 584965223 36362846 29800756 924250315 709038996 534784425 168399137 915342330 936844528 4274004 797427557 497589904 865738360 490621687 934207027 62932639 454866924 886039201 513284297 713291423 483635122 838590845 834501112 690486459 720780155 134050743 934956514 976747540 176271190 110057042 167452097 859527523 614033844 856801283 112518786 503797743 588908469 13218314 199326381 822869461 720501267 566952870 449445772 587985514 406024657 958867390 117927234 412410401 386053872 864385947 835360826 906094247 619996706 558558264 832747726 626738958 607691961 564707848 671821747 403807718 857247535 407691610 659900018 114718870 974710497 280027598 222033350 643676298 121524931 376498590 599036407 389585463 892934357 580640062 151678004 178810200 749829242 587190978 102216014 932645380 594816951 799199742 613930430 8361571 95494844 783995780 227357700 78771002 328251044 928764729 123730626 609817268 867890716 769629562 734958429 632174341 131965701 218121576 844561544 433134081 211052483 279282332 472926761 149578651 808627038 265422061 478852442 242132755 57624491 162163598 318090240 855224327 685392000 831831710 465507096 131644263 862715877 169655713 152588930 308322716 446257313 396210636 496352632 818095435 367998897 329141108 784581146 583580411 65510806 954865623 584403332 321436569 930992236 499229993 47301893 437117475 388559796 669001457 771274017 966485729 85204335 568590176 681084710 518951772 758652176 736727670 68946809 919136044 474772892 675637138 817105208 505641827 820798779 261925234 319010751 557650811 345349581 664862865 251424302 254761403 464234393 214542412 65554132 896185509 682761083 748038539 375096267 857675142 167748675 572723828 765862209 661649444 124157289 787255480 16661915 941072904 1001541623 51346270 695997985 227826712 863593505 160999255 460109700 116253725 738839297 223397200 898124198 985022197 277587134 648847029 957407220 290943006 662953716 62562215 885606997 237961449 229898233 498148094 264725336 331064812 133546996 967315188 491654726 338368983 582304826 189997075 6597916 293483253 225957463 402637438 404068301 640334453 891629022 782747788 960733264 697892001 726750704 103948452 926123940 467072506 139824960 311221927 635567584 587599998 731699569 179488801 782865466 288564108 123153828 116717712 380793608 412268921 378807248 879281556 88982630 875109236 203319980 185838253 580482103 734851928 925677048 625692222 136370646 698482575 902548214 401650281 964265578 95410851 390146095 36883214 576434621 416230111 524489617 662777290 39686769 688742446 573655343 709779761 306141308 434614992 555203107 783383385 815339973 933094813 532779967 695169276 259279386 315945882 520375568 704458792 163923869 878251103 800296224 715752866 147398865 553143997 744460012 140684829 254518606 162381568 93961847 712319498 308345753 494147522 816574360 261001176 814534497 734700042 283700527 682971797 643949068 657194888 634071137 335959909 59229318 20182019 424482557 874176377 478590998 546979933 73117188 575220673 682066371 894927997 241519613 440199119 813645773 623419690 879535696 691673310 53600224 55093128 920222352 636747367 582234250 446003507 928589204 229620796 906238376 58886147 132258087 663437171 510920135 652042594 945621706 616583133 1290266 701352193 488752459 171297415 568685091 829300952 99082642 251561549 200383590 913105607 997774512 760483646 176166931 698528854 106174618 223151990 150931891 921646447 938019641 298678396 430841692 81839868 301872916 616556100 553146159 744608235 448060320 637060562 31825005 974087403 253836343 112507805 925761419 372257972 723174651 840103543 378894482 446996267 887611254 67480482 43157166 309328175 521268397 514712836 706048953 613824006 717974592 11119059 66518092 674105843 171601273 724581666 623425403 34362756 62056246 771222933 895763072 822514452 299020612 485724988 452229658 760311799 325720128 635880399 229493568 363807412 458620251 605424944 895939047 674118657 841241137 445261163 87721437 466268841 202047044 867709094 507950559 95893317 315282541 781987843 82070489 253667137 656349814 677269176 231674684 389171429 763847000 817256041 100810130 300890159 97891075 286127097 426664876 565297975 90974087 708645852 415678312 899306044 859583764 802432530 33067181 636656086 446264395 778423672 434304402 350997492 637050558 668074295 209020935 353280484 376543592 466567958 62895154 751286297 569168479 976182369 526094909 300861157 682630168 547745086 651831454 251281714 434975575 340646188 165356487 435267054 265307665 627830671 483459657 541391671 728064866 129556727 163503799 684530808 653146383 800594067 770714229 808188132 666280000 740105874 723669509 591822358 665328132 51027241 558841831 583118979 248222682 153637408 376088547 803840372 239447497 810494237 25805592 367077655 790514152 29015877 899500165 512524709 766766119 868312864 387451520 511183399 672755662 815859467 785105996 618253232 142498343 235541805 571972470 761210957 800871583 952906251 80098134 817003399 46672802 289377889 368199383 948119712 434901235 449632647 832765573 328917788 483680724 161387930 448795661 846277449 163307387 454531878 284688366 356987350 559161823 692613672 88778885 671813263 491266536 278805914 401832056 453032018 306317991 469776822 837261319 463198800 42656275 127169981 577859066 654541096 279761864 435951193 838147790 142994378 922903047 193461768 859342142 220236580 456883633 157406160 712942915 26035231 392606853 4724213 616019716 960893862 738315743 860584831 379035954 260088429 951405642 246562906 458865735 826882223 281273078 266651924 271024649 11451500 96988920 338681131 430160761 655797643 981604388 702623732 573461511 808780794 868763815 598206537 795243332 981098858 365910411 780139313 620296769 851028290 494842125 779211037 759480320 788138860 687726030 804531770 935972174 963800506 522118783 646266650 791629379 959447774 324006241 735076344 446626601 839301546 198052040 52654094 455672816 747477201 817764964 286074563 700423009 387401870 917175534 585816371 318042212 314505590 583713160 703753332 113126748 135915682 656216980 822939131 489511715 826791851 238580669 307299253 390219926 159294041 555318256 491853589 223924033 17612435 361784681 46253858 927585345 629953343 299794645 787560554 67461381 86012921 807513194 306789764 129794055 664320005 560086192 917674389 213198337 57600708 601365703 998490238 896238905 732517933 410072471 746878085 586572089 402114616 107661410 608096960 945749453 174266596 66277670 984303147 965977636 682708403 176128027 512114490 760941919 185789243 437499243 736251986 387230121 507677909 693835538 93017396 494034274 265545185 684088013 395993591 427637408 390043 588601939 765276387 879491704 279825826 924903778 963586934 13936884 757150420 179790738 814994062 541495676 309233507 760710428 421859006 664566 162592797 803411229 591875128 256769011 630065742 202959122 532253032 546024502 626653164 330016402 145443366 354152032 948288257 788188028 440499601 229205680 649243541 751739404 568085478 965713975 418420030 916566147 382841522 844747171 866075015 230364017 885954564 118396521 937313456 878613220 936650963 761991254 767204965 58441016 730445564 992391842 674791981 701620622 702225265 182955835 371902117 629506427 33484844 466549627 809020373 315386360 682431294 582578316 926493695 566064174 276627625 822177726 303079526 358701257 519917188 853418642 232419716 14204354 513579298 531596009 726099515 856142484 342109280 120391963 194943093 222295704 618041280 644767254 654161592 185151660 428849367 174648494 124587996 750916330 976809919 735457920 616657758 36817937 611199834 329953022 528072941 334834462 688935938 173552241 973910034 567952564 512291329 796185556 281436351 973821584 412964413 974747331 951111357 925245971 188137464 366999061 961815198 540594963 348939981 615843688 697958068 940628369 155913552 326890970 429430706 160614178 641445184 99473256 323244887 967674980 653822250 16927838 379429064 983880318 149216766 250224373 964280745 397445400 826399191 486589421 70273612 717260595 442695036 225982028 112488580 314625903 290256016 336757146 59445908 14555073 253715964 862606933 213357986 804038282 241080776 905946717 630867781 251198697 251768993 236907898 521237949 797554559 701941739 162644555 281048694 783177473 822125041 350061403 700254486 230923485 762233030 278690013 756941994 791391123 240108517 568278074 485854029 943147450 675309736 861117847 639628891 960253649 87214790 248008677 454574835 379719921 731206110 520546593 991669984 817801999 839724094 877135312 662664802 96484471 561106758 754055670 304383147 285219343 965043529 845838078 624907877 167219819 658709016 104572734 816765322 762390914 82492960 884547260 84536141 652639933 870061880 87582778 421430225 680060458 662534060 328961246 638440469 697355366 863303500 220417611 736456156 587563292 278298776 198024501 205145842 193822520 912691517 194702245 15619440 207846096 795558733 446645550 702306002 466501233 249290636 170401627 31935004 748996884 775045726 261405150 852160245 219196013 865842473 641494889 581780050 945631909 687573190 836948752 416177134 419341637 636536918 281996112 921978858 432705955 638569028 962859885 843229725 183249012 454605828 879083232 385551820 296412045 208235894 427875502 529477382 854568379 513620027 996326897 399770984 427664268 976947953 792455756 501765427 359467452 415049796 259603384 280724931 745052731 9621612 118991725 225701074 21731493 448831564 131169254 646240599 131047284 22187395 246288293 126607245 642671357 735582636 538988635 162248502 520001838 816354790 347425109 723429204 522016192 845930763 290530500 588357332 888452137 258747912 659194282 853442892 826402225 556047055 714193589 582042759 96596018 840861977 943826945 495966396 72700754 268251317 826845647 123867228 406432108 743677696 182279988 675875933 247094949 31016186 399455330 799583809 725143213 440348058 5964411 701687465 436848037 196546764 50303282 931670876 862958101 420577240 591842757 345478015 825546461 258656984 867506599 556239547 356458525 820744245 286869286 702176120 239411571 948713100 635223847 2119140 601942300 810086075 762690251 57836797 945749394 853421301 214221786 521034701 35913365 809275901 50778339 377687610 578122214 872619587 646111612 329236593 494537714 328036796 752894682 427871442 111477947 1296414 2707845 755224935 214693701 743468169 987546658 574628379 303767723 936745782 842063992 625519788 985472151 692583716 30231630 625035890 158182448 33080415 320790465 165382224 919617445 686040217 256143056 264747959 505587316 766858162 678636493 70310676 192436562 122620830 573550600 853112906 479861030 101528066 804261667 533477551 100161673 320584922 40054635 94318468 613583028 365038030 539596608 297056807 608969184 605320714 211118645 287539555 677525868 570247448 592606662 5177558 603513645 763992980 215834275 599484198 805234210 657680106 360573284 182760611 28615557 646939791 513379592 671565441 228267824 1733755 256335470 659763218 761541935 631510302 527515553 477470190 525912742 319312958 653571038 16068563 774680961 709371776 93504554 94760842 406047805 397947402 316679629 784376539 210033530 118567379 333733829 929395063 724619342 76561648 350852717 384679595 531671762 145715276 621009960 565304326 658135816 540793500 556304660 714787772 600915636 760430262 682886544 840034419 436375171 978901309 990741334 43937769 740429578 23189749 568228294 414162298 807314339 793362697 320497805 354985265 667636683 388401507 42509583 767460171 116170708 357461844 845962812 125991985 568194067 694792243 842058071 682125220 545744375 392603424 74953625 730150266 858959348 862000108 730564846 313124383 810434657 642986445 331492723 742908748 7441128 976241435 306091424 985577706 763535737 312009625 865229324 629773271 90291316 730843033 298023994 133372441 167662215 159537321 760101854 374602895 888544543 1000551804 81371975 259022354 952152233 772408025 809362489 940720879 560435013 368408017 662295361 309102448 801612734 289798373 380485089 138686477 286303180 890750006 567958340 408706515 468116784 451456705 671193060 296620091 887543912 820353543 369673330 365614569 591691578 686164499 947074460 759631621 821286340 218126500 720065731 109451093 316121730 368649232 80828369 52735865 841024297 609379562 147838523 746329242 58487518 327777079 32240114 227446969 387036659 581752065 607668013 334509940 983299103 40188102 792293181 957223228 433752045 21626144 622280290 388370840 345950159 845642287 578548696 413269067 211099642 922016281 683097349 561951905 580361909 903523635 802185297 711905671 896423410 282479153 790393659 798870680 214374876 267275 102254343 169557589 421528789 596089182 236667853 346974746 384396824 907771912 901961259 83354516 774463391 569464398 449786330 626549588 359532322 71829088 762701594 512800413 206374240 756450477 223613809 670309590 181709307 442556130 86612385 79261160 963917522 870961987 961368754 743395439 64581093 636266810 91614979 131663438 297000661 948509853 354218623 366884581 521950728 673390225 191309837 318348427 644204023 857414018 306041583 531987887 771446868 196310210 878492740 723363222 849081338 781706396 340146518 149399658 719923711 711945517 85845155 855323887 53954311 769074957 590771285 98421147 114620842 98357966 436833924 711330980 951417593 273331313 448221714 554851535 699304793 950886810 96421262 638648364 686195447 985333946 57376247 157301866 492719801 715936033 45631748 462444889 809938390 364209370 335283092 328111191 178371774 246322343 532802609 194828059 988955702 530100826 772580946 414919490 615844522 969319519 6291509 488006890 786784176 147951060 114857280 35888692 600420360 330770933 955694149 542267373 900030601 856123008 696135635 415256327 591565908 387689189 641336545 411726109 117916080 252552771 646248775 734803428 722103571 991137389 798241435 33383315 290104585 999719915 421417596 82931271 195647015 11858163 704640042 660866751 392370294 675365632 984787532 10017539 58641153 96341192 317868710 123045193 554168264 621331852 348291488 159048518 137689817 325870261 186026679 465046214 944015064 858662378 407521572 441222002 506695401 956901949 654935411 305221267 93142922 153592249 994915244 939342049 745466412 334997190 883296840 548571825 118259267 767392037 88144158 303644592 883845850 636786445 929798226 574064143 697193504 297541030 210219894 885994207 211452921 426711292 990392359 28874245 356645269 561030753 306581018 367818021 102443888 640673739 636771206 397729407 205955182 775688898 293785151 779688511 350389984 282289628 771164637 611883101 80094264 240192085 37490843 340457439 686529053 505588238 905789101 206448025 688907312 646753780 828398931 519762249 879204641 410788067 582294222 797512496 540864169 438080822 557681875 314434740 102115405 66990251 655759063 467654487 808425067 406587316 887577325 156221406 886558644 851861317 454189171 223490613 432431605 814991199 966775696 19510701 79859017 827480133 56696937 28831831 783108734 89078181 545340807 961787479 921049387 588631308 161448214 716113104 259229461 833230864 775456908 456583544 289667406 264802000 583356403 32231380 206804071 689004164 98907306 920171643 289114444 122111210 795201827 525129319 586227538 624478294 767097708 420676374 597589405 920360456 508613820 778626980 863065172 378234397 511760579 661326941 641673120 671891896 566792498 757658337 674495763 258596459 40126332 196279196 69591099 809261497 622603942 639667917 427866244 317200034 233473280 665710402 216816445 455681277 44178093 338553899 558945820 715445059 896057232 195965451 204590046 985656627 79217168 769411288 26776459 76392571 405638780 49224974 43717827 737550006 266344821 757707771 807515580 538947677 142951085 315915628 785800355 401734985 237151700 605158987 752956309 76053370 887366999 501096360 337099454 562823773 539837922 32967075 815282497 343273837 594764483 486414884 470659463 781799623 393561897 407039101 42890418 833581800 533973214 455653341 865332193 170849473 652840876 502935749 992935822 669700270 802052996 452657297 640859822 124363444 269659676 251358958 413559765 504368219 35864463 701436886 625918339 409415733 326529339 831813835 907565053 243308606 656564203 700984362 338963896 494201984 747747571 996341631 207875130 833355468 262672104 154591456 597939199 519363086 594513832 133221009 375705083 533193031 736281595 19914426 805942871 304994133 834372208 303810541 33150139 39714999 559976640 74756572 813541933 392293837 499366324 158096519 331470109 115785017 771905425 726251320 156804161 274330238 270828909 472079016 932199616 257998676 336583855 998864285 326835442 303893076 74400165 411174443 841055946 616833924 844628534 374538112 146407038 332093309 454809065 770192717 480037138 247483206 813939640 61588669 418267976 178756237 633287667 56575648 224039406 382760656 60457254 812060103 770909601 946154983 433534311 439409958 104721540 699660831 87929174 156565730 630854390 599487086 797000673 698840894 936226727 239345400 134795628 521928648 31872926 602136070 810829073 347233083 381238230 676469304 224228915 922301246 811310917 299802014 378374721 3909729 693496569 609697015 938917811 781039277 931701705 743802604 974820006 957907414 911249494 848282917 743886993 288069912 157524513 14409751 106897705 759349225 148955944 204726927 166505235 696091011 314701976 388703265 473563444 6608059 779924428 598645398 200637167 76528234 961474716 559704931 910551750 806834335 665364044 782923998 440386520 386701536 18746336 10007264 92234766 960367938 951606195 505529532 421289432 949631109 346698277 69914106 390863816 206836939 432437202 544137907 389444475 919537086 391515222 182220507 312000030 342977554 665807909 466757609 514843862 187425719 807549577 860527789 810302083 671271233 994004066 498184968 779197888 583174866 927540268 80529632 159882393 774414399 599876741 844585643 772589232 815820691 769720967 224322936 105486982 217135867 345203356 848020348 458845755 613033682 77740174 538866512 9352074 666781978 330735240 901421590 620779033 802555128 508703378 439812179 498919123 879777939 885019030 894361341 397516920 231079990 842795489 209076936 368601970 850486989 512097388 783935451 713114238 329473352 680881533 70640749 671887590 575904714 571819826 254914981 108358828 781608497 245880539 355058815 539016308 500437176 574851363 734685352 294468298 641623650 570886975 716778360 166994421 822025746 863010320 635230809 184087555 816187057 194088983 853776870 54065840 65317222 177959571 213985478 929508087 657147609 268107104 852446706 990873848 470089172 507649658 342426556 15941571 921341563 343131149 362558911 111163069 147892979 983805684 946753988 111352484 346139240 744637965 393682966 613146618 479229446 868826026 919506211 378326047 936571939 434360342 140384466 831703844 623707747 908168051 981045249 333416735 426816079 704554189 152654319 968244869 65759009 369687315 933724545 763900818 362442892 974480022 921340632 384824646 773422958 576764186 442984247 692651801 488643723 651100706 233322674 141339194 970611471 375176786 810322247 321025215 598687788 339472787 563977178 497009628 742485894 34084704 916913124 642489279 907690789 206957654 208808083 994038396 612449580 256803786 356554337 499706850 325869855 775411309 118286275 597020494 794270896 748677877 253633218 178647377 909022948 346179412 768266203 784040896 53415951 505798561 241622134 224049651 875584657 158482711 140096349 659615057 769556630 484057079 346479809 975653322 489894809 330591988 487989909 860458286 720934636 879736211 325858543 172125798 186511637 660476059 916599520 172515881 877745201 389879192 876612117 878832437 639480414 54389491 568460290 215109343 114390711 753648819 548042890 765287154 390516866 648947528 61820286 707448021 10731130 647569914 957035734 851874538 85573606 661166263 739455981 779875885 465225367 211306516 204013002 277481428 186789270 61841392 58565313 923907088 51422391 959553352 164933903 465363879 562144635 446493827 382175187 849348026 586610021 251054606 50694544 572657937 826630746 554780572 74643059 624532342 343150131 332352002 748628103 197440224 255424842 248864489 747392861 339087748 253979987 559714779 676133187 823451308 908021438 264701468 709766042 45243811 665386652 51948546 968492458 333533384 449527255 806502241 180234220 501497720 257350867 598984857 616914768 175300180 319474162 423557484 896124630 449414558 101842105 797421269 230675782 300476652 816126790 252610618 903888324 285916934 685664158 75679789 493062447 176635408 89820769 239410152 556317177 342761866 902238294 298249656 956978887 319677834 282432113 206814725 215479914 604772986 480850679 758765357 313648100 376105093 341703340 645095399 546988588 512808507 222286820 898286588 1001032105 568800167 256041972 876070549 118896334 563294680 797312333 527252118 839385604 455374919 792026947 790530905 476313672 987047658 945809938 644332623 793996153 90544309 458464454 576685470 378758847 475579883 378250135 126955318 432049432 212841563 282509925 396403795 107524138 849811037 214876481 849026022 30489049 373729227 336602444 1737149 362172167 921011325 8946177 602126847 794516862 385039225 592629608 772527257 136795495 657663024 812462799 328667558 252637533 423986931 157692057 717402788 62122676 771876303 881419030 385434197 39820628 331167335 394141117 970428852 70234833 710741184 815836667 438848039 4419587 636931089 737104284 634492466 536179292 418846644 292896808 705439952 340412008 973417279 745400402 821195700 180333232 973737991 436419505 266165784 668394387 569348445 595607018 882922617 638224880 849597636 966628703 340937039 605998011 396358383 474210503 784065640 440036070 557536562 722775503 295869952 572833193 341842391 931697281 751217231 925281093 457274728 826003805 469559063 340656879 404687171 615052007 395471410 592944408 249711655 428435220 506782890 941876057 570391259 796261961 671499832 409486325 1000332653 482529940 538385278 385261167 756950662 747405646 443919282 104184791 958801617 721330496 872207245 475297236 758878680 346861754 504976416 604790631 202367016 191307219 12517529 211833948 504974344 663829011 934934450 310022496 352080688 506798805 33485425 813901533 934970760 452400930 914764822 682654590 154213626 407220389 60352817 162895284 832619098 565371753 33083931 579628369 493852563 333600976 664629465 74579716 251095705 927217057 803126170 782804122 847041954 684320602 852254084 202373884 832668989 920508113 419059151 320281768 915163028 758522450 287210941 100835434 640334404 399786027 975851903 505706282 699850868 443024908 689757003 325384181 199713112 995617096 954996330 724612288 906615800 175005210 486909708 74368081 722064015 461546698 827837320 880090028 347682358 115446381 770982618 196830546 908486733 561487540 49962543 995777166 144692174 370406733 331816951 262636067 951188807 401447143 52052015 984496972 542562919 300689795 847135940 831414404 197360649 288503237 398660807 875453564 984316516 956104815 116655321 909504564 948723180 455954276 593056425 203852246 959692175 945943372 237121268 18675429 705956654 792874032 346994508 230563105 638179622 280290541 222863405 522175861 489369790 778756894 58968648 134690873 80055653 899636366 371440205 45623332 954583433 527929661 398658916 263752140 650452831 564061153 154387936 209852742 117468377 955085932 750001341 792505186 627299658 842910632 585419083 302943247 777783857 169854160 77590843 191636365 776091090 82169249 493629935 990447012 105079322 688316545 455918347 213805522 508195618 934932194 171941340 822847066 753331717 132692394 883759123 815177194 36966771 436695126 396598238 973210751 26845096 642695391 234933365 643726860 926222456 411646596 319991686 188972216 826352368 600018332 49337256 417398397 801248417 510908810 875892484 948427133 999817793 754195572 918137511 739787207 558618074 681076017 712811075 954590534 555505730 664220963 14847624 309867838 76188422 222673138 365644525 133226994 312450162 326536471 1001534069 76283927 446225418 282408965 989346673 867380948 816773782 153832645 371435772 371997065 437355861 250491210 400196451 973399836 645067393 146959008 932649744 300222859 978607571 887934618 163801038 284966658 115523446 39898993 264510681 956248939 928540431 974198012 319960715 533149896 501718513 56922007 737187846 308690550 305659976 328516136 971764084 75589284 682150340 167253139 840391194 353381598 504183744 153875177 870856570 357216557 500145485 416153580 770734338 494624941 23187641 921792076 848628215 655381363 315229691 94458315 807567867 40559323 882345388 400213562 390665872 39441708 646935313 370400428 812885663 934546354 714290193 199883474 328816171 952393629 190989457 726151804 197494637 63157742 100312291 418966039 794293731 963762967 9116736 309243331 49166875 68540891 333169631 670415841 160504479 445213490 150610090 599426977 925315538 71401804 583848922 884604817 316550983 665427899 729032541 858518313 19099490 543284677 136127724 399765355 963447626 447082813 524384265 808970930 153493933 327729112 471550906 856781476 847006879 175760820 558146240 128957973 709014911 748913085 862298552 453010382 360338576 420068238 772627654 747853532 200355309 454402034 411436526 517446414 957644583 18944256 727450798 642875789 591028914 128754439 651408736 33341554 319253576 487009299 94761547 234553198 787125531 132457210 565118738 378773481 845487249 852067701 566214502 913322809 613059431 304148908 927462904 979911810 768845355 545948170 405332393 425632802 19873869 141780804 699359680 154740633 695140643 739429507 734960014 204958660 583348997 204570054 897076799 987721803 846431110 188373118 351943346 439401731 389999515 249288240 191758798 438201601 652011804 878386238 63689620 155994502 228292039 82155016 213690899 491396818 685975070 423666443 609125314 258062693 929181754 225767885 137756793 851980316 933983222 397709403 805194577 442450677 478364986 994538175 676631834 373849235 781844092 226502403 687221331 880441301 5466798 921597461 25964116 356879406 706786682 262237391 304383164 829720743 79443135 301595004 154117226 801481169 645190693 728913594 711300110 543469962 969859744 156635821 92251810 684862126 221290105 498904635 986056023 357024917 928626099 277074058 988125227 704573634 793035628 112271596 642495622 378968045 661881301 682318747 253593559 552991471 844096443 775782451 89045836 137437379 708443546 943463826 143718877 545125239 293682763 79997690 412979765 124121716 903809217 151051208 105808551 925007603 779635057 378743236 263739850 557249471 930156498 242349952 47569499 77276372 342887864 605650400 887928150 690584729 506266490 972011499 986115962 885359766 398659044 667754915 884228337 731075249 934245065 813948015 148409068 711767054 953458422 752313827 88199399 272195383 746605470 727495519 433772927 104022941 89560079 319586705 152915063 208442663 696014155 446042350 191272717 298364128 443634081 981378340 795884140 976990023 657097684 11573440 622434323 581689471 52399951 162915420 69587328 783922886 940653417 767303044 649288934 389799980 896360182 799380989 411180757 474070467 906819778 951318521 653042381 479214857 348835702 494101681 509032003 524081087 652186880 434979905 573202754 690833487 983664567 945276533 92973786 284918485 120735562 114244720 664978982 321611776 980822047 890126698 451416628 220595864 111654026 65444257 676988269 951690805 71196219 680732578 232583373 821370643 7599088 514638558 375746803 689916750 636005596 438693325 34152362 872546801 491903502 45422819 45305640 170845076 609819697 603011402 381575306 19129012 670597528 617847934 152927700 546942880 582618362 457196562 919076344 57840270 385940037 918883359 678876211 94145915 606814898 275384853 558110689 349696399 324462815 331348779 200746633 939766988 224408172 364598532 587498751 556471374 432436781 888503298 710486163 523011986 34213287 753891273 459178292 9761716 650319279 542997848 275685317 247511569 893546473 907591680 629575310 272091482 497008211 622742480 866673591 598080569 210425691 822005092 70127069 320451877 903887474 915589524 235909073 803412771 579502168 797860169 781636303 731583323 433403563 745054305 525148529 956977148 455958852 492803508 171955105 148619904 544870091 403844917 399225978 330584129 944480452 761874770 394614763 163482201 455948688 649921461 309262496 163228739 940897653 303524846 140634803 784652207 303594660 252937357 376111261 283609312 317407805 939944910 188487693 724659296 401514039 299000220 60680254 335683704 626032143 229256911 574928278 898035381 13834015 738214536 320057473 579591869 982150746 297907387 195017366 285098706 153731255 921963503 824764734 662800750 801674178 440556607 679666076 202662431 412308313 542194923 640508100 254519031 714931710 792354414 161545568 331387177 855191462 46875579 200760479 32522897 922955978 822694406 61699461 979181807 81380610 458885763 881568595 913949175 66903603 303443323 553212427 681172059 280503754 151014984 349697741 405528836 967999461 321164017 327300890 455823982 793980342 651505404 943767141 410890459 640357317 412743055 511846424 625024905 363425039 266436124 407644832 902761457 978284378 431365938 974592730 514956466 102273479 248224948 684346216 591504475 323705854 169242387 109121005 462252887 898413772 299654079 227325824 583282838 373199174 171315401 918222554 998456211 841131264 67683242 569099276 5112514 601892447 672305183 437796636 88973511 147888768 542003831 899737991 269997910 276634012 564508542 52860728 883831922 192894185 923762433 256683033 364092659 462508987 728510311 75261747 350458999 261636554 49060069 144838841 568959160 691726493 564515183 169002853 652361448 71497444 563201102 662602472 172448179 932127433 973636211 318330680 922207187 729337053 159620904 417810706 416151228 252010962 991009690 507837858 416772626 559256544 796327458 883343151 473504115 559501204 710819019 598324744 89994105 535898734 386037500 299976536 164804945 198691675 475311308 858311866 952617495 175555533 47414211 785825341 333375014 642348867 475453270 454803569 276883638 652413324 146533493 250291534 520765347 133793349 851422705 104255468 353571830 181156155 288584623 591617470 263832911 793357174 503838979 916307573 965017102 205374122 374699903 103369611 495856091 999912252 31760488 752491572 157186106 864160224 431874885 468527717 984370657 572244513 93532788 295028355 841041707 195200855 579126880 737972192 679827588 735223872 226250399 20763117 99369231 565841615 916741161 35025158 895325930 64702291 783126241 393322839 73504928 616949058 204550013 605976263 880506605 84479012 469808120 442289255 684304896 897182056 442706219 864778213 105738064 685706377 209587817 97205812 299136617 531885182 35013684 588850444 885670773 217669212 926347006 628716982 68947473 187173063 789100592 303772869 104808064 138129865 112403748 337440458 268090094 383795993 786102449 222991222 309307138 291791388 55782155 75671257 503366759 757974765 789068687 642741657 442471125 324987583 444441163 378687678 181695233 131274874 428849736 621945646 582759644 296234580 612282167 133226083 953417078 568945014 365890658 568993240 525816770 284702742 96025419 917393261 326892637 669540681 810943136 738055970 408715923 388557777 261631155 834581421 167385576 84846293 512039394 959163047 969636015 297427633 21805960 768085110 750152555 634503542 146502748 772802964 101597806 62669711 673091058 589740647 618934210 507582145 956547717 494396458 393923353 825042101 943216862 133907818 44178937 561664324 244733814 706018785 759578744 304020893 481228466 255133325 70529698 763325605 178325262 441863875 14213356 331746453 349832526 384053908 884674267 452324048 222688195 466432916 984715087 803746015 974534460 484059087 329745822 275859079 967937905 72177242 408640155 209864851 448493880 795495064 678084504 264662651 641705487 299098160 78739305 422674856 691174724 828668967 41756399 124390215 52075181 616610569 464536104 697818919 899349329 367246629 524151934 880297466 262463433 396809362 918115564 240404949 424115970 546741070 158417073 328669120 100125576 973856389 774063068 232471776 595046038 380154857 921208558 351390761 360272279 961262096 186868227 103243398 434270553 708898856 390858516 227612285 780985365 175185968 943742988 448915431 720482038 504935385 53714217 733346097 775756634 459687969 514639099 676969337 929987966 114198458 244850083 93329252 807599949 978690976 602701474 252570725 935228963 458766589 128316489 150970615 726949629 706749262 235020127 420940217 642329027 308078406 237308766 798399929 597802151 352191824 522916501 906008912 396846819 786772251 50745799 244194864 346804234 39201126 603796897 923466131 359181903 219131831 858964915 796881244 463772342 562939004 296340900 768838636 869782241 745831569 895267581 787407556 396511274 885676605 246408895 530597771 609793123 274603307 842841837 119528881 582935292 574974554 591878061 360171379 96632885 984231531 115446538 430222932 693797062 147613574 554299400 539293144 655847948 669037593 18478785 354215236 628011047 659973411 789262839 273176680 821231693 578732150 383820387 318715940 346160551 403866488 904863020 991588699 285996720 779199239 717368743 610117926 554811157 380828998 448630231 633465162 683759900 727078344 459914281 953718231 827426677 143680742 320820111 597484525 334053267 910446532 481623372 109569107 845672036 580822306 638880118 103641686 273234281 86907857 361041831 145402838 255776165 672412538 22870558 845461693 126197062 632024175 265866226 506147827 535665061 384459321 947553030 343653028 430656818 847506115 867237467 921454327 98550002 219068748 898856939 978235460 928568282 193394995 871899726 803346850 365009783 247909571 538272059 462993405 599869337 31724976 519314221 144120343 913670305 773040726 656390842 562849297 176971144 941601504 527755518 96780499 18622150 835181731 989748906 267922785 201385476 279528067 866119876 159012108 19421873 714597071 699511144 441379059 627314961 549377222 685065651 129678768 220803973 704180652 715113346 398306184 757441814 796766520 72612592 184177382 560637426 828269661 513714082 697849137 642229440 217908281 1000997573 613103319 652604331 510821526 175795309 438777314 331640437 972347493 889915190 765928674 137483494 655947765 323385980 492922373 414444626 366879539 836023308 382191415 244653365 563171496 333805529 80952554 600316667 118932342 784806591 565256060 965910099 81445351 217374561 927573863 745372352 473697518 707199680 869026724 478535227 684017296 764734091 266477594 872769040 537689195 651070884 295789168 891920630 647188350 343801406 168409943 605422878 995182333 264918254 773965748 961788804 158706567 732093733 551035608 151185406 350912287 590072815 25348934 499441587 809867840 783718353 95947167 68123958 584382986 418765947 861833234 60428322 106841975 112643343 870473702 950904436 68190867 388893280 117054767 483057512 175054597 841772082 230270652 979383029 206381109 946251746 329962153 40820419 755401634 552997858 836955304 211417493 972414697 726305666 515610609 963072598 344015237 413846294 736158976 109404612 643155790 820597325 925207126 87026138 194937187 872562298 884826208 421030908 672000115 276960050 801537000 559504088 625045067 820523774 999444971 690395589 781429199 870146480 696639639 522432553 457227526 711137279 872945602 420175442 807176816 516368584 131052497 649923694 772386609 236341554 867427082 403101680 541482330 403224601 339865907 595204622 630864997 744723212 741651039 86362610 30333717 401017001 660592391 443662582 460094894 146610232 84448995 231635812 401950541 271133665 835562235 393904325 321574711 227940407 806860955 787663822 879210238 529350290 34427907 596753742 756139537 309189078 368265637 553550219 307109705 237678928 298283717 274144795 655510102 754806536 880747238 763078206 313777343 419878986 74476455 385105629 312042945 785877114 461031344 181102969 772658596 612470666 805324169 419867934 760245715 494708308 285092414 97953729 675837262 545322441 790427262 539637530 626212169 599189060 437584638 501759732 307782302 340917268 953498508 421215399 911219661 160521672 671338 208563450 88685089 101917769 859596331 800675602 573409779 916404710 783024440 314981874 246414640 214752648 973344783 782375107 318946145 540778973 551442956 13085888 139410230 53187206 463315470 234506431 283999917 150082336 340157195 556565954 933741271 993402166 676064473 745716934 713161712 332796224 49664126 913531681 674351622 396675538 895204566 712577108 264636380 85540018 5314968 479455335 72013700 376128521 68181724 822225061 564092318 714978360 353316721 869221140 149518065 907712374 97477792 866349141 926301232 300575421 311018308 934367301 627861855 355877681 600133084 81494112 492258961 749075105 873579114 528876390 765656805 454732430 207728992 861612897 103551148 878945711 393513375 822764638 538953218 800999374 960814259 531252686 800640626 154769672 151063087 242382850 411319107 980395402 258687574 474339176 54442562 201074464 703005600 747495925 265708120 735160705 714479485 58771729 160266077 155570119 732230353 611215650 341010624 239539639 921541625 22457119 535793250 785111682 218764860 202577852 285700370 67063009 624695023 40939895 819773603 875702580 883601307 833194012 347599862 821207710 777501005 425771506 171976649 338943744 235195764 576671796 569313944 310043748 866012197 354659372 911146005 250616176 121722448 781047411 85628117 297050894 813914377 596267875 656377128 94005998 293513579 24156737 322395477 117226532 404828977 251657520 72406083 26380343 830227668 545838267 578175800 451205311 178683347 906286231 234877101 696722523 71526899 749287347 58734464 863472993 423519985 623849180 683939021 328234211 612548675 424371256 229105902 426091918 738685948 176825143 448849748 640247782 898715115 224528505 830739166 593318483 956103354 576095500 543968771 219528602 48356288 559748384 272829128 633999644 961132621 692286192 328521866 547116262 705020517 263347309 327291375 846383613 809416821 938188324 660483053 284480597 958795140 508397520 391625615 686157447 934280545 542039768 271760399 549651534 654346427 122604995 781427340 159608316 335385709 597803972 709951025 962149473 570518666 364731981 631393001 789737166 548197820 113451174 944331448 581930676 194270178 945415967 587037491 530423044 761400748 618764631 193177163 492876034 379017591 422507456 326860918 366021185 821279565 294971328 318458438 350363839 240277720 836893291 499572436 428060476 786479582 592230720 507677805 664143351 746050155 121246685 475588173 676474122 725856983 393571008 228829482 633767984 632894516 426231880 163403340 300260249 452395572 539736755 170308232 934227908 372938999 435643047 570645150 376753020 608048647 473011140 404161245 442305058 851993744 129837079 27629223 693751758 497673377 950967779 96209770 376702478 253256485 833493215 894075961 813988506 225726911 116471170 238455015 710901635 747047495 484887586 209837148 738855177 426631258 150425812 803382128 989155645 434753670 358209211 938009304 630529057 392401839 636227209 60733659 511636497 954762916 470681662 433711486 933662023 601344094 987835321 593201782 161261891 536494903 550465033 344591611 766910292 697701021 421034850 418469571 262864877 598377414 133880115 646135752 733386393 206011214 214439155 527182244 439990880 396555074 428656630 692581025 563100237 542751254 227791134 104738750 105855451 216923469 282856751 875721324 577210808 166028431 539885285 900861294 336155717 637928858 549335984 54726179 441830744 88488302 467582892 32783240 971218115 407001415 312203731 448424660 607980930 448248985 350192294 514079733 911408329 824209704 37843967 717049256 804631339 811249248 41196247 270998360 922941042 723352152 3044023 537283706 949386893 105300374 949470731 331966320 899011803 601922927 43774870 619014211 776481194 849364856 463685840 862467203 402685231 32014095 587747293 338700420 579334205 362766476 213356387 596273083 790097462 372228672 988397668 508564109 526593236 76816940 240054468 756216113 547825132 945934191 170255864 28987840 636056316 891540586 510453320 818092079 639584978 989955158 197719874 291176879 286541848 155656114 350580137 371415849 424488257 850423500 824218703 443487681 496605381 815007134 137676634 77944625 700620903 98701557 617207619 42089706 135284875 414802936 911000241 739900938 464944584 690882983 824835249 152051908 592382561 366944552 476486157 185705464 375191008 48411606 458400 344212600 594418129 630839615 882148275 117243091 174754089 109452835 737630066 387660362 95153377 478541721 765895599 203200655 12668947 269948482 119183621 133822933 357276452 850405534 513412877 848048410 733763176 84507292 805477727 997975731 559709011 397655635 719441463 182923511 268250211 200378761 528643627 173006444 688801339 457957264 152566259 133273128 650956308 421944971 360673367 640878518 727865393 477408494 393042112 742543296 983501652 883627178 250116922 19272629 881116600 730912034 901057776 836027884 276559476 352323144 455385740 598368822 832622106 941733232 729070011 40276003 951279705 134210801 896781086 475687456 975320398 315755631 662460110 365074477 394827021 505138558 371822612 441025852 42640908 520680198 231529655 736504154 237898073 95222101 814406540 933864596 277888758 388525134 912218159 207837457 166672867 148071502 140622679 729019805 934193265 324610053 101820721 696723239 330565573 923331114 685909164 109959638 759278787 207057926 98947724 352303807 160649574 586023820 930386267 853456189 529785403 754799350 652703778 860469705 582971291 347888500 332859286 588175882 390119784 685810824 8036141 129714113 299920372 930442777 403799382 733509499 738219653 827124925 275367811 532849144 405469595 875756534 519741451 732390693 458462622 748349638 182366812 144479353 591737833 896117911 737610956 868655576 443562880 418045069 677399393 446985025 509481747 539021354 47933856 320858126 604968495 418193882 376469493 436904097 871774388 352847446 179012739 926559631 382907066 709606945 639170317 974009401 843714776 708722684 942581954 104071339 264583157 695866436 829963303 552635568 564874338 933638893 731557943 647383191 74424438 587425089 796873568 206266197 89826487 657485167 595162102 114918852 634601386 943900088 255167435 535778232 851567105 574418385 334178372 671265154 828365303 392173640 989033963 694149874 826690755 771783946 643899068 276749516 910842128 980832383 507294596 672775568 895057404 589758494 556145148 801483168 911285062 421947636 702801593 391285881 946500579 82894350 62760667 600799286 831426489 807191067 201306506 875376051 870311732 207472937 263103391 210870019 755448193 391335172 503184132 341426995 215471639 897613694 867691920 866334642 506136349 883606749 713852784 143666658 992921453 563317790 787290477 203930197 439379775 424917536 509180962 660629151 288944706 317520274 582983306 147878171 4929651 828584870 355907797 1002202247 538611207 955607979 758375034 571566889 799673052 753007115 281637613 947611230 100845208 961626001 28755564 99134982 896999801 172822013 784101784 617390445 335421730 31427209 381240855 860304669 954183764 944175569 839189971 615508634 493453511 936470870 842428850 661620084 58073534 993953821 932491564 936245667 635872209 253445268 951213666 369248297 27481875 775363491 488856030 92453644 377607925 408806484 858572519 459638034 338629599 930171574 897978114 761673958 371775496 691281450 879163007 423355320 193928647 558679120 384927387 130110042 164470026 559368804 12174759 243419482 134602640 564828999 250224579 494676637 723444788 920137829 150734426 353396560 136714111 644843239 569563024 835120793 985975761 24673567 325005504 912537959 104353657 638135395 779178850 587506558 296897397 155485198 504964118 74928124 177587092 715661748 650601383 723048686 148915895 492831114 648845422 886616297 353704233 501169040 190421524 294365389 658763458 540040154 179021335 567558755 420092298 385006370 265967991 683182949 305960241 85198080 332503437 226790324 819845430 981184956 185439799 239927382 356682288 771767993 881130791 987600940 644279826 343562196 72382526 780689446 10489701 951987456 92470991 114957271 459981957 552620447 214666769 412974714 498323887 220766368 320181796 728786617 608588382 118548598 354684351 166569626 635078463 4533512 783156398 210905681 232294163 365899095 865492990 523491909 813151024 577045040 909754982 146595340 28329917 347088929 713788459 728334919 580126292 339843867 245967671 361174977 905569857 646231366 603377312 724703294 339641088 443130600 868438324 671944449 395525704 28718320 290934161 943189088 383020925 516055921 498792448 278993449 145691388 19990660 868669081 820405592 640293358 519958660 815015183 323639 378834272 694900345 652594613 395688996 243707628 805390792 228180192 650969401 138625636 501054820 330546430 735622459 39633646 205648061 131613792 102683601 439185680 694640051 488094902 417708821 947939566 613514990 929175365 178714614 883937333 952815050 940129286 259549706 66422310 739319499 632514213 518625260 108420775 111247446 287976367 198061072 800271734 728247001 693779746 464908290 239270169 213171140 465329290 717221055 244944470 318206008 3054057 445465600 532943602 931287609 919277297 408028575 293204913 836895408 710675791 925285653 142128626 431241389 468089698 617329164 538724686 47757056 768133192 728585802 243190172 633151846 447259001 654913920 344841021 110806771 565595020 564846531 643429231 615533859 561244730 459949183 737593297 117721736 982221838 594470432 422795850 363739928 434836565 8493575 919090125 369463483 122850097 363707687 864346551 696953136 488861764 935234006 517993444 156151693 463075056 278221226 19663730 349149849 750237800 267162454 434878008 890875480 802575458 451427131 553363137 662979368 430326982 355713180 704335385 865658945 197274907 583815592 610809017 933663710 44944076 342090093 416515486 229778753 912080451 202368587 540744366 581030818 702590280 901019117 240922116 744099141 270094530 99949312 868014455 106605739 64611860 627714314 801512445 706899955 657419183 180704540 354887718 570462417 930070357 511640745 436492944 149316156 523461553 399895039 865332800 168829903 639336606 85393030 422859832 930900542 357227903 643429776 129580850 239371961 991953711 826435709 124581990 107777129 599803057 991364416 371552376 684891665 806120771 96539752 440967283 201373214 281781168 130850382 203767436 941982471 961843419 477539006 205420206 910779249 902997400 370694401 967961688 668725391 482719823 888363193 506152842 416769898 985996090 149510171 599306770 755581365 60808932 407994857 908500683 566874651 394279631 705716485 21212937 538776639 126403006 322204569 545035794 617042154 832050574 970067567 372201716 947719373 324298431 656858039 692415426 509087141 164822632 442785091 186308742 532258192 333328543 779263968 260564805 614566703 960830381 802885395 154379619 648566403 685772024 733015210 211767367 726564769 658742066 706543335 430605474 637043560 859642850 722273246 198929571 979667498 181150618 948942178 925400125 197965242 870563333 480300950 635074083 581668971 105205291 231607149 343419731 38390736 202000410 936572581 548699134 426035164 482288071 601325653 397202951 897751991 494426863 593295984 50097342 213873551 298983660 966471951 763175352 463676247 227190427 741511023 614487097 154570844 388422305 36685160 519296067 672494212 737938189 945020436 376608801 666188850 5740704 694250180 601830380 174215507 724462722 838077099 111975563 664185273 321131651 658130117 773422063 420600141 884444186 395224205 231978259 468690123 431000920 201825170 872821401 472994871 771083217 910901836 632328160 54475410 315580497 459624122 609638841 105235313 160356378 472215770 888931048 477224131 13600700 361567574 49420352 628308786 129044602 939346256 326697043 237396882 735479977 911867540 800968908 788068716 229772313 994485432 615912834 936019964 678126011 524228965 562828563 201309702 169123799 530217188 779027990 671548482 316251328 399253552 93748926 473909358 717154215 812295552 50205096 565687490 700760824 537122150 190174683 876042431 363777130 266372623 617413288 349866564 934116261 382867831 423377827 824974256 802490402 583209622 11823182 547480919 885809487 314951277 570808982 190400905 721094586 407322803 825750592 993277980 302521038 909106322 619643087 284733903 15522574 603063623 120340593 892668363 235890169 949910303 665557581 248615251 15114519 484854514 634688515 703102120 952955133 453555230 65981858 994574702 638334481 286830507 535441214 66548322 16142550 386462867 130117288 471458007 52872846 571557696 75911998 21893433 127587300 307453537 67413621 465989178 550004395 491935724 758854772 947394256 768549950 131863406 533189313 244251995 61234324 395729131 952658663 106926331 316404691 424073851 813174043 134476513 810899922 527065161 164964552 115253749 7440718 463162825 762455653 661679958 746312087 166196314 900265847 590572671 269241223 686063028 999863039 650535429 712701797 601407065 904697776 276118904 848847334 854740422 898810512 342859695 992181207 787678778 868285346 911288244 851583090 604326431 119302344 978573674 997168061 481213720 352240699 63962501 475822067 782170824 667805626 792202057 743909367 117685952 401993098 349460101 483878333 521332118 989082833 932272898 586408580 284731905 402497810 427002352 630984118 820983592 773758401 553768652 839436413 396719222 905210266 907057498 401086520 804936949 888708591 912392084 983462212 317559679 445687245 25870847 745326925 437737108 448942354 429333264 205740426 304482770 151202935 807269475 462464071 414359511 117941333 987203943 367497116 451855336 244609552 895851979 96321531 126520902 452471369 538761421 541822725 103777104 952038489 314993142 81179590 682282649 501390339 999241181 60698279 891680523 446170355 592975680 19622881 636545350 413551834 138410949 73520448 765980896 433685558 718817692 213704848 886236250 410945357 53773446 301516066 536564001 218681614 612681197 530741300 254208066 438373166 835308884 608545615 286205053 181408436 419658960 667041850 696808258 77604953 102170452 388218532 906315747 216089219 442417207 599814537 109998904 473878897 414128411 912867026 466672135 141470817 434416110 437217292 573838065 735622939 787584606 40953367 445929560 539009607 706376996 834314827 30382956 524693770 592082486 533448264 850370068 334985500 300556571 131711466 768970879 161068520 572918609 649272789 582569813 253709777 868910189 800069136 98997734 89271047 983459906 870123527 400270149 108646844 827329744 934376401 390471460 192361769 601622220 268180720 559109980 636675497 244721699 404197616 728144826 807990730 612544626 424638436 876452820 861468574 650893410 747128041 611153393 535096927 371233751 805328953 334928825 349957180 407858518 459141205 361744787 835378527 949456554 303224436 720199797 653663897 198375186 142351435 78893530 759800918 509397121 980125949 572204042 898962262 890220550 573215652 238132722 476366721 58982233 922743818 115006774 750641689 117252264 91358020 572969403 65162391 139628265 886150877 309643329 86991396 298208026 692227269 800089262 401408133 189658903 363066681 744153702 53433269 861742393 290588885 176171411 844428125 469137430 916282290 232790097 551848967 685894063 730525076 998009427 770457509 852960728 802023118 502047903 192195293 465902285 208190310 962313808 335704537 973749559 340863221 419379716 279447858 681413833 820674490 930211949 455712751 829838408 144686347 148323389 622825638 698173640 68419684 309636182 791232955 798863855 835830285 802227968 789405670 460412565 984108754 860916187 727065666 149924742 182933762 513469789 694370017 926487969 940232770 103643031 713469198 210203345 980085525 390522927 838072513 873216393 877002826 809984927 831378686 709590661 291652842 255630511 12756675 965570215 80614785 578936937 948342904 84639417 485258517 275828327 331177431 508695430 628322071 694491728 477831910 542245953 254846843 223540583 843658731 618366507 626539912 443591951 21772999 855272540 313904287 207921400 979031365 246646907 558136721 675983957 483713750 548790846 409145234 349944070 734477182 140581236 616560703 964081661 722269711 880674265 346507413 216317240 280400102 183982409 400559495 849343886 991883406 557426105 186993784 433227613 291489625 91053470 218677722 620341292 232126363 442149236 155231186 9010560 674481405 846129470 571449032 10355657 758949904 629667821 50066088 538924642 558860082 754601849 245476956 681209844 184327271 641183971 357655041 925710180 372432752 205377406 153142885 726761006 645008209 503277150 458791020 732207964 861686504 131964003 608819754 191490149 696708805 578390229 30835749 725575816 695842351 664746741 949752054 385753331 905686518 148215683 247666157 458640093 812434159 413283903 598192200 511547498 177287296 737051911 706192765 454251031 484763205 133882977 885036959 6533926 355185913 898861644 953748199 424233382 8555676 179461259 442912025 886146242 435027672 565569410 596313752 732238906 263382251 191381099 887506662 60030199 583414109 546403127 852751360 572594869 106317988 647337021 440241059 893979730 407100841 255410689 593172663 78590795 850313176 661825759 144698817 739573417 83037742 3437054 497029258 970516248 191130592 118378745 727025382 700357568 82888789 523431942 721351273 855822989 967361755 527029084 508172854 780337267 828181889 970894223 62599687 19337587 234292373 957970729 125948598 436653195 420954629 22210047 219268023 850684986 84482123 97099573 748261573 456672631 323350133 595930228 232865150 85743652 324562341 801209909 410246241 67232443 146481892 382949793 340695633 97555525 848467541 725712050 607239561 652050101 650981100 80839716 313473075 426082120 411790706 954530302 167267259 103352020 622663630 516051652 404008793 815817587 582887476 759559241 789497195 509951524 534070076 835445820 64346033 965512278 288440241 725439917 625171223 473420498 423890599 842762682 408440996 879199390 539929997 248821319 400875580 238393911 575071069 402556188 625971846 666654543 997848697 18332598 954253748 823904106 656922480 113113676 942393168 271929657 293001811 519111586 667186466 304707616 330559446 450597857 478425907 65114833 796684653 569804721 66378561 17621369 826959303 232979766 924611465 752230796 229098317 519579254 196731747 432630795 99086191 977740509 495086894 709943086 261867139 979856295 127193485 853719176 924720992 418173706 583173947 341925562 564960859 471585007 40650516 91301560 724646869 457513455 282864827 129322225 566754230 703953454 26132722 673322040 118148738 738255994 837101354 670330182 67312828 317069783 949693656 467304935 465269777 183533428 789220601 550689568 663902130 317740848 654514662 691826552 1002178258 385588608 224616110 10310874 983992774 698320250 603202560 569825015 611998180 365408225 469600446 981608998 950515667 515665531 61057976 973412127 784386288 762532574 880924878 105877368 218298183 415087056 335213050 500059441 706793290 94565299 660828714 552387318 228479453 639762774 955726445 347376612 550484893 25414883 188714138 499372552 807221163 223755395 534939993 113860499 731258360 224656831 56480136 298441074 746370374 772388767 249979827 923374182 381569886 995783090 47689111 841126043 64093204 473486173 72732565 475649997 198822470 103034285 108581924 231430237 471710283 723897184 673521680 902088744 298669548 190742031 345252358 568020163 745727079 151013035 773242147 338690895 188281187 186337907 816480309 312185204 763396798 224301816 970873251 843390821 743572744 721212720 797956884 771040293 165746981 146502437 412430404 377148995 379920949 907090210 30588357 650868623 827056287 823956844 790052209 908769813 529758916 102604160 293651763 898436062 251968101 215312255 3467790 396736902 466763396 530935793 609380643 300454554 815980066 823585539 159761745 275262225 360694347 432459697 761981319 164765071 98453187 962963395 668219652 97886688 563252033 121823737 805078256 360233681 115888308 126092041 132460034 849386514 772158275 154497881 347331578 288691208 958801782 479336140 446761945 636840074 271753916 469184294 214122870 268498138 624178813 701984007 470806065 278072587 320409589 4307496 521302676 958928022 729889809 318520940 482518378 286008345 932228792 906920584 367302690 513858203 485241624 825412951 356913432 898179925 850338415 495182735 977516068 254375815 305321959 677937152 504844035 992192454 189587933 769760745 463390360 775609643 875313431 238422476 920324852 620270942 456946088 920290862 936012010 823679139 126725068 700963815 321419277 817746596 406591079 325355153 24259784 340672063 613777531 319699064 975927818 552409700 110914400 657877108 711035370 989827132 224834522 770735902 261620068 508997851 39653589 764915736 230556581 645951573 690641373 132790228 146538255 521438262 862357164 854682406 809559426 469670891 785751713 814978830 378559000 417304140 498308061 236558002 758663077 879836410 884926063 208014020 632373426 822594632 543748830 406428372 906380531 970099775 489255532 968126493 170251059 689043915 679631524 785421550 566759155 641275149 952906301 149403833 179694859 721002617 644472632 271229826 368794512 8422188 152595907 545049624 897127880 97559169 58621130 892293416 913406577 735703303 425019124 947984439 902937380 22863396 167891603 184874105 795589816 515660941 619680561 786349180 694042673 954987867 577260793 904299038 775051939 221482416 561384437 184165125 11789028 424920768 940214730 181309032 441652230 401861752 702197022 948763717 371716361 926483488 507519568 700542802 835737325 185765436 421577661 871900338 9119649 498513750 545484776 898034868 408399602 269734161 734265225 271041717 325459864 220251978 635189014 814543319 71918768 832358476 932001896 148128024 753972918 584034446 36488465 775227740 919364647 853300666 92877176 978931388 174427545 491340783 95110823 497181784 76833680 553935671 321034597 755027500 89038500 163057020 426244287 480903743 1001176297 845903291 468886444 612299133 136313259 65910050 74996333 251390731 63960735 289184934 736715651 411535942 124443818 325971473 227998986 715819516 802623895 196370692 440482255 441820951 945044997 435364526 80259612 474196836 457545638 572725632 462247839 735611529 872259521 128047515 422856380 114164179 664816903 667585724 223370806 675954916 114751086 201287353 125449339 209907034 688210381 507689680 933221006 84296795 437553436 262767627 681821312 793302766 160606974 945790789 473097224 479576285 225460808 595164389 890214879 151509728 374670706 224292878 783345694 223531401 545100845 586417902 869661967 720309034 453118814 407676493 491125805 640689876 425194002 671872212 788807427 380562472 38166612 684353478 215021194 729889491 223687569 876754255 745308075 518770612 607480900 952936129 438333408 106742344 184552622 963776041 134136418 84073411 805684023 740610552 306133076 886936466 772690228 681870755 742562626 731565966 891805298 585774916 163887395 6076362 534223274 445331000 881212841 761406358 435918520 16836705 854594814 370921780 617828986 23996049 270065340 167130421 303070550 334729119 912361077 583333016 17605574 412796613 298857084 356050082 81146476 459085939 674552156 696781996 637324871 980888285 349426764 293232406 161994429 495126810 681626 492650308 849238621 891138670 557513625 266498438 97204391 997546293 146599957 818791076 944037153 79652739 986153643 102610523 1001637231 500622128 710532408 262546587 916540547 978150877 637360540 430586564 369127952 742937849 304322759 550422806 129874271 778578114 544575156 249380634 462488480 141729318 795654037 993765784 747044842 556863819 291850609 850895849 32340209 946918427 46954304 901019291 886894735 884714015 401153349 760923985 949253457 491295299 451453544 534227057 615200336 945962469 298680471 703753226 112706804 520200682 73209088 141377563 526069218 769791399 640952357 706029366 229642131 927642170 358547632 20541634 757036455 276887319 525637761 301500022 938053934 311678950 906414426 26204152 86626578 823828347 195224030 975331114 351786499 207911412 686091308 872454782 400196181 813549898 478005656 817586878 498471414 533637213 666661208 150032490 773603439 538208246 358734669 93702612 11402831 84690503 834563730 558885134 18815973 220558289 287909374 323882486 809026686 705672951 355317773 961677910 562064813 394377195 311508916 728208555 268305640 163850727 163628619 215892582 784606323 555483711 89578594 468674074 797402378 53758948 139168959 920146859 387169771 416774881 450347434 56599607 270915076 391591476 394573284 269133148 513149379 68980604 876204900 234620815 149649129 265568706 843582325 176430851 785068838 304318779 748239360 264628527 501449004 609087387 941721149 725879390 690691165 449731452 803161117 607164790 75404456 726780405 484187830 264057739 961648802 714348157 883803140 958966207 816755878 867803530 365538043 988106480 884341356 189455552 161216674 395777828 704241543 552230904 946437054 211968144 904155742 229449212 291282772 182488226 468922416 458510416 159382308 228404417 38013986 865353798 184679644 433940708 166506038 241249851 733214687 648409260 811576302 492340441 807926748 882497718 383533365 655344638 637339034 234055056 374753487 746929976 334276336 851683420 563448663 456210625 496792300 592519160 537814279 689037795 834651674 961220762 471150743 965922561 433997562 156791634 844602802 696603933 438895877 97346937 440192176 990504816 938730116 899156569 492575589 507580247 268134742 702850289 942941950 908881427 409822588 897687771 696332549 221242314 953246255 724566343 957627487 149099301 955818619 948015907 472342147 458430452 485593709 328858160 440770386 837147941 227628475 171332039 394769789 473209799 63971658 843187160 582995178 650796967 44082084 227316499 710118952 169251046 151948882 753337534 89993756 729500394 688495680 307170688 318851286 111445859 55226665 233903800 719312452 765001781 297448288 455559789 323444668 835739765 623293050 656579689 407246486 433174979 98161286 269054660 446978445 201602173 68060234 270842024 82100610 756882345 177078209 891995574 584141226 441292351 589717893 488748385 972048836 910601212 942187973 342453886 369159311 686398352 58273118 477302453 140391132 96162087 606112712 988583985 645437383 102494386 648583638 135736717 124382859 556780504 458390845 808782572 564020561 278651425 506496674 645316289 903502298 783198620 581862569 427801913 663912198 51204519 46841136 102572385 160952913 205238082 293497588 686109106 164704244 188970258 177047103 663835760 646386110 125557108 143698680 923714603 941167653 542502346 488801273 325529252 852596829 691436526 591762623 595621673 422133000 193564146 355200087 52253794 930488159 752436337 705811878 744178562 541261121 183643130 345065644 516614039 397097139 800428498 262085063 633405204 646045555 123993780 584239381 57848734 668908418 739943185 330789585 75426324 126778248 202117914 564327389 837443799 1001764020 620660658 863846328 446786118 152960263 295486106 678558715 636068399 133185902 398085123 614463785 374353781 848255570 550879590 438294059 539299004 515013721 647474239 807175937 367167706 518163248 390135999 579894886 365603205 556216559 684578519 499670118 725237300 297683418 127751088 365108859 688214610 109688898 949425835 414915628 616174313 590549914 538820042 214445043 584494960 351217557 50830394 68715828 46776269 448352001 474956918 894881930 99947670 303606458 431243739 149437234 849902489 867385445 685395460 644025584 874876893 495206892 598508035 449264256 577731008 729413903 540268827 210395207 771969652 531801133 903946780 457364173 675737328 37022034 59825471 131333550 373094864 848309571 123300762 740150624 805402461 468123379 984528475 133730886 269096590 757363495 336705621 601330627 441335550 326606315 71926038 70658458 53251019 472503179 689432841 277828676 31371616 389765173 542858332 383034814 552929096 59572068 766297441 491774117 587706478 426227118 153390880 45666302 418203481 437643006 426132996 209622467 8972912 394919067 547235122 310044007 455802105 490244178 258189646 87872693 844872380 790279149 192716750 703259707 532496746 204447068 9424730 897761383 494565459 448570777 144331102 248700095 741116451 605410780 827328545 896451313 366940102 101279682 705119797 863345473 878588377 496502434 729521119 154342954 437596862 916344536 574299164 860352700 244230200 915333031 147244789 1000663004 467363407 227956651 929216767 752402928 104546466 457361144 668326139 1001462251 100228103 278625186 871683089 953930119 912375771 785679183 116262323 594072876 442646034 544025248 274195378 495085463 729050638 395067201 613740771 71747701 597100333 991596119 49985625 185200741 811737896 508748668 848997747 501041408 961049886 682700903 720670083 288640150 58698952 73695514 742149868 613468292 943119503 558859438 97938736 792823035 232868386 185001054 528759369 544315775 825137801 184541815 389329898 673324750 209836508 622076998 680658534 700521707 859603545 866283268 315216949 272778620 628280323 931971616 290130836 613794939 581723593 542148080 715984704 403352802 826093436 477614486 890732282 624732694 960681457 861650616 136178378 404390103 368405685 490714013 761721912 326965957 868280044 788460163 75544464 577519482 367950839 333101148 593033417 485860699 797611578 454249058 790178324 992537538 907730606 639570442 425433162 844267100 368486208 155235355 116266221 52212475 315613340 605236213 273895155 407638157 330805450 292963505 963375138 867330084 382363884 454326891 444606882 670189132 397130854 268362585 273324193 720346374 824898639 201240295 754972375 5487246 900737350 80575866 174264690 946573113 609357855 578058357 318394475 904078495 847803941 134937452 361809785 316902024 42573744 850618122 94008198 579690285 509963106 727087944 901981000 847221449 693848353 12289844 905441061 562887875 34466406 164544329 478283177 892401063 326668673 392509557 700371447 444719338 668586803 235970752 861152616 896854146 655885395 363046820 140327380 149607517 177655597 556295055 785468743 278750229 506070513 77940272 982941652 334251579 420765430 18188379 161250810 803470396 201887719 507236045 996041920 699212939 162374261 981018856 297609360 608741259 126113680 634929972 171010194 409738318 67373969 130481878 441281835 299366545 494831832 969704788 14592376 209266772 504489563 72791973 927311003 562552337 795469450 858481906 692250497 734438269 626251029 662655191 124617081 711579986 255261160 226336551 388667473 551356976 403821885 879629084 207575307 341943354 605405113 945425647 285935475 743106464 109290289 910576782 74630679 106266365 458627198 429620505 309423848 260218630 720225933 578132688 801601577 768322457 788044 751425132 951679821 269805396 349670834 954557252 912625643 825345539 686282412 861902105 930007723 877555026 979502148 126996610 796654866 898434354 933246514 32673774 524582202 762489240 184535342 146958271 271196366 847916833 127534036 683935944 236154629 648568897 148016087 712882939 271843675 359776335 389458692 190194576 637055588 197989780 698013776 136917317 132892275 286053165 20185807 573426518 188603483 475354759 5834563 156519697 344640576 336067223 934321328 435266501 288799745 543050467 953825590 359117300 337724524 209459096 29189216 438641481 757647255 423135345 505212557 582511132 656849969 209366793 771388342 49097261 105887830 313394482 192107864 24022725 905473602 1000929949 265003828 977873528 214905344 803972752 851797603 224270154 937389808 809447988 293953482 30824790 865908930 571800866 270716644 633016383 859326084 687688227 725725671 383201596 627413001 599374390 533161020 412105380 212480641 857888294 7923643 316250667 870443770 486828203 897499145 985236625 838836236 275094050 252400886 515248110 934202596 970070705 392232705 541156446 698970954 745248789 594723474 17066021 104870508 604270633 556933216 902670 748216654 282840008 376436100 657316913 726144324 793061728 582681169 588591811 303006345 451934934 175413851 688825573 565647096 895164455 720135151 340545962 547482762 161591562 405379397 887470442 544286831 685847853 249171021 445632842 731975480 455769980 156023930 137578352 703719496 857807171 323714178 1001461424 651600300 83796100 266955020 79621311 205614539 285675007 602260889 754543349 287398904 506582011 454950761 788880515 903602475 810551064 102170025 631857029 150922128 923793374 717461697 617165010 240401556 289271916 774065551 933775178 447370182 203643118 83100073 372675492 986816424 568813717 204157915 939750324 440749117 542336074 463609828 396867435 334749672 756743970 891234934 587816530 838779135 380380272 685105746 859749066 121045215 64613654 252445384 410385996 617188004 428714253 335439761 986961098 484703926 555316262 993068690 616666065 278801621 465164332 418161577 932715922 811419259 293935645 109478757 957969302 167232755 658533033 216678302 756658818 682414626 272477388 571346794 183129527 553982810 773061270 760885661 837483857 43610619 255348095 341179417 13550778 394509397 978878256 818674737 475333716 600994412 215494953 701666621 184563829 691583835 81713563 975182645 129321995 437775868 960154059 230043945 880870464 371850567 27650653 739780210 156450052 288591282 491023713 683389216 961749451 465114505 775760891 48274765 138756675 301633616 380677575 51764175 147665994 537812856 944669622 980523111 306487823 912738247 947551688 787640522 897808620 552601846 309276945 902572655 78757796 588848897 685808935 597140800 453902591 701524991 634711880 84405996 765258124 720344514 389410565 3257055 248344778 459961773 667337947 58383176 985661291 397561425 239064566 542345949 894116116 323233552 987162712 259142931 703189433 708892765 559575479 686726703 34411730 721999865 972530918 811708576 937124451 87091942 591129779 152500230 548283437 247221301 752618927 740086291 28046665 146514939 689345995 549386562 960853486 427431504 402578060 837204401 588778307 784191971 736300335 442389589 425977852 77776138 751285420 495815738 51001891 121385003 623866836 107463918 300750189 457982060 838336849 383728961 411000502 998268397 466086271 26848197 218040998 162233541 658997895 253722113 647454927 290066277 68134354 542812751 318816182 323230874 823525551 613877598 661145767 667069995 668245412 958131035 729785105 533937019 16758833 439423319 89350837 745358976 919638616 1002360095 183039982 62529938 835326929 45119443 331836128 213312051 588222483 590660308 637170617 147934201 411130186 147344614 418787792 528173571 894233294 303314067 406251380 483000156 653057057 713831853 860845590 144106690 909719521 977809133 577385756 264632842 251987734 309727081 285587142 423205974 251214306 410703799 194045868 79148689 938567411 317191490 462503361 946626827 581606047 132364591 22353168 619397241 91721397 797664428 82030721 576455692 816066986 281218293 950183247 11982494 443561337 486234466 401111486 875028658 909354115 222876186 862680360 442334995 723262342 713774529 585670466 970831476 215689229 919580072 645429744 415424486 940485271 962509082 437441610 270407942 875418301 365097739 177725044 553324989 234618158 34496245 116041338 534935971 381696957 586480544 61005579 863744657 974391462 291526794 819821217 336323116 318751477 272633775 920579150 326876006 355713693 169922710 953423168 432984264 791834253 557150162 250935004 255723200 235678376 531421809 200510791 31945719 596872995 297172660 190559693 992982451 648160505 488973483 409477236 373967801 155406390 548081353 501405568 537144887 787102807 801701688 378771659 562742059 708372027 946755920 126129783 343074784 459758744 807462780 785052989 962374832 540311919 622466518 499891347 827687491 611616307 735327943 307495945 174912799 599315357 943075863 73201310 229539521 884628668 537217641 557418632 422521982 679390613 7103201 451399529 986086932 214875287 315932627 474724989 161629826 894207101 606789156 52482527 295950266 445504132 154705296 158636388 64990659 488292651 85188304 565670306 740006856 32227730 320046331 428680119 60891172 947415538 913417337 479299291 145026331 478066454 291936166 449187540 869872240 638285261 579393838 110831427 615765180 871820911 493973666 753361514 782996035 194499554 882335328 183293978 915165218 598001266 654959331 759119142 824369183 892129751 280222808 140236285 296979275 517692383 426460581 514463838 270163754 142107155 982557691 717549914 530660331 958510036 989696541 799324948 837501296 298920587 182165329 875868204 564079422 79606747 455075715 702547612 5885099 592427074 687797547 618631330 465572769 757670589 574375864 616109269 103745990 218037317 159212807 159902800 914591519 538883016 264208221 32882705 80296637 841291926 315638896 91958833 343629456 439387931 964433108 712359659 89171409 945102199 344926489 728529043 448738302 112244835 970733054 507503279 33661151 214769460 190627063 732403461 75394965 825113873 599441606 961478934 29641813 447995564 177812587 113957449 840613773 369454489 160271485 342448701 958150672 291957033 956758969 861952480 749616454 862892379 701067002 659925098 64664597 108448375 227226976 345460550 101540775 661851312 1040373 170468046 419066951 228086312 927213735 293405009 455263170 570108603 417587808 312307935 373285825 131452778 708107832 19236728 735726235 278212834 646259621 735904255 810620915 747010146 803792285 15392437 16995833 144360493 137692615 639266787 341069188 809277472 699530265 265040826 401544411 978038780 814905140 805802596 430648801 338645638 895300598 765016687 328241524 78279788 629621757 406546219 477942538 566783074 187559917 434153288 371169715 280747629 343705644 772783766 436296542 841861216 104312480 80335596 280087533 424886433 799322835 500096787 731033317 907472758 475628128 67457674 457518545 685628953 388754920 990554842 673187340 868041700 973407234 984332307 620271783 374968687 894753410 790868340 573042951 683064430 765382068 93658413 150424198 986895201 357474362 958592187 251181126 305165526 619495186 325785878 628034117 125616702 369166110 706333377 701677746 64003703 631086786 584352166 50237908 177106599 946759062 675684779 807209548 318217718 996768805 360025279 89618285 767845001 391880191 458683986 623946316 664651551 624802056 871536572 876550222 837638290 223113389 763708610 773852407 298863044 862425175 808054628 706443577 24776865 259425819 231337140 755310161 420743365 556646625 699092107 134612513 918941472 275973497 254416210 158718417 631433586 378795511 247845662 548346617 790802013 800291088 861213716 455079750 175936162 3320160 309160030 419569356 464068633 760880354 952309596 190828175 260256563 388129758 983413943 1000077566 195277202 438429799 266683567 453699228 431927005 60840419 197827508 360143039 245065687 387047453 591412557 223079561 874195324 78606593 529493404 211950470 438620366 442778325 944545524 388566523 942800917 779572867 204278389 311888292 396843421 906705646 22026805 741673106 991104714 466754299 646408708 717301261 945409825 346538767 711316045 592385046 420214644 628742118 550214335 658146845 12939870 304969597 159277761 485376872 539020604 599796007 750311840 508044503 143912098 180738855 501240881 883722379 787498653 990598743 676528362 501923485 420647902 554866554 337049568 122090204 922916797 784616248 89454854 790180732 296251059 866455668 29919439 419938980 43896868 653840711 285630099 464662956 688004996 282487745 467208611 890466986 305676728 524054726 55528232 37345314 376186618 636776204 167001035 5774060 750945140 200910906 176474194 522777276 895617647 58887341 570828604 668746691 749138152 983549723 149994600 669496574 401062925 620727437 350059478 790709610 256715417 787601651 621959671 910608881 130893706 460519717 794274352 905167741 173493821 292701450 261764994 911781897 984422152 837391680 151353519 590860618 882580982 302888823 984155712 263405514 405990178 422849589 673153762 811762997 373045637 514483052 697855215 714790967 415734215 555248404 586085868 357754853 273108924 670840289 485975356 799254815 263778076 817589831 196753561 124979248 559629377 709085310 306853040 211084615 70539505 590800630 266145549 989299819 823643730 327881861 60843136 248168597 495300421 796083633 108420237 495590453 61375909 311188402 77104052 913463860 436707509 519653525 904113628 13445989 912403855 606751857 652598851 836752724 522405542 777597884 61214174 22619003 422930623 674948048 679591708 27518479 538256587 143716894 652200056 100244507 860381344 736110819 562351780 775059705 880367251 856779176 981487391 653588271 59323909 317708479 121988380 57642682 331458279 329758012 310583359 996493057 367888242 751747680 798697142 950464730 706848614 87610321 949781917 424454949 53630269 909764857 733932248 918291491 946039812 898677917 387039007 929503048 575944095 598932941 626603444 31437775 280586613 255867968 831843442 765485093 455915864 689757420 363018548 935655726 273740180 267289296 633292766 94069719 171578023 176875057 434476719 486937627 498838551 978208399 727463370 524232572 230953099 929036380 309642548 335258443 357706687 1002345270 883053774 831050158 816915837 676512458 797859533 377533786 296213127 155016698 56957478 639908504 378521265 1000046455 524114179 32597991 191847919 301879175 260908893 429968503 156448683 317540565 119969114 749492068 665476367 439733686 125729613 170684631 628167339 169814014 2826609 3467241 576484715 119166509 870417912 79547832 18722477 373705266 581702736 654550169 875337639 230282716 225230716 733632639 600107056 308118227 793132930 589865095 906080391 241305702 837025313 425242498 714209027 174411173 142816203 632920340 939731385 680085940 566565446 399201177 428466448 49513929 630427937 493712800 839044519 783251437 445025647 248401743 462379090 46333045 644535033 315694608 789429130 878262416 176688812 230275867 263186040 715996605 42464652 539900073 773941365 782506806 556076266 306159559 861625301 754018326 487003200 823892639 646223065 466609934 752095516 469398952 116780493 842614140 769882635 22304824 416244141 223671556 612095881 274093892 988279826 719879182 55475307 725306403 637824808 828245775 431093926 780404686 788516864 598419026 640574715 308139833 948020221 632833842 181721437 839872337 315066057 740494354 161866362 713944120 619725936 551478474 235912955 855639688 34812161 540753487 55777547 803793180 605031670 801758487 887169685 63483985 543417966 81152805 11379309 420269995 247260648 626668299 699028065 510712665 936997161 197619611 51208737 134926439 581113072 504691906 99951798 430665628 330851485 628077847 765509181 94279930 954021389 341730685 865622517 452660083 559973504 337260705 35681194 444057644 980568256 401488367 586296369 463613223 184730452 613583672 244731284 191250467 682756162 713115141 372901365 913744340 604513684 79569768 591786069 176352186 244248877 346683942 841046834 511577818 471982078 338663119 260547050 346256716 290427525 402447698 671403793 327007284 432190544 94783308 55030776 185768011 566774367 393267825 565399530 269707070 956087491 884184202 667670424 122478152 748362442 541630973 294833469 706168625 52266641 167260875 383619327 377115560 333850959 559759253 405438792 963148192 574681210 982418603 235500842 439511330 198065879 382115695 139298644 301955994 656995082 634119695 330265760 635703739 38445892 796413420 454232047 196789591 471782699 507649025 782991630 951913441 970732406 631421656 529659010 137814840 416223497 895481901 767434267 914883378 87331656 616927368 45292659 127166881 926486545 648455630 761711041 457824425 446195774 356196096 638995331 845421736 315784909 549322573 229585641 755793924 726232761 62089734 337885638 256578898 777976333 759103126 790126653 914823258 118382215 928614042 391237963 98961461 894307570 753006408 413014152 24326645 688101680 28750633 3006130 759790284 903587148 281516140 737265587 490983361 840904950 778775569 589417182 291494073 601380823 581901033 588646303 149050690 886363877 1001530795 345494397 63082169 229091856 546547704 746195292 753604037 492689065 756841174 388102259 541021953 990690629 436051690 735871749 125112333 113204404 594427334 212672748 892227248 992542756 240488942 512555507 134465094 142874101 24793506 424556704 774422091 22972265 288459777 885079133 208207120 670729707 495826944 54412639 134321102 351591778 266890205 908126970 99140671 979584594 686618751 998861092 552862209 845308851 563020288 577456195 950347952 593473255 9817177 495532859 511724757 317312695 466247455 894258301 853895481 251413711 882104177 670335042 411236373 39644346 785510315 849662759 679311131 861194590 832947890 248998931 118566723 753252228 422396708 205540989 569202040 287636126 667019277 990267549 649670100 80242171 528979755 419529158 859974599 615582701 635432654 293348202 920335981 375018467 924686747 919716659 137935984 54988104 708013800 726148219 496579595 754131211 86283121 856904518 23915468 659916978 793131474 875155264 904709195 899599998 768425846 967933561 246060992 521341714 549733270 769816902 590389198 161549332 553039506 114568873 439872746 77281577 203523924 250652287 114552481 476016173 462504559 396821444 577215873 54185095 38985142 595931506 122843679 239074362 118458896 980905541 61061626 443251924 806129498 51715240 662800891 916601718 657043485 860044147 535602330 689989056 808899240 626084924 886882654 33712076 536307104 439369905 861928937 374112849 681169201 717055731 446745889 666791625 472614564 974781584 94777247 195623360 22898214 879581811 73837417 520901037 496094704 572392883 561130899 230276532 550950019 878356397 249857451 890923391 688645936 370605718 292899007 419991205 691682107 243671717 297698020 321469630 405675373 169552763 656444122 3151466 80801851 461408373 893672781 531303829 869839079 874673810 42731731 143432628 565449545 889269986 387998555 751131205 982392558 710966005 651565706 160916180 983288429 815869070 900236295 61554764 353346162 225620527 502963840 394075649 954000560 553717424 730494461 627281585 13723600 811482366 349824591 821365617 53690815 352106010 101140917 521436517 381335049 487031263 376856347 251783422 525104260 497582597 843179417 998037939 72945666 502898894 964187988 533681280 351891421 887797915 382113773 51189141 787132528 957552095 209071662 451903271 348085244 542689052 804019218 1001129692 163382336 303271273 56646073 141251423 127086536 218681373 771357062 530409759 956353845 764026048 544867416 587063754 379615597 568638555 157987256 256022272 967021461 686009985 648179153 866402800 293610942 944458125 730785639 32429785 608828959 138016149 882283926 229687623 552117235 62195159 709561319 681952558 328982507 92910569 708349616 366367829 139502427 948595818 778021525 645193326 591133916 871797951 457591636 398886992 981881695 490532524 299592177 371519164 168657105 527115154 265571155 179346790 80862969 795963430 70718102 739093724 807087010 2503440 625295549 167740099 309152541 846455169 476255825 217355749 97956518 402844759 372689578 260556953 158586456 356640577 612888313 406469488 419263183 251597646 748954699 272062484 308364472 869649277 323572394 2891648 446234366 604088180 777262838 209006745 209919694 911708681 926478415 560197103 819474557 601432650 294024573 381917677 301591059 21449472 999702324 35795263 941258151 490902228 875073929 181927167 628216439 196726619 797710924 305718191 927342509 559119504 50554434 508812156 976874004 859793494 516157372 108470684 360907958 778679490 304256915 120375859 502901674 186700 422277769 853773832 395536143 103846761 834537452 458669457 480476751 273378963 264555456 499561143 515591016 156914328 116271042 652671436 932339430 360973604 622797211 53463630 325172017 429234838 514839817 488168068 482345894 333183946 355522209 635572243 637759319 352563429 694964865 265389176 166630931 695887151 456924894 837803510 473173318 177072101 549158770 373022386 549464901 551660997 462409525 60109646 716437906 269355024 55068376 166468148 801396698 363805186 303375409 49811004 459805384 414003416 743263419 84127207 744465398 72990054 738189668 810931736 505021816 973980867 524909274 750822711 289633769 520924368 599195815 834974042 304882855 68352114 621674166 495302826 424097517 785461564 396372897 449955082 176276514 885719815 969005855 26498498 85580490 112858976 148486411 857637728 307888068 888901475 472742676 339002129 157254962 815091114 765525510 868766253 311579686 825798878 282175175 535841742 962876927 697103806 452951999 511542339 18576669 570330256 189420123 295593896 349595629 364978228 388385878 83635670 321442003 585704811 701923732 932480186 593292065 7944912 402989434 192174650 627279978 129882387 150595225 813717703 807779661 791133222 134981175 919441525 113841965 832172091 461138846 290403264 907250826 407275399 448289271 663368479 78410692 906165825 836546560 84993570 274964849 747099159 737456760 124369987 357612373 496924118 39086901 41264730 207401571 871127380 601007658 954784819 881957165 150168187 708110064 438783412 507447647 17403296 874000615 73693886 822636216 798951048 402002030 911209800 835148588 473275665 614492375 342644876 266510531 912024541 425157462 873006307 381366956 328138448 327329476 53194861 678955299 973844800 645631815 808394893 424694205 975858841 257673225 839594445 856736704 705149798 932107634 778276154 49557302 355803181 954982233 252977053 360343600 445848665 864390668 722720880 238694404 953866382 133005366 353806283 87825527 249443853 768306313 589639204 73062212 223364305 232650777 131766660 596691708 839733230 133527262 80861720 645941442 585929474 192281038 916645720 21356521 187126735 95138874 761345610 851511500 488647037 213858568 449798121 557838444 870833495 501651692 904284151 306293849 523148071 19475832 431064507 980395577 565030973 817705430 401168648 224258928 450427592 881113887 640799337 824896733 482985392 206159998 204155535 532466500 944216165 858089152 603719351 458411877 728249641 458066259 918167764 178967821 228338159 598017494 333784947 135955183 908067700 462440476 692809492 150625682 826689155 439132234 646203871 753681867 446394255 516674979 714969078 921000985 188839994 868577034 933498769 719475198 60366094 26033305 72401567 689431423 281397350 275500867 816550407 667139792 148273557 500987399 261108394 143785522 720846600 671001347 302072187 947804787 513057683 181092746 761778691 430208234 830771751 463275962 879335760 929357952 140320922 278379090 808755230 87553041 376948824 480127196 610779249 359920204 399038531 988946914 864214815 943210935 993322683 984045118 561709511 629060977 571334409 890782563 26548064 56675201 443892339 569817506 503461909 802264671 21699162 307017837 958502466 74831041 392118701 449385050 204345174 982494517 653284866 100434458 892453456 778870314 910433394 884895462 32667458 870545032 486763728 959273678 705940343 903702225 621555515 224172088 38619889 64104453 465789890 146074760 79918039 942446639 891748413 471149243 473867436 544887530 8792443 566258658 255872751 399923594 619538545 713088961 43397894 950660477 432441416 160956420 249013354 327610175 16077312 830268681 648031974 304217654 814557604 848028314 778646012 370040139 689191116 378609010 282366204 551887359 588246991 79742266 12221155 833882708 617126759 346092789 198344989 991382518 435190089 593387126 21922101 501105669 438299346 47635788 280708117 247459529 155088771 238115453 367309133 467918475 875792023 879787263 109106455 797027577 794270543 910456477 348121424 463483884 202424808 999454393 181033353 774321452 736997641 174718622 702345417 499016924 797986683 94681794 472466258 679353350 202864684 586841041 295494885 215478648 19217911 354936424 183399897 165498623 913156826 338236841 1000085931 9135510 407082773 273719939 310393347 603962895 593618410 638550466 990507583 193898637 73484709 832750023 521175562 164511763 819942416 121247883 799162031 919367721 244242486 883239347 821862012 230118944 687570757 534217859 872195499 385597390 97615654 650958747 447021184 230406556 873101048 840025706 131591102 62166676 781355110 429561963 986653527 570723051 559846640 935488909 382341670 455586962 528541424 440957884 856332437 848216084 781209206 285908321 692443648 971055180 748486464 656229052 965205176 547501570 649439000 253674758 44320667 50755355 641652858 909907073 773506712 200182038 769583060 847563188 927391000 189530756 127472664 970099407 429197213 580569771 432296650 4614445 794357386 708140684 106684934 568868325 231097237 629893886 758639027 470237305 969564143 701684362 400759699 63896272 57277469 575071970 433850038 824972954 895174839 86613240 437867736 700416335 279915760 67591524 127598656 254160607 494019382 592714902 266049484 111582024 237317216 186004596 57130248 925832849 885877416 438582258 659445986 621778996 28905476 919897299 199529490 258819089 827925923 992613656 520208380 956925751 682369073 539911487 399830470 55720611 322533505 324272803 691473200 203051826 988786669 11497757 359330115 878162535 394975368 67665814 976377822 202958608 868225679 176079008 146425790 526826408 7315938 707016118 680350117 480012596 233483097 571266432 465102208 864414541 193951312 489181462 162596974 831623942 710746658 333687643 554381289 915105454 468303114 935081392 608571446 789965697 601318773 957040468 379527760 463379363 251679145 665054216 307674769 972689922 874329055 360014359 242786764 724440895 597815451 685543512 384943784 883829397 355194678 265139943 290561714 899186238 340154964 551762137 484475092 950730950 693570636 721175189 113861090 493323671 698183850 253909434 293770542 701126273 111112064 179309428 288624640 500315707 880816403 35478592 617349945 146136142 68838464 943904545 747896046 983762548 14939438 222496253 324930261 360514080 511888224 442344985 612499482 814070626 337142032 872011108 431000686 549384532 591933025 964076074 960096730 857227076 906057745 482660019 935069010 890988892 349198759 331732859 396171190 934736343 854318540 724753198 607330796 49807979 443746178 937164678 138418368 211011460 431186647 901032497 397485760 196646720 661406438 36988076 778734595 503284407 320254860 147036509 677211465 839874281 957529421 497125148 348833029 549615778 113198912 569409346 459930906 163300408 552510676 262961562 973501037 278549047 622099919 571472971 987406956 206507100 326568116 145712620 744474923 262568250 461010675 462940500 442656739 549095241 220784858 310758647 625963906 963512239 373956452 239636991 357111187 48979697 838026778 168511867 409345843 391551076 844326811 57826632 519961001 315330105 298590763 922680492 546006155 763063708 720109884 709866016 573209499 368722342 986701491 947878667 553214396 250073876 507099533 621068983 449753038 654907953 677463394 932574715 155703905 146198096 191912063 318152530 906115493 729100 223746088 826999367 896854331 362207083 321127526 871506475 122560763 526352672 531639851 926424988 338441056 348639394 622263105 910058618 423650169 375544147 79773187 664661967 193008223 827735440 523381174 182253110 711731210 165482508 252070552 696805039 95459373 638785837 439417896 853509610 514927862 861912679 411192515 80347275 521669893 825189250 332934016 205761135 970553823 555312148 37252154 480348586 13598051 229248909 296957696 582049801 565557536 922873405 753596923 527798364 279992903 298722243 848577664 266313661 560157785 433936847 7956853 679214998 638522848 794497966 58639875 553132382 280150057 288027014 667695909 252117636 959333712 777746333 309201364 995165897 870168565 568591809 502424510 27919945 236391172 887601815 375681400 90072529 173098155 489891482 865889407 303154573 214783008 587700464 201652827 238256017 713612396 98850471 955979569 245716191 24223590 794255025 979025157 27712747 168465372 334756041 384945474 644536539 411622718 184438847 388383666 905400508 499010283 679238293 620930263 70696906 708760784 663359696 431103177 493704537 784558307 532683210 780104263 700950936 824657242 834135338 979651572 311713998 588286029 18441927 115377068 813661090 582224440 62141400 630078245 214752590 527032832 592061166 517891740 803243456 558728672 137665744 498013442 125158819 456503547 353295684 337197154 314691282 14063326 646068413 343571902 352625870 934380048 967613208 872717977 449522207 198347740 158805699 1001152486 281079592 75594737 5658996 27782207 704618477 316815067 781581124 669770234 691852182 439277110 427353228 66367709 798949934 98737744 387409625 442431556 315235652 84462042 232949620 653619002 307950104 693422579 863089710 222417416 845028052 788579704 916594015 255157046 475463271 180041959 173741086 790116829 391410544 371246754 611816561 241027833 88262722 787109553 101359275 271238270 852671536 185214055 158341025 483163977 713796510 543701848 344624476 389028612 42187047 748264949 827636894 52524351 938557859 387352591 570053906 406131000 704225774 11620840 899081356 772847665 404270396 530504910 950175725 960958399 322641552 54951558 7730586 499696955 656634157 635218852 645214125 993334785 205848035 535860796 556428618 626592294 522557113 483500156 23870432 153997488 207363443 927211237 257449941 243486520 856015500 725550205 39781610 3378726 335091275 211094360 59426247 755086007 730577006 611798814 543711793 920453055 634903939 100363256 352027470 999546734 183059142 100477490 991442408 413218341 227319381 9874000 838713131 109777958 104209371 555318945 526216876 462734341 549672602 622031826 555136655 508193802 889929879 925258070 769403037 761145357 982040905 364580006 901194880 250647250 753670368 262852131 296373544 412944413 809964338 802945643 18997001 283055339 613759369 582191200 832749443 755116218 848953863 57387714 651861568 348471294 660627034 771595121 530424247 236446966 406228395 584361459 261702590 224357300 33080751 241464312 246171036 415875162 984467969 84139466 970829204 536354076 590831484 898935138 828273022 36727884 446386718 163538317 47964614 440416697 917534489 757294701 706912656 127028736 421526444 889621782 284828967 197653152 138766327 924662483 57487309 871258812 572529983 579543162 4853674 364408596 923372359 26001785 767365336 812056633 637865729 524300382 728984185 78298078 231075760 534335239 446966202 249546452 743234154 553321984 725804273 88200985 461010480 624080233 135506923 434228368 816794024 57430335 229709739 870589302 534743849 549149381 946790262 885598577 272576069 382120004 873418626 902678075 759613203 933295532 114565186 511744477 642304173 582388415 166347690 179893915 272954152 116572844 904418671 390371240 296729532 379085269 457914718 446149896 938278822 253260198 430521681 31595861 681892307 285704905 384823693 430388668 566714972 43604827 300495934 762289642 754858621 778255913 126861709 904466010 357332574 930636713 947187572 22250531 823842890 452204569 718647273 498252388 975347812 574668523 704191479 883842130 538113742 240596706 23956884 879518251 534948620 876947424 518594655 576900687 59713711 563817284 453251172 105209762 954946400 524394311 513387332 437754377 204333822 156758093 608463252 213112385 91242163 16811363 280264694 951950070 963389573 898080068 701046699 451074876 214130580 949864166 187630004 642886593 563827307 290569827 183410530 349703128 502509370 593327847 297370116 664665195 501992864 8289924 618743311 749954583 1001287270 48472590 445004486 392880717 994832722 762737354 842297501 837911604 779748440 803705636 46637533 724475032 59207278 4709955 258906617 792215148 458444951 623702810 141568228 360973254 345410891 366817749 326667634 958480467 561017230 499225015 870113896 887152460 778756681 814339234 404378948 102277662 805462443 269643803 485282915 733452537 171811163 15699058 692491001 115032968 98244294 243152121 456455146 865089544 40315281 725745727 441015530 709307058 118196487 33261621 236629101 475625418 740295801 625987660 382129025 336619043 710662826 835735854 814791128 810624646 239445032 50077131 919539438 291845294 672033349 44111119 239598834 353649840 100585707 40935324 559670937 644907703 593112527 513261961 498313654 342246581 821749096 101160230 568340046 70045550 828982521 944039264 566971079 642401412 642318133 885125900 749627648 362028627 774261462 804125654 482833727 124501161 349329019 615960309 454469750 468956064 933098941 561294970 747335776 882604058 122669249 974363865 860013849 499449106 652939866 503837098 199454324 611505415 160386816 625356715 217008671 847310819 991608104 745923526 341846345 176186514 379406878 791496429 974697151 2475979 410391582 45297008 965072921 763854313 54907420 413398651 696311407 927063079 1709905 413847108 685618315 23774811 88180299 126422008 133966889 835243274 278086574 559036195 415716857 116008302 489071730 153623317 178886132 598721216 489066648 849712748 286754969 529222645 64612595 55183794 593067857 339180856 138434122 760166227 325134222 71865990 666525174 717448658 17882163 729258119 185904420 163854049 94937575 898085688 755830280 226475935 132245582 518659619 659136224 832542824 311690858 567425157 690028239 354469580 981903901 987518740 129145926 907373413 57681720 362760077 643289457 834068456 1000408604 183519760 775480225 209107384 68736257 862367233 108963849 849088846 267253998 490118880 461866566 794238153 116914208 936046576 393858618 271412305 900211949 76467378 424413699 663394173 99163268 555254357 567143064 373837535 597660372 800192163 320637467 166994900 141480895 733086774 749390678 985224005 862214156 294722330 610936330 756788714 624245241 611049859 762022008 809935720 367722850 465385893 323125979 406713088 481969243 83493898 444117506 545847847 559859379 48447001 212853026 816142058 858863357 887306979 53623301 473491696 519848443 678176943 589413489 574409676 902517414 152905214 840297485 890212241 525480126 97686377 879277564 789130973 665939919 392331647 17184088 494476157 78016300 631440467 461502607 303543435 359063186 988470620 885802009 79388588 371449288 570383537 65607405 765089148 679238459 48119391 885353156 63533357 628073332 652573811 65423483 796510243 442801133 652756964 593386842 83346561 179663125 751494283 21335018 987043646 261361765 340417735 855588978 443843943 258622864 486643078 996799164 360682350 689116918 577931777 950527036 92858727 684727662 108557482 281702431 299922727 961207338 329055784 626417845 692356219 934404469 136443653 923587988 223350260 903531472 747578585 276395151 43012275 468671794 71015587 371799752 482828315 806386907 684218840 28136793 149606498 969431889 271671048 977784274 143278139 399774710 475661478 850801201 776732430 251608379 652743273 100195564 96946116 82217132 400188605 450705640 428737733 792180073 624098451 443554515 473563291 103311723 361633263 765079564 276716566 52285139 688263877 685315523 960362401 118169070 146513033 330120927 244137794 887385081 547539213 696007770 958694360 118636187 247867897 765640188 725715666 375928607 711082854 352043810 949080844 900609697 91991991 429281881 358373654 331592363 749495114 85511483 380299606 110947932 237008565 872710537 495256455 650447671 129891699 336883875 740165432 576356466 683572876 305363766 457898010 488178135 50239338 582715188 427702555 131945629 542982812 904827064 203262435 950512933 997071518 902098048 316229491 797355912 962946980 353110225 603407508 658226742 329970131 210414511 72700345 837957042 271742640 339113802 935987683 330968156 515529745 294352250 68988253 45329038 789377397 127334667 452855321 475688331 661948697 403781963 610524949 129574144 566302663 931744906 11838465 979940157 853033086 84836998 674935637 616995863 143600711 237979810 38585734 251711007 479917372 506151462 65140503 593765678 622979992 739055487 768797761 168558279 425511411 162928963 980170997 199702406 963596495 652828557 853232999 254275913 247333294 344084032 768594904 224413115 978563084 995206990 287289070 641040626 574441471 607492841 240695512 555196413 510664469 789982483 205959151 792801058 60721422 844984381 640488448 568889148 951640497 960930999 324608548 715858119 427394108 628415480 408794703 717996933 179364049 463485276 640435673 816132830 854829057 448395010 414722095 531694332 318613252 402437599 111676435 668209077 166673401 634495535 763000582 313294262 731489827 35150615 925914844 900100844 355425762 556035073 889468009 818534987 5073560 804662154 14927338 136144509 390603163 959811796 336998677 547054635 333149122 456973146 240732112 871583017 56736430 675359139 415780469 997285255 187881773 976650283 1000562937 450507655 296334762 583414521 585482263 13209378 300333070 71461276 467477464 250619028 44391683 791274370 117270513 767918449 289763050 528801208 705113543 548700739 578986494 556357840 974353302 180274926 990963069 898351832 388402164 508252445 774727747 956504997 611920851 771445342 739405208 858862973 621838305 193021795 164764716 169324791 70093494 730329319 459375117 825825776 525950387 136545026 662931596 120898432 658965602 463643983 236553133 530374822 680679433 710634060 523318746 518091608 87122860 480880072 814293530 210587310 578469150 982822166 841297297 681073189 982729386 942779164 59620803 388398494 465680398 322537527 743433935 763819298 271384351 528673181 6058336 46788971 115132560 194734110 148819349 641472865 307901 221639178 386355536 68395931 531123775 67387124 960996524 456516217 602217305 573294016 493951379 445804849 503172707 82075115 409111601 343133940 869324785 271224497 896254933 426397061 385848781 933017329 410137386 364801867 620395821 366017141 523796846 91916002 761782178 108585913 233503775 390501618 707954627 426167137 121702939 768622272 775969043 816665008 957988214 295179743 40259469 668136780 464299365 830463318 708620885 469420850 720994640 402973016 197532411 895194634 519703841 507078308 657973198 367091914 278881415 776082265 843056203 316453275 805734096 986154544 79882976 546764199 854458976 426531120 3667019 201674478 622549635 542613967 615134266 287062171 589435554 914134438 393446537 287479648 415734100 145128721 847271434 595390191 305026447 416043224 903439444 739020060 978510067 77565781 1000942198 382236284 762138642 56896241 636804806 323175898 911693544 856775533 601455772 113011367 983152448 323991556 686456201 1000487437 606406376 148804931 498050042 295598417 957268156 701497682 695777157 301339024 67988186 432696319 107139224 388430612 506437404 532940939 279853304 7598116 25429568 160486783 818601939 733042695 39763214 647320266 635898354 437742226 747350164 693243511 211327620 709570652 257292397 485084886 507326057 379011409 64724569 247687241 579282030 180349958 552877237 311559507 127565680 870289060 200927128 875523418 267175786 1940672 435004407 336990085 582633083 248541882 996987927 571837923 177756879 571712554 78666083 920492234 1802135 217270318 187636168 223520132 403894682 367285926 545915576 735824570 968315342 902845773 926859453 156914683 546343933 867048311 338361556 102217064 383563285 385721302 272155810 506463181 308746689 708578809 974925064 818078025 480328479 168809821 199919658 63200697 249377341 409060747 983370719 532370665 704133840 600930429 643146753 452572796 222988126 235501766 543565384 742394805 692543822 390502868 384314441 37819284 411118771 936551158 670529228 434513194 308336385 622021410 143949211 782961584 440013712 90953298 397381325 175130799 574971141 361950842 65465842 352512906 352478028 831564494 896766922 954069142 168179574 544618386 98619992 538942707 548285217 49112103 717892776 90654262 54329532 939183399 228122304 960554592 412819178 577121073 864221585 785078536 536011760 79715970 968652452 219772957 184844025 895708688 364215030 718130339 200891121 32676515 101161648 192550785 16817389 792841910 938874897 522099017 206781161 319578026 148035866 842140123 59625589 438543412 190832765 6298372 170815266 489790810 715042786 389379601 581149734 369440272 645000323 91423221 362901990 69962491 46661764 91199870 172679224 427981582 83046233 230027173 80753080 532715152 207077588 295922828 550943262 201475790 706152477 249035953 978161007 319240615 495067160 719164096 621026571 719944201 830481720 387997840 781195920 212692622 750683162 373405275 994664185 498372846 374824247 180630609 455769607 44972600 895221752 558625028 514913557 964938767 21312677 893010490 272747484 158092102 561922605 25642026 489896224 830355643 757957292 570158030 390536851 752733141 211525230 478460358 626299097 358603781 317212808 961847759 497396411 633452340 859639238 149837813 398181175 643740251 702123949 79086232 318335496 543015369 342230669 20144855 232163367 828889761 482480314 656620394 994476564 90321854 27820311 752504141 559175570 494296608 786001864 437465338 945206352 575181237 204250879 203303988 612177526 920104682 631778233 830172916 133541641 533824455 115120374 98960374 13841947 492085362 178588626 92342783 495906554 892529807 657335147 229846049 250795735 167684941 808008122 470511944 626718567 228780785 861715138 760901210 855334628 398327907 809476943 159770780 594771813 377769250 540184290 448093436 715763106 260370303 459086882 18527393 684412489 556646059 418092737 565528364 947303864 801891838 63166075 296818547 683468297 825142212 474198200 242424194 98288148 207446965 715149359 139101964 882065988 621406486 893881977 522242220 814338529 94905711 816691545 132708599 432932636 262619757 306118410 26444014 644334039 369862970 438771677 894958258 265753110 410421228 125898308 60172680 351979783 572253555 296369716 526434551 420466805 50645584 896980695 985868990 352539125 730158546 6122263 150145883 43430413 124270064 335639022 174612689 361236129 356068048 961810895 572812174 595581731 52304264 804500060 731879749 249158401 551403898 622936524 325049267 628798992 834546739 924885817 8116078 422864052 727137742 281778962 496335905 847098264 49791384 677902254 843865993 431179727 799254921 710892162 628270126 472385990 837410265 309338378 976173341 988218833 820566054 180278323 775358815 478498662 493514484 7241633 789844591 372602810 487299143 69389510 204425168 594454793 140948390 957701537 738892105 3812962 601261338 114126206 556273528 639543704 17484026 653961000 929701761 551910035 36153405 303577929 279164536 799019576 648707186 413911873 215692272 737599860 852503154 66108769 366872045 550869235 945196054 652575376 969671193 51987335 874679365 69603500 808095391 439874482 337537094 798892822 251113813 882874584 753069149 156682488 157738781 174678214 375687460 673990474 458599906 768313052 151379356 107970884 950421900 145759797 326464679 102156236 285402410 932008243 128192765 571686953 354003779 256999343 818414457 938583823 20049845 474620976 20464299 693029837 263764992 681930415 609103925 810072893 762920246 866860978 665405826 756662675 456666308 200736487 689273933 320741824 857822562 863066425 270985085 85486843 475217723 88621072 939792665 696519663 880305937 413853335 220783556 926565698 818723702 530781172 911233690 909078522 268064611 134770907 452058023 293971379 175992850 70496868 237938081 565372329 25515938 134204762 910924031 872579921 432677733 907291166 256904963 927633727 259061565 622807625 53315986 297519231 748490573 862722925 317998405 222316143 307769092 786987075 680533064 765846834 189301787 567992407 587340058 960257113 611373546 884910756 213558155 75884707 120587917 631742678 553084185 790187140 826646462 561851235 896341963 151168438 815491017 80581968 798796262 116276685 316830817 908668819 212298926 607667560 965980551 795587667 415715732 385095389 638064376 34886590 858946610 90116012 618331651 429238532 556339404 457547180 24299403 902117060 81660193 756635068 966929948 993291697 934057228 189265314 732653436 869280834 16593748 27307139 610571708 584288153 192102526 107788953 321762229 582596664 427101615 418097771 195876139 551082821 743632869 29250429 758258157 569853923 652778230 326281430 21223827 470041173 380502813 627151334 250101657 345851015 165348588 521659389 493493548 393756401 562713426 874773076 126691075 130500241 131810665 769922388 330242923 177973293 468227195 801918329 845186054 475856455 341455342 841531559 223651584 767782174 979191890 157849178 413910962 941687778 81125642 341344535 706151456 780847867 779358162 554334384 179635329 934477935 603945023 221566221 58903181 192523719 229091069 856065269 119512500 918055614 769357390 849516766 215303896 929558585 63790475 977731426 475264504 905393480 442828147 442553871 441017464 470801759 426514036 633334941 123345090 131060046 560206204 283562880 969678324 473666063 664148737 107768948 77452122 578413797 548092775 301314586 499621472 792478051 513040663 578881848 473443673 153674469 377959204 763887371 363798783 51165802 632102987 510547479 925452569 960435640 526411382 967061219 842734684 297051538 553177060 506239525 61172252 266801458 461486533 271250678 296082691 204590127 6078096 422509140 347440636 533433177 897814845 933853233 230003439 680482252 207514252 71130214 86117677 411850565 503454106 781669047 239521417 407131325 599182357 44204400 855392953 603575097 514305065 511003903 374051731 865530474 573838543 979189811 158897967 851953815 689953059 753189157 364634395 463383081 528573595 253495673 827342500 341206055 936962807 88944899 80106141 497382614 568250125 47446226 349698681 374784326 874541928 164675679 313016766 476122163 737400453 24164507 762703028 967913329 457222786 133314078 231040720 207493363 206071225 880714666 672107887 663643821 567838494 258458027 98524091 215647279 138799275 99076275 886249094 842280442 972650263 998016512 782994687 646765935 331341614 28116241 815683302 503288004 873661795 849643649 25904304 486243654 267472553 568308850 675187294 821384146 63802593 850458472 972244432 204979795 257245217 710683631 5829573 377140979 762256289 699410731 68117648 664178429 57684397 210058394 181124537 375601655 660054894 750102305 550319773 393863151 264665877 457179365 848592826 338129058 390016726 732844079 290943907 838963998 475157904 105596174 884792483 299330571 574579009 713481613 355826445 195623249 182595441 772991401 59633206 675312209 748739681 107540174 745123313 877365063 306566618 571043489 391418397 943847823 265674086 284089809 509336055 154815953 495080099 466656796 699758812 414428286 542018965 998032950 344036392 652960791 541650644 55436442 719588142 724366757 758183369 798181016 414159923 228537016 658859148 169169979 672228298 919026846 23290217 996250528 251169583 673960918 275526891 791020297 605458648 806296615 662777268 443675466 649109199 3292448 706196904 576175154 170252243 989057843 154405387 130473843 628997866 234446100 178392016 935528188 170943656 564177843 54914012 655551516 80260921 198001654 650196588 370850503 394112755 651176280 810673489 66719223 22396687 481726373 899568199 338813716 55534093 843603360 981721031 622308870 127682070 724978181 181670534 80605974 175461307 372563808 356117751 442550515 217288285 878728493 890986205 451221560 106788246 993187505 331313161 468156852 729410818 984595584 640824608 814526375 756889206 445703112 400059649 259048190 267014149 194284778 776975289 402282626 122612704 438572660 576103924 719231197 223317958 354756959 873638811 1001717127 161356373 18660755 458420811 597216756 666604208 351430566 523153892 963985307 517956803 449667177 818439647 231700668 240581684 97442391 384433990 6358047 972291737 73409926 911463348 227023772 493516983 171257605 263506021 564020535 464577160 906512225 367841791 940130628 270059843 64296890 516868207 908925855 173858823 993404108 135139869 154989002 973476658 632814751 846915831 595314921 541603983 999868453 262777812 568912509 177625969 19074645 341817815 316827774 868777294 928827034 847655665 411935693 821163142 759735403 435911195 928300162 761376548 609472453 304365565 870631453 174993557 861007027 633477097 950635613 722696098 453888696 688668342 853126196 114428251 662731810 603705457 1001219232 2043083 575175405 519058678 485599747 266439814 166203989 337640434 947219678 446544634 345135676 152907586 14297435 274022894 614312083 598417285 783069454 372277991 97104260 507160668 256317570 206142985 716816269 696252379 816694192 445401706 768683278 448020110 713748190 390807194 908620383 7587396 761458266 94904262 982687721 553568403 538601309 632631829 794329816 668741364 694332820 727222511 364559653 272995462 471886635 506157847 619506453 205041943 185634645 217274102 925004338 457668570 125107522 100278551 893574950 654239563 868390761 520790707 646207493 542979727 100491316 294635864 643500060 697713643 552485898 1001343441 750110534 260710217 829959311 192866022 242295674 510955786 907845382 243839445 288189056 794828191 483964591 238629469 132659856 561707864 241195330 636943905 191044338 682415025 563616555 879371234 381138681 905775028 647281759 645816737 638307308 961808492 512331430 24557706 508422973 727230763 184793422 915080099 994153404 665061421 218057947 46696102 375485244 509406126 310369850 845709459 55231796 456010817 964807065 5204813 576653860 767460596 171047903 599382715 89786140 18294776 623340683 515680608 701936216 855431739 240384028 486748208 453398769 711597174 390809470 77387579 845980503 284633102 598208729 243255399 936360430 528441540 345168227 317389199 185556105 725705927 868250917 424485864 912303960 649331254 471123495 122352690 440426967 751266126 755985652 778017170 729703100 278281821 813870084 596359654 541739742 429525254 435704613 372925729 862754708 841554117 728106173 342690377 249683336 477550458 706618304 65113645 402256427 821594850 746833638 819639162 880646735 398799186 83914250 84220569 833608771 792586515 569379968 207850064 602827382 287352189 472871408 999796632 417006392 831308583 967278855 120288169 537416745 586183774 853856414 603072888 671128901 290409619 502530838 333698846 284746352 775240355 498635054 867090680 877481134 25390348 616939097 251191879 966074833 773062793 191636988 456295981 773429917 437775405 658171349 517673321 686887064 679452884 676506588 428146337 396899804 478551440 179530506 296248511 465886580 998533949 453889294 983362952 289281486 583217183 449805169 177070040 839946704 825368258 903598436 298894019 618107545 787661210 638305765 783967583 36153740 182200490 52751446 313446210 82751303 131437980 119297643 349166129 657011774 642257477 180573396 683058352 320101062 736088050 586200809 355714007 261699476 390069479 431590985 977339398 967931510 900906807 930281309 934356376 534325304 279780689 534468981 407867840 194059344 218658792 642660805 295948102 738592004 436463550 828133371 468857583 167953475 175892800 197245442 560027423 73991807 147331349 682552489 801692158 569172354 657012141 218189008 660530262 415394723 545258236 198364592 133921894 334418226 422909350 983681215 221631481 453263484 150473747 169846323 962085731 476549738 983825354 185836358 434144183 631572546 343218725 643980288 948829030 185344990 557085847 851666992 528027687 548353350 809531211 539135089 816625770 844486594 616325346 967154823 409512320 466731046 687646525 163945298 788462511 585142520 373625912 69986993 619188897 651227061 583471575 107190216 796526980 532540357 839350829 823177730 16613968 599450774 124693287 63425322 89664050 297013895 202128233 542230149 290573371 638056595 546157452 318155633 413289272 933803152 395273494 531681348 69560950 766360483 825584216 671923761 877719259 915473062 929674557 391688076 751943355 24251143 843829601 675240646 954691653 442802030 817327451 558556024 59699224 550222835 233591361 842814931 959992278 548826324 489398126 726689739 441966540 386529140 391010849 606298275 214138782 536258205 654366750 562203339 312036189 884908212 64714309 1936962 523808969 863721841 2178600 730678199 396537731 330503701 523711678 191605353 630483404 529170938 930521932 874058927 34797148 377309091 287480841 873059266 584398144 477631337 902297677 1647297 6476599 333144559 321667389 662253159 398690295 766730144 898869909 743770659 90573532 3002624 404079380 689449468 630840973 568068540 274226296 69134156 365847322 146439626 990962653 98870940 81423173 380461639 887150539 594410876 457952284 914410541 334663921 555157393 6763644 516928030 325836626 475617878 764608453 797790467 962002041 400596427 677309762 876172633 521971617 271965960 484215525 647444956 442234420 61111975 112956681 21335067 339611846 519474591 756631517 663804487 694985682 799895022 906543436 578782665 253723138 71603393 251814911 188460327 754602599 148010761 132969295 174060967 376405922 687846253 177548280 289662078 202017938 299257594 294118325 974699758 546525374 661561684 457433015 203763127 790459184 288448847 6798022 378986809 969019688 206352159 937027108 59828149 742699987 55929673 595725941 196884451 540351300 621422375 289954645 886188248 815635692 712825411 247860493 294324756 220746110 165327328 475345266 3734197 405449020 880653389 672633233 933066789 465870859 833387773 699320441 83422136 176462155 904561270 67879179 543458821 205246720 186180953 32706937 417547170 364741339 596291854 410073201 87256941 151708170 878888975 302606548 321949048 38885968 707981441 805137637 566529875 930272908 829637219 223422968 302073283 269517973 338179170 364879535 749494178 318851167 669138 102008209 149960904 823092482 742166316 171025243 890067410 617298273 180633566 182649448 355640687 747431615 332372473 833236606 686408543 254049216 378024930 740439505 301873204 479367712 911478618 589328983 390364976 508084852 559989238 740815627 873173359 906179009 57793721 6497072 524188174 284841156 784306007 348130277 588751352 899456766 496224986 142810054 28390566 610916680 560627400 521985353 392543057 869280208 769529244 655878027 848842437 612361256 291142674 763881864 338402004 939907008 625998998 933905245 933588936 164621745 446776830 798448929 410643375 929620596 65197023 422132646 413151420 84959197 702457223 726905654 316166450 640638914 102848801 932257170 881733327 172384217 705647885 656084045 772093333 672150745 676456474 349515256 902127555 482198177 421461977 32012194 820655054 854829400 613859147 842368371 731756201 755928935 527752331 967149952 897373689 338677429 397312137 540781758 864277001 859853401 819933518 541185402 509463705 21748114 285014654 835573469 908987855 708000423 49632779 570781794 288034116 662857361 471785353 818009043 981590891 1001686526 51178802 523655230 400967598 41084684 667351003 323287735 665181374 550330519 45538671 219922574 626879123 884704501 213830837 877532745 320758375 493257346 825884821 818692205 867672208 595699153 748563624 235159650 707152419 545946321 483409959 637003460 366271168 381197680 443752832 365695159 457135161 626807324 112870464 890924300 363845607 912447563 849394583 858381681 275494313 815404658 794600075 288721781 972766179 618255885 305817827 648024050 496670377 848237251 141188088 40506249 557138804 200271592 406725453 658001230 380086480 240276518 700375608 922493732 390244290 773061579 560542646 788315197 517278013 72583484 431615152 775657199 898890488 499677265 499596830 484042003 874979528 658449691 165151402 249783835 171010463 559862114 576290897 890698866 864099783 517109267 352404822 998110475 260641574 488047035 302714565 826195495 80707830 719517215 801169577 118285419 883032357 290591290 563161267 236605265 651495208 594672749 43221235 129667774 834915047 116332179 1000321378 971640547 477345881 692841770 335696364 460402758 502778643 396740013 301174373 891695352 838605264 597741527 707880324 18179088 930957868 317029216 648822023 470983340 87960083 312591307 209260451 112489933 190108655 682340428 478513307 191009116 56250750 221444585 851548331 981846213 506614948 812066347 414039090 392934404 634029403 9208494 257041554 594752528 187284883 679347696 7254063 333540816 961942360 158678599 724067572 937657103 70292270 727895571 388845944 410209685 588741543 206952869 929198657 482591480 402876563 859492418 418034247 818225141 388522369 146158363 860239425 979938155 782987294 512052839 33070246 257561265 6258195 839700143 143083536 287016226 684652715 987819619 962436278 732779666 781609000 667259845 310542854 636429135 985368739 858167487 627185383 35529234 771737767 819184148 70050667 78645474 953404408 366608697 99315746 753911501 641726173 476762206 23960087 146979162 799710073 581910784 730114663 217471996 843315315 850934907 423111506 794457145 772553918 955337238 65215102 404482079 707405956 255249807 424200499 384891773 990168923 169214996 325447990 578824018 242871250 997532782 950174724 906638942 317876186 772710277 253467792 325278428 103585525 937016525 607108872 210302199 221508612 514336434 782053462 7997049 133948800 268882223 490898867 996316433 471278328 783162383 190339 96686021 998872887 949947223 635400906 490958337 42973343 399902574 626017904 289979828 540391645 631878664 427523917 766549011 407781623 858591325 791080044 698306797 530874609 84656086 552148445 243266626 429516398 775304584 621265883 818903039 694280088 773883875 593137061 668666138 529066558 156237774 333471586 339241151 315251776 646380713 37633826 637695716 708576184 113820939 355912254 498922928 630141534 198143093 411518857 763701757 105531457 503072158 547063249 782676651 980177796 448056638 266632661 716423806 935007511 205977530 759687169 82567199 371487430 341868051 679600597 259987562 81014965 798976042 358099857 68106346 499260604 853536549 542664990 282594457 102187638 306576837 664156766 229204130 326826270 748002337 48922495 321993425 459314773 831159376 11658633 590153199 671617946 430214159 350523327 311480812 196694759 158053247 649487576 366144295 843319702 328137435 547425904 166034341 488497590 261768438 337851654 722924397 202364030 665393082 856297878 926993587 938798628 461731734 344416009 991630708 324111637 754436007 823656667 707981575 97394389 923139255 340461494 154643787 178133131 65807153 105649606 417059775 38345313 43272602 924564109 282411958 586513110 859797091 71501755 433902586 336141478 12520510 592654697 383077650 732951763 22997274 308072110 668635764 429090520 561020415 182745525 69564634 116015474 510923756 115885564 616357176 36273161 21235299 603554618 847159082 600885928 14389560 444475640 642536917 920577448 87722528 891762602 724063992 385104464 516759246 2930947 867573970 287001365 453474303 837396953 299956165 322955308 679224069 810357268 526581139 766707178 747658962 10531955 713873842 537125519 793374824 455797124 406981669 587360616 85638625 40570597 747135989 456010702 480511213 363768805 811099529 511554680 213563231 118912114 890171691 888512865 773343369 896609902 459270864 950497791 855221249 310049975 77488944 764356036 935442541 516383299 80938369 649495100 83379551 108918363 513218505 109918955 476677918 90014092 129344245 283655676 358534346 570234121 737912856 413461629 819939222 606261261 338211593 498436984 445675332 595138582 46739799 293663406 181790152 762850602 679140695 35864167 110828010 29010253 582285332 227076073 412883026 676919625 389005476 314958361 84954340 835354977 214704478 59498424 348891579 257489488 479066013 525367343 770106246 127730679 24595729 374400953 857075308 510477630 228007067 988158349 407230417 632927383 551729072 326344036 664210230 749493060 38494451 27579292 380649694 690630452 698407347 732685395 834882481 431520142 969258039 632826295 71829397 415262144 52240757 570497449 553379044 472276373 890644290 708783315 454957533 460892452 102936844 708851183 85584483 134104871 62658334 406375392 91990977 156572301 369849882 210215451 312975497 126459938 358967820 606434012 565892281 531573360 498569968 905678495 232387099 430926996 341931064 460262757 153267780 843684411 299059463 861257358 624888118 413276766 496882791 493287766 365839700 246240162 591635377 597026185 256306541 245154594 475391755 246394661 950382771 931345179 758425137 535317528 548129522 260748928 649036584 186938902 913652339 322662060 168722310 763998049 176901016 1001732895 963068853 682590680 777866243 198059767 757975758 857362311 699164786 799354522 125866408 656002744 451219222 899536429 551925879 606202195 985943353 28237151 521126543 45335332 805767907 428292187 667721026 307246513 469926941 390222597 134468478 830189828 571954635 266506082 819373945 300675145 737341242 355901467 90242721 411627508 189899664 484172956 738092903 178939448 436338723 339473563 721489748 671745095 285403606 668710836 814646165 836678057 395291095 729300035 486318633 4190617 22951179 129116604 965579935 732413065 105633045 866943760 346722806 8573854 719356512 203150695 248645369 700794667 339409395 898912957 274461184 715908666 334877756 648790235 723020913 117264967 545701192 253030400 546694713 764651680 666955759 744758101 470705635 751623175 252709163 721691850 744975520 729825119 7406065 373749042 132261977 988251405 131786357 800595593 796901030 952847560 102846204 588487296 912228599 386556506 872049962 664020029 758892661 765052321 950748820 466039900 503821213 211498295 506480379 153446104 218047875 280053207 782001339 209914215 477143895 141201567 668285329 674157248 52899561 590890908 835325584 838362237 799168018 260232856 312242922 35828919 717768241 175925853 157058618 450841111 209252669 787000833 351595986 550429642 473532967 306164010 892650365 844661186 796090591 3046583 67097408 359342759 780891355 971977086 696680255 177325232 678684802 446535923 421524233 838391589 884636331 387462988 909871115 729203498 203183618 479206093 911415751 108334471 246509215 268491534 492345711 671234500 348502034 156150727 718503677 764514981 661312637 114803588 559631889 552176497 222574599 821268876 6008532 209894700 143587247 521187276 460918032 495281785 843412438 792775580 185417665 282936201 45711406 250529985 252853935 784561 294469169 875057503 553662961 169306655 81184695 3254224 659023135 289409489 925131282 134162152 462733505 843813511 989733488 744558436 245812095 450484244 357224051 363216236 497412267 497547777 793163625 852033702 395288956 362941978 180046738 283689421 20126549 872034028 204274488 132245564 814766883 250905684 278632459 919027565 571099483 575578723 158692669 573550003 434421715 593479392 467741140 448736604 673675065 846463784 78136398 176201560 849554340 365310291 656306374 977623102 386415680 828101230 45188593 358079848 980160692 14687517 405024841 731060275 917217065 495324229 1001753952 821502723 125494795 260794193 688411531 631080567 427689060 93779885 164661685 792145474 613820775 493553563 364786228 485769521 235248128 264893864 903659192 871928014 18068996 676900258 538746328 686705661 382661250 246218163 783949854 936021885 562350382 271237565 796714161 422372045 296860973 971099133 200704622 639894949 719090579 237510821 346207082 832261845 211327788 802326691 775611235 158113793 674225289 138122966 377195259 243281079 988491064 621481288 563392221 717687681 356086191 467610831 31161012 445852141 637217426 166910796 944327220 685084722 373881352 914143192 884938632 114261792 98543877 358956466 627738776 507332713 964738067 868576999 816631956 499654767 897035297 972830854 621797794 762859705 75442187 853906092 568226181 572880912 751140304 545628355 298763601 688572304 411550430 506420725 306176105 504227699 699655787 106852616 524662941 837302801 197055932 792440583 426477681 664085112 53305058 753838003 527060568 427725715 193553140 684518359 341417126 802760013 338403339 659983754 99382542 858972811 825711059 838281155 12775162 565462672 700435712 876535590 565242385 996542643 248615324 150686327 215983105 146691535 53172676 984626663 21276648 637514003 899980341 672573555 708377969 350677697 769617377 606363661 549978807 690839116 506047157 135800693 420983395 251369697 405487654 710218872 133658719 645124515 810639309 132006785 873118596 843687272 770100336 646477829 494735607 38519080 660720352 965725026 954554853 26059299 170909948 711399370 498728610 287320680 623314698 810433837 176042067 584870111 479461802 187902878 146991238 529308011 264168383 656539863 383661055 871819831 584856389 374010192 429261552 725229671 271344857 603794501 68360234 282561757 243534699 799140011 708557029 128151356 767809409 853180879 218920884 687411535 921023807 245019712 420996276 618294876 352980593 984039113 181454796 713264843 553647384 382504099 720452612 291068992 345682644 831805238 359173512 567817977 277035486 866904518 424374297 40759432 69485049 353344253 878987596 114440214 467624081 61159257 143323458 113758977 379507441 558307484 915483287 114921566 265950344 934683555 187475961 116402906 89470753 178466773 796219685 649365079 680548516 360927439 615242408 507732318 284957888 686116367 403923584 661034591 432544310 869487317 812229866 774349509 307048787 120150886 837043480 263063464 481418741 525115985 983929716 48854276 905273740 738931327 10477551 8876822 91056571 955513539 800956430 521122256 361970416 697868578 268363212 592984234 605872249 871885693 628094216 953233092 502855920 562541829 690432181 117338597 105290207 987819174 868446056 815008788 758944599 433422941 681214373 997326407 801735371 520026019 311847681 900066451 66288748 34252 281619264 814974248 71679404 970240653 466295826 270356448 857786158 680320822 687791812 990341573 939122407 183838385 445809122 763884339 801014491 536434675 416611671 880728768 539922648 911472314 422748227 399705896 255592644 890525968 451137080 529780941 871821897 1398041 154115104 8721108 739937893 840613194 641961403 165919514 694600157 41413860 840856112 594537043 240288668 626427663 543782785 625367490 554110696 414767879 636503302 108325582 389879210 676416746 805688242 178689955 37852471 831198884 99329894 391185013 997635256 219376280 997699296 250953915 416885404 76870588 208189722 371508713 291158348 437404606 396197518 231577999 30287293 495776903 826239805 816612632 377493247 149822679 344898236 938204407 251849228 668026381 593538530 880378624 1001001926 425340145 371731415 904542059 576345401 242689472 844539478 372743536 121394395 566440608 380425047 45170260 975115285 655425221 391677859 688138624 574392914 322420258 597696022 96996831 49856118 349460425 186693617 97224124 542727572 611825229 719172588 800105103 502709140 828784945 776174779 623142588 771957026 652136993 836258177 40324914 749184490 62968848 174676568 542925449 45381388 128924838 385237949 192677825 3036674 234172788 488775321 192774145 240438481 300052385 340991789 561107646 395864137 290776616 139054239 143525415 805853203 925478894 24369801 633058779 613330021 547784845 181482981 632539894 544983656 525201654 551622467 632169850 354517192 201406124 204468508 241821055 173491668 165412020 553745069 470243214 244867075 777376593 286709496 19169071 479061633 123257810 901879124 196774070 72078551 874464052 544887835 624911218 657507588 221432696 596222088 355563057 492202569 379618696 719002942 399704667 357581849 329421631 734709367 174510671 680536560 174979470 968388599 804983852 620420123 150809122 125272543 675539049 413002714 796070030 677742908 647297118 197299515 307610768 595301933 123084532 521545928 576710366 134230749 139479083 371453388 38532529 916979566 829234286 601330319 986475008 464305785 322417136 256981989 927510535 822471724 650475165 607619389 334530827 627787779 533518745 201616433 877499714 383385756 662453760 747043185 130002780 207504742 286160822 872963283 493492399 563428331 118226793 165778040 968047706 333716675 307721891 476118399 986603646 200993279 812553577 676417444 16763547 268701759 581042216 521990259 170777306 167137393 357985273 647567038 769992684 714646442 124764937 415315624 83868905 724186422 523438708 610173856 924335475 836329287 454318614 932514513 781670573 878532297 220715202 661620958 139950416 217069413 294817842 706610212 119585145 90007883 910612222 442426463 667250407 478494043 433663396 884259411 932561427 924634447 881796142 814708267 94836401 659036203 798682408 199999778 453515440 868168244 721131792 723102988 205160567 22733176 476209891 468578639 662530281 88693494 969329398 809254367 795875857 644714678 840400865 583687327 904170661 771064167 646127850 483934321 791143986 739669135 201457603 481785572 166713836 91461009 380265606 250007500 485710851 667801075 737875526 338289553 4171317 734229088 47561588 32307640 128641980 833358859 987211861 253519312 258343855 714873423 800685619 181930608 729295269 266515242 289727604 455057856 65437160 676894767 702623479 598474310 300542871 721748705 857821547 332537856 22032789 517076864 187223083 60500722 325131880 841962148 199910356 697756093 341608140 295237152 582180926 873069341 932423433 775559082 661135133 388327129 588908092 87236939 279121717 272567074 740986426 523859810 628267236 894325787 348399594 168037000 606604132 274009252 571751154 401893786 658965779 460027474 71901698 595016615 4607514 539576823 337035035 517356229 586051569 283260230 727418329 427749884 325032168 113308756 923588892 8860572 653215308 413778590 138174716 716904010 507166529 226537480 171721421 836316467 853856681 918007787 809361341 171990041 801112614 532073198 825792620 863388267 474052504 212916683 153697648 613544016 310216664 114686321 379197183 938153709 264588714 312871866 928349313 556799764 390843428 268573025 377763822 129546686 888693227 336823428 283417576 214337072 479147696 373069043 797751220 316281694 569193620 755047824 516473012 574445681 842600279 854075203 226943059 562072314 748446395 724150076 172909399 27667481 80705318 578872304 874997300 880260867 88426365 260062945 521142828 401999251 36242443 309547129 845269010 439979456 651776315 874324747 652830376 328945182 681031195 365908324 724202961 595997615 56663420 364227292 529733436 590661807 815649141 23451898 752719494 32495377 700572314 36200865 626735294 687441086 744239626 156716820 604326963 668821722 561681957 177814038 653949996 197873148 357405871 768144645 412311534 679241837 42483817 188780159 59506414 943848253 169982426 738542075 391136673 45949729 853732775 334578647 92615239 52301160 403021453 672930294 742495599 594675766 998935661 560094788 77902208 753293947 192449327 1000140707 838147514 365454700 414389527 147296809 60930819 546622677 28616952 221183057 720244499 739811545 793440358 116712151 351358920 488351867 910845683 71222964 661641943 104278823 238467031 334837250 979949373 873607746 163484439 299670417 150024625 784087315 544961825 326593316 791945476 159859945 672272380 972594292 389535174 182228114 850123813 36647484 227257019 971480070 75344463 983018306 724946731 366345506 940009280 693411202 701017507 383731630 601753912 558349741 681819895 977441793 715487165 277876936 656000333 944443527 668830312 925459934 771260095 547593536 517293929 891480508 381834687 281007359 466315164 944934189 630385529 543305896 819556030 704223021 515189437 114005861 268988749 907084089 194326975 62690198 42674703 576040605 870301256 70615675 34577849 220554206 412574942 31851945 974296650 115542556 164929077 433483262 904537140 59208786 941008775 300489271 946011603 815633185 272581512 990561502 688234284 77418426 29930417 479085362 492131270 844736474 412989833 825065673 822167343 28765643 39965730 712018446 845390299 696350277 256212963 226427394 587283129 555076971 294259016 506020607 601423686 717314267 785926931 582897457 467207478 543695875 664233571 544486517 365104195 756192540 616996339 21824410 312319448 611505071 218797690 23763958 133792596 972760710 745465730 338249738 269299798 762714285 673371533 329637864 671368887 136131706 599506418 796833970 943425605 913395198 862027379 385328067 593234396 781126473 591489127 553847473 90490483 137551566 188261516 115624861 442126781 829446669 223258806 283409953 693213190 790596553 943362364 90705682 427892672 920319477 150199121 740483427 50130875 860665723 82134185 742167111 409544415 583815502 572064879 50219195 339004842 908562872 642835943 376671089 562239197 783547763 461385750 742543112 933921207 242961014 838545918 92214499 74959634 370021255 523287599 805125060 498886827 582078716 290113915 367681568 717696114 211136728 74109966 658942713 924946737 904760147 438028158 328444088 542212663 418086397 341908781 415222718 354712850 43844237 970534732 475923487 643766011 156308085 488900097 675387034 938982537 587973371 650372919 395626644 489416479 881671869 590725871 827325938 417666167 100072976 742201517 520356244 651234986 275796486 370265959 899051130 792287998 743252298 589123201 423411941 573955676 618609664 231813474 505758740 94847505 768673335 651320044 527060841 43127206 456506835 459980130 747133200 760731130 895547351 618312444 328665510 184015854 657557674 336236888 22983684 91630366 512364116 116562336 103708744 42499227 840244218 758999122 579785974 681338978 716186559 160340088 376556275 125848198 336103626 366940156 623226951 814443058 222528863 120666640 951923449 830159171 95596730 585990732 236709908 926542965 688022074 295946011 650609225 454817105 522587634 966688131 9480593 481787985 367919233 972517244 644778587 187591574 503250829 195574318 285482755 613230961 874932921 225052515 89397084 678676403 592728698 550427803 1199266 300856149 922727264 150018850 614003845 562929611 641885887 431881301 146938013 927601279 219748966 739790239 782037225 379791278 865072423 898942201 157915666 988299207 341677854 82395519 565346204 85605042 154079349 146684891 17926471 746781315 169493283 785095884 104809327 621315784 893262279 136238059 462089580 507815557 636755623 543151378 476446627 843041496 115974371 727067206 720435113 36037762 654837027 345279715 236563579 791183185 102418256 744509579 488957218 376293635 200977403 201243575 439479548 825434050 821626773 275259924 923014541 475314793 96342222 992926934 464493480 606062354 737721429 651940968 12184254 750329415 181136281 267828008 469891899 419524205 882074575 833550539 390304829 459196044 540286947 113817834 896447281 954714496 794044798 758957484 902113533 147982158 382761524 668332408 535755194 761361575 57148177 13111622 296302500 447147631 761524515 833993244 267964801 868637540 334459745 204964896 140413763 352090920 314127915 605471726 185868317 401733966 628788558 854284453 528567314 330812160 553359553 949980697 259567655 744054413 893479883 558322260 434177674 964482982 291682965 633797997 470491461 880606551 678273252 957919809 671986957 736672975 71182764 761632851 57604156 675782596 301660867 797168485 716327655 347532267 979388446 556467565 789041279 503526018 843675581 103332981 1001925690 462035579 184407298 123960675 433376089 130071238 614948447 346660188 893523346 91173175 385552372 579999063 367132527 579501114 858476128 368309583 574697412 106060515 210203689 230636533 238949935 675096581 818468754 574038265 827806040 341874484 732896102 351463896 280542593 53032191 649857682 431220373 799356927 502577626 773493228 606732497 78420066 190154318 893052568 872946534 145984 283145946 589397763 6903922 641945577 888653515 801017973 81434972 607888902 334144630 367880806 754223823 37367826 959664068 565489786 920834820 616669192 795532149 192461577 859243443 63879458 431759732 359479142 430130065 468330470 893573254 450942096 437570968 351144808 841451412 445739050 157115307 517360016 322080091 265732469 897999209 674038575 364677740 289165050 132504956 116075681 207986451 215156720 600008899 586636364 762276597 333335894 81677488 607658956 376331311 642932920 359179791 363614130 11426803 643739224 418711269 841227764 475330239 928813719 614564164 284260551 716827990 990213540 436863206 861319201 90953310 779183010 650819270 314578978 171633585 195991979 575853330 765721350 328544291 389998674 87969517 740442860 170819018 347659704 181099820 228565741 411136253 475707583 95129725 694618277 198383207 836926290 446309180 969995547 593266819 930092017 107503781 614548791 338447951 530931461 207047894 971266929 197961829 933351844 530197213 724111363 473810387 539593706 746989278 146238712 793815876 153424195 68518600 943188709 300497535 886733967 200641235 749308905 707859964 68192608 167106183 805183667 602383457 790607140 400263940 551786460 676475864 941411801 929009282 668804183 46578985 365868178 478158899 987899004 521449568 682946182 504940507 957695205 839831399 360535828 824700622 472251110 442634232 962289377 367083479 710730245 541323200 593339220 472156903 271533445 363921010 513217393 553604306 407288379 522936890 645985389 636661659 820797804 461979629 286979769 816826453 258446145 672614558 557050426 445347705 109948615 579105024 795685774 739618131 38414922 636099865 656587405 9206741 523998695 173480508 104772041 75515829 210402223 65851172 684369660 530137863 460898114 6115684 416199612 12834239 81963429 148816091 214088711 180178350 252587513 654966300 160095205 446665200 328632029 248008617 514393077 743338399 366459584 324583534 399272457 22932063 207536491 849248193 178319384 178293969 892289478 635916204 906870867 140394009 356913765 381950053 884114940 822213831 503936531 877217466 123389109 817093147 921228252 963306051 113095201 22237085 273756596 265973539 814790531 771262569 224169041 4614660 198320276 769957288 59475867 18675184 557028027 110422359 922575852 469097461 252075928 810162258 918089676 804961238 760641971 839802999 993121929 512290572 294913084 61034342 399082312 25783490 286727714 476132568 417800556 499796938 888242336 989560352 648523155 812463468 630262333 164332769 831675174 810479895 598071343 694928535 650794607 253934920 553645642 676324438 336394705 289728009 56612477 515744304 903315667 550575123 836455723 126566522 119288701 125053514 709054421 566291634 516445044 423623234 975481008 841788438 384891621 271575834 132249686 144290244 762878550 572963533 780315378 193629723 674319743 270759709 818231808 531307897 279243244 235846556 208031398 213535949 40537915 592543822 632238286 589686695 649454728 129453433 259892242 864965245 66641486 757630464 843010219 463609032 61783248 215832822 698883365 944120570 918875978 818173735 570265935 720612347 25989631 855128859 468062243 141080766 922691399 978836096 146092273 17170662 452480240 282585348 803918480 904737796 655598067 874546881 394732407 873136447 667163456 593939817 51505195 513756100 611674558 568270497 653994602 267436524 763703674 597042200 620157186 985194398 527871460 489737566 325991745 219273726 609751284 456982367 692550260 405370985 532114236 458942547 305966542 776581535 12514812 955646742 223341044 397144611 603708224 382444090 390711301 77978837 620275041 351444534 556255113 814090334 829463479 411056768 192980935 206772806 279750242 172607628 392544896 365279007 854208 956119553 992862086 584172984 324898124 569357944 430284996 3509548 127287531 69166808 563624013 543886390 668923588 632617961 811667180 485849799 705497590 88272976 443707 946091454 935770879 261331790 230879796 178380010 894078934 621527042 894170280 156138297 721294293 851009068 426305239 972346608 799156805 41873524 429306045 675770910 184694121 20936657 285556964 666200806 149735177 315467747 527698436 274482745 859687812 543444962 922690602 800474037 674373322 744216065 690981132 337043879 319010461 437385324 392937201 708789582 624392137 594512168 559464676 696153427 709992886 993267308 893836963 146588907 76861284 551380512 973108619 152808926 30462047 668912835 437929509 387747608 372133626 209497202 149137267 935586362 301163351 316675151 493581956 732566954 632526410 22826034 762238579 315428013 480449239 988332164 255454889 656701602 566995621 666260448 655294757 739745869 175738324 770644738 807098652 174126945 826132621 575258936 294678592 834012129 298082743 691323004 278246333 35914238 164306981 113283530 791765505 713708635 565907023 630203596 997556918 889295709 308304371 53272208 595467948 717612472 896080994 580956005 757397300 233613308 908859463 858304329 168097193 933452494 970086837 487302953 713472484 966390807 960735862 995901392 958820017 608121010 500763368 575880246 680080163 733960019 334857408 480250584 250710606 892315274 141327191 497378151 94553961 793132798 254190000 437542881 202426119 39249381 331774084 894440073 878585803 591222280 573478744 668320742 791488444 578423227 301456894 776186822 819604049 230738056 176811424 281154196 985359932 946470294 341479189 222186931 833599960 707220224 110148565 261198258 994247380 685054564 485667841 557542728 738188361 159741599 159989097 536840805 870557162 1001858884 446180186 217594490 209121841 726053064 247319621 399722068 902673217 530888584 711316895 604485575 995825469 1000774624 320775238 247562841 633958699 986780527 440307845 848530489 429411274 279342073 413415560 947099481 273055577 3112805 847960654 622371677 189592149 854122066 282508065 616785124 532383060 793685984 532998120 548674060 490417352 98593609 237229695 762946263 228300704 985664453 206701077 455899129 777258921 677776878 502607197 56706391 750004202 499038077 296043909 276983501 439546048 982588331 1096232 315834839 565491803 410524377 81544115 422397886 400409996 778655814 616968380 514648319 940196027 970062528 241526452 629188041 359777998 344051909 738177794 864381210 473970282 764074996 92141462 172418029 993233582 816014730 609807479 492968150 57287784 639139229 942312318 468873944 51936476 808199174 886118815 809092744 260113688 743246862 436647935 769010111 993567397 518812756 139941320 318580173 62009812 174001036 229446370 225865818 870100540 356426009 796333731 897542125 595642477 956445061 784277732 420768260 499864822 311886102 247427592 198079341 912102877 956969491 869697471 237902832 95843250 59841551 116292902 118181150 506888888 954245410 501018190 940242971 605472993 508271030 74257025 631036226 103969422 631450503 186443358 2463898 255947364 526439238 206514652 467560 889930571 495799363 181312795 43728966 219687950 496483726 376901576 949399849 882597792 929462034 990912993 326008623 343081943 863282893 433113619 235121102 620545351 345032470 460692715 509856663 341555579 968186680 223695331 627194152 318621296 443869881 572175620 260737077 130433554 880134380 694806190 697882239 85649664 657137672 582736234 523920701 933414638 385162839 196270091 582731981 217310305 465422271 405377313 447329514 780119903 403719012 694775355 441752873 2471252 967283426 603820497 873954028 145598684 124731339 769446195 870262502 884448267 926995511 886971938 819639356 952038350 893948260 122032870 859411960 15221704 639283025 94657160 61090606 594772590 194994172 157237286 562646136 194669709 965122554 997585430 130344823 703668388 615763825 119427366 349157715 162067705 208039182 632724213 119270881 294050351 160454311 445099323 99339936 830125385 146649615 91393905 425167850 835914723 225538668 337537291 977842261 360511548 243991262 541705822 612876727 917162084 35376389 286306066 347992848 653858874 392789624 139553210 888591429 429666305 40493023 952972115 611112494 450389748 685450129 967882680 954142618 28595689 405280223 325480813 221573188 265713399 531526006 702255209 828532545 826095564 33080448 527272339 750873323 471757956 670995656 265558531 428076061 788329294 746673173 129407703 487250454 876171263 83306297 377605695 203115370 350343107 938789110 227554877 402446001 388599964 164980519 934484760 494993107 660629294 903407312 930788727 235767631 784291229 495617476 211320377 912792305 92211969 257459774 360262331 566766465 146547073 263313041 115230432 888217685 611284861 613377063 34507703 351909933 58993251 796581622 416301171 412617261 549023401 302675659 7087586 877086858 281092387 629200793 596021552 31202977 282350671 992888275 465916708 361393925 332200506 352093895 499543332 53179946 927927743 553218730 899905356 215705279 424115124 358063591 577740948 447590109 246440560 359595351 42691814 129973519 995100018 944446428 292306052 260989618 818172466 618218084 995684584 314115840 396679873 449418797 115769372 465089812 669404400 552289098 300073792 889636834 683111544 221549897 257158020 341427101 121199349 999882070 53180152 273186221 482138305 404136790 591117249 664513917 867597906 656124636 15365504 536233385 522149383 179772429 791726422 256879097 854116864 780345416 606363089 790388585 600670621 444413278 372018714 595796666 738363315 520692031 33639797 14460842 248401978 954903119 219206565 19844749 163104735 540713148 831881872 374916087 657892726 608380373 621837695 880536416 707048198 983000809 1001328040 141179154 383697382 174304862 104019593 855279449 452309725 348062442 237115080 726557175 727285867 318517474 668599282 69440549 316497200 985882400 579590375 533604053 668703301 219504877 939597611 835072645 875865798 889195563 277392830 789908905 810980240 177321092 233244272 153371933 551852324 907579716 196906783 200721785 542886894 815097010 772207153 314539827 46601115 469725508 900971696 371358576 54572645 357114657 514543232 176504693 107209477 438369260 396101692 847827925 676108431 613275494 442878865 766874996 258410999 565903071 67797237 3265714 973278943 438368550 633943889 25892154 323709613 34370187 857136990 807509048 498940813 952562000 348162980 758102552 424887975 709485029 989085948 862286285 10442691 33760193 442896366 5529676 529723413 579827997 382638465 66374436 34274200 337906726 270930551 909119056 407727218 219143402 171142711 834807712 802166855 338230627 377622432 18453011 867397434 193030701 760850313 648102308 739079404 294901265 29537103 206734359 817177175 343306607 52332449 639495059 973233572 504890523 158481639 280243419 468512564 848151657 961829370 426156182 621330472 387103546 545761833 969732509 231665911 815483449 13572542 516998049 910066299 954275805 819866513 499001533 892416408 374817389 234376857 263643739 324237765 281440300 875036932 830483109 703792402 459620875 115437386 978990136 231736693 332172358 745488657 928809110 206151542 838021475 75208520 957298046 421498503 884472771 75870334 196213281 288482801 96673683 365813929 139492832 573145246 28719215 570184584 391717323 6740334 608004504 793071838 379360074 23871479 575473737 872397578 433867694 596458108 798840593 981797107 64070625 373680643 607936103 408494881 892104236 840536732 546883675 734182409 101937962 432844602 828271299 822744557 346727137 100982692 734491067 458344836 384585029 888463977 899078007 407261024 658980236 8374627 993819823 226460923 521559636 29604123 300263670 966834877 685358713 101513429 492694712 748998887 882749839 413366497 161776448 132009655 988404558 319315868 690344938 720597067 731928628 769319448 719050077 635058339 70683025 704857349 167259565 27283599 476096745 547336690 891511487 393186190 410515390 723108470 540707551 327943532 242388839 178495861 19329511 37527715 325696022 987861864 762962691 919364993 133350221 156675361 759700629 783319907 805209062 349207595 115282728 6926602 270036856 972618933 73269824 737227313 817771503 359092437 247743168 700162199 631486962 611102726 670198584 149093372 248687376 21807339 245338669 133225657 810762979 830316591 474448519 163677860 940097444 391905954 205811348 910408990 479955101 619661505 996656161 419579214 908240790 978750578 299632702 625885258 610932533 600477131 568636967 889696637 922495707 401439097 843411676 246817876 454918441 599128479 408436022 55288812 315642304 495529187 717498260 388639084 67035649 946475088 185163289 993715482 884477877 847915740 204443083 544326352 149243467 443746824 208946366 582185323 634156021 947360630 472986441 550170309 904855462 603281637 122515940 655949111 142360941 673467347 421182340 940141886 173890870 731455501 419746773 999824030 179520717 192293157 522178765 2253713 637405461 184520884 280669321 271591175 983657001 405611644 927280200 861295981 68401172 571091655 284149577 369166035 885095586 359645847 99524686 133396549 302342272 630175012 570035684 340921910 722716801 679168954 311105627 14406940 746354093 624583408 284269628 331759706 92509424 933635060 971108234 79739645 844947117 892688664 197686231 249466571 114216526 241023206 346865296 200160335 540097073 601743036 772534141 27118709 20407087 363455629 568008848 354324865 478307779 722122923 60250789 57405269 948789663 205524297 891396471 926071836 723724953 211384050 723512482 869431934 725512853 489966852 473739334 506870780 572461704 421916303 188060725 656995827 841682777 823925296 920239864 199765958 9402605 10501588 184991799 757831651 435553555 790851524 945972253 104498810 671573617 533629812 933214783 665677879 975936706 948797036 298780537 39105507 433446836 483770741 580309843 394165542 526614921 283539606 563290572 525506558 912334450 650190378 72283955 71747456 362210170 953601653 150868476 631372834 268701098 306703890 459587216 65197453 161743142 13045504 420823717 582989535 611920196 592387142 860735315 335865064 968937184 307073049 139185541 784976039 398151273 398598020 575583372 121885773 52306439 966382992 820275597 28790739 481332949 336247247 9328678 954290917 317102135 376007659 222458539 971221370 172329530 207856023 813816745 264433211 437745459 266563241 307554826 537498155 304581048 522883325 166092999 98725128 989920271 298646741 424845696 199604085 287357181 38336866 573719848 587039472 868015935 705810770 845907831 991619042 875872431 840159541 47218070 910239729 284547570 604369439 205244760 524764260 717769204 913397531 761614801 12408570 387735878 555864288 472740957 627607922 161578233 258669939 601060721 332999268 340720009 433955566 21390532 630888770 703921808 985545139 974333858 823287372 219995364 150578025 209169388 204076726 387738879 108235527 891373262 105512604 97534632 364325497 802636766 715789546 286293480 615283050 10524554 737827720 287491191 330404753 749006086 437410768 952929883 749803530 711616714 12812723 582111375 884207322 473116070 825647110 314608155 516516055 254161926 338543762 445593399 413979130 238183522 853360280 991885669 89287402 76506774 953861943 995074357 242234146 994171244 135559224 74715473 995822291 677948157 267482425 680246277 847113873 347116541 970246802 749406141 417017281 858034545 154245972 449562779 8465066 541042006 14516235 434173608 942720602 245876207 449050381 831825651 718611018 537436904 406177879 933886300 726606634 953305733 958664606 85491810 514421115 564252666 276259964 89424246 773213836 83149462 994492236 757388166 343849162 991624510 103374571 766614433 596539789 79786059 404791294 46683224 879213726 706897201 853843051 976907415 18937755 849539012 823567975 450474588 900391758 932710797 883194046 720788676 749359038 612983339 202431348 10791529 930962797 215239176 603728096 252880024 293341661 361777806 772460606 230014872 392485405 335930343 74420309 935091101 492467629 150339859 622800814 584529586 871012838 675831851 514146641 537015818 213576152 863362946 105990122 63834113 362071097 976983763 291175442 660354797 271435631 194190060 436779121 639926842 975580482 377215417 627575720 420610043 876734346 22617239 377686740 745500810 311287509 971807734 407378989 373473825 509568853 490990908 790736076 701075317 636094387 986342469 953669915 943864160 524755055 844329189 396540715 530402005 457863864 643980152 463058323 610715289 598401592 163916068 207684144 553020494 556482649 867850131 677263182 143345796 802414905 68300036 495979242 74123111 402818640 1001745702 363897205 497683810 398485388 33124227 950067518 582779046 727866772 687590473 366220362 104290915 510314605 22900186 419636772 445200457 272447374 392305972 544820813 756692177 664934339 788243383 598428363 60013317 202253557 46937380 775105649 173212855 27674959 423759151 917753723 449973010 482510374 254387330 586745583 57643958 837771606 164355848 191639466 363967925 597604193 54383430 252814216 94445482 582255971 692737919 442062464 745384223 522777996 518942497 699796134 365227924 991577229 376201137 891813608 758167005 382774669 822183322 433400116 920192227 843726281 204659743 757919882 759039738 845874240 483137139 763553056 386304933 827165956 765122000 335852641 5735186 954444376 269131613 265976477 26918959 578114764 520682684 445155029 774527780 656705181 517936052 675420958 714877585 823589767 586127213 363691129 565445016 135866503 116581686 652632640 226737194 328807121 773735529 125091393 715404105 569601140 117591274 201274194 557990807 80881584 716069656 387881034 289904322 562643605 923543512 417219334 468354541 777909005 382819450 528418778 196354332 311050255 127387043 173180036 171230858 137892007 749139769 357951305 848360999 389704812 654763541 72601741 727608413 748266704 620211184 513145629 918384346 568615164 463941405 260544433 251919582 414207287 276426161 168593220 953840063 916832547 817371957 795810523 294746482 159889284 74853969 370063663 214926399 300132629 278888723 525850229 259406675 723842622 435050630 367706907 487486410 448682543 383533145 678795068 171442267 758816921 722046942 737476644 901971789 605571095 91168904 831877046 772060260 29054132 799200930 960127286 52768858 668699877 234734726 788298860 774580909 944286472 461273009 951404782 45634961 436747514 357308137 529678255 106058004 296589140 133285436 355129243 885574667 172740628 391082935 654915358 922309799 837925145 857738875 133038306 302631703 960483804 435322368 684572523 14962513 855688660 3959305 715591480 641546224 786030771 936640958 992646925 948449137 84939659 637564143 375343648 831445970 590323916 969082431 328293356 853671863 471208445 559000844 983445397 325668155 260176062 793532493 399311832 748154249 123069402 498530043 658717505 923998506 149423962 847039643 714090604 376881776 254466240 61449098 77730099 326636116 273535439 672915261 585495627 606166402 898234756 208293403 536231379 714923723 684244767 220278116 903105893 609139970 347105580 494678405 983337886 365698091 279114346 565144825 374383442 837108438 452174779 904876799 364043422 123814164 827396779 475191468 414184329 64349283 357138705 176059345 299930020 274248400 917477875 554160367 444366758 385941379 594060228 602362816 134106567 575327502 444689731 949368629 458073863 972156339 802890448 874019548 95552481 850826486 444452070 1001271917 556664294 318512164 422712141 917327147 147539670 774153516 29858399 574337315 836556749 997938341 408679809 799399116 435415147 141070770 277871015 266599386 327173402 687626373 939410342 526069553 907715367 824031678 721103758 820472800 840812717 562078189 747398131 895448624 497194664 159963583 687873414 894980925 271107888 100050823 978925146 95680197 262818918 733982991 382212300 270474467 499351223 761934997 875748553 164638435 79839929 777489495 498973 201648670 94340803 747875852 227158853 480663020 656973913 429429782 805197447 468534133 729893624 937294488 266660196 683077662 439379679 571767683 4960373 488565304 555088781 782569795 813818966 496414584 947683063 214936539 259713224 582600997 174356991 84034486 994285505 825491040 146773051 480088611 227626422 346476900 520790441 223038716 499346169 226724076 776056477 291955473 33420842 546079621 111753407 501023115 436392764 671274065 828990464 354865616 91184516 599820446 90015364 81362966 435058752 537909122 605349109 264905544 534109064 157371915 651892021 65158544 134448636 822165314 786360562 277019899 706464851 276801772 811970734 519398481 350485019 412965884 732477873 333424962 236004216 331315923 43125945 505311882 636552011 891353421 227923780 259652694 161099939 88323269 171731574 283441815 73232064 845148389 782453955 469579587 467487233 957378977 639557468 747938219 20348975 56771311 679668734 467759173 327676679 725064693 587356280 218331566 642083371 62377576 473021075 624330134 494315115 773503410 788222686 480087849 507928094 481671985 449253808 806425657 509889408 844022762 597623432 842490882 569467331 500127601 531518908 577644473 564450951 323001638 879623658 509142621 89519610 203822307 538922003 559236935 389614681 856056930 714012833 176279911 956450238 863195599 312687301 369092052 415193501 904412905 652923451 509247419 100125137 282106169 368697531 951477022 410228005 315129468 912314200 46788882 8751909 391372118 372958589 68064341 641587277 164698739 547767113 677602847 941414824 665552339 887391246 889684935 434331427 568910331 55995677 79998095 350899400 237592372 48197365 280813041 32544262 985475620 968459002 967794763 844286170 879407683 382120642 625807507 889214725 532273694 176455342 236548182 384163587 133344588 204293109 63552293 658362101 467246644 882973555 584950093 817877288 674792354 291866614 262609728 86969080 167047343 458954432 18559422 518910552 3463046 610472251 228977904 443755021 450809146 516759093 506698206 711240445 79904260 692267665 851473767 122752958 275158594 862611316 594570766 962548947 278031428 937629771 437858626 186511140 8821878 898333892 548124447 819094224 281823623 611345756 595734431 42612885 433586250 442726877 239356402 451710399 502039932 402468203 208565329 135022917 174554380 261727258 870158488 131936505 162422268 835790698 613939686 146020810 79709968 232293721 733686671 861276742 131235411 278731253 2517897 813656213 166719802 962072931 417529250 559077132 841686282 944751291 502349544 89624924 216367363 718802875 15819639 275763901 287459851 201499438 347811161 844556226 606321488 630211295 48397226 330076341 298221895 310705701 777978541 131110068 48818213 588784616 96653521 120116666 182252659 735714850 971670586 781751690 95569536 244605702 687405701 531245742 805520357 442246720 413282573 1000713360 18382631 393021365 460035265 220257555 53017302 492223486 6767739 579686792 884651638 638770861 362282658 648510559 763616046 522386702 435671069 632421655 181133242 191976033 940037164 312276328 16937595 370306131 107931693 869228766 711486427 966390798 573167628 52199504 887521263 906686385 101700357 837769555 468178829 46117137 108738163 159986313 511538111 891854988 202004185 843648098 972483371 657329649 944395347 669629568 548426137 985161506 366343651 874575377 511036411 443892870 106157154 774096332 823691970 760410503 706171473 666504564 676402666 309649487 536694521 769215056 513971362 986575418 615268908 406973029 696582140 280703227 48999693 883090168 266355387 261381965 63312567 108389209 516083556 718100642 888692852 151760323 145446686 64258580 650740324 310298228 624508346 882580335 354168934 739107216 220799499 582790223 412888427 227095383 167874626 254200371 711981291 35309326 181842410 186935000 585045340 573777024 681764518 530663637 760530515 27905221 972078392 95470892 107886549 300673248 608530806 359341198 608719257 327835381 416536610 689710513 691230455 972690950 583139217 715659667 378554847 476967660 88474877 642163096 940623534 365726742 72542987 595867280 427173010 479011245 946468169 974548633 238145874 369709930 862919052 100626899 10400469 739170897 200920888 206663116 723814796 160405388 446472075 108200260 749103417 679300366 630070534 567706920 887687126 884127050 363293460 188755209 325842076 750010678 571550663 1001198577 961941196 879172097 238647939 7646898 584982065 323540618 174443673 669633505 633476782 701446885 512841250 10977201 588399574 667522211 196067078 546358664 143298734 393519017 383699511 453461018 923006814 977838343 580199853 559438386 172328854 740606791 621008548 217745664 13835342 532672778 34369589 722103878 40101662 862703778 526393490 744892002 843750947 612561501 422983939 225003789 4524880 369365941 318050438 874856410 833716153 408687531 415863911 6816604 159163214 700545276 171667021 247619076 763416380 772662509 237855312 458064109 648656116 806990160 357061078 834654342 384679050 925295479 204735586 726088259 446781181 22702677 638649444 585270862 291083035 200105317 786260618 811546340 544342224 225224318 216762312 99869417 299790019 679523946 105851878 342699380 996434933 409634747 815345625 109363252 276975176 278895789 47939353 778350777 368873495 809275438 189099125 958924883 766940770 938892735 141663647 462183149 281956423 552235857 687117426 158930317 126457451 586375916 412259333 240609772 636951066 540906814 446362731 350385312 368643288 835537431 795947484 488780198 286598054 126190798 73275593 262158248 331829550 989527487 481011627 163483007 799236344 357588898 372000802 321694145 834100491 459614199 48579649 11167782 162123806 727718520 526011725 899602038 335895403 541769949 637376545 59748670 287022095 443206626 122388366 828932948 25267171 254001088 22283179 836669915 759670536 684600360 328740879 867907924 851077791 834381285 721245771 94544317 598627930 397430371 192862183 635998974 775084582 193949366 973722920 49161841 771924037 650703234 786319886 770737240 534310269 226725515 592031337 543891339 397640874 402159578 638982013 389966778 226638626 490751413 13653764 117977806 318840626 715766854 620197834 959274022 435738897 653897061 914890733 948888228 636302029 731310335 181826059 382051995 696117134 254837840 668424577 933657623 147448103 534433953 507761911 585286610 300991809 554845221 389751040 61990035 344156315 666373908 330083375 503143106 177485876 407868372 355731407 231299113 871527317 979878790 714986043 53436908 492537470 659469764 771697533 607498601 283000420 908308437 958846540 787356123 358334489 171915810 471011091 357104052 544828741 225574662 635089480 590787444 456842971 133434712 641965925 709266783 472731856 928020282 629108126 844181353 863054215 434936812 208639804 463990731 725241258 881719235 516299477 846609930 572306508 258891162 912157228 469903747 96248694 555855333 233845585 587188774 572748846 983143906 410935545 116515929 107447703 199998325 985831587 474858042 665293736 94492828 318696051 37032525 849431672 948223612 764458010 439845405 238637268 649284312 377700521 16736127 58085777 339468371 102989421 259116818 438387282 530988299 634140611 361588537 592641692 155902028 18780551 565983131 690619850 304796981 185452210 135510502 613323940 852964996 641651331 816925554 228450519 529206137 290439348 620883247 526987658 333207935 729030 58590045 242328829 232624594 869173884 937202514 707162815 212187896 549935803 949608357 466545266 52626335 914804879 305727613 506757439 683750637 243368034 31862920 748297934 285897450 66039537 401676132 935531914 279399282 756787852 6608456 368502521 596837748 307807006 621429843 755382820 490353498 804781472 989391469 234464875 954898331 282339537 324874099 131021964 524122013 163923988 111203937 89222413 53581542 163551836 195857381 628399178 247899529 577739815 953042136 735271350 62804984 330916662 700705649 527330759 676430931 924000321 565276659 226784871 254637464 706847370 664578110 270199241 815723009 97987062 71843638 426065941 167991882 895379292 24737764 226645148 775044594 74172025 667035599 74153834 313747717 746372324 608641974 751404687 221839097 320147851 708635107 635261577 679995871 138995729 420499496 182194759 642372319 482329842 308874498 500749975 622892526 562563062 917386878 730329045 82494350 823502486 220243147 296891968 201232949 819300960 443518437 832610324 253821880 631813491 861037016 726475809 976523546 188596361 553532853 70473295 427228703 953103214 158681521 664509429 845564980 753846769 576664412 336013206 332748938 274684664 47546063 591413049 390752838 48087618 144755073 75058383 839021192 284809789 765098700 783518525 254648008 907338879 167554389 158698162 694731750 905654264 370048392 89662879 845725418 277021465 433265153 524753069 747986362 603452509 192678172 394354474 232651629 629064190 529081382 58962396 899661135 542631277 120649519 2774658 544709036 426608717 1001885173 587652857 588946803 801330281 412459134 312226619 929562394 459011530 250582619 614430119 362807046 287845198 749637755 194592939 83450156 394452644 265269764 612260296 54885052 899900975 333580938 896440571 131877293 652675587 579043583 304754938 59533561 732072685 914261361 217813809 815888827 75587105 469294123 572803038 135984305 910924808 943139343 145918316 172979880 162826906 170739428 928027884 399339781 68000980 163589693 16651466 333747924 470374440 476630223 880793582 789049728 413439932 386356347 346150764 299645639 851959133 619545898 330861030 796027666 206329628 21385574 569089373 493081044 26358398 596634048 909926256 111899430 488441922 92404294 89165084 202597134 719118342 921704586 882112521 651922818 603605674 581391443 102527296 579807625 188957507 782365843 663969125 730946863 719744459 695035842 882697079 980169177 850136494 943721740 826594646 79470276 1837030 418125238 262115772 845598845 16010086 103893014 572996278 970777846 361877305 483845553 651505003 866176511 926577556 762709854 108336429 962915060 286162517 636069184 227326759 916919974 428111976 414791545 64125429 858562696 800460482 895764395 578484499 444419689 544725099 763942240 684166215 998455108 673872249 710512874 43169446 827572383 753141949 999793847 572874263 28650456 15163022 818004096 568684914 878558688 998214109 905640621 720021820 818205425 903812552 838486497 199933263 333068707 193822684 987064987 293199228 229945024 67809613 273015160 353649874 450231868 58507543 677799361 120589832 834315419 475320359 179047790 283488279 824517534 960911816 761447517 854450977 925108807 691791840 16126682 751024359 515611523 428665825 803584483 396044512 936930545 649005267 45293449 579632667 768174502 789778466 544098855 399938395 347476692 64577491 853810786 84305514 937076139 13270935 607630178 309662048 68650394 693454504 391367786 101881610 184793301 559688641 898237760 175111620 955439746 790720802 881014964 686046423 695683806 713236535 658073396 141957867 212468060 389144081 868039037 970004162 484942826 857644846 381419136 417978270 440692103 113072929 234270262 781756462 570982416 441243343 343547676 788440661 368464843 285836844 524685884 113722952 589985248 75812446 573751479 803373631 836337740 509836014 246426517 735140 272331376 331813043 988893642 85418806 131672319 340591924 407393242 682964135 194392092 13396647 673746842 230021921 898601795 114089874 719866649 318343475 932111040 280335952 207704752 784006461 844084074 339591533 129844427 651279264 603800996 850960353 80399424 719095914 475456461 479896371 285052144 385007985 700335712 902753784 984453305 701617985 879333741 157363572 833549046 49705664 917104965 529799729 437658562 48809300 732612630 560887714 947722809 505244980 531336355 438335964 937073330 121694479 295383849 608663226 290511328 394459687 577620872 899332938 496349318 586038677 104086899 126290786 107321452 534941886 97695783 868597236 314870266 26639833 844410588 626851360 19374705 230188277 828736441 675309958 153107270 572091448 880354090 64785177 175707018 841706784 11141449 99193123 440690456 74293692 114992487 658155423 714461891 760586852 388028941 661987417 117167245 116309328 386584303 81635016 801182168 917925117 942377491 453844682 370557830 967788971 381666850 49593559 692194030 520592659 595998425 773116095 287365493 219043111 686378203 971291738 530211987 75029932 488075545 833222754 585759936 557015778 770679683 69837917 922804893 729474103 920658655 315132929 612051159 97150067 712363117 195542371 10014551 416879848 627891671 30830237 709717026 381185571 907040644 490292910 862950533 107336083 210862849 321809834 496741674 851606866 37701749 462564257 515358956 9826948 844910505 290784492 336251920 639930024 318904049 421152224 997857152 900843420 719466022 962325268 283707532 741706590 173694521 105610361 199801074 295530156 932409141 116686978 316136167 288070277 938301374 580449988 54690236 578477651 6367730 774952998 651526442 226884806 976529120 908280443 22616131 437981634 271228904 544706660 634645543 562990704 960372522 955666473 150985272 329063640 26943832 233926347 787784572 976205527 309890587 952273625 892846338 540097652 362318698 271668628 134630584 453250586 35481450 382647195 393187580 465317114 619584786 288531033 800801070 220355721 866534018 270940189 449812003 335875052 378301516 849460581 425153130 118460018 786200502 348023085 428976198 280622976 98422442 892544159 960010780 961111057 783101058 64390663 333303764 100777355 194138212 13328770 259627 599104325 378155569 568865656 238955210 428591023 252200693 536526289 934455906 409508960 529940908 626472177 238683781 864823397 216525846 217967342 941435616 617571271 892394841 262027761 681864388 754561518 221608772 946168571 935359131 713540654 771881499 627921500 606838481 804351893 974909367 783669575 707044956 615191320 716930072 889042559 916042559 701105383 654889540 527195062 384590895 932567593 623002604 276248060 880514194 722286432 903715111 431156188 750274830 176793661 842795033 824812768 277055651 774899475 307147516 546576448 660525483 252062587 920244601 434195413 935792175 321472543 945734006 99752782 926954976 552316152 253376418 842709665 186783437 968087574 801795330 205819551 62827480 812547086 165877550 14341491 989549948 45734738 684986587 382780768 619907848 822699126 218325996 659791916 599535300 884970551 278649814 312182256 349808621 886559803 191418601 626547573 161849597 902174000 518139183 793991827 344308555 643884503 862985851 350876056 575079417 273319583 204368023 915791796 515292829 841992276 417718215 642295665 180734647 70659424 940966089 942640565 708201093 816027671 67245907 792511847 879097926 377816559 860981226 93352436 723659890 382408312 229036040 35176294 979876455 989507239 132134641 262978603 112163119 819169209 157171157 788285825 981051368 376409058 517597797 455719586 818885914 46038980 127121392 918483923 966513865 841289296 754751641 919289191 2016735 673258859 646754672 267072024 140452713 139875069 981471070 503310912 686716173 508181056 775404152 307101764 759992273 721143250 639774588 811729583 618056622 744937614 960207063 744917608 315870914 789707345 732691423 637681911 815744345 423793991 16480483 948584130 158073156 953175341 277810703 231895391 923585306 736229717 406695905 187691700 28415221 108830525 706107606 56608099 25023822 41466219 882615581 649275336 961598576 266206746 263694752 802630226 381280027 600527672 116400665 930192117 225012870 95491017 386262824 105865533 39791030 897334236 172085492 829951843 570682682 846010570 733302433 508509735 560265646 905457561 897330030 315603276 10101233 197762383 359508803 544323234 284033482 144518589 255574175 952433457 650508546 366029504 76653780 77243402 489455122 484358139 78169392 273924142 496232598 97093713 237221896 45219042 53163793 404898952 104985934 657377431 628503445 853253061 842499861 535977661 945171551 65480579 560221805 836312257 489839815 589132631 594602192 402028483 244311627 776434808 734173700 275297556 463569366 976256210 864976868 862448568 729979151 737441989 165601223 655121432 623364013 609079278 789966906 167819600 203337900 275134333 300298807 401722322 716664395 357515250 514656270 458329361 846483884 936127578 308554410 224155968 85507723 715892033 692425149 712630043 897601056 842949742 484263974 240076248 747888898 380425456 401138629 882531272 517438654 907669645 507148215 626717889 500017561 27646734 933908745 516906392 106363448 348392765 891057721 156224182 318181127 143426369 599022266 875212155 888117444 289466360 723922533 690356782 669417279 920083727 339486759 571683661 869804165 27365956 1001894635 970140142 46271791 644065912 449292644 769269030 516975683 423766603 385685608 954869047 906522680 94378529 851247279 236176907 292602254 528779005 526572123 406674339 36352001 464907503 687124198 849079999 488540542 40987322 985055718 644551113 952968619 659478185 85224433 265645395 394105679 361913645 246530454 648630594 785170236 304526352 308419408 196192848 179365099 469573366 24766274 992191656 486380347 616828008 267567107 100418967 658152234 579798823 489419558 638184411 945331683 512856875 74883886 266955974 951814855 353721770 31171993 617229022 950311307 294527911 236835493 33009252 713509333 6876330 284843525 331331854 138042654 750955234 356972686 289883254 295979067 431695247 318234904 712684447 116958373 712536191 439448647 525913810 884139642 892511822 685104928 779452049 283234359 422374757 591071102 770624836 560786522 896903919 939082060 823750701 561442083 32038330 10017580 599843779 69743203 864507663 45946211 831965439 835682956 688237426 794281116 916771521 804294704 446289461 767424057 575291607 534686413 213346820 973065480 635372100 352431148 894035520 563873946 746218454 737681553 252924219 461491924 193095312 84506147 580962556 18066502 476172534 105447557 642067929 800060545 346775265 61902839 894157417 818492821 506330351 527196489 600153527 242371151 597895752 858449428 807343520 61675760 64779418 1002299473 776025857 168453330 163243085 509127794 399343693 480333911 145815774 551328857 169940469 1000693932 675069815 128643678 104650670 950156219 833908445 652479871 324930432 392857424 136347898 795333856 534781716 441696686 418717903 614016301 708375394 344782541 700677427 24933952 761059882 714457722 951646111 773855936 850941077 73241177 742673183 116146966 756600390 101925467 830050731 14494271 752468593 972711410 29358453 241203718 331859432 556731200 674925099 180180916 896776274 394472633 974307831 264619213 77665667 887859253 440691071 949717693 475126834 877510450 388143124 33391702 127674696 927369654 11373890 366519568 948275012 709719273 1001665064 861289412 248689384 394325769 226869830 311366270 208000272 374454450 979551048 710679250 280302078 858445549 751426876 247779574 394212351 779587120 66051862 209012594 338722323 595905945 679614046 101231223 857299164 194234879 161591915 444219715 960252332 57625542 144805559 375319342 261683024 231456078 513046058 824897224 624018726 168599116 482868756 935633793 616632353 965269314 180406102 493939700 471950000 273409401 109553629 142109204 550411435 45098684 820236923 387083481 175716272 481272294 891526584 786925906 46588549 556925953 960094361 849191997 570424927 35507897 887768755 96228028 853255423 652463579 82804358 169653789 519703645 744252387 620200568 616937850 816970947 812203363 737552139 894024804 263021872 164200523 854096924 25199822 421755818 386561937 890827349 448595947 172584776 826251959 494686862 620764035 63062777 293765498 445582010 681507534 753980839 433167317 31000834 696004838 582646007 102414457 465964733 765178398 908144128 951031995 817326581 744736830 692887200 296423676 906852735 455092357 199140108 613081723 759889887 215370996 900705596 85949734 631163103 468763725 905053030 189298485 683255215 398912505 245509095 194455708 636503614 343073912 185650952 697773955 239123487 882304065 762747053 936684917 841642767 427929443 618176809 605659954 6202018 829179866 900104302 403228691 506203379 123166457 284927400 989833612 374916879 201249034 175343680 720388575 188596449 475715696 199307971 431351454 42105977 572971531 569071761 32705381 205501509 534895802 379012862 67906504 963759237 334161353 108464687 780117383 646459908 466599837 36613697 172937510 993707819 401096733 60835220 218984367 776495321 953465582 63185464 490421861 435078356 729364525 226011338 281548157 639448360 744049486 837675372 412918128 730371745 472907838 674019277 546147579 735617016 535156090 246736225 248736067 171039485 655165373 111572618 768077820 658498549 582717003 236759779 539858993 323920447 300031257 793493119 621285335 911803165 103633676 587351639 675238143 82328705 106360155 641610131 379885691 481176584 318430505 306281830 559329232 155589793 98084304 395403943 896185330 246691161 741992371 651420842 212919310 191300438 916302787 406547083 699825667 531269639 505808578 604567810 445627250 496883837 896185905 404088963 908506921 103483632 901870871 215297160 598276951 954854888 296683482 364970891 69905665 483333699 763026065 372309289 337161923 658688511 577457535 706869811 833974522 756519428 696907391 542665037 412056760 917985007 662179335 175619891 581900304 507898615 522853008 475984026 94159177 555383982 275791009 612849849 865880482 239537923 390573306 457583462 766505568 395437184 537259746 482596673 353489395 690948022 854337946 460304448 837137843 792197271 763011377 85788508 928062038 734800062 406710890 440114363 404778673 965108705 29459078 500837054 143219037 261051925 468397080 328817176 534817075 189194602 865009608 395781043 214671483 865707794 478980235 395052838 19210693 997706853 847404264 780581657 118392026 892337815 806710680 74285293 748811815 774068601 627784590 54139599 285678521 40419827 768829252 321523132 531361258 337826493 283691641 941211198 89197994 378686770 791278240 802687891 946834726 253418375 931450012 123122403 254897815 149953582 312260301 98657422 623626486 756530579 641633003 206113289 729302101 773577801 190634364 478089780 362836991 568836871 23137203 863662921 487620089 899785935 15068911 374441940 531708520 468121017 170045315 973681647 938210617 305291059 740348735 969750381 805028677 401104341 882882878 632126700 856893839 49731577 301343194 68524716 22216218 521485194 56285994 280652838 77642103 847877333 746656697 36770162 9995575 16909669 244509674 504053278 408295232 71403189 902330005 36612115 888887667 186002347 384090439 204862161 827344483 855798766 442999766 144370052 57814829 460605643 758347875 998500857 980384954 507015894 697380306 281187247 460518449 327499 654820054 1002158398 742457385 800819644 324885440 857202678 549632888 907043308 794203752 600159753 591645729 707777827 121311204 995476407 152154742 360009531 706356058 313513977 580069126 248791507 566104246 379517855 880883637 163881626 749077876 813740459 372732146 844220166 984861552 686518656 935657778 14903222 553955748 780278621 825271175 944093265 828569137 412935536 123268793 501868468 183896289 967119361 570655446 433052512 610115004 41766072 893046053 347606486 244192756 648710078 640481024 421272470 773392807 361395454 619309531 340989844 409769398 439186822 439437044 777372549 560468689 637836629 640431046 479605014 54037604 998502707 759325641 761312441 345208503 168128250 326847222 412585266 270318862 955908316 920182835 246743814 13905756 267428216 529023109 760142804 569039704 655831141 178640693 344957646 61648443 496716964 623413158 984592916 342869204 494688800 953026730 453389213 102676626 105607302 724857976 330986133 989229847 64119237 739480 93008477 761803030 843327250 965471979 890379710 159890443 345319455 463679702 206251977 797430706 12897763 26343683 405044366 397736822 19029258 69301026 628086160 83782498 186572988 249270892 678044803 715730970 430546186 580258252 207753990 84521213 127178441 954939790 692517413 634189049 785061744 237598467 250960070 414009368 413030756 742909276 897061650 234907601 667587202 428804941 156800055 854258153 737124049 95509622 562017248 840821734 897772377 536458648 565182798 17065703 319129434 233852834 477198124 805668220 147260422 103957345 590079087 232782590 486461536 329529042 468106556 36143985 792140462 409556580 476470187 484876631 118937264 839340678 661019377 753443270 189744555 663862673 948293172 315899872 349299608 213917781 752913725 689325714 425359045 700306061 656311507 868948259 69047987 841260097 103474073 560427341 320960332 49496424 304473775 531896480 349977447 911989030 409924182 971660555 405968096 510596248 751062293 428074694 675696876 789313523 907165495 271761544 197592852 81530822 559055456 464046758 784469404 959935315 693805961 264811062 899807427 728740796 49679640 669014915 895790840 427628960 669207823 873296693 305310161 222442705 889864551 801489061 94598617 34489035 829816526 117855123 734435166 628353187 881831449 949227578 81360169 39242928 366987908 322095901 698716310 22069917 435981569 752506838 623523194 128648319 549027990 980754621 206845507 249084151 258856623 942348875 31895304 882116186 278682434 991770723 649401821 24225599 593487315 376250072 175266322 381929334 337477282 69194068 22891836 102592540 293886040 603571732 944314169 855647474 953928668 216259180 161844633 347579913 106332331 939892849 136004668 411194767 617458682 781845761 941341122 792298606 591235780 576251951 148534614 526549737 917291521 302732886 678444254 537121196 58148160 326367137 862115613 999655528 17643970 568190593 847740823 422286805 678064319 356166904 204038365 447307458 909653023 546246309 642612900 393736741 715680142 373375250 584287682 168850921 307145146 417570589 314663469 502053663 462889625 74924817 881186482 395670631 242380111 704736042 910486137 5546034 124525669 494624064 27532699 819220123 817826241 394057306 241202878 334916380 108826713 434870594 641587026 433426048 207571776 386683260 995006967 981313041 256507562 413925786 799771448 912542268 287479874 435308315 689308470 449020923 873227449 713760800 454834744 464150167 127502728 939577553 144655952 413523736 260694178 177405033 79418837 406695915 844765002 823561545 864372013 785682062 672645303 815312217 712310247 830843943 581354681 431996234 720398700 322206154 320713366 468650431 719454038 562792314 1000468800 840586971 601997720 396525827 903669779 615465992 168692910 469718523 461870480 737005162 220317177 716817559 757957843 350282541 521946598 141417332 309984541 304406814 261124917 409318997 6706207 748175851 35138558 893335216 269328903 394917186 992651687 942799038 654402875 681277498 194180195 982555264 979856449 89223124 74999097 865355579 301722540 393495163 336422382 627032002 353571169 244952505 959126158 567824599 583732873 667673962 484636507 144231409 693882280 389964363 732023120 15968322 585393575 561386278 397909618 92782774 994938625 755628938 865928864 377233537 839462243 108022897 394642506 955254936 20372403 340298394 264528093 266471555 832674187 14130458 396526226 829304264 399022655 65484503 22614664 551207574 117029715 612022248 544254256 644378183 944819614 707412195 228329226 770720202 101541395 527036325 13834554 783988779 470097233 775664233 608588776 845373612 52384887 793888565 686381868 185416390 756091687 754777653 255222774 647065279 364534238 389870666 747929752 743894327 704208426 50166248 636200339 706777805 921065057 126016906 32550881 729241745 526268994 808955033 785680291 104195301 394672410 449451245 699030263 545992688 429567266 683119369 379726206 240468480 31534461 792385720 758968243 569883948 492361477 239786098 7412974 283747285 355523252 55485426 622597430 845287024 482872815 13629564 315248775 121741290 940827267 830876362 631449905 133587989 992973332 162813849 367309661 480339688 744863325 607302491 223484865 700457082 119936725 354136610 166825379 411251088 53526613 545698721 610327011 755938774 85766336 62244934 914126466 752311294 491335687 742579736 115391607 884538078 601722663 568367976 488955088 935087139 383262050 541915274 559085380 873091982 515391795 969202152 26205814 868548534 928300417 11646826 469217011 258915215 988134218 399977194 719974923 584119057 929156045 995264823 324439047 444923865 440575663 829349684 887287397 751716376 29063266 894333253 609231316 982521575 980226268 59902096 702497381 892236997 453465548 305097542 198439099 727177933 345504762 580383820 218888315 666514737 722459158 564516006 791779832 723708561 984993808 864350840 931441727 5257504 299510870 327955912 736957342 836306925 88640600 285222309 306801304 867517619 787355666 447784962 428849420 957463806 279107073 734563391 458364439 811615488 66629417 524220795 964311768 425701637 700364080 62584781 90738262 988854220 886277134 40824696 490558657 797391370 40732815 39447689 383557461 656613392 333255723 687732866 571518641 160611529 330928427 177380735 741879760 307700793 966757691 862587338 171085328 346299267 294402404 296093715 381808050 436640119 833295315 803434434 893682147 196988505 995428537 176052272 990284073 906825191 303307860 543116113 444004572 630048381 525530760 583527374 1000467056 764127353 846046138 727515403 98737388 500221709 670384293 886554119 145696617 637566790 749653980 958197730 526979612 565931968 503537425 594380674 138660517 443380277 255096593 735821793 638029469 48291530 390252091 345339957 229057724 131412518 497678825 962163929 850318621 879234957 262263835 116332211 301969319 77688654 702042524 521186247 24984399 564496203 588290175 583266386 444564292 98756558 965506951 537765045 499069348 799875109 365519320 385724771 409064251 203791673 853609811 617894233 624708805 329289806 965433196 705824585 512069094 543969515 928608616 798660971 1000406380 376820307 105661060 969406771 338840312 62874912 835922167 545044807 464144392 996297044 672155383 463848497 305358034 753887268 313850225 912852768 36004062 301618279 712584129 404534745 369510517 114345922 488772237 526344354 339752097 944522732 113921824 874109194 356848155 265128098 575222286 291010499 32015497 976163294 298971282 473410025 404505451 5218745 949243747 791295809 572946798 254082434 818729819 959761308 717300755 678761079 110025793 186406348 985165962 167661705 439415981 735514257 801459536 309689219 719370599 806103491 431654742 864962588 717782339 490588243 11221764 628914876 594785007 290058183 656472443 465553005 631314540 305306216 947605065 162037613 741525701 342253694 119400000 172889994 269012873 200455662 637255734 190854657 901417275 818846903 209956798 104760192 212771710 531226625 821934068 133260086 471183016 125570140 661409558 484944064 150530705 779595728 322992610 453509743 24491684 449046318 758174433 431821553 448132914 474028637 373166954 608485915 815716366 88155357 78570635 327436815 981475282 68506524 560823981 241015909 477426872 241662056 489938361 378243094 285899989 683728719 743694593 741626375 120682879 151948811 409496530 56184375 265470052 960116673 31630530 86188103 871476094 553715426 524568057 709533760 321783806 575357335 839573889 487642302 596288618 488607222 973057335 397360318 110461637 888490994 814048125 202182782 311686850 423062180 407081252 867839691 56212866 373603542 685534086 271736258 288588650 340807161 423739220 207010378 844038161 479776475 774279782 985497118 924773598 453819752 108870392 226398256 205363167 461148624 719980685 446273337 187398805 330834526 584545727 898653411 395974489 679425653 963701778 962390339 397437916 439087079 161471089 618022280 329728357 61930329 962705797 205722396 367631022 8840391 989788306 712104313 461462071 351947136 982337404 1000098262 728332014 678838714 749720890 433649411 878962326 835058725 167365851 205508542 973256635 676307644 479350323 196179983 365044731 4608504 704045477 669385515 909779680 455722362 101457241 240474625 968216464 909342511 744910479 427316152 514740205 318549248 382967954 199889638 983180477 310677567 103382959 850110653 694850924 413594184 60072518 45496653 127240745 931137936 84679535 232575672 446156316 404971670 110526048 67979641 744687497 420636889 728035404 754385121 144833172 37153857 706187381 703594446 357145841 125764722 677697646 882629534 971106059 241785568 806862055 718720129 371348897 425314365 215173080 729570839 320275714 581317930 133619081 279739032 785886255 298368424 709391149 601959808 232367570 980282295 550417703 840746550 305687185 848759687 641469058 123964810 121878342 32262004 246929070 488602957 717383493 378163592 415996144 912054919 615530961 898451515 639893655 435749705 684578068 884676800 803708371 911492426 109173707 21567577 141501836 576840112 583727775 721727856 972320842 426109070 735443993 140389394 577968526 959735108 746870835 833832897 634902079 299222841 693006802 292786837 411655293 336228261 561470354 363284386 209888120 758110732 777337438 503596681 869312957 983025262 286032451 223004904 576231018 158429902 629543794 872801812 77450085 34138681 729834551 663860970 497970277 847899173 106515094 830713499 758124021 549542050 428279451 74014124 175740188 738231584 776001711 368927731 908829514 285181938 484630390 535095811 381209580 835651612 721997472 77131645 755039335 701302423 744881853 50761580 969571310 568686111 851133483 571600350 422908400 316397955 484483091 359798258 278499180 663444569 471680418 942686256 947375727 299875507 580363852 893578441 310686386 654602286 395766022 145090028 468450611 479222593 318938510 324924288 880941238 298510386 296004648 730669000 847430111 751164678 698766110 745006096 678553423 289749179 168488291 21481866 122418470 298622106 700303206 899453460 515140269 958790679 944248517 133319801 59199653 685374998 269308528 721595516 391960853 459838276 558524269 157773747 108783334 46762410 264111319 122515899 186823274 136522537 552548129 60320443 40271556 107195401 183464696 951578910 228205447 848632330 655588376 453100783 686876652 604485332 510821072 321844259 94550097 41019673 838207478 403394409 500384530 31821583 412447507 704753667 738880536 578326116 958701552 431442269 149836789 155971605 818179729 151348669 511018648 508219088 837385613 904208694 802041083 116204970 203231949 674087275 827695404 903509396 204644243 329621476 89755610 539123976 544893528 243734747 817198617 456131066 849429637 875028297 844097816 279611840 340749301 605862981 231215573 496583521 420974788 518607291 836776214 437806169 140167623 799449805 131080717 689378733 3502839 104589718 19890972 737242418 399629718 267376586 817479365 371451404 763489268 215423706 782901499 656228725 852548681 434441919 596901146 227720079 775841896 410663007 889236329 747106405 172766036 932865961 329953966 705232969 200181483 369323139 328863971 162453263 303943062 229106137 155255012 788594722 266218221 512666930 388692384 844041349 856326954 62446690 931019550 774414415 552997350 524040295 292483124 958691074 607676267 905005578 837899219 290671142 607922745 762993258 129359440 185907110 574548109 418159963 859634079 682511824 157012767 861503400 30720562 755203367 288778176 55146972 725224878 956896390 501847796 998911678 832818003 345510597 833019030 55646748 968828005 817461504 184216696 613245906 629809924 154685509 169233978 309026235 266907489 324603187 758552164 966047908 374944068 832906684 997588178 506044454 883237972 359297274 364199399 769661103 218113877 464743401 1001660487 508668395 879107283 178870152 380471415 899795331 279203470 366998201 570123235 102776925 733310460 320470544 707650010 120054579 125183834 302495704 869417518 432241937 220661990 722064310 871203497 122045877 404975283 151885459 506119965 116966668 369073238 313844812 186347459 60596382 10959388 756329474 186310566 584498330 813351727 987982816 689244915 906060219 323030674 335582587 65929930 124680708 476481513 558658629 808800668 640081269 858430410 473533319 786184456 43801410 852507919 22867105 136781629 600295007 199502984 151975156 643409580 967780287 455164845 675856776 961726044 725708140 246864132 800376334 398814670 615417727 673855346 97936899 377478791 555573297 99886672 886266251 981071317 196500996 592871740 277587065 835697220 185400626 554744346 469490805 657669144 679074900 530810570 419960178 380982952 913846346 768023801 42429439 63404213 233412912 379749036 401480976 931948372 464038340 325469805 606633381 365044290 358636436 812581552 104553621 456096482 337145634 177103988 600956980 118509006 268362076 212779798 637892416 3842992 487560150 168405344 6087620 596775185 555458433 154926 636665330 831104238 744153610 294875651 110873383 876620863 341838294 90361577 283302300 576597616 971045345 870062695 573334096 727425979 93880727 369740932 278589937 538242281 303967655 492363032 405806002 330870586 432350653 803713128 447973124 244015346 484857025 779928232 708029255 404084898 250323356 351618974 53939525 359803746 955207764 923875607 378354598 745704082 870142122 818335758 743741129 877269447 621046705 224614896 952503874 571007268 200179812 14539650 369741188 20650141 302298989 713621791 147178718 212196471 365712098 138612018 194730842 267772359 368896465 393256305 991623178 568621514 894731472 838896168 122067015 242061649 424890197 33558914 432931206 353908407 402201687 707653485 640233548 193298778 782171004 246347283 147148276 899160008 822883737 103543028 773246303 879839204 952657391 412030171 665553489 588356283 409118318 431357143 781340861 355687524 168041159 333764572 958066428 345475189 343086502 515408725 710418052 915954436 772035591 728290191 108133327 372034119 215868824 537247831 150114720 135602976 626655657 504517526 601645572 100858250 590651140 942771287 643800471 717210426 761795256 693442109 458827303 461700994 39851020 335343178 466504052 474125040 241127759 15650821 579358786 818145513 254633697 464096796 140653812 250478008 330328160 554757340 854616290 315342995 219692267 253674004 529567562 719890042 272516013 916453319 875104246 701614033 249927271 973551354 228249222 39237116 187621256 470382048 558392753 908487963 262957776 463689471 68483540 128752456 754553901 317928832 819947863 503883894 292548908 320390466 153746739 800747206 269259128 466399264 562173253 616639221 79443396 602628983 98286339 72707763 467360378 555864044 671058353 541260693 798100872 100121332 67668994 690946608 934411781 676667545 116088505 325201922 621259932 563032839 262362282 606222854 203606832 865841905 661698883 666173393 283038889 822388532 410368661 574972050 443037695 540853269 447097801 385380530 532503002 845689951 664858414 220841429 37068859 422505875 219214613 557239749 279703509 391414917 991526299 288109774 312918512 918635627 863523720 415062106 870416642 682406777 761676546 744855757 720504683 280843529 117956998 26328240 100841312 787472664 856633973 158896705 529610855 89359617 505908068 362002413 661505102 836137779 259213069 219459937 152468766 721146830 153230350 207902302 292696963 510839981 850450788 754058132 692595127 765068208 451899824 797614800 929581766 491378846 434717349 529312663 742124367 145812919 848430279 839572307 340452633 448028545 540180411 974523192 887914064 777156898 478984095 475775670 339440872 780456027 736770293 588548299 708163828 608120336 790821735 711405168 278060221 7527222 912083366 218856242 508284335 363753044 338731536 413034670 194677260 69725234 721803325 940682539 896500019 869891903 152528176 209793277 780158697 244568089 686291193 407814857 703830683 258741926 92860120 880562689 884427802 721681429 326335494 415885854 970887365 373152853 352222028 317607619 220889784 223313762 696607664 907625273 754926977 337886503 79500605 239038542 421102936 671853537 689086551 45032289 824521972 359178400 737872154 510249373 610562583 81141757 195769077 524424869 156656842 867089283 521329873 32831290 823522043 828523659 990178812 524480665 875663559 863680726 733558449 713899800 540221943 414199915 666315640 729891773 213574778 234051210 385117288 927005419 82158880 214405050 207382501 679529192 856757505 757979559 642910132 909299009 680462498 790733138 387724725 523919604 575486339 191388721 447595016 126613991 755404258 924750267 852867416 513357179 844646392 309310105 988208294 323446510 809816910 491276623 860244320 990706949 504676781 953239166 687189685 413382404 762528755 476945815 271014399 460125684 528818090 874662348 291417696 236542483 999898863 702956730 109606350 471270437 413832312 768181153 303325838 105552543 447692052 939680784 569047349 125211105 245051370 501010781 854625657 702290974 448954526 914960954 385349348 992329077 297639033 120790281 274719713 331740917 16770924 487064558 183093082 455553096 39639431 624220229 1320238 433929975 434084179 505833846 412071346 994541480 779543494 608737993 995312381 853613468 330299166 771662706 393902051 266975729 497154913 959962612 818623820 349421659 178424181 679862404 145101777 313479691 427629877 531083922 156578334 63389119 749860941 900561486 407762857 676919154 488450582 95477349 943067588 904298202 771971476 60332727 686450965 664167144 318597546 175634196 7794012 78500865 352063100 763747894 420022535 426952243 759841217 978768635 9052536 226976612 118257409 368024328 88086805 768790882 361774989 814813169 372963775 919851688 951823822 56912133 242422894 180862890 461979625 178536640 300451909 813234685 44919166 557882869 475860337 58357495 39471170 611446701 795639041 525968530 261932019 397076786 299027492 195647121 32497757 864978671 677485506 852094361 93153416 542452219 863836559 31253434 541432163 964580683 559215086 269786689 685248691 591051331 832618195 139218267 443320564 911217060 458021849 652263924 169460546 142907960 329459815 46596841 190565091 10554376 85622038 325213020 40697352 379447926 618416102 361162677 242677238 523724505 465458689 218966241 560823841 621070999 980495253 998380009 883577405 24046497 882529895 386826924 936164824 87940344 973197877 161132973 520429054 257654670 744448477 576690322 90173989 833034349 750717051 179313241 144687687 564639625 103530058 1000542395 439355979 584313570 910534474 734267479 524520377 45094725 231653262 767953190 134106708 533203945 947310726 356015605 970530566 744698186 129168445 857633351 357039307 351249565 105450388 607540460 597394866 826120056 370985797 70859143 774966664 403309221 760438346 366052754 824509895 717237388 676462848 894814172 146952585 576306272 609821237 333966207 274872105 955738203 995539846 810329474 428954174 278871881 560308226 47365715 512079697 514011187 735117061 348620283 235311455 157574048 966469008 435453098 580978468 278619707 666047062 323563362 118992190 740625060 360332038 88154865 927879946 168902231 790035481 328868712 144885057 653899069 956989852 646877758 966836469 338508830 860009610 720318756 866893279 10133158 743518767 551889742 529320344 803547063 674635140 940147289 432414218 558276931 360418955 313176240 685901602 746428275 445734058 148037848 435768219 415855471 116074805 831493751 454455805 467933211 419825624 91150473 582091240 953882384 721906953 968663940 33383984 125959611 916718166 578719141 847749739 969971231 183454294 218965598 659766368 12642975 276699692 11006349 416796704 297631871 532971944 856403724 463820390 289164854 717676763 743850972 829609088 720632068 208782679 584166226 209344509 224819862 29645550 608880950 311369852 458981 33557732 218669738 468688177 46732008 242151796 469066937 664299855 934202341 273090211 548404607 732572861 120799123 52144489 307335856 660859839 559522910 305057032 861410572 973816183 469265429 566078956 790959234 692495848 167657221 516695944 477141121 79101163 717609727 922227207 631368874 391297241 963628802 846691588 210640206 181987771 292809306 119090850 242275606 355118208 66246620 29677561 716593856 197321711 385129107 533228962 542996948 757380255 493830655 356765070 227856562 711551150 857854742 176859898 435503207 998529150 256387136 739481785 273639380 960643568 807421492 272587216 732320560 715617503 269731222 146398718 796811427 548694489 839967099 857304281 561546902 821199894 774648282 563568171 805205197 75987964 584331283 907565794 436450245 567095471 930629211 951873419 614637678 217203083 803372748 937850618 916224737 67570720 954077539 518629226 331458013 986043507 129863925 921646887 140181815 442349293 137288077 591373463 869691368 546134318 496296487 75794040 535025762 75219098 861910720 962969481 566701230 378577450 981019412 831715940 960004656 18617158 993073979 122558885 344060990 13758344 663083631 727249451 194485337 731811561 100241663 164304842 346394903 238342070 680202905 689292241 885150433 950251530 229460180 604641445 607616512 162146196 836480453 853299534 415637805 399729918 996007706 379739760 312848165 81312344 827179305 256070725 819052355 163423641 616864883 75337880 371685758 593722955 717371605 156284203 666357836 685118487 943295191 442717312 168814573 962676111 935703902 475142003 13408230 114971422 350069174 882645929 226762563 487777581 989591525 384628768 781716763 220578675 302938831 370336079 122405790 254342695 326823501 232738864 265295683 469522850 495712416 856611381 399741397 910025345 596432481 227904119 13669924 691129219 661755897 199411611 958598557 504607040 169310311 553721815 392247171 444974626 311738312 270288189 734798133 656732229 864345409 104205659 120747052 113530637 49755959 952679943 108805227 935788070 742994320 662600349 336622399 88659945 400020826 986291292 809626133 798379461 342513 571794493 218433876 602614889 335773959 43657523 623442061 76394077 894356656 94283548 448158429 398470349 77850138 144591203 234562816 525841443 688043009 935663395 450043530 394515514 628963271 703942362 48994146 862982570 146453073 204355855 732734226 591869734 290183260 771977787 823533312 71258619 4102610 651625900 943834654 779928097 911070546 851424418 599902157 330816830 961746519 223152028 711716261 979631213 334444059 699630872 546728887 712106730 954668649 459417155 133052112 877626369 541766532 581667151 3583840 361877222 741675444 980416597 831934530 751328594 674475933 422200114 926698074 251634063 502571161 608360602 766901935 91778286 750431866 990638463 430713014 688585798 343714669 613940929 191729903 557542548 759695235 521103347 706773683 247301878 209236180 490074438 94144033 474083359 260745255 445526983 918710741 984045006 234163998 759921809 774314 546125086 871597391 351335688 814252963 592434482 431110341 309184092 507370399 802492784 2624261 894577287 925063921 774336589 282172963 347960494 982189513 23468984 223655493 35155638 257686347 327607613 749002188 653402410 713856486 171384393 382738462 635459865 66448729 296263514 733962390 260487182 231464596 207594648 505488776 519179912 906299315 479847505 536983576 937162097 667146393 233106688 242160288 74563161 414974878 408805105 27347990 86896298 495600096 26249278 251877224 345505947 115201846 452527168 642373601 877223485 901609908 200589931 571158578 463657640 250781044 726804974 963731776 982065116 158820097 319970221 316359750 377001965 326386226 368308694 373612020 49627555 170776025 958501147 179031869 46469298 956146109 244024933 706714304 625445078 120237612 945919831 979996047 497754706 111817780 652268861 585588197 240604161 243153668 201101393 841586719 672533183 901759476 63115696 539492204 837248565 734811760 372264167 264540881 173207002 669014575 286090859 755896808 715024068 408698393 8151066 540789255 213651501 707265745 212129234 215511562 151848057 175558314 696469468 956765006 97885348 438318925 738198359 458496299 432577395 196044536 801420580 769276586 517564107 110337377 236381156 824635830 530088458 741600750 115432413 702464043 748856574 500252424 541531590 535666185 769733908 820277270 555418361 783477186 617291084 30809925 497010512 760797446 792164810 102405871 380794203 673890479 235629696 818531132 19186182 139068716 557021038 243455368 844623906 172854253 641816434 890612481 53508837 563926420 79901332 842683211 870137510 535736441 996163908 228182164 870470267 523817062 345234048 547487634 255993585 625183984 362647508 147556422 811508502 982353583 755251578 101013374 992520224 949205188 294703930 309082281 239218280 753759991 393580269 619104752 237070291 343259253 133920356 129789225 100873177 469425105 346448063 311608743 453928389 425632295 986537072 213979845 665159257 680236839 813251387 146701657 183379504 681974525 652211234 482418686 136645143 164251708 142943644 509784106 247049446 641920425 522445706 978497898 648892227 22648865 4625493 670546879 839484547 891969202 539136435 30892590 666793542 659638679 492431289 235314618 186373861 59667056 323190473 738613629 256320715 591888225 193939270 706492026 245594939 807385658 896081979 718388621 924711313 153807141 95345248 656211822 58864925 92435765 529995611 724652383 59947068 395747375 848905769 138243591 248376684 695850737 435772311 765131955 201951736 433722238 987293952 254447602 681809588 668204293 720176495 283922202 480608441 956861296 921959441 680424561 401419419 586472378 124911097 546011572 733653375 803060767 780263166 185987875 973293739 184386927 515056442 26022145 423867457 556149116 738512705 552905674 373730425 169108081 487094790 850447934 950481112 295508485 835757882 816898397 439587561 224123813 651748170 180233662 915452588 737357756 450280250 361702992 221370390 947088040 641918744 765606863 84980045 264232996 595587149 561794445 900841070 820610352 428038587 259150194 998461301 407963592 533826128 749079593 272330310 484238263 430459518 222264046 361596192 412526081 965227601 81570996 331916053 661734517 526564477 827468335 937721451 289924241 31947822 17641326 223637194 308804240 762614354 343646416 370000639 802428489 364685593 643089800 883175299 786247328 296759790 861719157 113943059 566266371 504539481 166493662 595665046 208736119 370600792 345904138 718342226 571078261 926618347 52791610 268358581 326457502 272727203 33893219 392128505 802529685 78649991 877060949 245682711 39440503 64665937 624005958 762482575 707312434 641830313 932497756 595487094 513788138 738101741 133170578 26758111 301981602 947223414 939188757 251201519 87330558 813042305 850687215 72502051 832847204 736846648 799891183 465817410 279574074 458872147 192432568 399065701 357076198 587066696 204051741 582653194 519860306 903030644 836401889 413773908 262250889 188613923 575029606 55254758 969708346 907023701 387687605 493196408 360250045 617698255 270609051 632937928 77844627 297890311 127669937 773932952 969022256 223152146 847882000 895644461 327195607 736541548 654771687 200666327 686263709 656853102 944887105 885337260 826599311 78476025 839914572 99111905 266354167 252212574 39150691 856402993 587917594 93792791 728762671 407580807 19223423 499792770 140644885 140646593 112701496 578693189 498185946 44337937 335817171 605388736 468461699 274984525 846249240 419114769 160871841 532615028 922058177 920004654 650788406 933054550 504884559 137120725 255046237 439111779 928342133 136239553 573803002 589345380 39632954 262593068 994364001 207048555 570844419 519309332 882481965 556879887 885690767 780141241 127782936 710561254 277024896 470805824 84414236 919010379 652878695 841847636 229044330 514654332 185027350 274875529 494175091 807881271 815267062 389482375 146784005 809022687 503304169 759970511 728419810 581854148 860600265 705396890 486231184 474502046 27067185 294006471 278009220 386147060 303272652 845687398 934405268 190854894 108115920 868396048 49675715 492186197 868390473 891176578 743544983 917099339 771671431 770744435 869829153 317348755 172276506 354076491 869214924 344179920 687757218 38152128 702958867 717614455 336718059 46875455 661705829 333373201 109675637 556773859 56477474 934976842 872835994 962749993 167941093 668043180 609310716 778712988 325012990 503226986 339593949 899035668 468662393 280779766 421569010 400707588 343877546 836602096 944207249 892546774 234700566 686888136 835195088 373715757 980227946 754834388 764414473 673260528 259235945 273115246 289457052 240442540 823060090 957416736 846870848 108848391 36649757 575151633 59057642 77587229 913004145 789847342 691805963 466025892 106364910 508816627 825342280 625861333 428376368 736304436 253745747 400391847 87984490 627089109 916378278 758282114 886250159 849348416 111373162 414861112 541177857 868636939 882731339 506025014 809579764 191648738 775286927 449705990 39289706 155823712 106084189 772547145 35726541 712369876 74030773 851678498 672966735 501734238 800386820 606942549 647838556 999959205 811021318 84000532 492311342 33843065 639604458 100069962 83866349 96098650 954569753 929518286 281272809 783048201 534595859 521125750 410187472 611880208 256619540 782692152 72227592 897805447 803983427 409336317 44586441 198760637 680377606 652749910 877232221 876699850 503371522 181564584 940409932 771939684 227063902 787272036 699062507 992161041 516251114 895793737 110172719 67324989 456877015 972315412 930214852 772978496 296759759 968466018 759129497 898536992 108740501 115092988 170684027 104483977 597501015 888133775 93555370 517610480 260586179 944418451 467055995 837231487 937188015 653720786 628863650 134040372 295869198 447939783 550190977 942466965 249180661 827557187 389395280 35565090 551474247 231487807 452879724 620596159 174816223 826781972 603585513 31511778 199920274 701179340 153793095 673203155 934520824 879700727 580301604 343851212 556545144 456460220 811455154 636823347 497459460 416953525 583401768 107091334 129342136 277887618 255113869 157796029 235437522 654579678 11220932 429063367 646328632 181114715 727577121 77431374 643895146 779734281 206413444 611434861 557550318 237025142 658380673 68334805 312468802 889679467 744412857 561421247 702647640 18686964 591018403 600199343 293063389 808062407 276905448 813397123 50562181 517927996 266850111 94997189 698789750 46555340 621870176 550733162 867825671 995823199 15181728 380264403 827523288 760410858 817961120 325486923 756991907 991863860 197839696 706901608 252978955 575353154 78778031 1001942446 956218696 773899969 882340406 664232966 817723344 946226818 968694867 89607776 608927885 303111588 662053664 823386555 855866474 980465975 140704267 553106043 840250666 689843208 143816743 928041397 21017927 384819423 903634114 936872395 159768101 882968455 272778253 992616771 988997473 43147035 656984039 534480803 964585832 110316967 181201655 568468196 245194745 514313572 487019895 150857127 818007157 927390217 636299191 945787692 854876866 914597492 303639997 439105287 545672586 703653860 819233853 380218474 142762829 773114089 602212169 180747063 287145253 834482293 689696224 73292070 169932724 159939240 373329238 541465597 452972738 510757073 657669763 617490291 118886097 363546429 621491099 323094235 16735514 857479443 950510414 261370159 143368008 248441873 731727708 768199624 399229521 340959998 398746731 35549818 639842944 156660233 801333667 34155098 720057271 998163676 446891046 950756944 987579217 206830283 501176303 16290478 137415330 512534845 991113944 621707802 11740094 261491944 385568857 502537741 753048005 675687969 715233644 790324367 819548668 70077348 252308409 173640986 588066593 92809162 939044555 851825378 742942941 713460857 968515767 527008212 886590063 378205587 921860815 238464948 425836802 174656591 823629545 412938168 96378061 166276054 825524910 223677589 134641991 261048294 225344025 338221538 90713012 454352856 460770629 2591479 808123767 518562435 354270497 791203420 974155610 222635581 853720168 709423469 470551360 126055281 793623262 855216706 273203410 5737459 150797766 545276118 123238049 792695433 205811431 876910806 208457221 886547330 634526491 352691401 593068103 681390734 480159892 379670890 608325163 725083515 396900766 204845408 538651985 976303260 475768039 359543164 664110414 457228885 927656267 558224053 855885028 679763962 11276757 617437056 1001216745 200055630 450312566 90801005 454837042 631285389 306926290 23361909 33039831 660534714 34759179 299883637 102247620 741099047 885957649 170523351 874667756 385894239 983090275 284229651 573393498 124709470 598449468 464011984 207690737 287484228 762544941 73014613 134663149 474166354 593822902 324449654 951285480 589952460 285009951 608206984 363709701 11482762 848664710 448539625 767158361 993214253 38884716 291817470 370804395 144795754 637571423 298987823 135262390 134192783 742686743 585959998 677394463 939552360 302709853 207522730 618071442 770136897 588998182 895006967 18879215 953478377 697741036 612993573 31731060 875558189 344537771 470373166 812508437 401232758 309978314 514332366 485831776 564653096 841107152 783135402 916804456 283953032 139858792 439215607 307889435 132661443 47313330 999849280 26016673 335434850 234436564 355411557 112935440 470204088 128978510 60905132 154757192 40814769 841289105 814051549 565076120 59486658 251487916 977554952 306057358 867676290 656209739 974878832 353534663 829914590 786471096 762113975 139925958 251394054 783511652 417344286 111461662 13508556 930721465 115758325 131344218 951372726 590440369 145864836 506383054 92798731 35729202 643579071 189048240 961290503 428319445 266947693 135395133 832939421 396603427 850032108 871545982 858820321 759010286 93159926 856535939 710459744 69124489 617993049 141166735 18766199 234225465 257674382 880925560 673746900 328722845 784499880 475030639 862618142 812809353 548088236 639960194 833087923 827232760 813954322 800219608 51819090 425251501 754611097 53564750 3793817 115948038 821015279 396840268 28619858 343266455 994000747 445060301 788885651 929188220 612593600 53286734 490385677 268834763 887489350 369851614 998900985 32720520 848153206 134133873 507676205 661648409 813220417 608299432 546778351 73469664 43553427 996514313 244063604 590330793 419661173 218080547 876387158 395369934 121516330 826187589 615587150 905021167 419528966 315236511 155442705 55795055 661447569 309793962 88118076 51487260 25886476 467194974 819541486 853125077 795248471 989157051 243035245 118820644 327503664 686677831 425383541 16022641 609903456 600278858 719647008 914892852 602233190 456652499 736254418 441497118 830884028 962707215 212564740 879315293 794743298 717344438 844080559 823537490 70018231 139405327 658231183 686002012 972319718 127626891 684309498 467824731 81035332 154837267 115811733 718066743 903220900 811074251 247003681 524929273 571555279 548383725 789882173 327508786 85566072 631699777 587862590 987426565 421714755 494652063 52920744 998067099 124052627 497973388 952014227 946039315 697206948 583789673 413416477 853901073 816393289 693479410 739187875 482539936 584320322 278953942 550849672 83402240 442048430 283529052 721545294 27802966 603544744 649844818 452975773 902470954 708440024 862142575 240158692 600005447 845349219 295328257 198758584 722621080 73330927 486822751 234309603 973217249 174069442 308464588 416856805 786078100 348092233 161102670 213068506 852400751 580281528 196559546 452080194 776969894 610818808 347939084 370738559 972486181 98147300 527357569 171446102 22364569 145644894 297279873 514469079 150212837 819789548 232013698 690795443 473533037 109763950 948781745 551771873 540982210 274690041 249715217 778872322 479603240 169330663 185886336 287326988 993934901 535204079 941452290 213725869 99361591 774752903 698582038 124137551 3222782 265308007 931970649 728068262 18229974 268217558 801044593 462772067 482652018 486467785 935765594 781841935 216766564 753185969 684558815 516482231 197380349 5111710 653605452 771434863 858548998 331957256 749444909 129164446 140541445 222289205 737349704 937371384 625440045 120954194 788344639 938277831 699019819 983322690 102846571 355186214 522920036 612226344 138745850 460246790 430366245 654325429 433367688 774351450 424755494 75659732 256820469 378648539 678881119 271161314 978914110 44419484 751752717 615656415 525230504 842460727 717316805 412267409 455298804 223342901 565280050 667685809 801742754 727684153 244802110 246388658 456965645 975388498 445139128 753354357 147297378 449942629 645019230 369592313 941457470 952616508 790039688 614713607 12676146 452526185 855131614 708134968 755561429 73113045 519172785 498445968 117026311 708267931 244329964 742849845 278578966 579923246 606460994 773311202 369408714 759862562 553012891 746690670 948629130 149405928 334635444 617492352 449672815 382927440 258405235 215680456 295549331 870522674 592947530 202023803 919340816 655816083 729029671 980210541 668499810 887187815 22859945 389182522 101335188 64403318 902413540 937650986 218025224 479688130 2798761 662209245 187564690 351141236 545808298 622248208 231272125 107099369 958199367 776992234 541117342 219489376 873873922 531514984 754579717 169177244 59588398 837296826 394799212 694725226 604838088 45786097 312241948 402083300 563805813 962968661 933992626 349321151 87300582 107004829 498830458 680938590 824658383 279273312 494262565 112231305 356636076 978380030 433152382 651394121 532609500 388640598 572220040 327485208 659779294 568353352 227490823 908246048 106490052 35819552 869942801 669851129 484485356 837509021 828073990 853084931 99141378 994986993 791246891 630117811 416476315 94342711 381518099 69790329 943949400 374201435 952668734 460184339 765148160 110384731 908028216 954710858 125913593 330648095 782080687 564965168 163137139 409528227 607609092 659455860 192078071 65791497 283188422 980866643 45306150 989061917 615207846 409535296 826420198 224140232 988868239 920342738 263988170 603386083 904141803 490829664 570724315 629044419 484657106 944324426 403801653 754037982 752806437 878360883 886490384 147889202 957296029 814426191 161829030 945108208 230607741 294110162 534210187 139381135 295136579 791335115 57582314 592549152 860536452 196597371 712197605 274448169 452794859 18723718 539566237 314315919 629295485 356013857 312231747 33701804 477143336 885084385 686518171 362748077 508513780 525420122 159853184 252986328 920887291 939960029 778987649 544259940 845729258 242895674 178792883 681635355 474309572 975295629 577554271 523700032 390298628 144227439 128852962 973357275 566734773 327394300 613060549 383193680 422081457 750665602 826818701 200493180 239890134 825993545 745100437 907998117 901217346 694725198 624797863 840143374 72877543 23478429 891108547 580963987 639376323 999834759 935879155 239887982 792237921 169998298 390188757 514452991 587692053 399803329 615838030 182559920 981381562 908481315 807180927 391597406 481609526 720348235 213815368 611135559 301662475 52202177 536686602 466141762 822407664 428331000 894972047 4430533 675479213 700720261 426857057 592212495 4913657 876854794 175216658 123195341 99955994 209659055 539122964 414525011 218636460 764056545 453039330 613995659 584575931 141655170 214526365 365347124 300392765 431812409 492555760 255726794 125221467 967887690 844069671 228776747 605394577 195756911 438848721 720902046 738989045 514443145 134603990 487539720 781836069 824324825 636985517 246808989 922342919 156799990 66241853 169390490 86253270 932219644 721526245 313286083 512487001 164946459 298855489 959012871 279139888 381621710 539409903 37032882 313609971 697411755 63672801 310418775 909520592 574584379 537600217 460867962 685187159 558403908 728103934 871644863 793612316 480377340 724739908 93463851 804689089 245524266 331032518 102928658 113891464 641004513 381987634 590230361 284970009 908772512 199950041 847192071 577758439 555499303 534256558 830216674 190051922 584733800 646836247 434069323 784787874 233772253 452705997 523845004 367920877 779923158 305547150 695954402 800527699 844740333 408726399 616973453 641122088 839062420 538517372 751921959 11213537 32442266 846675273 963838986 37446314 754167965 511733930 811647026 124898835 694436747 58731033 244996664 902419193 815114044 288696767 458981430 149284743 772759478 123869354 60224158 59846545 495156939 267238414 67577082 591210944 432309868 78887605 883943063 949225481 17311595 926627064 999042745 531364478 640942504 166115453 667379328 920087166 686787409 572297980 182540719 148838205 355593453 33570555 657451662 481273424 87517042 611823275 474956892 281327239 673163374 1457921 693581214 484872752 340779009 803017591 915732403 783072856 838164471 849159704 66400938 168610331 893503238 251340225 289421234 97202548 978987019 876270184 774835128 36883574 679121462 257749247 305221143 319513246 880827394 556919913 183182015 274077946 114092711 473116579 954877427 569031234 147111315 326297468 817917091 561361007 299066778 406038678 585723433 715601021 326468906 138059593 829887613 631298407 309846711 817183390 121284299 45636629 439466141 143628329 462140417 664551742 683358907 3732475 486304452 41970832 472518835 882121214 427518422 685693238 594583428 574635798 531725844 277406810 772331444 826334390 774659516 285110225 553048446 642640327 586056375 252963194 585017507 634748782 808784864 764765778 986788085 62613758 424881670 190063967 693487450 710297150 301886134 23280655 268530890 626529836 208315823 170721920 391144204 419771402 125426500 597923070 629531672 774527069 898380374 534845918 526516849 182415946 956800820 434042868 553105453 676267011 94623114 545794429 633928680 787728561 441416156 381069495 669376850 431239782 931059420 132080240 714691731 444796145 567505383 581660580 622011116 548872137 746801196 197173862 315794426 431962305 929282779 364037995 861523460 655741553 416065687 997569332 716275326 451448352 435303779 757041538 252649769 55103984 324465026 700057695 186747690 297960082 251203445 277599225 63669851 188283456 137802094 572068406 266262070 69311685 716547729 919532669 832290138 22186226 361352160 433141312 105627294 182334803 899504990 513955658 618167575 684575878 54171308 761972146 856477106 908715206 573642862 564749288 794837062 423899982 621859830 281770687 191848903 119626865 361378858 491753 998967335 929310749 495869945 759340909 179787465 51799398 646113046 85420401 518437017 753197920 887648881 931839993 315855877 386752293 686220626 172013608 396742458 284712286 194462239 70487777 541372503 740003985 830525678 717372965 463688542 587536618 410213329 564120725 60281686 747461033 31344787 883334491 83044637 963551645 110817361 466869403 721392621 756394018 502091428 270491647 924281209 276265563 432385230 626115367 953538402 816216093 753553806 378882890 476410152 808414517 377682393 922985482 773619182 616014757 625142671 159575704 679388970 345028349 322094977 157000943 884204756 377375779 799402210 372792962 379589030 538179408 657546220 403901710 480634680 916329097 112350393 201153124 367750570 498049966 562987605 852391144 29710385 451346315 588068110 703375785 628269839 411714376 21589899 427326895 112698315 408396689 993814448 884614143 673128292 156158349 465818278 860157474 983776028 580162428 940801661 948460442 747917017 311971588 397609336 805569177 884751609 349952771 4878023 681364028 879233510 531427223 119868695 627595606 238993647 449408496 607786511 409954023 667244501 975979128 862226731 91334390 63775990 444309532 941104350 748904294 162182549 260215177 266837382 157516660 28231030 993955720 969243100 872868366 685085463 280640046 692115624 489856867 613909797 962314591 286746787 321946839 458834990 308399258 268642716 261434599 698474290 668950235 4927079 183204087 606234773 774809666 313843921 131163408 459329609 929306761 112812311 453451783 126896383 707296758 254745261 180642036 511176487 866378105 732946315 33063943 703277682 771538874 914938116 894769681 526699910 290537512 345070318 500775758 300661367 730301448 54937651 730462760 589366133 502572875 112170266 464090256 344892379 207788034 204223104 49229857 747882017 198824567 344211031 202760655 911387564 981492635 327417535 95837288 944278202 176396162 773270664 192736707 543690475 714333858 675555459 759193696 302022538 128319133 869751 151406578 334931247 858808660 256190685 205129088 889544745 584467800 153007357 538199617 701079742 105764416 341124190 784968684 789269819 969789147 871464581 127196044 873800748 416654241 351731297 767943829 261209472 768889572 243398598 70667939 402621738 664469694 604821107 64931517 311727881 499182748 563890124 154400458 86598631 713397147 354198105 167557152 437322158 703149651 369650785 813096259 103194551 737811253 825532784 16065478 204122799 395159040 744387817 958081491 391881906 348539882 643193556 857948048 16128011 967779792 295907926 444440451 384572272 710059952 987361307 575881219 843105926 747812096 871056118 681716079 185621524 386834869 642675610 67490227 470194370 892885953 872134051 204095003 200641480 555511596 989516985 191002210 683100986 644023799 784340038 930612246 965244963 265021126 593340101 1400893 913778895 708912612 195225038 607042244 823018535 889033858 127026876 214705629 708425530 443632470 693618970 472128091 470387391 645573417 154487213 206980741 221910248 820409040 882251036 111722330 75355106 712202033 247714267 289907439 126841778 478109852 997470316 175594972 425147047 765976633 571464291 592466265 405501 460072521 52374106 212611502 275480841 7778703 161819955 362212017 690972421 820654332 511560958 705798479 919534043 740417650 496405231 794998396 106691279 548833847 867235176 983156395 751277480 382498644 805365737 80888586 88923884 263100031 477633787 282989627 876352752 463383659 51935900 211335901 113970856 181878694 808822452 393973267 880157124 569677278 30268928 81759557 821797628 529408139 512792801 614649242 390659909 536388641 220442821 953063857 943108657 206031648 473689612 447910685 934632007 31806763 241831944 952349198 73716597 384835654 606228777 271191019 843406119 442332298 546779803 993009944 883281509 249743158 466577151 997218742 891381486 996803453 489704841 492636192 105484416 954272604 858828847 777686151 275162392 775807739 16126102 492617245 106277805 948616683 118470293 758076582 74818325 649894905 391685435 44058683 68591587 970464656 44787724 573901119 276188116 267087976 679073530 498987325 147687773 978159308 146253008 606054976 40797808 552773834 722375720 80038605 472031932 277788185 294998014 260347734 36099033 407000600 757976884 58495422 293768479 840535891 40753202 810714367 676951977 282701967 678387512 668923452 803866814 723821001 741140385 864463578 466237446 369860073 72230179 46059779 990555640 824639085 908680006 559159494 661668329 322880680 734740182 311991174 444922682 440595964 576818704 436828969 984461551 238095924 896460286 915503669 433686019 231322127 212124475 955577398 266258611 501055520 199632662 381095904 718790655 294031674 667492278 7720499 534785079 48982889 337391990 690204267 37534299 211311883 887395647 974044166 457693307 131807039 983641712 954789347 732748016 264529482 594736868 999896527 122681032 956196288 95613977 981892636 352104550 24305847 67069852 81445408 128937138 108154649 824048135 551697241 476481768 382195644 28293840 644502254 973105798 396113846 637552703 328804806 496811729 437280726 754491329 32752577 871178408 841117501 222016801 757394470 9503726 504193023 817486142 284074266 476139240 636796445 2485628 960473827 45420406 829907095 873041644 668755116 26903312 393746303 135289274 553643749 997106283 558492749 690753427 5901157 845513990 372644873 596636946 373600164 776577333 562216525 785373800 245353960 668434492 417186271 348116326 277079914 89635867 47985308 125213506 331262856 716055161 184996038 126128928 614396067 601027407 981202727 745471685 63948899 134509059 628892326 426677461 449163038 808129789 165673285 691211565 553011523 459781157 555850296 233702311 442448836 472161093 115583125 848858346 44645461 93569342 986817878 106227303 874637062 828251971 921536998 132518142 258611043 164632277 820529612 42518627 485301109 691031004 505216075 205586948 861324424 717716397 268103286 540331552 986621107 550616882 725585935 101632155 177753498 547930217 694293571 292838108 360528859 840398167 396185000 797049261 675758513 628506503 561608991 542796130 334328870 912943620 12716442 763478607 123806393 391070727 515752889 503808630 608536816 23040448 389523240 593344877 964017627 857595061 586208349 780206036 538230287 101238476 105295065 461442591 653502470 535499753 975806802 253906116 786359383 280527967 187473672 516081334 725749970 41582308 602009306 463991039 597580851 51969291 17242892 349376004 340330309 280901226 646131345 449516069 269880774 557751471 957116566 546046609 148275884 399005842 229461618 666005262 405216913 698159822 697339547 325961380 917893820 457598812 412534872 188887176 236346507 896737665 610493472 513491594 65805825 411005866 567311697 63728770 645932035 315208537 560284353 959926616 822627538 124148864 973725404 510073710 885232722 640809593 62892417 715749893 610674218 841817352 474158108 771483979 939344074 641680146 924625345 517952917 229347820 997722647 327353398 672689564 81890826 516777125 54231403 247609882 847733643 73190697 336384642 388075126 728460903 788352128 708606720 990601698 756782905 500231679 223330792 688617123 526570691 527169179 712754112 14241618 113755926 943654162 677801873 33663891 49945109 276500193 408720185 5965034 339350373 890254111 680374723 59262063 217875210 495215830 99326607 138136807 39904032 315391940 902143621 21706543 289265930 803706675 922386690 609796543 268073856 770041086 866042166 989633939 814034093 413741282 543534232 432804094 787143732 584800988 850038862 622583274 550702976 43687107 507008683 515671711 857923563 754516015 610661525 475113646 906804180 516482641 665785878 813267288 149490353 869692074 734320842 746211342 149016469 673867879 273275057 513966676 101488490 495016702 358520987 141621451 25273814 671458113 986095888 377641303 23498658 416695156 378397110 962430104 607940280 40898993 743400047 272689139 907662408 571306041 389253349 988051046 402134207 105302602 792902765 248963190 944222951 926614172 109396411 703856454 147282413 635785963 543211213 507932261 990069644 135890619 216154706 588532990 352418189 759407112 562051909 529982200 936094436 347612296 733210359 634393244 604553411 852432940 141552308 864649181 417716791 967283224 296240707 555941763 592068376 97568763 126552637 25592152 583334471 769286869 47938545 278191271 761129413 237674520 35780652 153082872 599056887 909919234 372678114 635361435 216836761 254748206 949724162 507129982 14868763 861111029 161581150 329168768 293895442 891261708 249811776 369932160 477057638 984472230 890179523 829679154 12987500 370610626 500550964 635144313 226433804 72693097 160690274 783014716 106257378 853014447 497022063 361726228 730691248 387109352 60601952 349106003 739182298 262788417 307860876 240160170 247905386 855730838 907435260 151178530 40265823 924949931 573734142 781168421 198815484 995845373 97929589 638988084 800093815 1808639 716632242 148375901 763398775 707511415 27768303 66589198 318456768 938437466 290982935 312924580 110565021 499790756 808391569 211803414 266650502 179792403 787204002 391913828 342306237 785276921 919122666 849867870 397122506 465593966 379274014 339459566 699248068 79349113 626463766 329981897 443582989 260673401 247409700 114898233 314896147 559794836 247608627 417367919 348994659 818295413 871238593 651001587 17010168 246287357 755937930 517837761 707866399 729537428 270866925 481332288 36741189 797249928 950366299 746304242 94761762 571145550 848561613 400226506 550992399 572673601 574411687 120686748 947187329 8921452 751136 238829255 81958041 959342895 42400376 998912544 27148899 638037665 677372932 590597681 615342178 695240261 150920858 439763509 757833633 383472638 322465313 543147975 58019968 547895405 12309199 662101573 167991679 550347714 874382882 628158222 490593345 685164679 559775901 194355233 992637495 141500924 61291983 695809947 193823911 899563413 865673181 900172620 213427445 221264487 780791940 301202307 680203752 898636187 18791848 357325895 997358513 693346338 792459580 583703933 411102253 602994295 422428576 855179636 474683669 851665405 23565675 250394795 172723012 626712507 175660715 759514104 76179918 312513090 535539771 246293058 156236127 823254558 570676753 784919496 329463104 820194235 188645646 428818942 706069714 659838864 718355143 842366794 699900272 377291001 543075432 879502510 707678979 726248006 142444035 447735308 670897404 2178689 939345433 512319606 376322134 946257140 621064918 70334412 233699702 350195433 700981857 183662241 230429223 417789990 28233632 828530347 606233247 497851692 999537672 880014523 478684731 704932520 578838157 49227492 596825097 102856013 205191908 709593451 841611670 147560243 378220080 984472446 192631312 264721018 116606481 510151165 451000441 904746369 572257840 352616449 987015334 749168875 73049956 262863960 578122350 822578197 996699775 104570265 982612481 270994077 224611533 794600342 727077748 864232705 873403161 886682192 420541631 704910315 212111047 121476313 560218559 756585072 991524163 293972593 834836551 329377619 277255944 891599434 240938905 160655629 13983485 946799555 422643379 425366445 157652796 276453697 984768633 951139391 488065705 984504614 685828269 289225771 186493666 196090559 597039107 624242360 201424382 435432927 877501132 845931709 572554472 996838531 322215360 382503452 518537538 926522363 363485027 157550190 176987016 453735510 90834653 754500440 515305177 223992933 670974398 87973278 263379930 685965395 443163032 722152484 98907236 247273584 724775812 833713985 757358451 532681444 281182832 569341905 557834032 755126383 178443123 419540187 250580481 884508298 427468259 169103505 106417923 868387581 442495571 220097369 181714942 68473266 876596007 38414660 973219675 177600122 25247289 160903658 238925206 726610455 736935826 640393476 862956051 816331284 15929227 878783921 20659970 541181154 108364447 541940593 574058670 772469155 285855297 28008505 584994765 313903113 741444131 500174330 60515672 677643769 726021033 153085480 232679000 910929787 623852013 400849644 198401096 964478937 859347508 356331554 508431367 1001718167 455646043 873017438 845016599 43622275 89317432 343563441 799461255 308448143 184686890 291083922 722836358 913293247 219224081 634782552 298174918 922285250 905050336 734888292 497492712 271481389 182803213 367534281 683937250 616421423 602873290 791150439 972766946 715034474 925320155 617945141 456320346 549671482 673841250 5932842 561078736 847414049 650286929 900345446 383953681 50998795 746844314 892724383 366536910 230694765 644254244 735058467 235287626 671744825 347920407 240835436 529042308 962641047 260534249 212482366 572992047 877778826 792159549 963683782 506033171 175440650 507712623 337919524 691909376 346617401 151457932 658167921 410968577 977293207 590963441 732604394 4076701 853111096 446974330 76841987 402872784 487821088 533782109 584631270 283615423 489698616 848636107 100754827 233370477 350775026 381454629 905828897 451214244 738559261 964881999 486447400 201257335 997581072 889567268 502677064 320907630 899989836 640727131 153651579 375406932 798515390 822358008 775165690 207896022 297879227 490349232 619258579 373102937 917750777 172382924 1001106591 678129045 518158807 727963249 487751648 950214250 38015250 848235092 79631719 703371955 257151178 113518380 386586099 875237046 751300 369816119 37752464 125220241 647837204 976045713 829295860 309818942 733519851 349304792 330460266 90426215 73218213 52392738 365837021 646581137 65420132 263899826 577843263 726734395 865906376 836427002 483819916 715108767 963603893 415421487 279435686 442685389 870685124 165524181 690292619 832410932 205352931 757895928 118520837 372012168 523808609 439272321 450282864 799965450 694870242 527768883 492060129 780081687 777788434 171909596 536891477 399183517 358079320 133177022 363568854 917743881 865826863 301541704 215921499 114732315 386297020 469797517 551217049 217429012 650640679 332530289 772876127 466293054 883785116 698946829 66429116 125606221 715124039 449208188 413979832 122291366 831189551 976150689 854905647 612567010 690716340 370345493 42705872 91859057 373608781 837714720 160845125 990168072 762054773 275586573 452067669 822742384 743854105 159779338 269365356 588082113 983827505 94673955 180941616 886551681 674723288 888967758 957353052 646669831 933876454 29191058 410879141 234235958 318989315 233251107 905046013 324627157 753996325 537584166 77916164 681815045 22461812 63933897 440893673 149535917 959223832 335379406 353252498 323434688 259996337 868108166 649161455 103862119 629148888 28299121 349967158 178273276 60887382 450765915 39543679 198878654 160800557 244957134 825293368 984932788 977495507 608594951 253328078 540193897 415287429 760108951 235542726 171689185 432995586 148829700 737351044 539201167 527348112 33343299 465145702 905573210 513389216 656753067 681696283 273256208 218852398 378582818 592719031 485702479 218333115 435534198 178351832 820334310 471539874 329961615 173168014 993138109 848291623 802171255 112431066 878759589 953034755 156877216 339845971 589720889 902566469 949693403 870996892 249046983 22217685 138610687 556607063 230018400 246085295 959334458 336850148 183987885 624375037 765713347 469581299 453148178 861113594 942901222 713285523 744732069 821306246 870736529 890221657 581955041 81384619 156082135 568330403 84878423 692752988 197398984 510618048 967814662 590351451 996394195 509021708 205915569 577569228 907886134 313304457 33234936 239572449 857849969 257419192 446040339 583305126 23649389 722743881 586169856 618920199 315615188 666933654 246017356 896788442 2814716 77807764 506663084 494925750 810400651 527113508 875088147 108927392 184194542 88950023 400556209 441999363 63832793 774358019 425179698 281400217 812069742 649536392 557128338 647720834 466238166 7731705 354375917 835643991 419573453 243547053 783723612 200730633 261253590 395160406 997472888 673064657 2491425 896034648 906860211 335841840 960261676 969866849 241038392 558415729 249450864 755734515 887633127 228619295 68283706 635349461 942823532 62298868 189312472 78811979 189839355 892001838 682954068 593630392 23452459 295136302 323106771 439910714 888077839 793992536 725819010 523688918 405085440 117809619 595602921 445480054 826621932 879947441 190739353 620090550 768761422 297014617 626487023 450003444 319997486 752906939 490427271 718773329 781141185 931061852 808328395 746203587 861138749 663662750 375504422 676841838 884150131 622160362 541150116 719218817 71868627 462640253 358348740 968729940 356467932 383370352 151001793 261421272 582741007 591662385 375857961 87020186 438195572 610065489 37880415 446919894 772267436 928369194 384974563 831686049 643889033 23320967 897661485 40411920 878849659 881638389 80539365 34559492 657230284 80224860 896989587 26424326 869224819 359548323 831221826 168683639 344175763 847811956 246519988 899155709 223297520 447367373 107695837 865256027 730080926 347097329 730520250 69511147 831596778 607742572 115045010 393337733 544854329 986158155 3079349 5584672 398194352 150389862 908917884 1000358731 14853309 733928227 325500826 695667291 891737514 317698652 159330821 725378502 630076991 84048758 445858686 165013956 115547706 241980310 672647438 979904657 896959110 317949866 536429687 419610460 855849389 168759576 43439745 831709093 269958306 715397421 432836943 467272865 690216339 253852954 100949208 343855558 221268727 233594496 718814948 848553803 930116012 490503392 185349370 80545649 539934222 272186753 758320936 791961938 521653821 626623095 960519743 526906797 214359724 992327410 382128446 452684998 679014439 511376034 626379949 955296591 998297357 620633232 903452243 828258076 705975558 731685661 718231342 129172518 1000097030 496333098 118322010 638766619 204359903 988895979 157244332 6725666 28827544 208910697 79876540 797634224 145438254 555922110 565357541 483918895 308344852 690328584 358907589 495852827 240244830 604833336 584977550 114319809 345830642 311894128 119293074 228352819 734133217 711862455 772202548 750946220 788012257 993600912 848740810 812693026 788019675 11052884 927183955 84265562 534742726 69014112 431913429 750528896 810713929 738480236 852125095 687977281 181470610 456486980 379281339 946596128 940517519 720419909 631602825 581661807 672896335 7367605 571853781 970002736 928242545 132115043 699190958 20456935 77070311 120548088 128681372 400461072 84262093 464286225 668948209 470168301 520096435 134384032 549134436 770893436 544972570 882401234 247538652 151750017 622712014 648674157 50950316 472979994 840000144 79141926 107814107 96843485 515827282 384979216 98630021 585078982 907414159 893657497 518193335 287483403 186609775 594585110 870717571 272196129 571090637 209294720 549046799 712748044 1000304011 548860873 908255120 570852501 58030310 615316578 518344474 234949968 336411869 977633721 640831896 208898342 154440843 131479842 866954242 755267614 335380226 976035461 289776657 536209626 707887055 887799412 853365194 836448385 393063279 364769662 799528692 500656563 385112089 6803019 809110913 465893748 478496904 809615624 1207957 558161810 642166286 998762469 310219085 388732637 675942465 103638581 546242235 971350184 547934085 186881848 623799375 402415873 44922627 397827463 991672032 811708522 809096397 920284972 280541582 627473735 823920251 360666522 176433312 371885030 576341043 980816542 837996958 22114404 969650010 59453674 697498305 572882974 451995264 899266196 525203103 823049976 806429464 312417023 698383703 30684382 527887401 494270883 61994464 975266349 210427883 604478897 391921304 113573900 921559310 589467953 385402000 241113850 222300275 880663154 87808658 108543663 979956575 102492778 350944936 364451198 997080132 85422951 559743438 634889384 211443632 844084408 824402784 82895696 756121580 77579962 987736628 1001349625 575199144 671698756 256571039 962001132 848379662 705492886 873798872 238316027 982068519 973310047 209417361 295151126 235453898 154534534 314136090 380908868 537090660 449113573 226624776 49350453 561029741 432525575 402685642 210526681 271879717 476568783 338430221 829379568 110292224 455283705 21495259 531030638 784778232 683082361 163348096 571615639 597630648 839555292 743459368 676899141 531768061 296745004 748283018 308024471 275105217 404445130 387749930 58384903 48821260 927581839 302810754 813625278 160587133 651691393 7840945 939748009 236250776 392952741 564693018 359443452 730980959 167609957 368985523 989580502 281169644 840645735 375983299 784464720 754443180 129801899 865975155 655838389 320232721 656813234 278288604 27948127 307218855 686774974 857869058 125387285 519040350 249269812 45854449 682350528 804399320 49156706 854686070 404736061 684726118 311333219 869132704 810067453 370536319 388836959 935069091 329482376 48559904 441417367 887829394 202065830 993741533 132298847 915325422 955119472 684779446 672028132 666227167 265127640 608282959 222054551 959061911 342157091 76300347 376295518 681035768 927276816 403611568 742566173 978425674 467519934 900741093 369198279 870369857 88172719 468993900 6860170 388065126 503238521 119683436 685041016 847041662 738097818 97685377 294115290 483686034 619134296 818635844 469087423 74081319 19583896 38588645 330731576 58368719 196594703 532198713 801813378 874865931 628545511 899479730 356322097 37608535 126262538 827311935 959760078 612677118 20581522 762483443 455490863 299382538 150492177 511059184 455821522 908047113 862005958 397175687 894791987 81956313 714732613 150693987 574780895 66975231 121961485 931648593 363836572 542676323 268242706 60763032 152325173 512019152 957319303 167866141 385403628 850035159 525312355 764930308 132339251 158049676 440004198 390029224 595740017 890756260 517385561 483815149 647512249 898684545 395134844 79011000 604227082 203536168 695977075 931727928 503554248 331884306 96958579 650341774 42815872 770565475 268093588 546667081 545018648 315496984 102638842 973458054 640404443 542570222 698101047 845628560 26375792 298938358 939183624 118009338 711888005 140651415 625792550 390596885 753946005 254834352 405496914 36852450 469700503 852962307 334209539 356522148 627447582 490401501 579932950 915399691 472404356 363513687 213569439 106980076 843256511 610867962 242827373 589385561 758125656 601456397 55667106 298196914 626920363 173723551 701437730 787037136 884296236 7794689 451523474 669589352 606077243 841481987 381809386 41694873 128243816 686707865 702607622 253643869 884356756 269906145 485128574 494830264 828387812 201347927 905175843 118032867 356786203 607667905 667384 702317404 879482613 518990008 655885996 397914343 853462826 81108330 480665027 270584004 331222271 156625508 693071792 31944619 88265529 702577929 103647972 289376779 689180789 104823337 383813534 545278368 195746676 18155810 32090171 676744504 162399823 969194920 978194403 604673386 181139670 197767961 820029844 193312986 484611150 830997181 519422465 736193749 953698204 988513072 971903215 914803206 721317386 786882357 32812243 795179040 262593936 824226173 785559106 446015687 946539416 504127825 248453962 719927048 569166598 789031309 945701697 545615776 284246618 1000778210 646183184 524871259 929186080 132190131 201541667 472108092 111801201 867841649 554235400 885406538 932224753 486795559 998091475 655840612 969979909 329357429 508334711 917179565 625212614 126527536 35010231 55490373 114899873 545297095 616022317 587122127 360604041 678859349 25229009 562982660 981557719 138319667 88190051 55091222 927251142 930306310 383461855 53681804 587687044 757296814 288093721 172842063 498734657 969902210 596012649 855107477 677667511 587598515 783492979 77046081 531327397 862450157 945967538 225468767 248345776 615312398 671168229 871811830 711497714 495229108 697061470 600151211 86973756 624060642 606990727 353322263 124642586 587610710 329009742 292584401 711811082 893960428 448412352 816370814 93594727 94960678 87685489 863739543 131270988 98292150 462209420 487653369 107702230 910229340 953030137 769087274 484888963 899223983 211887949 812051955 514436244 597894086 679407044 755285537 200401712 776405536 919306916 484399168 755470725 833908728 536283339 261112460 29995703 324273956 774800433 209196229 694913372 680379587 8294996 346003486 981858333 978848366 448216865 8726479 818988953 629788916 775593882 671229247 111792650 721611387 848041041 992562462 784290864 612202212 788318963 712624104 947672127 721153266 378700272 190442957 339293283 110911394 247209022 36582055 401930619 686820661 401645746 940113684 979574430 60612590 962911965 983251956 680846463 702804612 911351004 75234307 368521962 825509086 958551580 6818647 224352252 946017142 815124968 670604879 441978048 81738446 993348709 634034966 859349636 721294722 28095551 567646297 429742030 141910432 880963876 92879375 817992448 83904575 825431889 953293184 200231206 269657576 889609170 451516787 352743288 346416548 189789352 35170310 681015439 460105222 473142267 452599048 208837803 711710057 82621861 927623109 981676929 431069328 787124306 510772847 187924863 289371631 208798415 373138960 851069542 595566368 377852075 628002198 441211177 341237462 299103075 44523497 865887388 800198784 400331486 63709722 290887858 409424287 992283114 461067079 340083134 741410349 36853859 287254561 140041043 790435965 692826112 995725510 13521518 102124039 957521921 405822434 494386269 828418082 143913213 392726823 530811291 129245027 147309826 717134943 40557504 68308787 327292999 88179041 742311538 372203167 476772302 206964670 543925316 570152871 241502179 66547758 530171044 668182646 790847797 91186666 654129848 744746232 481426813 479858393 272298100 955163198 109641569 649128770 381353262 138494832 492926572 414506936 965543469 430701292 534135035 605516645 603164240 689948021 550913612 288174892 200561934 137382060 307296549 609337853 966160258 850114355 643094964 923383584 159943864 533131343 930202998 972571009 144759351 962939194 431749635 755947416 678877774 723391053 625573436 553190660 361047232 576216724 89910753 676024055 348650413 61757623 865947547 775291462 659074359 891443711 440796660 396105292 169868960 371545577 427102914 636692308 961702615 16026817 287002546 424585595 441481859 268231890 356905379 300114532 404301688 790043272 713252741 570117717 88167154 432979577 447062512 978747977 315087364 25902584 461899149 147624586 844964590 108141666 999661552 967035563 121493266 819911741 538729580 9431828 803276082 202054365 284024246 634726163 484786304 393700227 431958734 32192356 975008512 928858079 1000507980 551009675 861529010 510329919 822765609 809726609 458789771 899137066 54699033 360521553 768176136 64830436 209689795 442449161 176397902 836674302 297508727 38828647 798197090 820354851 473867053 616534031 95594908 527717274 626293357 643299491 594349365 519706895 252255331 622141418 438590685 823782989 891109693 282172236 268515272 569830032 308388288 28841625 375076072 617692767 618814514 324183073 696668025 100279044 304971651 168380122 5588102 844168854 1292485 822748395 792000170 216888784 124790980 603741051 837402578 499945487 401309952 887177131 960855649 973649486 232239497 129111028 428370979 411993094 356022237 487406136 463294831 787619148 840557661 263076041 293893276 442020844 631999539 720780703 484819 77347418 201039151 573210454 467469463 624515470 546934625 895978452 115481282 691360124 687913207 118798660 116822293 300763304 825428662 667237196 902783247 829337475 623726553 402316000 872215499 528609116 149280712 552790235 25748282 169009933 247221380 756844661 95761061 593761923 748594647 799022157 962181419 184100240 752926055 811285340 36503325 568609165 97932747 857877339 93008509 77928632 916242294 721591121 717502461 943045385 280415076 956102569 199238850 871319625 814947284 421195836 219617456 388633344 397040026 732069839 375707987 743385139 606461939 787641591 205702960 581900471 264105715 427324675 890319932 734185909 44631906 583122316 370721960 160958441 732668745 278337042 163925989 346513971 877418305 348316377 735659226 70532600 98233245 602528825 19336314 472429774 848358043 644902462 493461733 700417569 365756315 992760362 445693445 874034439 883736736 204649188 227490296 830212833 596594217 969274219 103561980 962088686 83840064 182782988 935125963 704009710 555547909 168636120 713265169 884703833 639802909 358649404 264814082 293832844 550319070 798793135 755890752 991101114 32959189 642890699 651391957 434355021 24025900 212280173 524218424 348930116 988161631 61984069 137431591 104967606 735836726 638110738 436179435 289235432 370429899 646179888 984012351 257701781 496247125 505162680 266919990 875647996 496577490 984949816 433406416 318851368 298653071 628096897 552044134 201118030 553385869 31156244 719730926 115898997 212968555 738093087 457268543 596406130 671446718 990991022 84223631 79054375 623885893 949838392 77488790 713533713 208101114 752525506 880323385 553109539 761051600 772607816 128588891 77073100 977972509 920509560 316965029 220535377 460132359 426945095 318578151 50044010 264658981 184759163 364294910 681053625 463701087 586916305 852821316 17531305 533881900 502838824 40227287 432784069 944875388 926419429 715864046 944228895 40715744 619332893 220688210 444203963 311252393 91302500 48148248 909528977 291302811 567934982 508892492 159364911 287554452 727411706 210460340 977236833 459193469 380471350 512464773 798845597 588408503 708118242 450768210 780965247 961421375 387059524 598437536 79056191 504439909 919167027 26689593 399791314 5969386 11680277 921475538 291762086 20046458 852519639 562276257 74966716 671766354 381609250 727438607 758968452 858370160 674790841 838468947 286497770 715838678 399874561 710427987 409536671 903309723 106242624 325173848 153651792 438403563 637763886 294827051 418175047 469751747 780615937 445855040 717504452 812218126 170254266 754335748 395209122 279753192 250588314 368110701 315832177 683885006 546525945 713000681 672289449 377395501 52491739 215543630 168799321 165754658 810971993 562361771 2145999 328439108 526510413 139914784 736965146 216719676 695968420 220321766 601899747 645576027 309849278 379556437 928506119 803493236 734920774 37158176 817599437 385970291 979739006 558226706 112260095 548845187 822092610 736238561 782855412 779029161 826519353 242971092 747678936 197150975 742843156 323752385 3303475 138836024 417617405 733603702 198168684 365456062 585533043 300495910 487131974 822048640 894533161 768243577 513954779 929686789 747504373 41394125 730207594 421519960 655327643 359714668 149980064 973384688 273196469 168990610 275374585 124705459 767083982 701053589 772043804 107934509 293422348 115112570 920905855 811527038 503488250 78224976 110380649 515460251 343537480 836987947 920816938 59783381 195926660 495613210 650780993 524525957 910836773 375370566 78237676 213071955 666623625 9918356 921571598 453474026 576311524 2575937 35611623 35414168 442982380 988011516 185377690 112068436 814393519 316319520 105836143 664716535 446758888 695464390 506706766 691915135 155129321 524261683 412496483 565555054 432046135 346788855 784658801 147326141 318555660 997858600 558095415 584390703 919554988 316271211 202791513 573808533 183662867 131565184 740282680 106275337 496729123 571216473 859406756 240450832 618852086 510911858 211865249 595111588 648679760 105342470 545734145 20122449 512867652 862369471 757830276 211132436 801309412 727573752 428467933 422207024 259918799 833086753 621832132 118569882 256456518 66021622 541986447 487224416 256169039 918727186 80061503 898432331 60322020 306440331 668346213 249509374 748024055 279076226 1001244984 981020740 110292108 247242314 376016112 508526508 298174947 780464516 249621996 317892531 318477888 295676733 830802172 136483615 958812960 142607536 313176045 877248793 141468180 641379978 591704691 765512332 189047237 103053712 479410732 964103574 746132037 10973429 440670145 138770617 586017091 658649038 897222027 734306379 69980763 409246639 858154451 749462610 192822025 740934364 153225859 455022977 668904918 206544937 423175764 644280800 946332277 476177993 616696800 635977943 634405505 383404312 6762689 723914171 610653942 112775817 255034224 761512020 360428729 276375163 462097940 568762528 908006117 160126820 890384008 314049875 750987043 970467878 808325553 873129325 944003509 505795979 734077454 154532639 585369290 88761850 661110586 414411589 872116681 166473285 58074775 664874788 279915037 71558957 410169247 74428594 626662623 60713777 177483273 159854947 975974925 399870420 321741844 570932458 682627105 157254258 201217799 464448818 414478595 837012824 714238629 440767224 466057604 695387620 772986201 591143874 50043870 292699960 582202118 254156869 926568069 47976082 15420209 997023633 943417734 764763915 258701585 207308041 372601417 106880400 884272211 292946526 197194770 529190168 135476123 635712905 798267416 777774987 631634347 914138174 869934008 721646349 533651897 274626515 820147308 495912290 955071909 369319930 597741698 711527990 886079317 286469781 960571848 362913418 219531000 686336013 153814609 472086643 429692747 829097324 940695203 162981107 253159915 850792992 222699550 565521722 20331448 471223049 980254350 603044487 796204622 338715417 827619794 439219609 909826631 922133142 192812190 192963749 314314335 23254148 363551394 453551198 266301066 160003605 861618317 692766681 290163628 295969222 151449322 18191643 586762162 451065312 613277635 486141364 869381664 563106129 322063056 811563836 262259738 551346174 110053303 121592952 412934277 91498131 907937279 81059335 773940028 605487995 338666814 749386754 929064929 454729912 721019888 340174537 103320605 768960579 138259897 766451441 214732090 849833708 213918847 56634106 854012847 830257096 908094513 94669361 809772540 900298852 22969288 781838027 123136401 868639449 759590675 212412099 192558736 477211541 881565634 722039930 504861170 732334627 612738141 894173689 123566345 678613734 1002351323 7620962 921779394 62788563 693137471 459687564 617208550 208124958 759454627 769685372 147295007 58945709 758175434 45624880 211379670 348906636 929269254 355693855 61485936 747165287 430860816 42676201 544861491 17200784 909752843 687242722 460363404 981794716 203986011 130565111 888218186 347986360 102560615 598835049 141057907 594120573 286914514 584240425 705312665 100620220 956608391 48584238 823508864 421361040 1001039396 901387206 324599411 660898771 162102560 136830997 554936157 764206394 921817999 365847956 337912759 219094723 326813228 763705563 436908164 202044334 159712080 710388872 682353636 268914848 941030965 715027466 38803472 110326240 783942448 659297993 765982549 212906394 410782250 807535166 290296835 440213517 398881086 838187428 350911985 296330253 848539376 759912805 355301536 374661682 990174438 325943493 167549646 63760875 719644242 712385091 913470471 858973652 847043086 918384711 283280351 436397771 404513236 188573597 444219172 779078252 344848401 256215480 738217042 879952503 406162280 603964553 149397499 863101323 248186148 208964131 791455070 806470644 648440084 332321893 731082009 70018414 479305486 751503101 691167031 417400802 748243098 803409582 927433180 438673627 903856090 794868186 153415053 49738615 969461657 234476268 978474586 460677631 383967577 161404798 399796087 876024291 177283097 221374807 57444758 92248620 964297818 134310313 515576402 418809859 423374495 248843326 89181293 637481075 625430025 250730550 602459438 262294093 913595121 204812995 772641842 260822834 669698995 97734928 552607375 774392900 425341215 113551814 447965730 332854658 533203658 224269655 920796865 301480273 517012195 643265797 645173810 259147669 821431286 597169835 41499769 742465890 102762699 235084669 484002960 516240808 301774215 225047295 536837049 761340826 331806783 297927364 113784444 253811343 532221525 520412254 358595505 825195569 923545401 798794343 704853027 196245960 930364579 565092784 110957637 214747343 76663481 950706440 876235924 509471673 332565320 449843973 651547787 903877321 69965322 537758229 251415469 827584527 600417864 773862096 684659119 827120369 318718381 199032120 513102750 794117267 271470751 990220625 637339811 495334954 948521617 346389970 511600131 348172604 280194785 394198731 433637439 227872191 625907445 60524730 96902102 955698909 667920656 834197431 159708423 8383903 898240516 193939408 357752186 904686833 147195071 925078079 875369063 107602624 642363532 292018259 757784160 781586904 421080252 550045161 304128104 234708285 18582635 377444387 413579147 223888958 168295528 225386346 791560804 703116732 278658269 239647036 478902820 577961952 458012538 999544591 41226541 503893702 887856090 913150128 737843562 781474648 60472142 825219390 585122258 963602091 397560102 643115872 595580651 34565115 879868486 854293600 337882491 893622300 919484573 775012930 858855727 740424956 815496987 549668689 286851357 452527648 819544764 4990094 337723272 381716106 793019555 669989982 15204208 737851458 225200075 496102387 558861862 831730797 762471848 581127497 346770390 645986360 435698219 874431893 214642854 37327238 945778437 669849188 745912881 708116588 807283765 704036398 802590833 739462752 193682524 115575940 148507266 6659580 929991135 193138470 790707419 559693748 342757449 851705980 151796437 25964623 25479706 647930387 103860582 454961275 315290943 394219221 699917153 595057843 890039115 394192983 902577226 431201531 293296087 375730154 212477151 260623921 524773750 444175914 537254265 773253095 480477321 655694236 238837603 730372968 384763496 181417471 708701537 850778847 167021223 482975478 537952786 191943328 524854725 782935772 363705896 922508616 222234161 351856523 827029855 701741270 898459908 2119766 460346403 377926594 736721963 820788609 386774192 676449934 886760553 450560208 515540462 231883653 461876556 17575840 463487447 633338513 967368578 886880639 905306254 390458748 631273188 43930383 306745622 226507573 479909257 174745180 324462850 505390681 91604510 902788844 522012764 650681001 898855823 202308508 450265192 503096723 998337120 418726304 221694350 716903637 786153772 901416177 536775309 637056334 223290715 848836362 735282219 247149943 847633340 459670430 480916863 301050637 943773741 314580437 785193801 847248951 495750557 804422745 670394028 956295627 642975261 101394879 382904781 978100500 732353181 969658778 474271041 552030406 858979065 608357734 192908549 226126778 390884771 628998815 316590380 220508340 73992911 367793929 166418576 243840694 430062215 104478963 424694193 781558538 77024784 689466106 543736928 312201829 480482617 650691008 506324562 846635494 738562146 779193612 150274713 620165471 392072956 841902350 781841618 230066777 572801558 272656740 391170688 677628065 394626100 519816987 140552671 477444932 813449930 264960165 537362184 293797540 340277384 884960954 518075307 610071440 637128229 812957753 997410895 841801179 871649611 992644574 354396970 110310346 611676473 69703405 768602034 741887712 899352669 205231482 138741312 199637871 117012699 699251655 329746041 251491384 619060127 955938485 660093184 951421626 94388335 488226851 506047184 166748275 296062233 791735721 163412780 503289783 323330151 116023540 737501999 597088016 30987272 808482697 600599489 740613761 845863657 651293281 776676529 39560435 156456020 466844721 722963351 527729292 895783156 972715666 516344510 926583639 239437858 911839943 992219277 720143882 238542636 338532792 935154060 610867464 871236882 757782500 709334998 71857190 739175399 976046246 443669374 729483824 557338911 11820456 491797055 25093893 952695514 657456044 696446223 554426843 304896912 978581721 173837954 307114103 523780229 368886977 135784740 556662210 104591347 983485102 241000677 808902655 155010097 80942729 278543700 287741676 889120359 364690384 881246582 327464330 360723256 483852507 377005996 10838556 357262039 404598450 286852225 343103445 507552882 594575234 977201332 70252949 434415997 641941139 972475560 93615493 357389163 36894039 740536759 591748195 783847636 946735716 529194858 32458406 337082293 915379781 396964279 994184280 381192165 546350059 196842085 591125137 449674838 626449792 92737725 822372468 379052182 28559978 821016342 584022801 275584554 655283426 218269246 35098830 892530502 342053208 542060261 895874019 213660943 660731892 533223486 920497784 346375006 533938268 768946586 765007641 949357323 236378312 190869623 965563640 376922438 156397347 145847787 838663340 341335437 17086672 211781893 951647044 655739779 344501662 411612487 204575296 568179693 172131286 132428880 923788869 407669473 375997138 988218968 785066303 943179667 837511327 662578140 274984787 942797228 920594619 951514378 214196091 144822850 197023509 380790377 506598515 72280250 504172741 967573532 130965649 380485987 589528952 835811976 607302566 517636762 564976672 709324939 911198213 937451643 188370782 778026428 429532830 950440843 165309969 131686964 529761127 236942138 729544593 76320736 899611056 90898335 562534241 543658844 491630345 363206760 684370507 488079872 126646406 558927558 899309641 14063008 721230323 659750299 154842230 788628061 443730768 729052847 648939574 773681248 328566257 476942011 328114344 301044732 817316573 37873072 313700065 55090076 132207686 226656793 282422653 394486419 187200767 471154272 560704129 51900228 453203743 835634685 132618322 582627712 496828369 38634121 923536619 150441901 111346513 350580005 32752278 673219000 790718682 37134825 393854352 201216997 279853050 457626887 102614112 980179489 430057463 162456026 318171931 998814042 760475630 188104759 922805903 733544333 939412818 516412576 107780324 959337430 923533996 190247153 533418912 64358404 489009774 62033340 395215041 651242533 221514925 974488566 325979285 651766785 989838185 160073297 149692945 935154048 51008443 726860367 233972753 267620290 594118699 755337167 727213343 358673107 710795104 187087750 471279906 756929593 913450943 651176914 467081579 855306215 621550547 633552609 165000883 190835086 890723532 152374102 430007084 96119289 997199735 10249080 88463868 411371053 460025673 723974674 495642528 796321664 651258652 531990832 395737483 792184675 342737022 963611002 296333157 25662148 300946221 863410957 837743816 530662092 552332441 753044013 628237865 47389165 23408334 500849114 538603152 397314263 535428944 261463585 856948636 347331838 75867433 44432368 799399568 947997878 337730076 575219607 538519302 713212076 471038709 258235359 620691899 297255124 876156147 5421376 10915007 852616268 727339722 68901198 757425135 734704787 448916935 444235294 429314399 755394949 976684517 634816658 643260520 616408938 897193694 836970037 678078395 978732326 704797177 289930482 924569315 343156808 423728727 117429416 179486366 130725364 799622653 226481248 880601164 463689892 56521883 594058053 605284755 373181581 367931872 522922047 287629719 385167665 247114430 803549247 179961956 117909142 381965085 524076367 612536444 18969114 574023599 366620840 317164200 265769404 722439937 621906169 932842434 268276825 322327413 554647808 373474424 964811961 55328742 60775417 882687084 236548197 643664969 137645415 705139259 503152092 481075616 648746539 338035313 984630262 753079542 948306250 659346834 959361533 724335779 145508373 865502472 866029009 822518312 831069464 757905026 633904982 850649950 635854072 632110460 511458433 469176481 609378302 596856452 156710016 217993479 235779726 70060537 883111624 792451602 153384404 162870440 393296116 279864064 416716349 223850425 948925085 407897901 368689540 577209269 195306192 245031309 884483696 237215158 693232578 910833017 287382506 312090514 325446849 804636493 567312532 550610450 598061441 114582822 786598078 817095074 19162697 136889835 216088856 318881646 220940014 312187773 628373099 929168713 594171786 233989697 982237012 192968565 304990880 539759714 386150051 825944318 276764865 179800054 893900683 808846827 756144842 523213246 564866199 842174036 740247434 601613796 691339661 664217172 951111206 277599769 820982496 592610473 352387185 793920450 79258714 923573863 230422440 147645871 94737422 748981592 315839195 733044943 218225741 405599711 448925692 409322657 585741565 44961684 268585077 142738632 333758350 627218591 486793480 371440951 992326402 131379046 588150024 48749774 167279174 500564110 492646630 490949926 696185791 727318793 897769816 583125070 551596613 841945656 165903833 371405994 787657491 631253375 386393088 47342619 402136336 269980092 653109215 968347340 929209270 561809233 689283009 922988358 173335060 905891226 673734457 256018534 527398305 922872503 686860047 719387161 431563467 366733147 559678949 927641911 976937288 162020876 541707252 619472527 777871042 27497572 762311593 685992341 958106618 184029700 499524367 886449799 656119784 637541579 416006567 344849641 479302347 505725912 51109820 238339799 232302924 423922316 532583712 878360616 863876505 949777194 528110351 583933444 346516445 663755894 657128369 222580358 712909752 95368705 470065124 395585239 433273392 947290810 506297580 879949768 718626026 597729046 417317398 370594259 157670793 200549489 943848094 255808629 829613859 621385272 310351215 110728522 468919728 296726668 545611517 750079058 743712393 581516752 449938791 667194459 233938537 149671013 271546534 757705166 500187826 745699004 944792219 178267163 878948778 415380490 215579177 83125991 437618116 255159299 336598515 806571052 373010187 304578791 212752848 113765259 837082863 482425216 498888806 185341215 345083054 16356460 182253484 207401241 266144627 486133628 640241127 422938864 54329739 919529890 686346168 676694745 303209009 770012868 211630119 744750423 306715590 94737559 332408758 360067767 64386514 465110176 145006783 653136667 401009899 887458704 181567608 332442173 23426054 680914111 376286516 111475667 789300006 602059793 332027480 92973000 474523851 125117535 107102553 49704453 349389823 225530949 196135540 822306553 168097323 760935655 567495610 334337513 441223831 894469214 867929094 191365333 298378947 491687805 74042614 633974393 653459047 230957576 679722399 844501137 975869493 315714164 40196365 66174472 908639437 157965452 334216972 560959709 689608464 143923343 858047146 213428075 872115949 3323654 987214613 285524925 599084636 572816808 398605466 836485031 548055257 194719831 751501691 253605584 357279626 822558699 285220097 30681977 610012782 168685982 226023210 628413063 721596261 764143950 79951556 541092129 35437081 313156470 140413314 921341923 579535915 766018811 193615103 728471547 26986487 25078315 445167552 171535899 333556548 699354339 125234777 526657396 734212476 221299417 807336620 540154224 239818963 971910244 632497773 658817908 408100890 554489282 189088897 163452810 131141155 570841865 432936005 132217889 710369356 740736925 538387983 151395600 917024042 421480458 804572459 460729296 312145331 295692841 616888563 951033803 893234944 261263255 113151652 272266892 829458126 905547857 381077525 523272190 147759232 844489864 933925499 952053109 279866314 613690206 949828243 248823245 849074140 912147789 205771375 721715181 398481047 61354204 554102806 917310515 428925426 970361169 796419089 547958321 754678318 293401601 54760502 545839454 402679893 549840939 84015256 48014711 646809400 684069287 485024528 759270508 529253152 84624509 401866284 660168957 665428783 824687071 863654117 611212858 175229966 556370777 583495345 893109484 602569497 781054107 604988224 464169740 173992890 811007115 526749970 615034850 344265174 656906359 90360473 465853141 77411013 531065466 721064655 635904001 257098799 264343997 170332142 790469366 794736256 534747516 354886998 836052277 632558458 866446788 223019777 21564722 737703125 851691303 652276047 541895262 940190625 287528884 67120647 46134201 561795149 667758288 235748695 239035763 979850948 983270955 110574842 104066075 401077552 690977743 162591445 300688807 724489876 158530829 755931700 733901829 894180526 934065162 538069684 558677126 423397720 533542384 536549046 701878685 120854104 886350784 695425 128062128 106897627 884748062 760341865 130935386 827645878 725238336 371094560 648414242 867758237 248362932 819176270 869763317 771431770 63809400 851629350 722489197 340412736 860868893 63825412 993671489 226945809 258232865 855164663 663464312 727019477 2293356 423706993 827657696 551757387 685797302 899515407 369795297 684391261 333215487 5004071 259165813 861297017 472092950 634768623 956114134 924406299 77817087 541722336 31663102 60912365 319745714 263920253 638710057 925071175 954180811 342986320 518056723 310788566 668612554 809286836 308169568 888385382 960161413 430717204 436652495 529616159 744078763 853325465 567484204 437356045 120053285 717987265 134769266 927179982 661390645 414526823 296143670 733558744 203561964 192406086 256184483 166151582 470975758 579148496 111021619 582016188 339004619 395439118 863111471 848165280 675341559 695038257 92647124 48968173 237305856 204835106 17618329 77593410 654877703 537560994 822565116 755016103 587171358 556924005 483805222 292293742 119100764 721522265 537829187 205128117 20551753 167831240 35430527 968724568 838553292 245310717 94256779 23197698 789963657 825625793 74482630 321006046 824344665 176323705 374894560 146400555 181241576 387698122 112145856 106239025 230013435 47869665 876046264 992991236 580416484 842205249 920856007 627473033 458700312 890762313 817073452 931505127 299225926 949169764 332166161 266613503 776275668 327330152 844002395 45211483 293867228 774153802 428552343 920118381 957509174 230891507 181253991 739294997 99954180 585516259 91971118 253583588 395420106 617393597 434479935 304622760 508432186 678690354 264544720 741249698 685780274 997518477 913634687 514019441 169993432 247619393 889444411 814276815 687063132 14839506 516540229 403354551 217655886 363455071 463363514 144019703 531702989 284970982 430956543 683636888 790678127 448989445 600636900 681291115 112697531 74415585 781522005 816220774 839808522 179062787 947998237 258591733 176927430 663614458 245835510 192757299 789018284 524757544 182880817 778609449 577254594 631038645 652692957 542251920 452080897 826384567 422809592 12869186 181747774 600956290 583433928 539161587 352932148 479398994 320473389 580302474 405171820 90303986 685689370 782619421 213611765 32136109 731685007 491762327 389317682 787676005 179436917 476495904 435432108 554926553 895257727 372287616 451573909 241362538 603960561 294297150 101198419 996967972 414929714 148141770 496641227 798022892 224640417 927276387 830691824 195237604 738878500 201587242 135675324 844447812 193364252 97334184 458683584 267050701 423152581 951757936 750710598 672988373 804692013 562428274 131769716 233312481 89882574 184612623 475248847 28005019 64084326 201565979 956307664 11516540 901881537 188787279 246514486 971430222 830537620 26772445 323477860 368829718 295344004 965367458 700317305 308373521 989373890 426526457 398972589 358661887 172290501 324891363 227277250 250329001 660361940 721665820 694511899 104727567 430850025 646037468 208956982 721745849 594918479 119338888 588345288 527292991 253353630 288560014 645829863 737302160 654479560 592784765 354813576 962152764 878407537 362012242 218820137 771289332 927303952 264242958 332788750 652444400 349346228 977312165 678473255 551577776 951830142 26619673 999900608 609081159 821815579 583111805 619449891 937942937 1347910 847018038 300887235 628237533 178099193 656041353 214534718 302572128 754703840 793459769 409262906 456771612 361090212 64293660 672778550 562168443 997509599 419301146 924456973 81878639 590878382 341896761 907625069 219941043 810380623 123431114 285591970 982169506 275075593 201378702 923770139 589747308 285413782 96881498 89881226 746950763 511423426 805344685 227494698 886065294 825755495 86892382 707263101 818089168 760353402 410823121 170885971 383099209 290168092 675228908 265355625 268370226 315145817 133445834 986568587 898288801 231312949 441895236 299255529 405220367 185044624 333634206 829159897 863246387 864150968 94247531 199584249 371257355 6990410 985380393 842929600 579022140 166942064 816135673 724426950 164694728 936496238 885115421 639115031 112427688 419220043 748408335 858663589 649652938 459309592 484481739 731371567 10467709 95649251 755250764 817197392 866706745 978928104 143627745 246255125 103861766 777225148 88236528 588592017 444905127 818215396 336722088 251822508 726105015 575130108 184856634 868111838 722535903 593568220 710553566 491559078 756388570 874960947 342499949 656183485 410501402 491706388 534044951 701635395 908085178 944477212 309036831 135108803 104568291 916887859 863345728 183326691 283873183 80296024 894056444 714460854 247787084 262766341 672782793 144998864 846004766 537661439 519452481 383823477 626144835 776266118 977710813 28108374 357547263 385857806 705420692 631888623 506277701 356702333 809252216 887243873 350282449 218367638 129165092 275753971 163294075 198938589 695820819 367182306 460134837 438372583 915716905 530291875 360754361 308770724 792008625 435662920 891031773 948778154 342260042 985919484 75571865 814949132 587677872 658774734 11712900 28070242 244370720 183835086 863296510 343719280 977328526 454498438 773851038 59882757 538280456 543991410 856924941 155095040 542811130 626400412 659823939 574952299 477943256 529524361 920352840 757394700 54460401 622541667 795764120 631794249 214759334 674938623 261541724 656220555 476047295 783526063 728636701 502851775 563804219 295138250 165875525 654265 225414667 720196548 986820124 234130095 821844543 800292049 648194696 625052188 579487893 570159376 100851816 807535090 90249490 524484262 245900707 235102146 813320017 696391942 82302191 723203201 152948162 237693379 109392903 842571104 251164758 739019273 124731818 604289091 503401895 344229971 971924523 988833931 1285001 272868476 349070349 873208334 460913693 194800018 760403748 54435676 434122767 545804098 781320630 703380575 938941731 978834292 87577733 754176038 365952994 219842218 828581356 526196930 407260247 792945288 40981158 493465366 511313843 10512950 894215695 677460105 226555881 652987173 169505577 344416984 461461548 568126233 591297714 320239406 324955264 825525485 819517847 319953445 116673935 721607692 8097308 753241566 653010783 686212992 876104563 603050738 801034311 87514493 980046799 430101334 900305500 111032093 229292579 893953405 2070649 545292120 776592700 933853769 451054583 420684569 190883983 542175967 171686468 813898641 918097690 148435452 748567277 658986281 947648966 252291471 412967868 624196544 541972630 92767677 417227489 971607604 95866130 98397919 438225857 349913992 391463487 807431424 600267112 623212842 232158267 642173025 319980881 618475391 852521035 523974936 886967554 676454148 195223151 405305154 456564299 69335142 974121581 559357307 255736578 679906720 959440783 587950378 385485199 439982867 353153239 617720917 322478015 981864447 183800206 172301881 85509281 656707805 175544003 992079318 44178300 325193575 309623994 914397004 452626523 927651096 441251955 705835612 629974343 394822271 242469719 722691602 299271038 134480752 676667198 692588922 280955200 486756598 956204927 343749723 762024248 60997868 642856651 899308632 648005582 572584414 689690428 272330612 900750564 588813963 699639217 347952363 733100169 93490896 997155247 687370198 441707871 710806984 685053416 153987319 868058664 947652305 189928062 36736981 686826214 560530696 797809840 432793404 516143617 616388831 826044903 308992013 461139274 557463719 502437658 898548696 604344685 672174601 884002577 880982580 297365823 359843803 858897885 705536501 380119677 232850603 975334819 591387629 572069647 544199908 442856781 965710321 458701927 326152224 798898279 425463202 173487814 516255543 80095907 597640918 385219187 117271175 886294623 401398812 231666409 504037537 477996031 682301751 225444184 666172618 902991290 816939726 559518048 142791825 389268875 72704640 973655830 957825217 37015366 444179502 157164831 853952503 711923719 678647582 639193409 263645966 251165015 286550017 891939265 136602977 556525262 342365912 565178414 507891387 949101861 203536797 613816106 738049142 347106617 225234653 186784166 327756516 932905452 633211268 985816350 891593196 765284466 73889260 619982010 796906360 435743663 608744332 467333092 390337063 331535843 868419386 711402419 309165259 454465918 825083418 319225312 60307080 268165875 318159684 926787597 945309053 251278981 66412284 207077241 102682164 516506459 791536911 825162354 205936050 810558381 849476707 347510427 964437236 547854836 711696488 671940053 397167217 366785275 436869267 241080784 717967746 152012135 34007067 830573644 631301960 285415081 378302963 543346028 86595772 277111320 798214504 91402852 972116730 767567271 383857924 887834851 58769019 892572104 933965034 605800345 205576624 962319249 707423110 737704508 978710791 623139656 907955588 933441003 124045604 928387317 928716069 706271961 240740347 223818482 765315727 827895358 242896740 943736120 661753779 466958753 8559002 509544150 948875873 455583943 586462547 910836599 390116272 194050100 802464079 768045609 571362215 396733774 882707496 352293276 511948491 494526690 943036059 948984016 367960135 981183202 96740994 91148435 651463718 909485104 508069346 527424215 49794923 119571814 77639994 158806327 841715849 205685806 2902826 56066489 446364894 608301143 992168458 481142769 805486218 29389071 289832006 903818430 944814139 716636084 325972023 840533605 346182987 637716302 86826294 604515318 854361705 943546946 89698721 289178096 152159320 429998230 418827821 80518618 755639146 381586482 205275895 922431022 122543243 171016465 479741578 932498614 77956420 348306182 797827648 823638061 19684010 573194260 660934586 65531963 572028766 531334649 267217975 261215514 612070987 21106583 536162400 498605565 806501369 352605054 691238733 84611651 996300681 885793996 577070325 478138284 48964418 218175552 521443677 62236410 419951960 122996770 997788019 302438562 649035308 159445268 614005620 850069817 647096421 678318797 167389348 276082579 153600038 385187737 843535917 85089452 291833087 90137651 848749786 831871901 714405515 820189988 939995453 94257771 856090589 845387200 9335830 836023929 48215258 397023707 985506498 953650089 329921954 700929910 613217445 923623208 77750167 848373995 928025261 922123384 139303643 632583848 987463671 547853800 315470029 950251756 878081070 873343760 60198936 52505511 160469164 929779123 200688563 170208049 179801682 446460776 269217383 335466313 59362094 741413051 327667043 18986024 275365629 201385294 732763966 41998550 65667309 671292374 591331412 578014375 452637152 445587775 630558421 675751483 485133495 207264529 51845105 507240421 54470984 879316494 376298441 338672047 481183917 699307285 485750666 8254750 283885656 618635208 25961326 752761164 444720310 909869094 166985566 82217615 108007560 193922390 324032192 809726512 42664859 421775526 764672723 995335365 356608660 838812516 587229758 23414790 171244206 99727413 185785883 195611702 731401607 706770495 555714924 549946364 235192729 800794965 444610468 970326612 373028160 78356293 620969728 466577608 829716457 342694320 954520368 550957591 167618242 169192871 811679307 504738487 553951649 506182521 559392919 858296671 638772660 698911644 844789801 560764976 644552486 511800607 150834817 287556734 442806774 223418625 813094432 550165406 795885315 949301617 577671894 252669706 329325051 120251692 343026138 920909616 963765846 79093141 358774181 363179240 993249780 763005000 196472590 405721003 62019795 352611843 198286832 561294631 175880614 527802877 604401753 38559758 413753664 195234509 972005088 976195815 820832359 852217273 741673598 206713590 341605222 692553256 881598426 118044272 11257724 992382836 455933177 991841925 111894720 19025497 582744558 298928724 64777863 421940553 96362816 972192689 466760660 908440168 669798712 555980671 337814162 34769960 925903561 781716527 758362019 579903766 401801520 43511923 27213613 283157140 902744877 490189414 632468052 502450054 225238821 481024623 714688182 780231212 912824340 258296648 780667972 161493476 279961597 515935718 195638800 478268475 824496115 848266657 758602434 746310020 398274427 177235254 746301143 867799860 775756112 209888288 29131238 33600833 152611805 808731562 760352321 761590748 240105114 240399572 967652247 486774381 170468246 67542364 902317842 36567412 39159979 291396604 50833980 667509490 34112690 681871076 319691564 796464158 295244882 559028630 82859080 264357070 968815180 718292279 547530201 254135354 979941726 383576488 557763338 77392364 968500686 357459974 161799273 960721019 195141446 165555985 187557941 748839952 942572028 368026353 581863435 577914103 225926129 681019928 983094213 615100893 314073319 33173866 354509517 770812896 717755401 935511642 767987312 846137010 382707418 385433638 489629631 233324042 270607146 528374562 618782114 368665930 319634496 334690607 166651297 576427873 593054801 526333510 165630218 652400076 763963282 337567337 826840118 791350078 14263008 681624121 357654153 150060039 750780159 930114433 864614626 533007343 501198443 93526489 432225471 321817294 578368043 365666759 446956735 689816562 30088319 290399030 454244448 479253256 973197674 504923765 910846930 20456791 828862059 842657854 798279206 318649445 210743893 203936601 49013429 79667402 467482149 80151058 517371019 902255145 245850440 778911318 925071087 231089324 416249370 924405158 724245866 825937812 392306306 951166361 245489775 427738112 444403192 641981012 472249860 193764892 870665115 53645525 38482445 470521087 359613256 565343629 939006561 204161350 566870108 319410557 198472464 520864685 266575397 850277715 551277657 184248140 835926682 46664934 641544219 714503890 776251268 716775719 771602945 651958494 590785477 739579972 943938915 201091777 633791574 477442556 695178693 433630071 262902458 127135847 679069816 385738418 870141880 396631829 561643605 420229081 483398846 129242790 262306003 804126976 297401432 699275807 624490376 725574446 618277324 804842222 525380728 7058153 327261147 596509833 494722162 952783264 144512060 379888404 580176857 323463203 476022880 207215361 307857479 725906698 299818123 769641988 553200090 680313957 926362398 563068008 831092031 445750496 54500901 135012685 485069285 140579461 468471935 646182220 106411647 794375173 521992566 395918551 217183018 427606268 437844315 985693915 832407795 775027374 998267324 288668133 487799000 921913929 841535456 931607327 74050296 403497403 181975253 843092979 725050447 339770555 926205882 319920730 343553017 431799335 915438695 168644612 197163515 489203120 794073657 892453635 385080446 640308455 666888914 941604279 60097205 576861230 431975540 625658423 249255408 174161701 977410656 287602889 502746300 402301099 650653881 699025972 294845503 876515191 325800424 725488146 843323623 489434163 777363410 600869846 823181964 635093081 133409674 43665043 517551195 581879673 950619382 301793185 310332387 60973136 649385304 291123852 805038276 94558048 383317212 148141814 673231199 522178094 251454827 118059879 979430679 928595996 459165215 952908198 850294769 307345401 19438801 241530494 652766340 878840056 508754854 339815690 742745368 590026967 70659242 860007286 508754239 791578742 554480851 230196174 969329721 372929862 580489998 844940265 531562354 641931472 418503752 901622612 540152128 781654964 825621761 593062716 652997304 664179773 197018122 206138006 368518584 837209675 133017841 802518245 182881778 956054930 89420833 516563110 726740598 115401065 598564106 724430532 663579419 704466117 813870486 765521460 557235520 115628071 594133346 835953387 541800181 942236876 42389840 90136857 988110656 295128721 673173938 347696773 952889114 737113324 32728774 476486155 984225798 232988709 404982760 260374454 892132797 121737825 784141416 448282271 677937117 3170116 686573018 916705316 629937476 63339569 219444651 725257671 3503880 998355436 305859781 390817161 455500945 359524178 272471954 300675719 669309539 257041809 871999731 267105952 93918869 251792338 673127350 974451143 520972393 350664036 357936726 708080829 955882762 351696314 178884986 377347779 996966704 420083793 249713897 865177322 926925170 801639488 515536806 914522785 321498507 179461302 695568843 919526194 176815751 778002971 748912081 84924625 168383771 197448789 358766322 646339504 969704893 907616659 576051543 491917326 138744942 467890063 809570114 871756485 412010769 631971539 836238789 862602728 979258598 501650152 471824310 789384833 27142177 479931655 136886473 891781545 905558535 302623458 337794946 658909961 562376915 663736348 947713023 820467955 32925466 204143879 384501658 107172455 870434266 89391364 729753470 814373177 191107139 479472562 716204197 888967960 815674117 511100668 766560272 779099759 488081795 114757673 691990180 857429025 695598589 236262085 307349476 588654072 976481887 105267051 580360611 91048963 739433902 88340764 309037011 593791994 145209378 855280591 320943079 706895436 287665685 416602415 853272555 1001851956 428658511 985988138 808150752 955727165 280784512 155441152 225007178 190462763 238583824 55756766 461233433 446126439 701462422 138307757 800180519 561597409 114536051 393655635 590461150 876119968 678753320 659636010 592026852 428492163 635651033 518684090 631514331 179297346 230815825 388175096 132394532 742755978 859088308 496070757 818130010 156319181 605499201 824990954 948534708 68189471 911189965 263266877 860672626 324543954 735562585 757693175 432404153 721133656 365863049 674043627 193995737 930590816 776564566 51690962 950221184 436420010 644024819 819743911 518606604 138882773 935401146 392724379 834976003 880015370 126379641 275789497 760128754 737242930 232993407 816410195 574778899 13676390 184533745 941328066 390280982 868355184 116139293 54955225 865759209 429132531 395539223 544594254 335783082 931960516 773700353 958776859 743524055 324436590 152048586 630434960 85928821 264238574 919656581 117040201 81128131 366484582 501845783 743233347 328188812 163370380 889738192 242416335 822183342 995372562 186609220 792604446 180247000 649873455 914571744 370957716 231820610 824994078 52657163 518709273 19552833 605504811 678129781 920436538 729395355 160518591 144832008 475535199 403085575 337586251 402924316 901636423 218522435 878249655 625062962 217423928 397156434 833578575 335553243 371494554 464157686 303353542 396149733 720431916 588390941 242815438 767820794 475960729 920459449 834037633 251459247 129069530 613541386 462718220 101077563 717710530 506202632 380151759 180219781 393199011 803083098 722952109 712069726 553658499 355772974 467606366 746569934 688006087 490017515 546403988 948613587 780481348 978568652 178911455 305960580 629875908 640464843 169187231 959523805 567562488 152067781 753590315 308289422 977327310 902234701 849958993 19324001 979508131 448883856 748622820 236817090 204475641 711147488 600054234 378145387 611020542 877264645 425423996 622378697 212715088 412368094 113735779 535636571 475342181 127371670 121469171 119533864 698913102 443254079 100375071 68906313 100777001 423042030 762835172 101243319 739403698 325300296 843271824 936343885 275579146 728424551 831558573 18924130 842183996 520359348 387712164 267096804 117461335 222101962 634891051 921518383 521670044 370105711 468869963 588208044 667781894 573913836 300693683 202681524 988195613 419822460 155419764 252297662 757015480 300496382 101863091 430904643 953949299 168197372 921741038 209740031 975744485 481058253 517333015 419182784 308045952 657487489 928004137 550355631 660255629 61211637 774490013 685852215 806523828 640540821 610539531 45481014 98075016 809074558 185440061 676662213 167745625 948420420 444285737 289337378 587822180 104491795 453672395 549472287 724560962 716538808 615975271 285763883 509293745 739379325 578883943 549111897 292109508 571216258 822595918 546484103 876440356 930570570 919312742 926525813 393120678 50842004 303176437 869755666 762883911 578971011 782594281 701961561 957791797 440227314 27724024 259613770 405233496 585937695 788572944 426106594 273257228 659035262 375272597 845541822 702357370 636446973 553816330 978393013 49621842 250084540 519899870 1000887229 819156904 686879187 512264696 462314500 475861534 243317260 199712076 258542908 770053136 421375506 509057806 999345910 122459099 800751297 400334920 275101676 49832616 661220550 910711251 250013986 910267349 296313204 888848153 812340735 390765676 772781013 776661276 911358763 356779301 314553714 448821883 873192757 517891749 144724825 148469130 108787753 438913728 749957348 619173963 730378461 494009926 373686256 332946641 783434369 941719713 342345073 843808384 976716088 761307987 947312073 385801807 519374579 137993772 693222679 483534970 347885305 68538647 870041285 89227228 304894446 566988166 801678182 359418593 91111723 935439411 338941097 799783127 984794393 896562171 661044434 678994017 231335800 670586924 733866665 448966467 709467470 24802451 903952047 695450781 489103721 824041968 310870102 532534307 466561312 679492475 67477169 348727691 606570363 16318900 517523336 647702717 813936955 598380905 982310416 350371638 467054920 926015617 978036068 263008139 589920597 40866951 4497256 460887400 609039066 6076421 607881747 396252446 169145122 46742117 474789190 324201962 449315782 825004582 998905654 895908162 829776948 144948632 111750521 625850575 186879199 632004391 342292588 837096446 110103508 413365579 878530613 68583675 158302096 300247499 432368662 934046794 764846187 252344574 168288222 850153953 846078709 620492743 26978781 369505451 434735054 718446439 521271165 984105443 833443617 23713682 27634928 124625696 686618943 129775819 441333155 802376984 895624200 364094202 121813178 93385240 124574304 326732834 803120166 408230663 895517164 622940726 187111226 34084625 704178072 570511056 933426110 565841179 3001523 909433370 795885595 60032234 174147996 580854195 985172640 342306783 338572494 341039668 719242827 327981888 557829295 336315005 893413958 261766996 880406242 364642043 409144993 120300060 722306836 639371163 1864297 498297040 64450984 235187865 585026064 938274538 201038877 478222306 691891557 428665452 890413402 337283103 446722136 486171228 91322216 260656850 640358399 961163025 256267930 186944140 871015738 287574969 812140489 200108700 898661849 952139474 670708893 703268363 14261284 824517731 728118256 494564731 150879375 360380903 307783309 199759258 811166593 828562013 441789538 410377469 26864892 938748515 175211027 1180735 949303393 58565758 781029577 745441219 896646173 849492381 929884936 162223468 935826984 278332395 433599800 342433986 268795071 804864985 750550739 80853934 477718896 440321778 514717401 676199674 52422966 429306619 850742891 523116262 634295136 27072331 520718578 8957714 419237182 839867753 799090517 640727605 934318335 430582900 333252354 403487950 747565615 311646540 801015513 687571675 707442133 105545821 356289284 56302395 691311543 737475640 916243450 128240096 60705908 564034388 595888901 443188959 345913722 56272803 8697739 179627305 300025850 259109449 797196480 369234166 90130796 941301705 966274875 354482913 988770403 422282991 65892699 825529616 731221118 734433648 599751313 52570273 952348242 608408352 182373531 334245364 316286606 445401874 448037720 802002730 477412490 462813982 377702948 220411516 353961725 175662115 611694340 909836267 89168715 870022343 488252403 822183268 57729841 456665822 543348254 360278230 831773227 860008908 811377996 625783560 898340744 818828540 641219296 124048922 366443286 76638548 676113778 802442929 114565866 494823959 320926576 83855259 204305814 181278505 682500511 736169151 530730092 165056110 341287303 112828085 73899077 107976570 440392533 398968163 88936107 679172256 804457843 224505229 965360743 634428336 832130306 794707959 871738065 2669874 566783149 311427546 352646470 396059248 783098326 670436470 674436392 734650469 602541440 144945872 359985813 312818129 237296990 996641394 270088469 107661604 758476802 434828146 514460343 343948587 408507164 22220478 574560047 471742008 64330061 963252236 329412321 517449981 929187041 698536046 134928276 816393042 602414861 794916750 696697179 131828154 278312064 452761293 15359495 793033174 306055365 58478444 442864141 673295380 143285462 155894292 207942822 679532797 113761764 361385350 329881689 709374982 150721469 48896648 835769036 285764208 904648787 957419523 961356089 163369781 653679399 617901394 590553100 548848769 684550835 568974871 246471032 164405427 415403618 621080051 710353045 230908877 633849069 622540331 546864077 676530112 810924486 496993122 84749486 76151640 105882658 603020726 254865174 638944896 455675252 943518004 920050499 402954077 485011550 481769084 411461795 874663003 880255335 386524141 208188894 362652697 949961674 658344167 523690946 359627680 394155878 780761344 372288456 842209112 227834151 447853972 994867812 524185757 307828860 454230453 678836605 87693771 9302161 663460210 533406067 632834816 813854028 992573019 214992411 353700104 820153687 647125913 466826430 339031488 119290988 709866790 845843282 548375307 754734604 974753947 130905564 215233274 996205590 564508447 179697826 261420085 585465618 891452035 522145167 681150781 408630981 41704831 946622788 60348163 917883129 606441156 1000563137 409417943 944623185 197506704 772246798 267481239 474887009 838072265 331715247 691259651 986226789 238480703 170216478 615070787 671529381 845208599 16810867 260005089 18506470 429956250 85361810 148303519 277772341 655270548 364065132 201593625 708441163 784679808 59471651 972563791 45502810 307570295 293843754 957873636 160217061 865676873 999149632 474163401 721857374 759387978 724771449 38125026 893888698 501905224 787640633 162008773 567100859 811209377 335620305 707354728 82079315 438515803 869362644 325219398 145073148 107655918 146544537 527610777 760454996 943686053 687064330 81098881 634803597 389357150 474216511 363804145 174375707 152012940 33841660 239411963 566648530 765601234 759177747 830919406 887449676 348972773 757139062 555773390 120084001 426526307 775771395 400687131 967545271 697182589 558613487 77892810 401297632 512560152 644011227 641301202 93744525 823404626 140793975 359683681 725417136 10655706 883614181 214599143 725415787 438578009 458085923 738683675 54188546 456947652 151621436 195155817 371479040 412381281 327006981 370224931 138228310 392496511 691501612 87134632 839872485 416405629 146840740 983839943 342606318 940193621 367149066 723684836 370888902 520571724 841319120 246039978 368796627 64246258 102226824 966373186 733374571 14235718 754856870 165515912 531693747 272775671 968001378 801667002 102708945 61346875 489528358 455709365 711456961 282139078 295559527 49997857 133072001 941495990 448007783 279677854 661664756 746540365 587914353 105125435 313140796 242552834 437073726 421064086 145447765 673713215 324081365 962715725 227820842 786707695 122881716 865482075 181744913 460933507 583475651 572720355 300549361 445339220 673629211 884393821 200114077 82039511 391442433 563758486 210856865 268233065 830457575 91228248 269533837 257889029 359924749 990442376 788005340 334594341 153514369 964151135 959073274 853634763 703562465 306306857 674503782 476309538 921986453 632457945 905285165 538978662 515566205 28844548 517281616 730519801 602808506 575301008 817950584 70033102 942284126 673322254 208688477 450552486 111607636 476846543 606063425 761142982 438166920 13393920 514338112 794719433 536800091 103174058 680563463 393101442 447656422 183095299 302018486 659557321 242414806 910809120 36748133 219523211 294961917 420498934 194518696 71088850 253938835 48997417 843706326 985800483 234345081 233402674 806611848 199776362 321431482 596903053 927382264 586765065 843699466 247468919 203111929 757703292 436712477 317316065 699706458 292597328 416007892 518533729 38040905 609462766 56316695 991132624 407829400 514065760 381213457 993280318 516094522 664289708 606507833 455848485 862785866 336905089 526145126 740247267 539558992 632807654 884157533 575545330 603308351 186860849 249628933 896897533 504615689 142348851 302230653 380052864 980286365 103039945 864326350 673906887 21070809 16413642 843502000 736002410 876684205 664035509 241337517 773425781 567348410 857419953 999603312 970490137 951754383 369218550 376783133 813586604 58451071 324335648 394578185 546815585 898001092 711988147 570969904 667391681 778808811 801324919 919650896 433524083 596909060 387666243 994631462 666276154 742993292 502181705 182112184 146758129 224843699 767282642 381059056 901791838 515701666 590787480 962268509 837397987 650490034 699644829 571649790 139465271 342072978 21093498 994790579 705202442 515472761 459193630 653176622 937488459 493512215 823626098 968506675 611992812 482814008 504939241 9925002 27026197 422651578 873029273 223930523 495865309 791981138 583264193 326430930 958730830 4046848 848564034 789297064 726195799 678789802 934284379 899021507 986150221 335209123 509498429 686899026 319030456 803620732 312810885 224189096 657518291 944821490 358660467 627019094 709682792 195432384 196977669 704049041 83911698 121217565 18354961 901912706 550658930 222651637 493866276 30351131 9410103 282847509 657079253 635303860 610053615 229676871 63862641 562092122 545338258 281358275 240375719 851454196 581321637 188212574 900802932 643396365 722208129 192749416 623849849 880216030 522539000 449328494 448197954 345883858 224574918 213025595 75332950 957263346 261937804 545606585 808517341 951287195 95288459 885695749 994486519 151085330 853833611 7141023 463864289 689526819 158135727 772367131 621772134 546038067 618586287 668952075 983073584 351106686 330689208 816518368 280281394 22262060 79529728 60823784 122963646 647890707 977258458 962973595 118197484 754317283 415947807 362233639 914457390 980419716 632362851 91191064 288641820 664561493 145558389 33747515 113834389 290567497 858733309 529934431 176272909 805891874 906602707 249177681 10226503 821479298 709995568 142013968 905501020 793791031 740086643 632045080 69534006 716304788 154485491 153876195 782334997 644282784 537788360 172488081 749575699 871415276 17389696 472211949 18116896 689866130 795122147 827680083 868574081 972379615 785885272 130526971 365458761 699465043 748800634 342304664 933384939 940516661 624192012 369957673 979282141 271408044 410822806 544326104 286203309 272290631 910997127 18837665 295963412 859199310 446710133 295349676 173339661 514909219 553258796 896143174 878845833 95355279 82903782 444936248 567258043 315502175 613073270 189828117 59661954 77926709 572824376 723340662 113408009 700042004 286184775 273225721 49362173 405423423 997553744 216568583 344734423 249075973 698505937 656837318 196959124 869632095 310490170 106557832 134843661 833522658 418235242 716469535 107020675 452507602 378995469 196820014 337288130 659106550 571887451 1000221367 163170728 722401905 342478001 723322450 929124374 55584772 148890748 466668019 541761799 38490114 603198790 409058448 586052684 976333661 831142362 973283092 729675515 789835227 679499534 313532249 594696825 961906944 955290438 88821692 515412701 665279826 508448588 716688140 158555968 907254003 272276804 200463878 510892819 979540022 668626422 305555851 385179775 840832645 415821195 680425344 682319498 773417855 275060245 413582270 62242989 418590969 949515763 943455793 119011083 226933131 91151778 779293370 742030327 140855383 602361142 197710878 835486169 387821793 758203570 694886232 753999724 699069355 861820506 832558990 431641309 141896275 306832590 683350151 410838292 602695300 851488618 410112503 65313257 801238735 994443114 200646061 699827839 941855688 659548747 328206049 68579096 882435268 359658310 663630071 266632925 751693159 437603890 881404438 235760769 72413081 462591361 158960509 313495700 890948673 738161393 259993801 595028953 847381493 154116357 956261470 743805397 983093945 619532136 327429619 517257192 169059005 392642579 182779416 221972156 801781579 88747628 429523782 636581220 541512544 63157270 349549686 474621358 514279802 799915255 919069421 611785776 229359241 67161455 595851154 494645633 453692465 440846517 488091688 490478435 365622283 59398632 359728610 88244365 670757231 118127756 442713376 543391889 314055821 212367814 892281883 405740377 141040774 173138852 997111523 694077251 475308300 467973126 311769515 38827406 684573720 271576434 591860223 550327831 35729100 441923095 953314486 73893059 335947720 452809803 113175662 687861382 666753186 982485397 73093946 182474283 837102763 391015468 987566754 912244715 561147211 227539307 340818889 633260108 120057289 836274498 292077605 167931640 335012706 736414339 784848034 799153890 895502340 269150032 250546107 966531827 24971423 362160279 96238451 431046982 331525925 239539475 591990875 978162948 308001844 30724188 772856990 438110264 747462162 886975372 769625358 693210889 272989149 788888811 425536807 118526734 242984453 566069013 273927894 155936183 761308167 88013657 684630241 697821176 753142127 172864466 731941537 500702175 64243033 872188620 160751628 996019560 402132855 821164743 209268493 663681154 787358778 167830462 735912682 1002238002 81697236 949148055 89607662 272393544 318390569 297503953 715138555 329198532 180724598 237451170 934450752 317945680 16037326 210106786 756416065 517068499 136774331 836551825 38052981 812426245 889445818 304963185 694926259 369322668 82584180 965981247 243545195 134819959 853864250 203200225 128759541 733359020 54834062 202788762 168387838 356960888 810419474 91788871 370122841 194190173 566216811 944464474 406947227 291343918 3021351 121652556 470978158 729663661 389229140 535077824 694036498 27331357 821329574 782657236 322163128 405574870 674479173 736027344 955254509 483760580 342970318 268113384 779319725 800675406 969353542 249560010 693256309 486429126 644391234 239582025 461442948 793984454 19738635 97378800 858447976 125041008 81422974 556328335 604144235 660872335 763565854 697429409 944443189 381854616 201715078 142634604 275948692 268764288 325631672 208089825 468222097 961860626 904964844 684003019 112782773 99913249 876569356 126678272 897634316 115637408 221507521 194830410 685476522 466968762 348845613 545490451 856172261 834888711 892228630 252934538 205499562 9181064 532109445 287632863 222506554 170453667 374841122 584173449 483303725 866787574 647577903 476979845 42388486 256393523 433793369 144522628 688657128 596259380 63631583 28916503 439843472 111962011 75443060 604452565 409668897 799159730 860440767 806177249 79999789 610392165 841261388 292193575 890477052 717816829 739583871 646789266 440965505 871454648 296641146 194826336 276012483 197462925 334208310 689415729 598268330 547876529 646613487 892806315 568899334 222659723 482361860 560843829 45033643 697926192 445349541 235669823 227765221 394328593 810886628 470693499 701705954 860360308 915324370 240684149 184656044 882165197 686896648 753996658 101293415 146227706 380925889 19873933 315661397 765129809 256688747 66159613 583205940 997934006 341977062 111867784 177667246 909529191 149866857 327184673 805126796 428285442 899354432 447469371 457672496 416512257 456595869 160661065 691270949 207267839 55693728 317214846 596027056 92581981 616017968 706361633 752427546 740110703 310165356 442085941 698086141 14869170 566797901 433197927 948650755 764369474 523939609 157934656 674050866 583572003 439537221 976395779 57277773 296627235 641252807 386933440 861313687 275131529 313897729 314253670 792853840 963632214 119164117 108882175 533200939 373883609 675210640 210078115 200618697 727062557 612529972 778722359 450949558 547876192 835936912 45825733 31482943 385730775 438815641 325833168 672592889 955344200 536163032 756564457 696761635 878611321 905456104 25936106 481335714 281553376 560000451 864080300 119161995 407973687 379622436 274951527 660842636 590153790 807456874 348347288 896612112 712637493 663856205 86078198 593391143 164549019 360466698 488902390 150843791 767983687 556764871 241938352 964953653 97226063 158719222 910501485 66931243 790867978 304285603 843160814 828035575 379150920 23080860 80251950 43549100 614772379 667494383 124059429 80244493 579500672 856431597 50883721 640552483 927119356 884610405 219838871 270469833 415449589 852072033 17268932 197538930 901564510 260831362 754383952 883875353 177571231 348283698 669833347 651412041 514815843 366977261 636643652 880367758 256196380 640786380 20561836 48220959 571703111 56346358 270507540 339212011 741203208 561701021 171719881 200616052 924802097 734087900 515020089 693465194 599068058 588244163 905726430 979924200 640573621 217397535 942683175 513057958 729130647 844626222 741307376 883132713 595002740 686977913 591155507 843657363 591870538 360546959 630864373 813754321 344682471 607278047 868024389 557473469 59869896 612311498 242709807 676762597 600449426 690156960 151742505 129607597 382688149 825472537 835139008 571329151 840623557 87626621 237718826 544594010 354534124 83093051 772386532 446651150 90896679 451893464 628294547 290738190 540533401 474708023 739947580 659956044 962947644 495870324 324178729 904320624 864582003 745878308 869196239 458261939 873411666 881474293 200493146 355780434 634035672 982772125 425513026 705670795 90884394 857173462 663399545 763668954 757480298 500433387 799977931 564870822 283137342 675666559 630210585 927861643 688676922 378558183 153391843 912879476 454345698 380122289 346816217 796484398 205207532 550030108 886528818 799341416 786719511 966892400 184914409 920446583 491946709 719966157 676723026 990068187 79184170 589034942 24942203 796837311 63921384 96108192 475454761 144997514 403720026 516750464 600455281 592611336 590604807 942927061 220823188 770999385 526260727 760872450 408831365 410374949 771058188 117081197 51017925 447795826 838022168 543356086 573849636 839529527 735477694 601161457 893453873 19399728 405811980 624810600 245086415 659198599 383002026 548692564 121405847 937010060 854908129 456232042 719838210 161347190 903806550 236560306 753941267 156948343 73505472 468871925 547421884 118103424 127540625 543598077 861057037 669796515 697717042 374996983 41804078 970332308 757980402 50398210 643058769 268398552 190654958 506152523 221273494 266896958 840312300 372224955 800968482 585094353 813413913 13530720 841485454 284769713 734580416 16102986 1000825209 290730639 166892566 653251234 713515137 278033210 259497629 338792350 118810319 485694280 977205341 794847952 811428380 266653827 780338896 774227503 236591572 627035821 821570118 269057043 926788838 177898802 654355724 774400981 168263630 20872382 701726719 554702620 372449129 656631558 752637714 223633793 586486839 204137698 416772713 113138478 226344211 202820936 296452436 235326661 517401660 85298137 778896213 858083390 938752261 884708640 6008450 650054746 861358812 320737272 113693854 731885567 639768846 371451308 309642381 460184100 373677423 141483780 319899456 366024171 848807718 171349809 292327689 872204858 903242692 52167740 571841851 111155232 727459544 68267548 739447427 177188456 90361672 488948676 446004504 159307355 532344759 792562819 33716975 48153675 587900116 956613870 590378277 62145856 179113663 211628803 45821933 754539014 843006578 604595785 173544342 205849477 682251029 229715828 548911290 949642415 948845534 42497054 383452847 302714694 215640824 615516404 105350363 562715097 300694013 14224650 364909244 693762795 54592665 802779515 48614941 35292372 168854945 467785661 101719473 275567659 404277490 741379916 732864543 411404185 680043828 952694303 384137331 156030513 725608835 351980175 484435810 822301990 344012622 431846244 226573892 918816360 759603087 599416762 826125712 762267019 851018475 969921621 619175994 870040815 15433935 22948450 404183324 482080859 994455055 443398904 344018246 864378215 734707621 545228357 45503577 18406162 645084806 154215718 218359071 914914091 877921639 715363284 752916491 975013903 654774175 954272145 914955615 199889481 545181280 780463811 603769885 694848179 508216836 268374646 353208034 593504621 526905273 424798658 364434468 447322557 422136256 876770817 942722995 218290100 620873673 280029975 482737071 892298463 421742157 70142797 544444642 576761552 526634974 36783251 225432013 906678411 364018584 854665156 351933419 444877513 792492933 568883244 429291506 408882171 68192940 975554871 56221551 704566485 5389467 105017216 104318214 711888639 187529302 237941957 303507935 962857820 923499190 72596638 64309059 697153648 981903335 523071237 350028444 293813568 47463261 491805598 747208114 568596487 645987752 605969138 122423473 234426693 303097962 322849664 829236823 483540344 578240269 19954021 640008876 254023608 347769371 725269678 421560938 196340006 1001109701 778356815 509580912 699076208 536855143 112201633 252605337 917271141 304484344 665598664 375937563 489400908 616063137 184867669 544992901 947635770 533223459 476976195 505954522 282137579 653739723 98712681 813827374 738384696 707192940 767790323 878176601 357604372 778981016 474833907 950584625 537544693 613795940 566186180 867377199 370146358 941305329 690400685 317661814 962288224 264427775 307051166 729259959 317616057 623690732 248143910 632158601 238984205 525513869 589545770 474121513 222532870 69443412 414155804 299250738 579081200 354211534 325458222 256666630 403294352 285982273 992709824 683174655 825898774 887601824 608987932 837682715 595196999 231982726 855927936 866375823 303617123 961009561 714515156 305738396 278463824 669420952 3064312 684194712 240398539 593026106 644712090 197296555 457189793 298954253 861737316 165648667 627821684 633712062 174168112 993359615 232229287 976884239 3799499 812449801 416954304 882449455 111004394 376392441 780768567 194111878 104162207 200462155 662380835 589455554 182483332 974675716 328110119 402009707 281434444 906239545 403608524 721386995 975541583 954312349 507252960 954054696 712064824 741419334 227985568 722212129 852804007 800448605 30475444 663839797 285151672 243125866 181368905 846443628 455745122 886743527 916039705 406975024 390137105 494898365 582089875 365258712 164517928 367896090 579675795 596280250 52331283 955245790 846288865 722780771 316933007 114136909 4479893 722140407 685351593 664791864 486639028 314673937 370097128 135248816 201391138 150137844 117363008 420393159 963946080 163815528 237484231 57913646 378868076 268845115 315582925 148223941 809303356 270374624 902507764 220908307 207524874 153941311 210319199 378245411 203231109 306761454 238651783 287144473 522009421 44953406 452767202 865189337 265671843 513880951 574528099 738199985 473091956 60907609 209422032 502803137 833183586 99108325 221739476 481774391 929131551 578202932 159080265 466881105 396383839 733042252 73325358 583479669 938156934 977959231 801377542 989801828 344049774 852599470 411556725 868231800 25625737 291744247 922747850 716386211 194402732 430860031 884630976 925251373 87089515 157184973 604072389 312403232 369448041 748822190 661327586 228664438 900320371 851747137 619110143 448646813 282651692 393755602 480655071 697106584 995528498 829145112 792159201 583609657 54518434 855860007 678303408 638027923 599524179 970261337 371399652 395182485 611958714 145535336 90111659 298340854 680032620 602484370 960233 665001570 321561331 99197032 733381318 781529169 814117669 384701712 410052614 537199046 381085274 603702726 341008115 967663841 230133909 29449320 225305741 638324183 421679843 707768376 889442562 402750667 840275760 384907615 943974294 14033036 358472107 303936145 822387827 107836269 976515640 543885968 437578173 367276371 75913651 492586439 825112794 790449791 16488706 329045047 945177653 551983992 131416010 557137494 114619832 968419826 627375794 869681076 87679782 815683298 7327177 916972073 188705327 895165711 179644952 398527975 915713231 328716485 548150909 277731300 929367519 524501495 692620498 309467536 244413791 128221147 37290725 119797042 944721581 442966873 586984886 308143228 779975076 450162463 595780664 507589463 223903151 144945773 804137698 878612888 594242155 287983910 360712488 386350776 409018249 926099737 381412279 528811866 195361726 4321520 586792258 153332034 756934960 957355698 729001577 219252097 190814257 9956946 653851713 734494778 706502342 516500526 966843169 778849036 48219156 26657014 813649022 233942234 316571698 495267873 559781151 109790821 892991635 383135458 170626740 10274298 242953360 829155675 828931412 759521670 647636876 546813005 844736503 948951880 662865988 895473636 432293024 917468701 432353840 503006502 896992521 56084974 364438943 912676818 919241742 691633587 266540673 787473419 125810063 763641660 610145507 554785387 320006048 657513521 190778293 952302625 91259044 209269595 774980427 885489555 375419924 686981849 867312199 762778414 845376725 184831947 292390376 922707145 146296368 509171169 547868089 988884220 903998688 642490624 72822869 207562905 966258806 504580972 54258627 626939580 354832022 982573886 158264234 626101526 705076969 777759550 243625155 647489590 326436709 877216133 108335178 500295808 508511074 264827034 357721860 687343901 896088616 77789967 871446590 337548558 55947021 891069669 115611728 755232607 948919642 734096851 134164588 649828735 809035715 756977162 633711759 122049646 471736330 45610695 875786060 700354967 53899020 279923154 793635176 103196966 538316193 698309035 930927881 365611892 224792640 24068417 700603101 258960614 232078668 953509451 854241818 607691056 717068740 78581631 339887225 929421182 20443721 943422946 170906216 96030318 636117822 586185416 948212711 915357420 162155749 515208976 509553150 616409650 145027058 920393769 18175661 725877737 536030015 670207122 631204967 247567237 428064773 41348794 784002673 800639342 850387027 819140940 977509637 953887518 665233183 658012535 968118080 616942089 330648985 746529069 401443549 118396575 573238512 191108356 556359628 602790285 322857327 107583929 97296922 189978575 731690462 416222855 588344060 264958966 436277486 556077498 293585596 61050334 273052782 256526568 758152528 107154687 647533736 475203531 352047658 408355297 565837999 478878546 986917591 452496682 333988004 242403501 421813852 923891406 898651118 909630899 296880258 23011521 304537865 74960295 913768741 614302091 745923386 76359855 523090491 968201163 308497035 321783652 811505301 323004699 876344364 55625870 949586918 606938980 730158383 294826445 110330419 332707486 338834580 646379598 475881445 604647606 182703014 213829885 416767446 884339275 854485801 488099824 763220017 811344994 965509210 495706913 256295457 916086926 278353224 443065218 361672836 279788250 494274007 566263019 239919359 218850296 683308528 77410406 982851028 925375183 636352420 683759039 685994002 288110145 331838671 242575482 699538001 355527988 338820548 578549109 333697657 495785019 48127822 669631618 138313120 456972697 618771578 941449486 957736322 844171009 532866522 742801869 44455681 580609089 837953220 80963630 298243566 105638634 919902816 881354752 149886997 601769594 240988304 287067602 482066564 21387518 595972033 794727550 759874218 599780368 217076909 373338990 498815767 905834242 56547835 399606326 208655197 333721725 389794534 214833502 459948943 43983464 351515798 594178578 982715957 785559348 424468190 754255266 667184502 586367473 431960776 511077772 705826657 922809240 349767173 612435162 395422911 721858385 416577848 865171958 544216838 16595997 157550921 167107424 443472409 711618634 653697151 70998985 610214473 97523168 328443439 579744987 55664294 384580540 290871977 72238999 50025717 217711959 777268135 811310189 850726510 706670656 679176191 756959617 590682290 937252135 464960016 384371971 238001819 257987729 428646189 458720736 96898947 312276418 365144756 155799151 848762559 770496895 888982778 228963165 646988275 802710107 131291609 82782522 232092026 849344476 70039779 652988730 401231092 895577407 25783881 108322056 109063133 817097200 628109432 870154403 71254186 80049029 657494969 82893756 675187558 543924617 89929427 509428717 47903645 476494526 292657891 753019333 666518922 597283566 6286493 241134582 564309570 571242102 896059530 993603562 334908689 537085536 431519558 604058680 810367218 519414575 666584206 235241606 429202216 910241827 268274743 908603936 11348233 145620361 876648205 983963711 73421417 444018919 824744259 66847021 979024620 797633511 56636394 641469181 386765385 272735673 592509005 814170791 668814716 887709434 930524377 270278 910460203 891247609 187236372 284559859 591840706 280579400 758592552 812927451 9222810 989159083 953448781 349022879 306247948 130280529 180582445 817663543 565456199 749624228 804108008 109549927 56489450 127623609 527185064 107876570 588851535 398460419 988738968 590486331 349169213 568916705 258693084 500191234 723337096 670811932 60275967 488478761 224885575 284308994 793842569 660623887 175305828 83993355 839539855 371966612 164209667 312742756 392212901 911157804 989682253 981990602 204410708 933764540 172290115 103330792 124791723 381956699 364140618 584296732 913998227 179934712 253024947 922890521 592214787 376310004 844923684 123920164 732202258 208345812 525913812 544508051 312665628 193420586 492927897 162826598 550224179 532894532 605441658 277795403 870185558 906204436 724393680 301380744 798999169 163692548 536434587 716973360 667471734 758452084 716969486 854019366 429991596 963680904 315676047 914651918 962948934 851697215 68167104 851420957 86091732 869571562 189713044 653434320 18503733 771870343 213804506 497126239 432046175 796375696 923597193 434201610 213166895 423815072 798397250 652013494 940268589 859419784 827407492 297781490 194778051 392323711 338871652 50372443 803214798 284858711 694699174 304220939 736036860 637980683 886109213 667764523 684634722 921319416 675595711 31733361 282894603 708379604 964083358 333809533 230293081 590855167 200697135 526737968 161322200 223366799 663879841 529243840 482448448 291807997 582363624 957366033 653808212 552510795 66608760 92205127 527277679 221986726 661876079 725999738 259851954 412989503 907135767 977633693 500759558 675175769 877683215 791523361 995653773 385883265 265761927 117395691 996659263 64632132 117914121 846185055 543856106 914799724 208129071 717247088 347274085 72419683 122546156 812684536 260364518 797454192 448498344 934546835 836547233 513499870 329596661 658279043 830173414 966631836 812828473 441634220 639339183 204297603 676393838 850774808 925321215 613028835 871807400 492522359 890253891 299746028 979050801 53803408 9365129 319723670 11753567 984303524 300949528 38548919 663724920 962058925 660246169 92589847 225502842 714084377 951112176 135438568 636335897 900125876 911457744 490606799 661582599 543406081 926887249 7729599 223347801 427745553 672872515 145414802 421507560 176463795 912406211 776442504 205597433 992046517 822473518 938105393 530161956 965594370 134474876 523055629 211519178 488543975 431106550 989564219 432773722 865079728 677589059 482509261 6037710 824086708 935687390 580607683 746818390 978714336 465873678 998452979 631384199 612155677 522369841 621356633 782915565 581921836 17863304 655035109 882896265 80425591 160009253 352777618 393308057 521585180 892947132 483779959 703842180 528429685 520814264 188041772 834168488 521736947 374659825 429023877 654353048 425883674 907924346 391490435 922248909 187300199 916703717 524067797 460747104 149748646 641191207 722967761 408147229 526339336 100317471 534080515 14244236 310318446 739180749 862446000 309718424 100925946 732089956 28028332 994471998 122001788 654528902 66871779 600390260 602910661 116306401 850599792 348609995 890799805 122394905 864575255 929234031 689222229 636101852 199514572 423414823 302198718 82207740 546189342 958278961 641495186 605626917 301081452 35509460 147840120 461985068 610897343 716859407 486719359 142542606 952385642 428419488 311562099 538501948 841039564 874836515 933167783 809202698 614174965 427971417 758391177 1618383 19703053 685236118 214031227 577668950 889873756 142513616 772217699 525898553 345493608 229495425 640908824 659291087 632629965 129796903 387855110 753009705 245950999 712981707 169766555 406504429 558112521 70940615 499475914 504323300 711728633 777075941 924167130 852281032 876301993 588925544 846874215 718836333 453272146 240478088 34052627 614294676 284907437 219586399 849663975 246861726 203113847 985803970 808085284 301679510 165604691 105093242 26368437 76376852 349737681 591012828 240836816 763827053 824954961 969039471 186316129 742337022 525118446 543893329 464298178 732343955 566308182 975342536 732657385 717299409 415654384 643362444 683779916 422790627 899937586 158658152 6715613 650478891 78305732 925196373 509334464 302887266 45962139 410331591 758359280 175522774 495791131 595381430 447661622 498231375 315484852 239078838 434745987 464850660 215348771 828758981 185826452 614707172 228537871 409766610 743611732 477067079 322718541 532754445 612254975 842449758 3809742 754554784 945436516 455735659 341390978 493771068 498886918 540416506 687335081 617354993 873805340 128473966 501123863 587699021 736577856 102335320 513520355 204902717 239797374 137473639 877047834 954842292 119810790 10557556 509457813 454607852 7285413 114300224 279016367 915240727 848658272 218994874 883099803 704410979 657392138 114885469 482257977 207151496 752046689 949212761 732860286 645183410 629666056 131035708 60671937 641419269 401229063 150891973 390836291 166471732 453022836 735223462 507789188 952395233 165318321 571213320 914519375 519614011 875124548 83129474 817347135 169169103 120196813 517926620 231198732 720256184 402801624 215929019 296145881 47482944 658945654 270053270 74598706 607683874 9853729 69061744 56479435 496605262 382634421 22406854 692081521 569981465 325144764 891152521 341079222 331920219 781326224 535282155 427657068 428527846 107352580 586064388 911598274 399303894 917844129 443910678 211403288 389728171 129549525 152682539 179676057 306863772 998256148 810785408 372574192 556299342 719470156 42599613 875177447 167672682 285759922 675138355 304386595 375085006 95815373 432415777 917910464 391224847 964134832 225036966 350281015 890839113 510213770 244830735 191171073 32624078 232435379 863788099 926680483 67538343 810609125 122434106 53844907 641160509 140539411 81055527 838623112 17792817 23595808 598987948 966229868 545307072 939630564 785083922 526437535 319957979 502204990 578365469 764417644 380126197 677507224 397832157 940195604 654732906 944407906 386747260 415649229 418732663 645173443 823099892 443699654 502081195 196977421 83142144 169586580 636858797 683435087 707536383 131632322 913658555 508509497 705382305 17822910 906937599 880360487 835014391 626442094 116903473 4311422 396423704 736245759 938295514 130707857 295781663 819695009 704196372 278090316 741893313 248805549 221940983 797509050 889702436 243089097 394625173 442116920 682229474 574327954 165772212 373086094 518441901 522785376 743979647 845108394 277226649 863059549 392959765 285120745 289401297 392830337 89410715 528537764 533743956 706208176 647512969 84250641 371311909 944764536 266059282 73770361 928227942 556230260 108911149 366704110 191310909 627776565 774965714 676833748 515379574 756048985 456729249 51074967 757245373 767782311 232278990 1001177540 370356247 112702134 686043766 135002533 6201839 953281111 494471873 83389269 22508426 536473719 938571195 527988931 234250898 96003179 452974437 120519269 15885204 447714059 749969956 708409718 305364881 566653348 257327948 268800816 702240839 96787239 433901701 87613386 516947063 102980828 534057276 627832818 206996067 424983785 21475740 474109231 382441238 320679173 691156850 203529287 432029842 808104294 577323425 527740053 977274130 903105653 1000734827 528522351 57647735 80823344 425555869 22495310 787652684 850830936 854393851 384384214 111326115 766969876 898139368 593795153 906632804 563782903 813300163 250568667 960145483 778302821 693809924 519694100 732951405 688332719 27358238 336842386 45660747 855389448 575183739 214451724 267699925 103862975 562105113 286257931 961299531 479976940 712988243 750419965 704941422 748919367 916998447 252256590 827332484 68432493 173506075 56045654 507501602 529926773 607728260 387584138 824538316 321038582 694329295 46837966 535942283 346374234 956697003 456676075 220096939 480362193 126537874 121765709 964834510 769637273 329080267 465716324 800900529 565716865 138028856 970149503 768228487 832365414 263321924 517696041 95013285 304517728 213216553 836419842 259120116 13605506 50911228 110805356 408601068 194181097 512335986 156751930 232303320 196438957 824686366 127498917 114967649 362097345 547479046 517267259 507072444 882919417 23338681 844501204 959391832 174749760 579806557 849132187 447785083 639575167 912227596 481004217 291438199 382828423 172526081 274370012 884125417 603600781 25310439 254229625 111702753 461805004 601928279 660103685 599684915 115852637 46978832 306262479 465970280 107706580 787378773 258192432 607415532 406387318 922498635 647108936 483854318 695000747 141182870 542211485 276401615 298136758 189057786 154691388 764839630 199064177 11655533 185329567 47665717 188788021 124117422 947997148 18019876 565577425 540252492 243771955 804533770 543557031 307228285 651548659 591481349 653118457 91678230 255541225 611263922 275199973 963625829 34851045 189589940 496520851 577479199 382960829 525568751 593107861 89838296 680824750 418823036 458973551 507757710 773671451 2327351 1955377 396002278 396297322 427665082 844729174 361252433 700625752 39951403 799290253 44843882 833958764 3589896 183383669 217607952 561158487 785913550 501588819 476919841 608902761 390100834 855921051 446714801 509486217 768680425 2826525 668114529 980226008 245320841 353944337 726957868 470609706 565585683 367365371 513964966 546827866 718322060 849564063 62248652 331248906 732828122 991361522 501585159 247917719 158375664 798250085 960425645 255743270 85060493 209756889 918599557 435926867 723746635 889154394 27350816 151912978 188876338 86864075 630641462 836491713 536917604 171051750 820734829 880533069 7902766 416974296 556362213 495957155 753694658 283023545 716395083 233743817 389703572 532232715 243884098 30005829 366494483 194466163 887440788 5072736 479651551 728712137 691953162 831756814 228968222 339289553 65777044 70607711 531610136 222804239 352361164 472551992 607677844 203065359 973750054 700612509 475305564 321694356 482119044 392763805 796236049 85723394 145053998 936983755 832744254 643065120 963923284 763227158 11476948 964328368 480729923 115384479 560825079 377904506 534458735 248790868 666103414 323418834 913202020 344511279 890590638 845036395 421248154 79568287 49470084 731057562 616451820 28494006 991931936 441185714 701543818 414354460 633957006 817976803 911173449 299419764 808535049 411944457 507366664 852445966 681571797 583863406 632661081 814777433 519505756 604311117 707269129 525141828 849009087 152290874 241511337 262961285 869941795 17019574 627875426 780228354 398992459 468193228 794608238 231374542 621451654 949875791 111425972 860556740 912859398 240456651 254377247 154477644 885382000 818158926 448572322 366839149 770080418 975708127 254397630 482462809 762827669 142772495 996965606 173821624 509622307 366459116 482313410 570220180 541899887 276225866 36063793 507273157 516003079 540445347 977428544 804910508 951707530 218464516 785583522 60686423 771969311 497395722 25131906 73438774 769195641 229595441 547945076 613029047 259106369 387287129 251227035 903439521 329360829 91226787 322228272 537078358 419043564 692468089 130457259 320254045 460019435 683106393 445510320 561825256 874874917 540353716 132761134 455608840 18070102 103076306 493578134 538859077 628291681 486797549 911819222 521841407 530640202 946784465 958766124 505192676 68079061 197465485 802992155 457153791 257294592 126037440 93988858 61291534 783255060 220667376 623944735 525299145 446331347 645635622 31208806 385754054 453836183 667268372 343894405 243213606 346768158 84143829 220446474 422588406 58384227 734591492 504030513 769331855 529665118 388453839 698759970 989099729 861286597 45082715 20429832 507749889 223880786 605084379 48644 655692079 94819043 25002659 812505158 392378830 808409869 605581185 305554961 166955139 220900687 295836808 343538935 176193435 715609382 300114569 311826300 226239360 85546843 717311472 221601244 938932599 848445091 188573264 714036641 851767818 929362709 900322371 903722079 159393530 867168295 423667817 769876981 137978824 203298735 513625076 663927677 85495476 126218447 707515184 545284029 836903829 986963104 381391419 681128642 511897569 22933592 790413870 396669260 30646102 443769983 635952819 895922505 760507308 499980171 889091275 893194508 110897288 840952540 528358006 311860926 445467987 555822916 201543567 958691486 68224770 440123710 472396264 480416452 367882184 52730450 582244684 560253927 391103241 239489509 278254720 952288567 77507356 991228624 724800742 965214891 705138009 732257247 802833356 75009750 307174365 380623121 99465576 133196877 208204446 587436798 563229221 180610475 502231641 808875199 727553783 221006561 21753262 207793074 192697522 188055043 699469100 36790553 299523676 937085988 929389472 245989120 457305017 410862326 803466270 155561166 624725483 1412919 316765143 889031345 76999842 764540271 141036919 306995574 359513374 478617723 733212379 639442112 905504453 778587010 504024564 301386086 355688644 812064326 840349461 281676414 713438332 130236667 669011896 741462363 898506953 370913005 725798871 385980230 74037397 23305779 675272719 208971544 974113615 997330826 916633842 38084727 561416658 85275106 808735250 123167051 834488335 216501410 518116785 542614307 175517621 563014981 761394440 243079233 498988964 326915065 642785587 616856362 401748602 428637464 402556179 188844733 431846734 696183942 650643954 226988658 49091067 981892597 681655501 203301595 545579729 490326967 576654470 721718543 994525400 485966704 207231382 643027935 126426912 768014771 414568157 163383689 279428807 30351100 825025996 598635561 536994758 56578872 305065193 323717767 188123152 56622975 596108389 251859931 644804645 301646693 291099857 121238956 918495392 249430762 864140070 631980340 402758672 391692249 195459350 813367872 66929588 380181784 838933170 94270109 213253574 743864518 501104326 791294803 869546384 573574768 215070767 354007297 533724622 284697326 508761528 201320567 930482203 165238323 975722394 730238048 332288652 540563663 614167761 848395595 76376233 101857742 87080372 546526756 90986293 696570059 272301744 272463777 450171721 344175527 886688643 737222588 638426175 820095161 181881771 551631757 342347694 802439438 972484533 58419062 945852132 685106089 557838999 374136607 253807077 690191088 374022255 783798695 616582244 884172535 194008398 452234561 831260841 427325060 999464867 583820095 971246062 799534945 955699579 383803387 693787730 437739561 116481575 654763019 659805880 615413829 348542543 27477720 411424436 318883338 274311321 792752028 669542436 571496432 355890077 892953684 842000888 964243617 221449523 174291623 619625298 144558592 407937457 803817674 758965575 270657860 477208003 614001473 246081221 867561860 882919704 536674066 14125897 953821276 347008160 666793443 728377073 152838451 45403696 446941751 126520695 551675708 976009830 181132345 8001903 252821653 800251509 350349866 330935420 590846157 122776567 203905491 734156768 572177035 118345658 416788830 720602760 288482140 566494112 892791325 255868276 173285048 857594690 614623606 367696170 537900398 757172571 291971980 194945762 285124716 64782698 241473509 501275927 582915222 144413014 261491096 197538829 542785768 122178067 884107015 184896597 921124344 932506550 796184275 177792185 285921539 423093429 718485733 583226094 990791995 981959648 713324893 721300047 720594022 8728245 309806624 18586597 7633656 588148711 161273326 243207337 972190455 734800086 322975049 736428126 299225682 461282625 828841890 818580493 705244641 563125569 175781761 62987947 806392415 3487423 948790721 529049953 34364172 30136841 538195502 731230018 685061634 137132492 550341944 518386292 636636858 431370668 318226317 844537004 765081845 444004434 182307014 861367287 684819781 410113854 87739811 939211484 230283422 324935181 263306243 64974124 620932212 70105717 645412617 21527164 775012299 423456271 43355997 95108197 428704381 17927737 10671622 132294597 619450174 27030232 605450094 606962783 277487142 940977014 600060419 301043358 775678905 634339607 658464259 344095620 203138334 951921289 756520428 529752547 430051696 906368980 361097312 999005239 833861258 724217013 638406454 889571882 827992413 177094020 856524466 236442318 899960566 137085826 212900066 32478346 842463492 98366446 250554919 207861487 804224553 918341476 960077317 834356123 624499736 822032762 305933535 477801155 873184909 821013483 960991480 851804742 944365754 112410458 77018702 194943186 578173288 392463480 195168041 865481165 568688481 273687830 696963301 541677047 741329368 368923185 952591619 807972118 800204531 493932682 257654658 235839225 331741037 724509239 237054337 922808011 981640718 247274755 310566206 790626454 859212580 242247637 892848768 512063368 317075264 232581456 480472269 874419499 312875985 199498208 742483804 293547530 264470408 263357011 94985808 468814255 97727831 652632794 506693054 968652358 995179099 833425557 637210818 590275859 888074137 856894388 385919820 145294160 928422590 319651977 416563478 828887465 502434143 718448294 869297360 556530388 151472773 871320654 337642024 2072809 722404808 929001319 682034251 809061975 180978795 424555566 619278554 353179828 848168906 845738080 968620194 602803059 751619811 364456106 628000236 775374934 304258419 336383181 299908502 912937225 969252361 158425394 508329364 930129034 230797022 704112060 384534664 794947675 158035249 166375843 634602294 833197832 5180549 570837354 444713029 183033359 156998732 534658827 450901077 895354395 851580816 318507890 991356527 655538213 672285793 82067289 779268889 245375051 946987439 786100358 167211612 722407064 3696206 416662777 320198710 783696371 942683748 980996068 668467149 248115131 321242884 447448010 591020769 15008019 873868162 564475110 416462678 345658096 179134974 909251750 320612349 369694778 881684201 442014045 772458095 678533822 771901506 123358987 398909508 417050621 352716446 733971701 121906683 646922808 914998177 365788953 948913360 425275564 508906419 222411914 252830029 358514525 151679393 219609610 375869397 315110323 855954585 692062904 515863608 76640471 970646544 735032869 841305133 996493170 210338676 812304456 486870708 3945228 563630454 723779835 44729950 557526795 499538803 105165 770990155 905258950 590436669 920179478 988766935 376707745 283414014 334388403 376192249 778583289 317094064 397521745 227474566 216039297 64669077 597043563 737506103 205382636 910373088 613255193 398848862 584301820 87212294 278631742 724052532 823514981 203960236 987735023 700876305 915271044 366911402 91336585 926336461 817912168 600892684 5395475 907725108 461078115 755901918 744276970 220145211 375082874 272620864 671838141 804377701 167667066 652526407 141718951 833295505 181386775 689468314 424562095 386540927 959259707 774625206 825521815 768276737 777540480 529057973 519870027 165190292 500240059 781305846 24944259 200781506 732121108 598444148 359324958 423429391 507334908 947236014 518346101 934890171 743142730 43969875 618897057 361624126 322986154 181661073 200248087 77718027 903808198 697649192 530610050 426970117 121679192 323129340 692413097 335772847 84636732 641111505 524159951 877125517 219304480 477189165 413369129 543221675 531269140 735747368 977954158 814240486 918272760 476487664 788179213 251797212 383184781 456638134 866264221 879563848 269090918 224162261 994396782 626089963 401466899 62977221 735563156 887516610 728902629 654999873 264548509 148215480 713866993 869545734 948904965 77298161 450775903 418688888 890294040 591382650 588907426 286668997 686282368 822857004 855841182 431845414 568854038 81814118 487371024 369140155 34058964 417432997 463828424 490361116 705010230 378185704 11891814 648357195 648346047 114305858 767923699 304298920 794075812 750817201 340055898 454629887 437291923 72337402 231235814 890225476 698246741 999036949 651042684 197382899 136715735 176249501 838878924 869172973 817019074 783330250 677118571 959694095 533045237 820783319 332383510 504366634 74296450 368618854 370305329 897854824 301501538 3678684 354458824 932648063 123327107 722200030 86169017 591186645 789227825 51643023 998600468 834659842 814610482 237367298 122546216 463732830 798163202 240649947 1000869130 777304884 489721578 442986376 421949979 956054379 216039809 535300745 921364635 972760809 642863503 850066083 787177665 379479780 938668915 636117967 735804197 253836118 370338710 103027217 119168356 454081416 230114262 122922218 550101559 399388565 676973259 713231679 442736373 281775177 136280091 153446022 38722450 677856013 472156811 481535282 537012292 865257631 982094258 517219594 392420734 430558138 129485109 645494588 781193383 39432265 748501599 710180915 30217100 538282107 527787894 447234746 503564377 682342494 758365041 671472715 824541102 650485816 135190504 375181105 921678798 245142266 886202215 835061888 672205510 203167065 901710817 59739293 934597267 720190652 999724638 786831638 611384499 236410434 408356475 327537282 132413295 613318371 527544266 9690572 331774260 735994164 629656431 464898687 185730245 129220278 505591024 681903950 338786725 843784238 880631012 864150488 346071936 484286026 450546995 249963630 15825045 528919444 684553331 471010551 953386538 277119236 159101445 805226105 470276093 862086894 78575618 210517856 439894794 273599356 212328775 790185097 616688819 418136332 733269106 168733127 901071989 510123597 123449416 598545494 759645171 562933826 845341081 114073817 755550107 892844728 510685893 201666151 121729204 654868765 950818967 351062184 966584585 217882970 126259731 90886893 219427119 643946963 39528769 441274208 478452318 256271330 3210236 238401918 488655595 284975322 778952276 343618336 934210496 123614065 916476144 887541738 710353548 625044530 396535731 467451783 506498183 52986478 137974119 589364457 191688766 421511930 43143626 662776943 539092634 265095947 752553033 131237011 429534138 837780424 689223727 607185142 914610833 34680753 695365748 990845446 540420342 806318066 246508061 584075623 449754859 6736991 857695320 835999459 962066649 76994551 234535554 807283495 355603779 25297398 546550364 630265922 568533564 447937208 659545792 899130213 587439778 64426293 509903345 534214714 19159100 544775750 857506068 665356088 8130256 272724452 736909958 570951366 639730511 951312074 533994133 39688879 657173967 235291277 220389335 293697229 648476505 994286748 690452571 650770855 591556625 832344632 683799743 752665153 907889527 781138680 725607919 841529491 139505204 102605146 929221237 740847752 610998224 867635250 407558344 645573651 17804105 33296809 537126165 79937526 108174801 569265886 64864048 499343440 241387982 326564366 143240127 168708086 123596689 858725036 928830147 162296424 230642779 229612056 110604153 887341800 864540965 253332065 363853462 175295216 443757131 793403035 867795273 936063394 278136727 794594153 768984427 731858291 979162439 639112367 897983212 686934804 477118224 188351842 596333153 244763588 721507970 214928058 561783325 299420199 834450326 653794854 462505675 778775584 563787820 327355626 906341373 568366685 167587043 339555744 84432590 919058550 242119844 457299122 607320342 591298588 196421209 287693084 989130657 148689020 428284078 927947070 251281778 730455072 560971588 783366955 207229629 595595015 997780897 165971609 416753367 388273667 317689531 710690287 39905378 307191470 613143402 401496580 463898019 787085011 971500670 627676771 715438683 8111750 507499788 925759496 463119711 441966961 525115605 285718906 737248297 235544891 504325585 203884577 5761725 562839859 940371475 344730204 90399227 152101539 312437050 107946770 54746150 258235681 656696392 943398817 367071695 259485898 387007962 29277689 441133335 453011525 666084757 166703076 1001782461 620643484 203930885 850485495 535133515 969234091 360769504 136116699 767509137 449305964 177904631 576631292 222187940 995684354 164471351 755244655 541463172 227234188 237419003 82131190 836449200 729621714 265650660 462558220 460199046 612102880 470238537 227806683 936041944 824673011 122059277 545454065 518911517 967773161 722949150 657095783 461581102 60262462 174226531 462877353 377891621 836022695 219723316 557831878 610682644 291850477 504721142 45110955 820351157 367373410 482316362 888043621 507737562 449662184 157277251 377235272 169390073 930502189 451631111 551276942 826886313 65639444 685569150 896730357 377117634 895066802 556111831 974071583 64893021 868702613 549495096 501430131 627770255 369319403 506879111 751571731 877704118 127093110 180428155 810802851 267358883 927531792 895808108 96243995 682241981 433866403 732020882 308713879 284668760 298763686 676531170 585414199 839943941 333585251 527964695 673876689 850890239 928573217 45418440 864438829 911173219 557738710 340180312 171107346 78864396 772988356 272390877 399206355 609203350 744655456 798863247 629377955 274320033 212374217 889776343 91025016 972049315 491611003 33907855 65929097 408155909 830798679 972751372 6738187 178041166 377976930 893047423 589597030 843784753 996773896 349187493 201032834 29000449 572030708 688470194 449303468 681149926 294474634 66621056 721573913 293352100 928930303 418561340 831550494 929270883 169134024 635908958 594100114 3913464 638860593 281309483 170970452 130564626 648535245 165221969 523353881 505437367 644996833 445655240 703626062 398950505 11346798 925013570 993862263 116791094 197693521 309082588 426402924 299680378 623413339 508075821 609787854 96086895 222737153 349821236 234785017 233875967 231738214 777320493 34607139 385270144 674872666 859188270 289860504 847784924 750602401 578490297 474637331 689631199 222929624 979682158 418111814 730048322 603974158 360286611 733182584 431306543 667273114 541586242 599929570 766226575 642692538 823982028 621288580 852205769 213148473 646039012 3688710 451170698 738800443 801508846 224131201 124633457 580731002 342772802 530977395 375649956 489787629 586428629 89181423 708941825 234345003 301660036 510220361 195316798 568833747 781840278 83858419 996857463 492682460 288736492 484055243 845223841 741797294 898752243 175522627 441501266 281268175 113221587 848029559 773190548 378166487 86345915 152857343 347055142 71323562 519627654 852976005 537825222 552373029 667785761 999808862 14564646 48632232 880561221 190980708 988336959 778810306 530137436 641510532 638906799 432234567 631924472 617292179 948016537 601606583 553353423 189831450 523767147 805591627 5969374 963296364 422864619 78503219 402596891 875073354 808782928 454694141 108666201 877837068 895035565 464092445 415916753 804992213 123128473 613439605 787015343 983788493 686397957 222528409 447585780 192514746 460536214 902626180 266649911 617580544 595081767 115292137 10344094 959745945 597627528 635328272 173450507 967389736 160033019 658524023 788113929 864871754 381523485 413837475 252795399 49300963 935527103 120050042 787088677 405555031 796319819 90919557 565289610 441793714 463986910 425860876 412945061 695765810 977564433 976216297 129927218 576916713 37855028 980089496 111229956 94394014 577148723 45400529 144256090 634185943 6197886 944799870 562525485 734539397 541132236 299908436 995317917 708409673 715483759 71641044 519628473 898712646 419263594 656647416 61406481 385442010 935079609 66483624 357863428 753532651 364771215 931643761 327759864 127308644 277245179 159925667 425307443 179865875 758162332 273054612 657855882 532689470 229246121 373373982 147676330 398518654 946948553 551624064 761194224 232886692 445340041 591962884 116428406 978353470 322197062 866115261 118778424 803126705 65749832 646806514 259990573 918922224 213195623 316713032 438471183 534978225 551603117 293374017 215291280 406436841 256300681 741154133 863372441 131763649 392527325 645238603 175074029 352891869 394247624 137365252 927033330 572621797 205753222 873774148 628804297 722594921 426810815 529272121 400771495 454116530 151142461 718879243 80373448 280326411 884772875 665826020 543498504 363519849 564204395 587973528 925583027 37330049 400692575 252288993 108933672 446722776 615984287 634467252 508857989 99770398 348521906 402312609 449555427 185891890 157429358 575311197 768320016 833809944 141177876 480390546 483272520 346298948 590151925 311378158 103391589 401904378 345191076 552433838 180565872 13531272 900181898 7358251 544378118 354156908 364930101 404001881 257143218 295657626 446882957 315024554 869083679 788347713 467136754 340666325 280084397 669684600 775058673 560535561 677596009 172227071 731731414 556248784 425658738 204218833 114644615 445797696 418638889 851018838 955538595 936665766 165339949 393344027 114053133 948805826 820402942 745619812 810363069 373840870 960314685 883062225 445280265 822960036 665863297 269612512 795323144 145937573 247739313 475861662 405233027 489478891 873485482 856430365 636085145 466441316 616290279 675789038 38715755 396554794 350294785 397818271 372755893 854829179 349995727 476770717 571782504 584389468 190412162 508786986 373429098 744496142 958610235 425375795 401445947 485388052 166262188 139203148 560848206 134883515 1547590 476785469 860168049 375140622 161028688 204649560 433649174 101934642 782517300 35209883 628532710 548384631 334148040 2356693 868606300 472669994 194326049 83755068 986433925 526186949 829475928 454334585 324489841 370230211 661205514 347084237 311511722 23409831 776475845 479348743 677391240 692716203 551235304 406598648 688596500 933683140 262643607 643920942 463804987 953138610 962448564 123537353 962767749 268484951 771735267 704828279 222476809 577343509 722287576 604917513 310387887 916820964 338539049 750229853 854051956 601576313 770922397 271584153 196245549 999733943 933985109 388188112 555412181 200076474 500354108 177980902 903145295 979021142 167590340 372386275 41691698 737074038 925019104 754045745 439531993 355273715 652305111 393107309 543046057 281454417 716555882 574283364 24343490 605708854 406107978 1002225710 684530238 169445063 709471381 270714960 176924800 565906765 668184676 661454948 518991265 522794953 66704248 773329470 998767325 614879296 264435920 486318718 470474459 771246059 553571836 226986595 284231146 232346831 739438405 505117054 998273883 289923440 518000799 960677118 605221328 24789837 472048139 438582683 891273200 97638544 23306788 465755873 275486349 351673206 403422856 279225316 96396481 58981103 557574023 898409652 969200400 337836064 597417207 586509839 443599844 476380193 516403320 667246690 793261355 700288143 349620315 685300371 376124338 254791434 204928005 949917440 381604311 779660930 204113516 7343634 63894036 817485558 763718045 223850381 89109003 206380459 876457546 191951606 83605346 715181657 260734224 667872330 43348326 882590481 644994806 469133497 331224413 511862148 564730153 997581265 948684106 308829331 154000722 83129501 730833161 413062968 571042411 380060711 277812304 98315835 422879032 174835393 989274764 846670206 334255020 357460510 837096013 300424634 78018624 813965767 428687157 954492206 752580137 252574416 348090004 678694614 478048825 427842226 746610843 660503800 422408485 465868882 350390390 867509323 274127025 487386246 717584470 558893645 426420765 560352064 722617146 896367866 324936573 165762213 768624163 373067077 976006191 649632597 316386944 104390974 162378084 764887822 490889782 442231407 429870825 208854186 812402651 829001395 692747605 187796620 783345681 885755786 743358007 539320261 844205415 462581640 46585015 470540548 407465296 694491461 39492237 808098291 853526738 841118995 488030617 556590711 436093809 121511338 600700680 895757911 816796793 26100460 446621536 940683967 664292135 565755716 739639880 581785598 588279562 591626702 136053024 610061280 233477935 943622390 997832052 888061826 225281937 741491074 258566892 861814550 328836083 380067230 252832078 369143127 920919766 47365118 305635900 67084290 753015573 451372214 895762492 840312901 245185152 613196990 352945241 859160754 109583687 288248112 936446296 91420910 553133954 929768087 715994418 918998182 227693414 669934781 13202792 918726676 955357667 161726060 352476273 621519125 796406825 278322911 548635184 643183375 637530485 761512786 440546394 789806889 293108075 321702930 653632187 307287214 588493253 847816096 48655279 476944393 541763891 734239384 545311501 746378473 472216825 739627631 382950076 634565224 604962051 481109580 473054642 608775680 510521697 208465254 20520167 630946579 727959214 88806313 166564096 249584311 681435004 387217583 73947755 225539548 408999954 35062485 697611619 84896548 545407628 649033470 46565398 758880300 2634851 254262026 522403446 378601494 3009615 399141980 837139420 217718667 240702772 493805742 830460710 101755440 113087628 865189268 928422760 560386998 446105029 199675380 84116704 934990452 886194997 593165759 255383841 737506980 79923737 846543136 198735681 626461868 321453967 80147291 958671001 617162018 413316976 470127294 712184959 668746825 974666633 550851168 591334951 270678633 234025132 92783980 817207973 534251583 853580000 607219116 422145297 615514905 592192548 74663944 774226597 349805354 735767306 490916088 380450689 197255014 955125657 990631265 72626673 608120740 767689946 67162481 418298261 185489778 800632660 313882568 801932217 4737338 292611703 618981735 864631619 124237432 762942051 660456613 939084636 692101739 811683558 745665778 4210288 612190896 828912535 611647129 82883074 422109152 33169433 998135289 758180952 633165801 989555458 61197343 772731163 855588800 519483403 32546777 566024204 999779075 190067347 726349432 714070771 204500868 763604674 717012616 405088839 9291000 805351216 736679854 430143103 557661557 44370085 794474667 470126273 683548599 249550627 618698874 239701748 403999474 419614740 146559640 275226046 282726643 544142992 481067849 175760586 299579319 87247694 122524737 98339663 365483274 658773753 690013830 7632331 738795105 85658806 364487009 534684921 558918188 483651454 717701686 29507174 539956755 854055179 37226987 382244953 240726009 312873148 98552262 509287075 355024234 996685890 982774768 430390732 89718806 774777934 221510978 251410643 599482378 225552389 795855186 99251547 356764345 151969557 971233153 168802282 574559497 813120570 241086052 101488492 62603334 890484975 705209937 482772313 225143450 249658909 694246775 288730320 166852405 939931341 94783968 471173342 98495008 491558240 575428946 835893929 411121792 873312715 410846011 568232635 934919485 792258252 24250301 353997070 110716238 223460203 337136028 574925595 332411220 432248331 172857755 412021690 693068359 861609977 837606717 775358542 93250360 66527322 166128161 210395432 926747826 5479699 947525661 503824311 874140993 106957961 883595913 568946292 535866487 472471582 616044431 361582770 159208740 793752175 753998224 337211677 425559354 767580698 301273039 848412648 355302642 351223687 816550611 99792288 767267244 113301207 890761441 239642932 995555675 19993324 924694650 225499783 335847025 829183857 807169437 406744258 757913965 713163041 833215456 703455897 289913514 660119543 523361589 483624920 323223636 932956555 216510269 437042426 518650635 653922693 686465767 313155052 967772261 909753770 724626108 228436649 16499941 59154657 269390874 166809146 752192015 544773080 655515830 654674016 706656631 550786412 394528981 285495957 715337796 918033060 444495614 849741402 46568387 300378416 962182939 736252568 469172781 469908981 46713991 93287924 540175764 98195729 679876960 685971155 77746497 220661909 98118624 325479393 962628820 596995321 834994276 455479477 284143602 893274310 601037716 695423836 70811636 475170629 776006580 823363134 526571485 212433061 110381450 495623271 409355492 795246328 331276735 157848881 134229036 847760775 543452374 352032433 24102871 316420294 296425654 541099377 792635130 249285586 206101314 180078822 813070648 628371979 769495950 198274313 981230734 97558078 491274561 525245167 486290224 259108228 194548318 786423140 509004733 974519914 518794014 884705883 891532387 662040444 24428705 961431497 663655026 244847334 966409414 146132219 665141844 263518299 701798886 619751669 959020130 19773897 820921824 590389883 571708417 798612261 541775937 365100650 139907436 848851639 845587395 619513975 531286177 190837184 491213561 659326055 810106810 121943070 754713498 289387105 191505639 408550278 94421852 476067733 539269954 284256514 379466370 560237784 508361589 651207837 255638937 153857072 883457867 182972439 111710103 552592315 592129898 618416961 845485284 120280252 811992826 672167236 876238103 41809999 136065081 986331404 603274059 425891431 1000772898 659099393 639455791 329295461 898445352 309374821 329183043 889790723 830862417 192499427 762831068 630683606 152345476 430588893 529730009 660011842 362870582 197043053 128910719 300775605 109168445 108853494 128848624 570681396 6333309 218112397 785394125 929167903 187125124 967495172 796389577 684801926 733334723 83386802 555302166 779076810 617615539 775100356 105355354 321998647 969900269 243694288 562621264 677937125 667455664 412591634 430512516 293029522 329421733 533183780 806157074 8406070 433618182 37250260 343376404 270192003 919170302 362088620 922753279 2214284 351337419 664270909 539957919 164452403 394043666 584753003 246998333 413359010 531564100 306768854 379267241 185335193 568897107 797302758 494170352 600592745 87956673 804372655 61484314 497565213 492335441 581038927 926156362 92619365 622786677 882826487 842925761 841589163 1000528362 309009984 368504359 52858406 216317468 333239365 695831826 472275565 642956515 377075025 193365633 498862542 322208190 778067998 723523818 687473050 338500993 444330508 107868093 250780156 503963144 593479457 430384575 697047401 839377505 532440754 446428163 150472195 178965126 571777318 749733709 237143901 883679714 543726550 85967915 757215822 80423361 91493920 587036519 561722659 200387235 675106968 52513176 580207793 895312471 745493704 817729972 692789759 172803236 41465561 787295681 280931694 491637699 642348716 227719006 598146872 403835861 788360243 815721153 598233510 939209751 674419194 141614094 61391192 148531403 2697643 184500853 786845224 627210678 797372791 167129811 657268207 545559138 56646719 486100490 118678925 615271734 935126774 473029410 105142990 1001857871 507604411 689415605 73447343 723736220 272685206 817896985 499719875 858893326 650617736 405201699 164894453 378009809 383133418 959800354 509908395 102901558 493238308 262119393 112724650 83791379 216033516 335376107 969227869 967228659 672685041 816461368 120282399 649696079 558540047 64773081 801590625 617234331 40558889 74593853 772746632 834061741 410338801 680754297 352258993 787694338 408211401 734393045 176652241 366156687 750425220 364581792 939348858 765241299 988579878 682128768 84670996 612211210 762048356 39599829 648040221 971784153 55469876 343632095 930286282 570527960 814647130 932226862 897908172 663718836 278723948 536582557 685570632 958164828 655363547 611861111 64750221 523995733 290013134 108321033 611434394 716690708 16527524 865427872 950508217 176649518 501110444 621190387 366305580 162639455 478833180 371493997 947351161 741260690 89449957 346258987 374803647 479301580 45430476 907441869 931307144 893175536 354252598 971386040 407620333 330560107 297941952 524398921 423270838 138251824 955667959 958358338 174679666 286268397 1818994 895751586 329316055 65640263 878862970 629373918 418447183 8692148 982453786 619976753 669434434 126759176 358145723 104185420 193389518 469923289 636778134 784586158 884013645 387208647 833019472 255670788 554383563 565923491 716961470 43379837 360843376 41819829 205280619 455185747 300641589 859027425 489366646 554965213 294271575 929119572 350120956 339912841 67325189 646732595 966134337 820867364 196167306 483251122 494471167 42166086 737511399 20445442 318034566 103537678 587773019 528613969 278965056 565982774 914537464 398214569 898994930 840018399 30440587 558507258 302499695 126732845 644325527 856597723 824643088 12648832 591378624 374664501 809623009 50625080 23127849 345111670 239482895 272070922 313863150 869375897 801159672 493672866 781090580 860791834 622419549 522780655 101196353 586008678 758505147 402519911 584966970 451192393 134975168 552049716 866335582 267269737 732068436 680034765 353959883 864747295 182410563 969432892 922269584 976272355 348916520 737162723 446052214 417237720 605408701 1001364601 326666755 254277019 446538746 85164238 854731805 3226722 681717764 725715364 408118173 797264695 913449944 127762905 880888223 226291196 995324699 991003248 619619199 82467950 307298273 522159942 723944783 163103740 973518015 228943741 845100685 177820861 515019230 529782744 261943237 310693574 305172151 102188018 762032423 643885442 339342556 412672099 337547851 927999357 790687125 16402337 122345138 632430768 164488363 484085508 434154141 551107934 770902691 218096722 870481980 946418474 992228882 485620438 767124533 394716093 533121992 621214087 280680628 908761801 226068355 45746323 719334335 888620743 354823023 978013599 768282467 690383583 291142381 854064535 953135937 640387725 854853824 494816317 960340340 654634381 696412270 318518489 480736638 656927056 756386434 838138186 496454265 773859934 934284015 876197221 946020983 201968989 698879463 17072817 129725972 685133706 965717360 601821492 540820128 419300647 660410328 231091452 599184932 298620759 127650180 291838713 281816112 988351733 982096109 923090767 511899133 249461380 368099147 54985958 196595764 646630953 802766463 816870746 467185221 614406697 716152843 511855621 907412267 417221528 594279633 13807980 673677122 65304271 425251840 941967853 957995514 673493335 301334111 854816621 850765368 818379317 745400624 635940851 529790724 79157198 2307278 922064371 525693926 450214678 779764311 604722763 399796699 307092564 750213835 395034679 658682518 465133083 7032411 552896449 977009619 875751638 336572001 345402361 900765606 657140596 40423827 553346254 339767582 706401224 312077389 599995323 113707115 893196035 573590957 439816612 741621739 782045353 811287965 833469013 110417119 512863374 938484328 62119911 325077085 956896402 714608143 864643174 780800713 355460176 771266761 602049319 373228911 190154326 978813760 650861429 15269741 519119003 103210094 992263737 954027970 158787634 137758481 346561891 755192665 122790675 159337422 101824793 81328801 66382911 572583019 949133273 138263178 25036314 698611126 930491020 33771471 503241077 344547783 318708627 529547962 75859485 188480618 763042796 746790183 41345458 356967501 884359961 685729408 943958951 593146303 279196766 687736498 529760185 999034156 988036987 140423176 941468748 400303897 181732950 55707858 962694871 569315623 195353066 723041878 924394924 16654325 520295068 549299184 981187030 581562931 993432006 227367640 41809112 606253658 345207549 477762370 524738891 323273377 452892484 577604378 491444253 51509239 1001147215 375897258 484563393 615348452 865785132 565905370 932959418 994731695 149591446 861440288 785647298 919787464 880382077 655972912 312188025 889972279 385805311 910483965 827016295 249257245 722355653 677081794 821169318 685637356 255470455 589897721 74758056 78762070 934922798 461103584 55813295 124671623 480321870 90113111 265948579 12841339 214403107 531313294 454844078 443438578 55585999 615193054 32649586 644500402 124494362 124047445 724305933 205032899 284323650 1622620 212098440 821391685 588653139 14136387 289030876 482662182 187245300 715140332 91812491 159954825 24089055 905465871 186425856 250403463 935355972 330875274 664006012 672985429 156262957 678532217 914580020 600133836 525804598 316295896 612852071 619454577 293535593 980575557 820146483 142570956 251954759 562005705 911443073 3749282 860861669 841881376 41229034 434730423 672241890 594311373 914989661 973349178 940996937 313160102 560305183 86456053 98607576 688382808 189540267 687393353 77263313 843140839 95528047 362211270 649003407 971372563 193163772 825615707 146816192 677619741 149669816 447884216 395585069 924703346 869110385 346641049 90293741 883512518 588914492 59686313 591431813 313289397 684308720 115888681 313815574 830628281 201568672 422369046 223269249 889792109 21986601 313626002 238518829 131387129 643443501 569332425 276187042 397924989 628124751 366313206 137858661 279804360 213299375 932533265 380312041 496723953 223711670 87362184 400279483 549290263 40176120 809638112 859298586 969444303 601701781 633455951 681170 84925092 559528476 238545654 710130946 327434782 464815801 450014111 732519193 309539873 323948664 742168070 44905460 349696189 941522586 837577335 637310324 931963159 610645639 459540480 543721859 250152699 760124361 282752959 876421912 712295382 886724633 980025281 574617260 600159193 718313201 425251244 494266204 888758543 372751125 421117918 181402040 108074180 1272969 440757545 795264989 391696957 216109633 86979559 200460710 803367847 291132301 178641550 591176658 321053538 312410911 742022324 363503223 833946637 305454788 377605313 411734422 811671718 295347206 904260795 505230389 772722319 489845917 184918877 483687452 870913206 105442257 347871065 9786687 753899698 598102619 983788616 588712903 734832860 798742586 855041964 186936787 341829019 118856288 718342881 650372497 478193940 468337275 770105804 143050331 944715570 779455529 164453266 884339774 599632393 842435840 587397841 964866520 946070608 130331489 353155347 989020209 949950253 352063429 353817236 301988673 942047150 99218671 940431428 669781791 85579767 440504795 26855956 193013547 919157667 789814271 908233372 462025962 796040450 145576021 80130383 288560785 485435604 633521326 315393961 340220632 169281202 885212427 492071798 908620082 499445264 337106231 459512837 640655180 197299556 592966184 311913508 141941681 353194404 73214666 351091027 744559243 185896130 680582673 312481314 102870272 236723575 36832718 997247829 179465436 618000741 891384175 564317690 539841747 765564474 32951295 830672731 268091628 635402373 740528155 361325499 372597207 835645425 482779224 398775669 251980002 781667394 482604665 462337986 404967213 700858263 768683919 90136792 246760821 10207513 86627627 949242267 40129453 123873223 62659931 966805733 7930186 792061291 902350473 212841022 860807533 633534054 422937868 754482248 236891888 372699061 668591419 87353215 44822480 829061366 273216670 157736 582885709 479112113 445731624 57436024 655657284 857354752 14323749 594546458 226015043 501548912 620611254 651454802 54436405 648959590 175538291 123405012 173099015 593997710 904399876 514115103 6616877 84889574 300196466 264377235 862937433 36893016 57025567 118564670 667713288 917868261 938414300 89858533 880286599 392904756 679160233 263806570 158987529 186547594 91931384 962999256 699436049 175227017 102498992 584997482 536508572 95989017 519291107 267683611 936797330 288564394 708188373 195839437 205524453 466734906 229944389 15587768 527076941 123685361 920052904 471619198 144851626 590890896 660758547 825137444 202177414 190720660 667890027 286732716 695575441 963937174 923713136 939949021 373510694 704723374 406992773 929594230 428204899 841483787 497058644 957494507 124751925 188914275 305792303 571307133 787894876 49078586 311618945 355937894 76606057 159042842 317008392 116128777 686071732 561808099 940594923 246507984 354219148 661688050 213665621 635520148 346096558 781935553 950114828 659279249 939032083 598237414 360136767 303711238 664983373 490941534 581528924 276237 746006444 678640015 442394945 750799620 728340146 917557752 557431497 971631646 363991162 40403655 916851894 504904674 643326770 501927495 588061649 50849170 929588364 415955591 623671609 811192757 776916308 905861385 211435503 569370017 136667327 529668111 675931061 894266640 764216445 982138611 79136929 793618379 316773936 427529143 290275020 489180982 735429858 822424254 354778579 904936092 609551876 335927566 525167825 721996666 730791167 628653800 335926081 900243540 186677575 117770995 93381538 192688934 95384747 809667395 837384747 273686341 806220258 604914947 637390184 666653425 160948467 7299007 989355555 583524005 967688872 965247213 172870876 633109708 82957615 420590546 34880655 372709505 691121801 559629549 262065247 382970497 307727016 352318027 527002464 403477054 678630109 292340015 732400255 514776666 545798386 773413976 692784241 560385922 192768984 747638564 153051941 502893479 634738977 571174561 205181527 439593554 954814419 189695268 193599299 681056894 229918749 302693261 40782688 761521284 5855481 911334526 183718810 511395301 72781851 466029182 685509981 736092743 82057204 622822577 577250586 889366869 730526666 423143490 133446824 900748040 155039384 728483836 126170554 686260633 652967292 328649021 358880763 918651373 487458590 70768840 537648395 969863862 393009512 57808424 290429961 884972628 259420738 86165721 782331832 954061357 529673329 854848448 930566896 45997941 226498741 954538384 875162370 778649849 38441372 501374632 718212493 146099208 63863392 734210920 974785710 66834998 513413513 233928334 964274941 81513079 267466952 239712067 609909028 821470036 304769525 722521874 289863574 1000661817 673381818 34620768 227173407 564857086 272800472 687912434 979079000 904766601 589942014 562861358 106654576 713951195 187610661 138607626 271085334 621420581 458063835 619596578 435751437 766650700 196922240 410686499 745049100 188039865 438785852 604514154 355786480 389296648 648966480 953776164 828157044 321767298 716567454 315876309 787343005 217448306 146762804 948913297 721218361 937954808 340385491 356005114 661807473 485385567 123421459 671944118 414506207 368930820 195186867 111995308 606696568 7365079 204242485 344343284 833545222 996850899 280707147 210372734 512715277 46611694 327260999 952543849 131543397 377377847 263258257 707084357 430914085 218418087 589719734 420735409 480629872 661380916 68804818 180840760 596238172 311981426 966435009 450425265 42070640 129908943 935767370 483443786 127181924 385805792 315236549 536529108 408495596 948649748 632580938 957967599 742701471 754749839 519769465 590044459 196421430 294807570 736821925 17235920 488246990 732350934 213975022 855266438 93518540 578335231 330923494 159904582 892775517 807420228 643415866 995581320 921591883 92014860 837472790 874796399 233801560 102283931 913241123 323724897 747010286 703481211 167517486 203080414 481075704 933310854 904595269 442095392 26722122 18684074 432232651 98599662 237490433 972722406 41968994 393985276 626941421 103840902 627514724 614181797 218693675 336137939 967262869 420617126 215663787 299286839 198146168 340300959 24991807 301175035 760469887 787960812 787275815 995926509 989882953 954954309 631448304 192589426 852245799 3742680 937454402 175077040 144243210 354029882 839417252 956187485 575433640 335545062 84094209 916431537 543951776 169375282 35585974 671888678 679062799 35154849 957823838 428154244 146536073 800281895 368971643 439171631 201027020 216870076 55024240 699088626 166871661 466509953 900191476 375776872 220582133 38778795 823324707 576072675 460154014 757835471 352795750 383978880 949957167 881197150 296570928 604615374 210100472 766515089 978117546 73075781 331376421 241208173 509126250 120680732 169440325 158135403 335424695 672692104 893280689 476333756 221292197 237433965 424916160 104314279 757257701 748738845 456722380 567551903 964834660 50998510 190825371 533404924 27483961 322416019 515278775 76069215 593510327 766833724 177470329 50539716 365748579 498382189 280628129 158726040 477661076 381925797 451842762 300142929 890319601 447037823 361789874 667405242 483929027 286799507 695472148 797145601 760523214 122586844 34872015 252386026 744259756 715824648 215863481 755198722 654165295 877082207 507250457 924728808 391130297 816221174 241572719 592512915 256461757 221200172 184938751 72713178 462012060 388805274 86523136 491899579 30584843 519397244 733843013 819478256 730212669 732409996 102522261 739165813 682989833 860736818 819073864 360004999 539802543 311879143 441170252 552237504 112554674 862010573 60739437 10181136 811596878 20297540 125533264 724959923 748465047 596660856 573126524 341854574 146873133 627816293 21301109 262387722 348401695 857122229 466784554 801327895 419277651 916362100 209311768 696137488 72050167 384589783 874244370 517452126 120174885 37440240 639694137 991054367 572291668 814116151 636097510 242275771 911486859 324355164 23300228 816078152 762223730 839961099 230386232 570001834 238112889 670113419 88729337 251119217 576854429 439417307 148175955 626542006 238738008 488764535 194740556 367619289 2775405 281749020 390461120 700013313 765841965 58090121 521757148 64894969 893290019 488971623 760183176 651383992 794472795 265128957 882923495 229036295 282209315 188910783 853608804 21914428 547079157 348767795 587084343 718251991 214470633 232310108 215004717 290584748 411580202 693107803 441007356 42891776 775532199 774194520 836760285 163061139 155988798 432067245 946554851 94577852 321359712 548433790 198291959 422984680 756121512 824404058 463055090 907520477 368237592 173489618 196156021 132338087 973560708 866862182 475339126 776022276 498587481 957395230 365566309 190292480 448714298 809898988 944101689 745726896 917783709 824848357 959755664 884579994 802913547 595098691 778669604 523589786 354378964 240337864 855987267 872673826 805662516 981090128 329010146 167377581 617945181 642282253 429185508 405356404 428007053 316154291 283708297 119655901 628650925 155033187 895609166 170406047 881984757 52424406 951130435 99154962 921162689 143440619 655892104 432658072 766541928 27784824 704711878 122782115 690563931 414583437 958062030 684696645 168276577 340284661 351319236 259838793 394383474 229415673 324870894 896315780 644820848 206063589 175874773 924940796 543942916 519410981 267323623 786233723 300647858 424058238 183844781 682028666 814743783 888810638 30221363 479953851 302702322 65983951 431339517 899907189 608317168 48267320 251966910 297944657 178413855 1002340012 851983109 627882247 606248754 958631443 45906581 338181814 550812996 945574761 343954030 146533448 920361747 251412924 579045753 898490067 158140330 461324182 702996466 175328584 766671376 314535344 970740866 893208893 137697253 176965917 643834571 357039078 190428544 737077442 983946956 867918163 297724818 212922683 545160642 855756403 973092785 857035707 156419464 484207872 226104946 927696047 160032400 849440225 235327404 604731736 402993902 647110468 3650359 256488260 615015321 456194243 369530591 574953554 646781450 425631052 348848890 117779229 898216930 705433079 954096 413452210 115149371 922929049 331238509 436553801 806012691 872298610 583314131 704354837 500335763 185896750 378937376 470483374 263028709 658864787 759360589 889727478 996041723 163407993 397269682 120817636 930357284 804027708 840334341 445725573 188572221 625361771 549883178 498351095 732672186 806086212 32110068 274007362 58147031 735707249 216316608 90432471 41733687 280680855 267105898 781336120 196279515 580282033 313980703 256278755 583841750 136115700 824785298 701521388 336467207 24914771 775758198 571483918 628037300 596834766 432234126 64537453 919311663 227144771 231956869 852611937 351391696 858078546 531905299 777739820 423585292 321896605 2648653 451950679 584818989 816586342 883752336 486987144 798094153 61965743 766960066 996316828 251364539 170347952 196312594 921939532 16517567 882741441 528253991 744561090 867102216 81975960 807698633 643221567 877525278 481510205 341349 160996606 42589139 448218691 253578274 642565370 732686392 284012104 649799707 721875024 642771924 601478256 15078201 36750388 913688438 905526708 624866181 426939014 74033135 351206297 804810350 670307322 910398366 376049624 665235933 310748388 407573867 208584803 410938123 961575271 948260368 339565687 805843648 17275889 750795734 641743934 738878677 946628098 12866030 146296444 638060795 362532099 73903405 988781351 492830310 909917390 572934461 333537291 605310891 385459536 611684190 347074480 783413358 873449770 733719469 380846182 962959464 643625786 676294987 500352064 739510771 808076004 551650390 455297049 440604818 851054896 839295232 504907255 887438748 303051084 390442391 289263290 622540721 260333337 953005725 304518420 174350561 182607410 160241100 137100950 214678938 797284855 741193365 578688307 531723301 350935204 823642501 248879904 824050742 301633088 337214556 669325357 577765795 247147002 542095902 647779426 323118265 723511244 582651565 479675882 668366617 506822770 335072973 705249983 331378841 388655231 62203563 378637580 446022945 770512079 155100895 218861310 212792478 241410654 384579449 507299844 162259971 91842982 537501280 802043161 375995478 442770590 369214503 150713225 505895628 873244292 644721967 893562022 65962982 617855323 585235030 817077239 527400796 477058896 40108916 162268567 927151013 847675689 894372350 872207176 155470321 916724977 10687705 44576129 479309476 597811435 518529885 339324247 338817924 818293407 870841605 531804755 265212121 732560531 296788527 311169512 341502632 592972593 589464431 588217865 472645696 845258562 408823269 601310560 293610385 187805627 693723415 365965471 687598475 625243886 483587176 910306852 707245044 957007478 270223546 817028546 567766233 999076313 633025006 878026164 416897697 310898360 858619253 754903704 386424696 917853978 709209295 900114894 668589990 735275934 71229166 193630346 921131644 853822250 607019811 970656929 367454067 732200726 455342651 592843164 939158934 681639649 929692204 554517736 930711591 434720870 182601642 701755418 507449684 93733060 6610442 92392179 41288910 280939558 581935155 798183999 438359691 641030280 639694894 562184514 64462591 588653930 337769600 280191838 721783428 626765200 954423885 315732144 255820832 619454039 854767113 732819728 456587011 816297223 243797965 109827863 148873229 632411356 830129611 655403198 957589488 603778924 684556965 499586476 91936350 989946294 691816608 636634877 282775577 672505152 777305328 904958434 513130513 375690890 274917394 147668162 502961411 866158154 569185334 509724117 486647078 750716869 986350587 294776382 85452948 260303590 153769180 910470776 790577198 22475767 619180783 436848586 78949486 584268617 733105221 332550779 901861461 542451024 63198717 523961141 329263377 443031163 150524938 886484020 368990222 618873539 470798471 707489832 332904402 429748711 238373919 426707260 780580562 308744267 304181930 254383093 681846093 768019412 343717449 895175781 500540402 253515771 940875562 541051899 166174630 13285623 649447910 393357785 189584539 351523247 873404515 579516270 53675172 366201411 162333920 141936539 990390059 339732887 944224952 727236109 208132698 450162467 40520425 91400188 871117755 296752896 50741308 373128424 527944576 201146840 17836944 918092868 756430773 934592546 168548512 264183726 812918999 41336640 60041734 123418980 183320262 608496057 305080183 237579521 418567759 114766840 795085469 916179812 103746514 953745255 529473206 430475272 386829198 299685657 96852110 373997539 898468338 468329891 360539280 699682729 906940594 455494931 875583543 174160157 671418108 359159110 190333620 898580515 663133407 929465815 101278965 931674721 49645078 995099279 258060388 968978272 216251445 192773834 164016043 188644912 362324465 516542978 479812185 312162073 611269670 487901488 49147171 594331226 757183895 605121821 141697905 10733938 286151681 541525596 163503773 344801385 715593471 646242991 610632315 371428944 20322519 123706011 113098961 552803377 786170009 830597259 164222756 458313964 375416799 402512821 660433447 79059062 740936382 32193277 802675091 806068703 32167296 139855262 443858196 407576819 636918893 862696564 243431515 104105898 643533214 626855480 265231883 681960670 786724453 99112090 261138507 856805901 565284767 696211882 758459177 712349916 929520905 953328099 746377695 801135406 340251530 984079707 934009430 13673918 940069060 45365111 490820118 991668837 442395440 857103752 561821302 40367947 258758009 639072149 918807272 909539619 988776196 595963770 673247672 876875868 232344604 416249580 696426680 713727612 440657388 480428350 585162412 767198467 900772971 552530794 501841475 680519033 258321204 795485169 342449895 696093110 460139452 945162194 501797274 707110772 238906208 787002810 812100299 986716579 987066945 75945288 906670388 952227319 939816612 40555474 573254217 138283848 861521305 99884671 742587133 955326429 672890245 666123115 169395520 845119677 172233123 235829113 330933806 771584870 926317331 786006550 15415925 669791602 417111135 29063291 337515369 942020017 235675110 118920032 613997803 680025769 749451792 602203516 215314956 965504280 984706869 517144815 850036802 335345127 276318309 861355720 860185089 662602530 579387988 700781688 726460200 546506525 466796597 534008462 249996229 670970620 890664928 728346196 41956220 639409242 913609912 977251609 501688167 825606306 822822596 37596707 787020302 396907252 149953261 940366627 477586872 575193276 935172202 88774855 115453121 815131247 283909795 388575961 491362735 890578903 693929118 850049558 710037268 785491467 301372972 228366487 917493558 620665080 54615310 964129610 455707376 379577390 662159505 404404938 57995006 66872864 430555382 759900070 444007214 222062700 200438507 821201528 990803814 543488559 807203635 834140390 843371195 123330188 1002348497 25539471 180010587 999269347 243215103 57226536 210039853 366135517 614221251 68557941 712118119 240761175 346266854 826809997 528458627 949679666 297322998 927571073 770042071 507016251 313002183 725346872 54564876 123084674 387047463 609364357 646655573 33470978 655943458 188784314 95729579 267084963 314042200 690000228 297496599 781965374 846002620 31049783 396446983 363783478 713712259 787316040 616930722 311113251 68434120 451962600 248982768 821597481 42924464 14446002 683184966 81396907 798855237 814139012 544909458 680492541 8468611 8104664 422709358 103965613 441681179 935266234 719015207 765794702 70005322 993997132 361571591 781986044 714467978 945956771 394941540 712818515 859037765 291612126 421905126 495324293 483243786 140576860 503414991 863787949 267399175 532351018 454441829 952690976 443594510 12163650 97002577 761141345 525759171 330922187 680121690 348712664 870354447 200041740 4319457 157860489 39613129 825028096 679970471 949383427 899413037 289456979 417949986 595414741 703662389 660292722 63896461 769765548 472170972 556243651 379666739 807295254 162561411 769749190 48533585 128324348 891549237 594428864 388153369 306067418 458680664 146121300 534757222 876651164 905648974 838484143 805592636 888999789 801510140 785186341 80912701 972042106 113366109 508901018 468182108 779655934 967935925 99082966 935987402 919283767 908785615 826596014 413190075 64911508 188802672 242574951 154132409 667333913 822308157 480218058 646642606 202991706 266808539 744288347 375852394 293531748 473401542 925228350 430690217 404958801 988418112 588919881 912338649 926350950 106460698 112174491 974094972 278925337 176015400 326829767 584455185 798834249 336658767 69260960 315660145 82066718 113521319 62870706 673582791 136509924 664573474 807130701 446549722 926790656 606913568 362350605 970727496 837942738 373696029 770140653 628361311 294233468 563498212 555727535 145896108 840548107 294978844 642465109 681154823 783741175 357109639 18579742 390298451 62700882 512150610 105713740 91631796 307796150 972394138 825148285 446388783 364166889 115212152 889448494 838110013 558507628 401632218 466646646 839760512 826631894 93482083 791882217 929310576 301209520 754407435 532213425 704561327 570966729 295630915 442457508 114313063 399800576 875028790 802063935 352747029 273471342 788617377 431715285 788135513 697673741 338232823 527949421 123337663 951018259 614541538 2081697 938315641 971140674 604407901 861217097 463579925 408423401 105311680 475525080 87839743 112054804 348133296 208703143 476222134 138477799 631879123 730291574 517050494 872102462 706076922 970487754 218023428 382140964 378945556 755205298 275714300 76947398 413322316 293734816 845340202 452906692 558828238 506399097 224543 61178109 73941095 644680045 883651674 201825715 526296315 264855779 145820121 271199101 140263279 420738160 482043723 167882008 30321575 627904929 27331728 825190836 578280400 872151282 979016145 108099584 424014450 760988820 965340330 521118259 731969877 334325672 66928189 629297030 381471149 630217811 994630668 657384707 166383773 955519468 568532273 851446821 442327834 456690673 293179438 698850409 831978349 989506645 474644449 207482137 23731135 364329106 929621341 635932654 682738193 500269178 826673822 898088925 856483263 306623494 795728780 852319397 273916131 740907813 201060458 638184937 3637957 693215875 156993376 441046100 472311278 260231897 135144384 361637861 257079964 605774275 241313179 78771678 109713102 738672313 883693160 217367426 296619475 591163594 172951114 939206440 149197597 76243738 326711998 308713578 305641111 854135715 579892511 987874901 997933247 665911111 918484585 821554180 764886758 588938161 250078689 246051621 289896472 842617978 192699316 113555264 136065325 643811487 724305656 254712739 356570104 329433312 973307603 344649801 924781391 806334050 644402814 602067025 996462975 827492277 996625398 294673219 427334089 37796536 649103117 838569386 436813077 600527259 719699762 546802366 309299039 570578414 399327079 666511957 428581867 372574092 23284878 127248043 132957619 443695803 156032133 703416307 567455752 173650183 312794555 9338126 29577293 282651668 585745726 40434797 657650010 971638475 640287360 472109819 889190975 67708333 155141951 742750595 901806484 844412711 967778250 583285198 495903293 431033975 956394370 436459257 578130948 601382966 269467275 404390188 581746899 563687593 779621668 743722490 525924373 619045024 844371966 377885344 139191711 356102724 631890720 412732023 968105790 295100471 294070949 356485187 992421179 176840668 108503279 354695837 697243542 804632006 648526600 912524955 531699485 584915797 560863018 985085975 229698123 776645051 487251706 87477432 906882019 462171146 634045997 862642430 413324445 808002993 458199235 801341246 53881560 245720085 831029522 922572108 155101737 237691284 164198307 164214888 92442605 595959479 155543133 146528447 23924772 703006417 196130939 213348861 321926061 205533468 328349684 521751527 937355110 31883719 936225495 10611396 474137765 541952438 192464112 68667118 279905876 751221942 380948313 401637761 793792301 197283646 755422800 815313072 452174919 535887326 248014846 412276728 685799670 180939076 993382186 739387928 643447312 399249063 314767750 337473283 389000187 437842191 786983332 180148101 503145566 383144311 323523756 331299001 424506548 283525479 55570801 706355615 423285093 207097076 40793058 860855020 234646686 16457819 912154415 765741833 464363000 373596321 379945946 485531957 904330374 695672031 38053957 66997048 483203208 142219345 201624260 975588862 366890397 903769946 420016698 981083491 210090173 324185093 822437620 774410488 328971407 814693614 4465961 405116089 783772872 419821651 341560156 981749039 561794068 679979709 608097416 164297260 94108361 480963450 806967583 313243854 938605808 308236729 376544096 73983361 64423148 241969191 743437172 616664335 297599647 406910047 785248140 961896330 341012885 700605827 850920196 571487449 805469457 847374298 463863140 941777503 151533063 59252481 512886967 273820984 992578073 740064204 898790511 949517929 925871733 306399884 163655655 734556873 980639357 150449486 460498238 120973866 976508748 925801170 59479776 458989765 463574453 668249326 55030392 956379544 340806074 165195566 863655025 165835004 32454542 928567805 220563898 618832261 473890112 492804100 116009042 503398434 858527241 168879860 692959831 956987748 655954227 450077955 169039578 770103790 855547452 625898294 831073078 785107556 925161405 977861529 473709973 294568329 513864723 699135284 342999768 625592185 305643108 909656717 934810516 486387282 948006542 174555189 607319841 802030778 161920184 840144574 89690978 477627145 770111622 233774486 491660032 709313685 411107601 655471668 42162943 253259294 49602116 201012425 266230383 142221298 528151330 416455642 546687216 323415971 706669836 605888693 5061194 409909727 751994641 925458216 982273939 21476747 928328006 739229270 171783729 269324992 519374185 222576885 14105766 935804079 730683497 286719825 691894492 940945136 97228564 503384120 962361124 997866455 205592987 437766068 469251592 409076735 781575328 195660393 887943382 263309392 798222939 484910569 61977445 295638749 27724251 264493087 376828481 118345494 153432821 968336695 920369246 645045144 704563190 681313342 838036254 377222115 739129060 568958824 387187531 645336937 760490291 166696125 733410670 619474103 273929255 819150955 758530362 109883749 943629283 376664454 623202374 527074070 69668877 750342787 584829378 479670171 758969260 456180349 935490596 704267026 33203614 396976385 10571400 82744759 390189081 795885209 50297949 163530554 100025622 15840655 450314473 285887850 845226462 994619004 637650722 538891704 901341825 645342590 222475006 220264137 960168812 505624573 523758514 662033255 284167250 812580717 848113226 416988079 976024175 660658343 886253645 417487449 357156159 869699137 123111392 713002425 508003509 344769228 845876214 527162784 21649966 250820604 769002431 999974542 309783026 35781854 948602137 531848607 693041617 91399726 994294243 673089800 603933770 813428332 321256490 357954889 154246909 374858707 690156580 10016782 77005740 569539410 915988753 26530474 486921519 661120508 886107065 329689024 296681155 328454010 826858320 828415543 788836311 82258895 936119731 683276745 1001303735 96221869 848681129 311273390 876116027 109163086 812816701 431760112 108219441 158156887 170179993 949750650 855730672 837711033 109735979 109640307 57558493 803093211 676892560 619692549 553835096 177287173 151677984 100187600 330570629 804000458 704790607 481287372 434273734 553484375 891570779 155570905 346568826 565837643 273339681 570119253 229965184 386162252 619773796 387095519 69632414 368819430 383895498 634895321 654395551 437065711 85688786 82520455 480470426 569252224 726193560 851582756 661222425 582938519 382858579 693215310 898106165 221862916 108283851 328318226 183746502 926858228 875180552 606780290 344302219 64213461 513933314 467106307 59874989 938890197 753395385 476129449 960467027 817866222 642316830 991722884 168424616 300271071 610567720 284057086 936312129 509781546 374265274 950000016 973609228 856755073 251050469 922841158 811778112 907989411 521112257 359771306 82554615 614680946 906078436 165702774 741928396 944472731 700806309 520545259 851255649 386329902 861976102 206215692 862903580 879010048 77926563 520801061 280968036 889116219 776349131 492000854 166100709 262899148 994574462 935155600 750720688 413981837 589238860 263842125 869513362 253411256 883455899 668393169 158173400 457562876 939470886 607273821 726724705 978482801 438489130 181881197 116250233 750457478 632191070 538785909 203751931 670349367 661918824 466657928 633496699 370788848 833541651 264705571 314535182 165970766 21495496 889827061 84690753 317822254 300536601 375972304 811939821 453840856 83770790 242704751 673379879 968857741 754625677 481111807 677648570 794538480 75364142 655170137 799932089 183738768 91180720 257412732 705572401 315958908 597094813 258196831 374086252 667808497 163544767 846178561 943401421 667090476 72188018 113030179 467049154 777330413 816082716 883171636 797471895 597346014 414901216 793771699 42974394 28466140 159407048 972749071 425403059 508132134 894412840 152234441 150211845 18434150 367783750 361391438 472062170 578771850 346627959 121702557 912798649 86336584 797826921 414546315 921177570 448395206 177698310 668726379 66488633 346640904 931057973 584584167 451263067 896409845 690619395 275664566 984266874 542670003 319732626 788811147 378349653 931534255 614448306 806450607 650076823 41636921 75486465 812461036 759731256 550658100 16187720 187359748 45623135 947168171 105967769 455211553 736181746 58520295 490454313 768764988 496557499 229052707 419741423 187601938 85602831 125864502 670254130 74290245 204004822 119354449 859226040 7894738 813365004 629453693 752465717 772806758 726098812 673035695 547247782 899716366 405531015 263140995 172959218 841573230 601283448 446476875 818212130 659806523 27007815 836231674 814755062 798712112 240060324 612710145 592588859 726585223 743348085 924166435 401925183 668525754 397008486 64618720 493311721 327345540 193897014 685923384 537343306 364413365 300148129 94127467 355796431 307361710 269144215 922956571 477150615 654654651 636861924 407353929 541685221 831516526 350921999 186617743 200815656 475647891 819620551 13053534 514402706 550224042 778919955 276412505 88331831 478162230 841877055 544069096 280804451 88608175 917733090 852015427 540366174 483727438 96940732 677327114 100282907 594209519 32603599 323838454 680742583 750868627 214592860 181337997 393324213 304223895 177912185 124421576 540873677 745154750 926782948 692735512 883698403 849654021 921246001 1001272585 915319595 977369022 857215577 736691847 249414599 690901281 967338219 215195965 15773856 313462421 339568460 988629991 36326344 570555438 921878086 640942365 556680321 549151883 294041508 997478231 821469459 299240041 455132498 683532025 13657806 275987470 406228813 221292632 495787797 904744008 319990963 271175526 645850894 785428476 714576166 492559566 777422995 587133327 995708637 184373328 465064841 115775555 791210424 80094046 652544070 328104946 606208657 749634314 734855309 25966588 165002573 452698268 810092876 711046796 300866648 767839837 642919777 53563904 114957546 421095897 941243495 756413231 303145689 329600209 905752895 53574994 894047626 207759259 975721426 585135005 204028602 315872435 951391850 204320383 170337854 742973848 910655562 875616219 656383495 307519277 20760734 176873526 811224830 173636514 762433786 382383520 350405045 665201442 482616395 928345305 939273605 192992763 578797132 108601285 371397901 885413793 332154248 534536138 777783953 132133850 902852365 958768027 447289713 291935583 690701426 111197525 403795631 383242015 401392309 583410068 728135205 665882866 80043902 904344951 646743824 758705679 702637318 790218646 325906758 365211564 76513192 157593571 267092618 382375130 966122731 674262532 28405815 137605265 742192469 365666952 345799743 645915320 612362908 352782016 623910006 23316546 620001056 908830625 305304903 802218484 781250573 936681354 122431796 38040727 935979565 699905979 268567875 275796793 972182867 862820181 737871874 785989299 730911846 401974914 615844929 207461760 50896425 947646571 575157740 184813089 442752554 272986064 463150415 243528715 112501711 931809264 319799673 131512533 845640003 957990942 909889227 302091049 483288381 881305334 517070900 383351166 425315305 597446441 735483305 613754612 957461142 471743715 745828928 990045206 911847210 4393351 823707396 242298427 145792244 258788235 376401332 969593059 35453206 789622609 466965485 329203129 852551591 595136946 444106917 593075814 43984588 154474655 931286965 295728218 987989918 869172 260686040 478111684 16714306 314141063 56120682 362176646 870097242 929152014 63800989 344477924 278574239 639267014 809156528 783862192 4570403 762779841 7700725 297379450 147630234 612691665 891732205 209490066 129874889 269424266 547770498 54452144 498415353 545054467 536780464 922139046 86572631 388885167 557458627 758693884 83550240 898121482 45043145 610193290 474551519 23047347 90203271 606471792 972234003 365506009 921182613 374498386 447425809 407786662 510740197 719627843 818247938 160060974 299829671 672098172 878783196 658056683 569733914 25500280 866859662 529841750 600882135 75148825 303539268 561089663 792533406 183701372 747364380 352717809 704187838 322307074 668716584 410013741 433843358 324804447 259293410 658929385 557374662 71593028 642384720 142020457 147364020 296128068 852131570 694861703 770710029 418881788 173991032 105262655 994064880 761911025 323260155 490530923 293595423 631380547 100795318 266131529 272905240 589211061 654457367 461607347 692521119 743046743 405981430 28324053 688809990 332635705 543181438 404272787 644072328 898754054 646976291 677281821 137770120 470472592 812054708 266083731 234916657 630265596 120575003 525918454 661008989 80113925 60704690 921283281 725325909 419074585 947697895 172565295 624111334 816257530 267487046 214869275 820304461 795249625 93212521 758634746 213215407 87670064 228931081 182597663 620631149 231736694 129423255 94716738 587941830 296406141 800502885 828846066 19600722 592082054 855401786 206655683 517815769 927311387 307593777 832585953 665018484 906399297 788637376 641971238 942677119 228496366 599471196 681981830 291618487 487153299 86853204 562139150 787530692 843236753 996406914 179156905 88308350 915512891 326956426 381988669 47594731 88410973 378588502 14148562 619791821 181495655 99277162 109586813 352431856 217134912 962760536 333838699 757593758 382649822 866597096 728322021 334002202 877435133 967466366 45303813 990172460 92140451 50200202 220495687 415867628 750815610 502750822 192626080 444044968 322958660 29412626 131537503 282911624 57144911 356104672 328018934 959320230 151464493 954710856 805220893 980330579 91065441 162096628 715942392 905103045 511802668 222435149 203448919 747336722 666534903 606874263 862380601 414970906 132229594 36944380 665076447 60060307 369490121 775062602 769307483 686852786 512599567 103640723 844550448 879617852 445279179 832746178 399216434 479647019 258963049 195734631 250293578 90187646 202736341 700313383 137215255 64104017 938420205 192692358 539944523 203946021 705031135 976017384 118067939 643547765 827994116 754659572 540516210 18677880 896423330 355292591 457831362 982422722 905865226 855231425 260013801 951824927 988445041 855204896 245290047 561997719 859717467 137581734 865373500 337583064 979647423 306011563 915664136 951180007 761659620 503282150 137327544 367192914 460346370 714586064 779141161 562499809 923624162 622231234 59855624 955366549 13908903 815620938 32750980 211238475 1002242231 245381026 559696042 154903647 997242844 165623753 226013066 161568812 572943241 83799579 681771365 165702386 603758631 278789261 76347151 842394459 290830111 175383672 167946139 336226574 566964555 930291945 315335637 376761214 391989947 23376180 250828236 79594064 147298030 649161650 909370187 277446952 609380162 318242928 613748910 415775630 799183140 279176107 507427589 121071538 741937236 836110547 101430499 874771580 814556036 859792431 477926782 871718746 245653315 564475862 738024860 663589492 656573240 716110414 99708136 189116147 190650317 256929416 104673968 523542254 423620647 992547977 187656184 614989291 322090404 411274830 861314200 482330235 746420725 120974494 889635846 99185340 894682312 940660406 839653540 886129543 484365642 293715956 699712324 986247325 122886445 543076587 783356856 189041471 915724320 956170574 13683793 203565718 634817228 831186308 432543961 609340419 869874628 780631804 21844185 901554759 507893472 471849553 391315807 439913586 553623400 823065061 320995190 804438868 641492009 318075853 652737770 233217017 193302426 810074016 837414053 887653344 429682471 502733462 902448169 790089955 862172992 937887882 982756612 101518556 354999053 389178225 679270627 384768763 334661450 957174642 903539388 501223664 959518596 429597201 9298910 933725175 703257499 370392954 412432690 93265157 59234534 896687351 372182156 651207989 319598608 407918299 31291733 981593861 291742540 957141165 871771388 957739376 879843446 106381276 218817368 811574596 615906631 71923326 160185230 170973478 785157456 125869788 849019078 849456196 104421853 912132171 473451398 818503720 901500829 231824366 25066907 177487204 807612396 839731075 26226626 906293466 360260044 641850292 192490316 85520393 850323006 449674765 836364515 834783603 604193630 858426868 388493843 141695726 488051179 369251779 119870072 66450980 62228947 221724072 771972236 634565200 971678908 980322456 411190683 594262425 726903985 696331932 87183844 22073304 349766135 49046460 409411205 240280659 924963653 477889579 567025806 807258521 825825546 434080578 627799476 824078565 314185357 198247957 814339242 90085767 764554433 345722085 49194330 512565843 792826384 732094558 943419172 941448642 960066214 910226833 633431770 763452323 138269203 877467718 286694011 173409503 252395170 896803191 957770294 384418518 695326918 243277984 377324252 320517584 21167269 106310787 543777768 680826493 652015223 308269827 820001310 742584847 899529695 297519524 123710675 589682329 842780274 37616261 931650180 846957945 70383759 735578306 112029257 5414817 871508176 155993287 132780799 542227932 507566082 402963985 707361898 909934840 220421931 544362451 296153846 777865802 144079305 385548676 785668034 40611163 946149500 937669472 537277238 929699213 496735956 311685868 166180388 56864075 132730064 386436988 62814981 238552967 742787151 39880732 68238059 103901966 873640426 481376410 846569951 723928547 680668148 495288534 518951043 378067421 923896748 885424945 181314983 874742745 28471010 949754737 789306933 790524401 195201270 943618637 471081999 437441060 201483131 162426931 677187082 466759852 618151245 585775364 260778228 419157455 629821403 442871307 416420934 789281696 973336676 244504461 3085100 546303485 553008477 599118622 289510869 434820609 217919550 790520012 796836372 576531349 521616398 157274578 187832437 893989429 971577522 98228232 716661178 418489616 342636749 98405631 810498450 959868332 568273226 628938477 662302724 710549358 693588875 278041260 766898201 460411301 76166436 329190149 990867439 434341676 229252325 157005052 213008862 720100777 463915182 838855200 811625830 445203804 838454669 226133849 944140649 536704991 195507840 634518706 866900988 222878488 381297410 499181261 501079702 665872180 81960086 224800718 902451282 322426330 317099077 520232228 629417162 331451760 222963221 670996347 478370087 171720905 455639151 846737542 504463579 828448722 405518504 686287078 254789159 334265631 321478558 847923671 751085964 187519312 584954526 506024312 317468276 449046544 10497251 143016123 41372254 152224641 116943859 262296672 764396966 957423730 963800970 814391562 373422344 783856097 990482440 867115092 21231582 367138390 322968913 63552130 193103206 528287899 715939671 333502505 615565098 129596331 968303599 166887279 299673704 150043034 786173421 688451758 115718466 79482676 507337558 71904651 16942627 925797238 853732595 242999273 633495551 534834182 88052807 465762427 943826964 519262828 267674952 246122928 469088094 823304734 776594690 535978125 339887082 498475119 776250833 377600632 815051670 627945517 676638668 452177132 602321163 453963759 554173661 9894922 624073920 224890612 47429734 161676882 158358979 396193818 837048276 973817626 160341768 949196690 734188319 499394530 11915153 446557936 743184280 421147015 994398339 976526753 23482018 204548140 195640131 839170302 632909846 1303608 176355064 917097572 668218377 723989044 736266424 594081188 113550611 804577701 468273929 582987454 42531635 194342347 314631975 374251772 759573457 956934455 546121081 147634169 295028820 368384961 78056131 906078942 68938157 163781220 160254655 837363442 961396329 327255208 317315245 858096811 895511608 366530873 287357539 346258549 589261747 799270235 624219347 702019433 248780835 279282866 948228659 326744020 515809418 904766938 610638870 235658346 786977195 363263762 71846154 78888143 1002075367 556112534 345646900 5317904 823629777 678666020 352100352 871047200 261352699 858259233 178048860 39972645 525222301 108066216 938832799 895503687 210616968 948555060 337450351 839784301 825707781 722138809 517869615 610172542 719236029 889919602 927819648 673760036 746493595 520688436 874229828 977143530 284420081 378824936 49898357 251915702 895615029 1045012 736222998 203369526 795459584 111375779 686238683 133802731 45992252 75903020 590658287 293233894 681192179 47290214 326318104 165358628 38370097 353210945 363523482 519101573 610894589 863007011 501639807 891522506 17863879 686987207 954586441 156558962 249896305 815199818 894064789 473261084 456624426 182411523 950849165 814184179 879651915 730172082 412420743 753226247 613754625 64386955 393250611 41588801 165593575 338643630 912406288 432349424 363826923 927959643 275038066 178537353 259098849 199193750 585257046 167598171 977219380 436743044 137771204 844310043 653695206 988742161 776259972 848429680 468895173 553622515 499068237 901729030 929793459 492702444 104516798 595432389 994117812 391194976 484569941 596329038 769614331 531211257 810216613 36015259 201345169 612401019 237141843 185731625 309002519 209439996 166042692 433461603 894797343 898907589 138045998 183442341 562849209 965634460 42314541 927991819 149366881 455562269 523723703 1849390 155234558 275275382 640446716 536530588 564121826 661148329 846881808 948504285 750704369 860170505 545605789 60195275 321550759 884087769 353815488 848255545 992307252 477328504 249073772 109784747 19520968 729408624 364301077 148322199 500928249 71813112 911152815 557609271 358734998 749227698 162468003 604213852 373455955 632102308 240643025 972159876 990687067 615106794 217066756 583855863 970081990 507789471 971723005 987814183 237916512 427931045 162833927 670874042 391828259 750831913 476758592 145996243 632140308 736770742 35601598 483297702 393936715 404589320 930031372 106477462 51026090 709913711 116638134 976171351 688548839 776218474 601224825 797897040 624503028 816860743 835787431 175874670 544211656 299190549 909933463 660659787 979565250 432723614 857808764 821357764 367729337 839366578 218348786 725554635 426983475 315456315 884354590 320751030 203129732 88129448 828553158 434114373 949866321 844543816 209378702 204714041 468967897 154641791 343110397 867469906 509482436 80486799 729848881 578618969 244940899 595664888 1001290103 956120247 427607587 44333539 329068893 272682853 668472497 714449638 676493808 186354866 595377094 602554527 84305739 540026849 448380293 388525361 917150121 365677761 379513147 155240885 388505257 26043314 553274026 313269589 644099438 247102113 531517268 858632128 892608389 662547641 689312199 604115026 925487933 943494132 187893401 249003915 146733861 380300048 391359848 78430795 996022511 742979229 612357828 477128974 190806297 949204764 406220019 893561423 843371547 174281930 761929341 693032690 52993154 494876706 655579925 47177616 483678668 488506271 1836558 975181832 16379630 941916928 869416100 107221211 916676573 436804947 73184804 215730219 421196427 967533533 783264265 422789520 57052720 854081245 811013904 850867470 211431587 58762034 270306234 505958291 382034956 663390700 113238275 790680796 411116699 924507157 394153888 333040867 320080469 35580782 691729484 558933483 151714981 895645438 303944692 364615706 809636606 392125715 488171391 357200619 222198466 781729410 639106905 677121539 334855072 904533262 449786663 436494597 3889500 210876559 78247021 155301703 343283360 715807073 539402641 384328525 360634683 75540514 768594854 633897446 626559478 72626507 571028187 471422134 727765285 185857880 935364318 23125932 483195080 555632077 861953020 469125482 439453080 356809661 377968264 1000483862 148632091 693707938 925833208 223106336 98830087 743242310 509945022 110581243 138266142 517588950 797218440 718118205 769907855 511645696 1001885681 315995896 917251892 446183408 628287118 336056609 831960226 789740083 651375513 105065623 77306802 464476838 194200667 462599701 757929527 987704669 716740304 415993185 176607347 85616687 884317907 606699099 335509501 248128184 900466036 847612719 997486118 182868266 29372414 799660014 366047547 45359897 637002113 340428299 209772181 805252731 89715275 464971215 298602482 535382151 666277689 778400179 805986002 226387186 580457875 356840656 359480190 775427121 466386499 749799382 21648458 523412037 902853720 748186608 685274969 738967853 179711403 807171464 356200267 182308663 202160555 503519658 886131247 936497439 882059374 823508224 166001856 700397735 748816379 109675584 414672398 915127781 470090549 943222270 710450249 34601215 731181211 457322583 222380490 703591102 270995932 357994868 912925826 522773829 449491822 462390000 344037866 859958718 525018811 958101173 810296410 346549693 697744549 394082799 820747479 45255486 607325973 125297277 445291430 93809494 465349879 305594928 409265128 518714053 3003572 384126940 388003900 61284998 616695650 634337547 641848323 80050527 630474233 633078332 212944985 602504928 259229222 630096982 820667017 783513374 687283066 850992370 619524226 471967987 283384760 265459447 36048585 150125557 841436847 840299228 312089933 941424349 717314259 296192992 731035121 385083215 237006368 742191684 561466844 73190930 378076888 342774301 637812821 187719906 392157138 775966273 329075365 200311073 829192990 451792284 402266131 762172842 588215638 389665198 290100948 268378868 400639386 271933004 21930921 735293650 74500277 338393955 232145162 245887778 290451417 559359303 610396122 26544547 71039345 641564857 448364427 605941480 93846568 670075583 391131594 903507930 381006714 129709866 871576780 129540886 786669748 765153061 346136001 100309260 726219344 531881572 769696073 709478642 740874209 826612906 885151196 730506421 129336565 696608339 547208300 667249776 922603138 115363668 514445182 242093540 726799818 841321627 602496392 83942233 1000654522 589576835 763386985 728644385 9426635 702970385 319303916 733231217 801850478 33103850 472364487 644621992 596291989 14124805 378137804 317084444 735134041 268636785 566132865 573872121 804757093 967442536 1001096001 210040312 751925410 939391091 300408709 862238634 558471629 535805396 465246590 732115237 796987954 91939764 128941049 989201753 77677645 920192582 263033876 89431717 568558461 816114131 575234669 203645641 370072640 344788027 235603890 51896483 644654933 208702185 404330067 76648645 360874738 477415538 558645635 241627763 205127178 254561408 684356522 908844638 799105710 989079283 649579199 207760988 965781943 902445787 55570225 909016866 130284018 829430388 184071788 847314378 730313665 235369150 793153971 826589780 361088837 87809388 523212793 339626934 350407528 874643327 27772359 355258527 206417417 844090898 316868678 643777302 110832588 72724227 337618985 305515175 412806214 8013793 721010839 575598220 554809858 596083651 139482078 626880959 294319138 335511671 553374313 198406104 126974477 638838669 744153995 633410653 75795716 699405069 388636514 952951012 422351639 614078810 863426906 745959253 753470795 41499081 333386186 746022308 469305013 657631820 324096183 978377242 931452973 820688080 452680407 979838427 615417799 745050470 895154749 133121741 519174558 547794511 750484265 345701364 726851554 176727468 704052091 253781408 184711977 112763133 804655676 997869740 975187734 990526862 670610848 621174092 798230748 28036102 476935351 846386664 122826941 931004664 713005602 403158528 547187444 412048516 425953536 691280874 623456136 809786393 129597123 542982867 652039717 853886137 399558628 17351266 459567210 506137793 251913885 933107420 839612175 590933351 818001429 246770920 628871630 225459851 500086819 53535923 728007574 267930624 75328902 629470105 911223940 274172540 810953341 804398313 262780930 279778887 945945226 895959725 255491482 390151571 895844856 106601662 998083730 329041114 449886075 431936709 671119790 291043053 341435459 868674447 459483912 849156926 440984626 894894086 838861292 787880147 510042495 242832721 837710112 441224679 235992671 531110866 787605077 817979750 12828236 229985315 692215120 767119093 45323762 169223238 370483259 262284602 581789924 811058594 266492435 800936280 908134567 815237379 397681964 808772937 671131823 236387273 110185029 528686145 834263868 215499117 599063783 843035056 896396931 606098508 66709194 441156108 223884824 264093981 883830085 198052985 582008453 145418725 553597797 970232671 432651284 440830987 451523968 999494907 81472305 608771453 12569797 972548890 60075243 23676084 755026342 192292138 899406314 982911297 22286855 319088465 731049842 112470088 800512248 293358505 613309309 966200344 921657311 475737608 782132335 414151516 620311042 685464791 450604263 535022896 232173965 819269259 825302160 950660634 731414882 455998352 158028001 321842209 288372586 774994407 486240663 847656347 905779641 782957486 743551905 43984447 621048811 251065584 193025311 30685069 528233613 694891985 258594570 724378327 479735065 423630297 248099165 503783723 280525113 448309122 52025581 593208054 193567623 607417378 627062462 660839811 774862196 983936033 827105931 721392535 336972068 534309199 462403053 167165360 316207370 503032278 84335421 915748577 328134506 941739904 197190905 2216991 569137093 267408541 57388168 787726896 999691275 700145461 289468731 659665549 1001013077 721775720 546437090 836127693 290156447 588154553 717605398 411787936 916478699 785269778 7702121 823866521 763215490 563784141 595395125 952995620 811345382 127773264 256534105 57023808 190149730 268636791 67622103 442802537 535975149 870181607 615165356 886137644 522139997 609223434 767027440 208761851 61809723 71867484 127270490 745684550 396005112 78019189 137211739 669523250 714425226 417388977 138596442 337781681 847519369 673999424 366637307 146291948 328385129 733635679 146617361 623696536 594567781 705809174 1001086159 540788544 19298910 601596359 539243793 874242111 330505239 438108747 118850292 889068372 676663584 108998977 179700841 527212092 66721844 210106367 350540196 66410402 956829859 858865863 954178010 365944489 186912071 697844777 614259780 583324110 20033482 845278618 866657694 303081348 267705443 437896431 666051380 148566356 543740914 995111604 412747914 237893264 471854586 630993973 420963756 640803765 472131113 39035351 776769169 191546998 216166244 985561344 439587840 829270304 200118849 598680955 919061097 159591849 521617436 120370769 625860712 846013187 712056510 536742375 896365348 533512254 619097685 987990216 184378387 230421809 867813575 667591689 594759915 485901240 12247903 437532576 143512419 338916810 498962613 682417730 354381292 70139841 283069511 659611512 592765220 640549885 998777936 247786537 35024274 339158373 31832468 150008187 118000112 248519498 446707697 883930962 665290614 46960221 519281100 683863125 772481514 890884957 710984111 957102959 710989394 737611947 123445315 525389963 740387788 465306028 754022896 805672641 351523504 349353028 572616936 221731995 717308581 952456911 200847540 314907485 648181344 589994599 759202239 12929631 96952399 687368060 354405387 888623920 217827888 617239536 990294222 255585063 23902069 795814484 680189626 680345676 568924940 55311927 658610596 898947480 79318438 206423597 967609801 584238390 386032995 673344003 322916830 777427215 966196695 748921524 11295253 185235930 650021938 486079456 950579278 699289452 450267641 699811563 785139849 836208682 416625051 870081628 19132522 293956421 727388102 748796587 283065632 331430124 639567647 481498930 388994650 176524886 440708583 541323095 303795418 162396450 125988175 717968098 743217591 29430503 55740155 409240257 638485758 390124368 998999581 714275553 861184200 414155187 69672017 299980539 396696528 106356558 328673130 784784460 232142319 762512674 681199023 111557775 687163009 423254216 571453115 723667530 490402454 502303180 774546509 627390169 137341359 841578763 306409837 48549019 556798565 542534594 617057842 202356520 49124551 522929770 115722908 934163172 896597524 946340345 830923832 159716756 266907218 96896817 756962129 54234701 863208171 384784906 482916564 661590905 48371997 358113019 351398745 581858336 231008190 163971871 844252257 59968422 327709721 730694944 244071558 172433359 99928554 449102757 966381664 344950255 400050362 695122760 360623285 33157439 934743550 591252280 743764163 12238048 957953514 232040381 228848251 872853281 799881348 774527033 315217059 602868303 362229856 6484712 976227238 127737619 269614727 371098041 13066164 138065479 530836842 443966472 269955434 402739071 627038912 544584196 683350479 82666241 281483694 946166587 486768132 174113120 594634544 429161455 889495881 486440040 469406250 581735173 800740776 103433982 151640680 370562839 862968397 453001952 753786828 804192566 573914962 962575217 352007841 897911282 152371622 991910266 672829159 337020739 200351429 945100195 160965027 37559870 182283953 80556213 615621017 545723532 62833522 50986506 486129575 412479256 558765886 263256881 808044902 448051784 104352813 744337274 369782028 141785733 929381499 973729490 270046786 754690797 29104365 984344062 65059105 267695933 508667808 236440741 732419875 595080730 42938680 922338544 616309074 924564636 811706974 582465405 473133246 885478435 105753794 97781340 330174051 892536394 261677117 533891055 824015612 910351779 600715840 864715076 938623977 643693908 945355790 773282397 590777249 568645346 453960871 944205101 942289869 262952540 814551884 90182967 854198450 965658778 173950721 351500769 823975786 83108619 158000150 345757305 934659455 173095703 580299560 588066201 127769951 296527381 315299820 134087103 524357159 586853679 678305042 939610930 57801832 862948111 188849974 141149568 735580330 992081990 691651579 5114285 313580585 888024718 377423291 873389646 860637251 704716549 263736230 825233346 812632425 265292444 530509352 438960547 334864598 455345049 967514797 911771917 897468944 862363715 815093375 565894872 534559656 971511414 541968679 594064931 296494360 842369139 999328427 287966061 165003014 865940176 621368836 442848662 704335041 207722666 500760160 590018686 97058053 595576532 519210500 727823497 978174368 375273217 304707930 456271640 641927089 818611820 598271245 160661421 950915146 549108257 708722115 296502762 275927778 533104012 225081782 798693288 229722438 609826955 639138308 97750256 752000350 229335724 561899437 828522165 670376188 25296013 799767845 84792650 997690012 230205914 466992155 306400949 395161030 762486422 83050211 492893910 373475155 653782826 830157092 207225198 450803354 357581161 722454009 808062127 666136432 547666736 661363171 14678164 635114041 878336238 92144864 25852972 632955324 507708441 93438160 255069021 456278886 786027086 881002583 85751938 170040109 806722159 468667344 525103217 587437480 222902970 253840654 162508574 871400784 19399158 360380663 716175762 262045799 968555904 235761461 928786448 212448481 788265961 319789687 773881432 886383211 944062610 11380706 134407810 653054362 679829936 969470364 264680853 762863033 447269307 584827290 288393383 706317060 113378723 507451768 725573515 895986562 291317113 375908166 984142158 687939627 731885099 887977432 332544972 802466704 559236016 809210102 340097243 819133830 290080469 844263474 363387652 794427610 970049721 428223364 53554433 933250892 269311794 651803802 138314671 590596697 672503868 171232677 922016112 571931087 747369657 135195697 88646378 906866534 398073004 117187854 418502859 725221722 409976705 517274024 817504823 223079847 62710861 45796250 376013629 497016117 935259290 120970372 674518106 991502463 605465715 822282397 56361105 377820535 580230785 876412613 285068816 492162151 951425884 882976471 480551173 641399389 569938543 173661533 953717014 996258091 457077379 757379220 267588207 305304239 952679835 835409299 842145312 553947039 35384241 849188921 882941408 354755167 818160363 382902022 977444758 53985738 101343949 570847098 515850317 51592860 824363150 327749758 952943722 299028012 295146175 375027037 125129007 197614869 36849262 421545772 234723156 377249771 718776298 907836116 103237645 515866027 199049188 92737393 412314060 896772423 182535166 606505702 358180631 373788213 427776224 37370370 401866930 926515463 816262153 384244999 793703891 164720301 85841025 236773228 562240106 871230713 23229559 696759745 439149160 700024690 382677118 183230495 194072005 513463562 291447571 657510243 944598135 108295582 519119255 175704345 207207328 601438593 800596531 203047760 448065583 803058030 140413047 845761176 457817012 417940474 961721946 685330184 718126952 212495691 884787525 321563030 190567495 204841659 806243946 332145227 761152050 410594922 54016938 716243184 304872675 188820933 295981304 39174071 264967009 244789334 143294009 550065053 750598637 475181533 272625811 257889138 359602253 146599684 578971435 72599965 180306834 808612610 579331875 781342699 197338303 357710436 622872207 677362239 918752851 187162588 330235588 529158806 564361015 780027927 906222928 426479317 976439392 140574777 860149918 656025733 439777133 893902651 171731036 161652915 865873827 786038841 26945467 186015100 890212990 240626814 633522778 600904373 746375032 136152382 979618057 237383959 150666457 726078272 454048673 924768876 178441336 107143138 69458136 126929743 934646961 755925888 263919731 363948331 672107697 930331422 485257645 729752038 450288389 589876000 851592570 2187443 75901939 217540263 100765583 460153331 128310142 864357313 434544731 848229508 979566477 676541424 200729779 151976467 707945181 17024857 804959743 223135999 616249916 21139110 484691906 358194612 800770784 503665310 291533491 129157657 153973230 382128457 380082932 933590914 353645579 831904955 693343515 403076210 234788294 849249494 835455847 585734150 892019318 192578050 431324936 484501089 977152678 316701516 406245088 405625408 782361734 74595431 168616683 314828292 828238266 483492175 583829481 51739490 196735712 94837094 511778422 297807531 9471676 739241046 788135612 653263287 668772918 589664842 655622584 845608333 316856455 145097871 50731444 899356132 22378990 660545393 836566603 749381569 80402758 953434315 425286130 590264060 363717265 910353514 156798607 617683150 988590618 252540892 149331894 581484525 209245996 19732780 744755981 594380023 654162326 845352714 978769770 507829666 346179960 851252418 983966809 321270618 471352561 178197582 937500110 990455813 151974528 115792734 796966925 294080446 423967884 536199672 541316775 901386593 9590941 721362411 969664530 669951002 965694678 711373383 491799278 741622299 789628856 75863692 549039508 317434438 270420543 34199293 795729145 742865024 839905460 311138332 251747715 630479661 753852610 521918472 262770820 690331985 595502348 141253026 868426106 111261297 511440768 366194929 393836323 328849294 918544708 190445425 602192094 494901327 546746626 630068392 482527608 86923491 44739440 782488374 588449046 761144324 892117968 963868646 296037631 885884038 218584428 645195775 264147154 367245547 591550323 650203351 802809249 55619779 401378991 914027137 510235594 637924329 896977868 24614795 549253028 420531705 708567123 51260576 681828335 1001801084 864120173 61598306 385101694 255252583 629304292 985838534 911568675 297288177 617874282 449379473 273957186 72418011 447415555 141047595 70672668 537928591 310284343 329997246 76485123 143993821 15011824 489616711 136424531 816968359 75954807 491834309 477184292 326669888 992173464 266847087 772803862 171660801 31526716 6971430 763984417 244017555 374946879 561853573 757888788 773114445 23988133 637971862 521823505 227537771 604367894 852847721 165091718 703876322 251926923 119413810 515528450 884108411 755766554 580238630 888080158 205565997 699424295 489711665 196691434 373414353 843124323 717409187 616946221 590835259 840804253 272990131 620111298 326672487 877254689 325439444 941455176 801361090 861288600 425042730 486577637 258948767 21511682 372705649 346545260 649801438 439512300 885734903 110522185 211648356 786049847 995595763 281964854 244617283 397498907 840636987 893442952 283249228 318348871 432406240 641274954 510177830 958922853 891402856 915503622 408809573 551580277 511514156 311941516 417256079 448719160 899070141 274534574 305327588 114251169 414367881 830186910 749979344 955823584 838411518 44010071 429904960 951625250 291665345 806386045 370395921 449596590 720446658 260047973 29212020 24484265 547205591 276466711 896377428 600676468 208787651 1000750420 327539511 502464326 453204800 44684723 411629608 153846164 314506506 815790192 548702618 801669334 921243877 253522496 194669965 108472064 433893937 396752315 88200825 423762495 404204312 634366021 52609717 359423910 1000288519 402346890 390019706 609178773 306766956 706495056 356549779 817787344 563752177 654878398 734938364 463837710 286110490 661882450 108867911 445874249 79805724 921018549 682450392 428729180 399941440 474210686 403146840 299757421 263799957 708749920 242963806 154433526 838977780 232718123 35153948 323591242 798361602 60819368 340494073 973027574 663202780 496324341 271207037 131270250 564765518 143665724 541127301 279741724 478426082 83352070 771008537 16613254 583210832 950894772 844216087 618881831 242931741 36547514 771853418 344381954 155971991 155199873 975493124 325582716 19139113 668691627 71910939 341303695 379933449 11968103 684783910 430700548 541565761 181979926 57350881 322506514 804256874 650334208 926191441 87075317 791934300 698174861 102159091 598345996 482615107 490464328 376457743 526652421 681701853 461079926 314914575 507815313 240115035 329721309 37295511 313648584 962657202 134327353 946092638 396842671 562348147 711125053 838163021 175887271 520572729 687504008 892971583 217162340 711619088 71113002 249213602 562221372 557299076 396220051 231909445 839635149 632395873 270354701 455411379 396854833 349032445 296858784 701574392 200041434 471147281 142390357 299560713 25440822 392604169 283181150 712926514 967023578 661749945 321763555 454568090 398658470 269529734 355592309 869946141 460826106 931875605 51614191 926721336 868497472 575873510 223196766 673828281 777235674 254194533 571539936 715836290 347563787 349868477 206630899 642652418 898709774 422996848 807999302 701945413 45638495 223117974 626750011 63737396 125113111 737953742 952479409 297804976 386493336 624735639 990206205 246991043 306327647 748238041 358357055 171827921 507314504 919349756 882544792 100445024 737896124 446796255 425481840 69186544 137789214 437162234 437437040 218925692 188934159 307267830 789099797 931631127 940403408 48241566 794517327 488969568 562631819 515705288 949669517 946401770 81350580 272275577 701824546 711330975 816249884 173299271 94676843 633584024 390891333 629798550 346576072 49267930 729198458 198544154 437223300 683200822 60931219 513335652 128067542 397461188 216970563 719306868 740378545 840834445 648365558 523660463 372631845 474560131 890143875 262195567 915114650 497926314 950704312 730741734 703261942 13611161 537472085 996394285 514858693 523627312 746051660 389547896 501636371 752097753 104834368 534612226 966007032 596350862 756269908 581454844 86678036 293006630 194445458 740750606 714422546 281895950 405311951 938536491 329482393 1002250426 50304979 974454896 282733122 4790929 6906743 417806259 276927156 784486819 235274862 226590727 933843004 20359062 282053593 979081201 266326706 604907635 891159168 644535396 532904627 301215979 801358687 404975205 772124100 822201029 370990885 544674121 179336592 609493678 996761952 982048313 585014569 611667298 509735573 449215030 279109679 595053034 288455847 427652521 758600736 720430572 427600090 609922004 631731785 572860034 559769842 821704121 898294069 682953617 981823177 162061242 239373902 611820704 656591204 476358830 810420907 368941840 610971303 374323153 403547930 32918351 498484767 856432466 649668852 456805105 567134830 331606274 694234160 613070069 322537321 717398016 870603624 183553031 509810845 15947474 851290684 803940749 962864570 557622160 74481699 646685960 732505893 350734104 802907750 841355343 165595011 896634129 582099261 777216714 949250570 594041779 568305842 42846489 981421257 778308584 46451843 781123583 606179916 37172366 926222617 612823786 197869688 906824514 600269253 924699418 903841820 723095206 125631659 534428519 564130659 47816534 819466205 39195812 832156505 337676981 1000973670 303635956 40707079 523046618 576477708 32494487 631097882 93718261 773744225 493905206 957010505 408428716 190508056 325705222 459509597 972195859 683046567 537709857 888388972 963761299 601268151 896475033 525862208 17605256 970838609 109793398 770286325 794796534 105958594 967822118 84349326 427357924 58724978 907643476 614214273 883967769 167533849 824080583 50318066 93400322 322906428 58777577 257970537 778002827 886447672 284549866 758911120 991842411 512941713 315951012 586256512 91602489 757392327 773975456 877326952 822772662 726764115 225079474 824110163 629961583 835008875 440999991 585582218 852739062 38141299 326648484 370898328 990621670 853691949 768414751 179495897 196808340 311165833 517276468 740908871 205289200 309269234 613676917 829092546 43774820 878750079 48440204 600674606 980141273 517951889 596368884 736255420 498577203 273017784 114792389 327205663 355546891 746575668 252628956 372947432 955034252 301224176 138523935 775417137 414785801 689931165 135325424 513613126 444596836 352637770 995935610 354930069 950239357 249127497 711970766 567992465 115307439 442362902 708225303 877654952 297746285 250529286 658374065 915358869 143450884 162460270 653560478 984217915 87599830 998558586 199517555 565063500 687879276 321820621 146789592 958271619 791831414 447115381 697777546 256506958 695031115 396080018 379914959 378636209 271220038 215957047 717806915 506216426 901782976 558220362 411748757 679543507 315632660 277556661 407890809 941592220 726911553 16808854 504652954 3500065 939007284 285290862 864891917 898864122 150980040 944745407 954594228 272736167 424369109 552164304 412107606 37657661 14794119 614968896 146623225 602622811 707684042 433086106 859710175 152227008 445837347 925107736 335091669 906890345 535845881 955345750 673526916 24740528 469504068 314313546 370127223 799003425 968856029 6091846 293640863 122102501 332338467 379666507 330246803 267084035 519859331 635536677 971031142 593151440 59111092 11146840 931087542 496074848 903370031 387912870 697147370 600474784 616429676 352189603 637727266 159322965 428001648 378052083 369744241 350137013 233510395 269448204 708597043 761715818 854335749 79414485 145862583 735922350 521167340 735008610 839586118 19992229 731611271 216513712 510007630 157221487 636335435 365657231 851734850 539945731 880363222 771753817 715606086 603601547 34758289 155889569 636608556 876844508 669538246 487831501 894890088 353176392 151082348 645890498 20811899 333338317 771558307 543751942 503886217 571330639 200820476 91475936 121866333 550951615 747392734 397103227 935212522 290575678 518039668 535411845 216249672 505142776 271316684 759352793 671711978 515482273 739438682 109651986 351971601 380147742 825460756 226449962 401788690 329015300 533777160 186248868 787706266 502561565 867137577 418215599 253492393 101933931 959360912 708003148 706490640 876993515 181198439 561573109 11410840 799799930 227713052 746687948 235158183 301910418 840842953 279510157 434414111 667688458 152702363 268808120 560373993 337734772 161683803 259193680 885485759 692568233 627740142 666469624 484901846 476952508 437051686 515012109 303007458 789864332 702140390 733056830 241270948 487811142 392816136 14677908 519810616 228017604 37593528 292829404 409210823 614181435 94213453 343385433 175133731 633354713 774815979 394969180 234837496 38426464 620959902 36542975 191302201 42142854 444256414 395270404 104278485 762860492 163715897 34870637 611070055 259323246 38197023 547300100 352568186 9946140 427871868 959902913 650703653 570232942 241869452 543520644 354876281 303867178 446759867 807038241 969298265 752360218 109249104 681265301 394825710 652128529 603227777 983813370 437037408 985605146 128989646 210502255 260088668 671774918 860503692 532752825 194091005 896898550 450928108 520672620 403938385 729397101 170858201 995845610 281356671 608162465 267368128 351822466 85579141 964274895 331398620 719783148 538710869 673433532 988084573 12919031 832148177 93081580 151166200 753974887 801750567 781314223 856395413 65063356 619640688 471826516 233321402 979392336 498643438 801537666 827581629 936247808 799127919 172053024 733601394 75704233 95792669 584338675 120842913 729813317 82268632 828575138 621143201 757252365 737272327 583136784 559855194 502170270 66007767 648050508 353442110 460888611 352836929 967526602 988775351 688733882 481101963 118449349 217293901 352336058 132865670 140754878 850720 902171864 94563851 428180128 965516753 484849476 685328231 982075190 161108041 166685947 688072487 866789571 982445946 400423968 283531765 604938779 808567474 859887216 559958832 820234638 974004775 405116220 292407776 293421617 970596694 183921510 556165601 318640928 606501026 279883365 763901690 831571237 141085767 383341492 757862857 920158384 712124947 914270809 264880882 665830645 61025021 137582088 735189904 737081432 888844703 653338003 415032344 45313647 366975583 263443200 818716839 258553927 813130448 126168482 125347697 230058605 494641016 262222232 203731740 243305710 520225339 10342728 368121081 507519818 358536198 902452297 83177323 631879164 811180927 167896262 357248075 18463934 897639775 725519446 936563779 925557980 426122848 828497680 115024367 479532255 53594141 385808721 702699665 897258690 847649083 984291246 876743854 209003879 131840486 871576702 9112146 526503750 13279355 390844126 1001883207 71280450 211556607 56554657 691310847 942333937 172641644 382132472 844656431 767232886 349847468 441518076 394109849 409899984 431903193 799344529 516073205 152145116 28370099 125618288 699472389 914169854 759773198 286494196 345074196 678885139 412395516 58201604 2162923 725180747 934285495 167355177 519924142 948561249 311567392 463427664 709595186 371692322 235778408 337967197 400707699 668402102 837869099 976228588 225244127 385026521 241478766 335886149 557480897 703544478 28621177 787495136 254518854 753709782 856603726 19099692 691243648 602194186 261189299 929215163 516160477 104270119 964322727 747266642 751048635 102710345 50995185 42353603 845935252 431553777 901368726 599017788 313500076 646909995 374995022 686650597 475972450 629022972 453473003 226771737 563307400 950378176 267517927 29797358 208340734 882866540 681644097 862273538 438152629 54983060 939349797 653226641 182422964 770930582 143092067 633810719 978936981 992126227 726337694 229147306 432266181 926770320 234507691 301206257 502924320 917006618 238662770 682203446 435077384 154193265 944050590 886674755 629323217 748434415 829535501 416251326 376993818 640100507 597135111 823143862 853002673 387470774 111000132 34579212 403701875 755523686 968502424 258013739 650936071 18894101 605556546 161543855 697395588 231022309 997873925 367673804 73522517 128004278 956545518 300142515 774139408 600122296 242779411 924649800 662822219 133340098 422464055 766654894 850451085 961028828 436566434 209194902 73521896 834337960 763647785 164148056 394731954 978981450 465439827 541242777 296615248 500146903 332691732 489072266 774192422 703390333 466739775 602422773 322666085 979115089 979752596 283554256 269213868 290272529 506003877 544511539 935172465 881980244 544745492 158836205 843062545 718569964 249617879 848011854 543695043 142130649 363746983 331900268 404096599 358829016 347656046 395928175 481347136 20318536 228793222 76885610 409248527 625971723 251096591 618710463 462142259 751023669 500892024 472452136 938343303 786628178 204785167 411634305 949220632 514620797 7355382 715924315 942199510 619569676 260359510 766502209 596397506 586779131 361286993 537434032 682218171 640399547 599220103 940538107 877465720 26572423 192345460 978917949 228620376 328246001 752925768 249038386 377860664 209430298 749570214 784362650 720463 902895541 744652684 958423471 478404904 865370073 284889533 739342346 348859809 396186942 258535436 282931103 968697968 330233284 371742047 506373721 816627542 370977383 702196633 915193972 300118332 398133670 67043995 470635470 701810981 53277787 101558897 427653514 208968229 570496774 952341142 332317013 499935122 513695780 70265448 496971405 277384558 383929642 297993041 577672836 58349377 125519506 521811773 118500754 22418582 813442460 528177314 983910057 479089682 429306137 874066795 322024638 917639570 296392287 27459081 363561298 339495665 249167693 286211320 421790383 961255001 566298526 961072313 905688282 374325145 562121182 946678815 402089648 314017159 52139339 901848730 158207802 409819432 26307076 578879982 144942162 149187424 718614093 169452077 911903856 795912429 76967153 788598431 379789733 179854366 669018235 481529626 952147963 352857586 297691473 793770285 928624358 803813566 542104647 172053676 485145097 132124620 386409757 242334656 388798819 732201081 505416644 185460241 989236789 847193951 419975521 860184891 918976631 402746384 592880830 948281611 885216025 902748871 306412578 763263392 436937295 261578428 206195345 557788588 279140127 764331659 107320558 996397829 795790626 265728706 377210847 443371337 955068678 670730634 530929134 538350885 404913937 507403622 37526813 608817981 20277228 762554981 339115716 18145828 441485784 269198318 326458712 72825116 317295039 691814894 217832596 262345538 218044421 221368141 409720990 201030839 899803031 986595925 972248117 14463340 689982944 787961721 79692822 264058497 577091371 716138982 245360445 658204782 268439948 930358648 227289996 442595351 535734209 549077093 455007037 641998748 766842535 331283793 310573305 102419626 732575539 906926064 566332700 537133102 774227108 506869565 698036507 960583357 555102868 764865290 145629206 904019784 365623797 858872449 866871536 458704092 32741189 18950541 239725336 379313686 655755336 696150053 724220030 830057786 181611358 223751704 597896521 958240517 940258567 295069849 593867958 687907738 917006937 424655566 116500459 745699239 66001397 340061280 473437659 370978311 691721123 202103743 597468630 743108787 223214656 910321204 614246598 623507716 680705822 501675159 853130958 71941068 974951148 154451094 600705568 563254343 98456692 703737761 522808598 505349224 46296613 802074613 327081825 565646655 125588304 526169847 107867494 537977736 578898231 67823791 728386333 154370835 973312106 130511740 706458259 438222124 650012782 647969660 544442703 446155329 712493446 363261659 657804195 177394077 694354015 628421851 488907432 715801913 504876737 116825478 420376546 255326044 895741017 254087644 598400493 421756237 312822585 443276773 976595736 277263290 298159279 576572581 289760404 51360227 280854673 334150641 373746167 885798063 760652714 139750989 68353173 823933194 200799022 238406987 941390097 95079679 324897932 793430588 606812865 167583880 453921994 351851078 359103295 587345452 69419090 376987777 106214637 206453282 666606418 411546393 490072521 381342631 488982655 84414960 674613155 536497682 835332429 96178824 681456774 735315932 609583831 430631417 564421835 744126655 439753831 257548786 94741600 66695892 830599807 263782021 332184726 168553484 670058935 312461898 527339893 346802316 679273988 313074253 419450284 781528488 632536997 948920389 354612488 658431069 892454734 620545518 181588324 133525564 473929032 299512572 776356533 113699138 282686882 930866363 407364779 641630463 450964174 214673071 11976902 176955323 886654266 93132577 726603174 677372623 674648312 152781775 972317366 542998408 826032999 417053975 916859949 298503921 244019545 464797069 253727504 1000063279 658732293 816689524 176188187 342019650 966716022 945083736 911424323 470695192 908714487 906537950 486696743 253023688 943609858 488583498 802849008 54595180 139466022 427082687 665307161 793986375 98709509 228025948 294330035 442656529 890217815 23743620 371703980 987469762 243972425 230306634 674422668 8433591 431558102 719318678 36308590 1647904 203908441 165227540 71446461 663312219 263150704 440841677 224058673 703542883 865618689 384530020 443122619 274350574 133369741 736765730 478208779 618549499 675646371 83767337 704376287 964840097 17240202 159967766 900765102 834079522 122344183 464868160 618961216 413842791 773589691 710861694 333614413 206904903 587356785 589729791 193083898 189909457 769936848 164849665 540742106 362092556 90156977 268006922 938398072 942208822 26346922 338268909 596108186 55142279 999273310 993823235 922349440 220807559 348962615 544229942 805366654 348324537 649287493 539702129 267440752 446576648 505487741 449312356 620327964 266104222 809507803 303228991 529905126 453188957 773406890 456058012 642385608 822152967 273211376 742462021 585991766 773711792 650705014 441466871 77335440 841948290 406757490 195245320 942660674 361891867 731184494 926762731 352948599 322354415 169249092 113484150 707847855 355508811 531730253 707143243 337370519 580540961 840410939 774565408 832910937 807363305 143502082 97483497 749796060 988641623 647613685 701453746 382963168 487462175 382470165 537501148 211534934 163218538 107967413 996649463 881355739 747819784 12574782 958055077 215643917 138578366 468363638 396312832 499975457 667054840 795929412 223932120 270584966 975413480 472522520 574260688 704463264 242016402 267908900 890061786 782972848 435938118 737532796 118072857 618822047 518510660 56963451 224504621 284694045 139460559 636659099 494433735 669984452 590114736 967895981 803692796 192001335 783808632 728765973 760777833 562222539 840758132 445446803 591207452 91947448 370048959 809650551 726622777 649981778 740392922 47955591 908057256 461046242 429422337 783050778 898636030 741441880 93225461 103326031 728369760 696220771 380713288 408830039 350894563 499257774 114798152 630129731 978824625 666493595 716591654 783981880 509433614 250528215 354487178 430205408 50417605 362938996 883485437 986395384 127269123 519111502 1480637 7182816 296942194 333602740 658225325 950154176 151617888 268072074 411458209 889324155 143100075 286354904 473619236 153433676 504555762 447177445 538883426 138214039 189034963 143274475 105553505 421141694 666340780 889563026 687383039 936858149 35084779 18379745 702935399 549125326 19026986 147905297 989625762 813680711 209288958 20606072 365789400 443677389 245260905 45917344 645334934 386009219 189429982 192280902 847987331 6501926 401147281 189690275 185708422 997631699 337109353 500888750 324683511 503924848 404226313 3666867 809004823 512505986 369664320 794833879 485073403 929436534 341223132 106741016 418141623 925386073 631895764 953248196 331687189 853002468 142615054 893656099 527973632 352841002 98960523 271335651 297886594 874745473 120478763 439686541 386452726 838831623 909245710 146669129 744164286 886449463 320472459 387841779 508642684 369045426 675806076 454202954 888240480 209466498 892304560 337090317 132144541 144863912 559532536 388378928 482476260 619711818 152748030 591454610 927708498 609964472 394039365 402937283 329527452 646509890 801369128 632034658 739980902 626396009 336187738 117907839 413090730 153835933 176370173 298481214 567704962 320000642 906587708 872389920 275073090 406608802 644795595 650045631 491944005 856723340 485814230 239693749 391074235 97823949 988760643 143006660 43869990 167340458 861746155 999336218 767103814 793075112 378863146 907799032 235565870 538409236 572576382 582154010 909915584 590650439 401368536 647241373 102410131 107866704 599995388 135014522 701231768 124133626 577507866 320984576 758993926 984680974 424981905 818412652 56255880 358211356 184843946 622350272 377221277 562947564 603034399 111541362 63221180 382360618 161138579 811132896 714415352 370841443 911909484 652496735 342080244 894387570 242970027 816946564 214636563 429526129 47830214 247419815 182023091 894320979 200571082 178854898 147811544 344970494 660402780 426299132 533801927 289130170 712794598 103995288 894878917 844617608 228970885 652738402 754605965 518812791 931560335 75558494 469131090 893033620 826451457 431030290 746344206 75219985 294289903 62667690 771035804 618475723 260783816 953238126 15459887 951199929 18417583 268301624 57825344 656370939 786188924 332982688 717040708 991469655 879646151 55640905 773593053 163133560 594856014 392645998 957944286 870613610 947616331 370798410 585889645 421530745 125985493 127278827 918035721 688687185 55929743 549387195 288672355 853119844 58157715 574799877 347755964 66266170 547075926 509178639 377704342 958035214 82761351 9879743 122761967 430972610 66547280 602743256 968289228 857141461 338541461 791904571 490400527 396252219 921470175 407326504 886788239 506428136 816973312 768033523 540952374 321488543 504645261 493579173 237512145 773329931 154703748 216410668 783875607 636033585 541545222 856481651 31964440 864852659 405119822 500858071 190084247 583299595 790153267 661841117 963947688 639546880 490100602 219301657 772356022 414667605 550107098 772222557 541097412 174619360 605803162 420342813 905914698 898942761 154081385 554544712 539280256 761833339 622181493 52136246 534768122 511479108 625723451 265515668 891298640 117191954 110575193 396531591 644082817 557426998 51326841 1001189176 667747791 883851369 405352077 125247287 498046846 494605333 790541937 802333660 989558002 83423138 604580430 992244740 467974524 93009851 48805535 365832683 408953503 378922582 264491007 813427506 555642798 170973898 362405994 824395612 515314459 202347263 934738759 579025472 682455257 10398334 156938274 913797666 43873944 128337309 516240999 653720925 89708450 535962029 207394266 825935244 404287849 377135071 741186019 181345948 74197489 284921528 321175162 363269021 686593664 919533993 533710285 163807418 791857420 886876521 522704703 899389868 817495662 942443553 136024144 431056566 422186433 756929658 514648590 230717040 435940976 531265 872910503 186039793 791096941 903376155 503698638 737373922 929612045 353540045 252241364 875652977 152480685 417796570 784307107 639624726 708049512 42251217 191392852 805027037 834133939 936760825 653727709 774316517 296636119 168722538 177489772 638188310 771182976 517925499 177439086 993528693 289749888 646101772 972593416 450980683 549507483 744056112 350441473 35282578 726408658 925326867 944038108 493876356 214376541 588198966 991970489 861727076 352572877 912489214 278663716 410827381 397030665 789951003 23273007 512496614 839364405 378993232 514574541 987827446 927202759 469805223 957731651 255165308 709110125 433251823 638122998 154226313 973684387 354312522 281205255 164153401 38322099 323211504 902903745 731489536 180201132 141746013 123609341 760302730 509674255 501990109 608710670 786846529 782583165 288850532 707414401 810621326 195689287 897580924 402074224 520316758 229811692 302491401 999695448 234636840 987383923 480421544 469936489 42931169 454515585 304775186 460978894 101248885 702642546 3565710 6141034 455215762 600268561 180391337 999775706 419917560 328731042 791518836 158614983 183596601 706827116 569930340 270650823 320908054 217708135 366392121 704206161 816982302 925322914 665164127 323937207 967890885 953650193 279723220 19917233 384003747 519884342 845831148 957961738 109590567 899479509 840992314 872859866 432010856 265346728 911005313 884150762 453592668 344678223 496469828 967047958 754448247 808133661 341813678 186006678 494371403 800822025 856292298 159891570 310344763 848626864 163977332 110973503 1001530216 868245049 707821539 798054793 161991243 681109967 853834757 979210218 375750867 795820259 178814428 559879589 978922662 238351164 312069928 702374117 704283573 778486143 191920072 74080237 526501512 14577772 698940973 885899508 109405355 866600505 317537841 488428605 655869260 785529891 172624215 640241258 611152806 262873523 881291439 776657423 812184083 799948160 352444701 515381553 469880526 264180314 10151109 349709878 522894440 382502011 433415523 996282280 460684591 992782334 88885277 692758022 890419600 748845440 221918619 180369651 516270392 377499438 504726590 605141806 6257814 931275217 473777065 328532088 893022421 617138179 199339845 149116730 555465753 612240107 745552752 774174433 996873504 534623129 480876859 493651299 413319969 864032330 352325864 435720106 907896351 475115544 162002046 5063401 224345245 277277410 422895905 424226679 118607198 180882762 525360507 412478646 527970888 945011799 997651619 1000580469 850059906 952945213 450847848 245644158 422237539 384611574 499827092 717317190 909637305 331343667 104365099 774482077 223547538 491381718 469963464 422767300 9914077 162488667 160040800 984846830 245119908 115193161 666779662 181623939 999211611 578702382 550328668 65003592 778210701 104769897 456434671 119487260 685087398 833779805 519916496 657285154 804546716 86364004 218571859 361690951 720033763 901522270 1993587 490845287 373344100 384199414 312436972 383325143 340320649 502818643 954907097 278087794 488276081 270357181 729602650 145093033 935569027 579104123 132377624 317124998 171628216 976860496 856542671 767285591 408428553 756106909 329503638 862192107 367157378 190240692 277367617 48570519 909308024 776046175 568504418 372765792 432935569 534140091 922712556 756317003 968619227 676225363 133799851 569797937 58129339 631478187 77214952 736439768 677491434 362592260 994011271 822903021 702620327 807887649 603430555 864710037 860935198 441252756 576564542 754581916 645787290 796347018 868483679 399335774 1002259590 996098727 920329478 600972002 503835446 992526812 550015072 586036960 743587992 243634610 661766377 232933057 889614685 244568799 440816080 84643244 885839693 268989297 619814794 260341873 385266948 969059747 682878780 553612567 820601980 87656739 455088591 615652125 681001355 381958833 528505419 655739519 626188823 178187300 451539911 378336825 181957030 391426527 399217921 817609508 839879108 623540104 578447946 18725685 177253234 590649871 937359347 156976870 931591998 513066387 799059723 741031147 569023878 477547864 362318747 202874260 918900628 865184343 121178064 88138606 400964932 851155153 50101666 402660489 413551531 327264747 267095550 788662224 641123066 295136866 939731019 401225729 838382293 444922213 614903317 45712428 611740058 318952434 58784158 908467498 89593845 643307779 128139506 82509072 926943594 289896698 704810251 829205070 10507493 843018631 987029828 698695721 854418900 360694480 260005162 605323181 491188680 865042211 398481120 732138885 453928028 286147926 966454217 115769047 259357308 459454640 667281348 748339435 275678842 425184094 666816277 177193460 96321025 259153105 390780682 478042808 830013446 998871100 603487462 795715766 772794084 719499408 258304729 288158193 114755695 767883521 754888214 681977259 32177790 460577242 558256114 969607315 548246274 696735763 397964025 616346095 922665054 460877658 671053129 689938069 384646907 462512984 772378046 745223498 201529269 504076080 688189457 936831941 409534884 462651396 716265019 860817735 325031577 465155999 303738210 513084673 368937355 93453025 876472564 387232971 813928417 24616196 9593012 227515603 513180606 17368045 311023879 490611662 484947841 316186758 442506309 622367899 799623731 646130219 464200350 838939593 470016907 30624285 73392887 754561819 666770911 943156693 935110667 998813803 739732399 566893053 45178524 454627007 760803477 736674501 746088335 186458369 742351356 9390023 683437048 587408320 954812519 24982227 865294691 15374389 584771802 73785925 552833919 298600238 580823577 491416188 192846116 989495076 983242205 194340853 708933947 635792065 615615947 978297005 329232525 413664288 123836249 63053711 432594347 599670521 29957245 314841874 923841127 379692952 683648490 760986093 473217182 306401982 332285895 928123867 777055942 114896000 975291284 750665495 79831685 944828791 68951478 890057032 755189624 498662304 930251723 871834856 453707403 800184314 879065793 808082182 786567145 805909252 375673640 91801301 356563292 465355316 322265395 15075374 677783389 372109158 814664302 908909141 709633945 493248994 956495861 332457267 806164128 405995225 142090818 907337883 846858484 674845330 318027429 354941083 37037669 590304380 785920021 42143341 290257685 192135093 706958810 103017338 185625381 44768986 323231013 494934761 135208389 853505129 276121748 2058395 682260205 648444767 255253420 757269248 265933349 245517622 15117436 132766352 586531493 998612192 188233666 91745401 544941515 793996040 395289529 479564647 577829606 49225832 545466223 767935092 145197289 583591746 522506851 105310294 813429709 855406506 665839870 229920957 256376564 920269982 514568745 21280917 857606571 303875961 981654535 656100700 752735697 653081627 919696604 415565782 670060842 765201995 411452337 273004612 644610229 633167170 61502314 552098674 140211033 374645649 29915434 430538112 265508153 1001535110 488137673 605991952 517690183 969759252 770012068 416571630 539219849 7015394 438483625 834240783 51288610 939090890 119001103 68661690 84085936 567325516 998026523 838946814 124981662 756333450 406436197 3494313 188419444 748628923 59192601 141022585 453801841 299238874 420520294 568201584 748161807 118390003 382590127 461747253 701435335 771552111 641225869 946815339 76344666 269559062 943793742 336804657 44824916 542542211 131439207 793769121 662500792 342414070 215839897 277334594 37145431 839974017 725968094 973269323 747182894 76675664 378586154 613199795 796659541 459340271 7386462 134338299 786668183 151595060 391847027 684600030 600837434 498216223 840548485 13265453 123154891 494979845 326596168 705270984 51557562 329570939 16217185 223801126 63138563 877628246 949102369 573797290 293802924 447712318 227872934 418376370 742923823 44926613 489623124 645010804 10906116 668218232 549519328 895453847 146136437 725635102 306216025 171201083 710226002 853210967 532957098 983561390 142513431 79139494 910273007 734309873 842554288 560546467 726211062 400867499 301710106 226538521 337223484 900443989 302323802 649429884 122402551 148773763 598578271 488656252 950617615 949059907 655595733 257536642 344485805 845114106 112698511 964578171 305815422 327282121 388232206 693075776 976430514 495352775 491515751 727067054 51021206 249280900 610460892 639638145 879730718 184418642 68165007 980326663 604439355 252666540 940537771 96309929 354845106 19575357 779777037 801558884 345007829 764523200 842779063 550500143 236636569 326932427 238491133 645274791 132785631 938292713 139577858 816285903 882602925 458395734 461829148 568561995 641000159 249868348 135069883 769486172 371027890 588442522 308658289 711793411 36962295 370681822 404569175 143890785 82677090 712142282 939127683 526761007 646809477 525415297 877649692 173621352 296280038 492659672 858232439 899923111 207787162 332250413 992884239 302038224 340672474 471805004 418599294 982610854 648533287 723974763 854828022 274404191 89857699 99611123 513003791 211516203 928194071 292195025 622097880 471030826 313596036 531803863 235323898 552420053 285982492 841055194 409719820 270377778 595128702 599247882 797476793 915152273 529961745 473318430 636715498 255207728 194336651 887191427 293608231 139166459 783902140 184431024 48568630 356663047 470826911 740075916 325342208 418654385 678914495 285856511 288979666 331872254 394105459 366917895 835912891 616682581 207851838 855056691 963486925 936694463 603708401 530642514 562633422 854351180 804000285 934397003 925248224 665091809 55218669 244754067 293959943 316117599 427722270 978222330 923306826 649073952 615138594 304865990 632832538 758353004 176466075 505235198 30592233 728524263 554515751 913299311 495520856 719505364 918752983 756712338 67284563 380407213 237633049 154908761 476893409 346490906 914280308 737448997 61305159 255405867 357249041 102446263 20312266 877301074 412479370 657378073 249115656 591909609 240020809 957021744 894815229 535832009 423370136 985279534 868939071 517272950 785874154 905017259 27885518 764979873 200949655 806237148 236108845 513322783 844554641 195995886 162268113 617145427 909441465 305027931 914448348 683902212 507693448 420717633 583808683 708709639 583095257 651314459 211078710 16608197 118191654 442719965 110404393 973559587 320279944 254143063 263727654 113744028 567222884 716637964 422457560 561889517 238102990 85581345 924509396 732859923 14239622 667404765 1109424 275409237 816177945 6829270 912781682 212637970 134479369 357789228 34784030 571808252 836107536 439055407 542769097 460634095 640287728 667662731 244504039 711602758 666111383 200937612 783472482 922667126 426224306 522582461 104366179 632450020 727702031 341076508 498638582 187408768 79976954 332677695 267341500 740833256 145627785 831174279 15631555 334285438 244602698 604207577 656608371 957267866 821084540 951519969 592710638 252247412 248254109 40569047 910390543 944016567 848853499 158615214 503423571 546341955 58983369 425613069 303045628 31869401 681511318 458901032 217711009 23878427 33969774 74729965 521324263 96085815 80044703 198511354 881685777 546386262 973123158 200437497 785650485 135828806 671346666 911705773 358761630 781898007 991419256 607067391 339469238 514573844 344428108 932550585 388200953 955820982 80820039 203827682 363250029 505897533 85304548 795603318 896750361 171176033 379449858 986369529 423647586 891219731 144162929 747790654 806226374 830863338 123921393 392691191 960961020 792936505 35925226 85951297 102156427 252597308 538714127 43471945 83477743 967732434 519374142 14950585 161136364 473101500 395876156 505045647 362518212 158515215 151345071 150782457 702918896 505297961 937589549 858060766 209161178 33795446 425868954 16105503 955912044 538511448 960019434 491318051 228056400 695513054 157767969 639581570 649289742 375023118 881005572 425710784 610496684 192933914 314642835 680866858 897253921 198143465 623542609 275626445 449382921 182822183 36162814 315328870 595203111 754643416 494149586 598605586 332582097 106709485 883637390 222703567 266819703 190066399 880761711 841344810 224279047 965273329 354163404 106240764 979602394 193334996 641864139 955107613 992298734 294986990 140583690 910003540 267453883 384436163 46581466 898280691 293773407 741477857 649898905 246897756 249670871 30761611 600231442 897672400 737898755 599047165 954699554 162232777 292171250 849729320 941899245 226481253 397223106 887206806 34869354 751118253 52321800 410969685 514578879 418510755 534922048 860192441 552421723 918024445 462876084 632427957 584773707 651318252 49782472 186319444 793009905 593707885 831931921 729674232 999397343 444045771 630164978 428032487 54743529 486930760 619783361 51382713 161728033 969480434 961951971 837994540 327601919 739017852 80031934 998553387 983400667 909931045 59956192 756054634 329655195 562428979 554183102 224300770 313466845 985159765 539766580 270118131 693915358 630515726 39398252 81316558 324823544 450938 778786158 381122213 387768606 648396360 234728002 109056254 619119720 93588001 653254174 294387052 468497064 936321782 669729887 936657163 235659475 250800962 555558877 811843425 171923823 804240883 646314723 60730402 357304568 714745097 991196730 711535064 191427637 346382456 804962425 497011187 517527215 847383071 11286023 517034014 938178983 198985125 710510035 134114621 507094576 622539980 21240745 384324252 857489138 99420034 858441798 557771932 421936817 749142613 289095941 599462684 408837201 720149735 195078897 909386929 164688934 888803700 569932638 540781582 13075162 331870739 584788798 723889633 485065991 903569880 655139278 92407064 888508503 883513870 107999735 97263394 50499214 326718118 676658821 973378088 631046173 491155287 273162394 873357590 516019620 979435179 886418486 604019176 1160016 748303416 521721777 908813713 348587539 647502093 140186415 318099718 867482981 332848272 561631646 670706359 921605226 325434176 554749202 821780094 508591798 38387867 751634798 281475890 710767078 679883223 593718003 870310183 70370529 846537049 172579402 369583120 995194752 387150941 410690183 960922035 616137027 648003053 379063043 99406115 115389907 682049396 395729445 731262389 278999959 403404511 454388855 679744776 883299203 65054716 256228775 542133284 220234587 880536700 383352825 677562658 690781022 740046386 200030174 953653138 516447178 524473185 731405890 583973115 534494464 444777807 100225967 878510413 366074635 506066869 459095080 910721737 577601309 745290111 134463269 747836471 880637197 222790288 867151151 714258063 70047834 868050574 145622963 434464985 988711496 237300764 540032399 486290673 742219531 87813852 190282430 1001445871 490935023 810785728 95559407 662940401 70695621 117304381 691900211 826151471 595930479 570439692 470434104 525472924 305121749 784476979 281540461 70373650 574280083 925262467 878189568 996672712 779264026 728680028 320911106 217169164 930494369 384386317 375991391 305390782 543779716 943288875 889802719 600918991 874515778 306356524 707886141 386606409 709055028 589660079 648075979 624849862 1000777385 661355478 392282041 269844077 288344124 583655611 995197338 504327625 56983221 930155735 18454931 321035939 829000659 446797985 545161856 355102849 38453887 680546900 132017416 118599228 974820675 890046217 509961862 452784189 246569687 872797002 967835062 198608600 875832565 633014860 961448016 340618577 880297206 983403913 939767636 283292078 442910464 748582602 367683444 119476518 407975633 749576034 658576386 964459781 987606182 325844152 412477936 813864762 537135314 97589855 70398556 403137992 475284813 492453379 130271567 244442675 113929008 150523162 640802628 912287788 153325827 592580535 665590782 926893996 656891840 457622262 103603316 231839445 699662617 568954545 83282229 359464203 4670574 587423187 539654319 615408955 47777384 523115334 836575324 36220676 141075824 386660611 493514028 358092394 707524316 212133190 595487505 394158488 894262186 343641509 82044696 285344236 712428434 176744388 772357531 222632903 758797602 413566090 908892880 274987680 887478938 954827513 357573980 507684333 10353681 950580877 928309153 405482784 229260959 277833095 368034035 358101591 871150781 306618151 557302195 556787683 350355592 932067114 856854579 310963723 545896420 462738948 675316692 3325940 419464675 495011420 568262315 91353658 898724601 409798675 698060434 482124084 508224781 899667349 150084193 829089191 392405006 828618699 609626152 46126936 34717676 984431297 740587151 62850879 908076339 113015140 754832730 841917394 186212910 727518844 313445019 466897862 473435373 269286085 587738999 532729076 764180276 160555261 953944201 93424235 8799055 656367936 632765159 669441119 287654870 944082397 887806071 733034611 914107744 172188158 62980358 853487608 593568602 734624492 49789268 752298340 476525225 595022318 167145962 573620211 221064527 184027800 45035462 935304784 852726452 561108893 166463055 56772770 680167959 168326317 976579017 689212461 742873819 781040352 690444227 283915122 576901956 576600056 961174365 127281035 352379501 387624082 510453258 573626596 945217495 257982724 169033134 602415711 574640271 388900206 86133560 575499162 984251667 911417994 669220227 799480511 902626395 232150970 725931591 475049460 360419292 263195032 541094367 531683499 53865259 852176423 377581217 99264519 775323057 964144643 652027580 98127782 628303551 826323798 185597259 206147151 378409882 122489266 204331413 561163168 760654632 268968519 730667120 878962900 65987342 702015096 622320669 243799231 125654426 793817678 622527074 38388202 516554152 956730036 245457973 443366417 428328134 135514395 854781852 353355370 850514508 502309260 466744890 690547839 666254531 888989222 730866677 53319123 449139903 533405635 840850635 787552903 713840022 953642409 878637877 213978776 110758690 241084595 839944002 17177984 572009235 180335334 329853292 432134032 222711456 527250567 1002214320 61142311 775369879 757229125 491476790 528866648 2544012 827232006 34463152 991394223 460716996 110844361 968859631 814412048 271531352 943024741 688621120 981995834 523057490 389430776 839029587 102988081 490289132 509745414 761785557 396883322 429092710 853964515 193617395 486346577 891676850 932656764 961859872 365743881 160633281 836499388 224721392 490779386 89454321 760288072 652696839 590396310 807869180 446573020 547729300 804424178 298092278 269543993 437509221 340063890 79781718 926159820 484146187 94353435 125157975 514774269 341768979 178384355 251950942 490031781 785947944 540213301 22838923 723696754 1836830 604490349 496912226 591272758 846870026 673196791 654821726 947091719 324833764 12597341 557580190 900992130 417207620 479550999 702007202 75701893 983390009 337284130 940845203 69663122 835197394 729676833 214501637 503581091 790407167 840134644 831387656 30309538 319042368 10865207 951391666 809940727 969182385 145595507 138184297 755789375 237285777 194609414 58282454 675812122 427427917 840443839 416315257 342165239 35689691 240389146 14176464 219596435 697433431 730174620 648267420 490127412 624014334 76081505 592860995 526197387 867426026 885599002 553135707 278743673 393869161 748615478 624888553 393561085 285948591 499636520 962445470 894832222 382272857 67564035 487780662 792294896 543682556 528122452 820518196 877955841 627504977 974683623 882571239 705078527 310231597 704184086 921991058 709264699 803282496 802886943 522813484 609438778 907723124 763992960 76496406 518056497 993039866 723211570 103396087 639824447 396749567 376272731 208178578 715977527 463285826 35729363 342534955 173444068 74336938 926233531 984863372 531098705 12774092 570353832 722305398 3935951 665424129 446602869 920333249 859742268 580492982 14755642 934967289 186214797 933213898 96657322 166620571 68693059 703471243 508973503 301038464 501914378 668316055 352490538 52940862 32458943 300651806 927088507 119035016 330640939 45412219 83352994 860937908 203066891 900577864 343693022 557407290 552237500 297368122 102654923 158379148 827383554 330401318 597344050 732928999 589881289 967382695 277187225 1640418 67517967 570424427 872397187 829460273 352651187 762447113 608628160 691728545 419628061 619676554 952979615 946148039 186567903 909839013 553135711 368127614 744170663 433546073 737585885 771325211 75190270 808494256 729883954 338749622 953952966 311650103 992864218 630425347 430826169 492956156 207788924 460362044 914114587 908646303 158749783 678361330 958225357 47211938 7575821 805531437 47175388 620895616 807834241 608247203 246333427 495321659 79259400 923575627 831169303 193616776 22051184 288365460 757591116 129621870 634716523 55342758 876932845 70946994 550470432 600263631 244777830 666696921 642605319 983072703 928411234 708108873 779084796 218109103 604299268 688779397 829659999 210781654 943262409 580752806 271556934 223469206 636783693 546274862 592688078 131793050 199822560 617034058 360829598 76695669 782884563 571048513 235636261 433355066 478832024 422261180 120209239 338559658 982594105 204779444 443368687 344332147 58484429 433624793 971595639 310605892 663320610 762973384 180537955 814280898 721719983 220160583 396047772 10514298 908268631 577996471 464355519 34255645 681577260 400939331 540573662 315108415 761949135 234519005 136325231 502576813 856046232 838991974 873635513 791340712 881115668 872163300 498094285 35825745 897176852 303565462 69994851 298711477 553132372 372503880 132286312 312647001 890194865 580789147 629592118 72507482 204342631 16004583 233640897 538141493 849963732 873278573 987321766 247194669 64584019 188284175 59363908 540264368 213644024 231490467 97137409 736172292 880957672 639857121 127089662 854184284 500538926 555926848 483080709 133728531 300897274 789948930 736822775 135445725 992340523 829187112 5415779 46297398 431000926 412851293 68728097 436234370 286361642 326373029 74377505 891267290 622818445 262331359 92160238 348113252 489854661 85125506 241614258 793014298 585088277 901100430 564241468 330491707 615577964 745169257 753146783 23057996 619287673 325072853 689989569 666951295 789722025 553532549 322923930 563098898 373971455 909308919 669375678 213131760 366391645 645715701 174052553 980505671 508628899 482368217 312410398 244812763 590464308 982132935 553802252 885097987 724598696 387622768 140849139 301694318 694821856 85224925 908120037 551668758 470733682 340542068 447382745 967245615 210240766 123943021 638828482 96103258 255161137 704463732 554877913 372827669 337249324 239237115 754427935 247813505 443576309 408057323 990158806 86669601 425577024 908947774 203098834 62168806 242826510 876611576 551540359 758635674 933653974 810667040 261723424 577726274 140931393 402320678 155699725 960205752 457132709 198490352 675476936 84309137 739791640 939572487 693432597 435124423 686897661 238651948 15885772 663708173 804353885 42180394 758872120 682427832 45479172 887971716 270709505 465041064 383428612 903822397 787311364 457340676 134727759 959019631 328195728 352904867 166301119 963221314 568163609 955874728 621768954 415751756 868868456 836798744 727094050 169528847 501734894 218857884 398832552 812801680 608686331 548996039 174593927 58224398 901120285 712532811 66820197 687312603 924825148 353367018 197180234 891875057 647718039 259645534 754043454 603881313 699039116 409052516 499812082 271169949 554133855 854315366 462423533 407598478 952556225 374716519 184577071 165111593 21919104 501081736 792603019 782543918 600022558 669150888 602260371 747019501 138348745 472877989 141119443 113613468 946604912 735140764 419168266 957664225 593998122 776769608 528550430 906586512 933706908 554077934 297988684 125242741 553667427 750998733 451772203 277298120 572150379 611894422 904043840 976810570 661512116 316189762 322513911 352569786 924936951 223566627 247867725 110704615 456173749 115348492 877089991 730843886 109195389 763348089 934985276 992743322 717949679 890318726 5474706 450642580 610710997 79259377 125150543 887209075 819349927 327149683 303490465 730985698 308718549 355991259 947738531 88470331 854691817 47262123 835749806 94463414 468813427 934272777 881433977 160199883 803153246 448625910 490500451 748932175 553017821 833424059 728905519 255562379 23616096 91921570 408436982 834468531 63460810 740813680 930061177 927039566 421194040 57474509 769265128 580546733 853780063 3218412 339123904 687267038 963269810 772482195 875651958 850950645 904336029 245582608 81247160 977398442 2626599 587810514 769749298 940719073 883084608 263902070 750830870 641132287 814378778 823365461 951325000 49812878 833520107 177699696 720223512 320378677 651313281 312266700 34601112 941398169 86492961 814473437 280359680 474682693 711025275 194416698 394370985 373621013 76403727 209579790 209053629 975146442 660889158 861198400 434270815 277326893 409685065 44961622 519535185 153295010 661391232 172277478 751446232 716522933 818676531 20831365 292207564 419751623 47885761 474498433 341098243 592530318 333921650 215523075 603483030 575931636 799879873 167617153 370233561 779184630 415366467 665463426 293097085 282715389 408404615 842182906 229878331 364388586 66317262 620824661 86896345 648483308 120767255 410143218 322537563 964197739 313101537 724204935 81887963 414084386 35479203 748173755 301205770 264201608 68761074 622680838 267367098 404166457 623509072 214559960 975722497 965525151 186183874 318397612 692197954 209141776 579894092 516632847 187391179 56842542 677986816 376533327 804956117 878738271 640643052 295262734 635066713 480026182 213883317 726946260 839509648 367204635 861097146 820419973 620800852 349987095 164628361 533311873 395650523 944540149 907953533 391436693 209557977 819812944 977381146 863196819 356864114 239634649 201919181 387056721 257359444 92043904 750285564 242128041 773679060 798473249 678310078 827363402 832253214 165598314 632773054 478438826 706157306 565176667 537681511 725875503 929897876 608295273 109380744 334370095 912291220 874235512 950091729 117718559 989555744 214850354 315605801 13048800 292193019 672798531 324455960 630570170 854778881 593655749 374885243 553593610 817256936 936504706 434745565 395350911 169653707 807008342 490979597 547255296 893535027 160582615 455944702 629380735 413388988 253068576 505988822 226738048 575404301 148258183 86479448 992565109 190597457 724627862 409702043 681970122 798668227 812166400 128843036 430468880 123857922 785264100 534289558 735678570 227365046 343911109 950466477 61495234 593908448 533108173 912328290 932655064 409745270 124851851 163721984 300065392 7675749 575952491 83762272 624579432 831015574 419769847 185810227 198746272 83798106 640224100 826364657 863132247 31070472 474658460 210224833 969395691 640878835 411032622 252434008 788871266 118898276 432926720 682157774 740438218 150472154 934024962 608990251 769189503 186491585 877224337 257544210 155550354 468201991 932023334 621949020 318526791 182314094 517371940 893073610 25327940 541509009 282318174 61624921 896517341 652239878 526180461 49296753 666507711 990382918 5191073 478186516 153107530 989114344 520550659 444981613 520470701 444298587 193377280 872594926 465850921 456297647 115253834 642279386 44190670 22127027 290937686 547877952 683223805 762268171 246983663 61283657 80999117 163354413 451630369 962958259 932790993 808348604 154162716 216299977 585960924 595924703 432179787 612692943 126402256 805913859 125335416 132540712 943732233 399526677 659018167 68281883 369120387 742361415 393063261 817112297 97576935 903638476 234192636 520169021 327483469 258001717 217387235 902494185 465765851 533334529 995715765 120748755 400527504 887004929 213242781 671971475 508360657 42859734 479357084 118312198 231903072 690513865 300177540 614402127 725567108 118326525 407891772 311842138 204557580 240242217 483492441 359690091 202230626 687685266 875412166 217526056 856557889 449558164 977754495 41194292 646713966 686481896 870077500 24283867 483889307 926695373 110018660 847835606 857685957 911203539 9541101 826274350 272344472 268922998 430214779 708420409 759498671 873349363 391360237 272475994 760822478 364464580 143181608 654286715 328570330 833716680 843653960 61296883 220509806 596237687 269070268 867843881 988554992 143133650 907696489 650180888 201743889 842745321 891951849 133534377 342454887 853758801 295801918 623202784 307694878 282036128 724235679 97475705 410805254 181644679 463364952 86236159 995214609 375777616 560589072 944629810 427425413 558537460 357201842 672767540 27813900 231019987 59177697 374600491 299770717 674670855 507418306 115894884 465164548 185134606 543059696 284295258 147805153 30343924 891070512 409240485 244247439 430687413 613840359 810192923 445635096 330102334 926546774 771866064 223164297 854356872 377016693 451626012 786011569 412061416 969165031 169694023 268863172 475456822 997667746 293202532 154378533 1476321 341036796 510686586 393278855 292743497 353641825 145840035 1000382742 2851587 653796417 306361697 278182954 636209751 461620994 408306029 905962594 772643378 951509676 338553071 829361523 624003187 80223713 589547392 10237698 451622024 835714020 828589014 602797643 726737022 774940571 842287736 939239612 452082752 449360461 521743750 676220647 185326515 178539308 502236185 109884210 91688716 640909038 49616703 349287706 326559987 925170525 67045444 300307613 982061589 871688726 239922058 427385941 461418912 205983128 75471905 380079997 612769995 537626638 457164800 924041727 608566557 387900303 47306010 912814095 720922564 152943218 642108271 592049452 767074535 293303292 291159522 394532496 609953172 900718652 239293452 27859321 277322798 653931933 285932168 901906134 514622386 751275959 293544083 185336688 718260515 943879349 937050559 864289904 112273269 845926425 160056725 288258319 860736320 2843707 99394217 558400650 358067344 820450131 785028413 838915528 260620157 427584212 501344447 229597003 632471165 392687864 217235531 100855314 19901093 99474775 348741171 938691701 153211046 107065110 891128410 471733788 731224441 343247640 831564219 688869578 217151827 862701231 518690273 895173040 196501907 568130437 874264869 151905056 322299698 111510519 17374580 16927816 100569001 715630408 681641592 530656252 3912663 641650275 412902570 660039113 944987158 576635191 809051997 643637577 6700651 910435853 773581467 115616687 409628937 967805722 118045377 867357001 801733640 68604929 717705922 388927400 339070541 295684497 20106315 660359453 16391798 836476350 845394888 583099320 520123657 76441253 668716717 207716522 709194161 356989575 114241000 445424830 162248230 157300917 100921641 503187121 855636710 282084170 85991794 504967537 762878072 584584196 908613943 313657042 69681252 776995855 140628899 496122606 451926236 753992901 415376762 577635494 264446225 49943056 459648713 930467261 413857536 9753042 248375090 135888644 165069266 905731761 38660154 296736483 864174493 836105311 937549634 885477612 522785922 628870237 500407103 978379980 145676627 845579801 204265929 629863186 432630004 441222796 415418229 22872183 566571984 711193832 510556749 36603264 382547776 727069692 771482122 45908809 987376910 269337047 719391995 912268291 348075219 652779652 770635241 843972642 750241689 872670094 148324660 231624753 358820896 128202751 534999278 926114973 417384216 965061699 436594167 740177164 170264946 363675462 193359719 375862826 329487494 935105342 81218033 170994892 148543972 99943838 650196921 249734814 487489929 93016956 184291488 211662594 826150466 197428104 944940071 353834669 268759722 542794420 971457397 258471627 198345559 640509010 331505721 625157417 810815984 517731847 741234573 185306548 53601940 730255840 228501324 290097978 73710083 328089060 322793537 295094397 161270953 252738016 209047219 504959685 58496259 430191726 657203249 223957403 594295147 979093119 67007373 871490667 133785885 546394381 314565531 478010198 383461164 873057831 255076762 964526895 974119297 977786354 587542803 61293313 966397243 598050094 214309889 98166053 247271287 707344258 524297158 553338506 890867553 684401562 901639507 746076459 707585344 260397584 388962954 624504678 722256081 774128069 182725405 810804002 706329240 726790685 493082187 198626999 398960336 265567327 461195249 60109764 191436055 511216565 354679825 626719768 75291030 784608355 82706550 928533772 750696684 670338650 13040985 151402429 349136680 561071401 458549029 667049629 696463804 724495542 563675395 521092480 341034285 755998883 746141475 286819912 956655426 328380112 588185568 129890378 837030715 531193089 734292863 802325170 326347429 909615987 259166620 648396188 748089926 766777007 588695748 800126372 331146869 802239632 282109747 34989239 234286737 631112962 49799923 680498855 33667021 426322032 197547969 774937932 622546812 188007562 58545695 897575511 991563599 411155606 182491190 118762656 157451313 915408571 697100720 227967498 98352836 920496869 890881057 97098930 525199732 260407596 492193211 325365549 648256736 299813683 156508279 708112523 119431512 545008428 131329049 524563863 156350348 961222606 922148017 749408867 662738036 84434663 871636253 470588427 959370760 921948683 421792131 352803444 486982838 389271254 718985333 933748121 635027043 273171195 643431251 360904781 740686797 31954678 862458450 315328806 136741022 587637534 659458435 728541352 621697174 980330050 806399316 118737982 711267666 802475544 229009607 915231297 663582043 568188493 840037215 215603125 662487126 931496876 12427199 841803425 116477697 989320879 662182407 235772520 405057510 702597953 799232902 1000336717 942080254 769789584 589021764 385496459 760591666 428809696 673531255 161576087 677023965 28370455 352575842 821688850 34038696 558505970 511064377 124283416 833834975 677323651 947403908 511101161 712384313 159854721 713368815 624675256 117361530 764988685 103782135 876448487 582315938 438823281 789732876 577358252 612177370 42712696 292449236 4909261 262551258 79499208 240293129 285480930 130571941 838109499 343325980 32432233 671797598 533031504 752884584 778654174 757022278 584737872 340065460 332666725 251933951 841491280 609954749 780090217 368501161 322369293 952720327 36823809 486006759 347308750 264599203 985555201 97370568 274471144 351236994 473894951 677131854 402000479 940705008 464630400 175691712 384865800 560881891 981992218 562131057 512670680 796198263 171311878 532859565 232387899 460140288 457690931 779204333 872375708 461411129 247659174 959183742 407825483 949444113 414372253 376476355 616588103 848281847 591870909 676995593 730113822 126531763 95315878 149060307 192267247 522274942 590612031 651277129 647156788 663049594 69215843 649620977 861529823 870344283 681622046 795661734 744721349 527527577 260901749 397756577 617564313 9411392 848545051 380516399 393985927 564476585 417353890 565350878 35207372 402822616 215040707 839310440 853551889 652984084 737698499 89356795 211412035 543886 240331550 620448072 319929207 912920267 604726196 301656330 517154127 460459374 759838614 584190594 635001508 847874565 87824956 838092840 926956907 577068812 17006602 625031462 199554381 244904135 706062 6017191 406778294 786022350 495629511 137493770 463103685 666731576 632810707 460369738 326753278 492103670 672364830 99610055 273559561 48576048 89540569 218148106 518957510 900421540 706777168 609974866 697597530 611650134 692293157 495314116 551357391 881084788 663636006 136218315 691134109 629256372 827266236 461883757 743896475 26106542 20697946 467528555 180891407 472567702 649746413 656556935 282133336 708489540 930395686 457203288 503033643 949500406 653674311 13618195 739756360 76973731 212188432 675530040 334614206 717832507 512751661 371260135 2463659 80393396 365790918 901654963 246979745 289079437 823053177 598613765 67387384 515540709 621846892 185395820 141469200 197165757 865890043 700076165 148728472 997511028 397493017 34431234 533309794 579406016 653298413 50679728 265008388 14580348 470882699 400190906 485757636 948960070 720180762 468205551 112948533 509492225 22458241 417402485 555130660 954163506 513426484 578584895 877118275 199407812 81588274 701288440 937806913 237658977 38531727 960195784 324862887 202429191 876569060 635514421 226430924 329535643 168907169 381560682 392187626 169301040 9700868 25768120 700433416 721484682 314061131 498080597 96535560 506277361 206004618 585425671 350011761 499871459 793378577 949163718 211009217 832125705 573246904 796764156 106898080 22769180 878204683 953385320 605685067 944695365 970059219 444961503 616732528 347400094 594848283 52110738 753262210 679625112 678626277 512760716 711133126 194890919 617477574 208389951 731567342 804413677 802780203 528316608 132292757 303541836 975030550 502409027 517503468 872797262 756228931 514588279 559381526 204177028 627601336 620928818 195333664 121019702 675818769 837897833 358295374 605545134 888460226 786169115 960150829 978008918 247820250 232132673 481867544 281084709 151552505 394708911 765430200 758498882 197265250 462192467 28538740 503757549 491840070 854279354 991654890 736386862 999375076 537511213 265725466 61207371 137453141 399791398 697990383 822834974 940389780 385552729 696215 292865938 831796318 191488422 217669520 688020668 757478424 922594770 594919730 675499555 114194733 24069604 12227507 566128242 439481875 194116169 249153175 613902355 73199677 569761001 134974230 580619455 188190773 629430018 321970930 294772270 832424752 870586440 393661974 636697283 854209668 161332555 110439971 452742034 527890025 419280988 867098005 110494428 286405549 488859588 208798986 807183185 210817441 139345752 791388507 395958811 247538071 423346155 188247215 208645670 69818445 885451929 202653778 784192638 948445656 795926578 614336684 28201955 661064530 35635639 495163922 395612257 886494239 98367973 623190420 508021843 836697581 563155162 707016258 632959695 827293839 846718222 611551034 55019119 221725027 730133075 112342935 757061298 755165891 539141629 177614669 504437248 832027512 911661705 327741537 912402188 404332394 480643771 812055412 221376937 663078641 90733829 142018623 381549218 537411667 131950894 214134006 541403680 587062356 130776797 457731313 761617280 645362317 148443026 461662246 367386911 350840884 247533196 983352284 864057185 391299280 167005894 591464422 920686404 445219719 992136157 682496801 969437862 634420496 923478761 114542731 371020162 945383030 698409634 938087423 161617029 54678573 506050649 226522928 564557776 997610357 701230938 474277 619721229 982629762 488710646 7029642 594436375 663633650 922951031 443756976 39010394 595651421 459121553 38773413 8208138 746929712 550941489 980987728 630789960 673550673 347796529 626471360 867179381 51620473 829053391 445612284 1001865977 918952403 378202364 410027598 698038059 800295497 509547852 361344931 348917859 299319540 763493759 659632769 972534762 878070328 662544210 570630933 191456831 177749988 350469010 14993011 163601717 996558559 443631966 612530078 938943310 592449785 101396016 766621559 188411461 587958453 374602671 704520740 659622975 829072637 388469537 637091610 386057693 944339579 227478797 591572586 6063439 268744872 870854429 616557656 269342049 447482558 367035180 626649100 613499776 63392683 149943664 108828941 274505463 273875704 404985734 87871969 605757524 751063901 982559136 416948284 518805781 70539644 518429999 652099580 779057066 106342735 106022539 356292142 83781974 432069254 665313213 221016357 168117122 672384907 493840170 482253566 456434170 524145926 622539791 472370798 829424856 771359884 136358042 926604251 599332260 936400404 378932413 294495860 613878405 233662809 970236728 461348777 577621703 786603442 471990208 459345756 408841555 690007290 599475651 776889143 741728926 349016770 205241535 339706976 592619121 12192321 851183277 859687752 70355281 564236874 189958043 809673162 731542597 835132708 976521404 1000253968 248334172 751063690 462335162 839049408 806087373 100307293 838588142 173752822 905267120 144973149 81063472 420869926 860495498 372446624 255440907 536252695 575945788 895340594 189833652 688181985 329574386 943293393 667156037 32962105 943653968 308274249 436658942 505253723 50469403 522552462 329127133 261911263 135049032 496403202 524785481 975588052 77029299 920539203 815004489 116241118 189631850 959183167 758121960 89790422 207718931 33926844 210460235 423383431 785980747 566137199 994971531 44121006 897662575 191236274 762291450 489803272 461121135 439722722 712522547 592418769 521923216 913759028 704048697 831400973 538770817 839839087 665422098 33197815 500519166 231899090 52193973 775754819 395788758 499076712 382975931 437805638 217101317 114493706 679584230 667104123 154439313 950145703 408459396 154469038 220575239 516910218 297830003 660618515 609389638 385453746 883926896 862481359 126025755 556677327 142575139 972773663 732292193 437474731 805666113 780826779 360800301 166857078 907960011 121942232 649892207 420145427 308192275 418646918 934398987 834583873 89050375 348390218 661009931 490839009 64231450 663643048 184353360 761927345 576003917 575525025 983724372 766302360 556719576 636194842 124013729 360193491 736782655 241498261 489020375 771029590 794031179 409171242 700629512 674656699 668859151 554556116 903943077 658737086 117715462 631422401 75738701 736183408 104229849 765559352 495841702 302556241 582267419 276225490 561013039 156337539 738351665 773700903 171885658 661865456 816377616 221935451 249534502 963001715 261897938 956491158 564486259 5236286 434367490 846618487 600951219 300976667 624964613 843152672 632705189 241244847 790960888 546167148 952949272 197720 637148361 228555714 492723074 111006564 146709534 409289213 164522858 929728957 376697255 641601564 727143917 962665558 631615679 978985177 811034634 630227888 72451079 82883738 476255196 980313793 456143876 921507357 996049418 503869924 804475989 13655237 865832733 656402086 256508869 538818076 662883088 680193813 857514910 613696702 766926240 36489868 66107729 603055160 953540575 658495243 205414954 126738346 668046285 432649204 953977481 878412813 688288748 627507660 809955449 435078484 506240043 869881825 500016815 385938837 330802206 418763651 151782872 717906412 524473116 966594320 775336253 2438731 520949488 667814495 50302654 548397318 805756848 43289799 65632266 203028726 534731127 333958563 324909670 132492427 12055167 81837281 428458847 527680924 7561844 422376558 489477089 496110250 938642707 141469560 364428105 320249627 667617792 38860719 358968716 517699989 941707449 15095633 604832925 209525935 352292493 840647908 825727268 102836554 948674820 256483776 738596092 6504479 148859791 579719315 467642745 214926548 763895622 528301538 462138653 1625609 328114687 239549365 468563141 618382184 32973945 755294299 421435081 742924034 617779230 484228874 870673219 873401878 823610369 277143246 338404170 503529924 350834074 242615462 461315811 208175272 35159991 714953435 649113427 453692652 778201284 204376169 176125300 313126034 248024691 70476458 717456343 396377188 108555274 224810601 795847373 215573030 388364309 814272763 830643770 390729026 656021617 167073393 405909908 550833418 565747472 599778229 273066742 912855793 352530483 715072177 883278723 308856992 842877682 541314595 514691042 342164953 866851908 521581361 304499378 123268849 517447895 926587521 76203736 928492158 94219939 413364454 604830289 172785604 969648987 99842769 263064943 630816874 440218734 846982889 946683059 317793437 950698538 409303780 24818931 521374417 204674494 852828786 718108388 600904715 966837414 449966086 746505801 201012305 179140408 899691022 110475914 993016576 817679674 426324524 807084211 121076932 261671638 391199059 946177290 855420805 424645386 26609090 125787850 291447529 577868044 502013923 581399195 988553241 243001430 920985034 380658844 751999616 529896661 280875365 318835467 73567735 829745973 217086930 171325369 71845382 416698263 788718770 743568753 805905788 724265626 560031407 108862976 399061606 992778355 543989844 755884134 867159334 748991114 445135557 302202966 806058969 512083369 765626534 584815675 750055300 649815253 477329790 801061366 999630918 191261799 521542968 159665245 497757909 541604967 952298301 763990933 945761697 451124146 421063051 886019572 750088521 197255704 558114230 190527751 315332054 948968571 731722132 794259306 831069715 302754948 20485888 125888729 423695075 248381987 549911598 704293039 293028191 367414674 794442479 999928494 255361343 420089924 744233402 10735572 958344067 740265011 149418053 808455695 46552630 98995986 53190036 621634109 715545477 89760966 108258977 6691330 698444171 378319734 387202067 171137706 235155737 252144506 574734043 667011416 943575424 617537377 278392518 146038418 866988033 787820257 839044153 446836892 22592850 604176246 879982061 593976851 83883715 770421708 339897770 173816470 313897600 162359631 343234417 944309212 649544211 79130930 510047883 431574284 596418537 410164945 541699306 812299633 324631937 300459859 364064575 834402516 263338870 675388319 775523745 632118081 481861292 633975690 638253597 426389092 29294169 72215891 527222274 498506265 927100512 107460390 305338497 469953097 347719135 13314019 273578153 332421343 704572973 1001534722 753669814 560877810 826767518 276272303 68973857 683670185 614786191 524822372 867939877 318937897 374728797 930300363 139414116 77222226 569357156 497439201 161991591 345064820 12622317 367183190 806154418 982762633 23974293 697722907 903250048 93563917 594299077 907614454 393741876 586988200 942204461 898029574 903181871 580575626 751337693 512631894 732164480 660557576 841738902 285806111 47186898 949886687 401576349 397717773 894095362 766053460 342627653 322056607 782087560 501309925 645456293 765467874 896877862 239564795 385225838 969323490 903017845 452251473 40655948 33070353 962749525 207863948 172010120 368459247 410000568 23677986 434997610 699906870 849717428 816271919 289810004 523177374 147169887 659151926 642832244 111944354 755432842 316781652 76622527 869128018 853761847 521502811 732580249 343875803 209395230 344177965 408262175 448026897 701361503 790004896 184970466 590251665 850878991 550598988 571144242 256653947 13741546 26086066 593325200 611644732 988943743 243521455 493696589 98030698 897901157 946038932 289433627 913543858 949773632 65853258 350865160 256220026 19785979 919943175 920890856 735816034 958961584 951202917 203748120 4211364 459731509 232907590 486273919 414780933 995667027 411602010 899262737 229783867 536871896 841748387 659856938 16755703 264997529 284135551 408847324 812590200 198105263 967206484 8945624 837661432 446432103 276880444 200937746 755626063 959475503 76010940 74828298 829212961 505300905 956920795 148708018 501509028 481870220 665374879 313420016 635679029 347371249 628021285 269477294 821460891 776235694 561264669 271813026 264453641 174891624 819538444 388399620 530627374 729005546 130360118 83608269 382648298 846924859 430228925 953281701 167724881 945763573 40369358 22529970 935603498 845328547 673211228 436013755 564694495 58315494 795888239 116727500 582209734 449358252 824475400 138394863 917746252 272781378 511570303 272294303 332284692 610208664 101980867 460948906 634606038 780594600 377156081 454007820 833920135 901194504 812578926 835649080 253068067 880715819 795982550 680238252 349569591 753385295 705330018 282269851 622624227 417535276 820517901 293299744 773254822 357955301 907781330 905936027 618731657 557232415 875700681 459429576 899827582 891397586 515952350 775186725 451031321 654278543 362934773 519783572 675136351 749131996 83924672 839827612 675803799 147105603 531735511 907330522 790608276 714463984 792513401 683483182 903560850 992225271 430840740 227373161 904822818 336461571 945350127 398164079 699268036 975611845 981755585 834889960 666926696 282203939 613065834 240730788 490760104 307124622 275606688 158005550 42998648 804334088 161574304 89142393 730864877 257667898 902012065 951638387 682905394 980598499 530487441 233340896 455745841 233075684 206015690 954094140 134375578 681256517 62450946 132685685 222985407 312965367 300418048 966918517 13622698 932179327 453109704 852719801 38337253 972958384 509563724 621150123 575073344 885272412 159874283 65128010 925035400 617972510 708133036 239784229 136236930 244250594 702865762 321667987 249175377 334214193 734345826 258864761 665549661 854141912 805355838 399118330 883487853 828443339 715258909 118274401 530523373 459638684 605787681 221174289 898930093 42059627 117286570 486038818 585927100 117361231 775652750 999444235 472961870 478484028 55778476 238021699 46791988 908630426 450471330 102247953 7500514 913508603 720190340 240325507 369983755 640118803 100279224 444461094 526107969 888170479 247226187 812415284 819182970 841070300 727010839 463808438 53022263 1469413 652412872 653157853 892270074 998170636 34990743 209117932 910314576 96052047 86243549 194019238 432798827 799280772 869167885 887676704 569460625 239901492 552872192 379963863 616011237 198642975 549029694 139178244 82177615 805009116 659620768 835914848 257034986 530373702 944286096 720776611 326784310 586794511 726812573 500294724 6278832 196819645 663475856 803098454 474971445 541503610 494184158 20177977 731877301 981848214 914416776 797403478 122640203 92301678 246468732 394237502 503213067 746157975 550622398 535564604 41267666 361840572 888206966 592888808 417806139 852914821 739507993 788972522 507747904 217618934 130772477 1000555340 957980483 7487833 285915890 99770930 992858641 357658624 13962183 924981541 935164375 509287488 201327580 689529437 191178406 807440073 710731040 631880046 316328235 499667729 81558026 773525607 788695119 719380789 714910431 821577504 380024483 551718177 887594601 783718161 591916199 693103820 85623633 495525042 640541544 929154226 527838118 944969966 109870160 819502369 248984822 881180906 566645019 184254454 546979666 45114651 548122903 651154305 612114084 227356870 540893901 521748573 980064943 205444174 943576869 671663346 778018099 789748038 486122061 314261523 516284860 279831253 77050534 55767184 145967501 869398494 620272427 329124419 917836327 919679274 336346171 206669719 519984959 188077919 306158142 897678427 637254402 140113682 893451694 340107634 165174023 74894236 972184771 34362575 775404070 990618859 193338194 303045844 642346122 787134127 168240749 734362322 88389914 816361684 425978072 961429048 574501502 484669051 539312643 116417186 514691463 466054226 877127424 356567450 94116714 915741973 519437963 82589053 715249148 506962832 769918842 219010328 318675814 411748827 77271400 458234454 335545662 647785104 757187761 150869610 505738974 607608348 686299233 394940129 79455865 717702921 505325584 562705392 235692878 372804946 120636568 82319140 24872590 469798036 987905696 17590102 634707996 426010182 922310185 577007453 287983586 592165855 288066109 156972789 588010440 154974279 327618370 239662613 793720285 666197193 531784988 54521262 362762981 259707643 121219061 151415510 891328748 533369868 449287976 50418806 253351370 702712948 340941458 612220309 669013781 90929385 739521685 263889895 812928081 322799370 296895541 795635977 692344093 6247047 135284137 877731543 737085231 344020786 266423159 386555354 834604296 519625435 583537733 747534793 606041584 48943618 607140221 897011655 566187447 87354598 296950303 920320121 270706944 296635386 307755391 465952597 234280109 277592007 907706887 858758891 32409336 372764282 593288366 271975287 350247022 976396446 478063579 825966655 737726997 63706954 98876253 340591579 976419263 434069122 690469787 487087437 208219654 165811410 304947852 475852341 474115991 368687905 150591301 329582049 679407357 494378626 94438288 82185535 876636082 520015934 568632807 625662765 9638836 414171248 893011260 641887479 622733460 643330245 866768752 920185100 674035978 948576747 586634918 915628941 164421833 525428273 199251942 779815192 350445527 338984799 272831696 106291453 559855424 727168188 11200742 865966194 77021941 185263510 177482188 733431054 881171862 116826266 837161644 623454411 71077800 811545073 967203471 222954483 813591568 589939227 706620145 789941416 404181940 69976534 269044364 276509191 325043025 513293572 83051222 418095273 998722248 112576274 870652205 845768636 541684287 852255669 22055393 327729425 714379846 163538675 82491408 424906322 301295522 642134765 385227482 687414568 162511505 237367997 348234672 585627254 868709286 126930064 550126600 838766844 754527091 524688684 279764057 312472446 743855153 790954398 118206666 264516493 562735829 352315444 186177147 540556656 506569829 941394687 679126590 446684663 731547198 781053830 131782888 174333801 522860406 161393226 287857137 815231028 669624631 201336979 431320344 790375046 660319723 513666873 588667479 579944572 321990666 195537912 963865957 177381320 374112678 170335538 941524644 816840612 425177487 772569590 488796372 832752707 925276912 249394444 212147997 897088287 230303345 224651584 787457483 839371521 554719343 892985665 220790552 442920432 887309493 199254093 74687156 325153645 773995550 66756625 473480523 106340437 962418361 236800222 343932426 925136654 505949983 196309734 933176897 803011859 50202586 950626985 705939755 133001473 174867016 586684235 520889762 235772633 818026639 684885684 558913954 147979275 329775731 990391784 729916947 695279187 29106678 559316043 365552597 652133393 33855776 894349581 980558881 856986084 62664809 273207808 703246513 482886760 962222834 378455232 457208198 483742535 760055617 255389821 682563224 11882420 508727101 839262828 990500506 204615285 836231948 679424959 42248256 339105836 174857911 135448683 334094899 1683749 506927831 387993270 748649770 655997725 443849649 219741948 449470967 89142693 353712531 419741371 620599203 421725445 864660094 565099529 328279737 137782713 180363648 625623242 123582785 339291385 991892474 343676361 899870532 701196003 221855715 412877462 891671445 927309895 539625807 750585056 134487671 631307860 895716316 50328931 237878613 235574305 575597604 105227429 672518909 454654179 837929941 609957545 547411427 367589040 783854858 411938452 968462814 825762631 882415543 395763121 659017858 889683197 128743089 7714021 578481100 286464314 114897411 647128237 568913734 407085046 773882061 906349937 977212921 705600504 620258642 73597579 296235485 737085282 342328764 166552546 671072925 947380792 203285022 957672414 791088084 163429930 765930321 850228623 599953966 378157607 188506567 580992681 258253495 319205621 131971197 465140221 513687997 618940892 925775231 944566245 376062976 791211949 236733574 253116426 508594782 110704304 640166328 280040802 221258838 861375256 652531490 374680362 884578589 114618274 694520468 706188667 201325553 625345300 312659437 464525841 184416530 909004866 512539375 472137872 137109208 743121458 967020187 484090435 937614790 764088980 95207939 797273712 619621684 847780133 625504523 669417173 701940108 449503850 862224489 808218870 430499113 232463119 922590522 65522479 95462368 855252419 151595121 965929986 833021525 163595608 836420574 573053963 579095548 377929468 653101953 566356905 443361786 966795177 309458607 303853134 296409088 649119483 304153226 138603174 766447037 374859541 105000329 775877039 740843656 288206378 407707015 508551239 346849830 784153809 392975051 478119613 916094951 748203438 978154089 720277555 772067673 870925401 400992902 906283268 331190478 4072697 969275740 901306722 235266691 137663997 487430480 329104587 994811901 647876528 632744446 120886101 987320854 234031680 677508604 588915259 793176214 112404326 291724176 85200319 541451136 180174906 899252103 747231237 539218433 727319837 386595646 438813621 438980707 401243003 513824734 390193130 927089384 1001019638 530417889 3944859 858973598 217913148 315096731 207687142 39723856 490354465 129849163 370572381 871742657 467161532 395735443 540085467 772135281 502643897 368759120 297286694 578321432 598047296 50042587 319258211 150006206 849825101 736214779 491079433 882623691 613987247 854654363 666198032 435836294 255806104 581192799 863492441 320255406 471408148 215601576 6377456 671466161 137580954 390200860 774191510 88352833 135865949 583908087 454824385 814912103 964125545 314442116 1000841215 294536575 944988746 76497832 809531313 50612466 771319977 643307751 873928151 576631577 191106554 340191108 908805240 470164666 604897187 885372368 899300153 504966915 161314481 297381057 441823687 354053920 617446901 786197204 791447231 268729479 896553706 150490886 74297888 629072552 62468626 234117500 686002779 93783047 397332709 410368630 649719793 484076872 610326179 56019952 881125653 690143409 702924503 360927320 426921099 271724262 824442527 265157037 47083790 693585651 42066087 61018588 108127086 858805823 425470121 61186547 971779968 110041296 317213445 174788573 953151344 412717638 327715261 410984105 586483214 909225033 676167057 566305757 439533110 658984194 127893018 155708640 387762289 748612949 69584664 888820835 553771567 298435681 36261338 285144114 796690281 840667213 544505010 510138937 399806892 450252947 80269676 99612375 186903264 360620524 116652866 937343349 876695252 78191878 834442199 828115264 417175679 966484735 730089871 320205712 406770247 410481860 106432661 328004670 894701550 199513024 211859974 244612178 574373751 78338686 559820245 310924224 831820736 544628655 959247445 470251293 976705393 226067191 736504503 936262156 409170534 675615657 380893230 755827979 887834781 219974340 662705133 171301534 736839632 800208356 131344792 649840418 252443115 727415442 373438459 804011182 806393986 383389057 385285357 714151855 908183894 497536015 347049754 915238629 893218106 59387106 812208093 345515424 624516322 389821377 368585145 95209318 890969036 783373855 678334833 579178163 546971984 287774635 428648744 797387859 845455313 735484712 375500334 170690874 796031793 743142162 755382787 946569784 550281997 520054073 46153023 358783804 198318119 903212265 273347120 813580735 502732238 291151171 244644184 354832929 467051670 492988060 299449827 112172829 667259007 631595572 415151221 189894809 37132059 500779198 583835040 537998398 813923820 823227357 299195105 108978221 614046267 766137882 41113740 950975864 706205445 665681908 703719101 669239398 35116743 164001305 634218503 466523214 738222902 501217965 359832145 965875158 939339829 506922636 764487193 672425025 129856178 416836338 275744932 610921879 333164909 582204687 96066310 314114717 594294229 737753865 442449326 975296093 856400130 737906880 759503227 772093918 982277518 829659177 728963649 704235244 890675957 919684099 499432012 762347248 518987568 324280362 616315701 224820541 497618847 908753445 5498256 872671258 336393729 140303182 348123472 189804330 333946832 816959906 796427434 903811198 590088433 43107565 506143176 342062928 772707631 975646612 792400247 461896525 248988036 322338416 901526790 87531194 568182520 498984353 219931044 541550219 442930032 679470907 953859360 574957585 978514760 512183668 610167067 751334383 79045806 916888651 258731212 540925231 518939901 814105349 764034239 497425623 838169154 334994725 673361652 363103520 846978445 176853269 801298004 49285595 945451377 856919174 524957411 831136531 231613078 453816429 964956362 41738804 1247481 809143193 235117325 266092261 251453393 559617677 127629097 346599153 629710677 579725111 346801534 582080725 209894781 469178614 564796603 74389887 460722165 479219002 647922027 757831878 948729356 104144203 165737433 490299868 430372763 698164379 563235670 459606487 427356755 254658977 813257202 864855554 875199238 118913275 27379163 182286099 459155383 26422331 86658093 462441077 25960575 267410406 317971777 784986385 703530953 184177969 671620895 131871440 459716320 470637218 571777321 604495989 502130789 641795926 221472348 276915362 667972187 273426638 796374330 545894487 800725489 439167021 892900861 688699902 842892553 45185568 721652338 147360285 725360653 33503412 292430993 797664381 620850769 899611415 612981629 462008322 596179948 368772150 756767125 817339456 504731448 380123834 710801631 24637659 231519018 779669028 174185624 386856175 693889751 144292012 757123148 288203008 829656414 128738172 317741162 166253760 91277739 210646362 768688590 618995655 785934320 690045775 457333689 198022266 914838841 1001341003 335176517 794998336 284387744 779118552 903687286 547062996 523033319 113608511 849903901 915196026 343437189 578226774 986295924 759502071 391310709 465198266 651232592 841768490 805129376 854448907 379395516 791105968 524069463 824303875 743986771 882455422 283939518 997261307 132217754 565343868 592021 272615671 928202478 783147870 284831645 671840521 443821567 466955871 6757301 479893134 205570315 226135763 750163655 329649660 427467547 391796450 39758920 901697234 221750814 341270832 985473515 559469711 115819767 139657773 473705066 507529303 101258668 891871146 404994475 572389072 827416709 366742718 730669273 570174630 203574484 24908286 363141643 528478333 133012770 224606769 874928103 586624337 529441828 159337523 663327179 747976317 286055998 115759552 733378497 920064561 619651615 722476813 418150561 633535107 423351728 762191735 330586704 399884021 216040584 757495832 591091538 454654375 306732676 510895274 741040746 354447872 329925108 86493879 332734594 639138815 758287337 908617705 884719912 229254949 98021421 984113530 405754120 508621468 4642553 902926257 293634750 975845358 886783280 651517048 140173236 58881963 910107665 116173863 927519089 406650125 154747114 703388568 410741378 765004561 334861600 73247953 216350032 303993630 99822741 273858615 854171370 934420326 181623966 474108683 97021218 548427772 989885155 848320618 686645320 162360779 886176939 462099603 547352399 948285004 61321557 841948073 787182263 575755943 647880132 81777501 158866310 344970016 159715131 182875612 156237077 868149817 912305926 948334127 128258974 449571029 635915385 576069360 620259530 686605057 558253690 378214963 145658735 474411204 754539474 328635978 254565699 773315293 801569073 726446834 929417502 985402106 654441756 134973783 73061237 270533169 417824869 517536292 845246835 618011780 554753530 568722879 664572428 564391606 990148927 385872687 347847399 631628270 577068765 403203831 34917673 505845078 20068249 744331236 671829213 599843994 133766781 126295404 22175524 270240739 361761053 904209546 732372966 685502588 588487453 589851377 422964784 204158532 175709212 246869579 463501868 402500531 320321468 997486310 956242780 502313148 671006376 749027605 183469958 199334474 310030784 494421512 73593765 607084968 424190458 666402328 608758401 440000358 235920816 604780975 685046185 802917848 335599193 863355076 714024921 178759393 689399106 658094048 267272231 612562635 413431350 612200999 20017839 769596571 10439498 245986428 7036055 965453561 899320970 12748328 609273309 297845778 426816595 290052277 456545108 846428362 155450053 472974790 170128654 383972787 10633222 660471023 43476261 51924756 73086388 778988229 876180445 93243359 824865968 611439953 997409873 781842845 155441875 230764315 974770744 269392059 455214872 644209488 404941588 783639601 846018310 469434084 764740824 287629484 292289521 76041024 269999712 637934680 525601558 791698292 268087559 591262794 122863134 114415758 924704829 774660760 613766623 595118332 446316217 653209865 473991729 470777162 569616026 859301294 787977069 84232281 126662925 52208514 645110376 977452877 426139946 462724003 48739037 753163171 50305536 290546270 900676337 436186813 677087331 952333573 982653439 786822858 722612567 754690081 579568725 853348486 180663325 660059473 488093132 298805521 628654038 965688924 606189331 541546010 574314795 126053857 330459914 931283160 897600810 741953433 510887568 314193741 969482929 239910727 875700199 245911203 548439151 833232800 158933400 994363826 152918935 571129356 835038391 951387748 34500503 439351361 453447717 810763602 404505881 561335429 397559870 637402827 942901543 12237861 657172651 672139262 71461419 807743983 282379684 427041663 712570425 410428852 581999347 828381078 964092776 68332256 669982969 275838188 384320430 515662338 936250300 275623822 257221924 329750560 467674579 232925654 101857610 912237851 705269164 497010877 804647324 983757690 860372892 678341163 611545978 569986604 500461732 657057127 704804718 916740883 876602405 533192843 165951582 135576176 645091830 979310522 207150750 657165919 344836572 993956385 393088372 900236319 139941517 532581490 207124204 996771193 318234546 412670115 43262326 254965657 120057072 630911560 245304831 341320109 761206914 998453440 595448337 767012321 84649190 270182457 623506904 194620306 419094570 337110051 127853086 90921349 240784659 971775682 288621533 401294055 752831521 522355357 133996390 38836792 770601647 99691511 721181687 864718799 919302409 347728814 38599065 57443077 86522575 605491898 132583735 905290398 469537331 263393583 224774606 564149109 663241594 983782809 280910219 917474875 268868402 885687816 32667793 403204152 746897017 789233072 483346561 328051678 309285093 551324406 228422817 588621377 695208497 67780831 725369615 503365236 586870085 497584976 778941020 237494482 658350193 947773800 556720216 136507609 480818606 590733350 769736987 254102033 639415947 92594793 902920139 210706359 984825754 281586170 885227911 695686751 574984267 211741110 158692608 172697731 90096007 306538524 664714236 360254920 631717005 422455869 298317208 465729468 430795626 811291611 539916554 401245068 80874293 157355065 876433651 332383889 260134292 490852469 511203866 218250855 818281542 382140437 560508033 619391163 678320914 661108081 425485600 513593739 351157326 46800567 195683372 751862979 602033026 690761523 993537447 783158944 824365027 660084933 532505149 447905740 147227082 56022174 126198098 570432845 899612465 136505800 116506558 487094031 384017783 187660454 662336077 839801812 312483217 879315435 29905791 352154159 337324575 492065518 197706256 350934871 898675826 460073098 80215042 713392199 763952587 162302196 88129246 807512537 172064158 134484528 703964435 693342344 145226505 228999628 641047807 297277286 377257296 936979835 781495873 69173245 168695689 717273758 58084631 626770031 289588892 662122583 149487164 314790926 992738211 591827981 981657759 449264260 239760369 359834597 874743939 691610969 750375965 819577609 713994426 75704594 607643009 856911607 677442855 125467122 568939754 513505539 154717891 923481140 931322167 161257095 420288592 974962895 593224930 392875727 893500025 623798473 160476923 511860854 618017360 64529468 693100928 16835421 769218327 881240480 695567377 937468078 58392085 974399413 707549724 570948706 702092354 474799598 140787115 308353262 405331975 455832581 960152628 8582159 443242558 726026049 499911111 812067997 978457122 907044688 926313133 981759659 588848244 960773109 949227634 658348058 610706079 217073940 881172907 279821095 255469975 725280731 396877201 448545849 272777718 127468949 748487555 22200756 390964468 800698152 813101511 845099050 122293624 282463116 292307494 202974363 921792881 835444828 65494122 957034856 350431490 92490623 179681608 486693547 108973220 7742207 103377084 282787875 86081015 599130232 190348012 715950442 976920261 495093650 724243993 775107305 142077376 454349252 700513379 318179288 798772149 127063019 503921031 138255353 794214501 928071012 263397134 563064969 978058230 528732331 658765425 451040578 872385526 276167206 812536351 634670630 433616709 256893933 416866924 982866665 66126278 794397975 775227326 139580408 688933122 74199980 699658228 54485108 510014291 349375735 847807845 288848115 294941568 29507531 347767648 627489817 369532050 246771029 881305752 815115247 360802603 620045795 352351245 282250232 887938766 328844853 627046661 820811643 520517571 259698496 866426609 52442085 469004597 992364807 398691566 969723277 291879568 147630099 393334651 508139974 456296964 683191406 347013633 118046014 804471106 986131401 342832487 525100503 766356174 198151841 588869033 386083322 776949025 960166051 474134605 464356284 933838130 197400585 790771164 787290668 109464471 392152854 151906302 893157361 677741689 155707410 968032189 831088154 843640005 842791651 701513484 598567182 147760919 643570951 651779091 979320382 944423996 783608157 445993490 970769144 873041489 585735412 637972988 165840026 99979678 94169614 233788347 433479941 699947483 151952033 461838247 474141004 991651504 559804616 627596740 271020495 458646213 540465223 181773293 814032886 641358926 133451708 782123325 378752937 283817471 538889631 794327506 538778857 127306017 963154444 894916770 623500587 425454082 619523710 808756212 45676183 798738281 143124071 418068684 295882903 682427791 30850397 234148228 125910058 334888329 485622507 777980217 477207825 723270545 700815312 918685619 9054463 381741291 398190932 103375195 361099124 145450684 485801939 88253514 31097729 487375362 656752658 156077789 824700718 640212836 195232289 166783100 614184188 889315667 197029491 39695248 707527073 682079341 572872100 804887211 599056180 573608194 524929777 391673452 583549637 633092967 553895728 122153364 653662370 4914192 427048054 527290047 60599706 649730207 854820873 440382719 276082604 241252268 592060440 702845729 830088835 807378693 472423712 780962435 220507020 617075687 746164958 243277545 943405152 937669330 299093828 213599706 773347179 129448817 883496139 843485907 595357272 956727805 708893844 571075430 329310167 339066303 601449732 546384909 305989731 407118768 580616314 254126075 221622850 467921953 494458807 484378161 693834794 884632780 375992527 715113086 867850910 24880931 981341503 441701097 45924516 592486290 675374616 692829087 790127672 289157475 851520592 564048497 37334172 945901284 822851231 248526355 592960257 552007620 424761858 728241995 546630826 699659764 35507567 103457766 160905058 132351380 55887451 404301139 8402835 361728646 672709413 758806195 67712078 679921952 972343440 959661680 782254756 149379715 66719365 95274842 331401581 933551128 255623989 643645742 1183222 373797483 883002134 977866279 929138309 251907011 828509097 526866398 177816192 897892269 76507078 894200236 257373571 557311194 31154332 61687193 884405257 226017158 297029728 589497397 234171480 551852384 493176716 644757808 993648058 139861711 210584016 877060464 400330381 761207699 682346554 629595021 922884140 336602735 149155585 448355225 410524839 484189065 231329278 617797052 91572582 877603216 910909200 131886402 211259207 684824143 680512458 189069180 765835693 700192818 833689288 119575095 711257586 237531685 549691105 867468469 346283834 714360762 374600845 401298211 591853490 871141038 605465228 229408566 218649277 946829166 309472432 168084784 571565869 401344493 198785178 168320445 375751104 890909236 751063779 793500899 593416968 616642589 609376735 962428827 898639131 791889213 504026309 580484389 249763925 212631688 132506051 399119949 662691210 976863037 674707139 785090609 467221877 706652753 356016627 795164803 980478558 741711628 325461001 857372909 309475897 7108713 213223051 185257879 252958018 529442745 113855424 469269854 276011077 110662807 309442313 901783148 868433476 504870316 777337651 858583224 849697604 9866026 534277170 310816132 645245391 938975864 631566711 279095331 170643153 103986195 631801175 181204014 454382766 240596803 769163671 237582135 20466885 415998066 352157511 449189380 303955796 686341917 105151609 514567506 538417897 97661177 978533219 874965864 806722812 450474088 226530868 543301285 934990299 358946115 931984286 315923263 85791004 140702350 274826215 866357977 330793006 653965260 57293267 497337122 293483953 674095630 207143183 127656028 260189294 326622785 214742476 661998230 169209981 478415088 853706837 106084187 845707782 13025205 32159314 838027423 21446027 6580423 367009912 966257487 139146820 741762860 939308937 977225784 963087314 879792373 741181765 489830291 394338140 467320571 448867114 413260081 944860075 180559758 305150949 994500271 221599253 867223441 608962764 597170336 767979663 670151775 530991515 284385268 82104601 637285508 978894978 258562397 375801392 906848895 329774483 494593755 505920296 857270873 801057498 580404421 380021270 651542878 148474556 580310231 638601184 765623494 949914146 220729394 524698324 892671231 460413520 234561599 341162818 793360639 205870571 138370873 385009522 327875233 912962949 594543039 883621543 214708977 523581579 453818506 864119541 999396395 120780990 855927881 819620133 835371292 853842373 642685299 997875087 572889843 703760028 930031237 474515211 796520382 670016078 673891439 790752083 854786162 116702448 507322787 1000752063 984541157 290134986 707551375 753511096 170243462 250978650 737822419 577188022 9322400 56911722 759702485 607065360 560751239 94510440 140643639 104179619 518920281 5153383 754167668 149419894 576767165 847197275 785191859 30649483 370853855 566776455 600556998 661078542 150460861 666467670 568863998 26953171 652949663 644472887 864547822 602872801 617597046 841413260 640716174 826999877 884127974 303436487 119247179 672192570 745241004 852732154 732372195 827155964 902836921 145857296 210581198 539724191 991373404 242992855 933219734 700943244 2012944 272969711 756523760 230282 371287005 128143226 652323233 856409224 156111102 644400343 875753780 968266934 378412898 531438305 187608369 60187050 225224987 17517709 692944382 154568592 681222736 196573076 545197303 224910472 43080960 882871840 105330664 888640990 732719351 718063611 136442631 242233196 526945206 195251629 453004439 18425121 42556346 782110997 357472848 463944400 167349554 269801341 462875855 223925172 204181850 547868165 466665138 523229989 997441744 6255570 820401202 746429790 392346957 406440488 106788513 915227369 373675522 433262923 650117342 515573885 443042660 688954948 327795344 681674383 936401465 907949317 327298848 317854251 319294864 412692600 771168401 379526417 897414033 576979599 948800179 586401901 391526149 642212840 388181931 915021199 784073971 768302815 341390036 648493533 153322297 318432590 801340465 652397834 791465519 446185465 430782230 676362193 913670630 326426685 627925328 587856998 696828570 777344160 178705305 918946739 653632172 385165636 775275519 315171211 569663798 571917598 940831180 412148302 877155744 855299097 270528176 843614560 385530918 995255873 815576693 638401253 164899482 507775026 546135015 926942081 441268217 868221036 240582732 25588895 550977852 147148800 587285431 748145632 231702129 139702298 771477956 997978360 3055557 734304555 804473457 293509201 886314705 703641951 127892715 405486942 156973603 654439996 32404420 703524103 805759822 98887602 633642515 529993513 167033465 868450774 144731133 970452480 392598435 584900723 167918010 522593764 653038514 96329948 529551280 65037184 402997115 505683003 409865511 610148983 907244026 674522139 107109370 25694728 231749764 605927441 641701902 400756757 490561974 876878625 444749156 576626898 101891106 975621876 114315074 474712179 171673886 894216605 898305136 167162529 365673914 533709844 27104338 846722871 265854075 364805194 343128942 330193643 564868442 334282918 404318626 702745888 136224334 168954110 355967051 363190060 702700324 521934227 596024575 955745304 686319964 700449209 845850555 284927501 316096628 324005565 544307601 73212926 500050423 503135977 423208225 981870973 592633357 219489203 572289943 23471863 11390277 412373000 576665743 809900540 512226467 450796850 66850169 467523353 455234047 406889887 75731972 59520962 415669856 549872319 496284097 371678228 54533213 776391285 449443712 965787852 415562098 422004780 680795272 80516667 751452491 187364512 290877197 78709688 748032443 508797336 598146496 467941232 923205610 649587253 563241724 268263157 458312730 649748179 927641224 782032127 901731573 732819019 889763169 203497905 590404349 177217320 929442979 122250966 989637885 120755238 202889733 27836363 735144046 225957819 554895958 51167304 126567402 163174626 911634649 519081089 559371344 948880665 162880463 771532503 264708088 255776326 96601767 306328089 291956168 597401381 473170014 51251808 701850606 831513996 445002514 92790990 706042844 391134960 163663268 493880815 477777346 861062621 313924261 780395402 911736999 241957219 854940223 88450792 355637509 241757996 455024818 218678646 189225924 924661552 318728623 600125084 443920541 523232034 565759552 259355044 423039676 647153060 261763298 92162620 379950218 554570580 80801263 414652990 58558675 589858756 340990409 232155586 10889546 204078599 83871770 479066727 861991011 656666314 642621969 16112801 561052949 857042306 657957007 383129348 413717022 344439697 38258931 571722545 367409458 893824102 344638164 949843973 549316001 684651707 483214995 249631509 58409493 781877734 808544568 646235724 276489714 519881589 65390196 325118146 407945297 525212606 292567200 82272422 516796259 877635030 185051999 591537641 195361645 74099550 869714282 892371196 272412880 236344504 545907026 780488419 11780848 618446787 941600270 118214759 939659005 219022617 33957115 352576392 788483017 727070954 937973681 166486000 253785864 686934308 257788835 169017043 604875329 706513077 635065721 712242902 248346507 771286470 33347235 868977779 374125854 94614033 612262862 812524210 912518936 225431847 540694129 826484362 81805237 689343393 543155152 678027161 502935425 383323556 795997842 598697566 527848435 793713521 597515055 493457679 573833678 955687442 94386247 295967710 883152788 560921229 294014048 232723401 949914995 177286837 432676670 302610290 477075894 903060031 494950283 547995933 628560144 861363732 66518002 773934450 508600203 74248461 593033309 537419410 342012817 305763007 838472223 746708911 990659873 770450481 928721824 362859728 865048905 283769050 635626240 807980586 401095160 277142023 454277197 170579231 477363140 310990224 804081848 518247549 233744707 226525538 994782092 869288129 140503772 316876917 740162389 899203001 648491752 546524302 611400751 156483292 791436575 119744813 838937417 402932349 606801356 899268536 22183143 907436330 289830868 880362658 311310635 533721215 398563331 131935797 627608568 581059010 608757177 566000321 935551699 852896907 413002204 569691883 1001284133 751735379 693849758 546578445 17211398 60355784 695033501 746277898 22902267 534828945 796688532 220908262 262943986 770943670 22126725 468247867 417717248 922042738 129567757 720006736 353842769 269296661 864316051 362090609 540366195 418871506 621607906 855597076 127960617 226435305 538853041 209704534 281456274 333809977 775148280 532917476 573782562 263364205 469307561 525561372 722812116 251494372 351580697 544378066 806242016 129535199 561857158 759975773 146840833 34123585 304643874 273753802 692705812 434657020 367002458 618791986 323877145 595671876 722332247 560665182 81543960 747858627 542960360 386238816 40086159 976692467 955984659 336884246 586444376 74410471 833028742 773521391 23848503 658179853 936436630 328873051 967845229 127871428 135703748 107315033 971549330 984394030 443294208 677789239 302081416 753367574 726913618 518510021 863243605 663986733 305264611 605816713 353685279 81501889 80317129 836752575 806951443 720112805 392338687 852793469 676323812 565344539 739961547 326127774 5072760 232522986 144339201 291940589 479014516 888303164 229907101 177593322 645477803 951418562 152232116 78144047 18550231 139745994 734519181 475744247 289526139 294192989 949784109 44794266 19925486 679131923 702434121 865348821 99369563 411479455 494762976 981709494 566427535 681823201 688030876 371461350 11017811 26039989 67745707 929109676 924532186 903860472 688125447 661658170 993531614 104416755 254321655 68877719 920855852 77327197 243368745 403651723 939461987 476684730 33624389 847924133 778730152 844412705 800437331 514205891 189390274 430268612 431139446 215846158 825944625 103333533 284824156 702747194 378056141 113438988 241248128 266940151 412397752 845443439 951343426 771612840 615686909 571690593 244382452 927999802 848515499 140662651 749201658 897915990 224775753 595070821 563801009 953829448 802379459 712243520 891709969 267828888 357572092 761906639 135515224 161852053 429352049 741572101 454546281 974035998 438609140 294399544 357804024 981320318 137544413 993358892 185907995 482510181 765094111 111794588 856138448 559064705 216369196 728383702 516272961 530211767 397036698 214366346 130023356 422055818 203047397 599514649 886494227 938988501 904642965 466177435 1622582 125873633 642129693 839462052 370126734 284736923 299792910 458175209 929998400 563726574 100518264 30734784 623800150 274263202 952293388 191138611 744977855 791225808 323041224 239295820 464690110 648876671 142108951 180422115 217280896 131679752 842832207 945706755 809830434 938468831 917460308 13012106 307120780 228336645 71667967 710463801 410794566 322123599 281779609 116326738 906389637 112537257 218312652 635933373 19712246 605854092 266405803 539835452 4580348 379231706 20894209 648667970 842367095 790972275 431555844 266197883 165770142 115340816 566205574 621033367 835330130 8930032 337046980 697017747 77941298 437913708 333220545 463451501 552718280 250574922 440428383 797010366 970858435 977117116 295156474 564879966 177994192 516081703 447959186 303206874 827997337 74379685 344369231 790218834 83034974 761647846 352463897 280467599 343327532 739006384 641422876 792725547 532883398 590987835 176507148 408553829 947713668 920186948 205968722 561692904 231809767 229128286 314881469 165281794 387376083 957257712 151587433 398630082 476460749 574719129 481561331 568508735 280309864 624208293 919191291 595408288 462558992 892286463 226356499 99973271 12017702 578057375 426699201 671180338 620385192 697835724 273240987 458901463 460711102 976198341 748648565 395357723 238816081 660985040 440008363 631734512 10764296 388366123 351207861 261755674 557327824 957446561 354595732 24179312 162339574 797155207 823270002 81573576 635275181 563048606 30845636 180225009 129262522 770245867 569984190 669591718 332979015 239365788 935675971 604501345 301169029 414086996 51815591 806909563 690346900 967605333 298334445 889063186 371442682 544051579 291391065 648934043 359720292 116092024 454319510 861344418 887644272 647678490 888357986 731300267 401863695 441270662 761197089 690766129 39018089 406217413 459248589 589554609 956990692 530368035 735294015 804364705 511935359 799975159 91267931 680816871 963294460 508835520 18404446 475232707 449309319 675465221 901002919 173075896 387998591 37103882 386315959 69866702 263109318 85631292 183466079 142352671 989267097 227166825 681264955 750761560 71417573 461077474 63127712 731314633 848494807 301850129 487706631 518608764 999461702 888686147 465750261 381061195 545404066 29949639 578529707 550028083 127341351 533722454 530090347 263812855 869081818 905748686 626484601 690073661 118786681 475881104 165800946 665427989 481865451 225807267 409549043 262721721 378526796 795322726 444572155 517746333 364847218 780247644 543247933 679871795 79755433 5505372 909751977 1871297 925212948 505655609 341041304 826766053 449071964 812340603 645972836 624440763 74201487 457355160 864272724 842630111 33933019 829915214 337978037 521014022 135131705 584122110 590929240 634764933 483203017 580204315 750988044 995094176 350178313 530573451 490872753 149903423 155577207 255574006 638672759 718301703 730121460 296011153 644181883 897061100 782803532 306367667 20314430 333049687 447034557 787261162 986598016 676447958 766277257 152287109 725581457 55472051 479915844 337538417 575043212 65496908 980498870 826122178 400699119 768227179 989465670 463023094 947315852 163237384 803462879 577091467 198397958 85694651 979462968 456142422 851612440 520317335 141953736 234297219 961318203 704542648 939726527 129376982 260184364 430733283 656928167 934798810 822165747 927937405 385002822 260694482 247479712 353845489 651472975 60913431 380327417 889834253 194549909 430983409 544758319 977717873 849930111 737091960 845158186 372377693 607826683 648017412 960004614 559714949 282219205 125767877 221473588 902540396 459864342 40036145 842054383 678208960 164300636 334418259 284965268 129379790 371555117 892683099 542805717 54004462 665557834 376545282 347796686 203585551 850414647 293182723 339278334 211586342 323052271 801743401 814741560 799339783 171179496 646867138 646048934 391438824 952614776 277050799 766418886 370241366 859986346 950143055 200767576 303505407 813857536 821149441 542419837 222645143 979367812 246090617 901434798 126771925 35192950 257397089 162828448 745364981 470230971 930102394 314035956 931759218 735359283 474687469 571576775 509006297 790288920 191928723 369172404 633627612 735338123 224072952 589248511 511100829 795415474 981588068 409662503 732140606 403162432 212104893 870717072 495957316 179018197 206993525 335036985 66048481 784712873 572535116 267881257 28337413 746549433 567402614 992638270 640730744 548569588 584455714 672920491 371611517 971367030 500659038 960329554 679674777 16909754 783152050 291885789 262021776 463894907 247320039 901979181 52345461 222614278 973270082 860487732 12081345 106796835 979058441 797218510 412248042 389453186 846929646 142106082 675135220 5287091 451390292 584394436 537052873 164042215 821307221 291271164 391607164 66881139 455120866 221636841 594052611 231451445 416143455 483322029 527686109 376423105 226248930 493197232 73395416 96519725 264837935 737430233 313147962 639406032 834544965 434171673 504501140 63051109 1626036 225884642 814926294 301153311 275329013 558700659 701012237 619451509 459835995 925549767 380278905 371557987 925526738 624112307 526193107 807426503 739867997 151229264 161759666 494271708 517604781 416462272 600325776 955436982 245183495 92966597 630126115 599017381 527736643 579430803 955998656 289296072 869893504 635975607 812940810 745416003 526784541 466021847 482024399 666573788 189298456 401565346 40334130 731062618 703372475 252017033 859696914 591647171 710493218 11926999 297083304 247882056 445830722 403724858 104765651 636609639 658947221 35635292 143192159 856509079 857050658 672327118 99521753 435356031 975494211 118469005 769981516 430485600 910908486 965894187 604252627 153230637 921898727 330249222 944895912 119533427 738326106 700481575 149184740 328558717 378169397 306707307 612241628 497389584 675550303 881170070 554039631 531379624 474962623 570663827 725794911 762639598 377968964 516649301 776018520 851120099 804194151 405120222 630880686 211733555 92798767 380218899 300712136 882799774 237780822 764057897 261105420 73926829 908153675 52533483 329915882 288697482 385348225 189183025 72288696 162425950 653495389 613483073 463623328 271730694 812269952 940309525 173827030 146130043 105634233 700573970 817372936 607905313 405787696 11184840 414942222 195132589 702267338 968972616 24114848 165898101 570648981 635322312 983688510 890575506 480711107 270264168 993547412 786232851 383983402 418842259 778784094 74677514 882997236 958679224 319869456 419133581 250718848 368799947 928304448 886342746 581923146 185277413 42859497 447930383 963363154 21709585 321474055 648804083 443590053 303473084 550492874 801336968 675436608 674479371 481735001 653653803 837265772 877689897 762049133 642541790 162483113 666705666 217828155 40646459 505130550 217003485 294207241 20430982 544033752 36170099 248232002 343805089 658723701 411200183 859740361 523307938 420757213 707071710 935163806 924297059 722188079 23180663 750411495 758900661 405199666 262028027 57981516 296863466 914586115 927094483 134596478 888599177 49121385 1000781584 511426429 575384839 628209754 343315948 513254462 670039327 565011033 397616242 148720535 959136178 977306074 388204329 698428452 430000571 313800786 17177619 247178376 722282785 679205133 728855236 295487311 472215619 257744511 449022926 340628713 937385768 73622904 316410871 38045842 930299639 417867879 382733124 746770919 453362626 911506406 987868761 330062792 490084190 929497176 420439546 668305068 284397093 795871652 266190955 350535611 560074581 419372300 123987154 177464506 807802651 109956882 894733485 473479080 618443347 306710945 253494419 809040810 675646689 550043152 859040816 481851389 442961813 53154008 990271479 648459539 903848422 640933476 726813394 397005235 813498065 392425741 61321853 217213626 209198846 339547475 108175468 210036808 923885718 57334644 900419100 419921103 358825351 998936921 15739909 254348080 575026693 15862895 993267915 788422912 792598501 471095995 790593340 554324283 459706102 513217759 990536604 592149210 509662158 664751645 461529856 370177678 871265859 823803530 122796105 413502787 447288996 22815373 546794285 927696280 258563094 380532471 266648441 317050905 1000774358 295648976 435447097 619761502 718295496 147352182 425189159 555205066 504295407 646135909 304175252 920044808 463945354 572211292 367789662 312009496 519637220 679970188 747748538 918732345 518746349 963070160 670236970 432986129 287263326 491714074 938302226 816189885 725205578 553141654 835727100 118787583 642555173 483737700 156718366 340817368 689660018 706282991 892618467 235836644 393456339 433961490 192130387 635262122 623682813 693244538 183132223 862766107 103095892 308237148 401455947 271149110 845563978 231300629 197457352 950890334 123366168 568361231 872673995 125664577 473002648 643335222 308922638 393704327 721923819 897351993 152681224 659277513 309640153 815274843 371732831 929004551 832328063 587897444 351940244 64076222 767674393 399950024 602458527 657389446 274996520 970354367 655592416 243330063 604476731 879150958 829869185 184193090 573847824 350103557 693681072 124004846 6756807 384320421 133949193 358619292 925352291 845195736 548308114 391340217 205881751 787333968 945739605 50604673 798419474 423220567 126548485 521886858 93627455 265561678 607458427 467318082 26924432 69785880 248156575 814065726 533198451 202235298 452013298 200043985 117555917 379333126 682676297 674179423 497568763 581926754 194359407 346050153 600956418 158814604 129563973 301332200 793292583 84322484 995200572 661967266 879760261 913303243 143544240 457974506 723491018 241851781 357928826 640243907 767614301 650672765 620109994 384519769 831724560 470634753 882482859 685825746 435326800 34703565 872996293 687518498 142287415 822065930 239577237 339899175 561432684 895837072 508504119 525581968 83226272 268493727 938235981 309121476 360345397 142353971 719210710 761973841 362292277 110517363 547563807 948944961 936796827 418372933 995287441 569264092 867892053 635312394 923524096 194740558 90547718 607800290 978403918 619994354 484481814 727753830 499464542 388731236 391401743 773216184 125215322 831829954 825314093 535444096 479546436 572851912 102857187 936228849 911274992 659133662 454599279 776399503 883238936 169066007 949288764 582362609 472676554 249368255 404075487 310208645 69700769 261278590 165634345 646553704 749973343 905403136 480383775 246690519 324572616 681288882 306771270 25982624 38498027 832368628 289260455 730468364 911890777 531540253 317477910 659780791 110527651 962940670 572533717 876447135 580573769 390834710 498375403 690186609 121871917 367926533 805897250 774458520 628832235 563319831 670928668 489189733 437056338 880054829 928241876 987908382 641147534 678608398 349204292 192910142 543324561 703736354 461105073 482630782 503495332 424114944 142822890 527206825 633271421 956739220 305464075 780048814 862201695 991984905 485284659 514312831 197691113 368724193 690878058 717510434 254309450 79968945 971935371 965393754 360855748 516472239 395180851 956869550 808685578 788781182 439186446 360977334 922353576 38599461 85887054 154748016 921696084 674021842 694133102 781457478 871828026 751059742 945709978 420603281 32033471 316939965 401004039 32098229 748450472 323492015 971227686 15192782 881806860 791939627 748896054 7145951 43212736 119097978 520018507 268095412 689577382 303422798 561729822 389648344 341163 741576129 264240394 458506638 160917980 687697991 443539885 639017357 923443099 828609974 569884526 167822548 751868758 220424011 908859454 150450248 353664585 227172227 856902695 162783 108946094 609204720 396952321 895290597 392481058 763635867 422680652 104710964 400606032 297608896 767668416 825191553 519102265 499746266 132622017 717468473 734673473 987459445 101122130 591908971 531589456 977135288 396177808 860604153 536579969 804336094 827825168 709802535 657663299 24947090 840181820 61538899 925007573 469672049 30101091 994766311 598303368 714335886 337966328 249607128 451696991 805580258 669179033 980566962 648483258 72189787 457901575 342456844 73484142 985831177 949825320 705717507 113044266 923223845 344591663 499292395 763471558 398531559 103213729 368538253 933595149 896992455 444509794 493716641 642336734 151086672 553626224 610009163 274691577 186885257 421684263 79824115 778548548 387982052 922542362 332060383 898761386 878358232 953802793 164698072 436852198 983585536 811299100 760101672 253993707 370946714 525802485 834481957 297898128 219810701 950912395 402864667 207750656 606884811 666065475 138804487 294091310 989028640 603868000 303912359 924085796 535410517 944268925 156523753 735764779 7065550 319804932 735206007 894795489 909854404 266100390 252143959 724182273 9166385 879847425 679983948 65701380 392123766 230375277 446620008 354510357 243474483 958299505 398409774 652009983 334373586 806517558 191190590 128811496 972192226 839744880 915917742 63359762 479108149 17911343 377251099 215414291 121483729 709386636 746630861 643309940 438115820 442077465 695608071 383949827 553873677 6473458 34205133 784259200 229297703 267746644 801936089 575454872 860936963 731197398 359462553 7192977 172536873 826025104 944894756 486769143 129829410 241641540 742906584 824712221 80469888 844662630 999602295 727011099 899380213 528205243 311118517 311060092 789811205 761854401 239977637 682456626 65036301 62288667 236545069 27161917 196708330 162937724 676925289 557190703 215890848 585418829 519433181 366567310 527083230 66750737 392999296 252542586 85283216 64864188 75785795 776986842 269791186 728864528 379849764 778418545 869893916 857214230 444475904 259621746 624237541 618106046 155207896 819753460 211125240 8619962 518253780 297066372 219351766 384324057 114646895 447199051 924285202 420960683 838545153 735294069 953214968 630198251 171222904 343945979 602475376 54922804 847527548 446241544 900281979 15927245 858140724 279679087 259058513 99763810 772416077 354397401 36167188 864328567 777967246 448405538 51918855 283700542 556080021 710724064 987045792 261133090 966554306 915953021 922031156 806458549 163014363 204544595 838250832 223411738 743758461 55664251 729533607 576032211 579485771 595557871 323488826 593414024 375475031 39826901 431466777 522984810 57505211 80945640 808222099 712516713 855719244 729376132 563275389 970800982 613437013 266477748 581426965 487811636 265221627 607773887 310670483 770299278 709598176 788305950 516922330 134923167 204836875 80706623 288160143 719129168 342711879 697993153 121685301 718782918 595444112 892686132 801294122 490302399 991898826 224731820 551945729 345312056 105351677 908338087 191410133 240877356 172110360 269823610 628090598 8368768 343629086 629452947 568473002 323278505 812353459 451079732 770384522 372523851 734698378 601696526 242403461 306375254 162924680 181639404 255051658 526740535 955213069 505508687 510730326 522401687 981697517 1001776723 291604863 182060243 106898854 805354318 866940749 876234038 593189144 96091987 121938911 872607612 363515910 247257810 382569546 532208450 680911424 625653270 136980177 491048185 188719256 263085401 367266790 391345199 769554815 510463038 134925688 145687050 183305743 28716004 758048500 152426153 852045414 550673761 998730353 822318488 732840905 176257229 656663013 531054952 174609095 791679185 1468008 634511360 588192312 125534761 522606853 24057970 899272738 280405290 603841283 274631651 636261308 245899519 386164442 151579293 721606149 178075142 542674083 196234963 18790356 865390498 141837884 128302266 412822099 872256026 57638299 12353441 395697563 755113063 310726657 302041844 721500853 789411087 762015573 258999472 754889472 361649619 705125828 63257002 484445863 380627833 118345967 96453443 878500229 155626504 778952228 460745001 349617308 705783945 586561454 328772780 913808793 5418904 950500854 687244020 672678622 186222638 766879634 45353074 68648456 6847452 109677346 437656155 705953656 454522015 260462731 431710893 629984717 298298152 855930021 977131442 64393701 392615335 488216048 478930601 641996123 647682092 67500512 742934397 603741027 301779064 953499851 519817158 106380252 628727601 127453746 1000546068 852677891 863896763 959069599 959861935 864686066 397905599 81868444 690452850 295567767 927431824 753774950 264992695 848480508 514962517 724230992 231746506 922256641 116986647 445522983 861595838 417502287 831109946 177785932 243249153 935730750 570463258 108877007 972321241 52661777 575702179 278639837 88913927 956482623 1448692 466381436 881527798 830105769 266661228 460806785 529700615 276655263 180930892 643057208 827137582 901671076 804044175 251307416 365654420 704406926 512896697 181518603 607061643 583137088 311185974 72315445 310480245 725437653 635405078 733520163 990183012 28177970 502786642 630950966 975627522 252849218 788377411 723062037 821908944 366863290 960218336 595510080 937652756 277030352 819624780 783902274 122864757 229126632 870910172 165923904 874682789 754802889 785228609 980029481 526076508 158164578 337964276 310975212 686190646 256370446 511916390 454002649 892983838 858977036 66190271 865894167 124253629 397800184 430470769 625765304 29775832 423711660 143043716 225424678 697512490 605388257 423848057 579170602 670525731 420104600 857649028 361002035 166400094 503167116 90271948 296889869 588195738 216915905 339593128 169590665 569946034 82896651 924451079 38650572 50672498 3952102 590965693 241146703 80530900 841301708 157722399 816662048 356909175 141851512 396055384 935567244 20909777 61489468 573034676 299300972 483183524 351578869 796621229 458064405 208463753 632548353 923110992 313764992 403538762 956066042 855391258 542619135 303915600 385893133 162937915 118633670 60416792 558620633 991856066 571075031 200579537 247065471 14342308 952531219 210395052 935149699 606248816 491106221 99669088 819167754 424496805 1001838222 15774070 148626135 564026801 404296941 732022189 750226918 272092844 100874074 326957785 781393406 545089409 599426988 466293783 272656598 268829856 622347103 155609651 172127918 116361333 277487291 525520828 575574817 524671691 52419346 570846023 760346053 670832619 722344031 895178756 662590759 817981666 785806338 352367203 268076762 82213019 434128188 743880829 237597647 552909993 310321996 847241261 771978158 726773973 513286686 64607500 248020298 954764179 494115632 885712989 325741669 693128445 397044987 962035565 283818624 140743488 31505744 725541115 109891644 771658440 240418648 168668397 724403263 38725717 285089874 448145322 849170623 421718119 734025321 532419971 731554837 365377248 432225634 422896226 722045442 226328518 725785754 601640268 270265716 345780610 584012734 870769954 223324920 48920119 282332120 421474468 125548149 569600078 631898612 454344710 503953999 34641288 705568209 91557839 510423717 808310935 919053406 60287146 732918659 214056690 324378995 261271411 31232219 693512809 96878524 775950005 709900106 80098721 505118117 99793915 532756361 460888005 693681063 170565724 405496924 546482580 205086715 17189037 224291096 656702916 323350917 283008522 868487387 57613852 627615641 726414338 936249632 988742842 799802833 630607799 566768651 861021180 934332665 207797832 394366567 409609904 775182566 203380391 81714624 647811000 646005990 429962631 557732946 319252493 348301488 703977556 857331885 77013894 406687577 639063681 479350172 629355653 549049132 499676977 238222299 788826264 133162498 79687411 883168774 712670764 437111812 529040509 564675251 774499606 5251989 326075529 281181606 605440826 93760530 722157780 535797715 445380654 777906902 405826658 445475962 338506040 17838936 689405508 689171714 93920848 643845492 100059713 41125169 936311619 631638475 438373252 167186795 720620358 380696829 524746425 449474248 569723297 641011478 240470626 273812572 81576167 548355362 274972327 824437736 192686315 864332490 665494878 218446048 650458634 757010173 207663535 268594429 974358042 487982962 776088315 689348380 171529802 732827767 292468964 518317987 672985098 762311910 806925438 752561476 1001328922 459285124 328540789 749859075 448552494 926532534 182342298 491337162 241644848 196413965 337072313 495375462 177743701 965497816 221432610 53133462 959319378 21363170 226527602 122897457 849367942 382722391 586852643 755842743 158363331 686003782 897781910 528607833 795662778 100883315 778519181 955079302 380401102 881980478 891417557 112221414 180796777 852483273 965778415 443320676 578078081 996662270 93186883 199183742 642692900 21951542 442851813 290140562 214816166 493460152 404475275 36824049 308648209 607950381 543331928 273900430 719974433 961005842 185413943 843396415 254470215 249778138 209883973 781897655 900152347 211662751 579853963 68842306 767238945 340481721 894532473 784050836 838908272 208496512 443625113 667252549 242015096 272833541 439394278 740343866 546016773 413011554 877005782 165522485 501415158 302604926 113715393 381842577 611508892 58019458 902021368 258273952 617900452 993263924 123633209 811015905 863853245 75970636 111767559 842653231 733357507 119833408 287760497 449293924 588739439 318341798 959317470 134109653 665222593 231166260 72806336 957687376 354352210 824473768 28812190 898622863 836875786 769069634 936373255 117029331 505713481 105390783 600371912 164724595 258431429 697060395 904254718 982027564 886429466 416730348 766476071 885258251 85536958 982661332 128384211 232177405 950554862 316015607 936442780 808157925 463772358 981769806 411794771 714345327 214243302 791681900 878187167 771443369 345495343 584246330 467832154 411268515 351846659 974266142 432288985 782147332 873700635 208425242 293059406 675600699 947912360 839800513 551801506 306714560 18674958 435614411 815482762 850882671 302408339 64633512 211026224 24828460 188021189 549398015 987797747 881157462 662512742 268295670 778739424 719361078 386933975 163357555 668702310 723813521 710984918 163698656 301649231 283635179 363100442 762137419 107123958 802809954 315381088 745532776 249003838 373741610 291305764 218340307 896517309 311919846 444628035 580063050 568750793 627460931 448864877 491488109 163809122 780864309 328366878 597558607 971374280 220213107 275177456 537093939 533140181 31630823 486171878 628797433 830726081 289277494 611638065 453368098 658395897 717448379 730567868 686254677 474443759 407016168 255276112 190887998 815080227 474189262 533432433 913753589 122173171 640985270 136281768 231708353 466133175 157766268 425145373 189474114 939515932 64850333 369521075 465559016 363382610 202925602 563884164 1000691427 155629212 166698523 381206898 601595146 983129132 978097249 12330059 906369884 857122578 8364340 260724523 965887853 261904877 793847121 363944470 466322638 542563972 989857448 280067720 834667270 918668978 835822634 283589747 943170649 63975715 653510278 517457141 291007808 113798689 846021381 656092184 479415157 171465786 784661939 490543756 734605294 754271783 284082624 64277760 309462991 644600393 490653790 283414634 526276942 882824872 15627639 319581581 827543362 283320956 181806085 849865852 880779343 577095278 540658021 994800461 116189008 958964644 872848048 309455285 148412932 737106621 568021621 54610682 514894795 181060652 739986950 287291200 346413794 880964644 725375290 445062959 529733224 762607998 672222548 953158146 108338015 318096687 751310272 296116987 78421642 124874689 761590038 878351045 837275594 810059847 462668904 721385616 136561770 259263301 107832587 145185037 56856508 915117520 257579918 53923224 947556696 920750467 687335288 297368608 556358794 647711622 436692486 876475211 799726487 764008786 720812467 358063759 874060789 840994887 992642692 110594857 400919741 814065910 717772203 725516889 88285380 361706780 960908952 150370172 816095742 610552940 381922732 515223804 267836576 586143092 264610757 932745864 702727040 180042655 758392505 782134278 644467949 445529222 938536441 590970801 639566442 431740225 593688145 348482692 83532339 686111723 796824333 231365519 529450063 745892969 962044637 190851001 705386072 306413525 512115960 173789993 593123777 325843403 534820206 924561386 563121790 453399331 489664273 596654313 279030934 462048667 991194056 388199494 131753968 472722370 706420900 274288602 234559643 992239376 933093514 459342730 44984430 23649414 206339 776752106 62474552 824044124 928507820 967890997 941365625 485324198 549808136 105422099 195866512 475768724 15296226 384211899 635219724 948601020 832492214 544171641 367350357 573282120 756888032 282327380 936990562 188995899 74837426 138924951 47041421 516915586 484105442 287950329 658176650 119718439 321849897 489648708 2675114 249764009 852698685 681404777 50788458 367411616 258217072 428139082 493057138 405497590 812134958 767395977 13430096 507944729 58710667 726773522 844964766 137805535 530707232 92321038 817265361 334048572 757951781 49181137 29050789 247148389 823034868 121201989 759915728 704002900 687893461 506726342 482637718 268497556 983307286 340025707 782692287 587398253 406291781 323109983 367992321 883398864 848452297 243489263 951889724 358201170 148486119 791939732 260848856 805511033 872799972 36071217 375047578 935165912 633287735 191302700 974689676 24652690 531433346 582486927 788800261 252560063 934232863 456819977 563820690 829481097 903478395 938976088 571023463 691641320 64427732 729126676 956212781 559783574 675444760 78685364 800133720 92799692 556669325 329430669 506873666 349621737 507623617 278615363 658666857 500801700 516630446 696695229 43735601 455871957 889820179 560521569 980653359 581706135 42225019 473441896 271709202 606833576 339519242 334900405 980470527 277428031 635785130 370310792 85672598 389591084 5714077 970225498 701430688 40770643 552700079 960105674 631611119 844952866 356009925 58944174 704728530 588833662 319958621 769587137 971805344 159455273 72664460 907262680 254677238 800461905 951001047 530617254 734407017 64529923 620972523 933373548 356862325 527554242 7769299 209655141 847842002 597570990 274786771 443489505 999189745 638411487 625940487 252173049 358375921 14274687 412022330 63150910 914054720 871620037 634468095 715905608 432920638 8577567 155202692 716745122 718756591 767497446 891822034 895123918 159119872 755329685 54316137 552947329 176695888 495917518 966241523 577220269 246467724 343452746 231441092 456978654 549968555 923401527 75994642 176601089 352213104 783697158 62961703 982758098 81008104 346999448 444344190 211553392 489844460 6320674 721968988 480030329 335018298 877222559 554004761 631096460 464265886 204935612 855990065 178354137 643976998 985073948 293427365 677603397 913349592 969342374 550136557 75662303 3118666 357632713 229797305 785391180 821137780 993909556 460988974 241354976 929991242 421824341 609091910 192489433 965888179 679433121 529622503 82028609 582508893 912203100 985380744 422856805 104559671 751802774 35121885 195869902 941153766 697173318 121353314 886236969 307012347 186295253 653508227 711026015 699110193 745999863 511394481 688904136 484357756 994386174 747813290 223288974 904072374 885345200 218061078 83536217 772662336 953028977 579146232 314383830 815927862 417540574 789429988 794350047 672389524 596702223 401508994 401284812 182043500 845830925 753855705 262289264 908054017 684892585 424996943 160864511 90059596 717127043 58504398 122890014 801148453 47561209 427102764 797615119 895380370 727485362 831284894 565721447 169284745 11500637 238033662 128223640 155706569 815364729 692985044 847723907 30176771 916358686 151147549 835378744 441452361 163939796 487473472 486691962 112526211 466326178 626343550 685599346 740507523 554912289 744578925 220312201 998735158 540107598 700198645 946215441 941548120 191001273 134442822 450837739 457894957 162489426 736992012 736394166 507352106 562395769 807160812 81976815 771763434 322815737 971245008 820510646 308126412 89254966 834740518 724670121 850883394 50772434 298392566 546278788 647809020 309617548 555233523 570519644 507727008 512819763 409253664 799192401 965153539 746913510 331667026 982050074 154084174 583399844 267485857 215698260 883551057 960400168 586627895 681960655 921059357 916960096 696644653 525769744 530508180 380957455 866272695 706735466 497183892 711294363 943700977 722960096 579415287 698872539 554004271 707254046 158194552 114154469 886093566 937375877 356405271 263905625 133248140 902692736 857382422 592025423 813233934 704809834 35962528 150293802 970913031 456436351 86170648 575724175 629324111 69593508 573326491 716484077 866236554 1368303 90184127 659950072 950526171 654860779 630745557 61340262 686382116 785066004 858551633 750338931 400840192 60163752 348781531 491934669 393073410 172677432 730081996 673668925 345781389 378868952 365333116 254509787 329990204 581126938 548431012 604305591 808482224 794073048 217778590 370132367 787623662 432037592 461077630 233290745 881445306 185315838 809219971 275581239 449991961 530615886 180489146 57859818 132166091 858942327 439107583 924834271 106461586 606536463 833811234 460091610 279157347 8749887 657310578 295385266 341585165 927896461 363188342 147597352 149034773 33736027 610873818 618819038 587724914 666650919 727478681 781874866 971427109 544329069 936079806 519341480 905525447 965613676 585262955 632129845 515728578 450223470 953098253 727878450 357066887 461465452 757832401 890248942 508137402 425354927 573325336 171660298 854021789 421279957 739139262 389367515 657864365 731163380 75774313 584762201 181294593 75116877 879072860 543098842 803253594 85975930 702425447 302512670 688267927 826584615 50199866 918999251 695353838 908945318 920685343 460642702 365857493 277660059 855228064 33613312 573266427 670411261 594691092 354283656 417748765 820382026 593476379 577158085 967249964 717434964 912563636 983520752 737143975 317078934 81817532 102111072 858026059 432638966 851228456 332706418 376176960 406376637 386408949 47757917 208716171 630422935 59079815 871398970 750024904 485175973 328399448 740575494 677576423 424674453 132253487 328731505 998178896 650187223 462359813 554325417 988298266 38887728 411741680 9864339 520992926 346882205 211538785 681787618 536232818 435738080 108762210 838960997 717649619 257649544 41544318 177962231 324321572 5955887 733063437 341668075 550999556 865975491 868451167 100567088 977740183 422720690 289313552 599462452 505743024 424608731 330112241 317566643 450169063 119594452 97510551 448281243 97410359 794878389 607015137 194552824 784014027 858499331 659073987 183964137 727793623 173980680 774341609 14221329 637200396 665485511 544635472 849756147 24621678 869074230 654259254 154481241 965149828 176483470 407558035 439188425 615905986 358734660 767191697 724183370 11739687 628768914 826007665 263072972 81326358 785686455 904804006 708564247 106140471 790897201 40106124 119442601 394151470 611986468 115241205 193977693 646195819 504882953 61338187 357864373 171097813 73092232 170570013 796954318 435913206 652965969 371541033 987417233 240688926 28071000 813691497 1001718341 713657710 699099336 327011648 217962867 687000981 981007120 395092761 961159245 571315033 220493035 551961706 338040874 219387220 252920294 536841144 175568828 286449525 584613355 926397442 761117041 248299380 463636827 945144945 465382854 214534788 106617665 4619070 973592337 212524069 57985756 765960271 614339050 213449642 238226835 495008239 789062688 964027373 165405980 724901526 501919743 488459149 172332999 271370234 80543758 980808592 459725884 983115883 445637378 115505232 195219040 706704629 58250176 483868737 456017735 774180643 103568772 569868600 455200175 499923478 684798474 197640586 559582959 458364561 832081090 168069778 500597925 328777640 939703987 258139326 159778941 784679282 514601442 723875476 408855304 719329755 626980942 489599976 719562235 996010859 611868340 522117787 799333830 950553888 28112161 842419719 625207696 750386036 859414318 384552033 751067128 237769979 885080739 74041790 769252340 241602521 436668026 439842283 266386015 849593023 431834980 899047580 200220373 467070084 971042255 892277825 40935389 251138702 728490192 960088347 617665432 886646909 66862461 138128306 176562188 58412359 75350949 194724953 922283325 883189540 399359381 486932038 949523761 602743322 15261706 823034960 152817415 707764103 448693708 69919121 787642472 597979930 898280823 690298381 287275928 757402586 170497739 135059943 421610820 494542529 151366073 326423642 299772792 592256749 752543129 465947938 520033184 487583360 165260547 702767265 703889581 751276473 876476384 580869222 808283798 662849004 395584956 860871134 961909890 840284079 713234917 115163081 111615551 87797098 462619742 124223366 453484488 779086613 773354321 775042267 690558368 320563837 124900641 401095637 933783309 247340285 415613299 190797220 316116853 813826836 764654689 956919511 901398492 458622045 456287849 146107669 340872029 53380355 921991136 843533657 453807492 66384153 173425060 615040737 530118019 591935315 45710674 738749738 712227474 26554103 848817640 38280352 154538528 798680562 922393701 564623290 649335095 728095652 465130611 896120873 532149294 168611383 682965717 828679499 845227002 809338890 358228642 720037155 1000717197 700533566 753411931 305796237 294749957 531406859 183115804 8812901 133002805 350740206 787979815 656516109 467579761 303784709 80684626 424108605 333068421 115675857 801794664 429524062 217453465 413551723 487538016 483240607 966715165 507707164 884845947 758869106 59168747 584339127 224764334 577267182 8565605 317417555 470503283 599274305 222703649 795508344 313410020 972411457 629247114 624603821 356762669 737731974 833364321 103964522 237992703 213300170 544385909 662904302 377829321 444938064 291455447 231588218 869630476 574711122 167379697 596268967 349700341 548174029 910115773 643019375 140032734 311442438 8871274 966715488 477224578 399330060 579407460 706972094 23501326 884659025 267259286 915264701 881974030 744070813 913793604 302386654 937143058 888470959 8120934 95812259 323018404 305809133 255271926 989247895 523166186 442501791 516639444 626416361 573512014 696410236 385978544 64187478 768129705 808135652 65963337 490775983 470441263 664753798 605768138 20570806 990987738 317028478 596562902 422100407 474012653 464595977 69047786 224202571 753386613 890517923 183858092 428062721 68337806 833818421 640065602 451118707 1029372 890285691 800843802 546587493 510395449 130733941 66612424 218872248 510007694 9475117 588205826 999292187 615865795 759830713 204540434 315991424 499196812 865751787 180856210 365290062 761425914 226179093 763618364 922623355 729430256 553017046 487307794 347965812 412111278 2811383 903114883 947146477 712562861 930080214 155058196 130029763 863181700 983633768 309397801 575818317 384222363 288884878 536415745 69428588 449792269 819462269 430581645 844401332 340655631 918662246 584512439 585745762 590549402 133956419 895188780 147434336 574881442 613241841 834958954 266165676 806776607 502950861 266375977 272809818 524604296 331572857 635412059 134070039 206770256 79411609 139646266 288363085 289580652 823197813 129450965 900625730 347797248 565368573 870603149 229851027 28389688 689190125 564560685 132130075 925692562 424078535 476090429 762736 318216317 91563368 984017336 422748913 828095105 330243743 483352227 926157683 587997782 680962850 871964279 71138917 402472712 936976616 285337279 56421253 655091217 990397918 740268483 694013317 684275025 592891007 76052961 892852529 385735845 502225637 52099923 402972979 529589367 626386411 981747358 609986346 809487536 579362903 919000539 57288664 665727333 758149373 930967141 974874689 303943700 903887563 242708037 229697181 603262658 582646167 25273080 230116707 411173686 345576272 413522276 797203703 179172610 562452095 399363433 12689047 50472110 550520505 798273883 944718247 589513825 482524143 870552028 908254052 44810479 605115741 285162579 118006146 285913431 156457459 439729271 508752466 144813170 489096848 200588478 407301276 413204202 956336496 714788580 759779962 148206176 297350076 242230366 262760087 980373162 291580948 754973807 927730743 511900628 183042625 411244460 732167547 179999016 44760853 532825306 547555889 454535025 638269120 725207671 267515331 401703755 42397168 524669529 592725468 585573250 36955478 721116168 90031005 103209410 570172540 704419238 548849718 583370903 399842264 786661397 621587104 632960601 562820876 465412987 577005148 133993373 585632054 90101736 930898212 414656404 849194818 455320810 665508074 536539853 796146491 428660222 543816403 897410126 699017535 106769608 502711783 121369026 733419741 172764944 331081271 183036606 359384789 347213694 207238412 661133288 89108934 648854733 330260705 780201501 282731670 821559875 237289981 560983811 34834068 193646283 475332903 946067286 154855369 365084048 206510737 974443372 598968062 891938330 904012074 632572058 838058465 743787561 363130444 845709107 577208774 822668656 921560925 360891701 22919753 763036975 454889973 873670184 596282624 59737821 142921738 150538650 283367439 277453236 951219886 610385999 32747178 895359886 667418064 460126147 942256528 236293583 57616157 921177582 844484301 900559591 236619738 988164249 426613620 305409692 381803808 251487838 637043058 287828719 155820205 256453495 332062875 530290728 687545424 585241979 260690837 927241615 294567293 30725262 92362865 312954880 924968593 685705808 38792978 206114493 911804898 108179768 907718173 874399914 703508993 215554743 151136865 83216935 269247702 868958985 835160156 243760940 455627380 22647371 259584609 301974639 471553608 736254477 42863466 528791018 986202902 766379615 281835988 760389846 587633006 890944184 459658163 797562339 204187432 832762170 151627570 670337092 941749134 544953322 963496823 149044997 753970295 522904978 592086442 558190259 698393125 126268342 179780100 478387967 938487406 54792025 241213089 931201160 601269042 959458002 147746627 139534734 712301989 320659751 139940630 369569902 248818705 659054751 663374852 679895385 642045680 228728516 548704186 31749389 84665961 174178722 404452078 317731328 805639604 34654570 963588068 324497628 919956023 785482159 769495627 372301090 471815798 969827984 881250184 239220781 70018473 338206335 809811105 157093913 887394929 987055234 754633822 715511871 388622436 15199284 330846464 38848322 15870821 994505229 848363190 794971788 444107243 267608105 800139472 704048008 111430731 133636152 522734972 153468113 641999809 815985031 747928136 517602840 235922337 503265021 486706601 940415898 446757169 976157320 970726187 642177301 260706850 113620836 279286542 38404493 20978710 876634117 209303557 235031897 712071690 538940554 824545037 975788335 702246703 253112646 270663559 764704439 519937158 92907996 330473773 120292583 572800573 718602570 133467543 700355017 716246932 117927196 386926777 4316820 892876267 889451434 316129005 437903764 24490697 882270935 305060072 738314601 962238114 678654489 649625214 770397739 26451397 289902118 234492825 536455889 759432512 699937795 886274083 767958321 685027147 1001232338 520334641 325243286 990884146 816329410 60692518 352729516 424531923 522711837 338279003 870399155 94214690 6425874 656313189 432766043 507337099 388984652 704570952 627619290 775271483 242084120 943331195 794514692 941309361 347386370 537336935 513016862 366208594 516200679 729453509 908997150 697210871 623785206 579314135 609320975 614014811 19375796 139027116 619290045 319288423 458699246 622709353 944574623 21332537 191559235 105216203 663690485 562682106 788394494 235515201 217094834 808579198 53980001 760568023 698876345 993283231 88275520 624897152 23204631 987034463 212791956 866635157 132179761 85671826 565057486 315166112 385002406 410662134 992138727 624603469 137486962 442232689 497405390 281380079 298208092 830766484 632934334 858005439 205813408 756256880 504204657 273151063 1000444792 530323958 68658696 246173797 289292756 990960459 608708275 422444561 620273037 304710075 822072005 925538683 692028662 318528138 150732975 168683814 10208235 836263693 189722657 736436316 199428994 979795960 972245594 621617906 405454407 985143129 528474251 552173483 499547712 633405120 950428598 626485317 613306707 962694044 845638190 526765371 543270091 982022199 232948712 407046592 738209557 469359094 220922725 206773125 779069593 876489909 439800931 732251938 90237349 524681071 205044077 111242173 632610326 851597604 924806557 326739279 300543188 439907388 75171933 540937896 515097014 863398439 507185197 210517750 104507698 512983488 634550996 274691895 478132648 855998852 413403979 695648344 83116200 787289598 105867011 827938469 123079075 122320669 351084922 796576649 75664093 418964711 153581558 402409154 248226745 286738497 254190717 778687055 493851240 354731667 870170670 4831529 696266891 276053809 390471542 922501751 263316400 650835147 55349021 933626129 408741810 885970295 694960112 284817166 84177413 798577660 207015187 404372771 75605508 454613231 431917436 602272507 670181168 677273661 287182755 102411346 694555634 592351463 278898301 833285224 188111567 321638135 342183420 75299455 268902369 85481286 567042361 958721165 133373243 336178867 885497228 522439280 602954382 682276435 886324286 699546520 39751854 856537384 66680145 766681218 932339094 135702911 731571058 62589793 549693970 834465760 354007150 182865393 819548421 598324480 97396033 744062338 548678559 256054875 627501561 367393771 671308360 327097003 518946681 253575602 950197790 498222433 154992266 38969703 415006715 69112060 725248763 672843216 538852589 592736052 853757567 958716261 62532242 556112250 845775840 949722852 42845726 435583022 810430940 810920142 159138469 570509942 503993983 35441501 6463439 21927753 325395658 260258492 716825214 387543054 380567835 72321114 228688175 474352086 741568605 455632613 628024334 160038780 116519127 20528314 981087290 366996611 864383516 183868835 193122495 568108853 523602765 547892417 875904349 1745445 811958667 365811453 283639671 665019039 55664687 805805264 429820419 45672162 654739755 968905377 364291601 75007646 716428548 537319626 438301586 386158370 150600680 571775168 378586982 846960617 686789993 77626393 347360466 220555502 85175477 827480938 714390692 50923509 787351031 850251630 413619975 219054751 898840463 234265845 921193146 781973065 905301300 377969516 646398954 801938843 676013741 841003556 551320235 932007067 390939430 566229210 818522996 183087049 694785522 650755462 852537267 761525442 835114647 692991246 692183303 338088805 827025975 864912629 597658343 517745532 320211607 519972269 274736047 154096369 332956166 366748934 88897341 980080093 943670056 311990597 529082553 697236858 351083266 247090409 688896193 734613542 500125107 387109083 829391354 610863775 7759460 485206462 398707811 823702466 86007008 183668120 184180823 420726937 628148827 987019600 691474572 92778851 194394005 753332176 839098925 13769976 648595533 346450595 203673592 265615187 805663752 109381257 260996472 548365884 756045077 991232185 650849252 8859873 690526322 750893267 436404178 828348252 422352689 939774 376548728 800861732 343901418 309876013 13980715 391180634 969582641 679550303 675941255 343828533 258875912 930184076 83681778 630744371 659735931 801172174 105297996 392890321 731243285 951882692 734508206 855101937 453017465 692695381 871617175 172740790 46139443 231694044 722565224 149972439 82459106 700318551 988799287 226347687 176807516 645809902 263807963 381926477 313451473 27455022 686894581 827713783 423085832 552212494 287540487 433910328 844626220 700294171 500134210 208927103 299755377 514964835 911082591 582336355 222563490 347979127 990707577 67656417 937730890 310935916 804782674 130610025 528828321 922504544 221943940 12150440 72638574 125844796 116607705 691786811 866520732 408303624 276050535 308431453 348811696 460460464 182139469 354845363 490584746 131533724 332105499 957970629 653427194 845530191 420530206 98921572 73226754 474066479 441579990 145381547 591106317 569668693 204975530 538458373 450488104 253611183 609378068 418582745 947509544 687981813 958938197 339456258 975635732 866351467 728607189 169382838 476330414 852796690 581205927 423141221 227213242 474630098 975055999 849506260 655084771 458947891 65323828 862863531 843863391 316901710 972231102 304831330 837693759 788584599 137742868 936744192 449267585 806458046 576742830 259999684 427396807 282514116 760387238 457476898 672418070 470316681 792563772 889384098 881493782 514032675 723339532 85688640 352383742 205644904 831495557 736258949 712166792 211249528 382071332 936698587 640767816 180973414 576411040 383090436 605264047 261455327 771071403 143560341 671583137 480238486 247642198 862262440 948472321 209023287 938031295 450902953 544886512 861457986 325191805 771279578 431450446 889262608 395598611 472883904 955025959 870464170 463792440 316415832 401508342 318511603 327975764 537545909 620266433 262703910 721384629 895286284 539800456 936934923 603747164 881750321 547098482 64224963 487889240 714143809 632889450 755027142 805849325 954570491 346280110 118181441 636265381 669397725 521700636 455971912 943580569 437330680 701050700 726520983 783593357 794020603 852647212 77624637 126668279 488806228 909086886 200276924 994011019 11176177 223215337 574904536 641396474 121005594 220843680 334911923 495480779 772024690 792732793 44930216 310926767 130703444 884054089 216486417 585172478 395189875 688690065 271052577 292011095 751284848 230426291 482135815 193879278 62889428 636054461 777898710 272797317 982508995 182213458 498691041 761991047 839291657 131139637 73476216 262239020 290748426 393607438 797682709 997400578 429334614 163813571 918927762 855970088 962519235 896555538 363229650 819557003 176604888 174940285 54667347 353468007 719976012 924819435 953994115 401322691 629071810 798580351 923269037 475512568 7850701 38531321 803034418 25848975 654276495 814398999 981896234 125070913 372247488 300583313 111371304 203145152 347790305 821965427 626086934 375438786 652179226 801135923 205412013 633935124 403712993 459439388 419534011 151641786 472358154 309169256 302120211 654867700 961989356 996823130 750526233 407621559 54052140 26551402 707614454 912295573 84331417 210422313 37428660 359368810 498876175 512918471 862865233 970224719 655746973 27470166 222716922 50587314 780768949 526616757 899115483 382854069 62045157 207307431 286167042 903063416 661913022 54609201 503251265 991747607 476470764 822370948 408752953 162738776 415827878 921456216 95856531 42772179 62209542 143886415 86221217 215759427 642768526 829462457 313991304 796182418 793499628 4463401 128373009 189210131 625030196 725197365 359677313 294181393 556128531 848215915 161765716 33394112 748109652 85595511 761253264 717397941 602047088 909738350 650962118 909408038 33138398 120148985 789069595 853119860 771758142 277950467 669041938 914587320 946404290 86695216 13628824 535909566 939104256 640389871 645159132 597806460 387329180 544445644 650921586 917648943 725470084 437083606 741011243 464274342 159965913 772282950 712287097 688282490 498411831 211411402 829732221 23373768 329106070 1530837 404382812 2851077 803140970 686851560 892592387 83865840 674985021 229917772 961526919 173627144 318028067 848776650 625571486 973002238 71359212 495563252 50255028 207294302 499464518 621353553 577601961 862087039 588879793 439224983 887288237 423926918 608731872 917274461 421657470 209280647 508168231 686981631 254651429 653396546 620455072 152324532 125833159 487990024 922130291 344072771 871226843 360277489 893777303 32303132 589296130 52630566 424773875 616029484 23985841 810187506 316290861 68399145 873811076 111643707 883272593 181662611 994899453 720559837 317646373 629189593 809466053 428944095 601553758 65666658 576863160 143533416 208728724 853671495 507005551 257878548 599263410 763815080 820311879 516055343 946829742 784137848 617874165 197256063 406717698 402340730 377734655 936492477 836295007 413544862 241647874 523048657 414700946 780680161 281497921 120283656 588216751 534448698 596808957 106234694 796884558 394806474 858422371 287795159 59160113 778782086 566865933 591171337 559586336 572068125 235132723 953485368 175512 287288982 815768588 443090710 325463196 849979462 359165220 977320931 746481108 781696757 405734757 965648244 433346457 747742626 548472790 632412694 731403449 461046361 614652359 855833254 654171926 378064335 175778035 378803893 508926942 218807907 519460292 715742433 566326675 166913949 243721924 142159646 641885451 114253430 127645688 971017836 120236703 782404603 671322804 657286658 237797875 3558689 67462588 71626619 793055634 162827453 96942406 187983726 82818161 781326862 56761271 492680217 130150101 911256472 961697795 183423658 507873277 534683980 818741344 175400503 23524228 194062683 124609037 191599699 698484367 976856891 687632152 106275438 440028201 545426821 740900470 104589268 177975986 545504209 38184411 6073070 377972069 607454976 141831008 32335620 945430634 780868422 450360159 897693277 971185651 678143193 982154250 608152494 231786797 600380418 460649136 783743215 448359731 411203648 786925072 815638070 36739187 840583761 919940444 747846963 405259167 248814202 247744377 879073229 616842698 571095073 225446468 230617903 746340300 617258207 193893399 208691962 243536957 242867478 999277112 902843712 663264719 735802737 775986709 957934552 905322663 232947307 952028179 976901230 987045230 478928374 589808333 380111282 110783618 241877539 624210983 767159849 987338701 165345561 518303148 486672682 476583197 334149822 428057685 11901132 698834505 808471320 757145312 226388316 680219100 805749914 417493169 739563951 749921781 997800155 186971403 192352362 258487288 955573284 449356143 361734647 10798484 825212781 699460320 523974311 951235964 757151583 961466950 123309048 337697689 565390497 137731144 794864293 858565582 850603530 757614031 64325789 217333963 278590581 581236063 396246482 241256985 979801063 907359971 455194376 305522639 641517772 427149319 742554895 782956878 108717820 450930796 193808246 46962985 847357656 600987541 110121420 841651502 30619999 108402846 828790961 710850170 551450409 774615933 112727055 510267718 252757540 112611718 324369172 526312964 94141212 416680510 7905536 296793635 26609058 14013602 258062980 989574666 362483484 553082751 515584671 306304630 817252945 547880528 251600347 42621220 993539395 192561327 124864337 515836644 246715677 162671507 766156672 173067973 957102063 459284631 458366215 654618039 808584190 637977222 353326015 427478445 422632685 773490828 125700416 30736341 158944476 750946574 687945868 444859162 403778606 380734272 751280750 512914646 4405689 448335296 295327082 787508071 363013310 37234877 125227565 454850431 815932447 46952199 468348980 84322672 191679320 828059711 832570401 388969982 560471379 494638056 492966211 232955675 633358902 341204407 107694588 911200097 8543859 840827144 377958531 875143361 799385624 565846166 619669540 705796311 154571282 94147945 937726436 683302213 84556557 23505574 516550168 821690622 471485096 194026989 48684244 96737214 173846809 253949495 220303700 203147321 646764331 378141940 518129399 553370022 853655939 911820090 971010523 758417628 329932050 567798404 153864171 665166539 807141269 223784674 803855813 144592796 809680453 945137655 755544267 785393412 253588152 58150764 209637279 451741867 623125953 204092831 220254526 349061075 540399978 353399013 441539774 967534380 665595310 423785244 279736184 636212544 365111060 480371809 959695962 783207483 887626086 204143139 645366900 151414245 865877430 698497452 155569874 276694040 978172718 589156206 206939159 903627661 988716174 905863381 521588083 725224697 799861454 954610926 336199161 599634946 521882109 201214132 389661826 48943746 656311343 795351412 393456690 223523782 961603495 501508412 593764127 580075448 839916854 189819250 196975409 333656387 194336332 606287582 531408925 826329468 222306877 531611461 180259392 681778602 426199671 409556803 282929534 233609085 751819486 821407959 668360528 914740652 642834748 496160442 937117677 156398159 343434188 426017819 919988238 355656490 361250631 398621043 421565238 941034909 401175142 672313063 47362278 464108123 654629103 877363942 18174169 417364180 210510386 349400935 1001171693 472108410 940910499 311896554 58656979 342704607 396766726 909325109 702048567 532518049 837541801 924052453 105018217 691453839 72406295 383556166 758454341 560293020 855538219 986296981 602092533 176706553 856860782 669827006 228843070 788052511 906960723 458450784 814270684 373395856 164857948 721512756 494430455 184039764 167658125 1001200701 682470760 146381266 741939635 581983613 917594344 739836863 392073788 888347169 261393712 44379896 943920826 844522879 240956779 334614482 153558483 59799878 774900955 131216759 158589305 730533403 106318973 682118199 516726344 709809604 415631915 304847697 655090149 675891333 980891085 922075048 248133067 289877420 121819633 446100625 196018956 339904119 375834123 149374767 10415707 942250908 562197442 938781852 653706833 662327353 891960706 932457683 300190759 819740037 318189342 255316610 591009618 24079080 888842150 460953899 181384688 910861649 97492625 223878426 21353250 460719451 888779131 550225048 339439040 187517399 753638146 721145982 232336983 197639151 964143302 409322966 812609596 988449862 463325559 883810038 657039693 34403209 488369937 180584388 271530640 553409596 159075412 154184052 419206287 356705956 456125105 552179371 458583564 755448604 488106918 729622249 909995673 764699248 300321247 443784142 809323257 1000564004 99234235 233353599 807954342 935503645 710402157 347149796 135610996 405745654 908639149 899873425 288361590 931871342 8422465 614265605 842986212 484281547 379177285 64361437 961083694 41696969 791462565 834742746 879663397 780371423 206082272 354806144 427840470 120559502 610700372 406111349 434917988 232481125 341790736 138503204 851184994 882644201 400918993 7038314 873115935 834462473 236593153 366826912 981636850 417760595 832771997 90488222 519197777 951510816 863698487 354847397 751358613 978469292 20911244 986624352 756951090 970593204 458835255 733968060 118785786 977631553 319178453 934987410 538060496 131052774 348373144 54870550 327484720 776288097 913708797 219423580 474518995 983049438 643952610 421466145 460496838 128320721 662536201 249222463 469820938 179230371 768380417 451042991 921094108 378253452 644909586 644938793 304336029 126222137 411114300 23506179 571420186 21316476 162617859 11259008 489149640 95384608 709188293 410960365 205147076 861391575 718666110 27045999 131432815 634480734 570640235 729426055 868965255 263737167 173761959 859567488 585724664 806145851 918147964 805705208 278948245 252896930 68939952 504595073 780488626 459603282 452764037 420338444 982078173 550769019 366208863 322570989 486020536 131825512 253576104 219780628 735551132 998621705 12429180 947415875 938743704 985166964 365981752 268422656 927775157 738561052 305346254 647165873 844491156 845957782 398321020 495141319 485836636 433025407 413847658 942761200 984412039 268682542 197380942 998359034 918444522 588894586 358022397 159799688 957144669 877750828 855047855 276318923 150665117 271649500 512093544 916175744 992453827 324268055 507862253 940340109 402875562 520246843 260422229 228102934 117876798 931579740 220105511 731103716 223813281 812107487 964813352 230381496 944286529 75162124 465775174 992070555 393282945 898704220 627346864 942731705 1001546262 174019330 918472998 556188338 973964835 699003552 746722139 529494053 268600410 313197495 822050009 365633737 723666624 470006253 855040907 736764627 757366813 903612968 141209895 504786578 252406689 91988358 571029299 280828915 210561737 679134879 121023442 114956320 71814609 319631287 698524256 446013891 575172158 71960253 926409969 355198982 41950267 362439773 100933549 331418698 912639001 222295304 293026540 121108528 464602108 850496605 9859835 839185329 499163377 643042423 895109483 238053430 690408793 787760523 42638659 929986886 778445577 517784640 658419408 675790070 534198859 677945511 186021456 391200133 192119270 542105316 172243548 270355262 123777897 435471445 962892101 169932978 883407777 101694371 606882019 931581106 452836495 962859860 356217894 306949268 481733076 500531499 597924953 272656623 110522118 770829852 963958595 769241088 327303386 296537687 584136970 408287679 460904507 118929 423221804 897414782 713209742 25938662 167484920 459009817 441574888 339781533 967651880 65552489 157465483 896174917 932405116 272026999 666576033 514622120 612989402 644356714 171352299 682500981 149862700 870609468 654200749 496779221 104931023 472774409 720629280 882033537 859116732 36125092 147491838 461936748 198778904 272848009 302462172 83952721 14025475 493510831 38161484 613069664 45723039 36738672 496935278 780560870 920990947 894623316 666302270 221044244 712327015 716133282 413188906 21348599 756946699 644741343 408919258 782572061 650583952 499349204 705172981 448747703 649783518 693735848 252584998 572802893 488713836 358853001 340647341 513910996 738936648 460751453 951072144 822861613 794460191 241514436 251481247 120236805 289559884 870170373 744001562 688271407 650574360 176902795 122841206 136972095 800003331 29775271 839381371 849081023 531666285 374615973 938999209 147149500 85693522 801889176 746775978 150892949 515396980 912664850 768030486 313447130 661127758 693973583 614724632 906092235 190429233 732549920 822357815 932810042 367588077 968627702 483487370 205051845 381060317 270184232 52692626 588686660 826273820 603168997 590408923 631893544 602070200 133062280 689209879 750062930 478885861 678021672 913011961 983163239 487250242 20731886 835647258 799730843 546684569 110543507 922660662 812250302 665699053 495516108 978541580 916827090 290669394 178601479 443611390 277462502 988728365 624722877 505154799 829643792 219092819 599215345 278876149 69521126 9275437 384528643 896691753 629453540 611521333 191855858 780374868 188502555 411317028 407177203 844617743 866786767 954084595 38363168 988868695 405981761 16057498 610790949 230365423 544195144 520810132 544305627 686371583 392991438 230192814 138554985 141009345 641205754 173248650 542940345 473005485 905652597 29236065 385510431 12765631 196550901 359699793 850927194 309249225 671854378 828238604 851198483 491645805 181680399 976610032 350513754 766906379 434652863 857075518 559923304 320129573 233977403 951914701 203990411 191884994 38796527 414109792 369200130 637406754 323992577 412709538 157993121 579089167 358352370 52463940 561886875 467614820 823145087 916156263 302370670 560652042 185379149 272317971 252361470 944458333 378560868 57046225 16556318 688835779 502959416 655181886 848246993 807164522 395545819 514919040 827668604 93978579 294519643 487132732 816504900 83143168 436472424 831857827 113540385 222805039 434860283 581311 34584771 874572710 684577077 453554780 578971696 680805631 510886754 181146704 208609579 682372935 112911736 563913567 328041960 91935888 757861991 906878354 145508633 367015740 655290666 50446519 22295101 426231068 568822494 312868051 591986806 682288936 553056369 243203687 410479608 558533945 471351434 79374584 505137895 935135688 292236464 908795832 749546032 605968318 546285035 751034971 566846412 727523178 27935570 497644110 847587782 252206461 199213556 750580577 36162793 866566581 593181066 391394467 152016789 229232950 391035446 988262582 17217250 798645894 255474638 696202355 223281415 518340880 458963904 259296214 174606222 739230714 585398014 251820768 969924618 786491393 283291222 915387205 838250034 742588786 819063461 609314347 750602755 408675138 807357820 60631813 897185259 453083966 229865826 157017420 717630254 581304070 289812017 86304374 858737497 241535911 799331611 648402897 777208889 471493802 797650459 859911824 605039269 201030399 164782862 752335457 615815664 341848672 106113963 408428180 422496266 122639652 489394243 121845747 413763335 221206584 289042853 63731052 884495810 936371084 190345447 880912931 141032680 562993113 561567107 592379051 959706480 664991986 372759967 274304315 927440333 729029124 569232650 668413064 794995678 981973495 183833996 134802061 969889154 141261218 678221238 815191545 633017928 904281343 536881048 673471464 32205489 891569119 372978207 808449378 181088251 865196055 788025091 312664715 464484738 261406185 725698345 667926728 541988666 512644194 831180447 954015317 741709130 193261310 810546468 322111381 313573089 670161415 937405174 698757257 493723167 29089920 899371286 874418861 179082471 473605914 487817600 487743697 587773784 1000071536 206353594 236005426 654609662 500872581 709851059 18228881 910397005 241085545 478726522 999183751 511348154 603153116 460988168 893631456 396274474 470054020 266133543 291717671 84597068 487328738 904519992 357188275 670618954 266234683 946333478 587092175 25223293 890174161 941559548 852128030 713417619 498893702 358595603 312642547 537122404 526613799 786698731 300240686 492651821 861146630 651722270 27769785 488061855 56336402 526190189 202023641 409823476 575416492 549257968 154666324 445934147 214721045 856593429 256216032 920443654 59507353 741430168 956379036 760888630 8832570 224991509 247838365 260962074 205073765 657257128 903639142 343019960 980303297 148911600 873907867 897907207 98327593 925816093 176773272 335331458 692025296 614143835 190661585 619346854 164505631 86987637 121585076 872458783 699125746 914944590 146472054 604395750 9663547 188090273 454441646 340087335 392845122 482921717 302848673 298382210 11645352 414476732 250069975 936155954 280656537 21189728 355711957 568056006 328009492 7857408 425824435 829888777 677651696 189351009 8821 967301908 581227747 374087359 123528721 357230883 357940691 484308359 695054973 329144296 696440631 229798122 430184927 409616151 343584968 859891415 454157189 952036149 362971852 190780604 597086311 930051694 547901529 637232165 406427934 477084658 433677088 189472516 921608818 731162402 170094388 277165056 945037966 571988691 682672044 767346264 554707915 593738624 493542310 362952471 508749805 759930248 653392304 866595097 529580762 837170010 578667096 441430921 80117253 308978928 35196496 168971018 204236765 905829712 700418365 288526125 313019579 848897588 346684005 378476165 770665372 548306034 746712622 262975498 20982059 816692593 953121343 222721019 833222723 241111369 733476969 122615588 892464934 333219503 102310904 913530586 670307510 561885949 709025950 229438751 872918710 140272490 884483765 333256546 569995814 446488809 411725901 131955870 402179850 776391652 274968294 478959035 879437196 489580809 405186951 526621087 975739735 248773914 140882916 616787358 565077809 890873006 770969730 340751590 201381234 92292302 941430642 146550578 375031158 87057637 393705590 41131712 275639825 857688779 734085557 1002357865 811957010 117540281 211111755 128961926 637244286 498139627 704174085 585465070 894018190 420036343 999224569 793009568 167638977 211782250 41145670 432470446 551554545 257873240 790784348 335107276 293427911 227898750 119535306 796380036 771743262 849212319 329747120 446858918 141872178 340278709 687911935 732346697 363689055 154781483 940821908 76998605 492847196 653219508 823065461 547728503 572063565 425213798 786478468 937436742 963911700 965296085 371670870 800440249 430622646 373890185 419865881 17845140 335932297 579053812 197370383 461345528 874923131 526369735 814531270 538971326 795942935 38677917 640514590 147712121 10644617 135627239 833076061 583906532 180027499 495394416 917230248 78519849 441512840 552625986 203736886 195497075 316315259 902961296 82354086 816083838 893745346 961359176 448864616 633903595 295863036 239380756 774593284 779533870 344455129 12116408 347914780 968962974 677962162 803576155 919991067 389498194 96590232 489430516 338179004 29428829 619722679 581868262 822736842 323076223 979093179 304013212 592034690 338655913 833438098 863841322 906347933 680938002 956264375 379042615 238632439 432650435 647313739 310594004 901933437 177009619 894511874 404776762 810194463 229167893 38405724 566668834 672897174 134768561 589656865 253206333 607922281 360635537 159760309 141664846 584586143 17008638 135540305 147104005 52943413 464782002 731986410 12664468 961615839 704046623 591643711 72199977 811092748 90017070 404967167 24689347 42076510 341190232 936036316 547944162 638710548 272796993 348074538 136526140 632945478 968035662 765000368 41333555 586164985 417558578 922659764 938006266 105249347 790978398 83888138 713635145 760702939 459472761 996328711 830802149 415698139 268639917 558170824 2783638 668128299 797755724 893514228 583149084 748720601 406160427 776847578 751184485 407716887 547099951 561193191 220558032 665280581 337390840 737291387 790984621 361413539 724669020 999495643 287054835 528991522 629119528 320941187 171586452 795444022 464539818 290424598 319569170 38163154 491699902 691889540 608396273 2806483 151940734 455358469 193933298 520833614 265997256 51869607 781755847 519242562 420267508 971850476 211049889 77882330 699659817 447599009 565756983 821090935 949382665 519566126 71878035 746005576 810932393 487350932 679042960 539679833 526144699 249006006 973163841 732134251 645203336 769392560 298289059 606652592 156513558 25183377 913384748 846726547 698432312 629793766 993236120 279977196 373854456 18788054 541782720 383763844 822039494 111920851 257729361 957259527 474612073 263685458 325495928 831588753 923110462 567668035 616993883 139181858 336846478 985703197 185418724 138018757 817370448 869337687 196379232 796690821 838850156 816606475 308944351 952330438 728936027 920768343 195138032 538417351 95176546 455543411 666332744 323663467 805305449 590143348 9312389 77530235 929531941 448620863 625225096 91024845 462131140 717529495 83481139 393343597 771971061 72791685 712612296 631359824 429110384 442214138 639661344 85106799 725934969 762310315 385760746 761094265 486987266 568234468 612617151 344236367 249553227 437221553 604309430 268798573 458906154 338451628 563666927 560585913 957022497 128477443 655542105 646762458 903184908 987235639 590397619 993494294 215807785 49907444 768916870 950878517 958303602 511657859 948516997 418277857 460804897 244366595 616329491 915562548 680445544 158600301 711494084 100869714 465835969 555219019 640384623 14785088 594627930 641796332 271567079 509989552 396950102 331587136 394152468 398210829 257073042 910199861 672916178 827503989 564179742 156411712 205314065 864814868 359090027 171818003 447599688 62215641 570441233 798902062 441051702 957971324 373350181 375950048 280684786 505755769 37037294 24853207 160602301 862405768 422375678 620097038 710657427 527542777 660168883 387056535 111675632 601460636 79017240 277282574 33025472 428000589 690888781 192413301 940590244 317374323 87855533 306277767 138264001 54366744 949265670 656328573 118396696 465632242 886073229 891028663 343618480 557329548 391208369 548875939 111301005 186762449 659615515 198969910 191686038 944110217 194063516 223585794 801066826 715163659 267561281 709055202 980771616 548844080 11899461 888950087 849791383 243519667 382964587 606325237 228518535 374093145 627008234 565568931 155567859 397885813 144466001 519127447 844745737 606355573 371789816 389818316 48320371 601725872 130010047 720573447 730602310 720205256 691522508 814778711 287084986 912804575 312427249 169774987 220878107 955933340 997275357 544086069 841209514 359467047 453761533 625657785 302904458 280143886 563791945 953014915 858396140 144562010 466577041 753337627 380333928 179641941 930996778 831536177 148543286 247665363 821326087 763661959 265079065 471754392 670223566 813842105 741337889 761697417 219755063 65865174 648963035 804236751 310385915 758470552 82692881 348887218 978047646 102178654 172485377 556413776 441453287 985647640 123750480 746842510 547135533 180757866 289397542 789987868 348764530 630180108 204372271 305061148 535379865 812631380 717034593 697093751 172051160 197485367 765125152 636569220 362754100 442753254 119350292 407196856 363352752 963224768 604781028 35760984 976456202 147067194 205265023 556665909 640382705 576462340 384822470 473316439 108328804 661195134 213842696 519767919 15247544 334867328 767277972 671035409 973502870 993730902 565274502 615356281 280199937 322799106 741860314 682505060 387831013 107715048 228479961 867877290 196059385 860894436 172304695 543825298 995016523 516503032 112028115 478957527 789172463 267061844 283365184 28457473 287752925 326375912 194051363 936445499 761905068 263879533 540941536 995448353 911565314 678733612 638419387 378794074 487321922 434515369 380812863 158692648 594901530 43844773 22799388 143068085 494493599 595156745 256887951 190167787 144367960 949731954 422705735 994042465 199896753 561068021 864230792 321033550 590853574 427072465 204074756 208986951 288092006 843332636 629012671 887061783 268346033 775083109 306283479 679876184 795368107 493968349 246485235 168796768 441742833 846258461 76394119 655381912 534043805 709149463 886442869 64236529 392526676 567347321 654193846 61400745 47617293 291393620 971621545 14699079 704054230 988260878 377046257 177800463 185361243 921215272 124449929 315646958 717301919 372875530 416610408 707574131 864721056 93955088 267924561 326092323 964951590 204686650 902306694 520766906 319180237 351914467 90602397 877287634 312445186 161640025 580024769 1783760 325417369 271878765 979775128 488854849 149721684 135956268 138644132 795096592 325126833 483504650 112163124 396225380 128591840 705316663 718845711 257098920 248651030 44698430 114766389 963827865 920176004 31340154 822506052 501792631 956273031 948111703 987503846 554213950 250954154 21579577 378530941 782871586 824884940 969174700 944597780 804861037 723329825 861908730 639743538 370260690 98860579 502219969 488120165 345829229 926198711 533222489 979259453 955098074 587501482 502775752 740496080 522751207 110396696 741726178 24489362 588581371 98557941 325282016 178434276 76177511 654257985 502386320 856082037 837915794 743042659 622663739 890605379 22411858 604682194 416234982 917863826 817863575 609309315 153970287 996121135 982167158 259833794 693399645 888858744 715792649 235907341 946440356 808577447 123443921 126447694 748922551 434237561 352445046 361953251 332218799 714442624 868169218 67274004 626106332 790077630 416855807 255566329 339906528 848933720 560024486 192603652 34742154 46843062 514256194 960107089 624374878 680819063 753119067 585811197 889464540 335179266 450155408 703432200 705149931 531833385 460934500 867469213 410411422 906541178 565197720 948930093 575875941 560860193 136819548 914826198 29385683 59676275 502954703 590842296 38046282 780308611 367489991 608049629 393340725 490097346 87817068 1484673 116442318 90112179 535062363 741047268 800282053 924812738 400793384 506529643 273786551 851556176 743706883 429525273 161176697 403465392 326006129 135968464 496508131 40172641 776886527 985472129 299965846 287518155 840547914 517408406 629838824 465238959 694854038 570732590 471876594 897306725 193406357 774078330 895078515 419270683 328789421 88013913 844942331 558143468 880457735 934590354 223772004 4390116 891101980 539100974 150652830 614803077 778383381 615249026 16338204 691091000 279668747 13881303 146770199 404282640 114928647 737108211 546103003 199204447 285625869 59337776 514763240 331273091 389413082 573743337 448572560 53652559 447216894 32644679 314425436 42310774 782200889 858652630 624598430 941768154 900750119 35400770 303187028 501345147 462459511 938237675 768739887 663353537 43811101 624921547 372014438 638051108 546654126 255534216 357177539 454000026 467896511 18893188 554664659 263838915 265985628 342524045 377043252 889038530 516228089 706761218 779033168 111216389 761062450 541908082 327920794 37959769 597259787 988160345 160798893 705031359 570903844 818866770 348942108 789758767 159122093 716732274 989361743 297941175 185286612 110684565 441639233 699426114 179645397 370759657 290804101 102535377 644296367 104288028 946886465 297197122 28954631 967792828 551634052 998353119 450496104 700739100 189099804 471278851 341781114 427318326 729600588 70359155 601180422 224378307 545944821 149437825 382084702 844394417 650336538 327229253 23641492 836077114 233015622 701470756 458867009 492398971 240207574 31584037 958087562 866122368 168985351 660470011 367252032 199242277 918090834 888516377 384235510 347217712 333780110 692958721 998059288 291598336 519343036 501745290 929367714 730301350 669431279 754990267 379872893 902815486 372354735 842879520 70949955 278590914 632336304 765713727 113782244 928153484 193792882 883291449 942526499 442965788 392100365 992539430 26472242 862455676 570187252 359249276 351326078 648560036 159948067 980480863 25896858 882002134 330693795 197928861 489789648 670920697 76770610 960695136 799973353 644804422 290189251 89517762 67391887 326147133 902199895 753527555 612438144 861698913 893892454 332693155 941302636 601678355 801399256 568095230 348672225 138014020 994295303 704279298 602406819 37543316 283089456 324586801 663130907 362010096 454670667 493848728 333121730 774706553 58150892 196737451 316234888 314784560 18039775 889875414 810464283 830454280 898835628 186304225 143692437 607253445 713772533 991020658 494194852 80085363 270384338 460163285 451669706 489832646 275403736 986300206 523152136 100042966 835937196 704980838 954532905 16822261 450933924 388539292 275184829 116813946 62592760 46357726 975991760 236641395 691731198 909628562 478872410 877484277 543692250 342482989 943853858 703128929 935084239 536557349 251244279 174639778 654830392 837177998 470726829 664829544 617713525 778644572 403723713 439625225 179089878 254803849 876630764 541564610 62770139 653934718 407200265 775495082 359926893 245761460 374637687 371802985 789529945 340178088 421576390 449904678 51986659 691507269 819626959 737407272 978278044 770607460 915066486 705209348 374542933 998560828 411877020 630792274 449382146 758236546 279163958 930018715 543234752 765989533 199487719 746171531 965742002 531349960 977065309 782299864 236499198 139997587 275489427 811840788 647804235 435717541 851111526 999872953 611812074 979727798 355903404 137417347 592853111 753141270 481130192 532807732 1000503472 854610881 650398409 519808487 35809796 81631624 788555595 976281072 964503168 717405993 334066769 581010295 81206821 635543725 386070476 871607298 122776293 927874932 237217841 955884318 356223510 2776547 641524707 36818495 496254991 892719480 302912236 30418595 902825359 488474068 588272511 652144943 967827610 163521487 334709392 685167936 13815720 468689682 285016474 220680242 526843763 933288594 891538464 651969818 169471066 114593896 53156220 576272671 559657058 201713200 313183729 318506953 277352900 800775707 388171030 317089065 752249878 276684603 672864324 79933619 315864836 264929649 193053185 719071013 588217564 134223029 916812037 724240438 140523131 192301287 20282965 718030956 335348717 823793181 706148928 601682350 336394291 503182815 260637752 554824629 312709539 847916343 531635677 464116613 472868826 184239604 788095969 395703399 420253973 174713791 722944500 558926998 832147724 882350247 316353544 211005078 587225805 942283325 132589041 828091734 113026477 478181155 182771992 245119284 486465967 406015553 609596019 306549230 634940382 889064703 571191172 30198130 900533843 363884697 40240302 322992923 621014050 819785772 552951854 690882000 473640598 13635030 903479039 105716505 501849003 147871361 63123280 982646403 154593367 347847713 929324555 904408974 868817885 216498491 613931824 352098337 56534641 422662279 133783884 456153306 876192429 852491934 504353641 903337155 703841073 654529694 644456200 614710322 247383864 650868720 343830793 708273055 586850199 535293660 850965808 374035184 843357125 970676077 764978836 33377997 417476731 700338109 752739579 161604257 869327966 171536629 929093971 836271806 363914209 689028221 987646964 15227738 809879512 542283674 186185783 815929827 460962093 342360854 363682417 606741896 422978631 807826142 41684962 247838545 169408278 980975120 317916516 670217276 134140826 457509894 889447969 256589063 927227071 275421641 58148634 710438813 182157208 156284983 338345327 532576871 888265881 401473739 946380866 750065387 93529188 953114372 711395895 157727104 802294650 648177409 967678643 161060370 162453872 873234836 225430073 401982827 263950876 961922728 784550824 853947025 784014351 420821583 296682460 78340116 690601071 643665979 403025577 932263468 600911600 231928470 250856519 135972783 54521554 902257240 858906219 529593348 671474321 326387405 553788295 503741357 26596465 237207645 488928268 583110347 342042055 166507296 231417669 753770356 587631790 866437223 290420164 907443916 319175599 367505038 232058272 26760340 74420315 389473944 638952883 105416572 391654895 253804422 880554220 635033074 403351814 983254917 103294059 330529916 599171276 240448459 330790431 573256625 491225821 651726232 131601165 909222647 935645597 649000954 412169606 869361661 268049107 69752437 357906291 871510933 96160422 88594458 584688824 983164884 277300633 461214565 690296168 503156198 735267642 857986210 961370308 19103036 464956134 728565696 348097990 941965659 947649038 309136047 644299898 11035551 71537635 595208554 111432236 379521010 186816566 867957145 646712443 367300781 924176406 938273721 963623218 741257801 170071666 51297901 809646327 597166471 987552343 239281790 967245118 246469021 799137532 858032475 900475781 749116081 252205776 139636979 688375503 865824296 109976863 263604862 809700651 72599649 70665049 851840296 290179635 173314504 967988510 599618295 882100171 233257981 886323829 486000261 212236149 364146370 989878753 957096154 684825129 800018893 212946543 553886217 971042457 47219338 626694356 144450109 759808863 631002066 186464589 507691659 352577113 881664405 90976979 413267336 352219079 680100269 89021037 520022603 994605123 488664036 584692109 425308258 219559478 956813477 366083498 1736342 372558768 93796031 170254487 331265391 334602593 743846040 932749555 636726222 306215629 337541582 615452547 359831548 426896500 888592115 949115643 874824799 102788911 137984263 207452262 361503480 223527645 688789996 368507279 616976910 861824992 591865137 397964735 983381454 774579125 735956952 785438350 915160177 373075856 561096515 682395435 554289827 752031968 876639484 561862943 843475781 496445551 541799037 85700716 879407664 624521148 70087519 213922662 372981127 418626090 571532384 664673969 769082580 817182242 890084757 441549041 829808110 326460301 431271851 799826460 257996633 238651510 422508673 642228588 729742934 1000943805 580051127 594292559 265686842 792531262 779767064 137622099 565134682 36708743 653884890 553476877 515461062 763302353 308154194 919334449 38007535 299356707 374929964 624563985 28670868 400184821 598141805 612792824 183528157 318305790 739231770 506254385 133390611 655850097 584923236 875371508 258902625 802901759 904338008 549054339 338123562 263988636 710980522 413474423 775944688 702957114 478935808 694125718 895696658 254260359 493064212 575981483 925454857 794021483 606419328 749422914 126789677 209074368 737844511 792799927 586702926 154428819 670627924 875488568 671949633 280611707 317376001 395562328 462005069 215406544 5512980 437742818 296211300 128259735 543589158 193265229 125829301 164706554 485699213 386743552 925121665 928397254 677560557 724052362 625713732 475318079 505620746 922227146 540176555 669534973 235566243 882879269 521255160 401729346 763897922 483421621 252133227 899742897 146977773 988989448 819407625 199102638 126837064 143119818 677266766 628961477 956464568 360647636 63120236 524012000 741352522 963630828 429778170 798218238 5922850 232104088 16950215 287355091 921811036 750178093 831048044 926648412 561127319 809522059 772307390 470472262 112116459 463328128 353244989 816257534 155856831 710086591 108790526 672055584 58911498 817192378 768094790 833824379 194530787 115704611 263810084 69942284 369762406 343744899 417385398 695483797 910920978 461999989 497613389 738288238 353908215 765675292 982255301 150008823 214036546 800904856 999329980 407470068 56784021 131250348 882394241 851748454 843065289 924396577 454796920 870505106 645847665 750975665 468608921 655268893 677322882 629098278 865744177 496637844 838296129 97862827 351423435 629325227 679015863 856232529 54496258 832669999 840274922 264566079 84117653 99563046 272674836 603401843 284132310 608680967 262531970 362543158 502274860 854243818 208589964 969503895 860998240 624000046 717548061 672156224 940221600 685568999 646992184 902590696 652956046 337492325 789492341 822754570 879831116 398194438 30292309 141103986 848310556 366317661 109038270 651800886 796573977 757399285 712799817 385481620 439634672 640845234 485804803 267255048 81745820 645295915 838287062 370460511 7235485 454050433 95106071 529927245 342828151 937678822 483354403 795149464 885102096 255824299 170926465 706959900 713835573 545918585 703405155 113262807 867124545 132001964 987592202 434085325 514750840 203145046 239829300 899091376 736137897 883765914 369033218 902471640 971665183 901040919 877179726 676309600 211502766 649982283 833414616 305868909 987856112 261916540 564520256 683538487 193297662 7684198 59303539 504500706 662126385 52437699 585944854 888273761 316954045 958682140 458302044 345996606 457112860 700505273 314287803 932055374 690642204 168729094 226045895 796646745 217922988 584487758 664566199 727227324 594694456 11357919 234687476 290109406 282303154 657335006 295247548 797402264 182609999 330248252 718438896 612551137 272416481 616646527 392882709 235635768 913294693 196838000 121274314 963249276 625629720 85220402 251588397 631676871 16708210 166635470 648147408 556346892 986377326 426314490 418712873 955811418 358842663 892816280 879880665 926455661 599670144 43346173 76521284 840447540 614557543 203076030 142861622 46087142 455893442 160873916 336293011 493130696 556541281 444236054 522892591 558796508 157816797 381065481 15962961 342757544 873695240 262395982 967627648 534061112 383745462 33910836 687165151 993494364 31987561 179641348 520718113 873759986 9826668 594746464 585131890 325188502 500686863 722369992 709927870 190663485 273188587 67594455 196728786 727613196 135804398 893893053 182397927 300848743 163038390 941462144 450719536 70277710 742021194 978509245 634584383 582370926 364858428 871935637 857213119 264224572 864166978 436149175 839749715 881976240 80672279 178122990 323369530 401086813 236095498 611026305 803621063 457234440 284155209 105759087 631942522 461849900 629236341 941580599 554657236 852638670 779585940 908276733 700241660 645604171 329011401 137351062 802348569 220058459 514861951 1002306082 930652511 419288162 966998794 23319310 569298923 53971538 760032661 225994058 305492576 645348896 646644915 779811788 485125943 987789607 673005473 458249767 404650712 414795569 110667762 720394407 901564533 3608493 946596893 675211752 523429894 758252128 344980668 361311835 234285723 243461124 486859258 502169134 878381463 423092874 891904052 401494321 832012631 547625385 218007877 141243267 584852797 337364928 505785873 754815227 670322706 594292514 765154510 583136049 55152845 894997316 664342034 338010268 793562164 549867005 94651822 18954570 774658914 790501096 526631928 857492813 938964084 157591453 198835579 240840073 158027594 980460888 628237823 507681026 578704892 470042183 807767087 35189642 176644472 812483186 697842798 159081824 960589968 871100133 39717072 188717614 117131752 875022140 374363115 189582567 739518935 385974847 513925932 832160778 900242087 508594225 772011902 514173116 397541847 675945164 700833481 733435695 689787736 675843686 640339910 440431849 954999102 783597801 576293373 752621829 388845389 884542488 864907431 978294692 195677808 837833908 527012920 836536563 464983196 718764788 65593322 203195815 413852324 459121445 809155650 860847659 346674630 13202156 811469333 986768412 104852603 716946380 32644814 474826133 927457076 811138168 403043951 95039996 300764572 494725783 906745185 448541606 409946852 707516284 593620186 541502011 35034265 283887688 246175048 396847958 243214937 249038453 272231811 769201678 631546527 790505612 543810904 579751455 528629666 600273627 187018932 76011566 409223122 566687836 989199803 354985340 721145754 386511418 10359699 497282078 476993832 996542136 933008836 487371668 564354345 584848708 3321836 417228937 269571845 650234246 589707367 82640131 723565988 327918562 825789463 894330416 750863725 825902940 49262757 223941323 386986138 228201031 812396271 822522726 732311498 199801333 68042299 21306738 468651880 104731436 330992883 314565724 428115528 510018709 329083323 6933241 672953347 748783191 967573432 154041924 103131431 736665167 957667124 436050537 439575220 882825736 445873258 598181021 887236886 422594298 409737234 446468810 747374326 768926687 269616216 787779056 583367181 734177397 961839261 577341512 933070613 879161918 572619458 738242970 989453256 891882055 784524313 490154575 827285347 982521625 694313006 693986644 397284226 637465752 502382406 764980447 211188018 562276038 247511068 28969296 923278065 263274088 54544084 481813547 306571781 196572747 56251928 124899991 757029494 630578361 479314821 232330697 402639482 172037567 860290763 60614117 511186406 694074918 10945366 220710421 510596178 18294503 519279268 775898778 39016207 189725171 263555790 298284312 667525818 369169290 99723734 441516044 133973861 200657213 222303724 531121116 293487355 422636493 603567415 469743558 146383280 474867127 420928500 355797075 648181760 484947031 903073360 529375771 945590951 671702629 984294673 307619733 426127296 83046718 549873782 241996219 674804667 264888322 294989499 13657125 272248741 611255763 99206445 687942492 387371471 28429073 498806251 702014443 796833635 5248950 465356017 35845661 103313615 687270499 192993760 562056917 227130033 412829021 966540758 59995362 850313074 87157985 650595766 278861623 430357706 997164011 688570912 826470176 345977043 568172028 52901895 551649320 995234592 328743389 726367250 690738450 761560639 335062020 960817691 112224454 336412205 220256647 273171225 548357353 834934542 62820740 880055784 222759706 500025770 102210237 994238745 831724248 153402220 915874661 619677576 530323670 709937059 93295897 896132049 120333663 766392255 471675427 603544136 650976532 871620729 928895039 121717974 361554733 416024146 401081194 491791561 960701606 496416058 108511269 998766232 767802740 496983323 873883011 739105163 529877447 46211947 93013038 861612852 516433263 968613815 449745215 675926337 552555722 898160753 551914172 265653154 335864851 995367556 341316011 326954096 410407320 657065353 656823695 965155649 949607740 217439408 955344103 966346103 650628843 430278538 529863206 321810180 820678530 149149928 922145544 9415234 826349640 642323562 269707096 334598892 565099823 503538831 479778334 8577713 842159222 651250677 504568895 606649059 582023421 434447194 993725060 444449914 542874624 130391078 725344316 284079026 420338781 830460173 918532978 330826923 702022139 545038823 850000982 841670508 651162973 708024436 729899522 227867548 964872252 327526961 571462304 853837099 424301392 568863580 804429475 545458901 688903081 234682192 991353630 3250410 900568581 400192188 754972290 956167191 853344686 827931950 70822079 570469041 35989647 698905271 521663329 387544765 724800198 898026205 147014084 687770144 239224615 46193263 56409118 252021791 308157495 955125597 389169250 420325205 862082291 489101978 181086622 830918795 421421499 863350569 965575918 840998565 231215182 739698537 681776910 156634364 144557122 579379595 939050665 48863887 975234655 689176676 896661903 224653634 709076658 283475478 114492635 200887585 70511258 318514001 263390889 619339492 572565243 802693933 711564245 184542853 588968617 315589214 369612670 732675455 131052360 517772217 931076405 816596254 610774352 227532493 964127355 292914938 920070276 16902849 910880882 152560863 460063893 76336333 761124485 688108884 767151883 214098294 854900437 946929159 948478391 937617269 112805185 984348728 782619339 243140404 461139463 363886277 969496896 53639575 279071239 166325104 708152018 806643056 406955855 235256692 475883118 81721949 596682933 170434528 336468517 195058419 74088480 384400896 427248334 644028142 76218565 742216584 80666993 374207841 59805068 138917421 610210365 435107403 594508195 513218985 9550516 322179626 683920317 560703281 339599217 875220280 804527100 482488116 139695461 297535396 732134592 879751126 795585242 847496320 724652716 341867841 273211784 756228449 248552712 185825883 50929562 694064508 763103997 825444644 87879105 932693335 523862298 511010907 156797198 190540648 446926103 509368956 649831781 633185444 265172790 816123838 414485751 287534907 42010941 309959407 421315680 908481613 506030512 802369793 494551156 934900211 458509772 848206331 335909862 728979374 962687741 914102361 781744117 991878910 113110471 408829094 656307178 222773534 562295735 808029033 281085739 230182268 838667697 484897702 325265038 209723656 192526552 190139935 51725277 629166896 118649119 818565971 335118645 898391006 203047957 774416875 993927097 731388422 821084984 748440545 612652399 3802157 62822414 47649339 946759812 517832705 761461062 971564218 45738713 849015563 257299530 262258530 53760315 354865332 356511432 225650178 261462342 829060306 604901060 703396689 574309511 441000379 117367203 101668485 671006566 67171004 812070105 713516747 630013692 556394351 108056285 923672357 101322987 53254539 43645482 347861347 211503226 20605251 303952236 452976845 266185218 298012606 220649749 345293736 220453028 728375154 183614229 163967106 299899072 762709731 160430699 808651756 823965423 272392599 977527377 971511528 719773687 875736079 210309453 544182781 467825630 29113581 436878245 718090973 9882044 763987782 204609500 486563323 387782427 789432570 254401348 467553739 425069130 192164155 361769610 202356664 464557353 754620393 784038731 286210891 157917727 490120523 621875029 857242592 865756022 601306580 801697619 893540143 270279209 368259528 766291122 356195851 565271595 881880698 993701553 794712410 688297874 829944209 325042236 760061548 702460085 489274731 182056170 463796815 825152348 539748571 171675888 582859780 3412824 540730061 266857956 939946680 893522960 13399806 781964047 759398537 850159425 536160484 470027044 140257392 367183936 757747082 820738894 829310449 250863454 523639838 818771549 482336898 984888174 103427616 164905944 486328473 86568570 659093775 447081022 934939411 884547318 999933958 836652986 534876614 504765878 933088977 719891902 831462477 478560235 195042147 106214458 62277424 890666752 930159872 256958748 268951461 226856039 399121707 98139172 521703795 216202693 547853686 592684405 917503419 693954576 140871798 31801094 222866343 733422998 539685284 411260711 328561149 922689489 491472940 821695427 351703357 893253030 6409063 305334967 638295453 598432576 642620803 136938639 530381824 704241409 727835266 641346558 737785905 350789748 456086119 925314134 995034469 477283398 284707317 769400041 727538183 46179767 612983926 893935280 461192563 870143727 322260355 853470552 892486682 105784872 398255397 340373468 151054048 110876484 129270372 606382834 639974219 559571820 523445029 698811880 424533854 51938055 307595840 403124594 489895291 833273981 575494934 484500507 970159853 265342379 511227475 246474079 688600371 725189108 66812892 840479619 565466873 923554237 676679839 397897629 710655595 131891297 418875962 813215217 339071044 590663282 310761343 923277245 860931787 45410115 447866786 55151784 159686080 33377711 664251837 815040219 868986102 166755976 189279390 8172816 94870430 182882120 423742399 338635917 113094726 893982689 665957883 825383836 550769156 570805456 549700133 233173859 618359376 36086264 371862708 654344859 34610996 73130713 816940567 420829956 340491019 595552416 435216680 315996179 257956937 874474040 87550686 153709232 952778125 637141255 557929647 794280485 880241215 108481604 745936525 849439437 613394491 862264614 820837259 935683701 912215840 966356158 279072043 355206647 424231377 602065047 82487205 741358280 183064399 886937974 969515879 584895034 645438191 61082613 755173780 803799553 725726016 46303168 736756156 995425477 859929373 185528804 121930121 146698865 5992723 811122592 227714718 100684220 647168364 379364583 855834959 571113677 349639151 869767624 430388887 782910650 930540074 355311602 973497400 549304575 831728391 848764951 987261414 552642388 134182368 495643718 383211070 272185643 874742351 531405316 147309558 391181239 924857965 676438587 427312237 333112939 615308523 509112201 67667697 271025070 254375912 821436966 992435517 328845277 185201350 146442370 225006205 407918172 392416053 945308215 113835454 964913027 194673387 508250381 514324422 559743228 302597082 65592384 503561416 223974590 776880368 924314808 254048234 671094806 924353378 426418484 386351070 114941743 401053895 577548312 718776557 935510607 360005672 406708583 56089694 321594336 856274743 229278483 335888010 664356137 292503911 654085279 952481151 497096717 262007045 798210203 431908388 704263209 495726109 769302230 820276140 70674156 548122770 830813513 858882733 645685962 99667564 144991502 626421759 698008326 158700501 645209264 533230132 232704998 33452326 146982056 679631815 742271653 225998286 275986788 317172817 893869140 900810707 474011429 752603114 281673294 443741559 255672442 88949987 79776612 940471641 549518303 436608741 634799893 585123049 7506583 407619752 978688521 213333058 450909141 939547941 903474758 873150050 949136717 817481090 926055301 417548207 648049135 649508691 440094812 649345313 437282842 127566350 17969611 776377476 598120572 252715114 324325565 404188254 913200594 499349820 362586756 316092222 488437264 196872614 291759320 372132322 717035317 419095446 835487218 160302724 238231509 832098525 120108473 553902874 71493312 60350799 891656011 619761414 380376436 210338134 59958230 993977502 103452487 382351520 879695948 88944931 82216135 773632771 760875621 406721676 714074995 828446052 727455306 44790162 705819914 275659369 862633359 217253625 133828328 276493168 391653897 27237346 437325298 954186157 958020317 483082930 214157673 540396708 547963934 911202401 412320880 484443164 542979818 711034215 390991133 505762123 927108937 982765654 579490530 839397366 353307626 795487105 147444942 344426769 702462615 786360670 272114133 750010500 657944838 44426887 524813095 160190855 370668182 498818876 88629557 966408808 213737743 428257852 622159883 941255782 763274886 928915258 842674554 199246986 355840721 119056850 553090648 857079078 532296552 429290283 608414040 257654234 673603051 206583636 70272534 942365506 684340157 833847517 686689849 490990865 176150158 455928716 267544658 93154257 996052718 910781309 792309794 164319176 464656408 983362737 997685030 681661105 254189265 360734943 644051227 663797477 824934254 168467793 216865239 782693653 183471551 582336976 533982006 325432371 429456726 863133031 820626674 729838827 696010885 247735822 327017653 759966767 710182109 448590486 158405058 75394548 242821108 748759517 540712199 698458531 646345922 50202930 876807063 700880427 77867636 499010030 839755412 462135599 670829213 94123234 866676662 812719953 212771111 738132512 469482491 941974389 763789822 130916294 644872654 916262212 181093721 255355125 181306990 860004881 545878106 889554998 792910892 672484085 971093879 525929411 88645995 1000148527 650237578 157782224 137585099 618915122 557108537 311983008 647828714 992012524 677086761 55604375 795005701 88302409 22194281 815637518 389090881 196997506 500372933 152158870 244339614 303115938 867188108 687860557 716149136 487621134 705697042 771010766 76799211 779941428 136117517 754827976 365396242 678229463 475828724 433729229 710109362 255399001 900693646 571612498 993730584 45954906 37327882 424880485 886975279 819816526 529688575 498564521 388580904 243840072 361995524 541030070 472102720 399238549 77107479 393747248 18180963 647829028 162636866 508960554 71715425 457072981 333683250 773949448 874855220 934836063 620128318 885944258 231060205 411984016 232321461 446271436 414850664 740614740 205635811 93863814 449374101 758913158 56465776 354600393 760054591 764803807 352714948 423101982 997652382 854644874 400854750 787290624 603377065 921258210 208985413 181615132 293221875 766740492 250972506 581376457 480273717 603644462 410256375 688823818 693373732 751953859 12627057 542222826 585180633 516495009 412686432 417165599 320896348 651322640 91255435 21775019 552885876 208355169 599535597 24845015 998705156 311506583 744949787 393771807 822438011 159159798 753619132 850358440 585139423 285139027 855864999 974332315 574121669 260548220 367688735 313086268 552552522 704223209 278167398 517141450 976963210 261532374 236291270 955744737 817215323 638670202 833360389 576695915 398296135 114767113 540653648 418784842 995087170 334480927 836839046 480227374 53200295 731059035 205445649 60658953 457952641 106880553 104799157 92680446 416129900 633686809 939116547 294245753 509733891 56718536 522311356 625833247 888146406 773309635 652377051 224396996 546654917 60242671 665317182 648699863 58609516 724509524 654603438 422074839 772864888 575542910 875857034 307535981 942679582 855995165 459664871 480599162 978338923 362691529 483456971 876475793 541907751 723808831 837855638 779979389 909522791 595629720 806372962 855537581 978189663 757557463 743729143 351686555 105556151 321086625 556068620 983002774 178873130 997009686 880720775 362931251 118143402 656260727 685164509 13793487 832932099 847967610 418922747 212231913 601039336 359649101 608943277 774296080 403614056 508155568 912858978 946053609 548352699 646862922 722640661 18775086 744707589 705784719 354849746 892589318 119263295 286493749 434837473 178668513 913929636 656004036 395340680 199256194 18594283 708129408 408661343 152781692 946959521 463130013 979730638 588847093 363233417 482853331 42982006 884756625 342090097 295453353 542217079 934762042 750765904 528696523 488808282 107557269 67512203 90013225 439819369 18333007 379957098 293614628 475084276 961352234 564900724 325120913 163174594 884485846 86328547 997340982 749413639 971468508 862741294 619962037 526662359 413070547 711316932 937787932 320888649 596464150 724275549 948030479 233199438 312960163 874439350 940506964 501042612 244791371 830374449 307962237 72124656 630001650 459630870 915220511 353793539 986486669 384358687 636785398 53767878 212137941 374105453 489393677 156077162 717637975 386646211 91449278 339014287 935967526 733922795 661004047 78794286 187620831 489152116 941374946 660630988 669945328 760273151 371777433 849154382 292386936 589838125 777100800 271243835 834812924 851875029 723962900 427064112 582439789 983300477 850355786 963333033 780592019 974586067 404059998 487008445 514891506 548102898 869229523 878808359 434520207 592899802 224775466 184064209 882269353 673132140 786307621 736407242 612311830 373567732 509386228 727804183 555482015 813371992 627302973 601313447 175569698 2795930 163755753 358985264 200707809 398678603 961228849 564450166 607870986 14643994 180249082 864485175 743957148 767974275 681816670 300668551 847969425 578943696 730204584 461233751 694273555 477715824 688085632 213063432 104960961 839090438 975132509 137043963 998573037 130605853 143534104 598791443 923450481 387511263 929867119 549556879 220093814 273312255 218750741 474708406 744957716 164184890 229437689 151826282 436192094 351174708 287899118 519207869 908837840 975113850 420303132 163956488 713494812 492318436 892778670 860045821 120385388 651465096 463982070 94906142 866368786 58113438 931290086 574454428 735311991 52459137 459931149 873154940 750314494 869425837 907225419 351250536 438594154 591430282 152102890 555226794 969346155 860520582 41082145 217887399 129869137 320694348 307644991 548452073 573880475 527731541 819270440 214283708 988323420 418437969 11587956 858421625 792594066 857474001 73037300 25492552 114099480 890582187 814084543 127626497 549531531 469818962 815154667 12405180 850994257 541207404 183776641 894626656 994467253 650428366 826080078 379863371 253296317 900688690 401004626 216396406 914215995 87493323 34707441 492911689 666676028 946914541 606612943 607997492 966071306 54118356 97361571 939367618 708670307 326593867 394905731 66186399 991984260 619342572 25583411 651909059 808056859 932564029 422278777 349698349 738587112 32340748 455447701 762004221 610797047 785802682 919661943 266197791 36604983 368181229 200959606 773864014 108662617 379298215 23816208 804997873 163491695 983525127 277993663 679305784 939918053 621057813 829349355 478530273 92038407 9717924 890204638 846859057 814878568 50865071 213954953 535238435 553113745 626450395 574096898 460094654 794824315 582482407 286572720 620955731 243292240 360224750 978275806 650156462 2018018 902082496 675358432 663111987 148855967 73942621 539592965 403130658 428139279 200922511 335927750 545959309 6830218 627192424 374266963 978826691 510637640 379135339 280557359 329002015 849871302 444739038 498737591 988416482 158488840 258670747 561712062 865044490 417772310 380149344 926841473 925777440 430054892 284593052 203681764 656687746 488746324 313024577 742778221 63236472 805615657 919181902 400320683 627263597 371413263 729171668 53150407 593723589 59923719 966630924 763852112 439568147 633080037 528628499 240602036 673273795 542733998 875385027 61524990 860112552 379879094 674147201 33057593 711382581 148028328 873335648 364780843 537874126 444309786 50051725 54108903 447468718 26275054 599744971 333362374 552601219 143962487 643820901 505485211 450564409 787160650 328840052 94879490 802488593 944984830 184241041 101332945 108536713 41812858 736423490 400436344 447023257 984105191 514610402 892895457 155054100 261361355 277469361 935502530 683505402 507318491 656516088 157314051 724751045 129606509 490135271 562384918 934578738 605434906 928155238 740009003 822580030 746774683 488786342 469401847 305389770 358759412 762917072 125267129 33999171 438844341 536623671 931559132 70630145 521290301 845564047 624568945 863214426 143543252 514444402 847163312 554482867 518159406 467410533 703536923 129189651 121791653 779068711 119687549 512050735 724360797 172226553 204438914 241976900 981639233 653979779 283961603 661113537 350958343 159871027 117745537 497407947 512210553 382674031 120333102 267134750 63434716 536839373 602063263 671530494 808197015 103218961 520264152 166065019 120259605 522413427 488766771 17547477 763873397 324489564 567672342 580787021 141586449 636716929 941754315 575856535 284649581 975496655 237455646 419673931 266379676 13835456 602845408 869669903 933554413 615981661 41587027 589735268 698680523 442061636 347505004 600857068 247472990 969468600 372126066 850364677 948255082 85624003 322093393 692737995 463630322 999187649 306579573 36672853 724748025 750667089 573279738 961884696 390641519 602695504 658558191 698368808 201122237 163931020 524834859 669850025 565483659 826127058 672624179 137985426 89161477 806370054 874122092 437147878 873645528 756736040 871681851 904130646 580064394 372482114 855974177 388708793 423500577 985081482 282359479 73977207 721597503 247418572 532648220 233835537 605103922 381696147 342709150 820712151 208019883 938649024 315259852 227315385 689862113 49417747 682317607 40615880 434432632 948864044 970781452 253851004 311908863 224983791 531125745 715145406 948306554 811633746 334217321 875433029 832148908 570105314 614090396 829267659 92939287 65506036 332805139 110009753 81228094 382766552 427047443 111714629 169489030 969056668 479869134 201226427 212302505 756865554 761020002 575104960 662675260 554812873 566488526 795036524 161762980 18606342 652519546 444991546 378931038 402817178 280792275 656585295 263666456 931420594 58738781 437750573 783722245 693430998 869407221 36291034 574027362 491532194 476313465 704393738 254744709 332069549 617106234 326150081 639369433 265412695 240877078 322033177 141460188 554339986 187104902 684418890 813286734 897410930 241862239 275380490 312730770 440201067 117768991 564029343 149397294 366586077 805224998 216462498 530206829 229640489 127705558 691160474 771542029 466146951 536746425 675706001 360232813 472461561 260688339 348685151 285152794 158693641 788525318 638068249 593010024 867089892 693584337 512384422 147782029 377704944 158263287 153635217 610781982 679882179 690130214 398435893 355522893 827821485 603048082 418059596 715179802 606250234 356642815 296646297 806685628 838118936 243480389 580317095 369359509 175373992 454366585 356011818 908741554 299852355 132069663 206107686 774820618 906209490 755156041 285012691 633272015 524134963 444738293 645487683 998019757 49547428 144881021 209719697 845451624 158361806 381525902 732135799 7946758 450039367 662933439 90196623 112862812 247977857 675757686 238500039 143297692 578401562 419561596 753744506 130823265 184897312 247655322 77995064 727700597 734882040 700097487 282183307 736725881 745608174 168154521 625591896 903718650 671759028 101754420 799832749 31368825 712858037 248172734 640191571 637706563 635154420 876388641 91791348 156860630 447733469 828248833 472482958 726444990 115202095 740029346 42311260 508494984 445442972 989415765 921039798 280717403 168826870 667411480 123092815 866058227 197458287 189665232 512327446 17629146 191597116 409486244 3164755 163136558 394054635 570745105 630130611 493717065 668144947 417768697 72068545 320553874 351629112 889819179 710638685 274328069 674016667 792745484 886762092 717537329 15370139 761549020 335240205 782821066 830778549 479970230 215853662 496053637 477060505 782996611 188916231 841327142 922305921 12613217 64673531 832769938 440954649 891215670 431124603 496352810 297667936 296524810 765314752 967737484 574229272 889201600 836227584 236574852 754651062 781225986 942324376 789770023 508964396 497509444 123003622 888490313 121050749 688449491 775966163 219273919 337890538 94893668 821312476 597516047 950468521 620399166 896429736 874021799 680332254 786902754 991843296 739430172 159544352 158883016 733088173 542534644 318696214 977212015 139602910 106384819 187824773 587140224 867992512 178672759 127448155 292976507 271402294 479912075 805105634 467954245 699535874 154608429 249660388 398174512 65760100 604572504 998727528 680776006 27084194 21459104 255010729 924406439 100452734 38023004 532573958 986029192 725065373 835256267 430716306 244718933 748273892 337465234 744416069 179926449 883579323 544139033 374659639 927800364 503022481 335119040 532713232 49720132 176826471 98685974 266434439 539894150 730991466 335749048 410617591 405697744 890763018 186482296 586414986 503506265 334492219 447990602 326495646 407477581 978913759 496487780 104840184 791400408 935401560 711386747 669212935 158937484 408430090 686900210 403335806 152983863 36699014 52224242 321708850 941552802 327997195 711436117 485904158 451858219 561205336 521227522 170146253 273551305 652218397 412056981 865028269 405207340 253644275 141462059 747814944 79980878 1000280103 862148125 294043096 693239935 852748951 96751622 858165043 900518917 788950092 43782477 494067202 576461693 222025099 812489175 224038096 748528478 802762096 810662571 407158684 386497739 985169079 487866875 530848900 477148025 102672303 742850261 664531352 94845666 342486861 294552112 897798593 275001111 751950990 937942800 759307113 97544617 269824428 949662179 802243638 823044099 657810422 499974864 921148161 354110282 710747542 17304901 242327249 900978046 369660467 8243557 193173821 253138227 268056894 955337909 959515759 154042416 841443547 857318900 676141449 391184317 799391098 854701936 45712810 137854297 17171436 111329994 116778370 815872473 554220526 68254936 755029744 362211565 891688258 684136614 795178821 4264678 134020647 552775387 743170506 236344217 864527865 702552546 429888576 336348587 651659761 128031422 65465044 70060873 80135419 307788437 51858469 363266958 582213513 87296515 965721959 112328857 371920306 961640535 467243016 33134526 233017145 39400711 197361691 239452309 142548167 951787575 475088343 962308142 240285992 263721765 604651417 576453728 888819559 122938305 338944332 406550554 724720722 196050866 7482822 252311446 250001783 790008623 668316341 499327809 33032330 938312518 549895434 377689842 150605407 729590909 629102759 229521527 352033522 242203502 995726770 76094883 340624357 91208504 4599812 335586209 362208396 11515821 733947303 816340344 300625991 515071229 90593764 530090769 253283253 409136614 724839681 266733220 701488437 794572275 636137155 8228169 994035627 797459510 147061136 718046542 28647881 11289232 293071792 781397433 93782262 296897555 910682807 600319486 122515091 224301462 857233878 407013346 125577834 242285975 961127243 871277257 591164531 662490862 823241958 200214844 210025615 31568491 680804136 995259017 709814552 203237936 23734962 220732573 776387227 586245237 531570213 190645821 221422501 888662672 610997452 856737257 544620895 385329897 920318039 409770359 404597816 859546583 348770738 291834378 927146575 62108475 100276701 535095032 268097846 78026771 452118480 173697866 510000417 148649197 647534635 525876497 783698450 524241068 904380737 221932998 433923754 548559111 661514748 609279289 601115155 843415254 766994311 198796609 669733242 160908687 702524831 994466050 69126241 743988707 460218962 485424284 168578291 734428808 955853377 884827264 532699464 464247253 918221539 203880213 490459163 555729416 444622389 763561252 85150279 224343791 186128048 181881948 566095362 878669341 537479080 70906637 366655281 519818472 770271862 531928201 164378492 531458310 633409745 230382441 189028920 362166419 330020440 268431907 162861299 386504254 64125794 217880069 111277156 383287419 840408376 624777535 672652847 145999837 650391173 902992284 704984720 394946796 811767453 730375533 667557483 879091289 555568302 351528230 391645484 617820518 461112913 100728053 239285405 930767262 624611743 575351913 718501770 919605141 499433835 825041326 953429726 461378014 740481455 823181827 413768659 372548631 758349291 8232151 38534010 998381553 113023618 922252676 150722580 421238972 263362914 394388868 362610917 202582499 921641715 588159469 794937125 914739888 258622868 622087926 370771757 223643073 521087550 863683779 273294106 531123162 890856466 476509039 315341222 969957701 162001341 471484438 962731086 891233733 606246524 540277898 169076295 715420198 981487168 35765782 190454733 592434941 22827732 527769869 579778636 929209037 537614195 933601508 77408733 207352775 346658414 738005295 803300528 825720164 300445463 399434581 119314367 434200766 128840851 678485137 231020427 58015253 662692991 602523448 940207572 445668767 376002541 474070680 85025066 836884055 753658272 670748563 833911676 949619509 292785198 229291993 502111600 338885210 380397773 314818887 821254627 520260919 269907151 601780995 338763961 399955941 87715621 624757823 237882328 538203160 853597550 70343644 374554039 629434152 953366237 968396834 181601188 87981497 805321137 154505516 646828970 670520512 102079467 452062119 916492485 309241191 991037080 974283726 734320419 339922539 53439919 540981055 960151711 846003262 478243675 499352611 527853817 641562710 654937441 603918847 203439328 600551516 12847858 783754677 221821652 144731714 53323019 770623478 685190431 465481841 360389818 195722391 857050368 837060478 933840531 983596027 459541635 378967721 818678976 788002991 565310233 279654747 369091173 902569408 818686097 928190335 836293581 864794107 407720850 441808083 382364022 837306186 8018587 75145624 906606464 626409435 299204272 308733220 692837605 691266594 234925993 967322361 20379277 91749712 509040546 506506015 311033605 670039122 16196531 839518023 669954381 908264011 620898770 257292535 880773225 284115293 577432138 577299467 587268371 361406820 627447462 289743134 878258 560044179 650899198 139661847 315240443 355012178 64737574 711821268 446305781 545074333 5558218 859379675 691354128 32427675 999516447 249173228 323452431 104315869 691261635 965367085 712008282 916308235 783667542 266367992 716843003 36648615 311795646 429319122 333826485 758966669 821733235 848690411 253888364 496587192 538427001 773703191 700222390 178537090 20496999 551780 383764486 880683716 411317949 546586258 351921076 864116119 4185858 185787335 523739740 754784871 773248145 773395242 230262614 998899902 799809241 781647679 920342763 535225960 164106534 168552450 629486739 424064736 282487223 545348673 867669610 57937197 63765835 885587222 105444249 109388707 645691276 118269393 627791138 31828873 271331102 442242182 474442800 686519690 396746268 911505228 914248644 697108148 86275581 925336947 994677430 484300525 963758418 468606829 591245756 652578731 97633366 399091616 691376088 37367118 430463233 616092847 599632709 959979128 564730202 405968958 893873922 270472364 859638740 160788297 401446106 153905160 260812291 391405295 1002079784 849578048 77200109 942061606 49494407 208452894 296044352 226409511 383924244 488780544 869104152 647007621 192280908 946911687 235645716 996011119 733869077 713758711 875994610 714026280 198757703 139757537 635366395 105407756 577340378 320970497 483876201 46861239 283966204 225395206 395690160 472238011 822052507 338941798 197451314 522810611 169724580 103248423 944530388 758164503 583389718 102775819 987513775 456668948 519782748 224023641 542114117 803541781 568491893 990986319 992512704 935844983 491604405 424248225 244753351 226643333 906291775 122263398 217070536 722853398 458558055 854764051 330996174 620404105 951373613 514318163 618085526 909362749 964119615 677359312 336910536 624012153 701225594 464498966 748815341 308119406 667090030 365653723 504234629 427613452 544335858 854826862 342425707 158296640 30635883 362765942 102217014 778141039 514717237 571548618 144734598 223206355 174191797 507521284 596186474 585797129 267483554 500648347 735825208 910065326 162018121 665227652 29073571 759998777 253298100 686786627 590728483 535687232 342092097 613111065 324066840 286282142 995414968 846401844 438378614 275649263 141251745 460205044 628625227 970734128 923706891 313129868 659313465 589795874 124232257 366591468 486516560 89123345 164345967 297393008 509554035 61980271 661925088 488764412 870649393 615296421 170034553 49974592 92706129 38158951 322825898 98762785 746586332 760701483 998903725 253580594 772700754 475387922 896227149 778107089 478618245 989502204 681379322 127935433 790317192 588807701 626980647 97929314 523443907 993204113 973444030 998886921 212059508 374898406 690940148 329982133 159577842 855633764 918521155 997355873 28067652 237316910 513379644 901577635 663940527 120365470 317226877 301456723 658245433 120171881 634289219 651776563 146263515 108504756 66026712 170574316 379243229 200809342 111637654 647324383 586910872 606171802 669032197 843439458 939149081 491551471 826130051 896679769 695411066 570653162 723807616 671300145 524403924 780131254 547787198 579975031 800848254 357699107 242829847 363137534 854130586 701869811 178582067 712596335 924625177 132789894 340023172 859517731 198736007 494817822 716128073 748147535 180154692 157718049 147322676 294519824 18036832 152081346 691112458 371303214 700201775 655719559 765685455 8793775 499422151 884230897 171165887 3357222 878574965 643004031 666442358 438387281 76662280 548998735 402019549 544645155 205254453 606562629 735500680 985394065 811155418 996870291 159498327 27324442 440712705 813421220 305527099 230464109 251686679 393203356 588557176 504244326 623588552 869682282 186193088 431049765 285241095 464570780 306935055 280387928 946692546 627646480 738579046 61743395 479916837 292801791 823758417 11459673 436679129 241548915 537249752 841459883 606557771 765511898 550502315 402246186 531424209 499111963 364059284 535337536 187401857 389211326 523566787 90282347 925152088 386414871 750203137 652367653 138660424 519786427 9237720 732048436 98361360 713778837 704000575 450482866 164916110 524762039 192979106 451849910 395515156 771331319 663241159 464305887 137773378 924600350 397906068 53623823 547127271 744726742 925614124 658550805 54997479 45625826 138101396 69830867 824170880 935258877 346395931 279900672 763088153 666466684 724395259 425908089 223061915 61994306 832857551 557723446 74334413 79527464 50374340 349368944 969529746 108184272 913601440 944604255 943187904 961167488 108375163 918961300 122546626 87688673 481155429 141293896 428987489 157838423 561708896 222816155 483324936 252091521 721007382 336410122 604651410 763771274 385367798 693320372 430856784 249066449 343281709 572150963 354697250 91442982 830668393 122656661 218683304 991215127 817502655 162390835 436899945 999007522 356583230 493545215 650293957 232892277 6690612 772361251 280881658 676038534 488718642 568897909 757895506 155990226 674426992 209953008 783503710 178783395 103142981 708086719 245432477 778765290 1002290765 422613993 350363925 636243280 686550161 143768339 740115365 630678444 341315433 447352896 835280402 874938637 694540102 863675697 474332915 935321972 268647993 264804764 688373565 938070945 104239759 761147699 392602625 792188315 240707738 513136103 739695404 481285579 496866298 343865580 814603104 166862536 294571908 296160321 285294164 558197783 808433415 261138872 142407502 518158834 940751524 321265561 182298037 222812847 977851367 191617287 374162144 317235288 970168567 924379079 406192001 260170421 301983632 569667226 828177218 620443268 559593193 607600755 622858511 828341368 404584747 569725031 741029808 36128436 250531209 324229203 580082363 462803704 975421793 491529871 406966999 602207779 51745365 811557210 237120156 491440848 528794053 615795974 174790390 742172177 722931051 186038283 878433648 857367808 286893176 125040831 962307533 785637795 442873806 643324995 855458685 727709926 754536043 235948526 768705398 828009280 551908952 918266028 673191598 547900722 903965454 408347356 231040083 951829823 674819963 415492970 308742588 538398746 49408454 510795562 912207604 283252479 592318740 421723996 562259899 29342632 607073086 390918500 561878715 59659825 724234391 613128937 735130645 994287183 302230452 910734375 331099822 989791744 251840524 295038069 105161077 670546363 805961361 480602118 702803083 446721024 925531965 856964646 778949747 38612711 893895211 115656440 404699014 513095838 331832712 649464319 720437548 409985437 985748501 713502141 559632109 955642461 931452204 366665471 707429676 644098715 218627095 244980328 132681617 332840083 746209282 471248691 759887073 790294366 114010995 648389401 262334927 401079680 705598907 292579963 786234075 874225018 675920006 218683614 476042899 75523206 136590867 417132338 77382187 67187445 968545568 140289249 293898364 747666423 738148937 690467573 102365694 968568165 161369897 245996303 487406499 735338974 973559766 28146880 80130595 840760391 881618799 333740925 409793305 666824814 205166738 174271805 88841494 660871541 627790234 360414986 215592059 232319549 472022446 415802085 700379723 936462253 173558077 744320420 265756829 256736902 630014978 383087941 870866243 945997841 668682200 714713778 801156392 942143972 361457463 541119355 224421426 437542448 496982882 606053165 531211881 201584515 600598447 320422708 595486067 42292878 546284745 779305611 418232632 102288147 729773018 340363351 447207023 613761823 288110343 994677084 237399599 654159016 600718300 721577944 667583737 161426977 876747954 547449206 404691862 66344661 106063558 187952239 288065871 498024034 289823472 690584141 591919435 421321044 325779899 571784640 509725131 52185717 468179524 178743300 397360698 787840007 113370295 657464115 136741090 415452190 506696970 464499481 570220209 901947233 447911088 641547391 670782261 969470602 771497072 40728580 181997025 682527797 793591574 784343780 332890157 725907501 275793333 832328301 617619412 169241486 77459827 865855353 641533724 577959190 826980999 77117808 167378680 369097711 44202237 159076344 761021494 452254607 539640659 113916566 694445621 677130204 401261900 652702226 386937967 158427325 413204032 675998705 698986057 102400814 963655557 720588333 353202486 752548056 249492551 221986403 521160374 890198334 304281848 817511762 634511725 336093778 650543732 787519175 475393861 462021622 599891679 838180742 24548257 745704749 972635510 30040293 727704445 861773518 34409663 524310187 716215192 265110659 692106352 187848083 476471372 94542031 24736693 109446283 24604284 549981286 395823146 310211985 365644344 109593703 347492014 36805597 682439252 28596233 147256838 604301649 162912758 958634371 726936703 816770221 641719691 111919674 82038220 444033895 947414009 631996259 508139918 255328718 918755241 10441265 422917245 179868578 428993558 32896072 879010858 833029915 518576906 4232520 804536134 88561725 991959194 269205491 141155865 958499898 712622688 697599930 716361441 999865199 25864652 633151670 449465476 587337145 441293568 755936419 126076252 297585203 673309237 818176709 235007930 25652111 620157566 269924189 829775752 669869572 715127457 390411698 832714305 803157690 578944773 331474161 880589781 84669007 723222339 678260889 960584233 539724724 650320928 338823984 459270223 289705488 847905535 359771359 259346832 792890842 767745848 486615970 956856336 814087797 673882046 244289235 530584169 942103895 514609040 620565280 930210180 337287111 433423560 225806066 415047685 60505029 283790073 849963722 284310994 788117465 96576274 548451867 114023139 98998100 11356571 370996075 615109941 461539325 584488693 52584860 68435479 946579307 425409454 291774981 616278906 746175160 548906248 973795392 847974697 537093661 619074824 358952655 185296826 601436067 194360241 593771548 79141202 35331059 309931878 49030905 531062416 242654492 217242511 935952121 848315793 511723529 554926774 109414302 811682330 450238859 344369112 185639550 408149440 375374833 305397427 258722271 351868987 445682182 402022805 2119864 720735801 579742189 805442479 125294835 46135457 814933648 379606020 336314582 465581609 714712374 100664070 758460633 724863985 474934516 275771724 175016000 706082537 271236587 156744159 535205002 366696228 973798397 106177575 310465666 359778019 640096484 822089724 405993837 614296292 337677275 857940736 449375856 833335323 906410950 822882525 375484099 526886621 989516329 859901624 967023576 238547613 510419943 858887557 422096629 226183001 331837379 460201239 802799237 992029691 73325772 313879065 934732969 631862672 902375491 897411048 21526102 976390745 629073861 209674042 943982693 863423125 877817977 569360598 167321073 190088161 717649791 768964777 566407072 546481911 266069667 964682572 363260738 55638448 364666869 393003161 129133846 608242469 900389857 141854814 348951946 722761815 288547183 664019769 100974536 529356950 71358923 17019296 119418858 8911192 747100582 565425472 39327369 248194996 638848573 926439074 945550376 773377723 142751827 515502812 645791507 45933394 744551437 201493696 135027749 273912035 262108339 804803038 406710594 964805585 446839201 291101266 346855303 837742597 968961238 885646859 92993447 457983954 312371728 967641678 770788084 283501786 255709297 502274925 230872829 542886613 317201729 264498612 311457557 892171869 499869129 844452886 841580390 368981388 319151766 110565888 456015058 326014346 635013241 51503171 912525879 566969304 992272680 820343797 713338084 476202580 809006454 37825497 690477771 776562574 867022779 173250637 565913035 844940856 420029042 794934636 54674562 102529435 651473789 117295669 424830739 213077992 362000324 361863425 471866488 757608461 638427980 643945286 8790801 457321966 782446864 996148492 935462336 681833851 341159318 818872612 595161794 32837989 859525866 370735123 749342833 382063366 567952854 702027857 270133309 749762092 810126034 423288159 442217058 350513886 771590153 850387817 486604630 726534964 238085512 537829124 476397260 143714379 681727034 250045641 905852400 156016354 307366466 787314350 298237934 163683359 567886773 518895317 335120734 954431343 734157261 417540235 1074678 786985676 977111641 704113112 691496696 47078588 651954440 805462670 897393943 101031241 866088655 253362353 592827538 515492306 335625913 809804226 179780865 711773713 487166562 387359230 940398698 460382210 79069396 299698808 688269501 543992564 323623004 647622364 374976285 743837570 193433366 833009477 532012576 200220749 362982528 906155972 193043701 424224167 219979677 282777683 718402704 997829564 469620000 479497421 372542545 132042981 551232609 309392655 800202324 971695182 817741917 109752091 497427467 296467017 928026948 474153246 207133096 489873880 906577035 108439558 564336661 312577001 653516969 136124281 108018975 196453348 797581253 475001662 835686805 757921494 141282120 814455417 72863284 434820094 401495594 692932431 582645859 813803606 194679327 294381965 521041552 272420517 343356266 300255797 295769027 125251870 653727742 679008973 233431975 605492586 831432658 333476379 613308038 12602260 784156687 326374044 237956874 313543995 55030268 659012840 777646172 715902197 764454531 74227749 671815838 656818029 660844388 69140226 344423733 898402254 124318897 171542491 608632107 660074823 994402918 413597577 820151563 473350014 467863829 47280495 530241439 383451876 514402411 679026879 165602927 395256943 233584709 517428182 765729382 325222655 876201880 969496948 454188030 84506874 682649091 943728039 987516503 97767981 296981924 759404507 405439176 203041495 499254401 31561637 589586725 213868720 183230758 71178266 781050609 269386318 50276309 762339643 62786748 161037617 682616581 605119226 317181073 163417976 668789299 853914211 849145290 10048981 901478326 736853961 633067333 929069274 109332520 613730439 118189027 330443524 832157785 216201912 975710374 718533348 71985284 76980735 64214076 19826081 934265606 397401935 309974818 720139640 604956643 880614370 950030565 23872364 33570950 1001282354 287478817 842727123 350746089 121827143 562706803 283952691 240863501 197111087 878196439 659353929 968302283 159623547 562773451 831769800 491504693 328772111 626041351 546635706 133324209 997502108 565014643 145916704 389038500 990867575 634326778 156994637 862060813 844024303 266115786 149627020 570356536 952144557 779582352 211692548 771155626 68340062 734518161 545911733 814226496 855852894 847756662 336035577 334013242 494957280 277028509 743543344 798236257 713128051 745725792 148789950 172614628 276930087 660450855 565492488 996510135 562692450 158760011 555729536 518037958 794082823 132763017 674196493 881267788 196725512 282285225 325528535 28815364 992901174 934887764 943541620 765957649 270197709 765423984 541075785 871995070 136397684 951953328 553487158 806129876 42070413 149900922 114606319 589375792 731096455 913836699 401779236 692209063 426847441 788756164 965629205 373750913 373979872 574165405 230024297 447564999 836071379 853675410 320170493 696555247 890954523 106583619 777996622 517577174 947489623 664119151 488449300 460424413 308458413 759217917 753022626 336868462 755516839 907588292 700315220 690196236 938152581 104958472 391025917 894810030 139230058 998991146 579864832 92907446 464490236 942476248 642270266 558137295 412630479 123093192 447009599 95420003 333279057 204548425 59206865 34122277 337648322 544593450 433333242 931018707 332395593 152385200 178377860 291130743 102320637 506802015 996993927 635509570 540074376 928032691 235804322 902826468 403958999 732329723 478886335 338778288 684066140 82260665 571649836 514985157 983609611 240955232 512371974 352437576 699094617 638423780 33596067 891513198 499247875 542710793 93611107 235201500 829277142 738180040 162333423 922932761 725246974 975762377 638682702 971549459 988822786 607296062 701955093 639386657 667565505 964637842 882107384 181192257 178086342 528340299 321147277 824537325 601955658 850358067 801545243 450739864 537271228 662880725 441607038 778050006 737439802 743935683 292886806 446158675 470103399 602258049 167421553 917807454 945557425 168414050 603566731 987964302 422815003 130579056 508155954 759600699 326451320 969050391 998182798 291211270 2033781 449945358 268119541 674229744 181680027 132627105 721217689 326087806 886735919 480854039 920521328 92325530 320157986 882203154 676936771 572778091 744323826 591751188 248239636 566984820 172123962 595071671 874074861 814946496 433502058 169088342 431844529 231116273 983736651 226346571 724912676 734707223 152589355 506329210 497854870 189916781 465560594 718125592 957454798 138490457 310499756 303453805 252519015 444055752 868371815 659683558 958126423 322438557 437879711 512965804 426900805 51875015 129924512 99503028 567679097 456630248 719289295 461310169 531686193 165642853 932386155 404613542 90297712 612164457 973994152 671417017 351083285 49392317 943528596 299985253 644236653 26407336 959431651 102570738 633772882 273532374 296759275 339633016 79727370 294613728 93908327 157971842 128466568 271215473 304408063 841349679 155369708 634134744 727519472 716657848 627359696 616661549 236970149 53715767 573409553 679016896 304409584 325784541 986273285 171486055 54890367 935440368 949752629 270074084 586872435 225964030 244157195 850165526 206253476 786634136 724204049 125411613 170465437 80575247 90703109 563156993 914313846 5507280 62252678 48574377 643216891 242601061 434976120 429117847 463910953 857087054 462033793 617400113 937376154 572185188 456069558 204828186 529374655 582078027 942574769 264214084 566563673 625182503 67712803 440727604 686891199 779918463 828117726 754227233 913994277 928978550 88950492 924091737 421453429 311090103 736730406 137783954 288891842 444203880 215109299 122359228 405196682 534353054 770350579 605404140 873106943 918725048 974764252 917371767 342338246 38479160 964916128 720747192 722084634 801240437 349923726 514300143 968049395 680306574 72127150 9943795 932731090 596351559 254721031 987006239 902499123 112313611 817335634 144155121 960970863 620189601 180163666 718215715 122753816 255162258 768073501 144530306 271281951 993862315 288363326 587470253 712973519 518719243 789885800 250597193 437265285 735611454 2603335 44847872 175695069 257289854 354008716 706307374 208453621 274727193 286574890 936664889 348033252 910861688 675730079 861018044 114633745 157175874 330027937 665617922 396958309 27470068 646013815 841930803 979887682 105465622 882259467 462053576 257395360 406314852 337459291 474226396 51645761 62510440 283235871 977294034 328659313 853554129 316258217 292817269 380648030 32216225 665999619 933695232 61415506 313664316 962927678 429137343 27132680 13533791 93918354 660215516 793055458 338203694 263012039 865074937 429401666 796436968 361190093 420165717 888852837 522544165 895222507 935438917 693929675 261457264 648540095 931792689 600380201 306335539 964376963 595138943 239620940 323765207 983558426 566731213 627352389 618353108 489648306 820101579 715377872 11363149 848391027 30973400 206824816 491628944 58994113 579259428 575947703 513332235 457027616 987803482 368546636 436141309 979092114 32463694 762912042 572245528 388964381 1394385 446855945 204839280 196010499 330132609 812092758 234142365 470650869 992312049 972195162 872971738 455671270 331223845 841585806 187919931 965856992 150158253 691568545 902672554 350362919 669988747 789229020 249559678 795566316 917377971 307222981 88567681 571034029 609319930 798234244 888646371 361169768 506309425 964227925 672134207 862732773 634623449 246900843 593081695 606470976 288087220 821930341 879680161 216824040 224409813 140582488 114337665 991609498 355523922 549335399 266973063 469601301 82266462 526224193 621071907 439900840 925011424 580592062 336898578 530019638 959333134 844589188 940513590 797599664 349106436 990988724 639226570 512799991 311604524 61436486 499621324 65682843 217818821 391695986 63750943 957557651 678563393 667391509 277175089 338220194 251415424 919115932 919111192 222746366 869315077 120510899 972784273 859546481 549068972 471611262 547475910 702629250 736909212 507944481 32148482 109806565 478714949 454047268 245556268 804232087 149602151 995920779 158886636 245115506 475950555 446322469 737606850 874474080 628924812 278712029 612206837 926684647 39103091 506598801 47239895 970284375 884590348 851773986 70313968 452714763 220877962 765670855 666306189 423722126 31031162 86465093 230092577 535081885 839928165 837965803 347501051 420621395 426652642 928331482 855269217 548899870 493895848 86973366 676422346 60944340 481806273 489831193 741738091 273394442 602200132 447883655 664686558 782997542 837116386 247105668 373242447 74993459 134378358 182195777 826730678 752857906 41368597 557978072 214840429 703701021 469969147 214964619 809838640 518076029 167039141 548692912 186523182 909699834 857021211 31372251 283960497 996018795 315313162 791716211 318733222 370426626 449700999 693469040 396861925 998768268 577588412 583989964 789119047 987972593 362667215 803587248 771508615 779014600 548753500 657775491 773080641 115375006 296702460 802516493 65855698 528489906 167028675 468095426 929673056 430098995 336416256 666086775 687071097 628878554 621631489 322678904 647390807 520117563 323898330 372910270 192148061 800032174 24655549 80758252 837458583 301359595 514619378 571509211 441303452 777069438 705923821 850032235 73250332 943619373 32024915 567775256 849056563 244570896 91740162 339863766 117521819 647303739 123077736 105942648 946806772 700328486 813547267 22915471 414499851 175541647 826680923 887175761 651398011 124975165 49034863 947915390 320713056 532051335 674639538 851622907 75592223 855448113 505205303 446454221 860181704 836801653 160517767 239851675 496093073 756967490 247211879 523531738 571058282 59195485 8913592 985738052 277194389 859179483 846988318 478310903 992742423 463526250 787566465 219949228 593727610 2124429 533540838 757278605 409931416 306307610 88612161 602295505 120454797 524641459 87817652 687743971 526130761 35059843 885531610 763136253 137124773 560267985 278905853 658746939 746674499 989036889 866085815 985217283 808327962 974706012 259881923 620298977 512245392 509358741 805734517 294659427 593994223 96329821 824504731 175882790 542825074 915099385 296702475 464570695 509643819 650891771 732380042 68796477 887279593 766733660 843594268 268778350 215110369 36761115 668221595 172701102 34973379 913150897 410702965 402718182 849100906 687284105 504841880 194663257 616627906 736085957 697078008 212005182 190239554 968919047 327085903 286798946 347238413 600154900 702710352 695801529 705944819 76182136 730123991 740796579 517916876 379657507 708864374 101668484 401186376 907884575 762306684 845251468 1000844601 411671450 408223968 408175013 760991566 537830835 813234101 278722337 213761514 717817797 620416135 654260072 571439363 340280556 833254845 279530255 759764967 593750200 145018495 562937537 783884061 477232142 902951352 979218842 743406654 399923475 742382747 137611759 914773346 352671449 934822885 504746269 506254893 978089555 573948283 714492973 156141809 328902953 717831928 781289964 507835236 283847195 314447968 37663833 484214683 838115250 609420069 691290449 557093383 430730368 167592255 391115718 100528345 907436062 478214580 887982832 974357650 702535057 112543388 345736954 706766977 57018437 286451469 923308534 872062689 298611968 386792110 805724979 913623099 798463282 619189249 391894040 90344619 57377796 913557051 960706024 914254545 366713136 420283498 820991531 874730030 385064557 813394470 341970194 850549529 455301485 840566141 53725147 541429252 487342081 718691069 139120557 608247499 315737478 698677399 895645601 277955298 714055458 421125653 916761342 580787562 602951111 444992009 185382498 319446292 800417361 456508981 247652063 915890531 317738967 586860270 203339167 184323074 625381636 827284881 10120806 143000471 712888598 938549688 227648746 806319664 603170922 810955006 452881664 523720339 302188883 678366126 189342927 426559628 492795104 305323127 561498565 73607266 123788646 238142248 250306042 968677070 507775903 159470367 21213989 92162639 644002637 174101546 411148606 170271873 446900015 723606094 484696503 998791806 468176693 411521585 142647417 375425635 986952571 585286929 889813427 394572173 306129534 917050120 340068832 648474531 728855420 633980938 416811770 178000026 694004934 53098999 47745042 397248270 793139516 204144337 446712220 122167610 6157003 849144098 756140556 587632088 271969167 980596196 648579389 206298816 430636539 352075723 277769678 155916631 647398591 627796321 160244141 476103652 77900789 489883350 226467491 695631707 412546880 428387529 757611982 161325327 766707089 874159871 664862873 113057037 784592151 943416193 377004236 793624771 311517967 663121633 161202154 108593659 475557917 679410908 760423067 61556149 373056998 418424819 381957424 730889745 817313221 964315240 547167899 872000477 262190785 843995577 338938010 954806583 983430692 510308261 233694569 732061625 813340649 705432858 921921407 119948130 570154186 431393795 843818620 343179832 719738084 796501805 906533837 427793605 937172791 547969638 525036827 479467970 759983427 821517205 484307786 439170746 469116755 791980287 356341626 23313380 564087907 423220379 397033637 476920333 788223026 157288186 428293341 204905401 217464957 466093678 27302238 221744327 157910447 535567649 661035563 424704518 910942339 375656950 887109722 55390706 391712561 902364553 418606716 342214201 880868027 87584771 453225165 672006573 881352113 428398313 701193866 35601082 620064119 597187899 278124418 184652045 101543587 319473773 196206795 926855503 686118273 207287563 831473502 522484123 323680081 913892868 996623816 379145205 521994228 838257856 519044108 924061281 885487309 473242030 442701724 448385190 897129873 13130300 489698080 439124578 770075418 239250593 560408376 21079649 725117393 329754390 713383646 110582993 566973336 352478677 398972632 300733346 591840408 448075684 712941623 682061712 444698188 538053385 812697967 105586355 146412700 360565412 52555994 430622649 485321967 106039785 712428567 751303010 394123680 390848933 316524603 363280254 763193375 933411347 740975105 42835206 922659456 15971011 18371188 91304567 139972633 987860317 329036509 50082070 546009791 862569947 520220764 509118881 344102389 555668571 602680127 191475481 754940438 114804328 958390317 543445535 71319039 609092093 951555425 499018542 234010819 668676034 87400920 508013698 853111279 515669332 312725845 835280852 290536173 932914918 3410561 432510912 783465597 909831215 338660520 16495117 438715933 104813054 774036858 63528375 85021996 918393071 443335262 908250586 994044570 618075715 220245528 337150224 351652014 623359553 670886941 148910262 946564318 976296624 239102423 905891752 807560241 430195925 744510938 325147709 379048641 524120798 219498468 693650301 547614992 698022596 892519472 1000695210 186759727 842355094 495165572 418162737 476798409 716206342 122664385 817258912 977769010 219549214 192412215 804446143 737921776 144018286 77194975 928316827 345519793 156535749 942128839 539832744 90124666 483198269 391659837 364354366 992401228 109608642 208604356 543679231 617671431 97435123 49630425 933568566 757006151 643918014 935342276 228040122 139858525 342358410 707093124 973094107 208403814 350738288 15683700 206281215 325312636 504315329 712276389 77896006 917156937 188677830 136465265 185951932 968276382 121606385 765016008 479967414 351350526 884953872 686464173 600082008 697791316 55498591 903735045 58140295 855056658 318154365 176490019 733278695 637658628 485796338 313548542 79027608 169492439 64810418 578012754 953302706 699321475 598785911 696665403 125031276 60919860 666330076 202053031 526032271 725656818 484540284 976759032 476869207 388225002 523024102 314655996 673366294 145349309 692509380 177956403 527619259 928585212 773168990 980232274 971389952 697557188 917535331 363461679 215138469 439463799 585322272 325705583 677635926 164587898 130904351 177108805 662852315 677573168 568975128 801725369 64204373 831143782 6931316 160472521 175235446 438250858 477475728 780946284 842995999 305987343 231805849 346596578 36429092 552506413 944961743 620120251 812141792 441823029 963039108 736061502 796137434 602336659 980750001 128380419 383502664 944090503 843387859 390615107 585620423 294281725 649811059 417030503 448776567 826980395 331288189 178966544 74750069 486572685 297370945 855559227 763547432 69917846 417030677 79923688 139165015 25281667 536555994 246313639 270290445 130588745 627106544 464710772 880569364 291362134 590082722 185300300 335236511 995974093 783408334 635813474 18062703 822321145 527684784 756877196 734170205 533003007 292633228 900887345 314003870 270714306 278648047 645385476 817307424 341518169 733709083 988977250 460174068 341347561 594423313 907774208 715367983 502178258 518547460 854603201 196650053 120462466 904349898 640581898 833951434 400169257 274101645 723899058 774560369 613482076 9639137 204516582 645026737 340335184 222282914 402282923 693540708 539747527 654984390 957933539 65603369 749981436 608487796 592213441 339389147 795741884 972364030 449574662 546811449 980102268 62131001 329499054 821081877 863234756 366338211 218937713 769385205 475019758 911513074 573093830 773089141 649155164 68269370 825551768 870390312 78174125 35344934 80308461 614224871 265543754 492765466 23511926 69908133 802815718 527529661 188488946 625950136 316897379 137199120 468301701 954872723 283615107 586393667 17847829 750091541 532664960 960876905 638724892 263433159 443734033 793532863 517622698 89529559 914209916 7667391 859114505 140422222 787551577 77866634 638694071 359635438 663942751 434044701 843869138 809374656 818504080 258208061 958969554 416703748 357135939 736630563 900802161 846846832 73226655 665696185 878141939 411823558 210078411 230773521 776791488 177463404 779989863 132735092 493612571 697952249 258252423 598368634 768102686 904205964 359555912 219986046 818943663 594761810 786921319 557986689 800292110 19751443 136652119 722730419 593510236 84539834 250953735 681003495 618837668 688652189 667084121 422435913 321358598 916445279 911374951 523937170 884239026 117488517 864436330 79309200 385028634 649484144 494196323 347726684 488879612 680712630 250186054 891824774 959762490 969049381 735315004 779320120 861147140 938480007 514743617 352843003 409553332 14716591 754118733 354188511 135438129 674204468 133364338 382130594 73435476 699134818 229169550 687359894 100016826 278796088 549275494 81250457 186750826 789499901 31456722 883441400 469238947 907386988 202367793 659789975 886570814 860568959 222442133 874466026 681860183 515810546 289407425 101128634 974925936 123825002 661142688 295479336 160963120 820767386 686585535 482166411 880857523 980866534 427665924 408475038 641014617 515505279 44956217 982879781 458817607 839177540 195807002 469150240 139667194 167642141 702754328 765275873 299650598 887008690 884523169 200434341 24562159 809036365 763925242 496968787 51949511 668101154 558912767 550954227 52344876 858987738 421868527 150657199 960244070 303185700 130372179 131293818 592473968 346569854 450328933 523243152 605928077 340423627 27825262 380269182 557477754 292079712 412043779 291627576 860489535 643715924 521292684 120295790 202860782 619322317 298445900 406833599 532106847 377018357 431321900 80174420 964009309 177182993 839597570 82882829 740631529 68494722 743230130 261413541 249997039 400366941 415614974 604174233 397960612 134919354 3212178 761313915 914735943 770399582 945978714 542997796 671137111 373993061 887386432 161653417 65275845 702412040 358317150 359459521 546204639 291797531 628935778 672555566 892948485 678127164 457576622 742229546 967674407 91444415 95042965 613573322 97282568 885202394 473008378 554395640 960396182 909849529 10178769 536018531 912350335 764574728 801711404 462913443 891594611 454612769 542403694 435917922 522495195 47208946 461535798 275594547 870786445 561948194 286072312 92296930 496202211 540160306 504483181 967061771 730265971 386011136 419298676 163846675 470157381 221248985 685922611 108894965 636647487 484903544 858437480 281205710 907270242 827584051 53447665 208920929 939836918 418727037 555726811 561066812 203855140 205372390 443919119 8772297 884145234 270751865 191668123 630967670 283881328 1000657301 219127964 248859381 867332353 910629678 339550963 926412003 393641566 670115275 693247426 621090215 619257019 991522312 933878925 464155189 335509456 663995797 584391157 133565572 615232079 119231193 98760825 30204805 283110672 983543879 359204497 296731209 738443059 768365211 224144054 37084015 300712502 354937484 807738871 637667539 209989280 384068316 249801697 572589135 866871007 152441993 939720960 40355803 605998243 180334606 208511402 995259146 289157935 183659716 66720360 990744434 304094171 908479361 492718088 944963943 910038728 971541394 423961697 273765297 444407872 255783699 646239601 480402807 929987329 734167602 690598674 812865626 107630352 16152642 209939681 191561038 379816693 716851815 940995305 322219242 477128402 960015623 885558070 945074600 148900200 483891481 631943052 116872690 892009221 763739657 813189836 684924351 227141031 559597430 408473177 406116037 665101332 136225632 649423835 751717245 744770255 834660695 825211511 547279101 515396767 315918071 976045779 341368931 400027225 442651583 192812856 328340153 225989545 600361648 83179094 852383300 756809651 86626217 281305381 321123073 488232788 246951774 577847694 651217111 923052165 652797745 546563674 489086554 86006125 793610306 151601024 903833517 705640208 904366896 325966573 628776567 64976624 171863234 315179025 273060143 964527423 990026324 671515385 513964001 649353885 870755704 219909921 134291801 895190490 8414068 342953981 789074280 444209708 40751165 733124528 670798722 1001569052 464307972 913419157 625454935 942201031 808922270 966475287 965186577 878366702 547753652 604845113 14602220 396891579 425638415 68705727 818671429 929892485 172534641 941118240 535204993 641207480 637719657 1001387833 368417574 122375669 626544298 913182642 671407084 853020252 944369657 82620036 592073246 425094011 802362032 412652854 743039090 954287514 897458665 622393768 77638159 704497913 749050867 708799044 114904231 196457096 565870934 165894192 522949593 723834477 914965766 596948300 215611713 10386475 84390413 157570542 724170073 87239790 717331151 898033248 432411201 615272440 485986869 246758277 271462854 130300705 878801457 568032477 819435223 43571019 783537271 320025269 928569439 813875285 380665645 943200314 959668236 637305309 603273144 885331909 596627173 558536571 260935881 663379260 62666252 529265851 749441524 622430339 114125442 115540861 944291190 819007901 885264879 808307573 709169942 684840288 620963907 561036237 28959297 755719661 976830840 58626226 396455972 993503700 557251407 590237258 883935418 969951360 62288752 57842532 366704459 295759239 250016115 302938421 633636317 890905460 925284455 903259296 744380199 300826028 418382016 69798201 771370175 990431864 135662249 46321634 32933644 808380729 884679868 816439710 417222732 636880647 349698148 882996433 640590834 991380655 906345694 785937469 593976541 25784790 745768122 90495136 26691840 823638767 134208822 221509730 822934531 642936314 508443775 721681166 75758976 571003508 298380318 202518619 423296386 794503945 750791588 338663619 35805647 561214253 331721475 257368152 489277760 929844528 713683067 276770901 256281099 578399924 572126895 408609420 416934349 212555376 629075392 281141590 60660063 322559849 680671684 785246396 869816232 60077375 735767042 267966738 712142147 191790842 785530300 758741892 281246701 779903714 52116624 497405574 494012679 406877724 90480973 197392281 660788475 210515920 189076460 804829500 597712796 707818100 945642058 725007137 41800003 682233015 651333984 597555412 476093407 35028882 642141850 355274054 533133767 803987260 675732333 687301052 992699359 316032446 245189589 155002680 925514357 511368593 794401567 631259211 189906572 887306405 958807518 367536343 786718496 569339299 871736902 453303096 288271118 658146176 116825300 362818656 696407677 171449557 900146991 350373280 769938507 983995521 397148932 144373908 423889666 923605681 724281865 428735647 53950830 519785947 86053591 809966276 183983642 648321999 404309903 89874088 916740471 758692339 747654706 286856385 59818763 461157190 787764117 956475451 392917142 271342405 981412099 746604796 750923024 876585538 852531878 469095150 429496755 530268533 155979500 868953143 772280058 128049622 989253936 234125212 113330817 994531504 153637183 573254802 47165853 319195911 194653809 143181619 954642911 730062936 400560105 706848160 519157883 466733232 418324344 618013650 470551911 803671823 219775092 787061730 19946181 949008473 903733719 781576779 724867459 836269530 673769362 350975958 977823247 895046808 202521733 120453696 491286604 653679958 343667674 765697057 50174521 770893126 943855422 621338772 936505792 740206845 337525114 130905822 341191511 501211616 520031340 104119276 293793247 434659824 900227149 747318948 139835375 46261501 581519090 803892228 213964291 297037628 770661753 360820919 147915607 210538857 841197813 755119599 576074977 592431965 23241210 248729599 990528760 876308535 691309864 32643032 952119608 924761808 68873765 437099403 454523775 656006747 65019629 709352053 201413894 746884400 895656843 892813154 763722387 225796053 71632705 760664915 827677911 915238707 796903519 937607277 333549623 389124473 874207202 271873301 69131163 398309732 193854459 813722137 765789081 718070054 804110808 795863962 227740451 737378841 979561044 692355960 846053432 460759044 273728931 767257507 551758892 558669199 791064066 120445122 563391541 937009771 953425679 176090579 113253977 587346363 696881536 243406788 534319597 593921763 239949002 182937698 89513680 18321801 890703363 85158737 290502157 808279833 448073710 937661739 496909660 645085356 465092571 345746846 287782265 324321598 892515757 318043445 143440576 828287317 309886204 117718255 803345281 591840175 306902983 397781945 117345445 208441686 356590432 357714571 749287321 394982589 29510713 489010751 94956051 892522530 358452535 466740061 368296445 586179663 720650947 325477040 779496997 341772496 414502523 558700313 827371239 582224525 38469422 348815191 650123983 423428271 732625155 809386420 158323888 637880854 893316139 321245144 804780356 741345247 151191645 431725771 451953390 223602080 638104101 52832152 788478326 459762018 167484359 618817469 204863611 565647793 909264200 493183739 589006958 852187130 655325487 443210377 894164440 378530768 497636446 394740005 643843198 242768346 602050375 344196890 436457691 631096753 830844082 666364390 62690727 177243063 342776478 445853974 128541300 806877166 478582905 251467147 462514682 630643953 281980058 140323556 388560320 117680055 32603554 378388943 206851469 651723467 955720103 477822560 496099393 234867609 805905602 944260054 110421123 432480563 741200786 150314730 49857543 537962523 218585024 491512626 932701646 618148490 299547005 698524006 206312041 975163381 148436404 947983880 168694380 839229483 760692290 172379861 685655760 449993262 62888629 791974276 82420532 466167149 395443732 153804601 794136091 908370199 90336766 658160674 27391363 328217899 851419927 65298334 244032090 552725202 402080029 625500672 940564154 850461937 658563375 36533924 251776478 514758867 819816605 286728024 1000331236 724910419 168345574 272653370 486380101 817044266 432294653 57381389 539296282 86613929 604851008 699074129 270543024 788946108 961380294 431888911 239091559 379895538 721872000 276935625 971119221 551830649 707841706 939454619 905249900 394012500 760772204 678164440 189704894 370572990 652056860 186495367 348256204 440141321 880112244 595886497 373022526 107209049 275312023 977531250 751118189 550232698 852040871 81776742 495112824 698657236 579258746 137644752 646544731 72485299 265108580 304338855 171089321 193374035 148332363 67826302 532819250 198965533 75857002 680343360 472497109 432784539 25707500 453503756 966244627 628509782 558695381 789946681 170809886 697418973 959208739 415002981 182678515 645922648 320914672 365581732 624853147 560658924 18470251 401202342 355580617 572114971 966424821 505218183 873990515 280741853 204738015 361800775 657468343 8190557 208975892 772281023 179523849 650696610 306724497 166714525 962433810 621085070 361507022 693778313 786151054 43312260 809403642 770775214 320773327 963851431 728563797 102514450 753829525 829460252 108953191 618387871 651312293 187588807 389228739 449779520 789736917 484780317 399395498 726494865 883426030 789247406 331120792 939631557 284278789 785429404 848775497 612671796 817398913 883074455 374359200 759460655 761537448 534012797 874045737 917448839 938099930 754591005 675965647 811202869 116665638 459059413 789127909 58536896 944007882 9042610 954953741 96917384 457512132 87405281 575701209 553034745 949850077 881428486 910912150 840683402 179657205 571852142 452639226 87440731 732745503 133753203 301225895 760901706 437214432 693499112 336816528 122526171 533088933 440870581 800338810 810811429 727218540 988285731 382231882 356751670 924995475 736812865 628207392 520532752 943454258 9613687 319494573 564468188 132692843 669484575 569534163 530860093 665530270 747766270 658989409 894826677 648078114 613936758 48122216 39408404 389567829 647321122 613319111 59354582 71119288 86353093 974491022 919194894 972968659 751389714 555349215 997957420 228513312 994909352 280791887 178213834 563536121 557353574 939081947 398834219 51700415 340950148 256199041 101168522 686555765 803908852 613399753 962059773 543331095 30345231 329115642 707711787 265493107 375682078 374887350 299433970 861552065 831263726 540503442 292074312 836630346 671130148 283663387 252077460 261580654 377511849 211511343 64286876 995623897 867355594 943917080 518741920 701288893 588715170 17610636 342786427 784336205 943975881 840345246 176643922 26951199 693082211 597863043 439294454 600066565 121746578 132088235 213519452 828960821 783996254 673764952 194831778 119456362 762345243 832477257 97135621 666278362 691381659 685502426 322662477 701240880 780096243 812493395 347506910 703600418 364884931 459452993 613400188 625848382 692658360 231641785 277116709 519410679 319176162 955779249 518946733 176510048 471003133 518137343 386536290 722949269 675614414 497771529 983462367 121349003 678133685 842190596 653751281 831221971 998873019 471217760 785970983 326279369 147695113 536585859 105515836 525903555 137733952 161743803 558483493 299464499 655640161 864629847 376822677 762704623 336002189 795817376 104341683 759267216 202354307 538779488 454766878 38142870 503659791 785785418 652646764 602280223 721633489 91733896 415993726 56090574 992833543 599310815 938768728 859608142 359174731 394741011 363662973 44607225 439082488 7740101 456049908 803708523 228916375 635989557 213883103 549888228 647441311 350247997 93601819 286628554 520270195 573883226 240190884 598609129 847793160 791715045 715407506 133499574 918800877 301685508 662294257 104374533 116283066 208217893 295244924 642844055 428568726 241330678 234170786 540871172 515651759 658869312 301387354 655307109 357476784 438036384 154572042 829251030 176306532 195790553 961875116 544843509 722506943 874523854 7555769 779654196 964673151 981178703 486717347 964398738 322004751 989400698 183409907 775471153 292263609 307744513 160061932 614757258 85456794 996825620 33645696 391121152 555680718 237667096 686605541 225513440 143309722 273748604 805713269 469599926 359253214 938280730 882854930 453040086 789217980 216619634 980690382 448831132 276580957 135585207 548038427 592122440 798188663 447237807 199791359 93899284 34468457 183733661 448055056 32033946 176114918 674615982 386439282 538610744 612275599 783617918 479170523 728265278 332754197 679057993 83543400 805876913 661209735 979536496 796586559 539704395 558220760 566018961 37325863 427973623 759787973 602085616 242877312 185422814 313620570 566865769 225822634 290979770 480912473 762579000 972068525 771060629 762528021 130614569 484709350 1000552775 248558813 681780691 257184986 58455969 495711192 468136779 966692325 344737134 632425847 681852757 600086270 857986953 822758026 745295739 124654766 456141747 322435468 556464125 478511618 333487132 802691231 648214745 846556511 226790406 48490389 830911348 585294844 32151065 311852128 941082462 338716042 446661757 647269808 579761828 611070751 478688764 941161127 494662405 713028186 734412709 830385265 455262345 923621936 429887057 549605711 666697054 164724114 462053399 695281417 50977738 461741946 392798419 154028526 836072032 754205594 127715122 403429978 144748759 470046557 670419864 766834243 962816921 545027281 94411254 25231296 768235969 743669816 186321815 875598387 49049972 846065930 884390629 675826803 927673231 133571108 569805620 839806654 413018727 157394883 450921493 784899244 169581964 606667028 340785464 47332901 916833895 757471254 50209319 417422417 609757388 857438800 401922836 156925943 419828151 971959380 426475693 238502045 400693889 974661703 888546347 8048478 69044826 400522049 495936786 932959792 874731948 394230338 615901478 196879538 522071488 221480480 510165862 467412712 120872494 244479436 816994542 106039673 566002663 382032080 881631886 784279392 695285868 579823951 542910127 311650646 722019092 57093302 580417523 440331963 662916891 510549533 844052025 185067836 658593937 519814726 660406326 92835129 84489817 234502891 179067071 783547569 401132561 738493806 318703872 499394641 940897411 319872170 317359704 241607741 513173021 921189980 450152640 388649908 603990193 196463994 927984796 985557601 381622142 209065637 25536930 96124988 347382472 532071935 186450238 1001998640 924466373 109083828 725983199 262816096 798078066 810972330 772279019 839971159 924998279 195612758 318226068 385342125 778789560 932873270 49566518 491340836 511149892 91226518 617423471 590907787 904831523 766515686 216229958 900950752 14606139 167937494 526475234 585268782 457630054 779290906 915821080 277687610 533711790 519139825 926645995 826695622 673621802 643543628 238202041 12446267 517264374 790756467 517498121 777965969 324937289 764015409 710658047 839314427 599298287 405380622 644188611 217321431 404271001 768221091 658467541 858907012 314893579 394643068 153193063 529389338 209596756 544300794 238552299 174242923 626957758 538772168 26813078 323340817 959905191 783941146 275658628 561417541 253300028 903104006 834589929 160598788 766447113 428497970 435506819 575627591 193948679 259013353 817456112 723691027 50889782 198715991 260512255 773709126 821321318 341044489 655631809 391448094 328686752 42134090 198840783 956661254 35785852 808643681 208212088 598732794 170136808 851477893 423975593 683492462 28582341 86121819 933670462 477663145 106410808 260551021 925591191 216823774 238371249 377167220 796537261 220243664 900096726 501188351 355320885 866283176 980772954 273692895 764168067 271132603 384714204 211802713 930836742 49118266 104717700 977744418 516606379 670992770 720153294 628713711 165854287 547323649 378977883 129767945 796390713 952654444 658783276 71301930 393899827 722540487 313237348 373270142 181518206 845806053 809124304 899640233 803193681 200889827 213959306 950896796 560543305 34383790 829897477 115694010 521486322 487623017 889612685 597174255 414402185 597918682 910152903 444619725 306577711 997390321 860793280 806236610 408566844 354388100 451964658 38059998 669809441 260384958 330922761 830851863 803062896 959075841 542890370 57248031 616009395 860901353 126758975 794604654 386498489 486483992 759567246 68546734 967975467 211644288 60212870 297135316 81222397 396191310 176054624 129758159 390150145 371673995 497816126 871840021 901689985 202129421 440679382 227472269 900745854 739206841 88077720 171243960 466574353 538644177 541141397 547938526 798638274 260183383 428715745 713678186 969367637 460439016 637859262 880560060 648976977 764796943 923782918 940723914 930481675 78974891 271151329 352381706 51437097 842412753 761120741 175435903 602043057 27433921 360964831 58794076 153541521 536655171 648212957 897040836 620449914 320632826 666005676 221599254 100144926 592659207 30913134 307021210 968261286 150560661 684165421 668760574 618404642 47434006 75383362 118139563 146243139 505279071 926561045 887134128 522936822 585656874 988805623 600958677 291505426 486753388 746423451 840709056 901709502 437186283 576446431 606368045 273371708 690418541 718249798 474936753 801766634 906472362 876363270 528983430 975036385 77468123 125866614 292764822 67967776 163273540 829896312 733463350 117199647 797954467 693655700 771416847 693593147 404208971 803642264 775707384 596432772 874093156 241705310 778814173 570515160 710040257 466426037 235557432 565251175 652493016 91511347 461448170 487244976 163561434 648606076 758596225 854862181 63603583 4866257 630590046 950361998 730493301 474979859 853419417 110253079 968124695 988086783 494434967 450348776 685173090 139398289 876074850 81181355 578672704 408151171 7899696 686337959 674066412 28520638 645339725 472756621 778042667 109973665 263545249 85968430 777975583 908176241 151877143 873219442 60402164 252179809 880810205 990548657 202523601 299140260 278762350 469665677 820085873 254123046 423178406 231166025 752654258 1000286132 839746546 583205648 149277417 244027872 19902525 817469382 514362846 858001096 949292663 119802175 924429545 221129631 603323062 744320732 592120657 957757866 631134647 890971272 305078911 271389613 588492292 572242189 542939226 609295766 334644932 310477956 628461218 922052665 12376481 715008121 155824815 576010875 376373487 239704767 967555469 693910954 121778988 620154232 94248578 432771767 171628466 950000514 732932692 813110389 10475220 833234431 147461477 81031997 151405710 408612817 846864960 852444783 907762424 232702301 760750417 943912449 827023875 34287088 685860844 889484109 573336600 560427415 185322728 901406299 605701322 179971074 735444947 893114961 106435265 942327449 614617540 986081067 648684154 829679432 85311052 38903144 41387137 1925842 949251574 891378348 477728276 605316941 242781565 411195531 374029214 175073537 498112161 375085249 941097942 870409160 873254041 934619136 943955700 698852060 618503272 219830172 717513461 430531551 329480576 462807332 769382822 688046965 320929941 788187592 178910121 294139473 172635936 795284612 249505285 409084771 891358901 837157916 901374987 486105165 567948849 650739484 672414097 148538843 788847303 569497814 430992725 229018807 651473796 835602081 638601937 452946029 221829932 178628829 37420760 406754584 577884281 935082950 500143540 576308049 291348273 400094173 475564853 825204531 512839774 125692459 108408784 732638438 698738372 572610352 526432808 747303374 110898602 699793419 532318064 860198479 818110028 339772392 956360987 832088599 827709047 988683780 233679793 518899811 854521796 523527557 965637090 268748416 174882536 475132529 891918377 876127515 825755776 536208766 12939885 351790742 150442080 944833823 360551638 33479575 700502450 281947352 4758012 458306195 136476507 414304725 700693288 719814710 548496652 548289206 298677255 55572858 801080276 35517205 399525 223954672 118432198 806253196 241924337 945067380 87795792 358783597 588274951 290578699 943786988 156395201 25887636 438886917 704017757 868630644 672486345 252334580 250454516 144511673 425303954 233636440 626394000 33380279 813014815 844530662 90671001 547102466 409819794 287345128 204440437 814471314 473232200 416720100 465255080 958789348 698657970 651849928 406669009 709468320 82596208 836085522 316285666 336830469 940776286 357546404 962523234 974002262 350284524 715491107 241077090 435353129 986966032 617397405 710269575 417059431 910872197 15482376 562768110 879940868 909758073 63817130 405278763 183783472 893798682 683377524 874077218 907551418 263374690 66184650 90071622 397135931 546275208 158467349 892510556 642640325 529186020 492264079 766864612 410114217 890628951 516367798 768086804 309000322 544950606 48926314 231153908 674444055 342062195 624611855 799216349 613196933 443125921 327555728 248791751 550400141 388607392 301878260 356313253 566949939 412966154 220239117 68816865 896288074 489021787 430402351 284787495 637341146 472014862 879553299 381516720 595934337 836554522 783256565 824535504 551789426 143130556 905977338 209904449 785767863 225679388 911020961 626288705 371428871 704896014 127590738 787430076 837725366 797606270 273826821 978937511 346002928 860330576 605197016 435760991 257518721 287541865 512192037 599062232 841446259 111667685 580242269 285002026 258255899 551316315 419682920 559746145 944836039 193014801 59242581 51776244 633203905 877128049 248144701 877796677 751945451 779215002 194073786 98321472 902720292 248045602 115609856 12894898 555936244 541740374 110460702 639633491 310021602 767449999 475389521 292362699 341364706 178849906 72993665 788998005 356855861 194533310 127608057 774651755 595939191 472029718 378892251 535490901 831405075 414635073 118729057 235793924 952754889 308890981 8688092 466911066 725237562 787752032 165543226 441288927 803549008 561421266 601090015 675858562 226387785 389323833 498651719 209132111 880221900 429505979 645095259 579069515 414422756 616675196 62852026 794444188 338608927 355494513 664114868 425838608 731648102 399969234 506920853 662545615 461811478 988918604 600796478 541038735 542333965 999358131 614188319 994506161 938441461 62910866 391246121 463106082 598720387 709816475 971486833 516197012 752315427 667280927 430253681 465984222 891259062 890589845 245813321 783175886 148012798 814070921 86020402 320859396 357644208 837384064 800045660 648301338 127129765 886506529 79764139 604985130 336034810 382343629 298270451 490035851 498911977 873307814 969650560 966928552 54010395 480722095 442492661 842668411 281291797 834775451 118885556 183907467 468772042 671780107 553373973 442509438 197463018 274511841 162522760 751492030 669830233 587401789 758217301 710325777 852784105 424998525 528274748 240781894 730746478 306528972 206998757 908305494 131406967 90252178 395443154 270271295 500532980 3786800 908975732 402402264 180612080 458143499 472243829 785976987 418112285 113075812 176601544 792777500 510354758 516743286 562946887 884197049 856181860 408472370 358944449 233515312 164652647 486699151 907777638 586402084 103842468 250364087 773299597 320287930 691708410 284946184 263345187 930205451 533693589 373284164 778120259 232830170 972754417 920722479 335746542 351710225 467472649 576377238 841606407 209595077 324177975 939954725 272717623 583228479 92818568 715755994 402366543 761851052 65581059 372687281 400018519 297053746 883983071 442170187 416525072 205112958 679018274 286853978 96518291 144933919 450784237 462930126 318846723 741501914 934630141 742754366 973162082 688116357 301685395 488057450 83466927 242111895 156191476 111617404 111973748 712845373 874828869 559375059 281729884 496422864 117623628 393152306 883766832 546654845 164252177 752368990 748356141 18108721 267441538 299790365 244613086 10353450 757178188 76939111 805228752 502212141 277766023 144726899 119048647 280614355 612484061 575547510 883594756 349159871 149596213 22833490 861594116 888096572 340553979 250212851 510931525 310079144 680903011 134622028 174423924 296067913 316475222 53955978 809123955 647107376 360479542 614035658 763414867 124848904 209714051 806749954 715072838 271937207 579525054 888345200 421467630 193066470 536623807 451630737 923098913 418422834 613874833 176927710 81722780 474432231 476756396 42679105 346532661 139147364 856613658 454270445 261957107 660893377 232680699 615813548 554145085 154564361 190779848 426818475 338561442 778927335 798229762 406887188 647890450 954627738 914993839 129460209 910803081 543557832 790168054 224494480 966373881 482664787 449359063 534126038 101055312 153389525 179191473 134473229 513616398 42543713 259209449 541176997 151774493 624957249 934699640 27948824 629252063 265455654 359310167 755458786 798959012 984337507 760885531 283935922 817039784 938428309 371031093 985534323 782016517 325938612 638171887 999882274 592864671 560297190 905698714 932283895 399453072 768964778 246977167 191348289 252907899 172770501 663391445 389416041 300524511 502625331 341898143 435514388 750692343 293739680 983469201 868263121 712627211 911224894 852858464 625992841 23755980 173095663 412274590 311277253 842174241 516918240 416510322 622082554 534989838 558075734 467954531 907112473 144545225 904592146 904761856 101100805 938720648 789049158 333384314 277293391 204575780 878151027 317554294 661291878 827319533 829686292 785141375 754081110 967537929 734235661 524432290 529260520 258250459 347971193 842739828 364628417 418311678 914879178 68734669 760971078 306139018 944214768 723257536 785533759 613996547 270544726 439691250 558733686 588798093 556418783 255080415 995313124 749486173 551825399 874828549 299820208 437342481 266988560 726134404 659623489 584092398 47623720 650046270 555125149 814673170 967340448 595059297 849150306 975418839 851547778 1000494421 392379229 621542200 469018010 574330867 675200915 888929692 445727432 92524100 8627666 521456514 793697336 187653546 784440979 327953226 951584192 888343916 54374183 717636583 2917 45746386 970068128 149323844 345640821 299285865 513716797 297292872 493821941 351067788 530073099 123034356 50341008 348706607 861593529 169390660 863409926 7540894 300134118 169125794 904550146 5592537 301458531 550486873 385142902 266923778 145632602 202701364 630108190 642264348 699576551 769820793 288450926 44476229 857520587 219317010 159649290 247532665 107560534 727737396 401486810 516773722 466043161 917859066 692658256 3174082 362458630 703777861 207043591 903585598 40325389 670365803 24775515 379459241 38429406 73678598 750032031 933900018 205594953 216647755 873379152 921139401 228857194 735826392 135894815 138757112 346753010 484349614 889751367 252437484 141524223 652597477 745936767 84540901 238365728 98842253 437535330 572876185 312928321 544689194 657983958 23786988 691000606 671639405 271567942 130872650 530239142 45666106 378846794 504469266 587339284 381298797 637280226 87078312 754274258 596880190 521258585 188489326 762591294 271966896 850785685 77888327 81375127 853713830 587145199 916556809 413462355 10148934 295583126 729379503 897812053 540497037 996815295 335380796 137984931 911866573 39201571 829984998 982425742 58268179 372977880 716023229 354210188 218581671 869931915 810987125 658851133 443999487 864641486 193174358 314181863 20602860 469494963 909632290 232249289 944293633 221325703 711291985 958123030 481074535 298026398 683953203 87455377 526374923 805080918 619465680 469994887 505227134 367890778 933762389 353452239 9993752 14799027 67289300 171827400 705611440 398824870 30963359 777432230 501778957 946724048 322603951 852256290 700494508 758401969 42347410 306768260 218853093 517389610 438712374 343491166 289168511 712944523 707627810 138145681 175204919 334920765 354940626 155666792 305415346 858670656 262157622 705169620 238432323 177757925 163050861 520572956 651042501 153380102 96481683 806329187 737735625 594345688 370949464 622143961 729634916 161383783 143603068 974594423 281196633 155134122 850245225 824561344 778183015 429602077 273793580 511508597 446240249 853677787 899346255 268287046 17871492 279624464 814810201 333653903 860146546 282011572 246306404 424221215 19840831 342839572 544739860 655330701 850241951 487344372 456908721 600836580 86501993 800795155 567562494 291076646 798807520 287584564 338515757 675681635 9272130 689553285 52009783 651864559 896143477 519047740 781706966 933017528 807156188 297389737 329709419 902226759 599220565 135191444 489831705 427565039 654674981 813134263 539528216 349790092 971235599 352079039 675070491 937723168 834368873 78314175 41916163 53783178 194399001 33356690 523230698 300118811 994829367 835637475 509225817 589017563 403314887 878579205 489269454 772859380 723215517 823431093 555088239 348780965 206701641 372946274 492709089 303426338 411702201 834081153 331321405 385571121 10501141 796970520 300630745 709967329 115122957 353407612 61344438 635766817 981922178 390931322 381690846 543864647 377927982 403136557 557696747 794574377 182897598 573032293 7567245 515333292 814397915 79651799 853103737 402959553 535075069 392254001 451094105 274335101 370191002 191338273 694625926 561188790 217664487 101865444 120404349 164268130 104097103 266308076 475122288 673893801 925536044 545028642 969488125 227663104 66135436 426229388 25581120 402147413 168041536 825936172 988283170 768070992 671471540 194384513 988735027 705457773 803840770 525106229 176949858 261214055 767784211 181648854 182211683 256050851 68926212 666016786 194977823 917214568 652292312 52737788 594385261 416983592 273780474 549732060 118456904 903222672 421853433 682989410 109677938 286148615 381011408 586730111 892915818 332851462 984602718 258051856 111857609 105496048 390628232 437681537 891520807 152970330 452920970 439452403 812900548 534000256 176779107 526738489 753499592 358479025 858051518 152806944 978276091 484338579 828480333 999551437 697114281 772677529 36305631 888367993 56350339 972474076 473560388 684926211 456124759 721072728 785847095 791747084 282699975 82395313 826442204 270422397 42142935 55810260 913654196 723556926 753967387 473733239 329258925 560391201 348114590 74336240 900750710 120629960 4193437 63520966 337550895 839946095 903929462 743486929 768400129 68269751 215947744 284627764 477267129 537481553 312057339 156670709 718571738 975121905 519200713 757848511 725249248 250681468 205415909 392251324 511979221 289109655 398059715 222460169 641767289 424912480 645680953 884329116 232988679 164781613 19617512 589864672 905649062 883991329 200616869 661115802 389876301 889458600 5169740 360776317 484742895 142218263 366444572 113062002 281733015 403727611 863988270 350193541 486885442 366819590 735873083 354387724 748538362 956898753 65278655 441961417 860396282 253476493 81036245 147114706 942807627 85454098 981490190 369736902 364073240 128703510 7084979 621510513 10207824 148848078 858246553 553706259 81997781 806165004 747076811 74202979 97632721 926188322 740835358 494570301 581335881 969709485 107168759 715780603 915086953 809642668 354409463 572906041 636223574 77713220 248307737 643546966 904238266 511030219 4261176 933063259 938598978 919722877 902730591 202256990 223882470 254986122 438584256 20702450 51266340 549693754 521889615 1729375 773511665 236438967 761288598 999586439 451584745 271992997 841069173 373198103 953321381 212827560 68172059 204093659 852055177 130716878 551194656 32952080 66909371 469142001 775726081 882966003 760598924 752721586 443875698 5041454 742523585 90046531 196665871 717299028 3090660 437818533 252823933 917972796 328839659 925677856 955026999 357814139 128720393 78659744 533832508 650421611 884549953 642826853 813201041 169189860 324524974 921954247 638990712 879937140 39916038 211700665 467525592 16448547 27642234 147789086 357840318 581276760 940033471 329543467 790516762 24682094 570143679 829360554 596932794 530614614 546840178 79433001 968058568 730056206 268321173 791923285 275460669 90831323 444676521 295474197 116387736 428744275 288997637 489151917 494033829 951573114 726645996 392820508 997624516 882829723 320443650 782288353 951862169 793470771 376575534 378620120 140989390 338133922 932701277 167574153 602411534 725840491 358531814 21238472 185483696 131705335 698141548 779525287 914018452 69494515 548420138 727882832 604751480 141707437 678248784 747792549 399406164 610745072 951223132 86684586 115944812 111918440 518023822 590602126 772211690 758672740 953009310 210976166 530849235 995988585 60299061 65861143 308664119 959079986 480648440 72216046 505871648 77774790 515024605 85613855 688629976 889248741 682408281 78424123 870143538 948836063 304359354 630121976 498397383 693161428 880194260 66561761 411629653 122141891 506937895 212452027 239538838 872463299 777851580 458513577 17374739 324137555 444176913 142269359 187666599 492916058 825156904 502013669 511792957 146059277 275988713 220064970 666113241 544819640 318658564 429133540 296762598 17940461 317622215 796900893 223220664 684857204 139633860 277158709 238178049 70033343 699885615 97267016 150399480 69934722 277129049 392890462 200601107 963195783 157165714 692748003 571096510 410986216 36026086 824419065 730962666 645004398 31925006 245117112 235903093 695348801 438064556 639365351 974368606 974186764 426191345 546012967 471259045 537999454 90501459 560476872 72052798 760568559 162944438 404253471 255333668 554019674 217222521 577651272 662987306 487959055 352203046 849760565 913997745 195098232 373926562 352351714 279184166 166444533 273465040 444879702 943853359 925575611 698947203 208857289 763037355 569771424 89739916 217121108 782189247 287267361 440555506 180034469 541535172 157619299 920131335 908933863 331857451 924582880 741767842 623656731 129099417 698017402 488703847 625237174 977424338 814796234 499624215 553024111 850254851 405269084 72244232 344305919 668998423 983989168 197736226 607216411 600673179 27175761 857097062 722860015 759493428 738801725 429109038 21702834 253701650 174687254 878532739 805957968 921256677 377909591 457805713 191008923 109428384 386121061 197667440 8215687 647531545 478137341 142843984 9447269 671703875 944813334 297441387 567668420 599214034 675119420 477078589 867418792 290810271 590026068 508476938 407765423 697206036 615106564 287381463 292263585 90496286 10180690 835317573 131490728 970878357 12185243 514308586 970122606 889895319 284990780 175808850 56774897 500290566 645855014 336239083 821817522 61246106 842639658 103078997 998204590 395061844 381999939 86955809 975281835 637347105 834405684 698081188 70820721 922900759 48305827 54007850 294813567 707330118 18200387 82131431 738811859 376249361 466500884 402345733 867092233 548409172 924406261 702832068 893789880 583178456 445811634 655017495 991561411 780053258 917175652 257112280 867583302 823273624 96980598 432891066 132678796 833773862 956304216 528469421 628348236 242872262 35524689 222591134 390678571 62673440 628551103 277231498 130083702 168930954 825734991 189871616 479589356 414204229 973208909 765991915 223417262 380173287 428279349 804357108 876026948 291429833 289798562 812684958 122336090 558820615 797384204 263749307 714916564 908098393 746696874 658032967 638174243 803653146 909663006 346493453 832067825 627111949 667076674 213025157 293601563 614401376 409475677 108743868 254934877 78466616 289898113 721239417 615911937 486784289 392056466 271020049 140989395 637108048 434894584 756816513 109601250 972772215 304110038 758258400 67308866 589754667 781525582 946172406 114124955 38031229 118255090 36520778 350255024 363689419 154308194 24064820 620912242 308444060 442398245 604836771 854563038 636945153 269996506 410470772 755409769 800506880 301514035 216703040 750710113 40390094 300113117 628388111 259684430 293446866 564446378 654808851 200076439 617180957 932941831 308167302 24237347 885624271 696281557 194074451 244671898 598926490 583471409 804154243 587757049 802623605 805092291 923929910 449388386 565820188 71168470 770670946 460966227 86742715 66896322 461823903 960096941 972056797 90787419 488119769 987880330 609716104 256933555 48067386 392188826 134601591 368877189 500814808 252703820 109137688 289683202 718250390 34229240 505383830 141287431 466626542 539532530 75756745 687864785 743070688 126328195 128680119 724098480 334997879 472790258 809737698 917978437 191405847 809095553 886210959 218254627 195566424 83599090 38572452 363767417 972687297 408860040 473117683 337407981 957312401 339325518 169378442 605633241 463022659 982070770 183527355 15831380 778290434 83915382 134865401 386016037 340470974 937010358 298926658 643665307 692021728 4847053 994732937 348924592 832183489 951565346 244583049 575771247 285680115 298822046 984565560 254546971 885407541 909814976 502827531 997082063 402838484 211796092 655259341 493385475 74377808 351718457 380630865 304880773 845655808 287141527 570888796 802036043 646795261 256760177 963780078 225717149 726249280 291679698 537602898 480860775 621650089 61086034 816788828 908816677 44690740 615367736 785242916 899886848 885810886 519100116 247352904 525450884 89976438 923425076 540512771 110524910 669041430 369623615 351237319 620248118 547888102 185813625 465951430 915587066 349550311 169664561 307442877 197156194 118351252 523730861 464436715 765118394 902925192 598829716 10088520 235036022 300891765 883479935 690511675 369481037 75277256 213356461 119187101 746317772 164807384 494015231 7562335 537120438 982620638 916728060 737944990 769566130 201057248 330301795 370456915 19740037 866388072 176828470 7985251 399069560 205806287 729952964 694385305 626587177 846784994 436271725 287218310 661554467 30717661 155104863 752809134 91966573 11757958 586895312 242110604 774129605 222323329 617970831 494184754 768422564 626303869 692823661 619123871 650553308 226145997 352785869 178558658 892809400 807508305 738857208 657756720 41532722 193894101 768729727 535890014 622886820 456039221 785560646 472255179 329651567 872636056 590654318 475723268 344449946 248605756 999072200 99790668 455280238 607835891 707346464 440175645 522916273 443235338 751803026 923765693 498716458 27579961 801973682 105545636 648036818 313695503 741862209 949027760 929310407 120303835 263084020 191283356 921089473 194753007 793122633 94590390 19632278 866410649 852375342 846265351 771087018 911924855 981400341 172572418 250182013 182657807 956424385 635035533 777318277 482040619 60605581 614468742 192541786 801772046 168746937 928630809 947828587 901005088 654884706 417584292 137425207 43477114 491363556 363747793 547763145 240234592 568331977 140597833 321464000 149634011 490804617 935169371 441825494 116303390 525452721 424385592 772502986 308840885 51059493 328653067 707515607 588125571 736388294 773760235 954529602 755582261 643464072 37734241 351564820 16996437 640896487 397923052 133102045 733757251 531245695 914641487 438297957 24611978 326294204 798157482 911171719 361639153 879618015 266782951 772550538 936796598 851828306 6261285 414048337 558808016 762033698 957671784 573535608 912386742 460860434 854826018 201734013 161595714 702159281 895227512 680838636 414125218 913234961 431615008 479351310 496887947 440506081 745855350 724104908 581518537 174064356 272475065 184011179 38797876 388597227 644307573 518327409 222227966 887959753 81272228 734404800 300703138 824046030 511746177 246462037 489242430 473856357 371971000 558902933 955406657 564755096 957037880 841744977 115316919 123182870 344037737 987848770 958235839 439480796 898629949 136357801 798663081 694281740 536485676 109575978 764769102 886106895 735742144 590417481 628372042 870786175 577420172 538458902 701350078 89929741 607867320 715209567 190258175 410935841 517569877 821627534 436381757 602374911 360491641 934285541 681119096 39897844 389444670 742942791 441536988 544783127 771623813 219986621 605703938 143913616 133573128 239356408 899868312 789067316 126856346 771520171 727556025 520854600 706832200 465709395 831628350 983026595 51609031 14041620 898305986 221652204 477124821 670294913 150144521 267909004 437230791 753748370 649499244 552443922 269572200 482377364 251123494 914433146 561132507 271689830 986172260 633576138 640379941 632946017 727632820 941943596 700160414 162727359 991585851 693913290 442706877 810876415 171515939 370506423 364315404 458006349 993702228 31865235 718391084 1002168635 196657940 202932696 126234183 569990630 771880713 601847391 57430001 219330513 789071929 489409158 1237769 508252500 5181225 862034899 445095548 615698991 550901735 429143342 312956851 268189916 356691840 537093553 220271052 639476349 161407653 611278815 681713717 864388201 54287762 192803389 182484147 779134934 875264242 934634685 252157471 19945192 621717824 547544948 688555155 437742670 566238700 213502236 944189752 646974566 985199183 905802590 306949186 811235418 524024354 866082300 585098539 190694795 974506168 798972270 576334026 288542438 421419515 233429088 221990980 456227413 54440371 824738130 257164840 222127697 174724941 264433568 513297989 573091249 777402748 961996312 328390194 214429629 709253304 891924053 291624987 577035042 679316311 332056056 496686899 338798187 627879273 917679059 97480380 264777994 448280883 40745801 72642099 188205271 946224936 914948207 787747821 354478120 728136765 746521554 495694260 3857837 520537002 471170067 270705306 571210264 635013056 155574367 422126261 610494821 453697349 710467420 682947169 719856628 961916301 561873812 379056347 560984460 946038862 928803721 45517447 269975456 528438582 210658454 433699017 591920359 384054686 512516617 711595866 988267949 900886730 134913819 232363116 418949702 826364478 64076437 524290115 816883933 809887550 572552809 190102722 916165632 242285603 423011979 633994282 698447731 677724220 937135383 160269278 469500070 659636962 489083164 563457310 108605799 911826815 801352016 967936815 307921025 112231837 994567583 261928831 927283090 995911411 985118659 668411963 789675411 710438880 365438659 391755379 254362725 27789609 335933283 980751509 833300964 565135586 611253341 847878965 388378504 859350624 77401711 60334787 848900551 733595094 527004152 922852135 180368775 299963620 110357672 304006842 40222744 470715409 905494962 985487526 319934116 574772071 261956860 743347424 638476682 344907746 622868016 634839874 818961748 749058165 610923236 277904425 292756180 735742255 306979984 464785772 652852730 871083946 433475027 955086637 792324297 490458290 303476796 905187232 409789494 695379774 814548663 298768704 276200151 952580803 105373430 492692574 184220238 364104514 340483796 257536715 605632803 458946929 499086146 928248509 992745297 327973098 643239335 591728629 530612396 822400286 775126562 116275788 766313577 951516246 894860022 951637875 481018995 72938809 365060156 552807586 379014191 853418821 1000869717 164946807 5036269 591864872 646440044 384031664 5058250 476889599 881652915 717771071 20144509 811311884 423095173 78514567 395314999 5895852 529928385 9690143 168934012 542245357 102788552 805730553 456086378 211007370 969209434 548414439 943162465 122673600 48708867 365834553 275098394 98489806 347720698 443909158 359853568 725826112 833311625 256055761 762492891 297885834 18574613 354118284 865188228 219237835 140463722 384756544 261996190 622683274 358136877 601979731 44997542 482340824 597295445 306311788 149925364 115419950 866484830 661775610 734520442 81562961 873332398 117752915 893829796 979932268 510737222 488398500 159287309 351528587 714312747 298215881 151918880 158183880 975358575 670929858 211358964 281489875 505133762 628155524 360480955 982375514 613472567 627541260 569125362 939957347 326849664 474551532 784331727 12019740 351963528 582062566 612036892 929819334 134191337 229395230 330456368 782523549 658680138 278653332 465497403 905383730 578228890 924373196 440735643 445011191 571721212 316160953 466506881 462436070 205327301 563584326 88841747 113586876 790301107 240225464 661360752 399059562 781595994 95659753 779498234 820963895 143872728 788558125 968557296 913805509 889095617 84257159 457715161 455427983 198557578 656594726 427442382 103133610 408618649 146568551 250682722 714867961 485194434 714488517 920435332 738093648 940766272 38969073 124050475 845652833 773811617 911549191 827406410 986727772 374993744 14982734 229004725 712418138 878713767 987907936 926713021 995740387 813851176 237374133 234609644 443259674 455430778 56542196 263817209 520284534 992467518 530651383 162558587 385755672 4627560 241892659 998324254 291705450 15164328 118336709 741110667 101538673 854243749 957527552 237051469 58068519 244122113 193120136 121489527 939772958 931646842 407494979 173697645 902054967 640984738 957803309 803131011 845573535 249278385 474426335 555677831 364592644 149999604 179863362 207166481 781328985 346088624 350145947 995145904 827614319 508194200 747190510 533299912 776394421 897346757 565076506 651473402 286888048 212394183 245500512 406017475 592361901 797072666 445601402 58668352 869382126 367595007 22737371 505712018 217559220 119285203 699987757 982438450 570459513 380109257 814459456 402028055 599378514 253169431 144525998 382249075 911918994 428073712 996329881 246025685 404634112 198182555 643315160 721324746 675313968 283708898 512334511 76272428 25980704 257111491 895960980 577246837 574664671 188403695 765083057 698516199 542215628 550343835 427416623 847436663 211644721 324462842 30576379 253974700 10780807 407945174 4257182 201066012 488756561 10555763 75280611 508324569 978069222 249972421 239127270 804430851 660570948 244210963 152588571 99770992 195854193 580758568 258532593 682157523 392510292 367804167 3527080 211677027 791380721 587883577 432256318 937250147 859163933 89613442 15988402 936142648 19419591 433424839 831286501 588131427 422893748 117114822 505518663 494667649 351117046 229472584 129297109 169459378 672749893 38377909 830389847 630536948 849591486 32722819 107228588 119623997 232754983 536667462 295613285 316336939 845717479 983798028 512526087 811576584 946462912 55519003 722039863 30243628 121629497 480840331 460755381 469558249 942702789 885584142 363872308 233648526 196930510 465088492 503520420 274903840 1000514509 483962973 495256662 243974830 766429215 54747763 328149800 926051776 321550768 917614644 333441903 441321231 336991469 341095525 83242300 948897103 385919162 119796986 525024916 233519645 397570432 78975561 48003595 848193542 20803833 981697869 85108446 706051099 549810781 885621597 249474199 363565261 830092353 371998389 194342706 70109278 575211337 821892941 270716701 117766622 818412082 842707618 690448924 73707648 17697182 81624873 786389004 149033491 997904741 543085194 310547133 447244417 614955195 373988612 104153140 709423460 13635220 77128063 98225500 749194595 619213973 814524209 399546016 674914699 63708266 321683859 742383062 353715813 522822378 177313717 644002313 192865815 795132128 586153612 982542085 622734190 552219551 565281678 840943614 739478166 250991242 719154493 948845202 200629879 999607581 923803958 729717114 458521921 590038215 650832179 677782696 74166604 501261298 814383631 319499758 643900412 181069137 68624789 774990027 308453927 417519716 804745846 247485473 760010968 368956976 272823861 626303784 539819785 9010348 88759372 296323045 870298703 270516700 298940577 116605971 455038647 765248267 220670557 624577476 927820231 22310471 486909737 41964327 963684212 353105864 773870254 381620934 27156 195245691 927549740 865309637 309349026 70644999 730655455 871364259 540460667 577191233 718796608 456733526 558333565 474947124 376971656 431189703 640248517 829149330 75311460 684585 418159542 159128246 837396043 555884973 261199181 170309422 440816209 269853385 562870291 527131470 890946052 851470456 156476770 751508251 849866475 203341661 491018393 385035089 641352735 34599804 307941042 945239649 969430557 953811995 602596638 302357963 934586029 549677779 333385392 255204967 390397820 750316828 615752260 407913589 829331994 667499562 452263410 696437164 625143676 580685212 666488668 465241313 651713316 166878035 153649594 514262294 592450616 952485667 383594562 461803309 696540186 637801741 663989824 708441160 96779176 612895936 610068320 370832272 684607163 514518957 687331265 696959210 311162676 165137032 8460561 780050883 552495289 797161885 28369202 465056661 611249316 89288085 794349511 161152459 441522135 399915597 264678538 360362089 799161608 104260599 681609502 711885816 399209925 422307931 662675515 468201108 120434367 690152185 751297905 355532027 254448978 549378265 30268717 949111326 942863205 148904714 908317715 660669772 662323844 178041699 829033085 5529954 400114824 701721421 936111219 71483982 129186602 561632656 588278915 714591796 59792233 673543620 612394633 28744393 948870032 744650316 318964880 8088714 455478676 972204042 951504316 441269068 756671894 412014881 776096890 173008613 779148553 684792348 546018321 408723110 183228456 332721072 17610683 453419010 357274583 56059622 275852687 775902785 293634090 572015113 955566158 969101936 113688090 919478525 801054798 521791526 129050604 839914876 967410728 142310718 537358701 351676932 284761577 823304081 675054427 538640896 829157327 392910818 841092461 302438477 207952206 564848545 208163597 513933248 322444192 700490428 206648325 152826870 212902772 887946684 996187533 68095561 143334848 808552683 337349948 648558047 854510765 678762353 796751906 331721461 980702374 466100280 241651562 771843386 908859932 340359523 970850543 187006748 487792235 753959734 694249033 788251295 299906861 232392746 928816040 54294625 422356976 336769803 395980639 580428239 616913937 370799522 428696349 98786418 54257930 875701069 961062875 226025390 816531650 919550373 699454781 981406038 367646870 191668206 441226303 901953275 88807731 483956549 688520902 818758300 814182771 682252116 281984881 555945746 235034631 802320163 355605879 985718352 984199580 2211302 418593204 136955504 295888268 391350108 276248163 295340873 407379947 627556773 741282288 109010323 482837354 564233047 420628713 99157275 189715664 73607293 933265811 421314804 118845883 866960913 232060413 244268096 106640926 708611200 912122437 781107335 506530022 278155974 472551778 608416478 947411863 490019446 527345865 551778135 942453274 448926688 201150106 748755692 639590519 148670627 857869424 584586319 467223542 985588675 849696196 368006795 739853380 495007754 550823610 913634234 295070989 281882326 341087984 485366647 949707341 404423323 530604573 601343109 534826708 797065080 648147369 565790088 952119586 6230301 377062621 636387638 666582796 217648167 660618853 393409716 918475295 633474653 339000763 397294689 609860884 751889495 587921372 574120620 752069061 357707647 870342027 709673641 578968971 143950539 463457260 128182361 895168528 931960379 801557905 28735263 545733659 496221376 357939053 893464295 868491243 307912225 431742044 258503492 668984964 337535065 801633270 108564246 314674931 430406382 313877375 327805563 195930906 852897796 668576806 877056854 55875269 45156309 32533329 660944625 572051620 565394438 63601272 626979037 426163655 802770134 957639114 979549335 249686081 135208087 856776177 2527014 91531344 861818046 332366521 126436134 693702560 630412713 984105464 67071833 644819383 288976258 803194530 55865342 975790909 951568225 36790344 707486883 869614336 930598622 975710526 738593397 678634760 683226530 126952185 468121633 652828499 896722661 165980125 103153042 973363947 73673368 754424029 183010688 447055834 904533005 204543939 509840301 784520757 295445856 672094300 34521720 906971672 90088297 945446584 781521560 292381286 340702401 970427772 814680061 471130328 495398481 564455119 812441924 34099818 167237192 997188059 866346943 453090626 532455033 858982355 268341070 787721029 305809062 359842992 932480846 976943203 379700543 165218974 633951114 626462404 399026230 573322448 219935085 953349995 220068135 398194612 580308218 775362514 612880321 150120553 802578297 535685428 570825683 399704463 342192063 766481154 975020804 4271826 541944759 861022350 32270220 383418266 661360299 140201192 895142299 409924645 904912206 819792557 704662705 745639790 143399909 184328925 593838495 258395122 604079656 856990516 798596926 685512062 718933645 948874046 269845198 625451143 536948034 1001878423 331861491 335610172 334005861 732432293 144090249 376912703 436149366 611286120 959087707 714276151 850813963 121837278 695667086 280572362 280246670 734105940 293712946 514779199 71547152 900221366 397193636 898814442 89353329 590382649 687581080 464904099 605873741 842038831 397738335 976577887 916192393 344402438 295200287 871506369 858855602 104681400 527242084 582007088 508721673 967645133 971071745 335997639 245534413 908412273 932547635 764727596 438923710 118827185 695861956 83748594 99998290 214190963 333764203 702678448 287268905 630405530 861377382 773145018 51186301 991577233 418589275 635744686 595376484 21295844 751939567 839492949 27113135 24380758 98416781 994053521 563606320 230093922 841440191 912735917 914659948 999663656 742346782 895882729 860726238 322317042 288993211 658586357 326830763 649670451 996169666 528132986 203336366 237679859 710893824 68324749 608036853 79398290 869664875 932110245 771542939 236227358 661439969 540346391 280360037 52768804 644346578 756903645 325800030 122377337 690317387 83146359 748256904 626121139 7428436 671620800 506782491 829579539 155662425 526132498 939018964 204506358 248292504 620631521 6673197 890507061 280863059 734094327 238289546 938797803 4342300 320286082 942141793 460492216 546899022 363796167 662472534 259550259 236604444 863465340 504440552 28663614 688093592 768385845 842328305 559590373 941718875 584105169 47328058 228484785 964226512 898946803 971022897 117821378 409170260 670889964 6489922 713010652 235591876 492735341 762573649 731843951 154925063 349269584 127231722 655917198 405472362 686939275 604050144 370413739 20355028 33141928 394701814 798718203 264478191 393927207 748475136 292499177 992120469 164921286 688956851 306905683 744730427 831210112 172222046 562866857 793823041 783486048 893278962 628294514 485016633 40906605 748523915 390755235 102644439 140929756 349438312 827972563 419842858 792848786 103645913 387497052 920939271 581425179 384311692 543610196 973335742 116166900 52957494 931088286 757663982 809116773 141996564 637982943 495033303 535993012 512406925 90168724 251526644 387802113 432263553 108715829 596612271 836707720 606981554 692604359 190784061 744789810 183610584 441897492 326217630 510015271 371027133 910952353 693989465 462652885 456279697 265079528 425440814 777428595 276866840 532242456 40969597 949260432 738826071 614599163 552096888 429788057 464274988 680200304 55655893 631862598 512817840 850328297 646905454 836637754 989671706 918237615 153350776 705897205 89964066 433086023 202118072 149159952 979508228 974168937 46243672 776174267 661231520 416886271 311353856 784986478 945687226 241801945 887008360 552499494 979189404 409324153 957891583 48366727 500128253 150345771 363801817 485365953 192829853 451021978 372496598 609655422 251733560 270938264 677887538 1000003230 252715191 798763827 410272775 363017177 61145978 885469739 21321673 479181525 961349617 889424871 99742644 750585440 432722946 53773533 384399226 485121954 506064897 714337892 16774550 865957336 390740328 921059258 518886147 939377646 606734545 994025340 115622256 564785151 237745290 322557021 851517732 477666986 804697149 514001800 23708991 67461961 959320248 933493986 23314143 82409350 492523169 836589062 805918323 314422686 28861632 534276588 531369141 374549310 562259855 531311482 705550812 430850388 126136867 403190882 305600800 852236808 676109542 148510933 725494519 309079595 810809048 369738886 906364305 97485589 923354161 659570615 221465874 682886721 392573012 890608720 870072617 106768582 402554934 889274418 300288914 171523605 601524387 161922458 876210511 731126285 611298245 131747762 396344991 472737100 180351327 590132558 893933397 722484207 794653236 964408657 271481977 182855203 284844579 766853378 101664447 753712011 52822577 787576121 266929447 108049667 49318648 997487084 508533691 390723396 212659884 333053925 708158566 303236342 836899794 919505617 763147699 75035201 767657350 23236843 491480959 709138367 558615825 419289620 719108745 256840551 951378761 848090942 867350503 865693097 513157537 900865689 894875829 614324401 998374501 43977526 959109637 138918058 670694147 275166370 329654040 892336670 1000567528 50523932 758387981 344387432 55908592 231347784 55604599 284271432 52216205 521337058 51725544 907125125 682522235 959726980 227552571 139394926 915563493 769659313 808712132 597685069 813756945 710092473 593149083 638455497 21498941 300005924 402201025 765127905 573717484 194776414 580099597 463941594 502740555 309597220 228874360 383529933 909153460 315557095 726287206 390336978 647667630 339418627 593178948 976440410 229533269 717062688 799995523 205222148 788027931 837634501 457114648 354076387 70550677 831666843 311222378 73273843 637698639 923211440 914792917 583579552 909426181 676975937 287375918 315092652 54111710 723736251 721210811 358718450 764598524 978826801 184522679 229343248 313417014 26097229 468506053 816284413 868001685 994962056 15545395 422784080 723435631 700796355 177979643 114806093 150977262 152466981 633915200 793019990 189541889 296417896 835092296 53797830 339347628 731990300 697600921 986001443 373743303 392268727 686265513 973358040 483156828 677962775 937203735 881709523 852186009 540356451 101225128 685242367 347659905 542874148 756347661 766072138 233269118 628920670 460177141 190065350 212687260 302475516 934315076 847443104 987038349 142704788 761120662 855521763 333152086 311817061 629022558 753417199 244225534 110573902 143913466 958389896 322060599 481120724 414247360 418016981 995514842 38926896 732516112 725364481 319711492 604209035 15715306 1000425607 91205129 400698186 593123093 694338806 883339983 631657693 884711707 332349430 609713931 696567099 260975824 998330667 788085312 571980156 705056505 787785346 364333995 750378176 985681488 933522055 793697782 107969633 447487925 337197705 291452438 522829433 909326707 968676 55967178 416531400 266000900 577184043 949202334 238436685 296276380 278159529 216883025 227800679 948556729 545703653 783868968 149335702 101068199 751561572 929283905 805125658 173780625 725230673 328425845 452074445 748022720 881935236 54219059 921656089 867419661 63057918 553579072 905154183 998311574 306817044 976631847 648927095 301930035 268952240 864798269 618038869 357693925 11963992 428577637 556536561 118747885 837434341 757186711 889624150 569167025 945920532 821339315 664341540 319910532 812479018 4201374 358220001 798225897 934953986 645708203 380189290 173800781 904513279 53139535 665336360 705257475 744279831 414193164 626815396 159672844 782710825 336350238 658526856 646573522 426554952 909105964 235803951 961118858 785330554 738234080 127047278 793984467 804706446 742793462 248204395 919362225 856954643 996272789 765429818 849744121 988845486 591364768 989950173 9470284 533799999 690292604 905615662 221733893 646418261 923381391 4818895 757362916 665302195 370843937 872947482 400436388 203290186 781180947 77591381 808881170 60322327 987928867 1001730995 523892860 113905764 601192131 10426337 475722225 558981676 938439224 685946692 35530296 431608196 169145276 10528326 488783569 517572282 186700776 462224203 908132446 103990172 910933341 628209251 815683360 999302521 17406218 229962483 7304404 1000656957 998440662 164276147 854873665 619374554 639428115 378962425 161349983 908791260 756112610 973915933 39688784 402498403 44872415 30855441 852356933 880915409 959967301 896563824 741524240 493140058 956439027 937765277 774921170 475766052 337164034 906291526 193677304 49948982 919861623 652562490 271102400 879346227 714921150 248432851 802344337 193646303 674704243 135978612 199535647 626322120 979787240 821257792 350188733 563255180 275231779 519314504 571744676 229090543 310073594 823692998 87017953 11054010 994625413 684040545 750001136 404958530 347326718 851565150 335444208 747391584 652793182 57403093 996869884 726551582 597310004 491233239 739064450 253426780 708852161 886684419 792588633 979782728 93433521 680388834 721863858 560675178 606440166 409182124 115175626 960469665 209259681 868355677 192224743 392067263 250495472 738253198 622619928 438205408 877356141 468873556 15886879 339252790 356244966 395008389 817764914 543042896 922533125 567045889 312103799 292569437 638909698 515378013 50295202 455620501 834387917 590460790 675523961 10072557 923585451 680555708 628202095 63071755 420467358 794858736 60628536 371944462 876528110 439550670 618676894 730246248 321111042 93235531 44930147 594335346 120391899 306083699 416222558 907006061 63552248 627883591 31425923 684126549 714096800 152442894 577879853 377105590 785127982 22805806 567311039 549866631 757722423 332775336 484838133 165459197 609542543 446455540 538426145 689560267 83389588 542751790 38592392 513202354 267620364 970800495 913536994 857334632 190632514 604783725 659312054 494799453 584715273 775086673 461896269 193071272 610890384 246502337 98172861 3372358 431376348 484406523 226618045 543318336 845960170 994485884 158844583 596401859 975598974 78020888 661942528 574244939 305226649 513210234 617172485 531888023 807736710 966425023 745470551 845636736 632053083 534298493 634305585 128404686 187820236 648087239 313885288 90496784 847682076 152525710 784747144 812369247 303066830 255472003 890079882 495425330 794918019 699801323 879130758 767588420 977638601 871667815 332786771 400465250 245961571 333234819 298044446 469895413 955657850 304003821 596724594 283170026 274984412 22884607 282629164 490653204 132165409 38318306 438353405 22297699 46660770 935932451 111595991 521993775 909608977 939890414 382297028 709440674 195474529 140144041 650739791 171085828 853726604 726269633 231604506 261195361 577452106 990624743 691404698 906389788 281922553 550699739 301445282 110784573 823585906 766223060 212453286 849046219 702012826 250087173 11284985 647015320 695286846 180373280 952362964 134880824 561125392 271975729 544588497 743137996 745512494 272866360 199272806 888099743 785237627 13063421 287075468 866650945 559006883 543313085 680625896 260662013 890816989 621531117 976226114 646044732 55081170 835480226 990152448 220627401 72419221 214849254 577526274 183723436 649917151 220658989 621186510 118274550 108822930 346707433 650152496 222875190 7647864 446462146 371671621 7623810 761097781 447321913 810061251 732974737 154108344 583838627 778759911 64143919 86409218 966328750 846606040 600013345 686033584 208018255 996974828 433926495 232103610 537586264 777054587 558354999 658780347 987749943 287708236 507814328 443393084 581701327 832743854 37684883 684948995 436507686 279998543 758384621 718985337 41232479 432242577 276086146 881967041 430508606 207016946 664138680 559890529 59243274 250434510 6984999 778350316 130885273 571209484 103463745 890650603 727939356 347406017 604780671 10530753 356040519 475239052 116507749 434835755 359298652 711710732 50633976 738582758 630847591 848358213 619730766 581339058 141444748 869823920 645697634 242010121 695298694 407372453 839946631 980513071 634046832 654823794 290547790 264337757 172223495 172390073 788219644 320242193 886851051 208526662 455739258 31114152 859381590 704501839 940129819 127241748 710872235 225733031 729309756 546909104 63138420 592208659 342479599 317757027 613907544 369806489 523419546 663415168 112614260 654438792 784831145 708282701 762495217 528096243 161958013 673154894 99182457 431308312 41130256 202272099 883966534 916283801 78112594 42228596 937972235 815163595 460201727 579991180 36836821 423854975 614851157 688388604 259880451 620487571 435780217 10741676 106947585 638070861 23289469 929826957 761652693 881865488 446483995 138696254 451167240 643975307 686113361 696085880 24124161 81690534 41232062 132983867 375797867 471667244 860926991 743830086 661708548 718761594 652373543 618079537 205737588 261289825 670740683 238937495 885013581 745559416 232952321 51125162 265072209 879513522 552806645 813220608 959970528 103931629 177686305 489768073 456202802 674534942 130953377 411182283 73236428 433477270 998596800 118647631 376056417 334033350 306777647 41413084 138424836 465997040 942164409 213080765 325118922 150406223 620358195 642052499 171213838 949282939 100825045 358689403 367750125 836338069 612413457 333708340 224827086 591522905 180327962 476016367 594137910 411042771 647346387 544040350 571345194 316591032 772632075 98538202 8615952 566830967 354675356 493377731 340240462 393504789 71116807 711420197 938596135 622834034 796593680 865902201 381186137 29064225 152159072 179047848 520280923 778653879 629857422 990215713 19326786 737458792 374803227 458062714 418641809 622594305 911320104 534725167 398433319 90175963 129067128 742671895 389862814 878929028 134218746 969742327 579112886 407137961 575298352 490095329 733927575 307344994 537577679 170864090 780241878 569835644 814723632 797136673 197654121 92839748 182853352 335090414 505463627 391970440 701573939 88240199 790245017 106752809 898306844 834746938 414857164 766847965 489259636 780074078 280985466 499047645 416867914 775955884 21086926 870694632 58968029 123298185 540951797 691561137 23568566 255769106 760127125 44747660 274881953 449092875 842076763 52152010 882914680 221149394 898384851 28124867 180930508 576929846 657256492 153578157 689411512 233939904 655734411 36680646 558808419 617219029 597809396 524478883 907048287 698879212 519153751 554739390 327889406 497667644 407541090 750486082 787524680 424508701 462148332 966362205 904238681 975394636 236149767 673151791 672214048 818586057 642929713 945249150 702950140 353450934 85461031 886110584 93271206 107470979 861330797 838996698 811914144 734234092 51693527 523585239 432346061 925652823 70982134 663590753 665545725 25950258 786337133 945127529 321170085 890114203 734716180 443152485 281326082 851051298 621370482 450877838 455849418 868755090 358618512 207129073 413762862 809775892 698710517 108102532 360555276 941044750 448775454 707603926 606147283 180097977 198207401 317353517 394323078 356354412 1001459631 653705094 359380592 364986692 18047546 61466930 104447121 841370113 510934076 204279443 989877600 314023651 511764194 341299371 813179700 903135448 226678589 945255056 604512289 337327326 726282028 220664778 658967180 338459440 336721791 405859516 831641302 942574269 70022869 285146881 361025787 208478619 213424030 340635808 110186948 175226849 431547466 829758323 395799924 312247782 334624938 822552997 802073948 292417289 780570035 797557823 194304190 874098000 488839000 701719603 26440507 883847751 128039214 473109646 15865263 732946509 216805999 874502017 737320902 738761207 232161568 814779136 450784432 350023252 694061846 255950604 356133317 186368578 64676799 580408504 215708417 128979085 319705446 529594653 794922421 308974924 937014123 615028496 213227747 696484952 710355196 105693427 870630251 768414084 809022460 156617728 28299827 991013888 419278547 347128380 651317427 425409490 305291819 463199044 391649335 110983350 701096749 706345448 927024281 108620668 997048974 207982610 272722330 354812691 798438262 132886605 5631162 417492930 954716306 975780294 994513230 467551212 636567284 11927623 624157746 422806059 426772346 242025186 673492551 974370131 252061815 136048500 86022102 133825886 910762583 904587542 553122219 703255556 835894732 762379158 881383151 1001625653 980904772 769150507 248907891 982964517 769187708 9443692 622699424 776863508 112875010 264467108 473817663 255537087 839186081 197554557 817101384 51509862 678111855 634762650 548630742 779871558 989000161 330282545 904861559 345287819 469463716 823491630 591520826 851774285 258049272 992896299 10452366 2241962 535693338 964231036 154277430 903043832 432179758 144305737 730212932 817006410 400141918 190786160 450677966 226523255 676557728 673815122 139506396 2592772 106620193 293635278 659202654 381816782 349030351 778469444 550061615 93639469 718122597 763745056 314171984 619963668 199931055 430982408 80875603 206684201 74572618 354560152 610758205 253823005 934121308 802365442 670658930 433847379 201169346 548662633 943742994 989879783 809907719 478554963 999619123 636509309 992396641 667395447 82625237 758938843 956773730 924669868 303151899 785498996 801582641 476523470 854132695 823387228 903254579 241692544 994849009 485234381 100024476 395571348 193506807 331206907 578250151 964241016 914658316 27559679 622600842 713850586 646242173 748307199 122999443 391458402 369565151 390597538 174315457 123751209 343266305 171760612 663058417 772701393 180915825 390721011 221270554 177906976 682801359 526677742 695439100 299108562 427045077 155252493 911794401 155745137 538696981 555248696 859275529 845560445 989879457 455639501 399591461 510122644 319049488 877233995 141657625 660290687 602682717 425655869 812790623 992732294 531582328 247226432 538787127 175396660 894631635 129591881 737616780 252246600 591560141 705034144 511452336 179702737 998656289 320848722 314638992 357537465 736993641 37273756 833642468 417449874 608361840 584008473 36573619 219816802 990377987 74818077 405196327 542680087 1002036791 846829848 907181694 51351041 707748338 991585478 171021796 510277215 907675237 522505129 93313081 114684693 681364718 535573537 399548022 187554254 115816 330823135 606355455 538876877 481415631 851753364 739112688 409168420 999908542 376539255 829883003 765855975 213360749 615770539 90273646 169781772 534528037 623868923 437333215 571251371 334715328 968922652 915081421 509203559 684606530 59584831 327015036 123292684 708626560 753914221 225707062 818021580 978162620 475901258 737873850 202260752 360749692 777230771 816373159 424401908 142709330 513271689 510693579 271339692 313638779 228706582 550404703 850036309 67986352 549928598 332562853 476841976 559832838 775007915 792313497 72035388 178225562 227869815 844570640 722574141 133706142 241532278 115533547 67112457 655110999 210161772 84944062 108466570 523333895 271595671 768172653 324292493 449496651 356151192 840933675 147635916 413373472 474450546 474580855 894666375 709524187 632178684 46290915 513967330 896540899 110162970 905753410 485290700 2023603 116849633 436831036 932253592 963277585 225638915 650365860 441532898 592407946 243097633 109685980 123454256 21263714 857055009 936737198 349724380 582096835 127244703 292243842 541495460 956593831 777331846 427988280 184101341 915068311 961091551 828583497 613839647 714845515 74937667 674844239 534903530 692973037 891685118 533888480 692326373 392759162 278302638 144755121 211869600 438747098 476533571 14154260 562593904 336411702 960742391 434007513 157204682 375108068 637774251 631940285 504755857 152854245 781336983 548566505 686565106 240010112 690222499 662353065 128526045 967229657 87135266 350314903 393631986 715483278 642103459 382198969 600153 178506143 264190410 333556708 137075230 924407969 57660325 112832699 962081290 617952149 639313067 830071113 600538215 700258743 913753972 252457705 581879788 226643855 329228358 112212641 811034688 375687233 68977711 828633643 478844205 27086765 931956303 718499959 212532391 912638358 981260857 520772835 756780508 785439461 296799898 93423734 772352431 408283782 485401918 463031458 627025134 939014920 528026882 684448780 306519158 998136389 828893892 208316344 292612943 151808746 924772785 134419222 124616056 88401740 138239743 442305179 473862203 328630271 413491498 300800415 648315241 147293354 563413043 563247837 746764133 742120265 879535210 151669227 532612102 518912597 422657183 816178503 159950209 53590726 487954785 912262316 860863557 558180252 742892773 12535650 140550251 384449023 372578071 884035400 655948202 302930867 367797673 587241858 687591709 819865310 459665969 850138091 239718774 765811836 503102132 947331934 898141763 412855743 195860811 306916170 232471188 127565562 787555294 999582480 718860688 714870077 227227035 390692747 208527410 176248767 917239386 294559153 467534411 115232670 539671787 221764152 556545993 502861164 272019129 383395795 511258489 82516128 888368567 887321604 962292364 380979386 101040740 894318556 68236795 67077995 444599951 753463752 508285203 99048928 588420135 300186207 606860921 169727107 328876257 497618296 638594781 576277119 197622501 14208552 286231131 247207302 18553011 207929912 170901630 662930752 614113620 483683688 189312949 894195449 342767451 14732091 758907481 999512093 864916473 119754038 236029071 491640032 754023826 874614131 294401079 953371705 751856624 842431830 481927132 25907859 751208088 456605538 687056972 646692293 556177385 612563558 680832482 780736769 85349847 37342556 737109407 903662750 236556264 504275158 783989427 79213249 745184966 153203097 225094639 589400289 807038322 70809393 155998123 393096473 759903377 210858770 599426951 810748804 397524573 424125166 906871920 70793548 214374417 66387957 696351975 39086825 317079852 602770249 64762484 413554370 528105040 683516629 784688958 996968149 779247977 572015392 400597000 193772929 638556265 855563834 885974706 380120803 297730820 109203932 205181457 28021822 791687950 71809151 566367576 407191413 689416938 852754452 483457470 672392054 909237736 850929450 854067604 681531127 256235009 942446301 443407316 551500248 22745217 558400480 772750002 480176966 174161363 427484131 46481097 219088874 367258003 166131925 600863008 967996758 759984230 467388416 897354356 76813887 157622511 858959391 690685969 242940547 693508974 867929693 180641689 651985453 815048412 613458013 954138236 526096090 922185219 882678756 246293002 912020373 128196253 309817592 986214285 479437817 226840522 813717944 462234383 991021933 855557570 531137964 231646976 397810100 636615566 889016787 611025783 28029836 608201236 625109557 780796409 787840881 694985989 52213481 294152436 569416655 97695165 266942047 748560004 34031192 883232354 609287146 513103819 718157980 66472636 272390463 714969562 278645602 561642422 161764990 875996335 190270356 130693582 573130357 748737590 777607327 157667826 485484510 254374655 576693045 373467301 367250535 936038924 135824772 609383369 609942692 761711845 959831127 175824004 404162553 419748402 515049874 196988813 745561794 160208158 743502384 862298359 353081835 625263443 247277062 537574057 247548100 863830541 862701191 892015236 411823471 832675734 390158339 164468830 239356691 534474625 522994570 190939404 28649913 472719358 385175269 747891345 727549231 831826167 210210049 942998780 341885053 842721189 403797799 210946068 840634251 179736635 302703993 527532840 174951292 842055327 773347260 814009709 216550390 571478411 182861523 945295126 702200822 927301990 934183287 22349173 626955147 197648269 325589054 718937566 923251278 92646197 540167214 846511766 907879114 687303236 889108086 866560681 66872628 175074030 488184596 478015702 915746211 581639688 204009594 97007351 632587918 368748283 552668515 265686063 326479961 696358384 774062725 794181696 522098320 352731115 18180216 673836883 856806588 627505407 7780750 556228604 212779357 63188483 113344675 483448195 419250883 416298933 763436744 446846287 696128371 814692571 153105896 546571964 213694028 321183137 341434738 9379801 993094464 336825483 822466706 717595347 541486471 556998261 834410575 911231288 621746047 796029856 846014147 626032054 621339650 790580361 122705273 714196959 884776729 64056664 256909067 558878353 868494535 785711153 290828223 567306091 246570377 606188170 320780358 743177506 53367965 699215076 963257858 36469981 801810036 749652227 75248954 172669904 183438219 698251059 467135027 445209264 643566441 23592449 197640421 671015648 70489416 477406634 624310523 2407882 360659143 784620952 861665023 149848112 283459832 143678336 372423695 815099768 426304467 342045170 426250859 960840047 205530468 855999412 678252097 834801163 797177049 570160783 992834636 760440201 636309761 606368363 573922637 576512173 894360833 657371192 598362695 33182636 91168679 319288150 48326409 613465223 749524149 43330368 946113973 154049090 493467126 738916878 234713783 954180711 451449948 387878174 195623879 496025941 379454028 838443399 149777754 714573743 124454848 442985205 217206166 393485673 130514274 861947254 590531725 411580047 216665733 241041689 365714344 332457993 385460870 171983275 761969660 162064604 377290410 920811693 597167672 723754365 513895296 37047704 76853123 396479548 779050293 866788971 55406720 129378145 438232676 784350007 145258506 139950298 772129315 211664175 816760233 202508391 972172424 148348011 545783425 441251398 300164310 498612041 856280989 257012251 225712137 681595186 833932174 642740225 263124778 745326646 305468445 961478638 208518925 439307309 132091872 143918061 566706624 614436226 379201133 208630846 470728205 933752367 546065029 944149791 596092779 198046082 215053063 459756414 923325797 561889477 910478237 688134498 829181447 280644417 7678027 678763004 862838173 447311728 830947586 278348978 718006452 447655621 949307147 617963846 819644595 595997503 495035404 889872118 123567530 263328234 902124178 693708156 278126538 437998281 411310234 910090205 84811197 921247278 643852335 648463315 270070036 437868537 555955381 821971812 730646051 860899043 521768240 599043139 883421664 655423495 493624226 75049015 353523296 25327723 929948902 734294896 936270514 776325412 698196690 624127559 144901200 28478135 286385210 654459088 619627495 40009628 961579548 642749741 252829753 853243502 479089527 496035771 966939063 750211373 731374897 68888469 98504210 355107288 80409470 389080374 904462240 518620360 24971958 101013762 604876538 210619380 546623496 211722518 668005082 175757245 553747315 713896730 726990617 643090028 915321655 541151545 30888439 482368627 37919829 23467149 235329925 968124403 733805538 983840545 303244281 162425383 451909063 775686822 226441957 467732235 647841519 177841105 329754664 126325117 94328256 32974680 599094672 484499311 575459637 872856449 941776504 235631171 466971023 791709027 116383444 342921782 621277754 481015143 308490708 93540504 951195448 372128118 151279868 636308906 554940645 431952274 455733331 867489050 314120943 58818597 485867763 540237287 446624990 987543030 74392048 905102418 43498513 855068618 930338354 653064313 211513640 437391040 456247248 451993976 737588905 697900589 522953220 202389226 90707286 954368940 917937925 686283114 589137868 6065377 120785999 530453449 264667993 193994035 511353009 463926957 621817720 237395406 700322329 265287357 956723784 343081364 920706589 148184425 14858125 508361355 111326733 92126960 734066045 627491167 472166813 533842538 610410020 438312060 274886570 467883127 766524907 634862738 227868445 783796428 436580624 435616893 655754523 677099671 993490239 573956087 761893724 657931548 550403480 468025148 828678989 57694354 569313988 312804775 366991893 509506141 927035825 216499391 549742670 928498309 205255986 497105148 276664993 334215291 193148407 508748612 138292307 639592233 256376837 510875239 29379126 704651614 249253309 202171848 440485606 303683657 984461613 947151223 784541233 500749815 839338828 988678167 1000784138 159900106 429574904 971011087 930306351 22378183 393168674 914660156 967471125 386817266 188567574 246689897 231322042 215750352 61144185 821401420 325683968 24143121 720864664 74246483 876372245 52254264 532516855 624385164 24724885 798608294 559631462 255016119 884544844 51017428 70148125 860159925 176300587 700694960 156786011 339879115 850991277 323404510 611229279 231030476 41610854 899896239 188570901 983965817 88800714 624668086 574476431 221889621 316637505 270605415 556460887 134294385 561390214 858866303 545326986 436539259 204604652 79105578 408172943 749684853 885917422 848835083 637291108 395014600 222360743 271414692 713325623 851821942 685035986 662613410 442979844 871945740 318684843 831657724 614412372 60492957 243909829 813099972 652644463 653857424 185869295 569573526 621534496 330734474 440466504 594730494 614775885 648002566 864378147 901766170 897801862 992819403 598958265 338181679 78684841 907136667 783767216 746084301 46951765 910805225 963764447 335017315 94550148 87310389 875912356 152395000 431235889 742902338 69338780 423628117 82740246 156015390 265432050 112503274 456728591 105366186 754492584 26960065 650871737 704997914 288813219 593605264 794552017 142823328 419353976 759722729 28690618 914315231 7014986 550702508 872337852 990328938 912873143 715905771 378732853 648032116 357678000 573589351 125239372 221531545 490418705 436677209 240503341 679512449 440644608 695862685 869386634 824896551 907073160 771454770 291415049 750143377 519713672 811625797 991223790 546112611 922725297 753821257 950185532 542368483 967795319 210494662 973340879 841725392 720221073 720088741 164511810 890964199 795686377 13216976 355315944 833305079 143359151 249986200 106161062 164888640 224465812 718982391 214443904 366268246 717990936 437650534 135039608 325686049 152415773 204120761 74969506 317705718 170464303 359729491 828419287 519734925 303265414 441486200 845356930 746064497 794539999 433525234 872370204 500126375 898898107 789684879 22209718 194029118 610337017 768350714 572027891 590580460 365968083 803734854 888183441 698519479 693365739 908926028 647001779 773794381 156952755 246414315 869074870 90721154 114021662 161146510 436218068 576305667 776825305 458217186 660561673 971649903 405545167 346068066 917057133 733130988 700315861 857644894 840149542 744515135 172035614 358529492 420195280 874970602 261912374 827030993 437229362 120163909 213346744 421741027 750010550 607406611 121883745 383472887 801062988 750081341 438116784 761384058 110367420 336625448 730990940 756347502 27789770 888382768 882594373 438307671 955293342 486199788 422367895 896591416 521688424 794197509 418365521 909002886 730433455 679401873 167798446 714656598 48970077 798808306 74984291 556458868 745733337 678418854 26677645 658277208 942884082 203803041 984767657 279546994 155680024 41974322 166255529 187264524 451350881 374345489 699503902 535568511 469858776 80192780 659400199 272771228 538782981 652640798 94213151 709178092 453995645 589293644 222471870 674592094 115597791 824967750 381950539 865725447 552841803 787255954 28802916 476527474 757491936 46170387 613946128 830979858 669970322 847237139 73901658 163539425 70147969 922082166 300294768 9190933 640998884 104635462 424302116 567499421 2571870 616644295 315966884 196654342 145763883 676395352 33897543 610131240 990197538 484360299 73365775 511423148 227199065 422055008 30283479 253871489 759111536 625483901 456298430 642263200 451979494 499437044 537823863 285742119 429697863 782265458 952162059 450251522 164890946 97215188 226700825 690330039 784881046 69918303 689523651 173122825 298035647 214372036 743897815 8608333 252442619 751289466 903655765 213618785 671291762 265325929 455167260 917362718 920203074 865356004 23198809 886296949 879794972 43735361 677965683 822420304 700642199 793737876 920946589 902472837 27805544 269082871 541760357 515228366 938074182 615166996 791716370 920085804 57873403 794054155 488692324 745222554 533960457 546786151 585177235 50551551 98129843 955220502 377020990 52617701 437440434 774217803 630704390 163935190 467071517 531474139 881283477 47403637 35431838 602404386 339197187 64770196 77035124 684434410 533960709 504985483 463237095 574316090 882695712 467054603 399596242 878486708 719805283 677319720 847491206 611195703 482762747 809862465 915835448 86836474 524456711 170528128 362686070 137528285 827212483 593917836 632622660 931350663 660487760 879976494 852474603 364538948 993492257 544070606 39212687 345487771 621912596 200408869 940400732 442544543 120568518 922411189 27826751 754866771 70426608 636878263 353860863 165681371 589266067 633643251 945663962 294119336 407423016 336114420 451075561 545606507 259647512 740005608 190147439 615196542 807898051 501238687 385457878 382309020 115255227 188439573 94694273 74712534 997803548 891363496 851161872 863023419 523137573 330328946 347958211 711788855 345433923 739522959 333658266 796332734 813473224 664266045 495653916 693206403 596577533 96934096 198293584 507794777 673208686 530139091 736860586 833045827 783305244 35081782 34400506 473748371 140135353 991089604 995229016 824589647 259815654 582210327 39038481 618291233 90300895 834794678 594854222 957895999 786229567 730044400 348824709 153623979 834428568 355563720 7966212 658042108 544789766 447587094 571473923 608696798 188675231 939986552 669015653 746594851 733092422 926049543 158670586 558345549 949740104 957011707 186605819 565629609 18876575 792573264 843618815 707522184 72181504 980472214 59504553 413076523 738130177 785278859 915310452 126202746 168483251 400618972 391695968 915415111 358156941 812714588 547481526 868965164 535005456 422571970 601559775 764216379 77936370 716142036 632795902 73463638 859282930 26292963 593539927 395913532 602265656 841729208 899025842 639041371 118704110 17256838 78401461 625608898 938965626 865845212 54605164 270995967 903401867 25716958 538652350 96999459 362567312 717725911 878748258 787644143 137222766 328311954 397286089 155320067 796581123 172427102 167327322 510389321 220891263 134288088 743041603 342806396 636541237 791569068 767205994 921276066 789620610 84851644 397935253 162607128 942931045 22173959 811660614 399996501 922585755 415851961 240378584 866161908 503363667 565833533 918219300 60463330 200693936 327547372 880288757 369277626 605401150 460338857 490805024 454969083 804853952 556953128 452824233 383518136 302096761 812555351 83516608 700935346 79121902 577914384 670718330 235646723 603795198 44878046 626170530 791282888 388222172 416117209 845963435 544504196 619015530 312526086 498792648 775563664 129809703 996544536 405656446 358970191 859684747 955562640 141392940 924940140 815259510 333771263 857026235 18006553 536408705 589694940 518726548 824688370 936492345 801090265 669243373 605246950 340444928 943128550 515140533 737635467 968125134 62141971 831149307 848750373 466036590 58767212 57192360 670571834 498562142 707552647 211376191 112169483 452533336 591599907 771383848 754340608 723378861 904109501 260922110 960753567 352764789 720952372 61680702 671161458 837966140 113947830 931386956 455852263 214523387 818373564 490054283 900858572 292930242 925228602 737220699 745147821 93091048 555414942 820287783 22824538 751235209 550195398 248763998 676644347 997483949 796476229 407543953 69825252 871942708 597970668 430462561 651456535 90893561 817291553 647088365 666007207 1919387 155706133 56685189 704323161 533502206 511095134 99859571 187862213 236625296 835649187 745551466 668228720 374678077 605666474 637318935 226308474 261084576 775861455 959592298 494827770 830124865 117508564 997712773 331407197 441451628 132896543 538482754 226745932 95716386 569167610 93348181 315146345 382058675 749976670 412388249 776760313 934961342 69051928 137667234 759422120 983793625 605190640 907431885 405422532 649968819 479479384 443129702 730657327 548861193 966287608 290783253 360474037 159818228 4063770 459578406 786796842 467755509 985397852 334451 418139150 305736825 389088754 207462842 687870069 747413845 748983558 46709450 871055878 724551486 567794663 665084339 764581786 575095292 242230849 591233575 69883892 783774366 302123524 513845699 283163938 810019822 466892846 399268982 228580706 472044291 166658447 475157346 24880941 300915952 978922382 323981113 252213879 64195560 925512086 838724085 934557067 981309712 420288884 73231254 187284720 210286453 894111563 855666103 98698305 887461135 988279444 729068654 763274278 246895666 766724857 308930927 450707426 408204684 828961613 978106507 391544744 472805314 946761519 696637941 573685714 793995642 475574303 886782747 492436861 498558672 365288210 340349026 549721258 331156280 89973840 605860112 701556937 116049183 329147471 368060360 724097329 40809047 758411360 411111483 980912633 97018643 366627047 310489538 788356727 816571796 619495575 343141844 572903212 255466941 5591915 815328591 866073094 888300487 55240571 596562155 979494126 825189116 120992306 586171571 522423027 702298725 367268821 716687543 159347913 312629254 403874690 267153824 483220055 415952974 529863220 608959740 245673459 135307734 82502668 195245008 126198087 19645349 652440169 638431605 536796738 947903709 24659784 692652544 782761547 636226615 64979975 555773366 935979690 288968775 836759823 273363781 404500302 168318598 99391823 120295235 143608674 541415361 146334698 281189156 997449646 146836133 799608454 915669402 75298800 827155479 159967433 989947180 37126638 627863604 816818586 849389464 688478327 741114139 895964702 554954966 848397569 535610795 812352253 993499210 994506933 658018013 484978171 639581311 230686497 172631457 385508293 337315628 79873369 910153871 169035646 474617517 475862189 962223401 31102680 783779014 231581872 178458017 707508603 6969685 907703294 60536244 328851273 311516169 486239490 876393159 460700661 333090428 518480566 812360181 385417147 694406872 63942440 760669301 677711331 634519161 284793910 616226290 124519280 553078031 7028119 61167787 422661362 528013375 185774197 818131952 698128034 413493653 110115321 454552692 189974103 650554546 538813946 901432696 811619363 169044499 455860032 594483862 702714310 86956328 58729911 689457330 14977890 693779175 52428904 778210871 738279776 796382935 999143509 907326438 793230579 584192955 820086660 444636629 323663111 386585942 914586629 98766979 817135050 254093394 425105589 298478159 692976119 161364716 280357754 506305559 238985100 929734747 975281631 154157204 879307152 386693588 937788107 857408465 978125545 259602154 265905558 487788582 987301615 312994459 292666613 883964520 364625716 332734700 118487346 255264661 931727299 256122069 959607733 478709021 383395925 253193611 36112359 144213909 897352473 362372688 502958380 854333737 507107091 513547538 18581557 385357813 834406283 674451878 929638988 992699099 898710266 985301847 770687804 325418615 912973931 129253730 31048293 680834921 745783572 239697505 124775389 748681461 961637031 693629243 797443115 698558918 490563621 185066097 301946398 312437380 965580608 519133796 684675951 473318585 892016349 241969210 453259289 818307427 753725936 754192609 954970233 360294974 264629420 1001497297 804804994 205569249 27948984 397770550 671134201 695633011 661410123 678719886 837382505 33654375 283788949 468994332 211489048 688608587 102947210 291610109 775830994 180158063 976783829 712141112 262507324 761150116 803864844 807274640 559560324 473430207 886658131 218071962 263202742 654125069 924646419 458605145 418365435 36418720 413181687 552423586 366337309 781474377 868554150 93560500 362726965 525614498 139944291 372152532 784097816 599779478 220633904 641857716 816128432 27259160 10682704 559837496 180412570 354930274 564735363 517763460 649682158 668043677 451777569 108311090 154432357 197656130 278503287 77919964 301917841 660326989 80931570 504776096 911348911 692936976 61126567 639832068 221387093 11312807 888939739 572529142 228138514 322900433 12390636 815149320 65907622 210966590 286460296 910645236 846512202 469201516 439688769 324771902 613276672 678203885 720919893 464811056 293157445 508205115 809320546 88009007 834598016 166018563 863331415 2148671 796887657 609819338 849342144 435486956 798877544 12605573 625641531 839837692 497252773 850309795 81127338 684408591 18386218 769446698 338516921 372630989 875898692 509301969 936665233 996152920 241985727 764677561 150646603 980596362 991869214 223490396 774309945 239594598 599463359 899692577 876020326 858333301 137752104 733074975 211940783 705170560 499526457 605739505 774595681 467463996 768233534 263156827 790084089 961602210 740841967 630318869 190894666 416260553 965007983 371471711 75096015 583101291 664365484 884873755 557416866 299228059 175054534 455303531 872591544 830902280 594264290 123269209 722409538 228554957 969905480 755484607 475573559 697538997 827676209 362785229 22663078 509557995 73852187 223364435 619459528 792728070 61539562 689470544 582532033 761150412 690506885 924752763 609614163 742722260 591461990 737721889 926156229 144121810 586550941 174218078 619885276 613801421 10109488 799863431 848476739 966600950 282477509 305979062 870468335 880482273 276518972 577238971 472172299 696911965 552054507 438872433 203727972 814601313 365452733 93319140 427177681 786856337 813326371 383718721 603159801 624632323 842130689 199007818 318462717 381250950 210990787 406932019 52765171 231550326 773396194 73926762 372322976 418523867 637438232 995936528 167187338 94360309 218330329 170849938 472121301 402598481 326863544 945750679 85730829 457142899 11915611 422323370 278611796 594778408 192840541 830346291 943470044 109337664 20329399 699437228 204221272 291104690 275442099 387520671 1002102771 583683474 495119670 990157416 833755355 127777311 300054550 363654568 147538431 680950821 851670704 969460115 891953942 565791226 75960893 783446850 344049459 961903644 533217173 783292457 85053999 865982602 827518051 544412648 903000194 379209259 182852841 828507423 377632390 396968014 702632691 641070574 781451859 339037530 645669909 738486975 345090052 487856735 1723552 630589815 73121325 343009660 812917987 498197726 775675891 636739405 453596577 957523406 858849874 457543110 650653784 492200308 233276006 823781829 539109463 306027036 456465944 858320770 63770649 30357004 538372841 675804319 285621607 211450498 1244734 469516002 36977701 460730062 344181053 498286645 564040276 80892610 844938236 229261443 734168077 982796204 561691384 734646775 761122647 939889527 51651147 128184365 41295682 192732091 650212049 292344145 440026070 661255922 762249391 323399439 463709890 905377218 895054916 451975760 537675160 82245674 138167262 848717709 312883287 612253872 72787462 812014802 45592236 429105951 18247571 498859914 431448601 252184692 267740206 541982672 53786380 257868028 417624716 827094801 74482589 167197678 23369873 486494900 338689650 794898709 180116438 661816911 811261356 707586400 810711201 645525770 353640069 496193377 915163733 5058985 5019674 392245092 824968249 555107302 227747693 86895406 358756524 177479527 66259106 275163858 67455419 143068520 296124461 922385067 908671218 375949572 94802104 318797215 886772920 785721665 486543211 170063577 637623832 831668567 115484805 396523659 320623057 443748209 254888054 159125045 916718774 474697376 546196126 832912200 13190726 965911502 891142095 381256766 839173962 489511962 860962082 450343788 122599209 805000983 931511715 106252457 546727151 762450965 965719321 817820899 183533197 362041568 329655576 622887272 106882803 109347194 876071772 668975005 732866130 931336240 68115588 505937120 533844803 90813283 327675066 833490336 835811921 711492716 426499390 664240233 58980795 219069717 559768445 287518052 183511529 451535048 232466626 580931596 462502786 372239732 94265400 513452095 560928378 142596024 28907628 365349409 193500727 279759306 429346004 91475211 771516600 357033067 159863005 992064413 698764011 533824244 443616390 302813255 737599029 74796734 864535683 885782585 377215746 475889554 154630592 940181622 693034344 674664305 670188877 158804334 242473448 988125912 754014685 545753083 821539177 855701102 803549838 717939887 165834731 574763815 838178204 845189149 587337861 537519606 312681521 64218008 678123016 652292634 544096393 404776535 257107503 686303339 141898711 536475772 492865358 797060085 767945659 983739212 411361233 424654102 153845001 652552499 148744028 211214501 922033050 101685071 235924681 635165574 331333568 370451235 345674523 359987686 216033489 353936787 298164723 51873505 631251650 425909220 568162406 697620259 807960669 879609292 271533290 958648377 182722170 322011461 440154566 575518703 244633116 463457783 6194377 831633373 750527087 787883671 874854060 565419451 425486302 208140661 186563300 379395833 605378861 876187983 581569428 466237443 697214156 40194366 566324132 300434476 283119408 238343422 139465739 501225833 970576843 781818643 119872652 483496690 129913628 7407451 232477579 655302638 402932195 997709552 251444733 611439324 415349534 188921506 113878109 628617241 141837177 457538476 835894825 138249479 950777924 957983707 674288776 644104593 126999824 419311661 960789113 418814984 323425081 749443890 254960822 470054415 606839267 474358844 893901426 138771702 630892653 144115167 443904587 242077454 170144006 780033121 13143471 331672267 325338809 507517026 807610803 324527112 870051646 619527630 1002033469 705368646 367565940 772307775 641823239 516016570 593685463 315749659 299388924 588888409 545094950 70245672 286099174 209308757 960820860 841812834 286225214 315750983 543206498 114941263 368328830 976094908 867980409 515721460 727954435 228270362 3054106 199244612 887126965 926590502 711324233 810479353 165347528 452072136 923456410 283739224 810442123 84689469 837989270 397618939 614578174 253753499 99879238 18742966 698843181 693431278 642268935 914421863 846533675 277293717 903216483 333157387 340650022 17160409 640385323 267170195 32478885 598851273 912240570 551354267 742519516 499719692 185127560 791433377 90265287 2153794 8619459 964977531 726199816 920775094 659956899 427047251 304203277 487283692 235617259 696252056 62752040 813978710 226812360 269088251 93206673 786346566 556253348 147271238 324786295 562959676 823806892 797383780 423196730 840077818 303323759 401345022 651315045 303148312 966768108 239822762 331763600 858603470 533728173 855498435 394293494 320547210 352353697 841926791 773485525 820698563 611796804 480651323 572006093 563807652 832324879 520139931 596816700 940993486 430556467 188293053 777836908 811467964 596424551 461440985 246177551 594091618 692312081 653989503 798767706 1001107914 342131269 755825668 850798943 972393367 659450287 902959900 393049137 513457704 434088704 883944617 979158757 239111751 581664558 292226211 363619938 301894694 530337797 53713414 470353854 227292662 209910367 456876547 846544746 23158630 220398204 253747883 194252862 195462402 282997111 37815695 246606301 862948510 39024829 770529910 303635999 17623355 383647576 71109881 901306871 481025550 381174318 178479118 997920074 727249184 543218939 569348882 587128103 504093992 736831500 784145340 358621450 317216764 926073389 952356097 451602541 860196453 10939980 396994755 513651007 717390396 148148493 331946540 688436234 650431361 478467008 173656912 664259192 464346908 82500008 596866107 573742390 765775658 551923395 244787985 869171745 701077728 949443234 71154666 922176254 381678606 793262831 374669213 645181574 501685844 76876606 246907800 37692444 52438020 454517389 946632695 127338073 637835732 10100773 922027018 752452482 29936160 461758800 423822054 745738439 803648502 679758415 45192828 973617324 531038410 314454099 661761619 894032143 443373960 715345132 71941823 308171241 98862332 846338212 751047482 871195510 913228558 602008120 172409704 42928679 753114164 136738825 214556423 985032158 928499218 117052549 65098045 274252816 339424852 457654475 417403408 647386741 246468267 166262274 755040377 727345201 589713535 209203900 623751428 927301110 725765955 812490510 342628583 311758594 981871653 572633418 394636034 71934061 68700422 281082934 629532005 452167269 780180905 92782516 997521478 912164498 371810152 931505988 919447039 803221899 435415650 2589770 997704868 558216350 42407689 38239919 8698414 108805728 750630974 448752583 122628498 538292549 846560523 304307473 311828892 221725057 367183596 722503254 900682269 856957396 445579453 236143086 81940129 847591855 786429554 502763447 762111299 92480597 757728069 90033514 644965802 889709509 439269933 967107595 672633098 212509009 836239727 877925611 804422437 158806711 340158606 89352924 548079113 781325577 20434839 688262012 812807818 111361055 52790956 804357453 249562279 775956016 761943316 879011725 229222508 503023029 974044043 107734321 987172229 802789842 790888624 772093116 826717921 134275928 604598463 211589201 28898019 602387832 18675595 808057261 281629545 107528188 218283691 983245078 481645727 316356201 758945586 533283212 690499875 420836693 43900069 356942769 445148394 354691968 923593616 762198902 614222281 332864994 448909743 15944121 634300820 230262133 769670956 631037019 866418098 626509313 236743162 385482817 961248053 845148322 970856243 690904337 246259411 433318243 106602704 798636840 408743129 836253886 46177825 152905614 250625102 207939449 497131885 920049027 447855255 587906020 1506042 923812345 343718727 464106446 103615157 865919535 98152573 52143559 709389326 302514352 524177661 129365754 248861200 177445006 919158114 539248893 148075028 815100768 469597358 217238855 57927236 570205427 860785358 698652739 908433408 829897742 6101499 213412740 614742653 442782290 414962487 102968698 954556108 954829003 419739545 761196953 467518914 354365744 278039966 95880229 744000545 407321548 391052186 794836402 157820878 5114712 34367778 485066952 978094793 498396776 951382539 891244735 680107668 719280230 44986311 269922094 795018562 894928988 131697738 526260385 39890970 734210056 988208601 704864571 952508048 970222177 144997400 97850820 204237312 637938618 882278938 591439602 137225424 685936140 61837801 719037992 547256231 145268812 715683215 261338375 183210107 799754351 57044177 67409540 544968660 96449412 503658577 951101885 718373133 243267502 718599598 473025312 941928079 569889055 733994548 471787571 510399113 429725785 109109948 33421397 998450583 438837479 935656517 12179342 334913913 465314431 470620348 283983946 611132865 203233855 570494614 140837550 546798034 387403393 474435998 329309072 492955906 403990204 668120818 889209665 94900471 656655408 637325490 673909299 708609663 256960128 92380926 523022305 890624148 1082116 1001089993 997292544 763575863 679539576 71472086 39486351 912343523 639829406 518814876 166536416 287849795 552693977 387040263 6900625 327288264 709009090 404824278 621590513 266970109 684702293 8238122 240123370 515856756 782635626 92309762 607859070 818960500 845712666 351624480 118989869 985010501 550768030 338560170 635521537 848913695 958390563 962746378 857128743 675040873 564603331 440627859 252477846 705418043 359455851 396660462 393427572 44599503 999582493 754587141 902779607 10116391 549252 655810859 590665545 72502027 514495362 136031181 100387902 639588756 752623676 427111525 708414810 641613982 337378250 355922180 410800060 515145486 888756737 833984794 157861423 106549418 707941550 329193959 237080046 902628975 922748168 376566720 433027049 23473892 861218112 447948151 846675250 664131253 140380124 481211382 1579817 851183975 41565890 663807146 975593349 513619769 387750725 64218600 379655087 41494543 271193857 70390138 950674690 514233259 263507862 254823073 948561116 476467582 580828117 207837028 658224204 14325736 668448315 234519175 824727935 998792031 727530620 216614549 220252635 46435963 787997767 956882520 871339879 150805009 532436503 566403918 282081211 595971595 443866732 57611835 788284087 661083956 120115905 172576322 110184029 67262716 592281726 457371487 935285557 230302410 18857090 649774097 646297243 5247916 779638287 354836322 749940922 68518093 181709436 180926954 908286964 318114563 160776624 919985366 580898854 170041097 292281015 940845252 36239649 437529145 117994710 363923285 102688440 662386668 689913692 168547534 396044394 152718996 981901223 948432690 581690988 251503041 157155302 903657617 409738830 647542480 267080000 260957260 804306535 287220165 940690755 592474570 203705136 933557661 259449681 347545505 872097831 520387071 402939111 140372640 29400196 396545875 204023811 846771987 272363894 761986636 952755589 774909144 978262350 979343254 542157779 419807783 264332256 738078749 835457903 455354421 904390687 425289661 639344930 865821746 168787999 145501238 826535323 77755499 315638810 269378360 181833419 582949683 180553330 136102001 386652198 877328557 488084259 79963046 653250118 745227802 323195209 688788202 719673324 96538582 893821227 515062561 731527224 752187116 465551891 662026499 545695627 87145891 399373129 523958473 463393579 782144629 316826963 456373713 162899147 181833913 10376318 96487326 743729220 854085793 863169909 845111781 534205348 297996469 61938926 71620928 585402423 992616744 340780442 907456109 641417047 650633349 598611805 75322493 5025260 471739636 519729990 798038563 868700829 784287570 621724071 884983168 692308963 87244336 567444164 598525277 198579185 39554565 452303195 142656822 431065356 497623871 209461095 979186754 834922442 996156153 912106988 257434274 368994763 826913149 384859043 497555932 392457059 54233919 619401820 286126115 643574616 215075800 154669970 971312902 218561041 6667540 594806413 101844820 598875197 854075341 808685156 433193603 482880175 529893253 879346891 44447217 609555810 874468589 503123226 255759020 846516689 216069390 431195387 334592626 664188374 109680487 254269628 514604843 646958157 189073596 431480608 562091294 19103799 589262747 951952417 50159604 716045063 85535630 590301565 704349818 647214656 958519699 32337439 377136524 669580168 284621993 947947823 745391032 62404514 33189240 481990837 168797921 692228413 462147475 259466979 426359362 205050786 3077215 433037277 793076778 575297203 234546002 953915675 404408683 707447989 242362783 562613575 645889249 3693465 298384136 900955500 65903729 256582984 302564445 716549417 103908024 418643119 250677927 133582082 890178246 641212885 353301983 686376132 535989054 814842026 481699574 715050358 125236052 912317918 235454686 453994865 206178162 383676798 174405851 30263891 391936687 661764159 655979051 862810212 809622973 118095332 181733890 740650908 166987698 481451613 521784700 573245130 273119937 744108868 487132682 229849429 622941571 656525491 994976841 735311406 264970358 723526159 38138115 74429894 655433604 308109946 432055568 990283803 786226576 16754691 476206313 661410798 365531436 300910370 358351893 419263337 774389246 831155761 359707429 126566596 876132435 512333907 131551995 914971875 434315210 831520215 208571397 549710846 589457578 717546860 47854199 294386120 199012985 80857406 879331216 633473642 487497701 143484737 403236399 126977267 178479716 391626351 579333637 670653514 899190557 901401173 838878480 389838466 952764858 320252413 82522056 68760076 126110890 996847896 307014193 808408423 210914198 92701031 629364733 763106381 862396361 977022807 436074423 637070287 234890830 490105945 639683439 743060290 650300133 136146719 563184306 174489104 807973796 189549073 900864287 557120788 99336857 531983448 469504488 1001367111 798160062 988630754 465580242 604608328 698283305 218802398 326909693 136986312 480699331 32925708 792841990 870660664 890988034 368966422 383931637 330587732 508883811 47762900 141319702 155959657 595791165 911700280 962711183 715561104 514884873 968071203 46567536 35859209 190211613 949927161 710908983 856423020 620185932 889670813 60247630 488817143 812178177 233004035 230077347 652793992 903361768 714436820 399925651 241872932 502958649 6826351 808775450 667694687 134529308 471064258 74260390 776693763 91085271 204202877 520275883 428271088 811495444 703779208 897431822 187143714 42889972 536342363 442426797 129610078 732563207 390715436 566521845 650161326 952676824 42128054 851450092 705542197 967036932 819247579 403515315 120667229 286277927 644179966 890381602 7363011 477026198 168572688 165527731 487008172 23127357 117491755 110615692 365481074 985799709 678646033 441122531 559566070 319679340 704027761 78936943 238677580 527582758 944514490 555253920 220839836 733173818 270085239 261927327 12598139 842011596 265710245 165380784 981312991 296856049 395997303 392890269 800455979 737028080 603783141 843077002 786104594 913325469 906140380 257610157 919001088 412285231 179430677 654416039 981727996 647945368 706891482 250489340 867350935 838363606 172903715 377909806 363180666 317987478 214388493 153319968 225487792 981069914 367306886 172353825 660209394 653461045 826658435 285623722 502674027 682523341 361701434 263391838 277780625 842849687 778805288 963415265 351245770 241909386 40279885 336587023 515560811 117025453 720644877 320575705 337190613 21533433 113616851 58855647 892385120 799114945 312768768 724634618 307330833 284703853 650976181 800352923 701453432 475416603 660529181 408299866 590018696 288081366 932729018 370822347 176456416 604038679 588849730 770273604 953242253 967448481 169626890 75499895 503752201 744837497 19134959 591577161 235003976 918202197 772878452 441086839 638233078 458096617 588522733 44392645 374791399 836125897 113721211 309763134 274767147 650730845 671111778 497103092 719212490 786888405 279881085 103047298 739167321 775026806 558807556 845188313 824426674 741245534 688152661 464220969 43178174 174305465 334668270 812232180 584996559 103311391 393058388 984071993 893052872 755828319 725624514 194832100 455411992 143480232 729291340 440451773 594868784 787869028 906531896 276281165 745909558 37035227 928635245 5857831 601288481 309515599 113802232 128767111 637363297 287476244 325901082 695623342 781524598 165852734 804347927 354575304 75774449 144708680 774371251 495233669 7816387 189920949 176868999 720096813 407231324 207011056 108666681 688948765 674337368 20789810 459051348 346334183 91620820 940340293 837123910 304647111 672142128 123787507 554179934 253296550 475591986 820903900 25836428 496566121 165124373 11987047 940927193 50071827 24952999 523310285 808324777 831266113 886719700 123324119 210785382 996791302 54818457 244058050 363830707 332927940 679893453 346275331 265861931 316369065 205302016 837405531 779552856 309739077 921371705 982643941 884033451 429077300 176885856 864998932 854764665 803073586 194791947 552842589 707201075 569644409 38594457 507569703 370006512 357534515 601042547 228443943 789844525 795883555 822349048 859102348 447730220 591148879 230218864 408894751 271590786 213482721 395846934 242210781 381851159 709261997 836054010 105340332 226738165 401111283 348359491 634985293 803155355 14938218 957754506 553613137 792908905 579660771 635581028 463679726 520270063 124373803 414302296 892398833 114126364 779082009 845474024 411123673 649008556 844681918 667204297 853196111 259829345 797910708 901396011 733317096 678155584 832114480 303090194 671209489 373195217 90850500 152848340 51203639 363750867 75781620 907441086 915986426 429153063 296414520 709448741 234516446 241863591 658044522 543230823 240475741 675721883 646077870 207985591 962291051 642795288 169426341 968183050 338791338 263825778 956486265 593599480 106642056 200694110 502617150 95038990 533909474 789379024 3171824 436528499 184827066 548457919 269522997 785671070 775429462 319141240 868207184 254216781 330526642 178190263 181558120 904903445 791472544 700276543 780371129 647780544 597674383 45060715 18229959 34527980 603634547 825578703 797824187 337582411 373359562 95012979 369128546 614634887 837158217 816633164 640469401 629634175 286769605 403105826 147370934 644645114 649714883 37713952 86128770 89520782 331573700 923255849 202037988 412090700 541783966 92762896 359143359 720795218 945928261 754037035 556617313 613415315 480076038 54937873 550158980 185836113 876891959 93423512 83904236 390885053 570656306 509220218 598115596 738157009 424339279 539428542 129020910 297933850 841777819 70762024 639856809 276778364 160551261 649863976 393565007 463516951 44674444 767166766 885918392 452316627 972895140 554086774 401261651 300199145 828086295 688149958 817262211 461426484 590219977 581649923 470859714 479423621 170073761 489580204 533933201 311308967 692265888 677367799 132281824 792037105 509125010 888783116 812159275 408481151 227132347 264860531 456784191 455042089 409730891 536972331 61673947 342330416 544511925 726935654 506256002 523937961 322765381 734785707 585534251 714615802 426755081 873330437 504899720 732032761 738574189 638748861 666326359 317057306 581515616 256180998 50658432 429751557 389257035 35066951 81275281 938288867 162701377 420613228 840648632 345456448 947137983 665026020 634918333 365303795 765240595 751916246 102384210 449025805 268406551 408120673 906904520 606614419 316903193 839503629 755243549 996004153 709694319 716247127 11676005 865007232 806263673 629285213 860382329 912993251 400176984 200272248 546655934 457414631 849540033 391543563 692672886 262522293 150967006 655940703 854640735 857163071 670329257 625198160 386439658 160897340 599083896 999365306 681683321 694327348 957867146 733999467 973573096 580152452 462784588 237710813 178649429 852881902 808636725 498338835 700418079 326780727 7116642 533428298 242445604 760003109 497605257 453769378 992369655 586768052 20183260 620048447 864249124 826202826 849907946 295198892 914368690 27077753 586825430 87176203 567077269 548617459 412076051 300323272 968170715 6900244 374736236 996822604 231016119 788445014 724178328 728005003 676684997 999094079 752289961 722153297 379842999 382678738 842690016 877798345 89585872 481957113 957973276 294903661 992023649 651174997 344174642 537342724 219058398 213084082 2154051 780393550 838154800 122214319 991884896 395643836 109155832 493756503 195196332 452532962 153667110 436204372 131982055 999724853 789892478 744738272 927385701 496374953 616495154 642609300 95366888 551079898 174385357 447741347 164025447 423223640 247945915 388409374 819531701 73948550 562341653 223506318 287375899 441675985 230815097 94463600 305832868 866329358 89801089 559849500 645620559 819407920 185060511 505855361 872870444 909845391 401394516 411969902 19847729 798080997 520758964 909613688 177709598 796328742 755902808 119785527 715690471 564835608 76611524 634145393 745417978 542801662 638143587 17533724 924630661 596599487 897048290 149615862 36009169 9783223 331773822 767815265 753220992 539061658 801631080 467377071 797213195 502421771 269694926 70406461 746055372 886762559 470099077 996694348 576396123 13835007 292719329 875594492 835477257 114786351 893508234 353472872 942226106 693105035 32385671 294430025 441507182 506370447 7185358 18210030 417923625 896934933 130576628 901908651 925975042 208553994 248610402 917189632 334492144 565536639 543457420 329168840 127235303 628764322 905853799 714669038 619991286 434259472 479264320 224632718 488733094 206156174 42435652 421767755 996242964 248909290 60310206 657831822 150979010 348485948 14684943 43398677 209740847 227781031 47219880 344087300 820946707 478565980 66939685 84805623 794224259 522720547 950567865 596283930 551855802 976232778 853415385 530147669 557489569 531371240 209075188 300941309 642813274 343454313 986203436 996344251 555900375 361334633 347499531 929699622 353884676 211663891 374952385 2211755 492410415 134523399 512229243 791079590 215347326 620200998 491984478 470676913 855628663 37685739 855099293 227450408 388580669 674014838 264801032 778259061 977720977 175488041 37605537 795995534 977829086 708068262 313919949 329671381 828152933 292812008 390658735 104195937 15583543 766872245 306077787 707155085 420133263 909639526 159550280 852195177 70178020 19432523 796384277 302104164 948818425 446615439 436694631 296140942 540899382 598683397 329309619 924644468 582841422 742354219 633719633 543987492 871366899 290887032 781338734 988887348 118476196 139223911 838804359 823369052 928510707 981749826 568088845 881214207 819496589 800586148 556713091 649077704 156436532 639121144 200376849 706393990 320859810 138706825 455585646 413670980 560668868 464801799 851336880 721902338 37793732 943134684 787000174 277342812 495638204 123919921 544943154 664513464 456043731 728404593 967081502 515190460 263499126 425362812 38265135 705693971 932878228 494256407 289942365 711629539 682694521 839505423 878253389 375756654 821059754 780301593 711183287 288969221 222452386 560129337 200274208 456440658 526172746 730195461 722359165 459977112 473567644 649704343 230908507 72127115 589410464 716180396 198313240 238409733 350709223 639115581 999164706 458037878 332643264 858967339 585603263 618594675 672145336 679413813 238439355 799358472 370579434 253128423 412162709 374790816 113704979 238221583 782421755 487751377 551173392 467786803 859582129 281725524 298267943 900765008 100142727 620709880 764792451 655729349 496868943 184184571 515258990 900153085 382884602 101640731 5006739 73572933 322666947 110355016 426201738 489277514 354867173 218307847 408039694 890922020 852085237 194730644 99640700 391902811 603646034 54346071 603096073 755927796 178152896 205745101 644612342 555462784 746093426 754034069 539856845 315920204 987769971 425481421 434798243 124826222 279707632 372997697 197505880 496372436 843681550 364217973 390589937 709969857 269537882 911251532 580239117 407503671 402514009 664108868 399189123 527186157 915657252 931234774 66762635 160388371 212974836 898342779 958777716 154234687 397529158 349559091 290544075 378633949 277541434 823550061 926734454 82150988 334714158 554098398 60937823 163460374 552256079 56345564 665206411 983003466 474086377 940151468 77695094 449064354 202146238 684678017 766685731 123503116 432621302 481879747 683406936 207939776 645460593 386289411 803683976 31477501 27851334 863774331 846231519 831706010 672856500 978144987 276096169 222622930 317338260 392164419 955814675 827664015 669556100 617270000 132227742 452405357 634904002 204297523 853563569 254594139 730002831 327891672 980536726 500714123 229774166 515806097 993318340 812869211 880422735 734571079 272619258 345095500 170364985 818194239 1000198409 161919875 649830181 945845310 118007927 711361289 830289607 714158302 333689131 705559784 73462923 881247635 736722944 677148882 952931433 935354523 432716933 66380003 651191911 894937119 67100649 302180651 638631496 986020337 153322175 123585358 439304997 771772286 651245368 468417961 1000474125 930801192 388144640 912811035 626235611 806188315 839945548 146099769 878179030 779051568 284765422 650814141 571095813 637297516 383715964 965799569 506683170 992484525 79763806 55684745 399297674 539321802 753087967 539331935 438113786 59106574 296947503 206984493 990059296 453022576 728270101 192873079 38127654 667509655 783588847 565152491 660387150 834219784 318397153 709872819 495225494 587243915 374912404 928143542 188131994 705107095 590205838 375135714 267003221 719671524 813827450 457952572 484508227 480243241 473367999 302008357 307223666 960259062 57512862 433487458 26194440 460089777 674735673 193896660 112015959 362408221 775872365 876881148 176045345 428546697 317873414 680968485 757089250 72256773 100487261 352542285 300931449 256955054 292829315 800663105 681435396 352555149 94446434 894769615 422214614 609193627 360905509 613027655 55671885 640851861 159971117 197664777 703480378 316980501 31172281 937822476 1001611923 935328134 210399532 34043266 664839342 899594275 332223726 360735 190759090 367809549 252824268 324412466 231271919 341611492 241909676 158178411 102068661 539148193 263128652 869089185 925136548 387239925 558016526 563259810 306460334 644156114 864341469 884468951 549903285 293764732 208378484 365260092 303696789 420217047 18387616 521541039 698038109 713100773 567626314 407981838 732546582 564670444 783233729 186095234 977309655 216116472 153925342 821966346 366212142 18620297 354244085 715693266 246685649 776910075 69489328 443893997 620719911 362425748 455040195 828646655 100507449 849811415 582928661 519519148 892035224 549148795 367517220 795821664 89394534 286210770 95302085 36233850 37618161 39540082 423283119 113042993 52225345 427377898 356222776 465917339 603314304 799333515 295621112 532241771 77901061 515193373 236250383 380849420 440062364 196296476 58992904 99264551 971170687 6622801 212687062 561705831 571293417 63897311 177128287 987863756 827160722 302706633 938476521 765960759 149008864 315722117 33317536 723710536 992549784 436894551 278933193 315109736 385133474 25498737 819838813 837803015 844890220 512063514 944756009 425887794 819929334 714714417 504834754 892426302 547116050 407983347 155621875 542330944 147637163 886998902 909386790 667358262 289847691 354619423 473791303 950113421 422336739 873855260 866843638 821013192 28537415 616110556 309665433 366519963 920721043 434769365 940053956 831806372 949875616 764185804 304909149 555078054 204706052 392715766 173212712 753973436 204706000 894589910 183818280 458051134 845300936 21300233 795608977 123338423 772479010 250307822 388336421 47736606 324622477 413063890 99797409 436509697 371866157 624121544 213297313 235464972 578890777 863880603 658871544 79740611 382272894 66660017 935214872 753572548 936964930 941562677 425538737 994795254 317626290 753618214 446685726 139366761 521291168 275577209 184142707 847414177 833062884 248034595 471443921 847270646 963417590 631850680 302563438 628977933 953411039 577947886 157368310 275709273 87410306 153662799 272789942 449531138 186859974 541604736 620289935 161827610 473193840 189216049 550291369 150305278 956804964 951469542 512279444 376098614 892610759 750554675 757079126 850504023 754938073 296581588 73276126 779583812 587389653 249735069 970624739 467711886 955782728 444794571 563756651 261212857 987722059 127893408 314010312 751810544 25367250 659106769 407005887 499746397 793096546 542174179 110110489 704364677 17120233 565100840 705117159 108086753 708230927 460608301 812776269 945281675 997363698 386899381 344657467 569495088 606551492 306951299 161508556 714764094 242012768 476275952 321514794 151447695 57090914 87630922 135743283 76402108 912745249 342388125 66079745 854190754 950686719 516357622 599299789 852345837 924782809 688086421 259416341 189694024 929306021 770509346 288352073 917342250 325925845 913786836 187630744 897248358 129681028 126011326 761353485 998351937 260471571 470669714 995409557 82006198 908778687 738647827 244663350 341362238 588697294 375222474 394288630 621938328 825822273 573718198 987817847 576846662 42445370 422510499 112234519 345860104 126507483 424788167 934075218 707878111 30572806 8602977 87664024 343999463 487285476 176265105 1001627410 415935001 726004816 285164368 894513418 749246704 566195595 206609341 25716623 433254964 817526846 321728283 137916216 876234825 965134119 928405448 496547508 841709693 328427164 720999750 300309986 705116276 46440869 831529344 305378988 550053608 819228686 463240506 360361458 228294340 368363440 706715470 763971062 504287806 497423551 959495362 392750943 440082183 103492378 521599085 84716367 800268010 188812543 206099694 951825550 909678499 424171077 979584317 774361499 820498832 669371103 782841826 142155647 320214338 342443923 973845790 939178787 399781783 964979472 528005657 27015467 60257157 214091798 855616697 371215311 690812284 331670260 498076586 267234476 625189120 75885346 118285027 624620755 354523985 480864756 579733693 814800947 653638585 659662945 636552645 106312392 323610165 154021647 945368764 754517739 315547181 786807997 987747755 406586502 64698304 187098041 400278749 663867175 309170810 11205911 29264774 541522309 505870683 783015303 508432784 593105633 178880505 75628758 970229422 640902927 556911119 40309839 138998370 888536690 748194877 967412508 550507617 990448751 146117936 351451648 809346721 690165702 780262398 100958871 860262338 611658298 105319766 888494203 549132287 509347764 603518746 16059873 880438431 543769453 438831796 972172980 228392805 632512417 397370 832697026 991414304 110850730 817760216 713079558 174844524 101214700 897618725 258452628 515786068 463207020 282194711 837523454 456689382 372587793 858403921 886129259 64385305 296292361 441705790 736282963 703978788 586100519 148925376 44186635 290234674 773355637 477975098 609456114 355247095 918940866 845648037 490336453 382318547 577844401 914219155 36960462 163674138 456868613 806982550 747995659 916618742 6911318 266036938 645501641 508668552 55650206 716622700 213663478 998665171 932907787 198946151 821850576 112905860 104936458 477644912 192608542 324657059 481109824 474329524 136016529 698739153 676332809 756717256 907004021 549145789 1000337187 668021756 787435348 246109689 168028268 870779267 567631690 240408713 535438021 614750297 690502183 71407731 514600967 729336474 699943317 64696485 65949019 267285007 192686448 373074740 750700436 691011916 132738000 189706941 57869579 669661870 870956416 450056545 276948678 501171509 435147896 241676617 676389784 186864843 301298620 543347227 810771314 539800266 14940522 734332261 281193466 432709203 1972872 338583764 469127683 327212409 672745927 45599147 373868189 835298991 855520938 6380407 917650481 857132622 337567983 859902193 173514343 627635341 780510346 543768714 597017127 849051363 470653449 868502474 108876621 781684765 406132092 897969767 679004792 412703782 902944678 89179849 351028386 527445061 226013348 283740959 614319684 786581366 138989010 89527257 167904740 229106503 216314133 738561861 526002707 575335855 3843317 754160331 589341411 87230294 639001564 35692147 270651490 2501104 50086431 790361123 214828603 117350499 720151208 335700723 887705112 876842859 863838478 436449076 202339422 61679088 416316002 116841897 245212206 673897622 452338352 668910320 802449733 645156966 163898785 123474387 252345247 651086124 330944024 350464086 977488785 304550830 203672901 35311098 586225792 703961864 9917522 520059143 802479693 124562899 446828750 941079913 6102923 66712311 107245218 645794308 116683291 554026249 167601121 821609922 340038 395779108 722594144 276756490 892107743 402540770 260948020 138188519 990195065 425254868 840189434 34063272 742268089 791873660 977205646 69970946 473413175 568242411 10568634 295743336 933184124 641122422 121314900 461458431 916964594 264602878 122384180 647643008 647469693 656546733 267431748 209531816 347524791 713207214 621161737 829083908 971824581 52438293 802401362 277228978 533756739 303534489 12452787 148575182 538884590 105283913 761756826 148324916 211351151 159116088 622038165 142187274 935012583 292068864 507771746 255857957 495977630 189844616 108028052 308360847 108882201 309367277 78995540 929975684 945724742 340959943 786477796 63960743 504604690 111851503 900016047 430944138 599432535 803423019 547424873 153820879 706131898 100835457 231802650 539095408 334866840 628376682 951705423 576484363 978853603 84410027 972556736 153894458 647992362 736215082 561844439 216005167 917710498 994742861 737908960 17389466 206362476 116522453 814369885 13453053 169825102 216405109 614672972 332772275 951470214 41932940 625203944 577849029 581112785 543127405 485478740 129297148 761599744 789328012 746099126 204604880 85187504 270334104 898223742 189459157 554969742 98941673 358263546 2954996 748548963 347060741 676221209 696570214 576421895 625059060 14348921 567985856 558552162 450458391 362042650 790266777 657625088 136452420 608922785 607432824 426926022 252189349 880278875 195569662 952732392 293958807 12918126 770031608 450037550 453729446 549207583 87063261 60706884 497447366 968558307 421703668 844029557 874730483 882818708 521337026 561568980 605369302 418637052 111048579 393032971 62948521 650105294 77970422 941749202 276180623 735171125 131512401 820338769 722567263 549688709 689585736 932454987 439858756 410186526 346580969 66568287 970739867 311089120 756159805 134639589 178110596 564881834 544722883 245067397 764363184 983062380 437691188 499483654 544127790 922617226 659181242 609509646 311550730 390982283 344914800 265314685 67177548 723800763 95975096 117759046 849348119 898130311 768900451 184565312 593229707 766998880 538484431 24282421 692593343 245050529 599862013 839891813 294313248 288031706 31271299 870432447 307078767 397260042 733021607 766127883 95443503 397434961 417881995 333608349 555940942 448677523 404503446 22497731 43029207 226393387 226396419 758953873 978534848 457838403 412731518 793324779 914947112 670722433 423220001 473512301 651543742 771106953 487358194 478420095 471371733 725258523 973012282 3212318 818860201 261111697 860666529 877543517 492772072 717858817 540617880 279351281 481862965 260111697 707277057 599641458 151992528 196334273 872780922 246760264 990723962 241831408 888517823 687774064 761393414 26229753 290848817 788638453 837745456 136361677 38296393 896316141 892278137 369464609 327972983 218529956 78037446 836095478 99302923 938546690 189870839 421150973 891987499 940636977 709023865 762097004 816947757 828781710 434054041 595474470 265564628 989021715 755122166 408920510 250335449 729492655 416800555 603823092 405363341 525670286 66206270 399035977 185293342 540296995 829446973 34401751 946369704 976058704 682595035 877384262 582621469 203918563 955748754 679215927 502699910 287405521 602306176 330980358 174896045 462232753 429805098 659695360 446819146 920469020 118570570 379732489 224152191 845932559 65465935 786112146 837811322 99660802 319844826 66052748 163203393 25694574 444787854 601001155 916889532 773309424 990169309 4541367 794676032 338298741 811555016 626991297 61541863 850993856 800140138 346835660 543698081 34651932 543956759 162755157 158576020 380562272 896860788 97182640 701299548 340280186 823626899 706511699 685979673 991312713 908098771 881088763 112228276 436296813 167441013 193965938 871674603 970267495 168911714 820807677 484672485 533794298 719436498 39457148 658998256 806816467 398809849 642970930 12976134 275986093 926761181 49163106 387766285 465128739 786927486 90452770 982051866 119550453 557736502 220644120 853215147 575428099 616548574 270579483 999503050 734425419 432633553 839857376 805520429 752513674 660602822 243807415 940798119 120233127 615885146 638925044 377095501 515646579 82111933 634352046 3645169 164708674 289238255 959089732 859553541 141845157 836594114 480003032 450094834 163051185 461704449 342067314 989756992 825635811 129155860 849851465 205521105 778490190 445165404 880040739 217849143 71033891 486141876 194552065 817283567 230322065 728665699 543724892 690620926 111507780 542418010 131190133 478467681 579611327 114311289 38375027 478801507 521279243 166817675 885429745 637784261 513952518 260024068 140231350 675382314 298223374 525239981 249866179 124176685 255878413 784465083 162803202 805472304 752794694 281874850 146875113 170331276 205660260 940887559 940468350 668149157 224528925 930090219 854024066 177547330 716739339 316505904 843596436 352461351 394814225 862524820 106837266 58798545 930924317 918637695 365524491 784443486 270699147 257218354 434973210 391100249 811906363 971571809 831150289 143246328 528556553 588206803 146505938 206091814 44195580 962083372 486494963 344973325 310562766 879210605 911421463 530503070 402604420 135044477 390419170 101639070 769980251 65537599 695595726 574342282 913172739 997325499 202231879 525029128 582497764 450002292 38739295 932536136 241638690 562446886 921525674 1001195594 331554481 277917632 223162159 460332980 461626039 921659215 670337204 975538087 492533591 222241270 623141186 417645378 221665600 186068683 147271108 207618545 631930365 38702384 598487414 280442243 918094228 636393312 128170139 837175988 112778185 336046834 216150598 523012893 620431196 581261391 953176581 278207086 975837164 509648427 125721534 948119579 456353358 58920199 748760663 386902650 469830727 988763333 977759716 560840303 440537640 55908983 755384197 213015134 459169144 487765828 383397135 591988545 185701251 248514192 926171352 622870003 766647138 624230570 700431607 736116153 650530542 867926738 393708954 226703698 307337366 742597540 479167011 953101827 852164115 176574421 564401686 305109570 273395411 542205330 956142735 1000768822 859059052 513601117 583020580 702749369 159451423 260823838 840131400 737402438 69509895 62839495 796542802 479994775 785831384 592373896 828956849 156214912 593890051 837172427 325725009 517383638 174121400 236081803 993143552 235221292 602938340 675758616 854709005 197995433 207331691 453244479 595037213 331252121 106414780 103773604 462506816 814954974 763446793 727946847 566210137 98194003 307295104 63012855 864628404 3051764 728048331 166883073 310170419 244480085 406674026 188524682 507721562 72977604 544133146 603709672 446071632 4791527 946354313 978260295 933025468 9668855 552839357 90441387 457512437 406983381 136781145 494822616 780561765 637011361 867182876 424199755 255555070 423536588 933752295 884539226 363858825 663827473 538466911 552035669 641897775 269675917 671446190 654842696 973155759 185216250 682747990 732482313 899242129 420635809 2020574 419945673 721426577 706809621 799065847 25187738 668277314 124298153 268675850 451292294 284965003 572402093 148589181 937492026 693521970 294724322 198350003 188659508 948142393 571455829 80861233 598134007 944457660 551185723 24904460 854494670 258440242 469044415 13038224 274641315 645445855 477132905 450243182 37379209 991041026 400769937 705487327 156480418 945499086 963502674 937995145 7963098 142101364 520254970 561360210 883454066 484180490 324869469 143535275 298949444 748584388 532625923 305436666 729805676 721696282 677357731 851263286 732416790 329670191 454835391 370901477 464006991 230088624 408912652 613432318 919591672 773623220 381396118 280403301 563910837 195872537 591614558 281058361 448927598 107950570 267244625 416959145 554376135 175261478 985641134 982569154 801472839 716890384 104488685 46750844 865519630 123664312 962215052 380095235 458576902 601927053 542784452 137029627 88539196 630984953 491708791 546693481 593227264 151377331 732245354 675427784 444340325 9040352 384018050 677105712 393093268 36574863 518184442 232501002 564060578 481926052 478511032 537568871 474004227 566868829 942101212 924431451 986657495 365684469 899842185 564599257 529394482 765234451 552677208 691421300 227853458 348600047 495873535 206083185 120989342 876849058 748366677 707498744 376938619 75604314 730688529 701814871 23499013 726081658 152159374 907873598 406353250 279293039 250891716 924381343 753789565 734919969 111439808 246024407 635149432 90325406 31743038 216237785 571430332 870069548 789519800 557700738 814924006 873956580 326097349 838099331 531985766 55163953 549477651 848172882 11290416 236939266 784640090 226836303 612440901 182384754 938051191 830909749 214211868 780302933 803840219 890721761 550346943 190969390 877719419 628438169 857287861 254149760 529427211 888600866 431978135 190732787 871196405 707230586 347531202 271729423 57916186 916730406 231527418 93525376 959160912 133347629 945888141 526712511 575969714 806341401 390710207 249399300 805562590 245121362 210793987 320077573 73859536 479494989 6558099 262612760 508781581 423346221 14784039 95422962 78596009 583770951 960368079 834701018 486734436 284987676 824815585 74657304 612948200 452821481 964468356 844094165 931989765 482004971 439110646 132112108 801087551 244656671 698164420 218637447 129446050 625950613 660509307 763132746 554440781 387299773 118611610 760386100 984600588 991630958 618854557 28412200 575760104 712216707 837672026 954747923 911539305 728608481 534516840 81024341 996383218 621149887 147440433 179126343 121434730 381900352 470474124 8868353 352778990 573197751 561672363 488430065 980969816 723947322 827086317 234677253 567940146 233870943 800480786 930622800 1001794005 356219096 663683186 688090591 520111896 535913507 101690844 221238505 75182910 478410671 174735952 857883250 205010895 223562524 684018628 496752216 843485972 141792250 830409926 64325785 154754786 108480367 202575210 445790446 21473090 983576707 703157855 679721063 769917132 985951420 356027463 106103223 588463823 114533817 106907449 436091785 260584476 503342005 437323847 493507475 495437135 277411383 958057481 256518311 44281788 445968178 398324075 823581904 551521273 431950990 492148553 802470925 17471702 518138286 441814089 446940504 928045726 75146617 348892214 342561252 582790073 363568302 507215143 896239644 618133029 536825823 238302397 440542809 8428124 712316590 76877985 669890493 692169878 152781250 735591428 377592797 772542280 362302790 795911275 48881770 585961589 706601563 152933208 708358459 250086140 319283793 401592744 825031153 625344812 373119932 155526296 370552648 396428898 457460989 728049393 214249135 319452789 238615683 906070019 168849428 833435403 164291931 126651414 271197048 676673057 539609514 422455395 67473299 924670447 833666840 767557690 533377499 182622459 811232361 885574489 643191229 224376132 73552185 488166708 449137145 554814187 409875794 682419086 826213453 463163981 516383549 855847941 99493645 471692735 490947631 159684015 653508388 459766977 743864531 312382246 567096188 122424068 959900740 341513792 901299162 626903342 656690369 601300533 378531044 872281889 137578007 136880150 330927252 930065362 467250697 683084099 952433927 844213332 551917701 138021752 475284630 975187761 919827364 413548432 221952914 477459253 918438703 912371255 207076823 245939055 526858222 506025916 326809084 100490857 321039462 878439292 518630812 400754395 340215388 838357752 769303219 371259547 894727157 940673546 682480030 627942061 291401300 261578739 462213787 718834952 963633123 862934228 370289507 652023985 802446646 284853107 860762610 893856304 723318490 384232392 884054309 189358863 636203099 819684223 676435581 343773434 820001656 544528175 390400964 538763140 381271448 91174908 262721068 994132455 578206290 635316488 915689718 955354076 366733412 941549427 794810974 20157529 873029941 421869154 936511416 574687645 428662035 30155535 390941742 457146778 79178877 501068011 393168553 301104992 156270497 880586789 367807088 77267820 972999771 818635763 859054171 296790442 544632871 979751102 438272857 332259776 916148027 326338239 316166771 885808909 746623802 813475384 219172123 72713665 83372402 260431674 617903535 767076069 919541281 250773835 826093435 194902732 795198957 30154373 800656369 286843843 965651123 901363914 824717929 147729563 254994321 469780494 643514513 947332479 699993941 524719292 840816029 614703920 240357142 616678665 629586238 386089959 234079951 63126362 927077474 185052832 244351467 455635768 891485567 546722390 554268800 383053113 393104201 915099944 39036406 395738305 150476962 316053799 453063983 88256775 610332848 587614166 446859123 573093348 194086921 441632237 504491047 970138749 154614633 515649512 738310721 163760722 886132064 417026335 977660783 633945630 693524249 363916732 83163102 88193958 77894804 469628618 183657547 562797739 601795353 986291278 701956925 609056370 106285686 249735612 488258225 870973827 422501883 144052206 672851346 180686879 35248872 481369976 260689607 814871494 25232514 261358220 702001803 205123339 256120267 669355447 252775739 165159244 325841536 206991098 942144938 334336720 450454238 792983931 540214254 667545387 316932687 956002595 698719299 129926184 999031608 224886580 381703352 86814771 187394375 607141974 114788713 892701820 975351826 310128945 978997547 828887982 321103441 632534165 879371117 414084862 71312425 792208196 122515965 444054418 610357354 464838973 438673393 880393110 232340944 98729735 912348062 478259431 775288042 160335975 335205849 573163660 358334055 367856709 534959021 340035299 37726816 677710325 219622505 417711974 489248415 830335809 692138909 370732114 540148208 512612338 38937450 14030339 31616665 3360924 570398195 354976040 679998446 143426315 153596350 342411852 222866097 951810587 997125158 137554137 706980900 471876053 18898766 539376362 102785780 573455872 972834815 720221594 367538305 975677845 699706706 818044799 297619592 358718264 563779601 384266778 436573916 732785240 980447034 642616057 334079225 373277127 51278011 737966756 341605064 828298421 564493822 840362386 448809287 763710343 825592451 445726884 424165255 777307262 127920367 489244817 47042300 655510186 84293046 163309529 189952454 498195310 227255641 778391452 541009597 398159725 983149212 711323321 627020999 260252030 696376575 223000339 889845293 379097705 918056976 824788809 595946345 521341880 21960072 219772855 769344488 614353468 579801560 960933748 711505388 852029273 82266803 516987868 580669171 773121484 346126090 188707331 87420683 286912802 143538474 407316196 555643718 959002073 417504933 852231780 833093778 713551852 390048211 604254070 898142668 611582806 189177297 247234302 145644156 526335940 472021849 349791115 507641112 431279661 976651685 933088282 668056488 158517549 127668019 653522426 659935206 533335520 443731710 96233460 742086984 864595565 722381034 476565660 133390427 281015338 261259582 918165865 575188588 476873547 872186945 316634316 147208505 737199350 152086954 146276261 409451601 218562025 949342617 870606917 358337386 211304088 442375481 562730585 120647574 703886669 973321407 726298076 684364779 246630333 72395771 806058065 97151185 205985086 652734954 723002360 711795221 268164306 254501515 276617164 104819043 937988073 944752484 310113775 631977056 64655453 169323745 867407453 330898950 892369737 30194795 95366076 654799671 1000000425 359619325 757581154 429091182 995642666 617720372 7509320 440341526 859586861 911362350 973886254 536943686 698250481 369309570 185926526 618662773 902431299 165321177 762816469 137559390 374205188 808430655 780713338 451346503 638761792 668847635 653144454 492385676 126676492 193972093 776549411 878938789 417647301 204030898 446736851 39812409 876359040 796734342 1742666 401989073 867072477 828021794 853218223 214055328 430547825 60075591 180536626 477951085 65836188 206371693 501624209 818302040 563663108 612802363 495621046 599521190 34211014 694604379 994198888 878278561 981014746 529055756 18320260 854616378 159229678 853288109 525420035 62185237 696241825 285844718 580496017 637124075 394349572 223422456 6580890 717583453 115268817 528536741 84610483 956460993 160451894 448509432 828861016 803580547 860243039 368718739 515905900 264942119 434705114 143866932 953174135 939059470 91830048 187035238 890471492 288396036 188463947 956008215 421220832 75255532 225102133 743304429 410171370 514068485 233484921 570767371 438715505 326054893 57562668 232871467 747157422 397685857 974188785 559898176 845540162 467322262 995866041 744137631 649419374 870103304 311265858 485165584 868990293 5376334 506633001 818661199 366675942 496536573 464607893 255597504 353624397 677870716 855894029 725432703 306219106 541159418 762720336 479033478 493128238 565844413 451798949 638863009 30873192 248835967 328957285 485090963 549418627 995193817 83535703 590679655 311778087 893961217 564742634 962949806 719106730 288321532 702491465 975639627 381330984 761129019 42471020 526629951 818806603 120439676 860137309 439916712 41511293 608111583 259503368 186221464 26012216 677137686 908317520 975429356 70884235 972920501 501791915 308077614 247541346 663086893 83416919 735901467 373509783 515415246 15266164 399394720 869942325 548968489 729228742 265138899 261332479 765986369 301320454 714147431 28615422 310145122 884270335 325672066 155032499 543110744 117141716 955119106 923345380 747485623 823532256 827698668 275410909 481265574 870754702 549891693 287272510 228556908 230137264 148085433 965811223 402847609 805515516 667857737 324062027 890856479 856720069 550932237 66432441 373227983 283160138 768397928 331616839 283834243 85702577 981714266 653459986 76040000 238940820 648972232 359576571 364215556 439994515 524338421 525040337 764409107 538668394 71446681 126925076 797693967 904700620 958734924 523687870 903903591 790756792 901067022 691863422 653338105 557411287 420172977 934229892 990901330 482129772 470418839 241413431 572874713 356841392 506374026 693824735 489194212 61760392 648402523 909355239 126908734 304965662 806537521 527266501 651280441 37578019 888740699 833690151 831006812 962886906 460738807 215144013 971421671 373401152 292181095 968617940 286658215 906421499 131497842 128996756 553545581 181592290 376193710 697651527 979932747 150714130 891695747 888791456 857619883 293239695 174350628 743507631 579287266 397364520 698249623 349792788 132588672 324939862 901789298 218093960 165489301 187015445 612263968 347309818 168966660 19768188 768988697 484915441 921355144 323836574 689113884 674289848 681013594 812168059 723057894 808770501 882357159 897829702 200806410 659951266 291528328 755373710 979083421 807680136 713062589 792982543 688328979 253104498 992878514 620830634 433348244 42357229 520053425 361429168 244427004 264125684 282837651 514715698 847008163 259032066 47300483 839629967 556525837 79038438 455330012 846117107 580579255 6936401 768224831 872254804 498958433 949808966 47655406 48563961 273891100 404742647 68875607 737432080 404398701 680731980 827660060 71809895 676190508 960557819 6737943 379159932 797953626 640610093 347528777 409413997 908629639 688689459 230974837 555560766 305664204 197974956 654075771 245342107 963019084 344459345 661752626 426972587 243197908 864534764 826611427 126541160 235154973 66304484 762775041 153000932 946011919 328527525 621087904 227587480 116902739 933967474 228942448 224717383 762953848 736995287 207108220 197928654 471088485 839912733 519338733 330918350 580068041 40797757 132610470 445776596 154744302 55683875 172899824 368400323 325616062 114031974 800804438 977428009 279274658 951305745 991221942 69427311 274511077 16943271 288706809 642766971 485679042 966544945 594611984 879883307 1000467042 612678699 13380601 926103155 284343832 608500140 866015124 534341027 773908137 965609623 216377617 764502940 527054123 884019402 509223251 569206364 147645437 286936857 96316904 994146708 395414470 316692217 289772756 705810827 589026495 978555212 16068601 186011882 68596815 137560313 857548341 140635733 774859890 329441294 495947772 350914339 840308361 164325582 598952069 541307357 170811214 959164262 841585813 35098059 56900404 454436033 889510773 78850224 611039730 58716357 92644504 411440166 940076117 465264653 264126139 623342352 171478175 271135857 134574296 382309417 209369022 910678929 148349074 689223922 455321529 596171258 629869748 508656788 793194304 659736947 994015542 350904348 113273363 598611961 131442866 395849933 928804651 100679874 779281993 768462533 833593146 44044857 503602440 980257155 857605651 872369280 320273807 211667495 445150496 218447756 149212305 274830442 643363116 449214634 754517911 862575007 415444085 961002621 836052226 38854274 830403039 740864883 73814755 843039100 836563478 862209632 8381186 206108079 602559854 70106470 470366317 377877937 896294967 357853723 666627991 503020270 857981616 116472094 847336423 350717088 998038362 535206423 162965900 112800542 112739788 696687481 421564215 887685320 323711450 342619176 430399112 51329920 964353685 979532862 303516602 830490371 996336528 942526159 187079399 607015359 144716489 133989141 83275966 177503416 609914562 622100361 559157409 522556808 426719167 936226688 714587611 24385542 13121497 516630247 386883563 197428349 143536994 174215112 667639195 636818084 644853563 32831499 320473401 15238062 125371498 613997834 707194812 561046159 635894087 212272295 234355564 84721663 948793853 989128231 495433321 244907749 534113316 406279264 757597709 318286044 970575676 788420122 93619338 217875654 929223559 144020160 491243700 155100611 500255052 426914612 289396987 599245749 133209032 715643239 583111208 625960841 545505791 425868618 10623431 608400600 752091544 494195900 868325415 276294952 94082447 822599180 833928763 127047534 523895428 493284096 402530630 304659809 185111587 179112595 1534914 789546941 736299577 922344314 700221763 649254924 117621609 949716390 606480605 474070744 89004769 900145624 667807341 405299634 163854814 72699622 679848646 778693818 497202475 645723785 991043396 933875990 968043485 539237142 313589977 485399155 210923532 608712633 829685905 607031082 118817789 323518848 286760685 290149380 332599226 123471673 105881469 425657137 102090638 893044227 617142492 153557530 299911275 770843930 77387469 871113513 936528150 811513341 573556069 970769437 886511659 114385586 589541220 762989520 796444785 393188029 831694608 475007243 716824595 445295614 426639863 715893714 768388656 188641655 468679957 548407151 557104020 70250411 520693568 224834482 913370099 828386049 660153386 127990904 165174434 305356262 749412560 890671075 935626958 316403533 338594905 351745165 12225954 775621165 342038027 591413751 256809606 473345826 919068086 119745780 391267102 43714913 707669469 566695354 867173565 921542660 161158830 457746810 975753574 260789383 723722110 333658603 569400492 962166970 633824936 204779771 393798462 265573682 115329291 638153397 334308138 124121632 120744982 437557697 542425008 446480845 860789982 242312732 969657524 711043296 628082548 66009119 494349791 422059171 322268427 990385861 883258637 538318620 564324141 959329177 293260313 363885635 452587859 164934545 791108337 637527791 364772904 664914632 21676402 995809397 618785926 870233876 352354057 150855282 26705855 865944595 815242763 571868416 704401521 197350362 20880033 571489012 990685075 359820529 916415419 601294488 862105273 908873478 662327024 199197367 172083376 971428569 650961635 913370956 435317169 729293067 114115869 449985979 177219930 86192295 486420970 692271378 307116882 848593691 923894573 829608146 530103191 971993377 91981179 916737615 913341705 598262700 608252633 81462596 420730996 708426319 741580074 557241116 198475265 350273953 525420233 965524476 880485290 761475172 343909731 508341521 404587165 637655078 165185132 125306299 315249170 743451200 664278803 349832882 315068702 853448842 712782176 380602173 648309916 254821382 405182851 184615682 935266492 716500032 687708685 714303504 981768914 770590200 237124094 22529716 493367964 214501698 871260480 589652786 286513496 446360359 256923761 33645135 46752173 901522061 888201509 991636707 640561546 963454752 773166746 28123619 631157548 439626516 912861295 373706472 73907809 623118628 252819870 267722583 465320314 392808841 447075304 673698976 510602912 591957426 590773311 120504669 674995381 729238243 212918508 119984424 438096633 249762253 72698423 596499113 471316045 809935855 69333178 910167945 801339509 271076499 167533357 433760509 608982589 23283450 648864563 587397743 316396185 26177033 735076653 19810104 621417015 189415907 303897780 926202501 672801571 616646636 967075299 683948326 848580470 995938806 644088348 152943752 551862477 225074076 21538071 771246278 418106334 875315367 117619763 525321378 606350333 707089679 47689436 902683278 586815679 780820688 998149716 625282333 396733493 165816531 139932764 888693697 515149513 824936563 96598179 276768310 244049610 191468231 760189186 116619427 380966840 985375110 295814676 630112351 212432464 261889604 115710859 353060132 623409678 688920276 169879599 311914157 16234781 22444230 460874371 60486993 718601745 860501256 677931835 238899477 615564594 98456890 201685842 987318747 648947728 897718567 955981158 698965631 517904111 733013649 871361163 179815957 287150819 595879107 667130859 605833017 930681146 717917217 178557077 205114583 221638254 27716344 402297803 490738076 230115224 794235158 158011107 53266094 796482745 677671387 449234285 274246802 955930669 244297415 39049379 83723436 533744684 491297873 255667415 254349474 592386226 394259448 162519763 583523438 677772810 19270835 567198030 930382281 167393962 968623943 743547156 46317852 687876012 252637404 447074413 275436983 651316701 972448624 746623641 157869305 784819102 590277653 276588672 225709014 731097830 698218037 156746529 262192509 194887682 62983664 674295021 262804955 44281125 581047505 294527199 658809917 576499273 685199945 896041586 684836565 550252981 911425880 489297217 293376102 668415754 227994399 792939710 16173178 604607529 655858130 261315520 907181516 45214994 967095316 723233385 30739412 718501191 512575100 436375763 694150865 777746394 221127669 134746931 848513064 743821953 159063551 119900955 198104655 239887293 926894245 119113178 95734695 64213503 891127009 475214903 921458068 92563700 693023036 265463535 210044503 266858145 646836910 22634245 737304979 188933206 959310793 964831785 718206250 283583911 947899066 729449738 117955781 74100021 786712798 988804338 827707780 732340577 919355034 580323398 678228324 279893024 241178488 605354980 79181050 371912397 974287806 402997251 641186007 399336344 193740112 638920654 590576409 62392241 650876720 428083877 53239222 997698469 254601972 546186576 929880932 639639890 131487222 383073632 230332110 750744107 231957279 851898975 647098761 756726690 690873082 40873048 263907608 768453999 877991249 540843984 432257177 964133053 409198185 10776829 572916521 915895208 205229186 691541697 563614343 600545843 32571983 131737831 219412712 225732430 983569766 193130795 718741015 935628664 439100078 836516341 439182606 224034098 101720527 406213493 941317354 911696858 998510467 942198504 496881304 316106855 788540854 447145610 695182866 871918089 609124787 536675951 7117660 814537754 198586401 485233214 33626043 927101167 468886133 95123225 654900436 221484598 176864529 858588391 553399258 624752228 996899139 344881676 889908930 562224322 530860069 810002995 907320288 149108928 537230516 497825099 987674340 1002300273 508683326 599165531 419039169 505422758 775492408 946187101 108219087 660694444 885739933 109377546 410191787 726328276 852698446 630983461 726021386 533585712 804957080 854545033 851285980 125265537 394469441 228796528 273897683 929072432 809128910 441730986 775920649 248943045 707438050 148895183 14554727 887432318 785248805 860110772 527220322 689359964 300444874 582873614 828955899 600980548 536878448 354786282 869609739 717912846 699795041 764905485 597393680 864463523 978114020 816821769 454320854 736979456 1000039358 31462320 676599937 521616617 980910593 384870634 168042116 978358296 471737875 852241714 617362569 445930741 198789589 499700057 524006154 902595794 603257987 629429451 266777028 259032114 683345705 400122188 592189270 177219300 981154130 197559122 213464498 521445704 510586488 576768915 184521971 409824579 676922927 758891264 160215971 291552406 383265671 24832465 371534970 84162352 1000965612 838798250 400578475 943378662 671976969 704156401 482643556 726401516 423387833 320496017 2608534 862421997 500683418 463835917 466857696 153268105 499223808 527906233 906809065 368801892 94440930 264578035 625388983 918299194 519520642 839095654 949395412 870798802 194134873 865085859 843246789 594791587 541596127 945397770 750771220 867591120 553690788 823545069 43655850 85800447 537906487 25349874 545165527 960605237 538094182 764549620 266158505 409411522 98651142 680712902 732186323 291317511 952130284 867853588 154735332 30216221 727414876 387107108 328889332 622169146 926116040 615807788 774689464 604750427 576004986 880923837 264306880 778305107 364073206 149226137 773957186 667653605 679629086 920510974 62583355 654225973 982255458 933556339 372545632 766387767 873479949 67962772 288742257 957919275 978023697 547773748 637630305 306039030 872720788 136274220 802358533 659325170 827542056 118807801 190244680 216095791 576325151 736058928 256928282 259236685 265452135 448349506 855692547 875307916 705054844 320131711 565252281 782397678 795092536 264048302 860303383 849618192 261991980 509691649 176391902 338510557 712854448 819809305 944272814 175294036 942236215 529870864 570157390 225413125 17606800 394622999 591244361 932417066 737700919 829887428 512765388 182791710 286429730 439276027 79853384 172000128 284838904 822067722 882685406 406502801 172174582 708839621 101894860 568086959 8594649 525265307 225855308 890727214 378069172 745460196 654207342 158127259 379264946 484885352 8888031 784220799 401945579 607420946 130118078 795160912 352157732 158362196 97812425 871393316 43532577 151783282 88204402 394894387 345508127 261142166 340993529 660039868 727374842 788382380 702635448 808649444 958930189 57059546 237165516 840786042 917819009 350507946 403492143 47794786 154476296 476344581 568254874 416489867 912027473 897256977 983706596 296827566 365437137 807341548 589784482 392254460 602430733 692127207 975994028 679832453 422899295 59511247 53541945 717744821 432147426 565172491 871817896 355493907 255364594 689715864 397080687 259507194 111089738 405249906 151128936 196185531 1000329318 762893781 426874942 431049605 889862659 671688363 958504991 843518256 94721833 167917674 500890512 448819758 720937074 350748099 204318970 949808705 91457628 581503667 12892728 730944706 187977188 182858481 778259735 71216729 823607084 700899945 910848454 963949764 470180393 748981131 381487725 668740748 729256256 784124846 213166062 924722322 235661443 646750959 906613592 510609541 323170848 1001848187 617163108 169597626 825151263 256979726 530057820 446855878 13954926 445520080 335009256 597332067 527687788 792301759 237473587 161573251 677817791 379435468 38984702 542258393 552534958 968085635 385030714 656497909 754112342 545937804 408524923 914443294 988058476 700460665 551201376 349703722 730731339 69838540 785282391 608225111 762131689 890066768 433051522 219606435 745477381 313951917 472789112 780736189 598942887 758109447 568746047 826543757 663325526 89682698 694295391 131925335 595253118 65280634 1000259225 201927716 737112058 353876812 258246265 294580177 803743360 571210096 737857232 4329639 862584573 793787559 171427923 157979685 815254091 969877070 945757627 5108077 466582831 865378505 557019313 880970691 838736776 261777479 476640796 186895965 349308534 870371677 57118292 666190225 595674009 764827333 846986099 668893266 961218793 321781009 113894482 35043722 156812572 458427723 385800181 472515818 888173336 754996655 646484931 857707793 907971984 401653764 210863056 5993704 330917946 341188575 387913541 21583885 975071836 48132817 515708005 956771210 695833349 115964669 243662535 522519811 467170619 688899891 131745435 833502188 859627472 57825017 611458417 372751562 967789345 497499789 408326553 3170679 390369184 329458465 155091375 273139407 346708119 530671810 112906310 136512579 576685479 97517716 682374698 63912561 306207721 26354188 59977301 846448645 291189119 427097601 444143853 789066909 473040668 734069321 585663877 563127646 17651955 511376254 825704079 836074863 919613915 9484979 391602920 503630643 329803988 554089840 353452439 100159991 813795668 220932135 143936693 439030871 473377050 175814164 62958434 668315120 803166220 766111876 618508629 272295841 894706730 662007497 444950827 956265683 23043451 352970083 852606216 175630461 983372981 878231082 191507432 586947777 577975601 251902168 927019571 125849745 202223660 681091793 60623463 152293630 338475773 420457664 982877345 543412077 3032402 395012690 478254675 416423169 672519610 410114331 85826719 354958656 541532745 134151858 819925684 970574962 323469591 546720861 113583116 461907695 241835044 79624004 374783409 202108879 82379823 60050003 267338374 889601878 743469020 701038988 586139414 865279242 286607352 608205163 962481630 529040118 984748012 799579031 594163576 965065795 807174929 809954619 618404538 6804067 417580978 654131105 297542618 468640751 848012031 583015088 321862291 147047172 643828488 236406733 918905571 860054516 208129921 246250912 741501524 452453603 835151774 749487267 633646047 788468484 529236367 138471078 765932955 30240091 85989053 239456878 841223101 631581767 104017175 434344585 145223478 791085544 415759553 597399488 480562451 838724211 839816377 775063004 141151489 378405569 166633130 393254783 497245168 368418939 89897246 88262177 804430694 639486549 95160502 345765284 142487802 42057993 421905019 212043417 960836940 77005766 508742938 430371201 757024916 334836300 418720897 799822115 416344997 941221858 521785407 312565680 680188947 621307204 396965061 575297053 382176252 822209229 105618099 176366968 803662845 951983285 643704977 395046013 68875423 817536269 461712513 588962060 243408160 32643971 801487764 513142216 754655590 173238677 393374723 718543301 312925731 668945894 944019884 467259807 628256807 773468335 291844451 465528071 480576709 423566276 461361232 302605317 422576016 413133900 36844355 361693820 347930409 752303912 795657058 275046957 581595242 819158678 404639871 481619037 152619854 125665621 962546099 820632147 725168469 495332963 887275263 890666072 66235143 786340410 395214825 415574537 951956032 467428082 843918328 135191816 510038490 839911723 39580746 258824413 939974017 614655181 723011082 280825505 689443809 157435201 756726508 236798733 395109156 27979540 494054951 918512781 998892138 15640919 320301585 47743336 339313074 605532532 322290524 838606526 69369188 607010888 226995815 240456335 46840669 85696250 861849716 238924642 179259625 593881587 888990051 520948354 955594085 758869301 19527558 949831456 94687593 632897598 81460696 54699178 646613736 805131994 544808331 339427404 418307569 207030140 265553319 834069941 64124823 867208523 979765417 229907676 530449967 321474022 960661163 709956616 875233358 691978710 119953956 300042597 619157952 935838206 523816354 428085172 707305570 530377859 975011427 276952239 159979854 798680905 536476919 769512448 794057594 191467574 491318691 866305585 694695518 48043023 252344667 39352326 981838131 715141009 922546583 880108601 930078198 841711927 87507115 26723597 78634603 729374048 638181994 394389385 881489639 253714924 725115427 827907630 504216752 287342030 628611754 782759916 557215544 213740115 859697716 475643037 409129054 918966927 483164418 129205540 69944980 297226986 896863649 846035530 513777430 540140042 336249779 472533622 888307256 672484258 538755984 368631983 126748009 346080463 978148824 506534658 568713948 313107726 118344601 896636611 612721360 560283047 494325782 124745015 195087297 537247331 35245144 748448295 992809026 234110755 253319626 818490942 626461128 410592996 344343031 894821517 129729873 914714478 249385421 3637498 741711810 479172196 746652159 51464673 891726589 132142997 766168038 997912468 459887151 392076522 563184360 27593914 79114080 100117774 993906392 959973762 319861681 147106299 972564791 300456632 363493168 411639497 107763089 24640251 652840885 664713270 330527755 107052999 251754615 1001276700 945797284 654045482 626312724 988091771 873283363 52235557 787322692 72619362 486806319 282439475 117805759 928847782 432381406 763139842 364378572 348704761 314854543 691591165 621277543 667367249 178866655 478248033 996486428 30283237 332844489 899060316 660874317 188411219 759429940 110095407 115138676 26658209 759735292 994493998 190107754 142247239 180891561 339612680 319544689 112830404 283525159 981295664 289284826 978259619 195521691 947626353 450926329 434252395 904602053 794015707 91420831 471889296 515922023 412294468 642823396 685861023 991918922 501666945 956568563 53636250 752228329 912247240 757223982 220312407 149660905 777003523 123907227 488847897 57642461 720943693 848322165 11747524 289511369 849583895 282831993 152888736 105085910 939747246 878282034 756900168 132520668 892309685 57091752 304243400 320513004 735584278 101202993 233944972 700347782 53574444 176249633 169110760 76655272 42904605 605845679 51265091 515496468 819865022 616205447 577963073 59559620 813279378 221099796 13547633 653663761 405941359 588567655 940233291 217167567 495213748 778994967 350181351 276677511 98134121 55132580 269247064 881256334 93376877 796404434 608424981 273463940 574098853 226325859 264245473 829868554 788678497 476136724 984363135 965741051 36856489 121890516 897463509 528920887 758436748 30919897 478952973 942044684 349055930 425124100 665423580 442134321 724594369 461501641 782631827 601392980 228835619 347533847 396846402 563327235 288661824 355088018 37444687 379846054 490263156 794611933 959701494 328384211 178288060 171785355 710339202 390917311 105223115 953017714 950840356 112477056 95038286 294455412 879884002 556154684 498392822 778210082 930924750 938113583 443195297 159003552 293619299 722449341 511949990 393444862 506783236 576360788 134330054 521158743 226766744 308233483 811316889 801448504 691318122 134585704 4079799 209128941 200879181 84054205 382363813 170568257 218681806 543554818 977146114 697862102 417105123 386194520 704320165 867341095 655551710 621620552 449028975 72368730 494728846 323676041 62399892 328643353 776608813 303377316 464590008 309505968 455781152 734772689 179504781 65895261 654603281 727291332 184080798 99852551 58711134 268303116 647546990 876676466 368584704 324622588 753551001 238231900 725775746 980508868 421892318 224483298 544414679 510754162 109292198 727431774 19274175 820586734 522557100 190667037 780588766 273743030 946393456 708556213 453157426 449159292 115500788 414249770 560602229 959221793 578385188 956268692 317467750 417046563 68849289 955528137 601675462 25087435 106477293 900917499 561915536 126403632 860472039 630882024 400012135 863876326 237748287 569053510 340345588 812311806 997127257 984919098 849329924 917201887 392068904 43153920 512570298 920355271 499572971 539889014 253952550 839635516 804061010 398478674 34652920 982337340 211386983 853491076 317987952 648988474 981539920 824851687 663043099 207574643 347190111 992090407 259434709 194582740 469367386 753789762 52562007 774132143 461800032 170951218 296730666 901394012 463237833 970341592 191254012 537130190 191761116 236603389 454495328 75893902 102071824 447662111 192809570 263362903 931161788 932278633 35604790 681740216 52813049 23079952 808310984 647001521 201495111 452540582 388802962 910317544 457149099 992491400 85921268 59505859 141842237 688769896 826944973 552766886 718361025 174148677 634701845 580858953 860679230 816589740 206040150 258886993 936749742 796638832 143361922 342193395 129669832 130630600 905180639 212882500 513792745 792398933 74701170 807162363 78414823 296623041 923818336 83391842 807774785 723263726 989164827 121513702 725170989 412312201 132276440 534568684 45744541 520431689 377151510 48745240 357997990 341370107 540668233 293363411 805753247 775628230 165028368 206990959 398342947 415368507 760946136 958029882 404284974 376382201 882459523 311057347 541421073 117300616 937513879 352980574 81387462 592781401 865451701 361522190 792633015 446029190 949816538 802741874 766021655 312257015 54319759 586522584 840571893 4424236 604270490 121249949 269468984 435684995 223738393 629538644 112799856 25958948 81490463 934092509 694814375 378394659 463257698 229274184 300900630 915772340 516494279 529054141 791830319 842445142 164072699 575688675 771682245 400517542 964603431 625814295 389605123 100846322 854764790 484291549 59912040 583338454 230403199 273677502 947306839 207993995 438674712 26887568 571100569 912869577 952496487 425851279 244245884 983704110 670658112 655522896 957808007 930934919 523333445 391754328 69292547 569165287 333659092 391733692 227136635 314144781 235651018 77452980 370520844 471871004 31752284 704297512 266038028 741326539 34844498 375235958 505017353 219924731 537768319 850817504 449566620 508889136 251901289 606153485 256342146 647084797 901634384 932964820 677622360 722875207 363038202 869940942 676162123 914168883 174690920 686160205 407769976 516415279 715283017 198261717 851789877 375353306 524138666 623628308 932391096 856588720 763288216 944265891 487530489 498515891 82034207 963839658 124242083 579634200 951662766 484408800 939498290 64452960 937350838 883739509 946061447 858050673 459574893 922895520 706349520 528148964 736635588 317197433 150144298 152662635 747264334 726224874 290004544 814122697 986976231 183122722 776306954 467531409 613183206 611209361 375764871 433696150 511465867 420041056 19221438 876413969 580718257 974753233 872122635 587160508 443916474 124527217 70687148 856087177 865949716 922644534 348707378 819361348 531971222 902173983 285181268 93319609 902545955 654873113 231341779 719114347 344634724 524118144 560505278 95906786 63891813 360576728 988793723 554106556 824934757 662878511 776384924 20745432 394038127 50493396 699177359 148209213 660712674 995951685 927505731 12267338 130903892 846696327 368570150 263182448 706401710 614572467 486385271 573977428 577861252 316150861 710226841 800095186 13207766 49050034 143969557 829829507 440189107 241760970 707011212 1001003680 658249016 483842501 440767311 482439742 220136886 938140828 567321483 251673103 542793480 818609127 965367442 861986920 52613544 201993932 675152944 889371164 646077902 502027034 456232819 34524482 437935410 484947511 933358696 176542623 762857222 449706494 369865802 382934287 925093165 209273913 491233919 955275084 412854197 974509395 366119873 575775173 974736599 638158002 96589461 388178716 890865479 877451948 547509994 241573134 558653143 738249821 830106890 411530163 221364493 911360213 569478657 819971259 816802708 56047693 951765991 431341685 55312946 658749331 527481662 292665456 702322832 576505122 726001263 364688419 465671141 845147621 287912556 184904305 594922386 931304927 850497743 725752918 172465347 653167878 597876224 546441115 339764638 949459105 906750716 448526290 526249890 839295934 524436558 551522006 439487984 14230418 898121144 710910342 926634607 475074954 213449875 320851612 219949517 71440409 437813748 8938765 1001950681 706388975 606206149 259550122 649743742 61894738 540908043 581118188 821484547 662054308 954334618 957411949 101328323 45774881 150592740 350912814 262817990 301403224 275081174 153948300 365395405 944864022 781015987 652701618 434211286 355604706 831019643 805306515 898367787 181879043 419938498 481985408 908533036 247167360 166798463 338864897 881844526 727880327 952467632 339410808 379984996 459469258 385522164 268679017 226606110 806621672 30501070 67315728 83764340 315965377 855329784 608671994 450365255 33700794 748232917 606550034 894402050 340412224 274534983 177650805 971640863 947807302 913154220 77525548 125266700 730743237 996069309 459854574 938082195 123973969 538107671 899294444 626527757 244574328 435861649 468286651 765170236 334481676 561628534 845069555 432940924 981608755 460031503 252367325 340311860 765126402 528908271 401371726 621157541 13830018 193241488 971875499 806047905 465923048 533177998 974685119 763349127 705264651 868975449 762015939 269745897 548434169 243068409 609474141 666486037 154699499 125271918 962094998 736905660 599835717 73087580 35714205 375024844 946444021 148720145 571801143 524191188 22687101 208021204 936046009 393025233 440826858 62349198 705296729 130678964 512696089 684382726 337396409 446369696 614207416 623895912 918904336 784011596 246369452 643593934 30960383 586975481 577042043 770396516 273566598 411867311 837788864 840976487 250967561 795399729 984783366 324199698 213528701 496639693 862018666 858011757 859419476 331108987 401093856 859529648 609349239 940567549 464602879 654977784 349870045 361473250 271164454 491843391 512323770 1001802054 209223753 497898827 118870156 571828226 303730211 584999165 317053795 961746710 739727863 576658660 317739585 882096132 212571900 241500305 428775528 369093754 420181665 625184550 417611035 896031785 189222843 587294079 855998610 11756514 899260356 422408199 641916758 196146771 278500909 426267632 378811415 900182903 202496084 337546666 1662127 275420064 223761615 64127702 1000306780 651735359 981879800 464116724 366013333 370311206 168266028 98890310 305309247 431379355 514409943 469668931 698322980 91892791 145369367 226970505 1000850898 806836307 637736633 484874666 129123434 283254954 471417922 923910930 450564445 401699287 209546127 62001269 393317891 854723637 329907321 829339340 848841484 176077213 317987309 527442428 123509780 721974630 115082182 332371750 359104677 725499976 398263737 62697270 205493054 17215582 789259546 168820330 533091785 693347831 454991772 606553033 257370201 17342995 182068381 805958706 394320972 353992147 105285323 40078206 67961525 802815105 343730056 263219218 602052124 45255298 405624782 375082302 204239905 757109920 984028779 192435629 951260412 806591705 127219415 691931982 129349052 205008597 312645687 94210960 659331886 44242515 417496445 358320183 737178340 738937307 537317623 413661352 499240508 112080035 145969602 388301873 377944782 343061916 24692811 391793235 486792994 879754169 341797145 871048579 92885107 414936456 108863457 393828521 928506908 541791666 325445630 930047856 47610620 251819104 393504443 562321592 145010926 760855964 313625093 902250517 598682959 544037371 70431939 773181944 634587337 162428808 24507690 577124403 409081939 614078856 844429926 546808023 804743837 353344172 973803203 873656297 251734365 962830779 345540808 409388849 215471506 366509064 453994145 821715735 738158878 994882477 730972101 602554896 399271547 974585313 338839767 345404885 305204069 528984337 73575673 367990591 979340842 466627630 521089553 953578707 99075029 299419999 206309376 949977001 964012100 571671355 334005589 130016848 341981099 666102876 6236059 93815502 772261654 405306732 177632015 815165741 78367005 674372086 180567354 303017158 74539567 792660443 361945524 631459277 567133466 210209179 727265634 304608651 997969434 684118849 985457683 510687438 429539933 598848209 325027344 647617054 138373074 231505243 658455130 672132374 978833795 843933015 760566880 84762903 526161693 124940134 291067543 926751703 592852612 737812202 858684917 484004650 524659973 331001335 712097201 925953016 465615689 276288626 978830583 602608653 296471155 897786624 380731077 109737679 789466901 765345630 60098996 671571312 836702800 305704738 536509063 413768642 60726253 726945001 658669911 505533669 83261117 975459510 491392755 977118300 456895758 615473190 817717281 262493290 665332337 772466072 322888375 862428966 724255698 943175940 446359227 737628513 444021006 717928333 926846003 78863348 391180428 726385873 497976220 463536629 893619211 30752195 764865051 692659563 265318535 626282786 106269591 222837422 699716493 221078962 357405161 752308622 256043678 140948759 447342194 663677644 687340976 248508022 224816080 550435309 195441528 530215888 191732927 12306096 16513684 198535929 707072885 90789876 121628134 923595335 130346254 671832119 758724695 299138025 850175326 886918422 802470067 622742460 822893406 237840661 634884144 181437659 240408319 367362046 303609115 795291747 173049799 633082306 456840693 674914759 199090538 133496517 679371613 692554435 27611766 133296708 225021542 996682195 642976057 468215480 514167179 354454599 652890865 244927636 85093011 154129076 845764146 349482448 427735296 275171377 603792291 461874026 985997630 797735605 341254200 168022700 626881167 251062274 575536070 796551932 211932219 843542023 665379228 371713960 470516950 453859425 336031558 78287135 202088413 321005261 383809297 963804582 701627549 1000220478 171371128 139721771 440060103 705370239 449873695 205443884 420464812 364065486 386311538 565019594 645163481 321548390 262249343 153318944 167638 379887584 658580798 956723152 349103963 380423073 390894896 906805059 915384262 110673378 741096893 585928666 176945094 99640335 813213529 413547809 593139717 529413526 920619293 703058952 646890271 143939364 621482844 687135363 420881430 242004310 707951332 785480098 275609282 307897885 364730300 918606350 879131174 787611759 58222092 499718385 386980024 599649300 926053557 982009609 648971397 511540 461641752 119228331 211520783 342397752 377691162 211539562 416761641 12007608 890065490 423287081 627930889 556199104 117618178 246321931 16743340 18918189 572589150 665121709 346450856 892686865 461489632 912613827 759328452 227146813 984514586 558833470 960368687 364113037 505535474 576453217 687405680 964946450 407667547 309298542 8439359 62301064 7657106 897319816 141502128 535502105 453898718 820064356 261918512 234261058 489513000 851679145 562129676 833415887 837089998 454021589 517098858 74415171 473915666 972889587 747544937 292846181 655502123 171729716 555340978 142813234 975269472 487940665 712650079 867209817 646388149 549658272 410736162 474114134 835512688 180440697 814939425 564242944 788452786 482176189 707365444 962500974 332089084 662348485 113753596 161451228 737539713 74564469 271029064 13530409 223105523 279423404 236803989 355235946 908152206 710781480 593366286 32903071 970594915 39954497 980439524 747876593 282997757 107607980 199966210 503456251 422117934 144268017 163452919 824642042 799221498 80678313 407047401 817613731 572949319 333995436 943589421 356907295 794493076 545546542 931572458 481782660 620042481 515374467 371556483 667300989 387349312 356730593 678835146 666150188 105845017 382479780 29006504 356157794 312565755 553159811 386442319 283818765 427730803 702789884 140867020 276835895 586149992 158163453 362175867 967891423 357478644 120095780 198493214 937808724 724930606 317708248 267982009 577659985 634683395 551110006 473241161 324332090 497464582 418089079 728902987 726024804 949350772 503220224 524003137 850383178 953978600 380987325 817993944 602747404 745640081 351671757 633814822 1374685 773450351 514183919 613186058 939969726 450851321 905692807 171913417 818913763 664204382 158686389 483051600 636205038 441440258 840634999 38635520 589173785 582434810 771632237 42031888 648971420 419639935 325776156 92082423 578043877 581991342 20746690 141528833 782853771 534473864 861072776 637453933 877846571 341707635 664991907 890365999 22418957 219836402 929914748 38824968 800544693 870809087 597006046 15164224 744177604 247046400 417462381 983307228 88053921 126972813 723455093 368561232 576913665 986616161 854814822 169235987 803688680 200022983 954179008 30255892 543906371 697711752 972693073 856350089 829785339 981019150 600411384 407344002 111291420 742115757 594937168 904458478 792119022 699419041 749240052 231149897 1001849410 235206335 838805087 776673056 261003587 270327282 720184510 198711287 456181386 641748946 118829013 788368522 151795565 298580434 817685798 616495078 655583750 434205496 396399412 541747675 465965292 232154100 368243946 145802635 719971150 477967236 6446243 925672796 689270216 491687302 447725638 364175087 866192414 93901433 736238739 679593558 221310708 644589751 691809801 684919933 301111074 805004757 790735792 730142412 622595606 61947748 643960504 957217019 896473179 301779919 463001638 235142460 960536551 915223764 55740469 989330746 54848279 885924779 468141550 624085568 391058744 265407955 120234770 137999045 513686131 125400565 258555479 947537311 631705566 716145904 641451619 435871766 996837820 96437373 279656086 513290530 725734974 50304663 380398472 743497342 281204092 225062316 164430700 842494265 772291468 139863518 48995559 927157699 524792669 841331447 409556294 588636632 87001064 910305989 384063704 554460184 746825792 468160027 561575512 117590362 915800388 764421028 385192748 257387586 532397284 861410577 116917329 507969512 207016575 189680014 86842721 361710091 478248149 243454798 325624698 337275406 669941974 985136582 177895944 227564839 982253095 589221426 979612355 561020908 365482825 193190305 285966613 723823503 594315543 268903033 706671749 475073881 164743130 811643787 295405521 852829322 627325826 940682737 100749144 388951820 594112288 678675070 785811392 409066539 932581522 75538952 314895959 23493816 369972010 983573432 319803541 321593750 938197876 205523314 827616693 568546476 306348427 784949745 647459341 225107406 477200005 758374630 321901112 421811158 700361487 673420497 667034860 565398494 570209423 379834619 31166814 261794835 99917372 257359082 326641454 145932175 110951658 764242728 892238679 958846386 837012157 709992191 399631646 770059023 10155227 419493667 99215059 126804628 389163005 211072533 994400668 423930817 684244334 317071736 873244107 800043400 27824809 29882723 635479396 516914544 452961692 434069564 688517399 827094139 904779759 552491552 501090042 707290407 326705204 91848217 4579748 30207278 574276053 332483951 758507368 760085937 758622107 840447567 459038369 399215410 879325395 984868662 841478713 983258423 145968370 502083332 599011557 915008922 978831401 979429874 662284801 884140700 45731781 240227214 168614554 519885726 61330069 830861547 847040915 485769720 450327531 206670822 513587732 650261521 630841980 503070792 994670600 914740305 51393937 190070754 883652717 362593633 961535318 68867503 213954185 103377355 868524595 938042552 532813968 395367360 691573863 270968442 419504739 399080549 191282692 568853894 469519300 438344266 492399550 806795467 110745971 553111991 987669168 861892627 295524811 237248325 121021919 211674616 966300934 250064510 981265820 264767755 378414419 704697186 347155002 283270799 663816163 256414813 544088130 339004943 126214214 552777537 174733081 471662981 722440619 660897691 854790828 454268549 787732029 229448865 360438564 44571951 216073745 194436838 225991667 525047442 819942622 215922171 47728535 426183243 144875420 514926495 718282181 55952402 966892070 984849346 912003050 732787296 506027531 867760378 683034865 534976556 901202880 769454188 357713070 553554788 161827498 99313470 361218717 596391632 921599497 909230428 434891493 909921996 507430100 218059929 327167267 34216917 521682385 99892203 65313979 341533216 387600202 118843995 126923187 343754769 89976119 794551176 86479530 672429836 861310086 814012872 246388625 158496585 151202624 682371460 786290334 116522551 145032159 840338725 31554577 872695918 265490755 932289860 109187056 715136641 407163991 894236621 245728073 268746592 762058908 879784360 660042991 436863328 911248189 362162491 14427374 89761305 597405904 530501860 802871320 698351174 873022985 29584041 601231319 32930607 650145855 448661810 42880331 281144928 692339455 560285612 918911426 258245060 193898341 11112152 468450985 211799311 603624298 309393165 489425886 625033406 760694188 807709550 958179339 910194840 623270539 762726494 249033528 252085473 686695962 73374790 354156433 719266879 678020972 514633796 800387001 915084310 278358249 473376858 627039278 518753884 310064162 553683490 127275419 33407465 725958841 671136545 553722760 196134727 111574004 665317674 702413536 677615793 39226635 933099378 496687949 358907100 207784858 499186900 865034715 403294968 234984327 250141152 31659101 256337954 308342330 374027988 195782628 261892444 464471376 392759697 388960362 777910869 817647875 68013504 599085080 142051723 115700404 173120523 539713919 373041250 750495680 543955016 452741882 199255168 40177779 434102840 368052219 857730021 728131218 297658007 244417546 55803074 592225601 794054297 166550844 948510285 580513548 26764235 529702116 833607977 20386316 52379322 293745147 425681453 238157239 834617631 396780156 232923028 987145850 762323719 65425456 83861546 549871760 273714500 528819509 458717411 187685406 20503733 819226402 841306811 402394337 660720346 618236380 44026840 406849301 598145677 764641918 493766319 549759153 648120497 134251419 972993496 778447959 925574254 748061850 514459302 734518710 368051359 52630674 224008515 208415500 860431821 618340457 529662867 891353537 835213172 413817824 658490865 667755972 836671354 892344958 663230478 489554866 698739182 371098116 584945532 460530990 677472559 16568380 445747395 285928214 542353930 579684326 671837403 59933002 454311762 561064417 496989179 307022825 56684524 460966333 45212139 191920614 659169156 694865094 738881668 366655509 802772161 125679937 668828161 863620865 595465014 125352133 330562659 247071907 98375896 660609966 744081435 997923679 223661921 844509039 680854616 167700769 592660693 927485947 762646308 658861032 252751590 247070239 388239986 40088283 629226507 595938823 897163843 895990546 849874453 230809814 717036449 632917511 430921791 13702707 181262187 347536784 868181221 712891473 787494623 787046162 265058725 419778498 207722031 839915144 109705796 948272302 990720711 827633562 234721738 636868531 257200322 134679372 280775890 27328131 361140350 707567120 828471983 50734893 453577569 128611021 535707007 335723939 588097671 656574335 562489253 497695170 689917665 299756775 154797492 828418826 882266895 609494731 807166664 556393935 80545654 814964142 315746195 989858236 347239297 760761277 433503471 384439485 21796321 295774767 338287427 107907557 245949490 937629657 787463428 277828555 145324449 898119927 475268497 694377598 856949283 767000443 61761655 690927772 486322080 400500220 75115447 797126151 503072107 253935588 121189381 287254856 663565163 376560858 361214358 83689226 317135020 728125124 225316124 182805695 735922373 764700598 860487039 493252649 867191880 442060365 559567457 256311632 253569553 966144057 900284562 70191566 663455275 737740823 583928365 965982522 603971401 62550684 753224590 726919126 625264896 482632198 100286434 760873515 337233428 478171002 476518312 673333027 263774881 87707363 174520602 61716983 308615773 433255212 612304629 965597534 359244529 869114531 425059589 843132035 278326238 9664744 91946499 183436817 559498650 440073855 503005437 673833710 868021194 995161768 868872705 822643052 572209542 209963663 731068581 182090504 205873449 353019802 898443247 377272705 217726612 864982620 755438295 859918051 861220813 69901353 363116942 346917984 139561794 212672999 355141513 1002095246 118597058 984982662 85995257 765178004 357798324 711409887 331651404 514737465 287034344 316117555 170958462 984631549 659201907 172512354 831851870 417709913 90661973 194089032 823759274 442725919 852699742 260227790 865417593 38731742 992133679 132787650 895312151 243955235 318581531 50719540 41614680 81323088 652237534 120443643 341511066 496734295 258539646 784942998 501775943 835723625 427873708 148957075 815722392 511274394 818212343 901033613 360831936 856049480 141075543 915187673 958204387 963812807 898288672 923716113 431772692 608276287 90628050 113024204 305430838 700907064 315010705 805321012 513170942 783392629 964828312 36450127 1769429 140706158 383887174 995077900 103277255 283856666 163588732 295829710 722121320 234472753 33352917 649563038 724892904 240208232 780428379 986193568 362354933 106923789 738413174 40314509 953762085 614217558 980943040 635804187 54651254 264315448 231915935 469923276 997460688 236126158 818641009 758017431 445158851 955680646 932767288 273975416 577004692 442351645 919424364 837894336 33183796 290885277 361794749 193336654 313723045 350218321 92348817 122022726 534455914 486801357 550549821 303664034 881082359 316583777 553674918 224670052 110940736 920509141 70239692 890969935 998478853 126040038 785637655 44565235 819904116 469177478 784305679 780950444 853099783 10075534 109730030 216056373 390154187 303824446 137067167 554276165 790512957 644869149 645971270 467503926 533395370 228535953 695133505 510603178 485725615 787796222 322285015 331556057 296791595 129692 318763501 588787937 113400178 780934070 1167947 358499555 628168708 156442185 327728346 789255510 527046403 834430400 555302006 254469026 218782049 645582388 740035851 498202543 295732455 198730127 587248746 313623744 582646990 197694117 105239187 210551755 441536136 576590515 724195445 513232984 562891745 582976051 827484548 195154099 228897870 764506703 208795952 813150735 931459352 772481218 356005976 380806753 251764150 621553785 658490236 338774030 949267164 779202009 337838474 660705004 369672956 84671401 176415527 992406215 60754469 975140546 602613940 136014203 192734882 252069042 898129848 571621172 633685604 362969580 721188578 779947581 824871371 802136112 643739500 487440683 339020707 921062748 595516699 910730248 552954195 747655258 423432443 992838777 439694580 920847797 538152714 385453701 818282162 313776049 690158019 708280631 50260493 949527121 886451929 824562026 427618036 8543627 645333080 254639480 814820601 306197612 90640402 841141950 772385095 119018136 856519586 283879504 972884820 678100400 867469568 810794614 845135903 169500252 560578356 704908779 193809495 28597917 847259181 607776968 151434516 165725665 427198533 621545795 636994421 190239890 294985566 34601685 355803085 266203523 581439284 160002654 772334872 782294456 234788714 923264668 94770998 482431528 674963152 238512596 576374898 350651797 188026790 425702547 74855711 7086843 533879383 135741891 765106748 543118680 453527830 472838934 528660615 373571345 182304806 38510331 162065626 933157710 623990085 581412135 620204722 170144443 251053651 187328715 683850372 504880359 242643349 393657684 35638877 575149183 954994064 656748635 99627561 530677242 566007203 684016534 820442937 883132471 298242559 858501930 372176778 226027299 614701845 115299169 227159188 93656804 300929211 644469179 137228009 758702820 631667988 152694625 758863010 964665726 598071961 186124570 520628934 459582158 960934406 201562218 576672839 239388590 91260387 753872126 703296603 81690581 872251211 358504821 41528993 501165898 734510911 635661432 867625158 618493998 328112936 284295095 656716463 610468164 243504867 586777220 185371421 584015548 742820123 552837188 903526469 301402330 415235431 256430028 686350114 835527490 539571703 843241665 337172315 912311670 181113627 170279038 143945543 871912201 182605038 140969189 775614164 441890678 377884497 399451115 508946521 573583338 226323172 198559109 99414642 734466120 430297954 538607527 945018578 516689116 103687321 769927166 175882650 299253823 262368193 1002188668 957708593 752868945 781673484 198727756 574701437 458472271 906069155 314698247 920652752 885095627 595230766 521395750 496258169 236842838 225835401 837387676 678991298 669335096 409476831 402537954 204735539 630728346 712492528 322327022 800416907 354024724 412334341 968128227 870356986 67871338 675484902 57591073 563807115 405393425 272989458 341361397 344404807 364835607 744242802 793105074 56619311 79109785 480976911 320715330 643037213 78236836 56598802 714289386 428496896 735527649 51622983 450551779 288905155 692555482 922091506 624454972 498091007 982640348 476758499 121401802 555125365 231275818 369033117 66447846 367671693 103366426 809464 728634670 419183889 757008095 381599115 741210668 14629996 95721556 622595893 399461650 325009958 662773033 234598674 541173761 218701517 567344850 43216225 674384669 260511769 287410601 127396159 375601494 788402766 568365254 739937527 86963047 235152330 846907617 920443571 570289509 699958824 40003726 625364607 682728173 294361185 580742933 154108634 942759497 105865277 662835914 414232972 196441261 614333518 125592904 931853045 139875147 869554021 719014735 468930813 613450552 962033148 632735647 411734657 10769259 684696090 342368077 595634799 270671365 528694901 934956120 883265829 366815797 886168720 41451157 654478603 487738439 162066552 847363295 145511700 66557058 767888252 528329223 278715131 749516189 811862358 88190155 359594211 711047080 604694303 66112035 866828868 412645300 210327500 822725433 924759180 628630885 596023330 361248788 868927790 26803151 401015790 484257831 103045535 770179219 173017348 446371643 616877831 171189034 978013833 89927704 712900637 24249555 520981226 190639304 129647026 580496194 696118137 930259628 897558095 23007631 375459455 155294082 266023784 945160791 542494138 977950141 662943709 420093954 45765830 276428159 731628870 597419790 433220030 569703648 416374280 511093896 278592351 5427255 701828769 379963947 900293065 332345210 828142716 24697481 388170832 684051540 198737122 564336830 669136004 237411624 662334507 47353189 55681089 112184381 563417234 363784153 198697667 363934088 275054766 23373337 173643764 665350312 687570080 526891536 766198783 813791957 382492119 522580173 685312098 355438633 723095050 711869467 103348837 473786766 490645046 990637485 96747370 1000062306 490759222 541457403 287103402 855039682 125551970 170733124 538564050 900534523 540009967 561933463 824973082 750715930 93670142 225801112 854369897 474027490 798757624 892324686 606633945 49447177 887633578 250686245 584498072 633092359 62492959 568400621 267169783 250362015 444997015 534633092 33079574 598286598 804930290 168044070 632961690 339266560 750220158 29765382 988698290 352143948 7938435 579615887 954650146 90552757 510310229 689751520 872367858 843843999 69794756 606058072 794002934 263378991 926135193 59565759 703787999 364537250 38615505 1000551986 990116205 263873452 791351527 735222167 249741992 545369801 461168323 401339246 330341472 570639855 297397568 805864043 168405402 190666439 822059493 110949970 184639751 614255612 68745993 887766222 389592841 540897181 1000183470 24941269 271534310 906822092 803786167 109869465 641681667 621880330 404289155 837705239 881530264 9560537 669928917 986773314 530116014 325409352 510176011 49293235 863922168 807468038 971337513 480856999 560871386 795541956 773912935 641717617 465562918 315890538 346022733 426448311 484766589 431393061 613907300 534161108 295214553 45296693 324414110 873877247 139013641 193457290 395141040 658086456 124238150 873475713 674965185 542354386 293483518 565237330 716188647 814329178 558888559 211712842 159429588 105009835 218403713 338356298 169831936 141337596 922264579 121556443 305654689 583658107 369382039 293728753 956583526 367526077 25455980 797447239 11168256 785654546 596399051 122730260 989718077 760655821 944475521 703714102 93152893 585121805 995165014 602230710 900182953 170594729 278307362 928318288 403765960 709749073 951565987 253546790 457607744 725924485 437898743 322339509 358349810 806332889 933119437 598959003 515758130 731815963 480327207 512254528 873729164 272153719 547093436 960796990 129688129 718986788 402085847 796018858 76722111 254891394 363637646 425733306 155202403 949474801 164967737 833677429 829283931 403880015 745439839 362927456 422273287 93442772 592748184 175036565 57198218 717292479 343813610 583600032 401887865 404939511 866840610 751269593 503331730 568641256 811859319 874561629 510030328 379440617 894395135 820033800 6099286 808952921 855753464 551625709 473321922 337135915 585845714 191657892 302932294 125983778 920400140 683105103 973057973 949669065 351507101 941550334 976071727 841528126 243856406 932703899 884780639 317075847 392170375 794947705 900015757 320188131 143898037 776216966 256636417 756186425 892653524 900260711 849019865 784340431 405800480 696908469 367821750 782071008 525489631 894531874 835164772 789786397 146046724 729610025 659452380 540941543 371902901 239758214 70061522 337136156 948667122 304000652 489496821 983014732 671055908 595247770 148723534 420321251 501657354 995154847 205575331 879410542 170696533 164520856 699645019 24139672 647465365 646549621 742584313 276252549 348330914 155994869 433486233 243855955 794741012 943451558 362410967 382184368 136893440 549429368 167235195 765463147 807247096 963778782 863051982 635881479 132853583 187200381 544255724 658187367 22385743 28095842 779815583 291744372 93269927 706197895 803195517 19808461 711818757 349236673 968829017 400184954 833993163 177405889 992143355 284800464 343561882 9637461 208978107 344523118 507143512 476677801 248553818 733255659 926309858 4700671 540535559 339954417 183016635 968548269 604135321 554727781 564311309 110267170 90094041 355996110 932280578 216410278 79985212 576104710 938260752 721036937 174022399 624622483 810247899 93941167 385308556 498575656 806090233 650824159 148844971 628016525 368912866 466552958 882850017 394856002 795293423 128163176 993611055 288074395 532174704 648883247 92341349 562303713 367848971 462828264 976757997 549468775 43592449 139589564 229881972 683490566 467266452 651595009 126955304 560827404 192175564 263528253 59178357 587923459 92762236 285660892 878412374 745929877 173952052 188900460 911826435 684510165 606729336 355880016 482248553 286037668 410606612 666661231 980953953 235411521 817545184 388931675 408114501 714210366 374698640 174269782 3165655 469235578 964465303 620668666 917695079 55119527 665111837 10304380 381603364 61093544 749381471 217956187 958556744 465293384 9762472 976359978 891904665 161206516 192284875 132192749 211248007 136331502 688312200 930460843 826460464 641323469 562862746 580226614 120578028 834410592 137280394 663218773 745429410 539990442 442525928 347408498 313223291 280982085 771699381 487779170 742481168 845126983 408107408 566198762 740513254 7932714 704432928 703901304 310809762 111096741 690048320 958193487 939214503 100519728 101099407 83433040 635207053 779893413 900590273 809210233 930450391 12517866 515090040 327824428 242416540 358251010 871892828 712301103 754660727 648613724 999922045 587244886 964941756 658519975 714132163 641975572 180784057 334657537 698328031 238412185 745102241 173902287 429511624 63103899 144413757 374326635 189813049 823433423 793610263 308511976 926139826 316136168 934207089 205087634 354099359 268291995 124553396 971898567 738435761 253861605 48082543 536380866 929112350 439129164 356316345 879549870 442273224 65042832 68684635 108076189 574498750 438151140 18856088 162455965 348290778 26343793 530642011 560313530 924921194 342936941 745579498 277544857 530041813 440294854 806129424 244527167 611177198 253393881 805248992 771375668 989723821 664308172 587140046 676108139 210740158 221785763 935732521 939611404 348918202 999927789 349739965 73810763 917455771 450488692 781459953 845064891 725258533 295959577 179034506 970334947 919251448 882957366 22125841 536896414 859421999 172589786 240887277 125341420 145535346 237795858 296819291 656860807 868737 754375276 487100324 37869905 975804037 52103118 190493604 775713402 836933566 730567620 188170918 32939157 984509793 237504107 419242709 958260947 709534029 911826345 924653470 430461092 932562050 409279518 86052558 741813788 950541330 185995310 138736916 345022192 288500167 520605499 958669954 133353264 524213451 106814464 257873501 830275537 498081876 241789493 781025160 504856551 872200487 650530980 532732899 381043779 584700367 613277944 802568758 55333001 515682620 270413404 513025274 991484955 206948799 362308615 879759764 642804467 567388764 933744947 335195294 303385156 579367648 415260641 20842248 567048328 155916083 713165643 664081879 285307716 73005207 476638962 626899742 279475570 472260876 227289858 270007426 54564972 529011455 558345664 344542099 403156160 88790055 475106976 655786272 516988428 783680399 205778738 653078816 310315635 655068389 739915437 924352774 372022813 879989303 310074242 365896665 228333073 201767307 38574344 589461799 9590998 774030050 46668497 2353512 855804627 781185118 736546973 87680548 566276822 790516555 331107593 434748450 991503299 615215022 563120288 699260389 750717412 786806373 92129703 152350409 391805084 216171473 343873111 729406012 801592693 802826082 931849290 217528841 567816539 859489300 145871211 506591363 794668108 813828792 247241941 426980284 348548254 201469600 273370296 48817977 981978097 270349481 179439931 674741213 984099077 935399015 186014146 595769576 306311948 878376721 700025524 967497693 409331864 620196403 122637151 965865854 568606598 38771165 625568450 120121483 392823023 372091152 876174827 425827386 112623624 32475349 491922337 897252076 951047037 725403995 575866214 77386397 321954423 202942993 252737107 854324939 880473568 328058841 884568670 710488520 753333518 358983609 641838010 825084314 124844941 687163418 651273408 373807301 295785930 36142480 487383885 992598667 55992828 123412970 840858935 520548578 277960980 319919937 527981050 43038434 56429525 671356062 941372715 795401210 440991560 143785534 481761396 898137623 734214865 160927552 353404385 398094376 882116311 503619630 576272123 979596463 309449151 115432908 414054679 549087388 525116569 458171383 516697488 540529487 466723906 610292429 373073398 93893344 58808975 905536434 442086437 829810181 511272837 828704929 886686199 528186659 896738907 93988481 971035368 643099774 483861346 922330644 529613244 282470783 675957597 637014381 374506434 469826009 443818774 376255132 658511015 902369149 860152988 919248030 627605683 970325902 848493281 570869035 173137500 814011561 309973340 472008318 459855494 886307717 308265360 939867913 940130528 160390847 978379253 460471048 324510989 744595491 130562893 844917773 963287792 813783699 660786875 504831204 928286481 398037817 877303508 590408897 556142654 258619555 390436536 665391844 803058155 296389883 444606564 734694524 119286815 245645797 147352112 890140625 100408663 275150516 332843867 532677120 317507382 75553172 607911563 732591421 351271676 644542217 908628159 440492042 995009170 162535844 202465231 474673798 650281124 781676036 469016088 399236727 850892033 441634991 555155550 908780629 337862713 44312650 25461197 28352862 82809990 932559483 651860167 533112013 901536988 307954346 331107530 999029585 923587258 690451626 665977585 263777399 279179195 998142804 940155033 405023033 397666763 125769203 552117103 765037965 276382030 707774731 110420532 165646440 834535935 683997375 365004262 152777467 307196734 735721516 114424629 804052227 980063921 280904326 289961115 260726369 585476519 308099600 693126910 120863999 647560528 729112842 471563125 174469371 955770613 671302203 860955219 862246975 878790626 84699054 702115002 550794286 413350574 468700055 836605982 366505880 613772970 290931674 843122112 696113411 586099601 578207954 306457981 176778206 329916919 384818709 359939664 449294514 834316482 104790579 512728978 369307608 388952499 741437752 793203738 560702938 679793707 715825077 831879672 664630367 221715499 282093415 25630862 1002049741 908738252 267327946 116993429 138751489 654678407 13542258 751435597 577192138 715425882 21810717 43938468 97189701 195849113 876254657 254214858 830382873 959553478 770339554 515072635 67287598 195041944 698674327 398439406 331854789 917355442 357206412 242982798 796569626 676939098 512107057 700261654 484420100 896662666 212992164 777974386 399217430 397973295 835173789 276379869 748806408 717766865 353552938 132794653 668439787 468022226 791485769 883792769 665050019 723637617 535325960 267946751 35820941 763203844 548917490 34438279 18607993 685349062 531062239 180557724 873940101 313899768 115456752 384285495 168829271 72228393 80630596 487648114 541330791 53889682 338704051 386040993 418028589 505151176 124793106 468718687 988125280 749519943 494878683 1530145 250509325 362800768 600896505 524743163 57411221 717320853 185473410 469090173 572146286 524471551 699794650 145184390 317482811 556937844 218420108 118789397 187342190 702189664 320430490 753054762 658648826 363477923 131016559 183207234 1001791065 898922149 744488417 840084335 516459897 550518206 567708923 923660662 319038533 379525700 799453542 266666961 685270384 182690405 211984347 887956068 247427677 997096815 776544659 862163682 343530655 172800576 981433280 337092806 2707872 110286267 748373724 688704464 75505971 245947423 195761279 174537778 353238512 156073312 904674785 911415030 820458163 300916015 289676688 299144411 721310370 597503635 719239829 622824858 545828923 832565174 381163508 297300540 178149728 612475081 566171823 423853852 119883736 226068706 186830976 239240704 818183271 744321630 324475038 803132718 274510629 566854873 826861676 783037028 457952929 199058525 736350483 574006815 821484142 160870476 367651185 25931462 576212835 455813709 298428316 607453094 917967377 111066633 133571123 658800402 301902232 866090176 550910529 432290270 752355786 744295431 405000479 167182392 789889420 932824464 81040450 838725829 953828906 538145920 971648369 609230448 784303245 489913457 342594087 753570404 828703131 731426032 663052801 967578525 415178453 420982230 396211797 963551934 150675399 86482225 855033271 685476549 354763091 637678778 51701429 778512023 295657793 91349527 98161701 633487156 397210895 571891361 213528232 553774057 172476724 386601446 822026790 403047222 742215603 801706949 359020972 904570221 83686449 464374453 394279227 71477727 464217221 392973266 353873367 106451241 408925588 923674911 52964689 972969464 460869420 849277495 353638646 645674866 609288014 575112926 839319825 207235164 821662277 188066937 872895857 138594241 818932103 755930946 30950136 308380120 899195471 278722824 586176470 161307506 277451451 828436342 831314639 90690 256591333 537700344 851879334 962252443 779437375 933854573 913049130 918268711 825626695 81888993 682472473 7999299 476997243 351357466 341807576 859823500 820997927 501804473 74754420 887681097 641382167 334291501 312067982 794645977 375399636 550472152 484562206 429920703 627961424 233941295 782163387 922487436 628348691 954884125 816780614 436324156 473357659 268510886 743306201 959519998 705613043 644598898 611113865 67040836 431336236 324403388 953006375 691345076 713061084 405416979 202436048 527147204 636016721 132045520 404010940 654237548 364636081 100553018 305519572 939533833 476947059 673532262 598610717 500234693 684995714 137249276 425706922 607224902 229786890 21493338 97286511 492471933 366214217 571486525 426194782 970755974 689294380 186898346 731241643 795266871 458311837 565404837 922560038 417974531 936193697 181034350 486907661 7800907 843313184 170349393 640239688 472763741 158570366 88347433 816048191 754597111 152748158 227033141 420400620 891954748 815950584 243454381 333500422 46517205 361261890 817456156 735110671 256992793 741903570 98996290 585275787 360469404 938503506 814118780 764985318 974756910 979370459 805968198 478869983 599773802 202351939 403457080 246714888 466594571 831622661 150512374 414747110 87708119 552359575 960284198 95356659 727826333 159569798 901344650 37458211 623219413 53042644 764067763 761895653 540993741 908431930 178649277 798871042 890929722 726305949 611541451 911852249 276979779 418160586 99398243 718528222 604869703 122153274 926099620 486894688 595201562 33725582 298867131 660920692 605753766 763762699 997999417 449071666 222698230 723417971 493377230 590819765 413196110 310091042 696296914 245281270 460722920 274843942 654026823 166546597 376021829 190059364 813091244 593182769 715123751 781738058 360379657 75286390 406322881 323344272 589746181 191667024 825420950 894726955 743321923 999327020 62649643 412700530 220108333 781313471 351339630 810022089 722950709 898844428 691104555 735666747 236430353 395894879 376400292 652820078 211242984 121879161 708639958 820158152 212724665 475166374 751097469 22405022 344537753 266338465 348760294 819522821 773450865 314970044 81244772 767880792 646921683 852234404 716635759 894247788 684303332 930086966 469846438 720477414 341168447 848184249 549605108 15354175 951744061 804002009 43609392 637293275 394100535 470993108 639021299 818496670 786553809 499275520 579103601 360477688 382128184 704584306 679860032 6435544 313816933 413818596 507106978 369385107 99833498 392808065 468411524 844219519 491747261 669472027 32307684 489771774 561010275 158089924 106940985 192469271 346660448 967003680 709518211 392702952 154123251 401448748 90379594 293798402 704398624 311907036 596471271 517175220 988270726 458513999 535806691 802464866 71776541 183541642 520709917 292501987 218953117 318648156 457489900 160978064 793861796 903617343 549457006 654176119 747782849 648750093 110344748 24325303 700075771 509824378 772557 313318639 751427461 177146600 516606029 884619531 688344855 237132109 268254197 480572144 391815354 195778295 565213684 159005585 252739692 799760886 861531489 660394015 316548169 723068183 850169433 204483301 732945536 327094722 932890670 348996435 504575444 784550286 367102739 829187255 438117760 559947423 303124160 773456152 30056527 759245971 286580451 940113738 7041249 878922248 194237999 859518780 642254563 118713467 245480056 226770777 554221578 52458819 208191492 414626183 391105181 891234193 203061392 330658937 667279918 32138630 131943848 81583029 944333808 31314332 422452489 535963712 673726435 136480432 563269739 631676108 329617174 542795379 488051947 507817382 720541007 72191655 966667090 298944070 123150314 269368578 995606231 906770799 308957858 300576961 645877819 655482483 282580500 106826589 886967560 189962727 534193450 336589578 53345693 532798666 976498676 515000335 604969596 647214848 601545602 861135672 556396460 337899197 195312957 782758452 44411387 34125105 429595827 809458697 716087917 183226669 140471576 853557085 531451505 379804074 710443799 193725617 6241126 982454775 399683349 755297272 52645230 768257602 745585759 28427155 253588540 881946271 683185603 185225516 935716838 883241932 470713367 498862307 656247796 827420497 205012108 716997620 438987429 697108908 617954746 115312817 832842378 544086003 767976251 257029827 256000972 712495068 866272243 657214866 585866177 679955775 901386205 860936669 290293237 873334130 53365730 9959453 475037878 87319868 564796902 655259418 975604512 175367715 531016120 436169245 248915790 525735949 52828887 347110507 761522611 631056812 869707124 804690070 706925770 160643820 432017655 892522202 71410905 594481668 146125224 397677204 149287061 690621880 352548513 120461218 780237376 732753758 329414538 625518191 510551130 654037483 934121951 477937715 369088584 84666877 511277065 950126736 654514629 785780333 264501212 220210121 714526403 958163821 258686034 370121838 88232996 328845714 378248829 82858686 145752758 965431889 563771540 565905243 111110012 620274939 212644406 185646389 830063892 441526299 669065541 962353696 155939982 709927714 18321267 516258091 576361641 373350443 594649544 137621754 671297054 620123468 771107085 424862446 241456846 40585654 749313639 1001049761 587608422 872721199 285747325 681784502 30567961 589657566 449201147 232218140 203574527 726498943 284775387 123640378 451415539 870902084 742692324 531868978 540261344 748942992 854047695 37402857 926672475 127717221 717412022 579299787 947560309 643616163 831238217 774637707 751346316 366138659 284432889 336221375 805799222 596884056 513665849 591082939 591535986 313136030 239399385 785082857 650966749 828788361 928451088 752213913 135681763 104481394 797176139 630160263 598002532 825875564 623452877 840120701 98038042 43770385 532188243 507571755 292079205 844668644 947235526 491858598 672349336 112666034 446383960 949828528 789112275 553156374 886866420 339473658 159936475 188043732 656283386 758096127 397451420 616317327 558090435 780016025 215971321 769418192 252621422 301551666 62553539 380411315 380997557 462148920 760547825 389330303 234466989 411184489 551577289 524552740 914240366 717306149 967199712 794710679 569126575 929192312 306651407 764502496 608485852 21361114 996196970 118216946 222718754 554460939 963974851 643419482 687573365 539097486 346512338 754781990 325741146 541276170 342384972 570310827 797974805 160986895 60691682 150677709 601367911 114691281 258401609 186026450 798966259 166630910 931392126 339855757 799663626 686056438 393251593 456741711 975502120 623963061 570382312 461276993 679864621 525036631 189465669 272873372 685734316 463263532 204843029 571093163 609200956 140651096 195303449 393334849 301938966 523569560 122199708 721259210 736112689 18874840 551325091 195934127 588391625 263259030 346460739 543226060 492458716 322725190 862329686 200735568 193150646 383281121 812937444 564331296 140745619 241524346 54023669 219016582 640799293 668463964 794470055 848368158 898255764 915158375 514192249 672624236 713174196 652611259 108387906 802528221 23350573 587445763 734365285 711569856 484567262 278420828 999096492 482701067 779413874 544070733 654075430 42174354 773063925 988389740 696062428 853152349 668533225 640901852 526769972 354045278 380784445 10677789 942953020 959184415 604225455 749504916 857852293 44724489 388154445 277653076 415010868 634247247 246401084 703174285 896538010 571998524 878874813 360407885 532800041 32180947 87248300 898677176 437924857 670657873 45009086 615489896 710459378 231680485 45428957 497495070 466117864 423066330 764973686 16030917 917776016 577003871 957397381 453246671 615343432 882800593 819267744 189279397 457859957 769568032 962134770 705857265 740495090 848153995 372950294 140771499 464530138 11534881 497854080 552397675 107744419 93412112 232419441 675410889 840988889 642677837 664606331 966963648 114750869 966037121 82074767 941426831 848818409 427779437 913008603 270186889 12253166 653967114 117748402 604589996 413516834 589626673 629777753 1439371 847758120 310139612 460496644 303656982 574781931 178643544 345124844 463998564 685311246 224624980 922624822 763581459 922039299 285027002 660041827 820173557 695832011 390160527 27198518 571617737 635416891 859280522 183112511 656463662 949980621 543773950 560979416 184560639 529229953 109403999 838314213 171317935 170003524 456072738 488647909 500546287 547701077 792569644 144485045 926861342 927575777 53795706 768294272 325484054 797575850 688599933 56965043 405720448 122913886 222318280 322969515 256597652 162408061 979631408 403152085 895817398 786954650 572251825 377831022 159401834 483882499 848509384 790029199 232058059 772465257 201089641 541350209 730818793 579767282 123850774 475135624 71772705 421993797 593590394 493645728 91641721 589299099 144024389 106972528 800257553 125422674 59968519 842984690 350620876 404441950 174984659 601013196 202429926 417200294 470428745 621998865 520201790 186662074 830594963 439560108 158521405 409070887 280115023 730018285 369065026 219571158 988366931 936802770 325866854 204995693 976779586 81546697 100266524 647129572 542542916 411068555 414987646 852188122 119566114 869389802 206548505 555980614 895611454 697159643 494297096 219780800 271888210 845139844 61563288 67592273 599951854 609342261 673207640 273035442 673458659 305703378 709983664 388192551 29412486 709297407 213701142 63411466 673825646 2089110 319545832 522114964 295664501 970321894 4553703 469199028 153307371 130545173 350669230 625324942 325130791 354394058 775874429 517898878 46212482 112146076 989808832 279408690 566125419 745400898 412802283 643612671 349878313 385535084 130399490 160500975 175924689 850401134 433817379 266004912 473849537 754027213 899894959 105470060 412381271 368668740 211160849 73379877 919685192 530666179 46469299 933356057 469706755 246598658 839728460 499036300 97655959 891658735 534447577 622609872 786288256 1001759268 680806217 927223796 593244250 64275108 522328738 11182358 231798649 379662740 392557303 596950947 111890389 203562082 674541635 143437880 923552179 100367322 172531413 187619523 790597254 200562630 306271596 473071767 85131998 250510472 557605396 627019543 288754826 886015452 542350417 868810124 361301760 598490852 352468130 353455403 931993574 916783280 757403303 525215675 188688864 160350552 172023242 499069380 774909671 191239503 555203507 232015445 420341981 779411841 641138077 697024084 975286832 41746054 577380843 420896300 165336190 942937777 666482159 338185404 489067164 643272887 383177567 161129119 380580072 686245676 813866779 461357182 894932907 949815909 453564013 194327414 302158307 339100418 892371781 327127248 8203872 976387751 652964537 259093766 518775047 858508773 5594887 750391504 979116517 392387210 134468035 619666436 709834224 835218574 382989187 331010181 388547368 857104388 315427068 472432029 589369510 846480061 621580220 703630902 314488032 349576713 345884978 733200486 784154021 934017756 138719241 637997870 133205695 964963188 331134813 710789858 657529686 226718463 108458735 793313009 446849156 99366939 270650558 648060550 762132550 137044161 4004919 840217418 219147110 650747953 964365656 955249871 879044677 240541861 348117810 888236847 512595469 445327000 388522520 225726363 450172781 954347260 111245650 230971036 999798496 267176505 480109751 562484848 611888121 163072623 100694419 436154891 911694285 659814798 921785182 261430806 720020283 803143574 448631315 754999557 541849344 935240390 691886795 901643885 349559082 213589047 950719086 658403073 61355217 493063057 425058455 715644488 73699003 25064283 138750453 502737948 8889863 338240756 720883827 424930990 720448219 834094555 495412590 406066814 164905056 52049949 713806913 568647922 243755978 214264355 940000356 871706385 334328629 112696935 175234786 525671382 890191364 632811830 53180193 49406394 965058819 81269179 864913005 318008706 530378118 309365623 592948366 510358059 87635145 30293005 748012637 694139269 130277332 54670097 529474335 50677980 437237575 39290446 873167095 281863076 90433725 245741149 965419541 521848794 470225263 510369321 428197985 161594401 158573633 898436433 662638103 977491681 6050684 377664328 972030512 726399561 140891921 467062702 495472136 669469359 355410081 496306235 699456720 334066052 559060047 7564265 557752088 240837040 213173174 122328746 349062490 135506688 423041181 978093783 388351031 768200719 926605927 162359837 147326391 782685574 316539123 146500326 584365720 568936678 758716227 205273816 644818118 107486698 757898426 633610604 325655463 3153600 693657379 445278316 667194118 99236502 343275649 859405589 629535737 857430591 183048834 609902134 169519790 854921982 260298518 710638774 320524133 798218117 728120489 672437048 42814866 941061780 88844175 33869752 770818095 993662905 909841002 757865916 812245649 340592494 348052259 969517262 891696159 624202234 772290565 841535329 171452381 258100590 257252146 586358889 599711846 979257087 473146815 373297208 365513500 553437966 830151182 764110421 430694185 226740133 480438012 337420985 263260526 60416000 923200910 339735165 351216027 736703467 443363772 26414752 442871491 929954357 460613552 135479593 219569407 717685114 990421458 678777867 786419269 522743660 699605666 916476224 986295717 517769577 599052850 620587701 955485854 689475387 89996112 204906757 907716702 68264504 975948570 501161280 399054908 892246928 107935879 580452331 946434144 78054682 119000846 239904750 402470397 58034213 252522843 49874560 605275992 21801468 115518034 94441127 176140623 589814701 917800675 516603629 871369021 511827968 639296529 458219122 537218469 126592354 983090487 914806999 52353100 63755733 446549671 743959725 671827244 33099619 889693163 602096070 924708207 290533365 138772753 328264957 572194559 657374272 914566823 874482224 219595845 81877021 253012737 491774551 724115789 601068570 937884168 266397176 337741384 531762453 6472182 83902242 252605957 779817546 30041482 695351180 363433391 306606855 344353636 116705191 568378385 415881820 465791495 396386962 993627230 264087323 633560917 18666359 888094109 698569173 840841923 951393613 449270246 509792911 682201106 380505520 884063816 258371972 835234607 455594174 612124913 172720535 904748521 201763044 847432919 882542557 487017893 678628388 846043422 620813485 7623733 27575146 546541295 647549291 682688475 85224315 163038595 474528507 52083333 64100725 627501919 916288560 232634419 507942676 260471882 479893116 85643122 889389589 58516688 214799552 132636650 780240536 468172910 406067546 590232381 732682221 665354741 330324486 696624258 851875441 468297217 757419639 960507327 958880082 995117191 940639575 710131489 725375707 531704775 59229756 889765349 792314039 723597978 78059984 114417135 299892997 113007682 584285697 692810612 825624461 104810773 121221908 90069036 565273815 866502575 660111064 488846050 927737515 244696675 321539043 399450572 389519063 23512264 946808253 173378584 929980746 331994507 473949810 772022569 627890063 414426439 387665426 832305579 730080557 963248401 5538828 867731117 945422326 706837984 729019807 353014317 257642081 447522054 457492611 209805901 320245778 519623264 667756057 231553890 979295369 951856954 936316354 459525343 633114726 516382597 985280789 504707998 853892701 359596620 745387716 709088173 548350523 940927997 797358024 519344533 579084181 376880179 39142109 914133642 745233703 834120942 247087864 790431823 315826949 180927109 482661443 814727378 120278350 874344735 968978570 335102449 816373288 730832025 789008557 700185589 717588335 310875335 991542123 483677378 118485620 909526053 461770229 998279846 926957580 701133007 128230658 989308243 496554889 6223525 685663475 658319946 67668919 584591636 474612570 756084365 146850518 829352219 563884334 350944597 830668931 730363228 307674814 327425092 235969142 873396202 818445600 630678824 916697390 830109852 555390731 625817541 398281472 591293153 88248054 234715483 645446008 940354810 815000282 802598893 998967919 383665346 322020380 65529329 478635763 23834220 756580794 225128702 276601096 398692347 168961869 185118555 452614112 292188404 994621264 915540042 809004972 399174258 473000395 538176366 548233881 222028544 896512137 702854893 862699379 805914325 74604315 312413350 915265335 247496263 551352029 520988957 925460856 6057543 126741311 966680633 883622341 642344433 163413480 784621377 560781562 464616346 473710175 852265025 315006614 491852488 134524605 786887263 834379066 836763051 650767168 612962826 635515386 960334261 601505088 322628683 912975721 794805319 969489370 939740036 249208314 709376010 219391894 376531170 66337272 288918354 271491274 187462690 505332 494882941 687492254 691791564 8527658 203961705 738191364 759702180 729058414 93863412 168636330 660916516 741871815 465057243 254463723 70753125 822365498 495152610 713779318 948392117 659074678 373070686 480866289 429973104 295462490 464832132 987415414 343325289 269398475 499768914 434316354 302073319 72759291 761539094 350657341 407109992 943946482 263410922 209416036 273141848 392061741 916636857 593362967 436133596 607614976 496491899 105983715 321537808 719650986 922885221 286657534 947580743 453291468 540432339 91198564 512433115 705399306 900965918 889703032 537050416 231905392 55201059 110591487 873257128 165621154 815748773 52355537 467790352 29536987 15196287 570432949 544138028 574232441 727796640 941891364 205908660 411772414 192554863 500392693 83999459 346032031 958844785 481771033 811562783 145481223 104817310 987626112 811141178 607147514 571878286 373035333 192387795 417181760 908870779 411166392 172762748 479873490 56239949 249157100 458698119 754664145 813559923 86653756 86611686 296043533 370731979 556076794 770373707 504148030 151598766 329714926 297039535 265965655 190684272 603494923 579891718 437692119 565247943 580770715 325702306 556396957 498327786 201105845 883735968 670061253 407598329 271434576 467966014 341383099 222540421 128025301 536061361 65461363 552010219 824628573 894958687 511965898 130909653 236384262 783141735 399067837 375588514 612732227 57286609 334503384 86558584 245812093 590704504 312283960 591761952 598825808 829018689 740819487 139897208 407710450 864568218 57459414 433837972 719154267 49932335 264503843 686479763 461967628 311453359 162977379 23517278 986514195 668004557 641733445 481635139 201566031 233683588 36026781 528246721 341082648 340793640 611863116 337385048 133645047 40801391 599902685 139557403 713708759 793249013 535345047 200854724 650737881 890967731 523523790 47967711 376459480 343660153 471784081 502383152 179955685 745194029 358885572 57656452 785621159 573970208 922851209 258221900 168791990 227395168 680539113 830349370 985890618 181162571 66630598 756687887 28230327 21215011 123080223 682358713 583292906 343119773 972659048 623685153 75216012 810760903 568755695 441712469 942339660 862939125 781821292 506769585 567925232 8335087 1000274945 29398785 637351466 110161288 425746107 401663553 956754094 274533195 455755833 785712758 125317760 13410519 655069420 92193152 759192630 322211527 988188683 669137395 561640438 837521083 860969498 437905629 361457602 17839623 953733189 251299945 477013787 175201204 719079011 126189456 404125115 29843231 574107780 227237352 259462118 460005001 362845649 58361859 504860075 729771120 100643731 116320650 546760816 689088870 352199418 191193517 151300954 516774970 820881364 181315427 689871177 817986967 31567735 887837042 94276228 390634134 426054566 188588469 255520042 199058047 871797071 63147423 721846621 759572594 211439079 374673678 267961698 318569136 462055690 334473218 128623 172952994 809553020 825112671 498920371 271880166 589567041 724440071 141117275 431698829 850004955 333758656 700531163 655604309 68300656 947717988 432557569 639332316 885702707 674265461 248568270 647892193 7569242 916476382 698021963 637010627 127820398 981818445 752150576 441891934 305557464 828149283 518384419 812947906 713221871 742613076 569347455 333890577 955786573 820769346 343380870 747983757 58953112 735144919 543094167 376718589 919353734 945759757 345038710 149532551 168461774 339439199 540570819 11801224 105575933 18447508 358708579 40333318 606394855 830666410 944315336 837465422 500090707 623884707 363957947 869189793 1962281 484971785 567398369 36274504 821682559 252193151 179095233 638557468 358856339 865557702 877876833 93583290 632867660 125151174 321847465 664302479 189942372 527694153 1000794020 29858116 246273003 523683629 199073341 855299817 390413968 686116244 916918681 7054329 765080552 938566397 405382917 671563431 571243779 84337867 402061893 324763092 996251419 101205087 438863846 672869510 911360816 947309891 901322337 569504307 221345860 69086676 699081433 904553304 792069607 121397384 527773406 237927592 871494020 363710937 795272856 478480363 343059372 232017194 772655746 16365490 493873459 727864984 5716309 504251873 331424496 612218942 592597752 436014044 75094120 693709821 264752718 448350737 257073321 128752689 114375249 475341263 913798885 170673828 674368870 42756242 8342141 683949319 237895956 209804633 505966157 216422980 164868472 959246047 880495102 215446662 403708906 565991807 509874302 67809724 204505751 895516544 197662357 440576860 609046334 835525093 825089151 573135969 103456100 206742556 751426529 822132183 857960136 42849899 827739551 573664320 134357515 654724090 466362355 848186341 527811708 350530655 777207482 159679069 842045561 722452328 571780381 66324163 71082050 104384370 455668035 216956081 397835587 637991371 586243660 452511739 618590670 208065841 852010105 384908733 467185640 631698801 106641060 597745043 407923672 604423957 999871598 990582194 3851164 51117067 675895087 536795704 835269546 706483023 578756422 891501365 544329011 20390867 975540321 126138212 698222485 135933917 257249900 938295950 594137792 641687138 983218480 838432861 675969037 700482741 664508534 748330849 830080233 612137954 429714915 149689465 895279501 23914366 966441090 532046113 372138844 299767276 43039055 548471939 922202237 260689372 177186019 649125739 227382625 509342829 393799998 193624517 379890975 102439401 172435293 644276594 39665525 1002100674 628960994 167348647 889617194 189703778 759539769 338722272 430778795 739878991 241908353 183563812 432324325 122515751 283181850 925854675 447838983 944559697 630957285 198559595 581513185 697176343 584852614 985188569 311138019 870943412 878444907 858509182 550544330 631158527 244901391 688396097 341192316 752283323 316018099 845162681 346343144 99634573 252805984 938641849 474601603 609372832 554014777 731930134 336057972 553854118 99145388 413720241 463264878 999104802 283182712 955185506 621285517 213065894 578524571 29334487 736127836 909430467 857242090 163927744 446088170 997986777 381623424 581638725 512865562 737289308 855556469 822435121 867408228 26024161 882768877 590965433 249947485 674737847 74002713 718358166 30819766 531300700 761631718 380507039 478375613 419652544 86425594 954952063 525702627 682376886 415054708 931116155 672666846 622802765 939953277 350890222 122405542 790262026 288801902 453966177 478830407 829146469 327060968 188296102 897586719 615755089 37461200 130030687 600754819 108738187 595331679 800254272 872934447 535039589 114197513 432831775 964479917 29087416 569013821 174262232 838088143 449931917 824650360 888871550 673142938 636544579 215730422 748780737 38009356 441629011 660018907 408806478 893588165 234277006 246531153 920248979 122205707 774262164 51760166 201953722 181561651 696681414 742147937 667381669 940602123 908252022 975125521 757246181 151800175 697043705 818698595 300234261 420794024 976814234 819396460 126493491 464256936 812454357 722983204 651101325 734627608 768108389 938659013 658757427 425491537 65551661 752478893 641993554 73509836 59759402 853977232 206745930 490973259 209555581 292834360 928572368 408692082 65215442 291007318 228250907 447572556 831383213 578863698 75262002 223088502 535185584 974627608 779058923 74760770 787897236 703615427 367988262 83226962 380883640 634846896 50561717 223227396 316055416 42569852 271814716 74766240 249330818 271812109 412760763 270255067 494851107 962236418 763757241 80004165 464706904 153035111 689970721 847079792 433452513 836766997 121818307 895447490 616105927 844752737 722834266 220504451 590609261 67660545 440143476 374244443 581190548 762422330 233633573 586006785 426609502 243137377 949765946 487584124 615169846 716047320 528130434 17374753 460525646 277311999 512971370 873668957 901567545 356386401 798020363 860117138 405627288 473371409 327788462 60798463 940359698 204028075 658378177 470162333 788785317 302152980 288224971 524478144 556039608 907776614 717372466 647417571 213621686 81930947 470503487 784595301 100592522 97496096 971679405 352097771 824415739 338256616 91566725 844550276 704018792 291641252 878989295 312392677 482389417 64111100 765795523 671576832 392432516 112654870 998102676 350218905 706092907 641483715 398833236 296197171 966347881 817475461 627989023 164322868 172951328 643652585 289411724 825974805 513859425 201331445 925704298 337167740 773652951 875123577 295985532 413636042 982352595 747749538 352424468 241378473 61912764 313769991 920459838 992209629 70663717 930689939 641222525 247683803 998476939 482658516 484376145 431433504 610497156 361405477 574577632 826276154 126499414 949287840 394677292 95268689 255668954 61485106 716883054 769231517 202760643 683245415 267853288 675272644 303318534 803409621 36066122 218806610 235894399 140101608 174012155 484107802 367089841 636185750 459213902 235987052 923101070 536193467 236684502 531444913 59960273 636161421 17072113 562467668 445087179 769411258 773363927 223389144 563422200 627797747 462728180 274519435 787039417 18214920 625550450 140205156 345779573 731446950 519923707 941754119 307150852 378292149 545434322 533074905 179225234 736635812 336904263 981201226 640413095 885415507 85634158 407894330 88711529 534858545 273234556 587904529 102955334 235728591 582515864 420011552 392045196 521829789 528979469 739461359 919122409 495825008 824084664 781953493 409378898 119417415 147079932 458787970 239195431 376367824 781199795 246105743 534629033 42798408 831129230 373431442 142770165 803787714 259039666 510310634 63423879 124625783 422375198 783628502 451317791 938043268 463822372 374820196 335654452 869046703 358447306 389964678 771203938 861765164 156092780 67119241 551797510 276421297 645063681 724533583 904480157 221231546 622236390 110256555 402653090 836833435 486678863 159422189 573762503 683295498 621600084 720625745 447453133 798453946 95744041 331614367 565949722 248447637 365263194 164611103 44107409 573131212 891415705 233206083 201983060 905643702 947952816 320908884 859829011 692175658 290728204 698092494 503236334 296412212 269619874 868867858 662619872 274564825 305149963 192077720 488444309 905419369 136369460 535350604 618522780 598292057 997023549 18694992 914769045 873647511 527762636 513349312 335156929 160486291 187261286 838765900 890458638 144349581 664831443 584225281 935739950 242658267 926540936 914805946 832935774 773945250 940878827 920782140 419069625 546122748 857815916 40561653 278382163 583386474 312684103 735598509 283176142 792443169 543753754 143615134 208538171 718464045 148523955 884983077 32869110 892624372 53530201 591857482 581993455 269232668 724979904 811456317 109803097 538627609 132685645 508372598 784651638 470674123 104910386 584956635 11997738 155458898 741610584 130661061 519340097 639156582 834043013 105410380 280991491 219652179 365765090 599414746 231824084 885796657 386026991 393209151 393090652 444942238 268186741 32060517 906670451 189096367 899814796 621096749 150103736 927211364 154650228 44173028 249390262 487292986 526795456 630471776 810991464 1001266045 52419270 698953429 516808965 116666640 991026077 617804170 239522195 942055028 488063112 279397607 433372074 70436808 117843488 354664090 328355416 630757812 227985360 38451360 842494939 552990465 240599737 414153277 117257914 126128315 720443544 301252816 916554812 306339072 946302816 449290741 377270057 106665564 260191150 409375756 847534533 272156873 936266262 762223680 606419933 776264064 728603627 338071381 223701809 752157003 561514747 828619342 685175447 860500213 970129747 686448955 273792778 417283125 369777307 814750655 790071192 64593054 811571792 376450082 344912 932812639 879726367 941708285 321135156 113779224 783454649 298758016 785012732 90229250 292932142 17552471 914786581 366878430 411568483 229383234 789023431 795068276 793320473 134253590 982108417 525198450 155381156 424709960 190116533 787566617 815597458 393867929 224026853 686784779 679526180 543500043 132378912 739879585 516059511 779562545 37067957 294187109 744207535 618640041 364307984 485536235 797239400 593677216 317769726 678554081 130765252 990579962 515934000 832850677 325328684 489437801 28907424 607297048 352926237 143379512 164442925 761186878 529691318 659394817 711939634 508794458 975379068 762497842 418821919 963794322 954821467 955692328 666006238 463546926 784216504 197962079 267397001 219855028 698015095 789430130 229058620 182743257 509549992 372981112 842561939 44849298 937629746 616877803 744745733 525465330 745280201 28151044 488023700 438984245 861081941 797705873 753467579 57289462 505403111 340115166 201022425 201719306 643706313 774951070 153969688 408194662 604328293 222527128 881221903 650260028 903108284 223188930 170336473 775311299 383905969 348310806 192897934 794566697 771144104 786843730 820930988 230988109 527577951 556265831 965308257 661175148 292293007 892646665 780825035 642437213 398754562 77575383 403485381 853650033 15361618 616741303 891459231 806752952 789429511 907134761 211780317 419696928 388506419 603127076 380590612 900486521 209509125 821758003 2318284 707114727 791140760 705647071 839877207 950079115 659691756 54099172 774774614 325214902 246082964 851884375 259896996 27133618 222410104 722578872 251814527 63793229 597275567 223615502 82314163 90933756 100441694 380977781 428414728 128950197 211905716 361812220 772116545 433578613 477304025 542687974 816871163 280678900 847152439 373143595 785355361 70724096 461447527 472282564 929921655 62542843 832565596 148848300 583793698 274542595 810950204 799134527 421049817 133974235 746673513 95261225 429263998 374206110 363671675 353885488 422263839 78082846 169215201 572246758 912685936 850772397 994632533 627195043 409432356 722920641 678200269 550023152 467062431 311687457 297244474 63647706 699128694 221267568 791364038 438536335 702844117 550343793 326904983 355101626 851735885 263003827 356901657 797707889 968643629 650681510 889100484 90983612 436317344 542909800 346289779 118903828 724361234 808993610 470817639 850060758 193778889 323982940 624025246 383991338 642288027 188749399 405089963 680017911 53520897 70778658 651565893 991484960 855421082 313652022 822670844 791549887 296563839 102072463 72898535 633666476 44273544 901930586 549936506 904494939 366939939 672861140 836807536 787429269 90870392 345614219 502039741 550383007 378399921 693889995 666392723 648120705 951771373 199529105 890359236 354217531 794018163 317351200 262501987 855285261 295846054 605488714 594282646 231984722 317099596 157814324 618286615 186264294 657979491 563397254 870120281 200207479 908005953 599442276 78422912 240331713 874820987 459254130 264967887 918000670 600516670 461507126 215155516 562302799 234834819 340106521 345273851 501025335 204238825 766352123 874928981 358871391 118112453 775261225 545556996 844272708 925788443 120493484 533737574 638606249 357546565 24341737 902392377 948310960 928500890 357181475 232649868 913185471 462958638 952681958 180091810 374236559 767291170 828512688 459401559 16599741 808372978 561374115 359363301 658304347 253231092 622247054 179799284 119348151 723518552 376527351 875611239 501598267 150659975 214259899 428561424 179158009 720021905 93339767 798491505 212514167 163629114 267322761 748385090 350102744 504209298 412494700 642624183 710082165 127289565 278694097 996132047 421777270 417058632 868283900 3899110 512710878 872365336 438469099 295046246 945645324 102862965 405230112 518582883 668755144 225418279 540776232 581497418 816084082 786787482 766208281 85254386 821788392 96116699 218406739 897370384 882451749 96000174 708221027 862632524 295526875 372310202 707967900 73089218 307221274 610964262 705346221 574603000 90460409 629337357 579715901 64313552 974753720 494037117 918569405 67692563 683777350 105887823 271337349 637722227 78683854 262053473 850776258 256257303 625560058 452111298 785238698 167101668 631235818 63116692 216152281 167659449 9761571 190226211 219050353 713740375 842114267 438388513 7990556 861786678 755769634 327451703 678670443 66831246 593082994 576922994 897952846 151426101 41383844 119678851 643769442 675015832 110877461 391092862 811279321 2884641 66998821 247400410 449416014 214449692 140672891 54362450 526186547 35534444 348410464 79652117 303902515 670007874 434603476 158139480 144218764 355289499 2487715 914164322 4420163 137293979 244785936 957410405 88626415 26906843 128085062 401485261 544952827 822854964 952033187 203075019 660713821 659167278 13076202 629058517 232583311 6512008 482466416 406842096 657408528 652525065 214541731 39011877 456651417 688549742 470609264 874122215 259038897 670005185 875860085 830076017 716481564 415779201 733526957 235773474 772052590 17878750 835774446 586697221 668908015 821404902 139103975 923825896 870169648 308877997 414865093 999189731 546904674 475636893 777047325 119495368 885153107 182880253 928142942 350057884 372530866 626690514 640451953 786511806 700985928 755397794 885826676 276229098 262938608 719407615 518066879 76363379 280637742 633696403 772548940 373611409 33112792 542779092 211828376 110582347 105450373 570555393 971483406 958153630 850427275 924449155 720877033 392007802 426125646 87387985 432770509 804937042 770035283 185298335 152340061 171455331 721708979 21124369 945448422 66712577 971554331 834835364 186743910 45064010 809577942 556091152 457345513 978330818 313530389 571207973 202542529 370950644 83706008 971790286 988450713 780162383 860670649 563074544 393111953 195143468 108570171 281387990 716172551 866737718 322543450 815209842 327291288 978757284 856511607 133243614 12835139 546629987 845430012 796300273 302821139 778797887 392198798 628089240 735802985 433233369 327325652 147415577 54229243 491980024 242603731 639013510 10461155 451865177 913592236 854843545 939571425 285381621 560438550 869394955 757204615 467875470 490804981 584449981 58623913 492821974 764287078 21645346 855623513 465971543 230702637 468625025 690937831 159690302 903764981 226360787 274930197 364015180 787457363 635947 539515680 362157953 469787865 981754571 778210649 874164502 209826388 728452334 274373077 567942572 536784278 217338223 685548167 437212196 471537794 611979585 380270690 736860976 728168169 489532315 42981060 416971280 276858852 751797337 61585730 357156528 350806047 20407749 310617920 362065563 671096099 527858509 698127777 631498791 440812376 76109304 865444463 862078019 603278260 61996559 579360291 356679071 692369183 910655062 163246445 162280569 662667080 377824459 60676868 290172879 963256521 161543266 936794134 373882682 403393266 245707224 440183442 931634522 450084891 516348438 56732084 844067912 332191112 282293614 211314423 649410459 200736954 217980733 275929432 791671780 479998280 900522830 508098380 877203313 330725615 507953973 849189955 765214929 561978435 797029080 333932199 625579660 697618415 7461342 294345475 661650134 553011581 554809061 361384094 46048002 955925315 336847628 417105685 501909931 248814943 494972427 144025182 924094235 831047952 785848250 767795226 151625673 113021336 36602866 20799545 677148659 315465659 654854130 122820344 113535009 31357510 467757311 737250878 442703925 456948806 510289751 144392062 531223634 362567899 822691655 284219475 294241401 943616125 536975405 499642978 343462659 329446620 260216130 394516601 485287400 392683863 250693606 895628201 812741064 166887896 438131731 45501214 547775940 915037783 727942464 288099647 594613305 368904152 535207142 771631780 25721289 33917614 676343711 539245222 329002627 593263724 647656595 362349204 521052831 11833628 397650681 960011481 625113204 550807229 405372540 303725932 256324491 993253622 248174364 249784812 175514682 945539360 815482087 286873264 740807379 3050941 679320861 812743813 431512009 519637824 32199596 100551237 853410215 356020369 313892450 727629778 351423786 222348664 596932185 451976176 526086295 288132192 991534760 312660051 96106501 499725940 404542437 455300016 122737508 908956232 481302357 218731666 127882402 568619342 901450759 524734385 166453114 224091383 294957834 499347885 852772947 894880516 62426552 252393957 363668837 760943121 705232158 169028472 928966925 836849 149571181 467869616 99090244 720266631 593855242 337024331 387747690 745235127 152846170 243889647 535336248 629379836 137514347 595897166 791753442 861965647 287059911 197270591 121529503 406574819 783192316 910979136 387613776 534624539 608076311 926548123 667320409 100049494 90225319 152930158 755099776 506467606 337177374 895424848 494177375 761349561 248344297 407243884 915315089 525632646 559229337 25286394 318549595 86175230 927027946 924958217 478674281 636463651 401875760 927833055 449901547 938923530 231481888 608050395 258337629 710043065 5855431 423213690 721951167 680072945 907842260 298928100 424654433 766086321 571392276 1000836278 164656151 323006197 213795361 570086629 142768140 784432625 925216651 241616234 964221193 793251492 267859232 43008135 824941246 718143453 649382976 529293036 419984098 958221030 513419048 518171093 198244075 114560949 916820200 651073798 684977949 289399286 311431338 126788728 96711685 726081044 895760038 64549349 806204160 866641531 821181299 205222918 595945508 291068987 886260840 50607617 22173699 177465254 61595633 476316700 408634289 419597732 260544006 317460776 255093843 168012050 265409226 217441133 199931883 932046995 381314897 330542966 308197716 954744561 304655418 119060425 268021698 204484327 521744896 724046743 802396538 312326306 394869376 8363983 362754556 305060420 930377063 837305823 542301754 139887975 812702492 860022383 353888348 753817673 811221561 319649947 625426580 958005596 202300724 861945666 710634794 705099427 997158992 934974616 470569612 427625059 596711842 864611041 332085896 107393000 53276551 933449041 190283681 618234784 939167708 908701491 901389636 927574859 46870842 115228596 378101768 237064702 202504945 146856346 141930262 991083187 275064783 936123180 144472628 132798494 708223924 597119744 380198779 43610701 233634979 861483326 943148014 747465090 377745003 855238925 557627183 749307737 946346575 115950504 560962132 586619498 356286921 417423296 815464967 708206978 624786616 320393646 108533382 642071265 221412425 467116932 441548376 544447326 105939631 782627112 999607125 612417048 906321445 876185753 295132139 183710900 289485011 204916837 29828958 345703575 760069825 140975286 448803661 217309358 21426326 535176452 775223609 311133655 104618057 604552311 276938796 786486570 483689461 342940025 50106438 902392826 188658023 103916534 967448654 741021182 368267406 547696844 483063505 688741017 816941948 154783151 378600592 28435132 218667321 938069043 35884073 602981821 881643483 724194226 920349906 556894772 969223648 503689944 566429539 469653190 443230178 875753561 274798499 318552748 387642360 670257873 16847361 709899947 658660168 670667108 912353004 502935449 570146366 703105342 106076941 625168961 710228717 16357178 508127053 256128692 789478849 239734823 475858210 28813373 741065585 634899222 440233948 351686326 308104629 944158308 245983902 748380729 197045649 281858960 385351666 933338223 965817944 704322718 761044991 740825609 795986523 612577446 266905713 320857938 849685921 721538386 432564323 201070087 963901940 394253453 631140420 455100146 232161966 403336184 647704130 183503702 536119711 753348595 449192668 514313749 642698719 583021440 435866297 664398584 653977201 568162443 738017115 548418591 361976698 241304281 240778633 534332155 44973012 279703869 244442813 765003085 40515271 217427662 806606856 922135056 303925677 526165725 109050161 3586164 738787230 245393816 383586560 834594259 684377466 307063450 818009603 334227628 706695223 78249779 162260428 953405678 881088446 879536833 357366355 251629893 395045893 182903378 486455248 814279751 49041205 882274776 60921653 552165380 93614352 179517442 811014422 713950923 376776090 53519931 176092785 341347078 979590375 45359499 332470494 585321359 193556326 40676962 565940710 796992809 85737701 150317333 93858471 287741631 133024279 233282588 879529727 768820624 247188693 127326613 619261578 22044587 897929992 455923772 814523323 293884163 222203402 420124948 952033812 2186007 432421832 142404504 320764612 713145437 789524923 758952475 74879711 235669598 702883197 203795777 257832248 832812599 424298149 789201630 311109174 688350092 469580717 805265410 577903162 79628555 550449321 194126054 971495277 383312379 6271589 112256092 728800611 355906003 255355965 67087454 865527973 745606876 911466211 467832083 969361771 419720039 483189467 37969315 33975937 873203481 414642843 536460294 61861860 123288348 438733040 123098546 514586086 353595884 821447089 404321155 511564373 360812690 430646384 793091056 543054211 250932880 301169891 442729477 437420802 222174393 809603329 686880846 611507658 914459623 246249123 375446408 267323314 647554861 431351925 590348937 477770054 660161288 635422706 368129211 267834820 886039086 80713430 424452081 211588491 723418017 837436955 814690872 104129163 757905890 1002391146 606555603 433297335 730813065 279150233 163225775 910767014 274293406 220627368 16060424 594145737 173770916 939538880 413193430 681367721 267906438 729302419 508102871 209121990 44420791 658380968 973584636 675316739 938256048 868432839 329123269 718556744 450908333 529388422 494093562 976494145 460072582 89989609 798681843 921262847 85479993 789051106 520972973 462807002 539167557 430006497 689111523 676029524 326804256 73318184 911527986 901913682 394608258 260216750 60681092 897232362 563555626 666065815 40631619 743230135 204573046 513777140 905262558 520387876 661301724 52045293 178205142 520783859 119350011 479932983 868678866 426309863 290902253 275446677 247788870 985010271 47568536 413117158 744940193 639470511 946643201 85044525 612836842 830385834 809152717 249515383 466665758 248493198 940173671 104157718 983840616 34172950 796185555 458183129 187770415 614068184 455449951 834918902 469563709 123913259 488030000 72835918 80867344 175101341 3755527 760765923 443540432 815099465 145697277 330567848 465274448 181854980 317399696 724616598 281722155 498879547 387365117 662822772 14465050 590406873 465081456 7922591 787072032 943190993 928340219 599774151 509854468 567808746 514141742 161685638 484206632 751783349 626220717 913436383 594680173 464329856 15480007 881317434 315398420 492566429 90125827 954405672 700826604 988764747 162485602 288625438 235489675 544664601 553330805 575321375 323099038 163923164 104061064 856682026 530370435 965856593 857027616 688713132 613534220 272098617 595000113 53609246 808830317 74817903 229335374 471154225 385500696 398367677 917931680 49355358 77833069 554527700 74669224 908683451 946873915 912641449 217934884 511109968 667580189 333209348 65251302 785443886 85579003 763860800 633185464 635026284 569179897 909535472 583091515 277395614 94287058 366367481 556054752 330469402 253719912 203344919 179934115 726708248 823634220 936534793 584648151 631430999 625673406 921271836 85021254 148183765 172897412 788590143 690873387 140934787 502729425 815573048 680925945 111205495 697547980 907078768 497380838 776265 342429257 319018832 645749445 348921651 936857623 876955541 311834774 860125605 953823919 880874126 756775551 88028045 102900671 374524541 794615109 869595215 834123390 465278856 160591026 755837061 200098741 337646169 527297846 902188818 771936839 79071313 17381069 690477357 89491328 369646007 143172390 970736865 127645527 928546121 63400758 41926140 401944686 344210556 632107635 486553512 521114388 83730898 306452031 490608902 59697178 54954526 65692082 473059993 414404833 34874882 661158181 413682971 345226461 404454416 20374460 901734840 775144420 841744338 192770585 122364384 725458992 892104247 574199795 384187177 910452519 266620774 757872800 400564459 354218207 912693630 564531716 182773008 817515050 128971707 953568359 177828909 357111788 736497914 983307726 116923046 129764193 987121289 914237846 112806738 634401070 451467730 210789091 29632622 211289533 316420859 167511256 262954816 697129798 9520638 48775004 967798282 101393163 410442541 314186441 56963051 487757270 719111505 165901347 444167722 798751463 668522771 402783257 740704732 210911523 558941626 515333136 216438056 61738861 659718724 150044276 542233832 62927688 948872281 288900424 889628265 708269995 361289380 711203684 194065472 403412019 239620126 739583797 54191536 31714357 556800886 574016261 526175001 610329960 591775856 620046875 546500838 950530360 266817331 184423039 592678977 446531963 481080683 742970010 307212666 878525541 412980528 291044787 54393425 726280931 95193788 765082751 721692855 515985083 443090512 470397269 321634279 5713900 497126087 921152807 798261209 788261185 856442305 241770777 84532086 914656578 1759742 909417220 454307192 680099964 602285143 3669614 612527251 311109518 438147301 456504499 671004681 82509784 416923448 231333039 226281639 569265404 179514044 548440738 15608640 88281014 428428330 74949822 378444832 939345805 731736408 681690191 175698545 342093703 116455709 746727525 314799964 934469586 992258930 871494403 195019391 343626214 407042695 184205728 570344399 41523062 342945834 591717798 389372041 701040430 91486711 491759021 532364630 716908224 967626882 555175217 529083528 456274881 629330924 756774853 431053249 346190228 451465155 589550097 527071687 223643286 677129564 610779289 467097777 94784404 574613349 823063375 434300636 239760151 813297686 60200457 909939510 259707910 38099007 895938381 324839410 330616820 523821089 71186263 501813627 404328006 224962527 603569908 604283315 69805243 361016597 273039476 149280123 957046893 852038148 591074761 528879820 616213767 782186860 488636327 159917378 471747252 931754968 198943288 354866231 844160004 270403968 756100985 912612862 765064948 952294457 89705899 297968332 908152436 630271406 883564436 834139000 761314422 886465522 697689892 700821798 163225107 902099266 204865819 119384883 309656638 438072578 439865726 109702405 279160714 842147703 972358485 484990126 840140253 643670337 286961251 406090136 507128576 141786474 268810769 306086826 919804472 259426119 355109998 910083276 936864173 365837587 598001593 470355790 229744221 823259559 38332414 433963616 902895821 543997919 767541594 56205559 138414286 743303121 824132804 827795021 769214063 142689792 785377315 691240442 356019254 904855350 302111824 869328798 476866090 965940803 359751215 885324204 321793166 175220466 958981715 637736884 885214244 725155625 506671789 104788381 841794539 749671546 818866539 175806422 168310476 408725587 240961475 755765411 546765729 237251807 168788938 528971343 126966938 456915191 566766818 468264932 775972573 237531800 908071947 339161491 858945472 645657145 391054415 786754959 592416472 413374276 817842260 607468548 377400378 532518687 945012361 618301525 764300160 209018013 668529528 567160702 724243538 701173734 564420380 621003849 527627075 571818322 373187375 208282700 861001448 48450668 864594934 186580577 5186917 418884378 812437240 366534783 441120377 503671357 83677744 684290906 771366058 960744664 234727210 821917735 745441200 818935271 835749550 606032838 661440024 496522271 10060664 116509793 153985099 445991647 231024299 449941665 876678433 108959700 196315545 922662361 236872270 122388805 445911746 569383660 638502762 224709552 59092629 591184964 456916493 343865458 945548661 786806685 307717048 642921542 321016621 128208988 975024608 368615425 354868422 988223503 352948500 198237515 447364216 139310257 331165467 929126124 141342930 857466048 357999624 943654452 126764663 121585488 670108911 639076886 338862581 387744786 644609942 634091273 653400315 408432530 428057749 738234375 754746359 217431762 828878204 780666074 429756798 867575991 256695885 753015222 298166693 84865298 617138311 987329678 274793635 449488436 194166802 743530895 332897847 117783051 340517517 728815650 59110250 682091033 694290796 740912591 506590448 278118102 293025736 917521154 698338653 667100151 810840732 659097600 227433303 983757919 934059905 71256335 447248485 102704124 322767425 725574327 244977874 578899390 983598545 758734772 994409411 113432007 391287473 194661096 314975699 731480308 209757397 539678295 94410556 660052273 998211832 972624696 507368710 299142613 782098966 68319555 256539091 283775763 674922893 152821919 445971453 640124051 558491285 690480053 481746687 637765572 947866754 491087148 963285110 625883914 124718305 577405020 893960409 879418337 410075153 716832724 748716775 610363117 226417774 515583954 422126859 298578557 690096478 436185465 384432472 71153525 939088627 472212897 191851828 346471620 799535283 434599471 383046501 782313121 469974259 855470098 845541764 649223767 635648138 750290916 900271955 158287376 173901437 293823783 93452193 78962321 340030284 234766500 145575714 28720851 985473746 54863150 776439592 22600197 652098820 3913049 7546234 158125019 882919670 26972318 305468547 693966665 289800139 625406149 532895991 972042963 181073880 592761795 259096211 428439247 184459145 792933254 700310164 949448844 791050811 469018911 482893058 18092212 886859106 530599794 434678994 300604378 943458205 64830559 959394142 501201524 891470618 893391869 320454342 856928101 38067288 253377360 375261044 49613104 156518125 934437195 930420728 528128926 113082708 287074742 32695179 324228380 80621109 368045691 100476421 235321509 671560736 4650687 519553420 733172136 264165592 299595262 159133492 154968912 524069944 908129818 82408900 326609897 218986609 507906368 453737262 284861985 565143342 748357306 640150544 723749208 998167416 895477336 734207675 221252372 117588051 621799175 902512131 581746081 111435768 912263110 762774567 146046566 202187193 439236650 159756163 750742447 629233013 793030945 416174175 319556414 809815598 820986416 539791551 606618924 881780638 60131457 455609243 819810223 318136059 597067992 274740626 337430085 941078114 176278765 738059429 463529318 200461124 526020738 957845759 446639201 983956971 28293907 841709639 532508948 166642085 798591374 240483643 739577985 275828484 716097445 648520105 343968898 848681404 627512617 47937417 524629913 805840421 324743328 825680544 398604769 941531053 491052107 842335041 201003578 689005133 572832701 524957263 425148338 442271006 757959339 222168755 290574263 26541126 844164614 425418935 857985735 675138968 587759147 3549056 883572884 258849159 396346802 669502120 771946564 441942315 7380455 897326729 427618961 491691950 51190759 157047253 628601035 571759870 493447860 643681517 339699983 128862295 531823200 639763862 643856688 657240888 623790681 739271601 610730303 540730751 738650660 964892597 278655622 170548097 559682655 652948172 19363059 460407138 418781118 432337479 311707559 193542747 543366216 515100824 632399195 411045518 564699515 425824657 391931803 808000966 255795171 332951151 495371069 545997638 972339358 31160972 546929107 788743671 83498132 262056101 582658544 641568031 922448411 13396079 263688989 411170831 451907093 703612241 69093886 777237727 796075816 328027881 342655168 175189207 359003709 160112231 186347426 90822719 50512310 940202254 364700597 954225674 410941265 178419615 458170025 814294258 760062043 376412006 842242559 993627485 430867583 76463156 967239976 906171939 38297385 384583124 419102788 860562083 849122330 166022334 986061763 88935015 506420405 882777604 129628705 480606110 382434179 482628043 202132688 188840044 71719177 759915229 481035914 350627076 150414225 406868022 351005846 408900763 465508145 988511958 566879856 802131150 958754485 803466199 192073288 880705488 1592828 862786493 993508871 840578359 107509879 705274928 915168164 389366285 985819229 5608665 571020612 807321946 381089661 213648800 667493273 367267751 690390471 669622581 615755686 570990271 74606103 216615629 801235829 126405357 622310130 955034849 979662596 748482048 68459019 832629875 665185411 356933567 686433083 857567959 707299496 330395446 668681956 248827419 255793690 238067007 71465814 405897104 809986666 971612517 756952308 734699442 674148923 669834647 634354276 991918434 704276814 307170514 795017466 395040328 110453269 104798728 639873241 764720108 473523577 889575890 862831514 883612079 419571338 808357705 359909343 684517411 973085843 773831222 502431674 279636799 175872090 526750928 263145192 373393298 237699369 79840650 657450385 377585260 734182526 310899514 101381337 367212405 709742076 204788389 627290691 553384567 159263288 128329884 517348600 607630341 915241982 44988018 204212184 501686685 425387950 210453732 765435391 20560086 480226077 602753018 82036896 926613688 761957427 174517054 289842029 696171985 603625973 876034970 434117810 755004606 725899774 100158373 943590992 533902903 795948645 97520379 610187066 324220168 627325619 496066261 849662884 142650901 190678032 914005895 263803875 838573780 180781027 679267187 618730254 369244572 252375667 903861765 748343830 932334763 890150602 350330638 940291492 343087913 296271217 123794282 925907162 178649266 392899077 516399706 639568486 306952586 427078592 921292159 546382542 15128599 245510761 661122140 737590868 667023860 187399153 415919423 456299147 918451047 207213935 600762206 896783702 784929737 785232400 909810120 521814355 743484227 191656424 873283293 603102633 238878810 364609765 419419103 825663125 47415594 993387322 202338215 588837587 339821827 143346424 939038346 992665919 143318591 680626777 22549019 300869475 821969436 971436608 682900129 397619296 944823442 3834605 860896084 571681829 733519814 196302213 183160399 773138908 428474774 820561396 63509770 641230199 622245110 579558221 141479287 51091797 217793644 219571787 519453863 8984807 490869664 757002472 212726693 712116492 432377871 280474132 796524197 418667094 635863057 298350926 239888632 109258314 453492592 162311528 807245868 520063069 793616514 368254574 618644620 776343360 215506660 468662578 282539378 714932293 790727022 667127206 801005548 614426998 931993506 505085 311891459 576573314 54396423 330048869 274881123 888054045 287833837 400804077 397422147 46735951 344663113 658534387 37653979 682877186 143400398 894952340 607290811 53502864 975075525 95106633 881670279 569940270 871037853 95367084 659540272 877368691 416155666 938105261 369077777 657325771 51167491 564092367 896808317 534268452 154683687 472666743 50790550 107539945 955918870 91253962 117691327 76139229 77151743 741855961 499841995 2486234 444429482 422108777 607867471 162518668 835314144 535388916 915143026 5700192 708915511 544869864 433125248 74288199 315935794 644518150 182535112 730466963 2450575 151895944 930986779 400420236 183347612 850601885 794162822 873886789 26118528 154960644 766101080 579830991 849169330 501713104 864624983 775717299 52834155 761083794 101218511 676294067 506739016 199088177 282209008 505081574 241279226 794331318 818384420 119270810 517788817 684497711 352297908 271883701 259492387 931417833 286908860 436160619 504271885 609708776 535031726 673846886 17858810 919309615 597462124 43062537 740993782 70953062 930341175 863165384 138908769 431638290 904842538 872958109 701972568 71063642 289681377 803582646 593768986 494698643 231490366 96821062 743878079 130559946 484919654 433019999 86965711 553315126 373829435 729647485 89048455 972971421 825554672 702105199 661450690 110003590 461390370 869705301 231198766 402942397 275202603 324941310 840335363 537070677 304843717 933405296 771503196 902542563 737494423 1204373 213149931 269833013 897589194 756606151 613567225 218066615 265324656 604277893 703471867 343381800 118706807 11779691 560051452 829100696 436886938 680367411 192268072 241887112 38766644 488969715 756692850 204940457 630992610 496104142 638831113 134116067 781606041 585021339 428561140 335045365 116122833 445145625 512304638 409994842 47995349 53563781 817857114 432177009 323802590 134242605 404267715 251774490 237250190 666995636 1001763618 688724865 225921052 175071825 187302957 636164106 857381472 231417349 922155474 893040127 565033352 369508470 936154621 821097306 806976460 105844429 293717884 565954760 702491531 406308584 712438852 462790073 720935243 858130757 480793943 58549275 887229733 210718067 358453004 630288364 698447735 338716781 66830940 215677999 582906300 319783386 572797890 524354106 646912119 452039953 443484467 54680594 318102379 104155088 451220154 42644303 197294333 178226595 49184093 716648559 389692184 268945928 22834466 695623216 528839933 950405388 159475844 939139985 363632465 259158885 980282372 191940442 708206223 564430408 682480967 952873805 733700081 158913995 912939262 832331649 888385141 746761030 885080474 794405972 907858179 577910931 131917987 470418040 910219388 801948975 665795050 945872899 807573631 420408120 474074017 76364726 519875824 141047960 27615448 481839357 681948090 813587424 192827377 42062952 842822125 321951517 505996765 53765209 924975438 146186806 683405944 277361125 937042258 460532582 57007414 689418836 270686149 988727140 759478976 981619786 887589041 918577231 898160208 79934110 511374197 336119967 830514309 754554305 449365222 279454578 16999421 919883889 77605063 314975734 813355848 964791965 102400628 238097289 47524991 275022793 797389085 421005941 906977005 836432813 149481939 417450547 393063745 861710344 321172169 801072387 766560742 884555845 270906458 846420467 566826694 807382601 284084458 152749988 770516314 178695153 390417732 665352987 925128567 373521413 204299095 14894114 679103466 744579453 811200352 432674936 432736169 712635945 729478663 649994784 983948456 841362484 755145124 58504516 537285462 126613907 466839683 959529449 81130064 466509985 888029639 376637309 60566021 543752323 226183858 624912614 912259394 218215890 219706314 580528017 533876806 56098826 88471195 119449802 942067334 288379381 65360495 790667607 200263855 696241930 836137940 549137153 556469226 698258874 813478227 694703060 553599600 718396005 27731892 686796251 682407874 181131091 746455271 182175313 664608419 590648100 729689039 771745208 382167399 157387962 98221701 328350605 988627727 677264693 409802215 224662678 498748497 712483257 530577535 970141588 977726400 347361591 728351974 87051836 364310972 437817528 486520177 580703516 727950113 831176866 828746736 135211859 977103954 179198409 588212484 295704744 777624501 290633787 905069433 94541788 358550887 903593965 674402772 689614738 580614601 357060242 57222314 468858520 925366943 38550673 437774344 904558379 915355789 127079208 101010222 799898262 634472288 824392307 700321615 107059373 444325069 953753099 387103824 981589709 412256619 875399029 41816610 73703642 487997261 198087584 674911622 963940664 767052906 439227982 657589543 818933888 495777025 587441957 193753146 74525035 14100760 137363438 769958931 341679621 796332247 191639064 620417998 465279130 165358324 758559273 241968203 123074572 73464128 846658 853187662 154895665 298698946 31549480 396566950 89520491 547739956 732451485 897559620 859623694 116814155 994301667 62153842 611982235 715461690 252099605 676428494 772628709 312224040 792008099 417162497 17953992 290945535 776189878 729733878 705829477 763992504 287093638 997396028 95908980 356438246 315502306 853731424 231798320 723529625 959933487 567539684 900709123 188571518 350442524 409373637 80465510 226022491 714865060 434261846 196582922 390999475 932704786 376916066 299693442 100007590 892560512 199113180 653566938 160641352 393184347 926007396 406725958 591223578 538253023 459337096 454615122 1000807139 839105892 210934448 898540596 899905581 659420571 151580803 440294133 686345226 904470653 859303999 190368124 998549085 545671376 137142336 776571331 258710807 125022434 225095083 889227896 482272481 483730488 384954373 844217519 930587343 536410789 589729852 293128748 424206600 639780345 663483157 287267745 372482257 142102736 932981623 369887550 216944416 684147701 498054844 480311603 651316682 552588631 692997759 168321587 526337949 597043093 200763835 813600507 514449994 293675164 108981059 657761803 919516893 332623402 827516835 886667760 792691066 107980258 62740573 464880647 294839354 773123241 917450730 329310165 66857003 199054686 529378605 463535156 335898795 681518137 392107538 836403210 33866580 243569861 608180746 500937562 840942464 515640989 71124750 817553077 217525441 57873476 770307941 893716741 758346922 344963998 944120420 463632891 936543298 927403634 478330023 430628247 907177866 172363439 121185760 490399887 731446097 650588172 704015760 559038181 467142301 325779242 665116864 22424046 752103640 801883134 354407605 987139210 726012329 363266632 588283048 278454748 87012762 180029019 258847627 674891181 323620170 204761404 55674698 888615147 8433661 805572162 754645912 519738524 889607573 925867382 1030956 400251756 293270237 641132992 821705231 26096707 410060933 379051877 349011459 627453088 563005689 245736587 347075202 926812862 487226671 774728668 415126887 996127076 524498859 946583459 362788407 420545819 546451279 552006084 422923097 818963150 238372076 559362272 497262072 90519011 524205466 310673474 112131168 39339960 999295482 740248141 996632985 222323126 95738112 608632453 255828870 955803126 24181826 477340983 796392633 841917882 606397689 583672930 514957050 804914600 810047605 939689106 848563421 566032555 491656090 621115604 732468986 869204538 186114064 182653320 884829799 793532102 885871034 75456373 720046707 909223659 465197873 27118132 912059553 192836071 43102098 541208457 874332184 632116855 936663709 40259896 12347910 533485589 615524776 895630359 720933853 499192097 353902322 531241373 874032525 690725718 546968671 104057188 623839940 573854912 442094784 907097882 331581764 987067640 234160771 151395644 265551843 614823170 499351914 518216591 423167482 255004572 244337324 959331623 601907102 804651379 876540891 284421304 286049977 975322214 567040171 953983687 375828176 571529990 180079123 415449751 44936161 434055137 552028912 85724819 620696615 48598438 356542130 952697464 382694992 916777929 436690785 553888549 500249033 312772360 143759306 92739743 240522434 82207385 849206904 382221557 207336276 146276567 678150878 476759921 701355235 307483249 58428415 473936686 307854212 966606989 714325572 418611667 873132497 169365618 694054214 684691488 20245717 449689177 903045328 176214531 519947077 202036750 605157540 583327111 255908727 993764317 318053751 576676890 133147963 314529898 629809141 301436152 699551294 259101763 936418109 314128560 562459088 26924570 759761197 167163754 334465832 532381860 56612088 151367257 402917589 314102093 28782643 865327741 160482085 317127819 983641277 910952952 733476875 670785600 242623700 70200351 780117087 517781328 80739363 709768151 161755758 602311923 623156738 231493371 937396375 624690692 468967555 171839272 820797260 128646403 100130556 959817437 968226761 787111319 773618000 331556961 861062371 929536683 364569810 74609153 795894190 44501106 809549977 738733511 733141501 261069985 514999483 926300883 500200875 554202013 124601725 578214459 906936575 469182794 670584661 182246280 203000851 481232846 820805520 170372455 56300560 938052551 801263799 671734268 146707420 360104302 448237117 202764733 705243435 829909391 550440205 467232898 946570490 10822734 337045226 400044886 646881418 225739823 651625209 913594063 937196040 469763246 799296284 75242268 972807425 805845704 787350179 85050836 810852969 448316296 80858342 773791387 979210399 94684600 836302338 149839383 785524992 584593708 696990485 456933744 622454021 554716407 809369043 616207048 633659130 305681032 362114330 543243702 240269631 937926215 618158378 609255686 520789695 953139281 841309498 68812578 844405383 64586837 449933157 321529311 867895806 435270513 956352884 653405308 348559256 287261412 45937291 463743350 340062531 726548514 129945185 550900749 684391627 22739876 343519375 430679264 738062210 931867367 82907573 356170000 527463214 579829616 36856498 502720548 894842698 814412043 38291621 449994262 959102335 608746250 381734887 618060402 673131329 398290097 138185152 815496368 519735180 303562291 488221663 309769626 703058476 600160975 793087383 894888577 922660322 798831448 947834995 108725010 80855793 309871750 935115404 799095979 912504243 551770320 484858528 394413374 718803425 974429083 188682023 344088746 754500438 56233380 441460832 107146443 197762811 356268622 976737819 147012934 692211906 8128143 787616871 878714055 630644497 385489597 892326501 189423426 669071424 944702926 644776701 619323617 133129198 268827164 898442224 395069171 396821388 262297194 835569747 986529146 541956683 599758424 210497124 970064347 677950313 737674631 466216878 373623537 672595979 209493744 399189361 585968017 897956016 550005855 885951755 830783480 200693018 95856771 393467599 664844309 766730369 750054720 622667478 341889913 340125766 784962120 920977127 686054098 879091637 904461231 80569591 688536817 554762011 27944376 956191010 364486240 338091795 551191669 975648917 59524709 659318603 458057228 643643443 605302828 671797628 771740822 16631467 795473189 235236566 613554578 917026919 444216418 955785140 305726587 198000647 604453401 455770926 585354727 700060142 670411232 32362731 974378145 282122412 899482164 433412862 935970851 481666858 724559740 83035320 334998653 122774616 364400743 891154614 969723452 712401887 836751300 767687681 62866134 602698042 168537557 614837694 535067094 142415814 456413433 582922289 729717042 137289499 465067180 385146773 259863238 193197269 730718114 214880792 245865276 732180463 89437018 34883001 346160135 385817723 316763217 806694302 111428695 922336323 507583755 940433078 75945364 547348182 499665151 889239396 963671706 374612188 232926873 496808943 103246163 111775819 852864050 33913640 644959597 703944125 388169614 993176924 740091792 844735780 655566927 566481447 658416223 786770993 365572249 501905256 14936296 494289706 893446085 228183469 838083052 155178518 252161014 613215525 950524952 617180780 997570463 266764994 195808262 705818379 909617193 266456962 552649093 933603449 777199892 672552312 616286179 524330034 875312548 79898501 622067836 199708736 895379193 316306022 362727788 48236461 54691437 970872632 109706451 42979796 937653908 338602490 140559231 407862439 272161316 953942118 109049195 186822076 50709162 198290580 164641761 906723772 138958469 798342221 795844706 749210139 127653251 497354320 321518434 83131785 381511853 498370216 751009236 187930702 605632642 604106846 333576996 366108375 63670301 236604848 982824610 866471915 721744389 889259147 954475364 165504559 835779396 708212858 582280683 712503269 851908114 221608955 942761553 954961583 642123340 951917244 823116212 22080935 349306291 576602409 452282178 966410320 595836977 939798350 17991080 847867328 680541256 11591165 831187026 303733573 469126299 364177161 898033788 825188247 979719850 947574364 439424148 209323247 770306538 703111069 931888709 729356295 800210223 828923525 347001320 65162048 597118422 918077483 350978944 404714610 725841616 318928558 265960199 932647863 680473906 39207490 27851455 976624938 150993455 369284503 814986667 683399161 682201257 94522127 270349026 233225773 631286231 943546095 922901909 816148954 960198044 986132939 326708554 374659234 774476187 855117554 859275896 299467072 740078114 815904600 615290884 905230312 737816810 505113459 324445330 743170745 956078059 182331290 718487104 897289334 582068276 723666402 729748127 857136686 732493822 129296945 689754280 91491481 896403548 421293151 733467397 855537533 386390572 492370035 743367901 4516494 388371576 573547771 360601835 989314079 442711326 637681291 70771795 379248567 289640977 466989450 930373376 847733779 709031912 748484714 298166667 27999264 693682825 849804060 677208162 826310702 697010197 574735699 59132789 331139482 14219136 374252150 598081341 981673844 598036028 600185497 460652292 628517285 638569260 557783596 402775032 252130381 567377662 6060986 802400189 598184193 455057532 393632365 870861441 623863179 20874957 404312801 582266704 421437411 714706883 210495396 265690535 649191933 892620838 944961850 482612623 908129706 178891103 144793423 167749801 828811243 676620068 641373350 760416173 212784897 224053335 380982774 952001577 489698271 953168871 668340395 968322296 434237524 586550360 455063277 527111512 202204465 556384280 74472208 656452744 635642965 414835393 632254580 429962672 948276616 908289396 305590582 237627626 290876224 301654849 33732052 949112366 64612035 388385156 720697536 740619042 360842483 114794984 986513088 380833468 660111290 73398648 396180314 453276400 164142111 481403337 557403274 870543983 192325951 299410046 639520874 930904912 327159321 589690429 89354357 749648377 983726688 468677513 980745911 736624579 278061724 658312667 392762432 381518328 251953138 721805618 114950291 110586359 922766236 721377988 288618393 520095638 868406594 51881099 640929478 981480382 189969876 524432731 606996024 363784340 766575158 283800065 106952477 516551688 238646684 161848485 427758873 366847199 256536771 263519297 311365944 539277701 96791031 400801607 236734685 534278334 500994649 377442718 995363912 81754942 154599082 48979831 810798418 448118467 621112242 550387742 69182477 827415308 643382950 706758860 917607317 440216903 881644729 583733523 654439115 338866680 184018537 558790594 475966703 373428044 895341133 439482871 859219794 33540336 872727042 360142490 366856242 289717782 122731355 321364199 164714293 142416181 868624388 925826217 91525951 3897967 67710511 378586554 361231301 724054189 55017415 779937909 983962410 996477117 443726170 993229537 909742050 754566181 418696034 716629681 71815475 686529200 948525528 906883052 332182691 833950913 923290102 897314057 627389688 377647739 798439731 739254032 515687551 840513833 845461946 427015128 543897256 176022788 263125717 588630839 215576511 623583038 547119729 181042569 135311066 458748060 773594201 426595967 412130000 51135973 952543637 218703596 93169539 143729311 474294927 657595481 572603993 928363388 431197146 888624280 41018802 969137438 723117635 234582659 752969814 301084392 63815317 746762236 295539088 172311132 656895205 967136116 906571754 985911261 437863290 151340862 829112138 366619105 250583933 861602563 84403804 788557271 66911058 277621353 647079082 572707220 390230463 280493014 261627924 786049935 103898278 583394313 569922538 62740962 47789041 573019252 979630787 896781494 460752284 100956828 898825020 34379545 10441259 214420152 486527019 572948319 737168084 331987612 75090072 115753058 198614185 219820837 358800173 446692235 448184906 680517176 916785879 265538991 375303512 293853709 649977871 819632805 420306161 417895995 449504725 869763338 142337695 801291154 825311618 356794941 381609127 64215419 475926057 385744114 323894638 565937085 36352059 548151908 877655775 239110697 860987382 627400407 882163162 674341126 450345460 316251696 924680109 49444834 302156476 268549754 197390851 323214767 257644877 808722663 626449919 107225128 734210051 684682262 513588949 965322822 279486984 8079273 836330625 497613329 932521235 561173664 631039230 410374544 557114332 720878409 905065155 945706416 277076338 528090395 158994830 207303878 421290866 406032482 103509479 238447380 489137690 967953863 963871486 13047095 838869396 819831021 61993907 237644893 545960605 85512108 620297512 41466127 395275936 55067488 87050353 667354602 381250080 200266687 187798654 236063739 707855767 200979387 219070848 944739827 465482363 312102555 786249369 752826686 735739771 300280891 265842926 206357484 817664948 822383762 582229545 921181336 802133280 730122061 409289237 555873835 323659174 379473940 582878297 280494187 230875571 413448904 543890195 831162178 174270696 557768471 943387553 371511197 606607055 437597049 676623054 425758744 843684247 792676311 476236335 903483300 150266650 249289638 555365410 98573251 825642322 888617723 632890 405999965 283019178 107693237 347515261 254423650 235908603 468795914 861113774 449837216 969620017 618096482 992279508 421075896 344481632 542290267 965238016 128814153 766514778 725288647 372632142 215160621 822697230 223878527 942077030 765870276 74067591 229819021 643950650 771563622 619287695 548948439 550879210 184535290 681470026 250311927 576918127 178767049 874324563 593122505 183539766 131965378 654602719 49390657 718843853 799861357 334622999 787717793 81872298 648823311 119356602 237362002 769819723 808427874 559569242 441555976 600503804 636859397 743064060 834340351 146888580 302978976 638510608 556156604 371093339 88130779 335675602 352650004 805247498 188286998 126643083 507464603 419859048 608531590 168449054 893007064 971876970 121799384 269787480 237661448 828265609 534609615 335444163 104612932 812588338 654047407 605230123 69321097 882642496 235936534 82492109 545588676 438854296 615116562 483374011 41543113 684123719 972355802 939501458 246552387 104161534 437723547 564251637 407271265 416176300 302865316 129256462 667279193 695525387 597818473 89439393 227005882 575429850 985415014 836146207 862189821 509433756 245620147 556397596 651886213 581537825 621697922 809505782 493650162 875785976 384292422 684365401 502769613 610362467 884594208 515493750 128244594 254069118 598748244 439151041 785511183 359714025 935392594 260275600 657178986 140446947 549431763 54727840 349594005 569962765 391684768 3992964 726623630 871490314 367371107 119070729 131387627 865491895 392102480 741187931 291813370 852678283 648099307 238752182 724966670 421701282 294863584 846629255 242981270 1001310994 442638815 555160597 927055504 943771996 27709918 583397480 614280192 251429876 206602203 981166559 686115192 421289986 115553564 37821796 495962837 760289363 419931545 897399638 252794277 259972898 264380307 714860412 387458903 616353713 438739562 153682258 256340861 671837308 34936078 707975524 628980675 621750273 782910341 852832375 478288054 886016523 951787501 172739968 13664940 945508908 436241939 553892742 656940112 950070180 182482538 823165885 289315287 696462714 832478046 336012067 873856003 685407814 338207985 424802203 702209208 557540805 168564992 77719858 80014826 414976780 625032300 586121179 857578303 846299206 892471135 910888620 460255111 310371305 445479407 825751790 635474749 370270999 334591470 425849404 807767961 230442941 857039189 737432958 283920168 519978085 574700769 69434304 777682584 348070292 391842125 68596480 427354631 299226467 303283611 239394967 717955855 172675332 564127699 711465806 58066159 991400893 331971155 341419518 292403221 313105587 25390441 770703521 29180824 857738522 992989864 295824823 998080510 373278336 553209905 303358371 7056451 464204465 818001612 127371177 148811108 79554463 86015751 510841727 897846254 583806763 11789364 4714937 388543268 947706103 681804969 12841965 568875884 126211984 511445948 798348226 649339835 475107978 835085496 20544066 314464562 748819373 829933545 275367253 664707556 306480742 802278955 611358187 175951866 251535556 278729923 106478392 258641506 488622827 690039751 863928889 945243103 378908938 463754798 882286393 907897962 683821816 332965533 501408814 928304872 879617871 444283087 650778537 378514074 80658731 49094234 548075846 740037685 114388944 480221202 739526435 313645403 552740515 557186598 460522017 729153962 545766656 580531440 721639314 386643804 767278865 441762765 915876110 269055536 573322667 724549058 310484832 502267790 109435199 973507099 562077982 30617325 933658539 98511643 122759498 125588886 706822957 965069365 251610916 939522943 285111020 598682447 55035840 234763078 705452464 747960107 926717367 139288496 827721753 424129333 274646454 81156090 430034558 958637582 72424283 385324037 801079004 563938347 88945570 481652946 561608442 130178713 10704757 857475459 591215730 225215768 333348666 948760392 82667675 120330798 122944663 452589186 605624908 289578847 954496246 352172730 763521157 531368233 722478923 10513241 773067581 672772236 56378984 917101830 950017806 326537743 746857904 574224221 53289370 182767162 505852459 998733100 101924186 131504275 795903607 72065339 415122159 79096353 743777103 356322274 238824104 545670223 512083562 436363011 383443570 828014610 328717986 163105235 241801043 800470666 11548645 739815497 990977992 411856522 100613257 672198202 759825800 345683504 669618311 807167678 342563262 508307737 492998189 449156191 451197677 803343110 777958351 517191854 927071065 740367686 430346053 498238922 436430707 579539124 429634816 158219846 99654154 520472835 776622101 937202944 693847636 80817152 37178132 518509729 262819995 765335265 893737350 392592488 151093532 68167406 721840575 933081016 337767177 952096685 650493758 966985799 574153023 388994530 807019573 346595958 967372025 57566144 952384858 35684479 645558575 705987922 57957324 316552114 284899111 451794687 287974741 191260251 958820799 93309619 633216296 518676724 471880585 993193573 672166683 876793746 727935622 861250399 883572782 200003429 727997658 55004387 189997316 302327355 617965977 669978624 104585122 83384749 156631331 690174572 564678243 373963465 506664683 887959418 866254348 675090986 543564977 570880409 182428708 679488914 879356997 552725207 247319027 804201671 457407615 656809536 885735632 765435074 649048386 714910324 233168967 463989682 696739991 268702855 556550486 581343454 660122407 902992361 374539795 185863197 530820536 769534817 503412642 242257163 687424268 670428627 589732700 818731847 676960523 119118458 584203997 376385597 99055769 210376646 608910981 132828405 313056574 545410358 886949954 175153891 961753508 774324303 215580099 269200920 541921180 893446776 962444159 634863624 81503231 938026195 884055366 804624146 100034213 63922858 178341064 561232223 644755759 720967170 8114462 987410978 312221034 714887218 725303485 927164162 246345333 929816483 322717307 439697139 70782958 901252506 845691958 974099717 630857860 582492269 749475049 892261540 749839904 968678895 233829461 712705716 82667004 318613563 824302307 53495002 240628530 284429755 17022363 674323607 627726289 599641295 348661437 585695330 26840775 365830747 243781728 203041239 605454053 281420137 581232992 394240943 902357001 727697491 834915608 266011673 571427357 446444586 657736854 925160577 644328980 589385815 955158128 560010378 737664433 723746296 491557057 814095544 486549650 474872390 617335410 869997827 772849922 405379473 185025669 695613005 864214241 80227997 340072614 456162400 915897086 34576958 486835817 1000970675 918361560 250400351 285681250 678570919 552607698 39650442 936865212 290195630 644061740 111554394 88251811 509697523 415380497 808825923 577762832 501036319 428542787 116960967 662310182 225569650 119879457 663755504 232182626 302628916 816328017 398916937 129637715 864108059 209236342 864545670 250196611 927835309 966624778 205241341 817791269 874044106 917618565 811912165 461786937 143165962 787088341 147346857 493958059 77274088 574734162 652486859 154808112 168062844 726989058 417095565 999625309 964772031 13444265 740276638 480467238 862630800 991382156 970464963 402391068 885147703 187644905 985591113 61269285 984445975 395984202 41391599 240276865 765698101 819713854 10353136 1001900994 611341959 407101507 61266965 932437952 474470306 457107146 218404187 697013586 165906160 207109373 81867472 430148633 469896965 536274667 343845437 729301461 240802539 983818410 955677277 365291919 153767637 878779409 998354014 650688374 742255513 251418165 938038530 172939694 117476346 361181999 188155060 799214855 378235476 289517028 247856618 143035521 245866913 322143134 846412916 327903686 104279910 802692750 345131760 4582145 422907874 292395145 296084969 799322861 790472057 820187483 736234183 352568257 717660500 797725473 241530973 679768871 364923313 500640235 355489972 942422666 326232910 480030126 556013249 160912206 793852063 476186261 718121140 929564049 443592411 230484076 384996740 475455875 947780530 215275661 972235417 878691766 706683282 170013561 520781286 512269157 771508460 445117797 953429890 229447606 338457216 718787878 98897167 640222193 299441173 423915468 874791910 277245834 912690100 891655798 837051379 101636055 303274221 664388187 711397431 79393153 320123532 520898502 368778462 652610143 672277864 836893372 996529813 936709838 478808814 295285757 709434024 982934000 65827386 617827864 681563016 497538707 323181295 404470878 665827042 877097329 225686781 827664235 263541531 180248607 157303466 938901140 710709668 431937550 60174665 674448088 25165604 715771413 218781761 566500122 1001548396 142641265 821017100 110729489 731981727 54868253 730433071 834456711 145475026 641967303 996695019 928139577 796463917 556626577 367410781 189891530 685324120 877798242 296873561 304158595 251264167 817705846 513151552 398838773 824953013 39270189 940858104 967705540 437634449 118911584 880373071 5991718 686828986 939620173 244627940 998754798 925614384 151820195 35596203 106461161 76920431 279462477 351022211 28604575 667418241 998078447 536104141 850025865 720637238 99460765 735810459 888420686 60610649 752463184 705872586 465521519 758602002 108195587 241695152 801416777 336192857 469948917 940307849 634339716 633090397 658218721 73224602 962090128 426131525 137143787 666615372 283094741 201366733 343253326 405212068 798857084 209685224 699818431 14999745 488231641 704240545 589524726 721317033 29846234 666323510 873770670 175155638 266450941 113396368 10616630 596909654 830453094 143591307 185070822 184307888 848246190 634868385 279272216 306651704 845057673 562311795 393507754 284291465 100028253 499711896 989880205 374999560 972766815 27168723 763752028 35881629 370571220 143878314 977985548 941257656 327194754 522192549 503608052 840433611 607999375 649921290 860677698 703445714 414957910 656040590 433754621 574827196 52720301 976378393 250259006 120441893 962248077 743827102 459857756 4890368 780526455 377055573 468598134 87752627 262783242 388309571 527823978 863233508 281735849 702628246 651239471 985806219 401089407 974276348 608468685 58890828 349298014 974221997 294928087 326002013 10895496 691782264 968624018 194900500 982194082 803592645 296460071 512129999 853658219 21331719 40552208 922665351 425840715 293467016 177903852 287428065 702440967 518844208 5327850 784920206 239951547 9991248 110605611 713548849 403804417 406592916 345295609 39730994 198518247 43923047 629721853 501591841 196549444 165866878 465037783 391435379 394791619 375035017 154388113 868448350 881197978 171702988 676798839 306541471 579490709 432280714 169700115 366967313 932835333 226296196 975863572 564618194 882821644 471093442 647809146 472076009 468169050 780970438 684262680 245930989 85674990 865129839 971439584 869539065 540843306 479980143 878456946 52243748 715737657 986109489 207205753 517545453 406291578 62376136 364256380 496235235 865467392 557554968 751419805 154077802 405837812 674919559 806878276 213097898 363829102 247176842 989134514 929238270 416553431 666352408 599927255 638723540 982978383 138081187 883301989 470349388 853583876 561172895 965212044 921905250 922775963 30269862 807267378 142418915 230922011 24652599 121998865 154230057 205432906 498769324 126643433 53804149 240185329 94041600 627038882 396365309 533684096 368415553 896652185 277437218 724185244 255428161 944820591 693234708 325010475 92823320 204341394 851046448 11527240 2948348 243441086 770321696 221086496 736268287 424540901 706134649 478884755 338043830 151524656 950716126 776257548 35396287 662614148 302257699 516724987 861032534 528892138 528047881 723390306 675597857 433118273 813558467 826474114 831980689 224534165 967061242 757012076 516545562 283641478 582182920 506301488 584134557 783678388 417690344 486356325 566227142 135749022 118071824 848518623 516867081 893176054 864244432 398029759 807265581 929704077 759296324 943758676 90318144 436513078 196581847 347057950 180058582 108261347 475054102 342592497 820881761 173252593 687600003 118394898 799062067 370120439 621975838 402928771 833142056 888914612 35338725 370573781 779808833 912263175 173018004 39499606 491737037 157162056 190637988 503330619 543124701 729419492 809883452 654296324 316954490 827584497 377596761 123879425 993113287 929773460 459003567 940093401 764177668 327086966 259480481 270409667 437336467 140094128 411959598 217149328 438315151 939089743 975352862 112320085 703017429 66131211 16312022 464576104 924772734 185384905 649691761 3122431 346744098 977646849 405016501 180426363 246686533 436416836 449267595 794863431 313738202 79057744 926633229 471379635 515693366 409987358 47106625 956725719 976898588 78791627 276475375 670111315 748729038 990377171 45485298 237662304 902016559 196709419 765996065 692069434 552816975 716982543 380004237 330142759 400127460 128764454 455591944 341066900 573686025 77705317 826539691 966211648 841906921 64893590 196660113 795435297 156169187 461597152 248155608 704941086 732221976 834083125 728792722 743867785 841491824 456552120 66657531 351506557 35387916 861517223 817899114 875012924 485277219 909704672 14132154 852158393 644865452 174103879 487494920 818765060 628768494 151481454 424277753 879674853 744910856 194548398 267971159 245377689 561287555 320049439 191606665 675299180 516875238 537863863 627611204 717060450 93204794 636953869 592412609 407390106 136708219 477106310 60115841 661265532 472734849 859020455 941909024 534646069 66879770 934211711 108825017 826549547 988635015 698997928 307768000 424359868 460734959 963824368 158415825 909406520 671089278 508203644 885038437 111211543 991648539 674393021 322127714 445135540 289815838 488102543 777416057 320960524 208345670 664908958 613540318 474934445 22277934 997355384 24056792 401394888 878766758 855962912 927862886 169192387 125019511 219207651 766549098 98960446 757447462 334312319 402753877 969474501 693505695 211647564 627049934 606932677 144805277 693498415 164994407 244494077 500427369 338725930 147168542 348270119 365855921 330826223 752741058 490411914 824045288 331763370 941108433 609437793 980785498 719577118 74744239 698716677 337803569 528532914 21901097 818775365 275724240 635482072 456294107 843699124 979833411 55669635 719371978 453889826 64131524 135599519 297023741 789285400 679337852 2624554 224569823 825526441 366723500 143506641 913470790 425799911 474096916 108856479 23300301 828070281 899189873 267541129 89617310 479528923 513428344 348089515 308726987 782456669 788150832 728651363 118804054 159222026 816397620 658929523 555112005 315579306 906183279 676615426 523985415 662425661 834291071 315203111 936818908 266728776 302750558 401399150 254480581 986979758 119368912 650318805 725829285 653369616 357218393 94459830 53013074 900069670 827723399 496122266 662181634 141531021 552307785 861204442 762207525 434731547 955948124 469456365 778272199 725445096 104213818 7060254 721938987 439785738 928334521 565133885 217168702 851722258 549020254 295130838 381800764 63060138 581473481 145874015 372214580 723647584 545847972 688159049 311930180 592688524 930680790 803656135 495388428 33854399 775237963 888011023 749914759 525931101 428771537 945352582 718644139 264182348 22482825 519952375 67829163 457092895 178805589 873926001 245715757 648243534 186927884 180105912 301558464 458508628 583289385 824223604 733540463 853852417 860406449 388636538 253401633 885370252 540835258 794182074 19637452 888780410 156009224 441747925 339775187 755360405 838760957 259929093 299992508 487486758 633281745 960709099 88891364 799658097 450585925 476398697 210712303 539935896 200700300 158648081 1197214 509088246 957487510 483361675 693362956 254264885 628602484 879264678 890677637 734465280 684290922 33199 516757989 11100001 722438265 1000713002 404245193 325027035 53112127 568194471 307921238 193403174 312243007 129440580 954076129 962759738 789434449 782860186 768661706 558813600 445378929 54890423 351682113 210336495 660964508 969910532 492664394 440359387 938168517 118082767 841784793 297595249 54807296 431562613 227781864 529385935 285747359 536767284 745093863 591295971 437314128 822584010 938763275 117416799 212124967 642318441 656067215 441353808 15671674 348413952 605424082 427861113 723309080 743947339 490958160 919669066 192997817 85123493 804223558 563356306 628977214 72685085 378262080 410592732 229759137 807414600 205591984 7570600 933808624 180951876 531475326 427691647 173223731 593054162 778851009 823310089 725558933 861435022 306824526 609027351 994171798 693676905 390479116 644253622 711529882 766496874 325212885 720804086 985582578 527977530 823105736 516142566 682365445 732417743 52023422 417944253 62903167 641557484 443049542 153214387 48996352 957070929 421326964 281755090 558090181 181427319 201605593 379998405 244677544 600140871 651112015 889821631 36452618 254213359 806193172 313940143 862979414 306675297 204211304 772106886 616608976 65921995 632475192 431777377 333253680 669647397 466179224 464790205 53716190 230836345 809862882 494849994 755804700 570142790 451685268 189308723 688826878 7322862 450066471 615129072 174700464 912303270 510334449 68164120 605274583 222420578 498089350 909617451 717753952 617422754 843562927 984959263 42262143 179172310 44004556 679188463 844172505 847164612 452040569 222002479 207874876 11500639 616643564 397486696 781299735 914951009 963661137 20138464 792465207 545683667 169371225 412135907 804107613 558541771 316466410 291727605 254871070 491046958 489516596 768463026 561773194 509112788 57586633 272386491 450086415 173797046 151180597 18627549 486870222 358996313 918172205 784209373 879249445 359567723 258441207 213514316 128683844 580622697 434179479 733904312 532378676 285583698 332895244 717967078 362003315 18055216 912152038 377615311 641654748 822421899 476449580 148916166 563511635 348617141 891829979 542446755 49473751 995345638 313627246 49948733 983170998 705929468 733883999 888613294 901259050 604505575 272982711 80356601 856206770 738625086 268079125 357492264 162052530 646962887 238882606 443511408 431382199 494886621 271514568 654119709 728423727 791319415 490104662 125443845 61033216 669749623 575419608 544689625 173018282 51551991 516876467 573821900 832157242 406173160 501550853 283557336 80718553 927820251 128426718 719956822 331368550 726718269 208196215 807512580 924196072 251638407 194038292 837045374 380239605 448336194 876735926 443049098 642769659 706856947 517037016 435631316 177611158 647654044 671420745 154615043 351101070 72963433 251436704 445869963 299959000 513191425 245033154 49493716 417803234 199805031 208366261 283515331 199920866 39409743 601532468 505607314 91989368 525400631 202775027 873439674 992378744 781263232 168140338 745844618 45286965 653658796 137570864 356383374 350966833 248076938 221993302 68475742 785777398 830715317 822160902 365059078 14120523 957338853 826983249 892374174 232002228 667965976 819503725 834492262 984575498 86703044 956340188 859926179 980780263 515372731 353127178 688742747 392000897 74414889 324598094 841084033 439807895 874762803 939451446 133611819 478591358 83942182 56121894 601194591 721003476 936430343 78667196 340600116 260159743 299645292 260180339 342817401 576155680 853504784 190274577 232296177 816916271 780902017 22304253 313672579 576463549 571791905 988667254 777328773 422336917 655587817 221028176 910067748 624012274 371092107 5348999 880214081 510701679 613736714 619965788 543003189 85833820 967871629 292589367 698249712 856939973 539383470 46920474 710967698 817762347 526590218 676057769 553897675 406913900 552150114 592524173 551027622 997131815 468518067 302222075 461092610 718813086 424276318 87808448 768764665 161459815 634490780 455398236 908934064 802411210 703473642 54704398 850362790 54097973 13552807 465124098 43089174 962191936 171537550 61192445 859141413 524968440 942680600 709381637 943833744 388163061 425364754 729666257 65630031 878473355 904084132 480174979 37641142 979849444 239044071 607184926 702037753 384652084 855998859 784184487 339654489 481706399 712953961 462597424 838004495 358831918 881031302 200529213 223686979 967696402 341873231 856929437 493910262 773388901 434038736 57820877 600653797 401993437 790183370 894263878 788482862 695704008 903950074 760294959 500168326 249835621 233435189 135855983 659488827 907561737 862819559 753165666 884443224 549482007 289814436 27488709 740644293 801089773 858852225 384234724 743291739 237109936 182816591 885552776 21041758 276480742 273587460 835562649 66208330 803881291 33349576 277243060 362637193 337027962 352960967 173593206 958528930 341110999 530807376 975154374 839352872 89940638 257086270 146929869 721730646 187145199 294975584 86743731 449560610 281069471 672820667 570151636 874524178 43817807 158705426 470081903 315261159 319638884 637801435 585923095 60217008 611204991 806616897 875447782 766026685 477606600 979594161 655928347 663324856 313116958 937473898 77073636 332168033 936385387 940183865 293795604 212136531 672434819 116787185 796298653 274199332 345010837 380746319 644472995 828702101 622977797 336301268 978112280 570749552 644343910 629450512 388694491 804020629 212907626 971832209 367281450 699904263 735749465 891442330 620776543 730479914 337145308 825389545 49822061 548423268 121542444 709900790 576162688 370175734 714639929 364056742 864753752 549381592 731522233 987080694 561050326 426542047 618634675 974442188 485425669 146937077 79805197 433339568 209811334 114031400 258520283 292976498 628703938 788999230 474841842 960705094 430691550 819577784 151255325 848984914 691627672 221779425 231198280 396366730 355154901 937286322 629568229 182122821 953550115 88769593 93540513 817022852 60851847 572590889 318994023 241087526 863482546 286650074 52908420 558783577 355100470 725729141 705625309 18330938 675573697 51653991 692006551 377488749 137684891 652113619 367006487 310411052 794635804 41626858 505117889 687753206 269169818 612433189 619466562 652691909 942250243 435616468 344342601 83818389 481138558 329843412 14663064 766873974 277434004 537106583 876161153 391468844 37717395 578203285 654512716 227918696 959224818 274662391 358599496 587491705 87876672 620778257 463446749 281197566 46127473 741827899 847930929 62298739 81693378 604665939 404169219 487029106 889655842 407772037 954183065 710513050 243762442 588223821 237187600 496613306 654337525 433777941 176752101 436220121 17651376 111787562 345936305 866431503 276673951 57918869 543979156 648463180 935483666 100964025 709500960 897864399 339577748 244717478 733344431 795406442 158192537 584754589 506203032 366447148 218915 279265695 82355159 637515121 924225842 176335907 87037661 744146472 360889435 45388810 269921866 619103269 648422443 242947030 50400978 316810272 82047127 681745776 688138444 491631887 928363030 134764717 921341682 471598062 293548784 229894335 551490313 1000269490 928457346 64061465 595104126 909138405 44591960 816304733 488361915 454519439 626974332 789043580 779021063 228464246 692752612 870649394 75682600 437857556 269649797 727855521 506093732 988869247 209674420 850075435 818460743 573406409 975968065 274846184 471438363 575113692 80478560 293722895 418311264 293098771 111180236 89540989 21079741 772443189 439299730 593674380 352759325 507001486 659152327 460067626 294533768 357440370 719409154 563151482 596567199 882035285 293146663 478608110 858981546 596586622 353591334 114878704 222413755 818618278 217258592 814372274 469443839 272413610 502722677 599356016 526212361 235250710 500891555 637074905 806195511 994248901 234811547 990090768 80409584 951440190 876632090 287823801 767561049 737368141 906142749 26978174 690783039 463182906 722660935 100068500 796592225 236304206 642218516 477711283 383701093 321657384 995157503 830953103 653478606 112339062 954853904 989793609 648266836 359284883 277535982 748351733 271944895 719071392 766421350 352098194 452678709 785250639 557231183 203066452 802560951 473340827 428989073 966819185 472761345 412993292 127383850 915374764 213976119 107841514 351090532 278567283 710975508 421539675 531006453 194427849 530368980 689180301 13546010 747306124 150632354 635650772 946490984 672222695 3625949 886641642 425326492 660955573 730338057 656686525 905605734 750528353 834994573 700515083 400292766 990031974 790589677 551522129 643507199 296538840 387763432 920906921 580318195 744980775 914245102 443258598 377650063 869895011 151430019 359656881 633209711 103365545 401069648 216551717 353647789 248330201 62647374 766897 567209878 380744205 93372839 133768221 515689789 859627707 856979555 205974824 62480769 204218951 269902691 483359617 730964336 28890862 809290298 453064036 468122797 964466527 311445307 678968670 251955408 599993169 865772624 333857618 535186371 555641079 101408521 970876656 230529624 575298901 752125345 160431679 939282475 847618484 145357661 220710701 217579812 660723936 375192241 127340977 713663403 476351858 116302444 188819232 664012486 65735078 509070443 294672715 815402860 425953175 663240775 939106636 489063653 661593511 27439333 479061691 998009851 439964311 594616616 246096483 196771151 233128005 871122609 104824456 827751473 101774237 897314232 838686901 479492285 456195328 975109175 764372526 667562717 223472632 705668758 795624600 425714497 932394450 794998726 964532292 21414088 447548432 922681392 67384830 51112274 335118619 352989102 190093466 957605701 553438202 722377757 189485754 331294284 12627095 308968969 332765233 443891037 2078969 742482723 436094210 343120557 818224613 437950137 733395438 379638681 323920078 772664498 168421876 892770245 876811663 825558017 635097277 182573382 570040647 57382898 674533915 813703514 182513095 914052534 753621534 599656776 623917400 401293076 654212411 864590250 573440270 143868335 941693083 726273771 827895415 283749080 735918133 67709158 102247893 335871773 432824014 83648570 398399144 382550589 844633699 436427570 750989324 184223258 623923802 760955439 775172991 831208635 68672668 557791327 750981802 996686067 498439504 913566172 313471560 367362040 173835351 798544827 817720323 588489005 623575241 736913844 775291134 378479074 31067596 980447640 379767658 853577068 666691961 808811135 868460874 1000120723 604171135 955556905 727323312 539768544 533949356 898885234 624570646 585128192 840256073 917112132 310678844 196522215 172248785 840906491 977072027 945228275 454324121 444038025 587962128 798814340 368575031 182778147 680188601 22933223 655856299 114223715 193222186 390235510 679518303 124258028 356825333 173591246 790883764 842971876 103050638 625494671 839899836 900303672 462990057 981579731 577941419 523130011 645297415 423855983 889867675 332241082 543936221 759932665 433713856 332384005 390615682 348999652 747535029 989292312 200798390 207381405 577888981 474934550 234842277 302042399 88764715 830475718 882960812 901295302 622218435 459275266 864291283 881329430 746859432 903457698 449641876 66683129 889587656 230971296 188916908 399615883 785401353 714185546 777207457 285730777 874079989 924214394 586571693 384317450 969420388 583339244 70749733 619284618 343120893 776386619 88011757 866112150 476706041 964558064 677223694 163371542 318194842 762029376 440500530 419039494 715730420 332073153 355407558 12536202 362911606 824081195 333192144 701752109 611516936 686327180 385542165 206306580 250831381 817687990 896999172 703130237 742946779 930700386 327500382 406166870 225762587 888472543 698145537 168469026 872159582 849957321 772168403 750696629 698339782 288961346 244495167 115190892 970644612 894453197 97651446 95140922 589896668 548554546 108246089 543597688 475672498 838563415 768080732 951971798 920948351 157489462 164876513 756360654 378341243 630160235 908049911 689263937 985391329 365565700 439714259 340250967 191169151 242100645 400957997 703289321 472709935 978279459 721428445 364899720 974298417 781242963 948001974 596458608 996001103 889984511 144007009 720077903 729961497 504294501 932972807 204424180 857776740 245866702 504316258 1000302095 242128353 850707406 469643606 610000547 507392213 996007948 137419919 130600294 472349427 18503997 366212725 340941674 906729308 909676978 910535536 641217968 24725571 997893252 783553463 942268109 762577205 283250902 259370367 27990796 714859480 613441565 640008005 457625795 474699182 587853652 163732270 995283387 494329591 263578082 469816255 429854951 545225588 249003951 363877119 560862979 857754968 222192126 268092104 703582594 731390737 660553622 847602475 563376564 474488295 161828074 855288652 305292640 434225821 763332487 167705998 936707885 951997859 358639798 94135956 709141299 278873808 378382546 656024961 775607745 371598423 47099043 90162116 878395507 492966353 92510740 290529753 982855977 896629050 964930021 790295074 45031196 371515236 605695087 85556145 974041385 852604619 329415502 671068113 434093836 981496619 336200246 301659299 144054279 103545394 879822530 702144541 970332879 330240962 185651634 452937271 585771818 717656381 578434094 775559445 523156545 251071373 408985943 513790084 465602492 815083367 553006967 245973390 843208163 258826968 740295077 752060576 461579839 393349972 673324602 394694904 177753102 501745125 734046451 234263758 794519477 276743149 407090577 729923973 18761671 713508125 763658673 446331383 572674182 806881816 704174513 975134534 393135652 406052419 890166879 481185018 587908186 941354323 834422981 645128363 997793628 588626059 107863646 73707768 186050522 178702581 991050977 388013747 354032681 632149139 716976318 915430887 252334756 741006255 368461350 565298031 865267475 618500968 365058668 199508704 78139385 223328377 545595850 409854372 112709990 147130750 512918654 142001079 771836862 941630565 693140311 347289973 666611132 393233288 928845543 909523813 886134123 551058285 184416551 257981480 468259064 356385781 40350613 681542029 778234857 468388004 659167809 338249563 785791564 12644405 388992967 565824983 431157427 975925466 745318198 847366780 249351811 350597427 462823144 843377287 177126014 939251081 29492239 712985156 19470520 169655318 510437989 70434670 878880019 163003733 228705931 204000038 789477284 596373101 720814684 854126410 373643534 749957430 209692156 125751932 106658451 616106298 684463977 477659568 904527356 106214715 23344849 846829442 672917574 464888754 917620589 799225663 833619070 49229954 834761319 879130066 928805516 793111009 458651137 119092820 827680987 858442809 451775650 899988621 550537423 247155312 938330296 402268993 241346759 397914635 656143621 805060900 577745865 785933843 52123872 652072660 52187236 261370702 563803422 404615583 113677697 223184965 609292751 658636486 64312544 773963318 654428774 646686274 766326996 502200696 204284824 375398036 859555983 874262998 222799227 817743923 349688303 710713906 646522286 906351330 517549175 37059637 265099465 119964699 669551695 214728884 436221173 878373800 957016694 35213867 435623154 837025019 160552331 125787750 223181477 657549568 288801701 433503275 584920215 930684542 835363381 454029141 555689834 813579034 556159718 127377827 273529048 298746963 372015604 763944952 774603637 317827444 814792514 922660527 808337284 614078602 150364824 918966252 293725405 622015942 125798995 281681208 570253747 487719851 706791669 162847765 155409643 790826753 635141964 125629150 475103856 990765273 737437208 610857210 269048358 419743535 862728698 758642603 309223409 337589292 118944255 592853144 905503150 190716409 83835424 228939657 214204030 731157121 990441634 364550270 758657600 178840298 843243953 997284359 128594627 906075595 862898002 950019644 584681752 244527750 395589724 543514204 43730013 194587813 662477428 830857476 449699888 311530362 78639884 50890291 597900682 241471168 261183977 4051430 650884169 468643228 60954865 700720457 82281586 116573291 943854272 969085360 60393997 167103670 831921871 281703857 605130285 167530513 344154534 563439420 939973415 429992651 750183719 159201921 119757471 609554845 532496220 348928538 349579889 828377710 883016212 300162629 57193615 731103364 784450142 972769340 91572296 791894034 369721177 77530045 608141406 817948072 258866248 442188011 366089369 651359932 837052439 72502091 769473094 84232203 486789358 736408755 446594819 916448670 807794854 923781831 274187454 487980134 566222877 414159051 800982775 391257176 29323762 166990668 802630295 9289309 14078147 704248433 517205533 418989899 982079250 710355167 915450476 504467371 327124358 69210977 284432221 13968572 245367199 996088471 814466073 631198942 40014298 356823945 1002225442 650006161 731866798 226718295 241691576 852456303 128139652 537251102 341054407 204289979 259215687 191521364 868129825 557209671 19278625 344325218 208629682 392794609 821317840 235633848 532712990 691479177 583880626 48651219 283168770 879969288 421484686 905306764 527218434 7556956 630198070 453851066 775336065 916116846 993158929 121176382 376106610 712231875 905722102 88328329 612970607 393983489 290669126 648854544 508883155 438152161 331674388 680696602 199154831 169706398 622239038 691908466 231863046 811269375 57779028 287692081 481476141 781600468 545838143 440273991 746845057 408111611 538591529 374457906 530210868 373149965 903122805 576603819 514900632 544482376 365105287 646794088 806925704 697626445 87761752 448360336 854184487 860856010 980137907 232100689 260734411 730833831 966723435 556987291 484343244 545484577 631079050 296188501 831347000 399275250 768648847 37363471 972150373 617282679 338896400 771139035 823175883 868208630 122918661 549679634 208128170 417239947 553987615 662276770 830780796 117191859 726627518 762172753 425004233 857232980 284739467 493587811 162796617 843741815 703096176 714537081 74488818 645033501 277124838 401910013 509112808 656506694 250494116 262782788 616016418 369007358 872553592 472613216 596680026 287561283 187683162 739678246 535899083 180708607 779299510 725320053 316509541 923258041 735895678 452666504 339886028 702107348 962765354 896655283 665112856 775659834 444786755 178953792 629027055 794527487 689187177 389620681 798256117 97619115 691722400 641181250 847289419 957717737 542027813 916874969 926757775 426718551 523974060 778209375 464264475 448741468 576124201 660523876 106499003 336073608 182366167 661985862 817560852 123707332 347442668 661794556 867931749 290429640 482926424 311166528 27229675 352935648 898214547 670909897 776569394 922966638 47891456 383118517 928390001 928283878 719885851 299779640 5981966 98227372 897320645 821773533 971351674 878579901 754201236 21649804 641296705 267416082 914282043 275809577 844764874 559211008 257113140 40773966 542045426 752278833 571615563 424438015 428859662 689620340 324065134 942168916 915288866 505076989 980077036 794261144 553406551 61440798 859603090 242978312 645982328 8506636 457366485 909332684 487625698 399434330 255183439 384066403 550813185 475962432 151183731 23758403 953661740 874609357 914709752 903983186 204275578 368083502 750661931 433808546 194230986 324270186 555851565 936882389 173591931 398341287 833101912 378733401 762175934 66106745 849331403 477788633 496197335 785757986 754024864 922121574 193847257 764846413 426805033 779327366 619126824 628406906 294386167 240883068 149320136 218776014 376385456 901991304 248873348 791889581 416984033 347405642 792533855 58544545 667782160 248658284 24556953 701380496 832995066 501953292 267690941 581951837 517512381 215497213 856716295 918854323 327609126 308875718 11610167 793526636 184398538 59727448 475895317 177742725 381495412 133613345 653437352 503217219 626868305 614734541 844551086 900764864 847333909 36323138 954626162 15733190 127790610 935957506 74938906 487186924 819154582 151948412 994698865 102805692 399342744 150416858 236859933 852765956 243667624 253771044 361325473 934829247 516902032 737971971 347486047 649580934 469287954 675111703 751646395 688487795 305427326 532196759 128355861 231775229 105627544 846715002 639592921 649976113 134228288 822969290 243147391 293550393 67428210 3696624 571499126 475081102 679033645 682810232 540797792 769210940 555906140 660501824 643133950 420606916 763931786 687516571 893525801 92468431 779988053 109483832 446277720 142129163 590697766 869135441 728204589 36981329 877874298 689945520 755502211 336808368 889097186 805638308 452942862 636361873 239091060 242602578 839181429 799427280 476446530 29601326 38829133 650600556 68162728 886048114 405374251 341691027 143525036 650721560 113104258 454739764 647890550 809829899 390050199 695224178 654283448 847255445 156690441 335037142 50781898 295645135 724007449 716061013 982442685 507966232 236029158 316278220 851887593 654694280 120840033 117123063 439684870 397788945 227155428 740456730 293506123 834081285 94454614 365918036 656377234 58548518 991666029 215661101 547101163 24919618 761849842 260537758 831167290 774064368 630154653 823352177 158902194 857903604 932861455 55961211 458048451 619087588 587873144 138071208 804674327 198088004 468342691 472141648 854248770 296795571 922063056 332064747 92578836 238036783 301290778 804560271 176479300 685933557 37227685 966713266 778738959 200257346 951290295 485523500 434881443 692995624 819508236 415581145 284037278 117651905 371775824 343710862 613781466 879410999 490174727 277659928 949634796 136889698 703460301 138155397 271478922 881812050 857640616 524220837 621367306 593156700 150652052 5172993 499989247 780489034 23472160 475386944 57767366 53749212 292487079 719124714 650102059 791012621 558273955 880367609 974304125 530138851 44760349 18801728 205161499 966206256 326549143 128785192 250776792 415741017 622433532 990610939 358806033 107846091 152052201 364835824 191254596 798731830 477545133 940144273 765654347 998717305 912750046 880323759 87458170 485040136 218002299 545079407 650419792 211167012 972682792 79422679 954538439 268034682 717140310 871750074 907499496 346436231 7168099 331705966 115078562 147107367 953932948 312328350 262878282 714846337 424554494 998123471 5280192 722375017 287152029 742251100 283566882 743081952 2340297 818989865 630241116 866275935 957522553 675111250 985156624 595493714 667186917 930169788 364918892 202273595 159680762 805376965 880715707 35947624 434270075 720963616 473213947 707536031 105712616 336746590 113795144 380739362 808444605 49785191 359135479 285494309 560339602 314646761 616851133 497545991 80996488 440098253 634873890 212543503 564913772 58824543 331595597 297003228 513190931 637344276 353681376 245020747 760539964 850758883 57070199 862449669 278444870 784484923 245267289 46661305 392648683 329953204 673085878 371270920 192925869 858356448 689610553 865239097 50151230 576469106 298399392 28420766 104941860 876240059 270607830 550496696 545059291 762762976 933556922 767867732 927684418 521472441 415352683 667599629 514591041 465473214 618504469 771491090 812244875 496403450 129010321 83068782 779152661 685208477 296134970 182590286 770077491 864300770 169342870 535145734 626386624 550207453 363469206 967346535 303533984 477270648 195246091 260233651 873443969 545659672 382141325 78826193 882193746 505784808 117266809 120352201 914500841 148724557 907861373 17387764 682655179 81058285 794417959 956407715 281067392 142994953 669869678 600372501 984703049 536168978 867903580 794167266 912950010 872912220 431394578 538670924 802449926 114620050 117139713 787399501 437531525 752771450 550325522 356868078 322557620 519502817 118862614 799176602 60942497 868699656 149467992 586875018 513635432 22308048 785565686 484362009 755931235 41930302 772581886 195258698 151507934 902475259 107567745 778556335 379442188 816665919 747475357 464171197 846691327 333349807 455394777 903910161 918842258 1032856 220703210 969770627 739067047 322771167 811355088 87527342 148755005 582129972 170080827 561077701 971425137 900386886 523063827 134725043 495496380 358584823 304557169 512045502 92476877 546256939 293474746 649544285 546088391 136115426 861365748 341583231 918516252 869555040 306227982 480240025 333208174 241341408 393408483 791614585 215767559 192382772 878667115 538851515 648865304 527203493 631522550 262945069 732724050 858349299 670050537 59028387 123566636 183527294 449716586 83705580 386629120 270229195 258329951 55903555 85302895 914885474 654276800 519767769 609856910 348405760 336932867 896995218 939654277 14014451 205952914 217489787 99746923 635408074 538690638 560273489 63774517 574870824 557105912 531016472 315722350 445188947 978758475 36968161 429694867 215478994 737002525 743784296 32562753 653391890 243045587 751484652 444088728 351336562 493955419 378980277 487714366 358409944 716451376 795819621 150757652 460790556 122645798 262615954 977646665 965560148 718290591 949142678 933460015 167312658 120363787 146134262 949699147 893532491 551082176 441631098 799101232 395389079 780964299 660212587 568760830 872459227 260381311 154413311 768734892 383349487 957800464 730041869 91827656 497385187 939555963 682234269 363438853 72113685 312963485 462390418 115544528 298070804 127176197 768763527 877624578 112491037 523776222 460721200 399344807 763832256 614437196 813383618 174284703 258603563 605363269 362056355 6214901 766916341 776324110 898943867 270852769 214502731 960653913 148693130 341352094 983260854 641921557 966095005 198662560 298036347 999079807 498739072 300686788 411749528 572660324 573537786 857526903 941736092 448533020 79540013 975369735 535958651 833276168 544359788 832679216 462373118 457641648 315414455 672157044 64119639 871476702 787255520 602254341 283385232 199871746 152552356 694326008 523497147 235973069 562426085 728899693 730036073 307795588 182682556 48652250 547867559 830017043 672800223 646603536 525346177 586601981 648890003 322768363 669937095 403677580 801937812 309035113 578386028 643851873 636153891 489636230 179416248 286565262 172048686 697232867 668128681 419253045 540938419 772034544 698633964 875473297 665715927 383008804 537822807 897206212 719802366 140574975 821597476 884927987 106570330 954889407 903637182 57092547 845434743 612938094 196173593 685490900 500647431 369932868 779399789 967749329 162527630 80424108 158530434 812450487 416519403 707849331 620548808 311872674 804767307 486762518 592788699 655525182 958125379 612370743 267924463 742863896 785322724 126345471 26362603 697365475 447485021 300351028 841012037 735037412 802363924 975977199 534377741 827325937 72695890 740109009 585939934 544447395 356809068 419077612 752324262 447954128 458440084 863219244 941998668 687656690 771080851 269961914 264734242 164536656 264073861 287813903 202859283 605859252 284039609 793024507 928820776 187117470 240088057 709734511 694280561 280754671 393762136 582472128 198897788 128214011 54576442 165885463 675011206 729574661 135061320 76401855 57697041 262104166 831998340 16687544 545060782 519689805 286239791 145373732 167286341 229660079 320102785 184296111 158422036 162902732 2780844 331991641 105404749 71015274 489972429 505879116 881263782 732943731 1001642912 557425341 115812808 555002173 419475215 844316815 369482456 929706870 568411565 156768130 571248190 30289558 411492180 8909728 383836439 838442926 657389130 503175345 38631869 1001307361 570208211 713708080 880822329 76049017 900662470 653052083 244527706 809431402 425712623 939270418 927049602 297773373 358568423 70141343 955187868 645193499 809052992 64494982 726753968 360789836 111380956 330602369 833394390 60751800 869346378 849065788 681496367 745319630 82958442 5030796 213748080 947430398 997979804 202484429 480489730 222618178 111672753 865220779 418790310 494552115 525729122 344926404 453165530 134712754 520597973 821649183 47861583 723990087 117508544 869547500 917019662 398084196 918732174 35261369 199162500 271893546 922560853 192673455 525708793 276962314 985373532 90084347 257777344 313356052 959153392 477951372 989019332 688760116 441397294 489711475 839329108 813041104 478897950 684494564 14070267 986257417 479931696 306846279 342389707 469291794 131152497 570923402 426988369 113207008 468893937 84038407 828423165 413970246 172743553 236403902 255635834 224575876 686588800 655892554 306947142 732330251 665839506 564580465 645688990 831625707 189752408 34085340 906652174 943822338 779224734 88892938 793501041 814594340 300055316 483048833 572575457 998895841 14210829 332471050 204887471 639804023 851446908 510565658 282329059 481319622 86458922 813404068 544727471 50168868 366993110 767770758 731748325 459758988 527860899 606651864 378282296 627232269 980368056 406049105 286227355 829615870 717653949 834175924 127261687 518907792 930361686 140657073 340535327 106747897 930501965 456830529 930301068 354614863 958315861 541495406 118911492 226150409 878365482 312818236 805112301 626864814 793283142 260898775 285832513 25925290 635232261 690198138 191004805 490180209 606773903 879494204 718490172 922408858 524303697 632031667 483213006 931186207 330572723 467354811 801933345 226778802 998787928 362186057 335508970 192694094 97212700 968784558 637614314 68298049 512628193 871713969 613763429 846340978 70311508 183567585 164103838 45919775 541514351 746138210 447559482 584782562 469327014 551085620 376731406 843167388 883432741 487023617 194625182 966683305 796584622 90493969 197093452 580395187 736771315 713669647 705124077 346171718 891142347 142354146 454311294 594822163 495878962 211879955 133367565 616986688 887225159 348293899 12513991 443774939 709280619 924916790 40990344 174242212 14237200 516970702 537668273 182038452 997846264 663001593 88848124 586834185 546560061 148914617 130893469 945638696 525048960 415369418 529844331 226551526 874422912 389657083 736988593 810250691 614011117 896884131 609303494 661665319 854442272 37991310 849788162 782304122 10519596 794705983 435470191 81219565 618378909 971703395 394599677 669519321 873248600 878896851 364350104 605243730 281969442 702653624 717902685 609942908 233427699 205872987 934890065 318284371 916482759 830343893 69223070 928343932 963614773 710705038 342249775 211492191 135733598 354187010 199702322 800176600 236419071 106386893 906661855 200199552 561895172 523537562 270117566 397554854 4250251 321545677 672604291 339462392 587783664 499607049 302145481 40361602 416298811 24905155 779865873 923263839 920818106 75551759 40599599 105035941 169660112 432666053 602593638 508966876 621382810 535771445 270829421 566048561 951396477 527379911 637486481 50062053 648185954 122302972 189715431 261824473 891872316 123897594 446142367 551555529 54498764 58551873 50982374 764472700 695919225 762419426 229623339 850538428 708795460 554488794 635395825 929324186 256277237 269013574 442769549 597891912 544393618 565878667 12819465 838044964 898148886 267548039 441256977 459167616 42735749 501696580 920149002 29318880 981119050 761120243 598196679 283719193 907020301 995223062 634524243 258235334 209722681 412561842 303217246 340758589 166283220 738475979 479517316 279705100 996618208 542711998 380368141 524359902 791126419 112093190 454801199 546985335 412651807 218049960 456198198 718660743 670584149 510674284 522816166 398262863 43326413 7856563 397713557 326342198 878171888 513453864 905397390 762386769 714995085 723599681 688586461 404759049 61951557 367971631 430456661 617940646 400910221 203680740 518323095 372896528 139047447 216323632 899974558 14514367 302028520 109408014 507554025 551814042 47809433 825242566 488856360 73683898 971261310 370619292 135297751 246607946 800975585 315849207 475700057 110225458 868479385 789215249 93397081 883097374 123451678 1808901 485899441 814503523 255502950 315463666 640471585 701458658 1001900314 624130359 50895651 887793648 537339082 522444866 725309956 428090473 55888610 602196724 737443775 835769057 375439694 95829568 242894355 80114687 397959258 632864759 912382897 658626533 25146513 440812515 903767109 645759390 865936971 432917415 516199107 505451231 420827291 218078776 75806240 361247511 707424383 501349928 742715537 894464088 360502192 622919497 449769791 525459952 920423641 445152624 674296823 191114627 81657510 90941954 792140058 953767735 159156014 28437236 894492410 500293672 347636426 596316980 926087208 486324568 988518664 680997611 239051878 13765807 612900923 39558804 316887905 15729947 219728592 290062268 130829846 932015020 428516689 513262277 425579175 802280389 558083923 439973882 124180622 211811639 398837005 408846528 983963070 645798518 744274046 546725036 162653421 550867279 869354606 17347449 370519921 73335038 142169485 335075303 848402479 777603966 387071383 788477305 747207363 808693335 594938161 117304340 130816950 347447900 492665806 540689732 852306074 315870767 545212266 341540128 364211657 8904458 124555531 727708390 155298600 87659315 930346126 692582375 582332798 564760917 983610635 963994243 849189626 930839691 205393992 967049431 100259002 97857908 38102149 147412359 466954587 361897569 670208855 293100115 897017246 110881562 246399196 545066278 357336112 493235989 199837096 486642854 971105611 740773044 335471256 791992397 121508116 256396452 800608263 449725575 953085225 427782707 786786820 823747961 148951125 630347537 3432048 642061009 365540570 678367838 62994215 607075066 403587934 384836706 216535811 897920338 128191856 194553850 422332604 550377073 808916961 127491844 399036988 295909327 801695345 569267042 706361368 946586672 847146696 402032829 514615010 139292391 588995988 671815153 739111626 480453369 546483342 202467878 622516469 276032717 677638956 978582566 324270922 96701165 841777193 528643441 253193809 510166180 981894456 926803397 641526512 575788884 549105612 601405187 71155785 324623089 417869170 859139603 51733085 443841703 146823534 223594717 881736886 683452100 472100000 555209082 31151480 299945091 890951480 887632854 269714572 686921039 146499797 571625344 850240647 538819104 314865648 647942524 652476990 199268956 474241022 982943452 2720179 887860042 653852622 587955341 21760598 931704346 78223548 603337897 417753836 489922122 607756899 19713149 774833951 902666115 357699183 521891480 450943425 55440446 510176481 686889701 129704870 718915109 176724554 254317634 886311462 58992631 259762140 601121691 835468027 899359788 58672912 907742807 146709115 188950037 298495037 489692370 353548019 173014884 761818283 505021575 141498614 894319521 998487304 343850447 733622393 519768103 38932786 620127110 959742081 32078073 191614239 669821335 899957606 371353794 1001531033 294236139 38981234 199857502 130499629 817218080 795761553 622108501 912882903 111115967 265832038 96571070 655567613 592367913 86884629 685816190 190452368 119761294 578281111 714576434 931928195 937127521 672438352 542594583 50044820 283191352 273208847 938639092 259045148 989495170 670596217 481030216 58681384 108842384 344566199 4788251 80791149 919419399 904924262 182425674 484448774 497319338 298386957 583162785 346609473 9205101 730117346 45995567 729877570 726675727 593629916 69932784 591026041 937259464 759291118 884411399 117275723 667362082 106683651 741499768 940547038 939807207 206067233 958341284 856997129 966710276 910448708 102010274 986749146 947560734 118554642 931854312 999010585 496982783 864776176 739936534 574551265 924811109 525607967 223786987 643115084 178562410 675875006 25060569 942834208 885091395 833944061 464330283 218831395 863806509 365533252 316410464 236498032 265079420 967038467 3534034 581445629 790282097 582843808 209893585 229910913 50977865 845539337 735652665 656619357 198719064 489912966 371560352 923011109 588162555 291723367 345966693 922747228 492327916 137246234 145444475 858731329 244188377 543623331 332959931 70110107 478696288 261175492 385385764 757999415 74914020 447953973 645162464 515661462 578967524 889879886 725519523 455184068 838698271 502454480 580909692 662934408 880087187 495351997 141697304 300259989 268799673 675965106 968317240 336270659 893831587 669585390 376747297 820117301 545213476 487930888 159909190 509681694 724534915 41983062 235401087 532025527 17042024 769448995 192655969 107544046 799510295 841570278 267259203 132584954 57792002 149096535 994016609 571666684 382914857 131157351 918572099 802468912 803828509 836697298 19485658 368316624 618334084 509847565 46826683 543147667 378751199 870043469 302071481 954059155 704221025 642960359 440503503 749165381 109781500 806269028 411192343 87319939 689707319 365914332 124228079 928441615 904194583 994155188 464332910 864383818 546389265 2399542 317991376 504781120 645519003 378197733 377453117 180204186 384059344 636710860 351759846 189288343 617886633 195533350 231328564 364381830 154879449 390198968 384929700 126246829 931336325 659422413 708528946 542637949 525324073 293317445 272104553 148078854 245136984 934637191 455432728 78392615 822170692 614920492 401777144 593926790 483208983 1995469 557538080 515911026 40025135 188381959 98492911 924989982 214110379 271962833 308073959 540988838 148030070 677326733 446211255 212384544 110448118 614815829 872196801 44200854 382494932 178761200 665263811 247196184 303817929 151407597 687067913 328509945 399792860 402082882 200786297 617470879 70979373 752658165 351496794 743104893 445100891 585811724 614512412 945857771 537777861 418527041 583584146 459710915 482129904 978906054 116660034 111258309 975816997 631982696 320284796 442496929 678881821 343081407 749837325 82080490 563061321 220398628 797916604 40107603 676558431 733248131 256224807 903070073 161706050 956684241 707851692 383879798 923001677 474552982 889262908 559519648 426158141 673972803 676345074 983218323 934357668 570044667 80959033 160921254 705524940 915564381 200040934 995084029 311076963 136074805 262132983 469309606 671104685 981920951 146415367 924700774 538427242 455238270 846072773 291681280 385921806 647906551 898192154 126614752 64400514 501269606 444026511 368606673 277090011 975848565 127003796 996960918 596148587 438488495 152849767 375737344 423063602 989241571 313343649 591162575 694066272 805292052 322948673 153050573 934938586 97329196 13430694 117783812 173163144 637771550 36277542 485696390 625007701 24301970 345675072 437544223 643285077 168033560 550011988 591096273 45383273 37443605 856313614 18859958 191402354 917386719 532539818 923506144 331321687 20115411 325874640 439766545 371881882 793457371 35945750 662876074 675674964 17805358 850236587 915397185 580638722 953521881 897749297 818250543 934175197 58140382 321756214 792725925 149574482 564030707 375121746 957352502 725861164 575267753 323386896 861825190 360051100 836917459 190696644 734956144 256215428 153243041 644378629 253505316 150599468 211316395 401526693 260759140 937542158 756433023 708080851 267337521 904369269 947104891 981096415 319003106 384115885 315023053 808132859 857272792 910797059 341757600 940540376 315933656 815535507 880993066 428048108 920418486 695638513 78524360 579935912 971574112 500654677 840332262 153173942 856055437 593892803 148167602 236043793 391699774 382194543 308029950 80730460 722585337 281266311 75539370 798421889 235817449 93845682 681959068 997901981 977582231 547342656 501902010 573550547 990069908 102923857 80787025 629571435 50448295 896138439 593918816 590955854 379883498 467374935 475325897 993013178 135220182 666285547 921783630 316284775 354594075 607452101 916384216 366925218 287813015 356030184 41937449 426717362 219104831 925546844 614568954 996580328 680407939 884777845 369388131 465069072 92644141 96010330 976464409 193475053 178945731 767119425 731192930 915806149 797207811 353420657 789684125 768456230 261789415 214927303 916424037 650272074 89699446 18451511 715377636 223772987 693094078 765280991 336527787 17859031 88771732 420076761 811356620 746140622 225392984 470642878 406795284 83048883 386363681 662825820 599394805 123048552 994650947 921705420 4188135 827527646 874617068 239546630 37351593 513203219 882986157 62719183 610434294 282847765 830464852 967568106 693034630 880660243 678850185 93132660 181423897 735893885 511317331 536077329 691424755 604851387 137348315 649588601 901472677 299273821 725010968 517302415 40010302 663428933 222894148 431524673 526716660 850636554 260106204 135997167 889493346 462292369 327630641 498649768 322461819 123927570 365752480 160497617 678953457 238537407 201250623 68914013 419735731 350354583 143125981 922239906 97232188 819648810 5280239 257306104 146767428 664112540 520984336 863628265 608018723 439228471 861748469 198214431 352166001 907291770 759031933 744292178 925314533 290744044 727423250 170729225 234639095 568104251 205715314 78470057 215546142 498628290 295504531 516320511 908985019 333075903 897499839 555141177 235145487 749229999 426760159 303663269 40316595 45626237 603653236 783799030 677994090 803492044 867847704 299405657 578577424 705012500 330654872 323846544 665104941 210569648 318995897 326084143 66813605 451760076 974144196 712904563 804437888 506405626 837009457 467277001 255049541 630396922 548508615 341988382 119777064 310510427 609845542 295629472 617703257 434955185 669197527 960841216 475339399 182313307 822728659 165807847 415259743 794105501 952622699 72743597 877270960 277230258 560741076 165387143 718626133 554653889 552386615 947700934 824651497 404647824 431210211 865908722 559031622 411893618 718868202 127391158 289236390 71822062 849506011 512892855 740978232 164706208 510871378 438553629 775588685 388236057 627824982 485619857 852751785 505609650 343211549 990803941 636242702 183186454 35406999 9139292 967901680 782436181 345868791 685721204 965682112 738714509 561713365 685183124 444315672 484422345 748668024 775339563 849506827 733542904 634703797 681540157 703699058 494818927 710444494 364079581 393021100 681555352 352696741 948784195 515703224 396818782 132632343 866976507 71796112 533337574 906154383 767892276 374990844 165014354 808337221 688357746 1000185038 461806134 231074500 424402856 958494636 910976746 280513282 335007710 533273668 540140602 137051146 81976326 780776368 633813050 701232235 395795835 288785223 222237584 611112669 550515239 963712323 91971451 407383785 500276238 741728318 537837498 417513393 498649247 345189486 552214899 77239390 462155769 469094441 295103044 97975468 415146003 151623964 724343155 611684531 841663262 866981285 153255869 483793363 980161147 593728004 526177833 40092434 78284520 789465554 727427640 187580042 172868977 790988850 166544441 940894729 260363970 612851713 359413522 983070456 829246800 31370350 472849699 301075322 124304030 52157777 105531032 463465702 656997606 579044647 325316027 48415385 743610407 183676265 867004834 761439414 153057017 800342461 42238554 323622100 569740892 291632889 126828498 598096570 673316644 490182479 772704240 644216884 548952250 61487517 731202919 462686048 470026751 957963709 305844720 329568557 771061106 764027631 174609174 692606729 196733854 922054612 907341881 686311773 697354405 332775556 364248325 160622148 452354806 237758049 276091186 675074315 804176600 706335132 789878568 496516403 459937425 538386495 832699670 347484609 753417441 107641629 926596664 374042470 323010997 700781800 105236124 240044318 538927215 176390649 792659120 47484431 211811547 982273418 795290594 613431440 702088300 856268131 831559218 216249553 154588011 627317093 959526330 425192898 852517333 47145031 225168496 568874800 131467593 70109473 921416610 252318626 628238774 822527295 67687193 201645916 157509349 508253309 855776742 733422800 433445422 80882889 685160949 696709310 827915207 953384254 171420109 926506065 49052923 790128750 483769155 489333580 332328136 222097034 832253714 521223383 808109458 465775661 748514280 51381029 163265251 68581102 818962246 159450225 633230677 846209515 994833373 774878505 2545672 375668490 573840363 194389374 498176713 716226557 133159734 130184468 238889621 306308784 662456814 228228557 468617858 805933486 147343276 629812174 983101057 846160815 631628210 80090495 457852613 118583967 680453128 410304475 999012755 59436882 179240653 140769275 660031890 120702466 962527669 468003984 473770301 398830059 96570472 642820332 515094497 598303409 253026078 264678642 153513743 690492931 582408762 923751022 222039551 441767575 247172775 69089113 353990707 184009775 292247654 639318700 646251016 994835702 931273514 915147834 40293246 978901355 238846911 944779070 824995249 399114793 495574482 983545790 806898415 510907861 564215725 145071779 653163929 49090544 455375534 404590571 253427375 900871483 401872295 117589371 119197383 433531547 270395041 841606348 37913003 787929334 539393379 520691612 808398632 611230827 624350167 874888850 298563248 257511074 920414917 627080625 904987772 261850283 479865051 817576192 337324387 150771576 570633234 86014665 904957576 706754679 618539935 580159782 538056318 461916126 652613037 320418168 349467592 638652174 264200504 906396788 665591599 89133825 34416034 407104059 8728161 396804479 517128009 968473123 449240156 992692900 982735354 428393152 737107523 976771061 647282564 374495695 142490837 202720218 565399381 944800449 959554637 674636940 174492337 569350467 772493552 121287877 912457074 82329691 470661210 826769900 849564767 639916483 448123802 438269308 495275592 977574870 613910319 268632993 702974459 582511370 198170880 972035146 768697356 788853151 591544991 594533339 594870957 612735307 732576357 603512975 283535221 292885350 78668857 473341994 8199179 718416021 198925360 164627726 417595105 185112957 646414232 818846936 959252932 612751623 882225082 292517543 157241729 279889014 166004101 767074522 388634713 629825775 483497308 8905673 306706876 112429598 288372153 877622076 826083057 12522367 375149508 247435242 558697050 998570762 549082039 155805359 965380054 114746623 896789606 46080045 200989048 711298701 253181912 5649365 661704334 301605300 928597732 161863661 984849487 210438029 15228366 232193476 536957043 111435567 149735817 856640170 848399245 749259586 375850379 959268452 554409365 1001122442 23615646 574201982 430838705 697061242 356946287 558958272 673050495 479622691 812109605 801142632 161411736 742512431 261054720 27970884 270177991 379067741 777668727 452010065 439570163 306692244 500991153 478323600 226928814 218361236 132275026 342606388 714233302 487041011 839631252 495725378 670815555 550701408 971804471 699776509 403673657 389689822 201659191 754837126 524772571 290827426 36505780 270614174 674515149 427923536 948630016 832352164 3548826 663691991 710520399 759507609 311930013 16489318 415231043 646022865 404819116 649867242 630877468 62636489 440236754 122135073 994191829 436365589 761086788 969390715 511195975 199535952 307920038 415002126 188920509 235370280 399281820 472654280 869480347 323829048 723664672 331919143 100020258 688986246 486969604 323872661 409366550 230288862 602375749 795278103 701230076 692893999 223236837 570867535 274662571 887224341 165658408 981123319 788942864 530388920 751085981 901078742 973445336 814153499 678360694 491677524 618429681 43365132 443204518 173393912 391828534 6574498 184449383 383173656 349148733 760694657 753198728 806265240 303678264 409272107 633179298 858666868 16718479 496966591 133751750 545734286 17433736 432240591 873556931 100416144 712603216 87862503 55808744 813059337 145599912 893885375 163703877 302872165 407010792 661799851 26623697 499300017 677475679 648938866 744870972 528329287 957084299 154028459 445171196 490091360 131850102 158896128 853607004 802517243 275010111 966593277 999053421 679977513 453879199 23631216 990408368 467289718 603555721 21886308 229991942 56981379 814827978 16965936 754888398 520368152 515669121 106951343 497030019 579955406 95358963 894405820 333012255 573838827 90052267 551491634 915287379 981168385 599556049 87041098 240874525 81636239 828808721 175418931 486340456 252894822 196795776 567275544 633603340 669898512 375535153 382749821 58921513 589934309 68003974 106107799 136783395 16069984 164008378 54645011 936045848 475747546 686417079 708509885 130140446 150305606 322511978 307666972 435988011 986373583 149476411 265528615 338097488 853068073 818503678 667220701 710857039 177838623 107581558 644721487 849921043 232831935 368090323 143501220 751619661 554014072 470293120 142872444 763043276 997119775 308279160 124948760 741699088 319535897 16294285 374393124 883822428 327098742 401055209 802647506 772953297 981067430 352064291 166120296 511430435 934754657 721742428 467286659 730055495 554931501 587971681 450838024 539001871 971141570 251002244 474712122 981640119 195911352 227088158 90311591 226574977 919879512 476055971 75822411 641840521 123437067 168259577 257755150 892822452 166924838 286909692 356719014 687157822 184047581 671437046 931405384 113095745 189865468 126888860 753396129 758478662 888783451 362928179 682816718 316634015 870026170 96284474 561445318 462442048 972725148 81531481 984307721 600902067 833416971 857668834 462833730 932152145 382896089 846408296 460390073 432023403 721591884 375447696 34130968 309825371 422161337 916454794 579890451 745002878 744712023 256931715 471111917 547052656 572251334 158751910 759046913 762947658 983449426 449523405 680780878 441757698 24274422 21990986 706354793 800406250 232071810 41954874 719373857 263849511 769962847 187318461 428720795 918629177 259508821 574789128 539074408 111877609 273269320 713821853 527398563 538684558 36417445 332374056 358120141 664871800 633233932 105165531 426634348 224426809 801479079 316239762 226225188 616458588 805440590 230466007 731358250 179885515 643753664 537331792 525817015 809779701 640775841 223130336 599542269 111166234 199117471 994447023 672783165 559477772 985081122 755141110 228985991 900696793 326355462 406548010 197868197 293796691 711855705 638178531 945725577 903773751 640939946 568016215 43909593 976676250 229210702 511145058 193832493 708172917 20149786 25901291 740700491 84081354 931551385 972541851 865019677 285850550 807024354 636377831 507807626 861932003 280808083 549031721 877743196 994164695 544498392 835333668 560569223 976433379 964022058 895649445 152230534 464707008 236327829 365038237 279713659 668772715 525841261 213453859 131474566 513519225 462432343 764061372 281996591 141727341 212491062 216073855 580510934 419070367 323292536 927422096 606622139 907927935 444039980 511716609 279712175 903116869 224617617 201807213 108444507 368909694 282016947 723027416 809668213 993817808 943636588 892834268 237885479 331971340 882657091 572873838 648182436 600735715 755793666 174731363 58691907 479648760 993344294 88231084 887131150 42082840 233775804 715084504 627806387 324405877 921824101 689610003 346583897 944643033 472799879 191947110 296752082 456453646 85931465 891784275 115927944 398238632 674424203 685133824 189863151 880866991 938733306 875535869 901071644 547800688 741908269 56444147 842299333 616673517 132387335 412238117 83307097 198770090 964036799 163962071 890187326 326930107 464406763 365603522 340468533 768113296 632860483 572862429 161405589 263225000 224375 843275663 107234256 594426271 731375318 450804818 526841924 224397140 254573122 213699340 27521135 273028935 360945878 611988269 254895594 425635781 43833354 250257787 519302250 213218396 720502903 875973294 509686225 3653591 971953821 402815557 680038581 950313432 562005928 991888769 128409452 772172824 517145379 589486767 832517836 192351875 753002649 248430725 656239416 1000666212 801487295 866334886 654353810 447851808 720750971 766382978 325376002 627514799 86630412 805665562 68146218 170369682 682331577 484952072 129780449 753315816 324449585 777905487 93913773 51686866 48216423 205637626 875474891 111121409 893336834 339291560 930834898 813466761 942185051 53391494 760087235 316294740 123165010 470681729 504990949 697186556 971084811 438960469 819444132 376641339 841930998 414662573 48541103 695148936 753831697 514913209 819389595 14720562 11026563 635842519 185960257 69667701 614525668 280608518 530473907 334981903 604299588 891712005 305062011 133951617 650697940 608297467 189809767 616196297 399724228 584791375 832764746 294988259 770929164 342563508 1001703752 712401374 63250886 39555022 634604416 280053779 649823575 388970814 437564568 461119292 796752520 464235992 971383781 22166610 709789346 318450648 16870364 31487395 447805738 654744578 793621660 953555418 32695074 274858677 334643910 636382826 691132878 738741167 5292080 567444782 632643822 6705977 10516561 841895488 796313262 484012449 682078499 679631604 842444914 913291033 265479286 962833472 762336022 575229316 348021773 885963208 234694327 62823495 986767466 828498530 409715562 156315444 393059548 75046960 886251080 693273573 953336310 4867185 208430618 915920437 109126268 944837299 477533389 443445570 29397729 762193827 240473760 828049406 915369782 332240555 472338419 810030460 300777019 677537526 12453087 384803478 121593726 117649197 651295077 396841215 306755598 86041281 687243422 989579246 171393155 498226188 764304043 749585751 432469627 928824294 627636109 100927093 523218442 132166930 490469455 206085505 827210760 18839993 790483813 725770415 393016598 575075292 306408839 721444767 867474279 659604950 189949500 802814641 560015489 261652109 220469574 572011080 483823877 747687987 422546401 173746611 617476090 653625882 391518567 298939666 876622970 893866585 768612408 373974980 592643009 293926981 771996768 323416509 404037272 868635774 598718588 235620868 973899262 751325795 583361395 150926200 148610393 923127286 853593844 250824010 739670808 18951310 198334225 108858237 866534124 82615160 783389639 432629850 518212137 509304273 693405650 116801390 109881886 866178648 489359304 817400753 493707167 475734318 977126153 449947140 532155108 891683154 1001034624 610257655 466720804 54320709 221204545 998721283 301929207 201304843 426383833 476597482 858681090 379127560 102286040 847861439 398145897 835474303 690405648 92256632 704057624 409664476 225063648 597629082 413025146 25683879 916832433 410307989 99187702 19397193 375670081 3057543 639162492 366720897 750712001 760707423 747339465 496138704 430335921 972512185 671128609 273797680 398192390 17183767 625730866 758338132 71341994 181775761 57924446 315463678 794572152 974409171 710640150 667596987 135688916 602465755 982762515 276616754 509719750 74328955 887478401 463263380 134119610 413503070 175341534 63631079 568258136 151966833 47465128 84889096 270774707 103936944 504642378 194547604 661223042 250820446 104994719 95846572 992403583 829193902 377290073 389998948 178872539 331053301 270379085 926662035 571870611 796338610 316115806 373546393 976563539 19086541 574349920 596306285 838483899 948880589 245565367 830073479 671501721 745678272 588058356 63636851 929013053 69019731 914206009 1202150 834117619 407387890 54378392 463688882 373011627 536106973 502015437 853002764 868132853 919160425 466185199 464913104 999775413 196608200 603801947 463926138 301990538 961326530 819908777 541735607 764670316 781467956 108859824 347863892 744934442 214176941 954462550 951727543 160370544 142229462 403369890 182987071 769856648 13832101 725910923 110804389 757567522 233561331 344006604 667560836 117053995 329965148 112649905 369502578 596422663 582637459 166543805 717462154 172764717 91709279 932977124 65263853 780357150 387896527 447758434 626169116 768065141 248385282 590942157 670054757 740407987 6554594 698947675 117861889 57388080 105400795 570554553 674418079 912989252 482776703 474913375 49931539 429675028 9533301 551229331 238642779 921462361 540625614 933196347 682693952 415341882 379187125 90713590 26118905 442278263 81294646 162247103 944252936 310383573 876430440 904204031 80658415 799595830 134504161 189801830 339622699 72329610 613447468 544362089 203761394 665987762 362625379 890073251 417224145 627831722 576626211 379880446 599402852 375442209 298687026 65864462 465247322 866511323 168482423 848976968 724782548 645123515 114176381 992505168 858207235 107419042 196031326 757625288 796475115 293942713 440975137 633492088 298685865 846360677 138531842 363173397 623279392 739024737 43140723 47585548 991459987 794953002 328939099 26595930 429850831 752839957 179785861 120425937 740722850 861053702 462701968 88625913 189790371 540696515 147292490 770891046 334271286 592017070 166929700 985915399 218497827 283565015 474193477 359775782 653024232 955134853 461592903 972315967 577253666 737396139 48296022 161563460 316044053 560918937 218195881 81474558 19985770 730652555 503440889 791782999 468752745 3535682 406093682 802018309 888272069 840619320 648749757 392206677 932646815 298132080 701670193 149747376 782464451 218246158 517372158 136840487 178708409 999635521 846671233 312579655 516915457 738537243 325558047 410046038 752049581 684448722 122673996 617267861 710390571 38347124 919597210 925802112 655169512 232217035 620695482 778130312 241642434 100030818 514305411 816057760 265227703 273228299 272654602 354208688 334831311 17163342 882162355 56169251 9732621 619533611 335155466 651416746 383929604 410150749 772588275 558929076 854012618 13869688 969605880 669117792 302470441 654511467 283773834 330687989 721603641 930533977 284767993 283625930 378240485 718933185 559693584 394326980 557688369 868129985 232729011 804524758 742858328 716007840 991942493 164989702 856136452 314418154 150173780 14865825 803304474 234827684 334335981 963726911 661904917 220088778 921506305 555556507 99747577 907783748 632788702 160650025 618244539 534298994 262931753 545533605 851765855 666011622 550550057 545981943 389210778 621928617 579744643 978713209 641988113 478317350 622733228 610655681 878190135 269234115 731164376 702578322 991217609 266334224 306369040 495842208 556726881 759529243 993607524 325136785 726536704 939045329 815906105 311013154 814763799 638738791 382830291 342065684 521216050 445038690 712241449 928702932 600930559 10003326 503552617 273150398 897923882 802776728 209944211 928231248 457174519 986671740 398293121 559761152 721073885 409470275 89096724 227917890 479186721 163376788 947087021 68043591 769635749 833974991 703769242 627958234 85154185 807874797 571333852 215200810 469092285 873134015 874395689 436819598 706271899 908112909 862930006 240993609 697508782 242561353 647624697 498620376 423563965 169170256 685187781 185439397 302588404 204926674 348046157 102686086 288786770 783966091 581110994 652558820 507746660 390297087 298491292 873475129 136172363 248446031 207389068 14793785 157574580 944502739 284028887 554098477 425163376 542440321 45829276 884931590 192143263 281337304 613752797 131440161 7205215 149006904 995355505 289783806 810703534 267586298 440276666 844388678 197852246 929558114 748122948 137423099 601593844 382778283 237985494 998303513 590701053 404931337 247874952 68346685 453700833 172984058 513940818 815053533 788712601 306316942 893911838 408800371 906449609 67563904 713868076 653507753 890686231 6973531 208544529 433218609 859008668 428044013 435992571 764127240 373285250 117901859 795174732 92870990 681227798 135512984 592468632 503711707 117880719 330122711 659812844 25188766 952240688 199352776 62769403 953515431 965822972 588899825 920705552 129358323 748152689 952769542 304682925 892749344 653716670 827837635 268207162 213635800 552072436 211721840 596912313 693508986 133053589 636375796 198479724 712938979 595269819 173815097 843136679 579219561 431905353 80454512 736422432 164336865 432420134 184678958 748199307 2583146 50006338 658450265 641953624 54782275 352851741 960188110 941839986 781750414 520697628 507600514 417676430 918849727 223280839 181917004 881582331 37063443 688082708 958742444 51201111 467769167 548066218 355264469 659920861 876976905 241242363 967983933 230922330 423203068 9192674 312833771 933539259 280973390 411641475 467841818 512368178 947785773 870784138 245946095 506903587 645487837 697339895 841751440 495522552 61403030 528265689 785168482 529535930 677888978 120072872 153151625 929592528 162912847 371236864 280214484 566829470 589123323 259728072 932437539 427174922 557402469 923182601 641898183 320317801 357051071 216071847 304362093 33634183 796256982 575731812 385089916 71056605 925438269 617495107 286392862 170159099 587460593 181496067 298087128 726346158 583484179 592116325 383081438 256978174 507697947 628445726 646236797 406624616 451623978 509492560 861170202 739998147 405229631 438351470 346204720 731225116 843713578 868820245 92526224 471589529 614740017 802376743 721488290 441580381 551234421 805103412 201348521 643552604 987356635 877429370 29951343 516568191 534369213 351398380 862402701 593235878 597028982 861423577 466700143 641015873 868394845 414121052 470631906 547961117 942084462 741360023 909064410 321731819 58337357 779614558 559141369 309452177 503373847 173731000 235745073 617508194 581565100 225584524 361734485 167989049 457381319 89169635 993800903 35198468 712503495 17419130 385533897 745256749 879680186 877105132 241467826 552330883 376760227 82819568 501861044 948170724 352863575 572669744 466092863 717850101 851398174 798522021 950374386 994880661 912389563 706798703 54466626 918400508 292356902 925574986 183359697 603698190 975486601 618088275 663742829 478731664 37624381 311697510 981973349 297632934 319522781 708993113 69750223 836910666 36640319 799064303 63312952 179460675 306611464 417258923 796104145 124961842 523644910 469735007 448294560 663679895 824423981 253642241 53107304 156638791 295716685 199781564 372330261 351530525 378518175 46956427 583360798 921860602 168319700 917588770 41585708 515246668 309052136 673231127 641401025 369140345 123870755 51473212 459720135 518649209 458820309 884776339 692096988 108699795 949041697 758665220 790200506 151971942 677212037 303071620 326365613 683141756 354839439 759184864 295009423 5272710 438340811 472819205 799334608 400929605 716943897 811882891 980293542 377339416 813806447 385843867 436973096 144433549 553599210 303735136 103477577 687033405 269342751 366545895 573421327 130792669 317046951 468748194 935870549 874315067 462745648 166738613 168224106 503837825 616302785 31906438 612632571 706946908 547882578 433037734 220412124 188998167 969238209 746844053 360633816 345432376 6876386 619977995 140928805 563831973 518230350 820270481 533737389 813644758 139192781 544044019 228048517 886226104 525293657 893936945 574174269 687376914 343198060 492010646 309769748 165218902 10961293 114159487 516355966 350338701 632094638 261006008 890763701 103963534 533568802 237608893 867082867 593647873 885620506 909931536 63617807 508679679 196284230 253915253 233056486 480656217 68729505 574674252 231091767 148908891 525404390 497824523 359845632 432996352 196817904 631078718 782895090 753698646 410118241 712204337 131577995 513015024 160393437 454446698 966958466 401872708 683883736 696735991 627721890 472376201 453794060 424717698 210822937 242496900 826123453 291737141 384574361 947444742 692681543 796518216 685577346 955814952 588004526 118554117 196334416 727404300 595967859 955987444 749609547 962993493 464832804 929769572 523696777 805489349 236753163 245041516 968280904 688311017 286467829 502856635 417822781 125325148 499477042 116868357 361544293 620189690 113807852 499148702 465648856 184437744 58861562 584580543 879403197 716359295 45377242 312956948 651192106 170145505 645544106 550365633 661048994 49635109 844579089 52141626 305167100 77227177 888640527 770205553 532734290 515190021 801113507 129210841 200388454 524276237 71328832 634939310 427713026 1001856081 314097943 277690892 442085052 155972762 640310212 553148365 768114244 815972858 983587904 381848720 936701692 778487896 616088429 741116173 162099570 331779511 683941529 762822402 268729236 52647913 391581159 626723867 649956879 715309892 736023990 476429393 464634922 984628578 203001804 711545390 188616268 853021201 943487629 613831629 5860864 376412307 870816070 495158244 617906837 136781278 429839069 158715556 218385548 840265743 40995330 945967913 11833239 708169840 567845392 371122054 501562913 491331922 58483737 628986463 9735972 644270809 393818186 806284195 226835662 607283267 224805129 278779514 249818509 193991855 917367189 175991815 824149812 283382978 568437330 414625817 881535968 548066758 860554810 13332493 512070837 503660008 309986794 497960058 268495655 541307577 161433859 933273622 834140755 315638755 436259076 315169130 234919092 813398434 25153678 441772567 494508580 475170302 259938176 865995364 658086717 147525018 233503953 341687293 134335796 701258497 859707621 691316720 322029584 57606358 402088861 612720921 770807375 980446281 426254061 269839436 176905905 978824136 256545317 623223581 717835794 142194119 528071880 918646393 310725669 82865924 588150197 785365538 628263360 408182869 68878877 262473250 799723980 862634613 584189619 35739355 601395341 598734151 278399074 239317174 971875959 958152547 888816851 372781887 137553073 34765448 625001045 862756074 853249947 868997885 270069716 312589677 18877982 125606740 971829550 857316319 172014133 764755074 373774740 342107245 676245050 3273888 597676848 150520633 827415046 756873052 966695208 600305510 942696890 650393732 118803311 835274060 90795599 158887139 814416241 350555670 877416212 585340192 518292165 49510186 469582358 28230334 511268044 528940043 556717785 26681533 409756958 632951926 216931927 343070157 444321310 363294928 606590524 378276222 289147226 84421860 634319960 541745759 500855385 554643054 301817497 534846228 165320988 879375480 948754098 349379377 376011440 669854995 673428560 961502946 111897173 36757150 439890087 164434164 253863970 709689136 321074267 915655698 285035991 102417809 305032253 16777053 8366560 274606831 783732646 991110735 43806740 122966322 886777711 263169863 596287684 832038503 627931636 450583836 630346779 300359574 764941553 572348271 702999693 871498320 849532418 323508022 272781611 16503839 61219139 968754271 840751094 273451986 657550369 337016328 11046337 589259383 514688497 471933621 607384938 911042380 694322353 570493355 131386725 622395837 798149517 773824781 237369144 356605659 371368126 553588585 221783727 473979838 634415500 944991989 926168102 82145191 716652608 55261984 717157887 789030858 169489420 101415435 125211944 791984676 528674405 730921045 726899119 644117183 228149252 832923003 457751675 547404585 347513460 371320658 486074912 22160264 51287117 504375907 993071289 291170585 918489922 145852492 461698310 620044902 739055961 324070907 856321026 17618437 959426281 549251613 556066156 831628594 803145874 367691971 51493191 820596141 667115621 588164510 584722461 335608342 123708201 725558369 511668980 402078019 635868258 148493875 579539959 863627214 215353123 529528559 513754117 479473904 326671526 970454248 600379081 639599220 126972673 75815766 41871770 354724030 157797165 301230018 75676090 869027977 450917466 231417222 864819013 519342455 414715803 182659930 937829603 449807652 889599425 909047531 13073514 845158238 327488345 702653939 270577691 628495480 419512491 559904396 407353538 30641793 2350474 253002610 187168939 235259093 802309453 680233964 849001419 30929461 236449160 760992807 442012969 451167358 910036757 250044181 663405954 596675134 448578253 894874796 287375261 824167511 434180919 547381688 52706002 357551901 762450304 639434432 189534757 320682203 794560725 445873059 832239305 291680612 391996630 388127186 151396122 627404976 430182379 507935867 199998605 477863438 1000393228 737737316 839538668 424964958 598985828 57620897 524142145 811163693 97905725 651313072 321406553 190018129 657273558 659449003 985807786 879040980 523252271 91394654 718680774 942149824 664353181 946187324 699020691 153616887 122143680 285838621 894049665 191076596 821592941 101398550 904676802 298443520 708818145 736045800 102770465 687834243 302946249 267692744 898415015 537825191 545846736 341009322 133349474 908116419 422681218 189216356 602633312 979201158 293650475 401660946 173036309 524768630 737490703 115072955 909178342 958162310 266428279 308072619 77233201 499935641 68216539 99496222 472853390 808149949 472001211 625004466 125615783 439694575 764197656 602319236 543396400 240525197 120240373 782062099 964237610 420550884 421143115 304765933 319304479 371397219 461572156 802171364 677635646 230005384 622848097 228990960 876533559 164214376 412680233 601313154 842469395 370730423 568138121 700568264 345356482 496278738 429226298 80408831 134141619 604272954 950250295 565401378 529938406 284804620 993360102 61676053 67903409 188098843 657762870 814011883 852807841 112154720 877157226 621226970 921149510 633188945 215474061 653240096 97036141 647773472 999195749 603567810 400097985 756663380 240346587 463206580 664346107 932218935 368278249 119831483 960560540 425300531 662990572 1001237297 886946251 192459848 386896652 226374110 181911028 597823991 902425412 648967250 424341610 341391460 83561119 811777798 757118835 187676335 637861019 263870574 549516562 439013093 296912640 814855157 466477206 493556202 233389856 94424410 460322019 622253274 578422940 794563145 775048398 456061996 850598993 443486854 312001440 450496463 639957075 298594982 900276904 81552170 597151069 985666452 774672311 949963242 230985987 869561906 201605002 425247729 631062104 374327886 396700186 810552048 949380321 147042940 325500623 264011521 639365037 891749811 822758619 380227635 833076222 515967628 408190448 525511804 903825358 147220889 160494467 1001846638 605933973 498841605 392793075 98733632 872343392 99854012 97016237 902652390 562631799 636440754 998630332 405492514 984050047 199053117 310161525 974224343 668366484 74227978 378257127 132010045 666279485 192135297 264256237 887515945 88421599 978216606 754920255 536489069 691478108 539217061 636116352 989460082 517459081 115351208 276400777 257017508 702035347 193810254 969216727 148950666 523551810 781971917 977999783 276970331 656759947 302406041 500748275 43983709 635791270 287808171 78918450 531288050 540216818 868233945 974582155 674864744 489556319 718985953 224419750 585609356 535680059 733627225 494189677 176187981 427409975 207624862 414209658 290270851 420707540 9286979 732923402 189506725 613541179 540332896 280354525 709726457 854176026 423783702 894224499 732798212 192619994 940722980 409963469 537288388 762414282 622697496 9825177 389901894 65063308 715239149 431351971 181218668 394708006 592106409 561279590 618046234 293343199 751218829 340296070 314744818 738496479 700740668 97458510 57162455 775640019 560887127 842654491 931114471 36751723 623878702 356918760 566250792 627946632 122565534 441767119 609472601 354187233 592825498 770129320 604699374 113468919 221570389 90637169 868233517 564081042 200906993 336659692 104414216 48341093 904088987 200085089 99091444 550815222 580820817 770865108 645230289 646349885 434803656 687609041 353797403 321947212 16104250 555418234 399631951 764210263 154557965 585427771 555520482 359579635 850896677 210937402 700276780 45262920 372078780 848219941 100520843 465447900 697496982 243647367 415241031 985658395 107430101 991163648 517371554 141215767 479247831 523854085 557438794 143307851 183813910 129830755 352966469 994837632 866656684 793506696 895063884 1100572 433101044 933334949 320878502 378178694 663266551 787737635 690233017 458884832 254232723 908210873 137925700 640591584 66715962 734149756 17995331 659043160 425802351 945174781 608227655 218068240 525514788 274601682 99449155 871950430 132162519 629438206 705089514 994542559 504960537 306842423 888634708 354919451 730018817 540964514 127756640 17522303 964955280 805504785 560945976 175936210 414766961 497853317 106968819 237811344 802002606 513096687 27354128 684679239 567961553 656304920 912806122 353703296 910324764 785012049 349106765 494610779 900911477 21993554 145802244 479000412 636522036 788370256 11361651 825465097 92201886 609077128 184303351 289299194 963034147 137734471 666907719 163089527 654971683 862162548 810743543 733677970 967443751 906169083 726911361 551735244 628562432 510530854 711006347 651852462 800160591 858525466 580004548 716325404 919845352 16116918 959810828 476239891 948478539 144228369 954058874 559682449 103457206 547343931 809917852 366466594 267536281 746901271 287368995 978167022 48031454 895884756 327195601 935558113 210701841 943001335 342763005 467769674 885013324 241593692 368904416 477728611 918471723 110495302 740595320 627877381 771428931 427896673 535963037 188774689 436331912 266785179 762713757 539078517 39823596 375072093 644884717 103157838 523995209 208985110 820572343 186108649 942740142 828787030 822093133 634291749 550482094 535790033 840604609 461692416 183971161 225667537 849910961 599478958 333808548 937419992 435570497 600264486 687174920 726534923 44012987 792315347 653938778 707572916 840047643 431557902 734323257 256566584 638760128 295870873 34692886 998156469 910874564 579575379 679159461 504400376 216050787 439487623 678764075 730101867 181725477 664183967 159433115 662451653 176562760 452799315 548065925 853912779 516166788 497293296 659318024 854459694 228949616 108860568 129401771 302569598 321343073 608466582 926986731 893997758 947144310 413341646 254343522 306903420 737621414 111922915 491468442 994661039 247424573 812752832 985786254 126829762 554124362 902204403 540695518 115208540 679697340 569752319 599537890 696550086 422656445 131737053 54269415 375197285 978443083 853879574 115424595 379820374 186969959 230153169 245422414 105183852 948626521 323781261 997669307 58185199 419273672 67688948 812811909 512634170 912371560 704550385 588200858 84234102 791972084 992329659 13632783 125687661 675576466 703849442 60061539 221390719 302002232 997485775 616200286 567046838 880332952 555303771 880258076 821120080 775527387 607844891 504583980 736211692 582202240 276624030 927975393 226005399 705697507 453999528 254089035 291396857 410968009 609624218 648559188 147815605 317450972 212930615 656101019 298159422 466950673 539970285 927025253 110071069 397999646 88187040 1000972012 589454906 271559570 795194214 441895964 212294728 916375115 592130182 634287257 161565522 125366331 173826350 713330933 709139654 98497282 814037436 15951864 921131645 931739407 94673628 182907279 510591629 612405510 853457482 655716025 530870469 183960320 684183650 736354452 388187838 773780379 842756699 963060007 532169364 700774979 443603459 867291164 883590453 904527295 508676800 685256860 443286436 283701963 817371271 854178894 541978025 226856335 483275328 949790250 819550661 603698624 881387108 110920338 807754049 349910846 565819343 651547250 27104748 20852641 614438022 766696357 2649798 667476536 883598431 767186112 297056151 558460171 833312236 204957599 227241952 42076988 707779727 102208491 814045170 555763452 21792158 903684727 511899516 882250982 401057646 491956875 578168590 707461101 918282314 562040580 971983446 269967968 886360542 791450042 973020841 957389411 452346359 790813625 553363645 991313485 161545663 63012339 44139020 357926972 460857312 973587777 630292251 148038262 508073549 314376641 172624470 993287821 779293631 86809256 769837056 543777922 470257743 664537254 535817136 8143252 530533479 537883165 596659590 617087527 184810919 700171301 934861560 758967305 783537009 565732689 444568089 648811751 718566843 113693509 329033673 332448965 403821696 803430057 244928713 563214287 737695808 522154575 359672365 407489690 218748415 864932132 128140249 376742182 165335705 282721881 722118027 5064993 816263780 659301625 691332855 762685133 31463720 790298861 446514994 680007659 396304076 793903455 91335844 324182869 107010449 196745043 109352544 513989619 822064633 244752712 543772656 72606508 364869482 901070728 228617826 990705998 913926217 435001598 531119768 921314115 861570526 54297563 372270236 756126964 226982830 780099894 453830379 208575780 687506388 358272721 704240688 994984013 747434310 378314399 476307343 716279817 302116959 366368253 460867222 769687938 44235139 517781903 901328209 565506860 865755556 825711155 8383358 80884931 252021820 275280693 657774331 228539469 908789139 256991174 582963398 588285975 945831210 633213860 474637910 736097351 808672290 159879057 419005654 747365743 75834269 534234783 120005898 419480621 874087737 821199953 494587285 280028902 265637056 522416621 753916453 926664468 471383495 481058087 125872790 941838468 361411800 133529762 910598205 745288476 455156779 628020301 237024394 277505850 878952865 489064315 849584897 225251109 988614570 488313810 866587576 885139880 473682112 754881534 911410916 41267346 298035290 579756869 192563205 166270293 609344813 461302555 58858347 207404289 614765122 270161061 16067935 437439108 615832641 491501548 709843021 737791199 742688280 506651703 58298278 239168682 117688260 743839592 37436779 492390461 276380690 569303277 336446287 531485529 478607661 660906750 937143246 181728786 881928738 641710825 455705318 833394065 8497454 847785334 779009806 728796015 344516378 601027618 166916367 316568414 378062345 343225962 200566503 711546446 139605487 149620818 948321837 547420179 821723682 774751221 711363614 933104429 337082785 602944637 334976255 877922140 118389674 356693007 836994573 289448279 928177432 910497386 973947490 910023453 979038058 241242886 237629254 500122918 97209963 70347069 424436900 429809078 979869997 862713208 150606556 225852651 800446245 615631030 449609732 567021004 27835618 17012890 687006006 315880277 885965570 636797472 576768562 412465658 904031994 641178844 39185089 403198386 9511692 757797269 870194349 299455963 803202600 483145175 732852734 878423592 984825136 547834364 721259803 798152649 229628677 305968505 392096055 878311931 29870404 252007973 416302160 482215168 907318119 850535420 912447808 548318551 83827868 790995904 827241586 439180448 667820585 326524034 258854984 620921145 210084161 615756163 368977934 134882348 336556415 161451871 611792763 530074161 842954699 988354651 225929417 625072458 363658551 334112191 20907332 750492956 605868376 301094677 779447416 962528867 115008721 787097677 253903931 551955258 941464240 56414742 552107205 338387481 981880940 768107853 197841082 408330837 255469583 864965993 305867569 579868564 177551610 140347154 762028927 751783791 698919935 141820298 650666440 557583012 588573370 529847975 453325201 951196328 186916518 602980182 859828015 503846694 904829202 309867368 190230485 239992085 181990927 249845352 975525912 423253735 339730658 306927819 989796485 87203694 915034850 567536889 535345364 909637071 780812668 540890275 528221183 910113800 736937655 148581149 478587432 520146401 558913359 424781230 893791187 638649825 84516838 12656279 258604915 470341519 489800400 336112786 956781547 661559740 189884325 938050684 542728092 579297985 614046974 645832517 835542889 734370129 38723182 16566249 512219758 457784204 704329163 510544514 848321303 107561025 859360958 23751670 7277353 888679459 361749705 279592444 729924683 561819355 945477693 768685733 778914386 521827823 254507979 386084266 72373201 181469257 740728329 418258295 340327543 703395821 223050501 129679609 45879627 74452897 706007680 199632512 877197400 144002495 702498812 194803907 249943142 49909021 922601431 672678658 797795087 532804567 142257144 375908477 372995557 864455668 708063760 156058989 974451840 288064135 572008435 760779052 11446649 469229414 574058830 531762749 515952567 470026866 727398856 272136302 757280059 54590571 992377029 909005777 435304230 706275506 649847449 984352421 825867175 409080036 590597395 383765221 797629732 139793034 64884145 654094818 682571905 490701363 812312019 414593505 431528618 68056178 717874104 432398133 434501350 356264058 589428633 942714214 969945425 989735499 775019002 838328587 719668297 333522318 313734299 767297821 760489803 93422520 494843130 166455391 799531334 965074104 778661574 241352998 22201078 295537917 673276698 530277479 359832635 238698210 336300845 640339126 984811234 202476192 189604222 58150751 40948633 290819444 738234339 946470224 217284931 105012697 324430325 578635373 915733273 351936484 921072277 143374896 1000158153 245886123 615837877 151991007 351699279 202645616 92889381 300991250 568372384 746823661 391503967 607390272 659236748 826192345 590248520 641955055 404528037 897323617 177708915 186725850 562650990 283755828 392749417 2743722 635904078 536293848 872869161 120103823 396112385 936549101 970403722 61949313 854487934 735177499 31466798 629061632 3923028 121229897 729602974 951037459 721498741 275674815 829448853 480460335 319757030 527877925 976492134 709204655 930175376 200757629 729174246 962396241 669713639 205638055 123616771 938965251 662831507 828541144 327075502 322516744 161759023 293872668 997735529 607947323 100635698 802621467 601021177 838014900 485011343 213077122 411999572 536928719 14953579 542772958 631927816 332157489 96508215 833006217 618098170 223952008 586222833 333489742 857296113 452532506 133324129 956069244 80789758 776985300 136424812 156542170 132152689 5552071 628106659 311850868 566600379 536415617 125185425 341001631 921837912 737946326 654771478 301414039 523888349 125156228 368162815 677426467 155509630 374365850 554240272 806884767 918560931 462716624 718579452 864444921 855029033 621014608 154434228 745185627 655503990 854447509 948963059 160070354 341382140 609132142 622850282 919033207 381680056 189685379 573641384 998668595 553323730 777343898 348346671 743863967 454333209 369760856 560064972 470785349 831455237 348694873 545336229 468960955 733786991 477401695 703927847 714826175 618472127 806571732 517529738 551039764 349411237 106946120 18978604 726362119 578413036 982221990 244292245 274551879 163543756 554649090 975116368 642435350 760455609 392216666 154438516 316410697 424171897 839859213 737660871 639494408 791594208 613575685 482894211 104660772 178371227 283315846 424172585 304971568 45855779 533925598 407597242 347395612 651956015 182704958 400367337 640100984 903348734 842154359 437380373 522539290 290627280 992423980 282683953 507555521 95521613 146242246 247098861 742812403 645938122 400478698 259649372 279221843 530721557 272234806 182221435 120477904 899959441 875805509 289508494 491747569 658369584 289722483 534427759 797468132 329557634 16143078 354457443 759618402 580644105 247089806 119606569 216874975 729345355 430943219 462681935 201976922 709242522 909244302 277452407 422100792 44009650 392078063 760708391 690632357 621570969 505218077 903753501 870543957 328319461 453757950 541753358 23792396 499965824 238021728 676909875 934289160 716338524 407160683 333401544 358371340 738716193 967759760 440700558 558801208 918751397 2853619 765807232 427065846 95013574 897570548 565820956 332624624 388087884 571441576 228184291 18556945 455671409 240752121 399724820 40735061 965327430 256541686 853650669 615656719 295897625 761562927 674720636 591066016 382161684 83703436 801264634 111660932 617232302 9347740 579884550 13223111 178523804 135955293 976956839 356071948 270080035 891648847 153441891 719934581 154812185 50692192 732438586 509121682 681308826 723768225 22512285 173250221 771798483 863162245 103571327 123718221 565873201 823512143 163963321 235100635 288405541 901730738 204435429 963065152 187373261 916669138 835809510 63878325 756598295 307210761 881471519 977938506 577210841 912237115 329589089 267878798 496879314 265039765 337295376 825888587 651248518 199953321 298949555 840656164 47501636 405375676 406031083 899569351 631748160 880907761 499880394 477798774 800253729 416087460 917224490 643870569 623432246 342509 641779417 744801943 20398275 327907257 155495726 13924778 170125005 799565002 148077927 940042961 1001792205 957268560 297424894 517328138 276212998 845145709 507923810 935010896 213668271 971285815 961317097 277977142 353369111 120016107 2632539 363303575 381091506 577549409 616681109 744287921 418996920 268544786 901703059 127992904 383486395 846733175 3762069 634056559 490080361 204714258 916423128 73039963 777178010 3497471 820925435 997614485 279807312 10628734 963873023 238212978 122435366 577722998 663164053 188429417 243040440 494692702 139768389 609801532 736649777 529011343 905919192 658851998 713872440 944209085 733542860 212864867 280104944 903632988 219443089 712914956 924991234 214732956 16217469 236658134 792490499 214744403 620881868 711199333 805448111 570357808 93012682 115744785 244595915 38562996 558578400 241507566 192975254 888612124 654770849 271535090 873447497 305256415 442232038 154172008 740638175 114736021 510625416 846162890 21840094 66312749 403067707 842059879 553243776 821266725 192473560 642750866 795984005 924911177 125936300 774676837 107850828 954905461 604840097 622858180 792360114 389513254 837588861 794884853 673172973 106214062 762378961 374508296 282365631 282075872 684912983 16617221 762214638 497315721 499122817 536250295 196052628 365249938 221964115 707077170 373981508 281859857 578641661 145112106 467844691 702509737 932636659 368839050 485204834 995341814 710838941 530736986 39436572 10957778 588586609 174632216 275229328 568219250 937171509 646132454 840476085 901898063 851432961 954835118 682086906 129092153 485709325 810730311 778377547 456621456 858960684 436589033 793330806 772562006 963623241 654658798 23307853 223897880 76943185 873901723 393168651 744642811 68566942 49141967 921039507 331995696 694990974 439008426 377896939 588404933 391723671 198906731 731247661 491121119 916073255 307425209 276159800 256295048 505010383 640601626 446053075 95077781 645052972 739619037 931903099 882587025 887147331 261212036 296535851 159556533 19641869 890479116 669722272 220638739 367598171 157677111 175644445 436640501 554910094 656449808 512881378 746579135 591536812 526926310 268859393 825765211 660288402 201564904 480673508 81217354 905136573 436120323 539384468 970309796 637723911 932370682 312930620 685863600 840497561 270820612 421082037 926380321 464220559 483121382 670082954 565969260 265691445 808085618 8981946 292582124 242620987 95566802 985652831 319438311 746184487 794723361 909495234 852483259 186756674 628242553 240318371 658655068 102595033 206850449 131103367 919964821 160240745 144624942 157790672 718554154 738935133 940642457 737812617 292747865 852231675 640676717 357023807 166244928 591441548 710782035 530335515 665457307 817821673 765001096 905612728 707263388 461180521 902107437 441291074 276446655 859917549 650901733 343827227 148542016 100354884 424752654 183530268 362807734 714462395 105413900 683914131 569642370 789974668 504763521 395665422 958715958 296150625 756232807 411401136 847537627 897107974 977234363 868042452 348206121 236045949 647882775 885863413 937468450 951678363 401054218 732963427 817403929 882346682 672688417 998142785 173773526 190100844 816743735 266432518 261415564 340382869 111138259 977168671 302159592 678527449 95426543 435902170 609436666 525722049 856016687 662647870 673284325 657060010 245240928 393126658 522460260 501495823 631079309 514579983 952625190 161063267 760210214 579011544 567088503 486318264 287745146 208847198 156424484 500712916 582131306 449317216 500813968 570103317 180565902 703206292 136903050 865516091 152209693 793647131 414249943 723785099 359088244 105514889 637509393 28235453 116604350 154368772 226110822 911711636 269214110 261243444 961308323 459734930 264577548 79483778 762001428 618281804 305977533 359429366 768824961 218710402 183430037 813000293 420386319 849444277 625109894 254391800 455353904 224382356 227172641 202638570 7525822 845251630 958250852 884234298 406450092 564587710 637339103 356825052 770688648 208949885 567753102 109331428 793934237 316177252 327511953 479880156 251684037 418275228 785265620 177923071 874314905 502238148 487904605 425657757 108498541 261668693 242736718 585267629 430249588 689243369 579392645 274887331 162444059 172895535 596456976 645577380 525906941 81977150 141891155 121202817 642721474 559371130 911946991 517014400 703997862 708572559 155391804 516009259 409919816 843650184 249329878 71073281 397414837 700898429 288139059 575382133 193658065 202496091 206029897 986129437 178612719 770281888 985348115 33592777 855445289 69803124 176634756 100742435 171984094 32581506 329862260 543700721 569968464 675328367 697602986 430448552 1000979956 142881187 338612016 601578941 230182556 200586589 701128681 640026289 966416521 534667586 650328267 962159819 498558358 822738049 753385358 583418536 599460856 699878929 907622781 444352194 95786375 867899434 716174753 955524388 534559567 26554609 401743347 398311787 723533555 157810191 513974569 94910256 784412209 14725627 742582431 31181852 702733625 456210160 309615222 626488729 136681723 509130106 584875340 917573553 394338799 958101798 840167190 625090876 20665465 322655191 953488972 873438488 17351418 197872683 304464794 834741842 293445689 743795052 191614559 795201036 645416857 61832418 800172042 675116351 778188886 759049896 352788416 465046449 538479694 79947446 711627235 801118025 693784194 239873518 439028966 880386865 987507304 154074748 423425725 99451872 789972686 419556159 588457683 609552239 968392323 526873004 229454916 847347158 848499315 880055511 799903883 323121769 292380052 953308900 787903561 948904313 359904662 666213314 794209657 703298290 109154734 774443316 667091732 139752948 208806141 624129600 365012253 394495473 897726468 974957032 813479458 169006187 754502349 442396949 760312007 725998352 271073677 290377353 190302448 541393765 544180845 139591339 536468750 689471646 363404769 290654863 482285916 802128375 102632548 488279671 979962958 321342577 682120023 889639931 207066111 804175930 29838734 983819636 768047059 397888524 800142977 36654027 596181248 130162487 761615308 893529259 949769401 339347166 787155843 902648452 438295944 424840477 780967357 139779633 67227765 724918539 694831728 111252225 460295320 212812412 316617890 93974667 159448733 110005126 946052324 946042829 77159193 235002587 796350494 920976993 115789999 226178615 278452645 586838269 623022720 220655850 244706792 266118149 10980711 476621608 386764588 968820270 201413212 145789512 90850776 720198907 983376323 627269838 353235962 389202977 992404392 926977935 715042428 551816570 568497411 694862941 735251356 928171989 273216072 673762034 792190788 669453326 694603817 882117568 678332402 135962744 911400972 900631702 290997548 544574539 362395136 1038433 702689289 640397710 35234502 9873155 454357077 111792399 880382980 133987503 199530496 162488244 498135641 381084183 27292183 720827279 419031987 122716801 390275054 21169233 593063650 325940568 645905699 339110467 242415737 229253418 5138660 451576357 28674563 675963471 736009860 485145763 770764155 812861563 500969836 736297168 554745039 807248966 301153046 415043687 676969438 90894739 709613995 850984457 655995264 415156052 530815268 763934112 996940963 354483984 140065138 732842272 672744772 695832613 359576513 675927111 817706149 24102962 619624261 337560625 113368622 427791414 227392052 172749934 331502563 210387193 249312000 173717821 476691174 977794495 907239465 597141621 439685184 706852023 747950989 70524362 403200007 708192726 528577856 693449770 802803444 677589382 294063367 745068206 621482872 32665634 807737415 143907802 502959846 623616893 953954427 962579339 333674576 748705677 1002089037 708977619 847513151 944355847 143211697 818407394 456698775 623255219 34529755 171189855 874416087 394802210 528028869 711095502 790212071 685079255 228760468 262702175 606147521 864780572 989882438 534443373 362772562 188950749 740733449 580467337 919280834 537126628 11056371 49852606 486117369 7944035 524869262 135461458 162220476 675273050 362536552 468437865 707371147 70103948 628006389 415617151 739533907 522740873 774534956 287650556 12698526 964607383 252674542 501940715 743474219 509252553 841787645 2658510 579503741 578634563 26709152 223221117 929569213 244842504 697911921 191737396 918018070 850252516 663537985 223298254 18611351 648412074 470741724 730482379 357255507 841263603 21709749 980183749 599395589 747137575 914339395 781881523 15079113 823548868 171256624 803322314 464192623 321185594 916589988 920666248 175083628 302208832 730786914 188508761 782844895 169212947 9510494 567596311 368838415 41532238 731686910 444797333 158608352 246201588 436262768 264847828 660691186 186472105 163571501 697278218 317278422 230672920 595771173 121511744 149609812 992175536 901253811 212576438 802600175 293732432 578733524 42321583 136573104 300150396 812457595 233615579 692867628 396097546 568087815 721692820 497543416 444843117 597801517 415990509 660434171 524860135 149100433 55759526 353111033 297988988 793703651 462571632 431549726 537568205 184436916 732613278 606889125 794409734 270620135 145441771 615497317 869772862 216287821 484802170 281576415 204883168 921614559 50066394 989802626 720299788 209472342 933339827 471958412 231933387 593528506 157929530 617131525 731208208 93793082 687734669 575295123 809927971 18660802 148530973 339858142 29602197 106369252 179345279 373463048 549537250 695557544 670480824 195391625 224502094 981668081 410442676 901880476 868504257 722707455 474575989 618058147 502966016 956012299 887256318 298214861 357549636 871046093 18342131 758328409 361103708 185947689 263253742 706315506 249899357 270246155 250775210 888200917 680143798 279680758 898109052 516701388 987178263 467934181 777605833 1002312565 858532753 715083334 21494426 767764788 103088198 951327060 606319949 4841660 209558057 43888716 271939560 101405518 420871043 971248487 569676353 260347037 863975211 684826443 607030433 364879782 188846622 90148320 847299072 356449574 930659991 363192344 886384493 738145723 49033730 381494765 7861792 920585849 489166983 39368434 778862840 285009571 148791417 472972046 667738517 573831241 957646096 516446649 725246960 110078759 649563211 173510206 109353914 920294651 569422224 139049398 86659766 126194659 259438407 229976721 46231457 985557418 873602436 206833651 530338875 928968655 738871714 773967072 388393586 96593329 644338316 464117860 27687217 202938712 897089673 864502713 52244827 123106055 949086752 200358884 679128720 470735761 412929666 599467618 135327490 729616885 181016340 643155438 853086664 763847668 476116770 34057954 984933949 79827859 1546719 764198754 904476144 421292040 570094150 874834287 278215597 510985687 337235840 569140316 295454468 812866281 88300652 754333223 504777554 991094962 883143989 307188457 791352354 468604323 405996722 466724996 191675441 459323380 850776003 159905702 367399294 817589048 399476303 266754105 69524592 183608891 898379293 843615740 446572790 299101568 574287991 780722906 416864403 463730356 189297000 386109688 362322351 574245811 72119765 196844282 695815167 374138030 370419627 587158936 29291458 46606783 10948193 439440291 312367163 681648937 326266780 564062125 371223625 159831276 522312118 451611372 120607783 829382619 237469659 829650033 597142290 621736795 970911433 275521192 187127891 327527301 291669722 408107453 204929632 532093263 915409508 286662310 433999973 165450291 328506166 987845240 882966291 31676811 977890284 58686922 402177059 719199322 755806821 41795200 675549620 990831670 883196085 386731289 330232731 645133837 328883079 46812034 403358055 399853372 806961211 322459965 679842347 520664207 116970222 87924942 45058726 223826375 115934445 24245878 511576482 717541256 556568144 111721328 540017938 943342325 339174655 616240919 13671602 684210625 281435992 978720047 648223121 429936921 348457252 506121229 358442636 164327454 945969045 113459309 687615407 405628385 763201231 899093817 682436050 116484711 330201765 613333244 951340474 759443415 831657077 603441409 786690663 481741916 700413569 561438906 275527921 833729061 853195384 408906435 111450657 538186716 902636157 739638745 528931883 918149326 421901313 883939044 474277515 480740578 400205781 34259330 434894210 316096451 513647508 157044499 991898379 249486242 618589702 444473117 52438456 834004657 898026696 393903910 298677400 120287446 423020372 938551825 870518357 795902526 77835858 165520832 436229324 804526819 268263643 479026895 644062581 339671494 839736451 628995989 240040904 538848109 802740071 604593202 983165443 813960394 757681034 270429920 660535027 588555504 989340068 816052541 293614983 595154269 302008809 178264852 84825111 989683525 115628187 730774716 641826683 274474037 370334923 312480370 250551972 295856632 370037116 791883089 696680711 401147658 600064746 332945465 943895451 628518615 566601187 264383216 824495336 744963925 106440242 23799911 27716178 708230246 695473677 973663706 37592902 878415696 481069920 170998994 213403519 970093891 245248504 884969259 342253212 487505172 191198053 991619160 977131902 694737858 33184130 123053076 634097014 538942184 100553060 302954844 747067369 973963084 414214399 659173905 267439953 166713162 264962503 120241406 913658352 425527521 975107784 711115465 132975131 386664740 625142090 1001454213 985423392 802688021 48070969 34635206 393582504 57423717 768427214 914849281 736245019 113308753 649589158 84463027 764727546 558200664 649125009 62907353 479356725 152861776 66826872 905342276 44214650 117771315 218906983 404889466 531420476 174860838 514211450 168919899 616082424 416391289 284642297 541862928 89872135 188465851 170731400 457888428 279414169 266747302 931023320 957409237 869760011 975049151 976222762 576009431 34135357 172928932 680691757 999916079 36341148 409616542 184696676 818219144 13170852 71434339 737951081 388663253 155442426 794548129 255712677 297669152 57760438 486267664 37910511 529996883 688146146 802707465 900542225 688874722 251288462 923855004 327437018 703774129 88389449 244921951 928674947 465409753 336095797 902143725 6005772 135789940 21021627 947946915 793671243 595109789 571335460 990779127 48378578 40131464 846776827 989673099 724178741 396161033 312405650 154884160 36124288 588739933 308806295 135058872 886455155 230285451 674905558 466701242 383095664 341150687 317631988 561601201 446793151 628260702 898008207 815148784 6267842 919733726 746256911 447320264 956066922 923362180 781805070 585293765 604870809 837716393 656866539 512302621 595647446 420782384 718712192 469448330 828157755 174020459 278727204 578339680 603936555 709623040 998350525 74376136 517629237 751898701 774874996 696777748 843607447 187228376 258599144 10407482 253520701 133930827 946127164 385324280 962290661 936393727 998308204 650895068 882241591 701423300 704871984 367169158 367320794 638762321 509697110 395501468 764922022 729266287 720610073 672036172 224425581 538145190 229966965 629428463 716734502 810981366 833573629 484564502 247652414 815859124 512776843 123500987 931822903 936400892 422603166 660008142 520165640 952117845 618823479 554404403 995218510 144140117 975471745 656315133 361522073 124983755 627609151 649030856 200817770 839011900 571343401 368128603 169476964 685353016 796385127 288478175 17417305 325291293 171902694 471539898 704403498 730244157 686635908 67486324 524034981 202227925 307929406 591281196 35222538 964235527 774289339 223859890 29767320 57814824 346559433 990421537 276098487 519854181 177163858 113357516 373782726 103650283 268784662 90290870 197757324 95951389 389145471 34572632 903439593 473273380 392012956 847999301 747692221 593226462 428578488 257122273 194899533 669163095 339518839 86523857 824301291 235040801 893822809 173396341 187251183 212600204 166446580 579651054 9360101 567653980 686898354 469438630 613462546 49194884 259228945 447304622 418902641 591684849 786861256 342280424 691059594 481354191 915420897 906126864 658036705 43125958 618417819 89777786 870907662 256906263 199989325 108181634 57710200 6464357 423546389 412529374 453959229 872131638 412147597 576048199 581774015 323125197 111997988 278970763 388723050 267148611 98901014 150581402 442294729 332417095 301047774 329880357 992046831 570871263 249895826 318102495 906379351 868855533 203978078 926141116 601303234 636345973 623667868 383737194 378267211 473491815 788844132 785088559 755713519 788975937 268381837 289292287 760525354 872175161 356606565 675545300 784596989 677499069 107918345 923063653 177699249 916324199 620881639 792107915 133188833 541444422 24522203 672379527 981467705 975855420 814748644 157457636 27253525 367501241 281635156 865170558 595978484 175046518 524232256 746802463 180185834 971932269 257540068 327567442 338413234 644750896 103021203 129270195 86469033 677777331 662279858 235557113 764707069 85578681 129593583 518517468 748668070 803733996 996202081 861896195 922787759 852048141 539967280 114878507 487076380 648514479 886479783 783598418 345407236 484822793 659690817 333212482 86735831 562622834 115836395 41222375 447031498 284750348 777478212 971028351 841488410 254138394 418226518 674640103 857023284 458100902 952097313 133717679 997050968 98669493 343373037 937828832 145152432 85915683 599456300 554946834 840166426 567360789 395700868 480705967 301236407 512100099 961911134 282730638 950754206 743088259 676284971 74113486 776478915 698759194 931493330 13467230 242092490 845401069 183721133 828249424 610661761 808161968 838838533 848352518 9358232 714952029 551539200 810487696 611225355 74702133 973822467 302123424 482923833 989989044 603064193 216574626 1803730 480130711 255434505 942463556 778127353 43751590 542642665 808388600 638677635 941153861 934359604 772625801 761227557 134259644 558948954 16346112 370258175 740905053 611826661 887144740 686937192 564546788 7140950 163098421 184203124 869559682 527069693 690909191 13894900 216806607 38740208 262064637 548976584 140868438 276684337 426101501 892502839 653612255 165500406 28806262 829908774 386629428 590002215 731807851 259252836 729005525 485452904 971809862 493066036 493312826 552599995 395876155 191244549 504115917 703674428 616761941 778152109 783649128 114513521 884776476 314745637 410020916 925876182 560885690 172683510 200886322 862920884 884653782 969071325 417266058 774374019 372506081 857087407 273996492 613056077 968660277 411750096 961343168 840333499 778519278 946725955 648172753 592444403 788116259 467458081 460116293 674149894 70458699 715667251 198660858 658808209 627740328 213182233 406864969 613235436 792004760 487213931 640921954 657208891 347445520 509534609 176390648 27184719 863769390 792474201 198686565 680157808 837295201 238942697 922282714 329431407 539926614 995896526 888442518 930478298 966113489 850973866 516884487 136737325 245941921 93592748 299629135 452379366 798525360 645994696 899025396 113432209 178862477 72856048 983553557 550775989 289108544 308924949 193619173 658322124 92006740 792685916 814187393 73245741 860900294 244944852 428545984 748042901 843618648 838750361 116012944 968354870 579553270 928189186 423168510 275114100 891615394 728659787 117990787 278288154 838304648 536870968 767534567 932229664 46430136 431157865 43191228 136908072 22175752 15667887 497248791 790810766 751203722 227263160 494214920 55722536 413687973 703730419 895021235 635506132 259811181 354590947 742677194 705735545 807648248 663817220 912029022 24201916 118567103 470431527 201604812 288686891 924176419 195152871 201863467 40584769 129085416 692872501 468937906 896942196 481157930 779957834 837524603 363972341 201881234 278249891 238174499 246504720 700112866 57648676 340483970 655071924 328987636 349251965 875852516 172520850 338810475 339009267 903121418 581712001 701922636 990352799 863368825 733513628 916640764 563312888 144494287 223200728 996062760 27566899 564047986 482569676 581123020 613684024 461458424 925349433 770900954 645197689 290489312 213236891 660525838 248973949 423313693 779075047 986329983 226851295 449327477 50048982 530182288 510301610 335098978 763415762 352006235 545679128 723860334 670527713 430624799 893802431 223903688 559178378 390120376 827956294 154494432 739148592 802503214 429726366 514621101 942963085 658645198 132296663 628732418 668154080 413433681 986473473 194317785 29263634 341144045 603702187 630712367 433821058 903952116 633115464 132256429 661195560 436844913 134149050 82459523 242331683 280996299 889564182 882305743 225050978 3370382 674560611 822829457 346567182 378627328 474954891 360447010 846890337 859886351 5626650 52780458 861371807 515425438 62720286 681491083 502750998 799058306 896460336 323260595 600001041 696372931 210578950 422144435 473196607 917410510 546790724 633790231 165351691 50975299 970725369 401780461 647153430 683569818 429212135 119026269 192097884 935061826 101914981 943025871 297967039 436599770 682158052 851197032 844024782 923709885 787046844 961994824 6715383 794381892 784948738 955561618 769676566 477687980 714858996 81161467 522504357 208518334 289763860 3268993 557924327 957120438 498024060 696180861 751230100 603549390 772837394 755419032 366024873 431220698 226391395 466602252 823054688 462959255 628799803 973994351 967481923 29328455 650596669 35065762 8537652 592576491 550098114 3673315 479405397 367387731 400502503 631011712 295820275 552170934 990874139 558653789 609768339 290770428 397935819 700704951 157452850 83270089 482441307 413486654 33513722 497784674 264703319 980923220 759246299 607447403 194457536 486447617 176872748 266365888 941494835 935660530 47657581 980214966 388583861 613048391 330152449 606070456 583270333 145065335 73861241 777551810 668127188 213663392 354956041 393623132 351418867 818445046 240550125 446795883 881089947 618346113 406797046 504667615 211468091 405543515 177594018 498941969 394352293 799758625 491564573 932822533 828380637 610568932 359744601 299901155 719123708 313034281 597679968 752242808 390736367 367519065 704155751 820006250 282472919 790964464 826185436 472964434 518163486 939087015 138678126 70751374 269346000 445481293 945087201 324469151 232212269 332815736 453733894 502235698 563573364 423823921 575034638 542438194 793840335 872995051 360501784 13624616 146716367 761795236 692012206 385174117 254324612 88975727 384976496 99422239 536610077 472131434 825882677 925159072 551835522 430345464 586223667 530442739 172722583 96048637 356696481 158332055 128432563 483080207 177184626 368293474 487955565 684614600 885038736 855104960 513494853 965243129 854869309 76328131 101635103 369841509 787359477 653219284 278887485 544975944 547562925 502457683 823090591 842656464 850734072 592865083 774963018 709582698 311526580 169100246 483986178 811323371 148364497 950866793 944620939 325843295 922680823 816412886 733707484 951133627 792708388 843515316 301688030 492509880 815870955 402135481 672710943 586375821 10659404 387404960 560182909 679442419 965500198 176087994 277733827 446144854 386691551 213355089 364158863 507862780 389550118 752088040 301241851 372866438 859105144 75463057 851693748 5115608 29950904 702484202 530062686 802643987 698495481 670372487 618867266 81715362 250509448 948782233 656338469 388919107 892049213 712101633 306839076 647962302 365623763 594240496 158780517 752132600 798238144 55072622 68415521 289219523 689094304 938198498 98406261 708585100 731238653 815199586 18005937 244648003 482153124 411948564 542292341 369812049 209622792 258410895 312506722 511433329 905804349 101431017 348904578 814614321 449071180 112844969 875503584 178997772 901322404 829599391 587137823 374130128 569607412 866543005 29961569 179469414 444421895 629885592 365639046 904378546 293241126 127190508 781689266 20210454 770289736 746300898 80441338 204838542 911391673 855865748 493410773 430090032 778789666 167091083 341413192 898975051 575158765 82260838 982216656 149882634 821697239 384797921 778401276 868592913 615793175 385540827 133790874 306039766 664504478 150223544 589845196 368685287 799144858 625520265 84015621 518022460 183751384 88064357 973793107 711070760 818360203 365877931 608067425 533503245 274142048 899120236 290753620 888245498 877668149 494905099 483344445 226485909 131545538 31972195 133712641 686761157 804728687 975015925 933452430 341905666 519984280 489434398 647142624 722121249 550905556 297229407 217473570 935622831 355405164 532519441 219764341 431670485 588137878 156757920 17074547 294009738 28470839 932088459 524164556 12044898 285667693 657533785 90096578 783307148 510366602 92982747 619716597 409338651 228141369 643778517 251553886 541702911 455942229 665489431 186769153 347781928 330148569 593693452 75316271 5328449 987934917 916388569 88298477 468795518 77326413 190696853 980180948 607924434 738312691 6968196 110182482 375298876 368353135 165848274 745814318 736037111 484681765 53105304 812102362 541296828 359701248 120755810 951231995 158766275 710331103 399672365 134931123 673090348 798199354 502064204 343159065 137771563 43504769 606340719 364259569 453985528 42031141 767505538 449185571 221838202 527609485 794388556 452384895 65626382 343263049 239282078 903208188 776133530 790275875 458265509 442178162 498463461 426151953 180012592 244972858 591370431 545077384 10730492 860669935 961310919 430774623 635739961 558489289 523159086 287926525 252605366 353099041 927643395 238498277 916902110 947417276 864094993 363463676 736534637 456388395 697740158 16948103 28897403 735922219 203432885 244915159 546445691 41653667 117185723 392789081 601677192 379484406 591483664 133775579 180307357 74968143 141464769 266678451 284144619 232792576 880050740 950200463 242240656 519070984 119456862 699773825 151559223 348265840 260815489 31339620 855391033 897988086 858054304 591583477 721023311 491252714 826930234 977407703 657075717 185742688 518155958 544035406 221275176 591905043 392232903 237815342 470680858 189499419 654463200 195472149 31463738 869939933 400482654 644921323 145186848 69180233 494027369 469860149 339347662 810080269 492066756 726312651 542988119 898310403 557917925 401694399 968786655 696673261 717974469 569223465 349160091 869754368 582061153 299464288 938113091 477728279 639036332 539675964 709185330 1001005582 798418685 125364417 351899383 842646700 919092870 467211155 538454084 233123548 535653541 912305670 53249338 696242425 515482706 604805902 689237319 31350841 32749957 184694537 989469803 191056083 54686944 580360051 618993691 663358730 411017317 93320989 763492007 923714658 65732590 722368480 120469567 28192357 706784982 534867655 695001555 187250647 891202442 562912167 654331646 620445771 787757113 461595654 18695857 172821520 549389585 670404271 488779940 570174496 143579400 513076732 330261573 246047375 185400321 276629627 432655220 661167804 694039120 764178384 573383485 888761723 762053027 705843054 222624129 692860094 327224198 604424356 148451270 773756509 698865478 43519892 280556067 451369446 689912623 821469075 220013255 613231460 813110394 30195925 299875136 99203963 353769373 7079439 606903692 500536888 886707224 482861062 595239284 254050329 879553823 920428845 607696391 594293139 44947099 602741109 791620027 834569505 640887540 325411544 154005527 159513889 763953803 463452290 374310727 354413196 14648606 80114971 835445236 982715468 943841292 50070129 967932116 74740984 579972618 865197003 862675072 298214710 350961483 287236308 690322578 741393959 850051042 9656883 634928496 890858605 179492373 41498832 182819113 542700655 122638484 383465036 872786000 293391078 490721726 35586887 535065856 915255572 165967154 784745731 665805044 275440681 18806307 245890636 200240929 508820794 380015564 169494512 436101441 960595889 86984856 490675210 587972096 410450505 86472314 60265137 531436281 117160467 430197301 49084973 966382234 170883441 254014813 367676671 793334330 563958145 574277607 49010770 609650550 67185095 823335076 204934358 828385813 956509589 293827408 706301987 438195921 897044877 345830770 121047854 65957187 649420522 898244879 760704697 745121738 426619981 714641377 492841972 957895516 857147525 909612060 216442235 62787211 546582449 155018474 538249800 361857600 425773069 635250901 579170275 959579242 902263444 596367485 306249914 715340056 909134326 408635840 633037242 591576846 18580331 157423585 965438895 430765054 644685396 267902027 941385061 797413751 842367567 534530568 230236551 39312653 43879645 901589837 288775859 986415388 174257 585520119 770058092 857775025 542327446 209015215 838616564 730710137 965455587 998574446 455605682 121883364 731360019 309025873 811240007 151019703 314923288 66833618 341560715 32839186 360039650 759576097 522226329 867425737 951621628 978583759 583910351 954831323 742229222 462570187 281629155 718182261 427681087 740330484 468071229 958799391 731794552 259768217 762501963 929993884 672324049 683524631 284617941 749999081 685678762 192071950 755502084 597713328 846547848 312699226 216193218 471266600 584987829 142497774 975511309 19991999 967611996 324340514 174907338 323337085 364414198 215796525 160221143 379994322 5766982 218715386 452868436 915858763 133289582 501852803 805019618 470972744 155277548 366724077 360113732 502143758 618895034 534668957 891346287 927639197 271197804 809391365 665021717 377523167 100158610 209841344 194488064 73456848 112309083 852622213 677433797 749099790 923221090 682507695 761480222 543430450 737662555 894198928 315804184 506493724 228504881 456159954 599676436 389915906 416662730 682550947 509477413 431081384 489471215 848784330 110971697 789622635 155334063 966333845 733365316 733267926 630309258 76803679 281960723 326703091 143381625 939317798 307549043 91245462 14496198 199776072 733158744 146954678 232913795 917936940 673818638 16641411 946607033 542960579 609065118 425304689 147161741 624717574 87453978 480544406 599959202 249258018 63357706 186136187 894785178 314903519 870528527 422195652 850053519 874474380 632904174 715404332 79514746 898762235 465451933 684691073 747240668 800527956 912553528 500422507 3526948 981771177 914104040 922452521 809750723 111542524 149629387 397828815 254508622 245723123 682096719 888009675 495905355 167222182 337841678 892170536 613311213 650548889 533791046 1167629 116559970 655651635 844306372 531907967 606600043 126751971 778007600 858523463 952010916 459054983 411137173 658937308 441265080 173311676 972940889 272855394 854715304 869738524 598628164 338134314 732398323 15006593 397485020 16000263 127781648 574120618 97857667 379453045 645093133 823001787 111706641 474870306 649845515 301565638 252158278 792363159 819873502 155541483 834568727 216361126 875352689 411426548 1001604913 814911605 798524116 757284854 99501779 182082809 374363845 507735824 48346890 612145237 491321200 938297572 82683308 12271090 219007338 871837660 392955653 991954241 568459259 228187602 18328857 890416969 404678774 637669667 84342991 814600017 312997638 335308772 885296927 472475669 728045728 352698643 801703394 538842975 187114064 983213785 766814202 394273737 145140860 203697921 51288814 458161401 932366624 911194260 134462861 590036456 680524749 776938270 464825910 578692974 96480775 536220743 111193628 509443811 418890965 21262977 182239341 564908305 466870107 738617946 667062425 973984746 497978541 833742862 607110579 768694174 524505051 398121816 267812143 732438053 455324041 867027330 346142823 857999803 198864555 663423903 549291647 835959168 393024961 56650514 830929512 704920433 260067260 800949715 593940988 31328222 286970617 858930853 190433128 959575518 165976203 329780454 731908320 112195329 797531583 399528679 782154439 420084834 742018189 956016603 616420332 656538848 391113847 24601865 573636376 451901084 781230997 960633895 320218617 114850762 55448326 711105258 450621832 231369860 467278497 591555424 237118976 920594730 428301114 786592182 34138823 252679992 386198312 34140473 380304251 276071691 729924902 633311383 4806355 808254569 254757394 370494495 332484833 98217301 689036880 294174216 49728673 702863824 290603821 726412497 553328003 901193929 929081783 535991822 212897918 936963695 120750982 477967901 385070803 114199050 530377521 280731768 488480874 603130985 552915200 809045135 199132420 160966078 154500794 438814946 868247298 194968543 518291261 541529427 850706643 691455362 562228094 119948618 276845332 181465126 184954438 319197634 789922816 974597001 195570955 942913309 223913824 841412052 200288077 345304184 304781552 43336517 956601031 528543610 368471287 49468534 604138486 266245706 267808475 563948585 212049313 558941124 666942648 920004448 615937100 629876116 52030353 908895413 233453381 956206704 701636042 623618880 178976419 805381845 171504638 714625332 562229145 417479752 453428683 412519100 500476482 103560741 903793608 506687844 642812652 254381255 88631226 62216102 289048104 356522874 876286287 630982697 393185870 13217433 600575197 598648545 326353403 821421172 630772777 979078899 284338718 289190225 643682695 974916006 782458365 163015689 488437730 762790267 625273693 708581783 978314514 952481839 712765637 760811263 780160665 736814669 380831850 59955 405490313 989533937 136567234 673207530 35301506 363261152 495115215 325553855 896985337 965031149 976107004 1599359 428026216 808068873 777125504 71643095 531614618 936082705 418556384 25264540 489043536 114777870 425946750 205496448 484646175 343767496 864761313 115222836 832617657 869026976 913555792 332641645 616612564 64770221 375825608 470434886 208447397 634132561 342681335 745671577 511141253 583757242 810071479 639627489 949169983 855923886 578269582 944923631 922956832 717789733 677387665 405578852 274983715 545560400 683446175 885049468 282177033 668634774 812447513 871209371 781163875 683268966 970847527 295641107 621633970 668675637 29883113 729142739 448186590 158278194 98626216 3586214 680920889 946083272 470300945 47980681 307576422 47516740 176845295 693656933 324531500 528171149 206915729 708671214 875115886 498074382 630298607 217570613 169298702 996338981 439499303 870389001 515028943 489311881 789474879 434873749 499345239 759749357 277719285 421853234 519053406 926063634 531120061 549129140 136477264 910546231 89925916 882461646 291373952 951812786 513635555 103889922 176458392 525991477 203273118 632999993 95543395 439485449 627771486 66130712 377796498 795054 506237180 178526220 727484138 395219718 296727016 320844615 17313992 220951623 66616592 635779127 485644802 736425501 840040151 957305242 715132222 611307105 988006312 719455141 468686966 864260944 389504031 912694068 372704673 212364486 782671375 867218869 263810509 689551802 345056817 470055208 106278095 29425765 734236121 760158032 185402260 386948199 654441021 370752399 54680240 860064775 312367521 447475674 274614398 428050047 749660491 479423709 695597361 123598510 632541096 631214363 577730275 584095784 204502927 321089289 568462921 387157559 884445555 559554179 874368545 14622338 117380937 93093590 975008604 188211655 250145844 678597377 627595055 952780940 840039188 134518054 909631863 596055716 720435194 318640067 553785745 650072150 673890022 342428752 990652443 95174548 790924065 843319627 320651577 542693865 114047194 97016194 305387350 24581188 957148157 349295222 2997862 83897156 876419407 796476109 168525547 335674927 352027048 7558747 541799915 778013121 25930602 883570433 729652483 850918088 283430633 694994218 558395578 653843140 254978753 236178741 907868674 560001722 677083940 598222353 140454301 561687262 941394388 686084708 265042211 237607516 348276070 778188978 94631474 170247213 595089681 879980071 768741238 772206676 334448562 298302863 995827429 287755903 273435418 608644365 975787495 170212219 659801014 536858039 497962452 992064292 962568158 423369861 392477963 534539605 583217605 682530326 857298190 169020756 151698854 687170276 175003188 283820515 597608673 452318360 135673013 376278828 69670949 492403561 892606569 999338620 750623489 600723835 240267417 281529517 892348093 433462035 776452531 326389075 360601074 670593184 22319874 472026265 777656960 360748499 32949851 177438707 968279929 255963732 940368752 366997594 258120749 241277320 502358158 743510499 999773368 23563152 840028770 2827752 147359190 106403030 857176489 462099904 876490954 532660245 73821203 409287440 580391794 63417430 166069342 744501338 923356394 677213935 269540044 267602118 785231265 526531238 559480964 217911889 21829561 521982584 473205109 983999294 829542212 233937659 749398115 401388433 940411473 269621701 298050149 734378269 481374682 950345214 659700587 259566887 529551813 7794844 281680827 174531195 77606811 48974288 129489464 611468645 518014844 939284271 812977685 343830115 140207860 839881917 473847005 900682375 513022950 42698473 814754037 93845564 394339344 863168414 108357394 963799287 878698060 75637236 232648941 32742443 362543307 808370849 215214790 438982002 807473653 945282650 490284007 721460409 616390585 691308742 114384458 974455591 554084892 155162828 562223944 531000574 772996958 265172654 768751441 463863430 68503642 914371922 745776827 370610427 44421891 353625977 231513426 436186016 285031224 950952693 302225757 901626157 566937894 816573515 969378052 300123803 432099688 182607149 595514910 978826599 538198152 802206101 211368560 453821702 30595496 551982744 260528152 215878777 561468344 536542358 696148660 600512102 124918833 467285612 234397811 640575241 366395945 546846921 286247124 98536903 934835932 777989754 950638777 618379871 426863504 774573255 243249712 392273342 232988644 625108966 313190088 205679771 70246484 143662470 890232255 131708141 753840369 172511190 87231803 75312877 410737582 730362188 178657732 596645159 356826316 977009498 119868479 851629014 978187900 596450961 155570525 92480733 186536244 247320625 705794937 437143907 617237128 151772259 634559124 946549405 192649244 641890732 649097870 242892358 800700929 361935616 984314338 127649225 229652892 61230509 46414746 624156873 45631599 525918199 970647470 37660722 633253426 193601569 949539749 498023125 1503710 663143550 461869154 785994858 849622500 410558184 295626653 703814134 282278382 463273426 933843102 631827586 745986093 916604086 577518297 727234401 868264469 978274419 204075096 167604549 233408832 550288669 52372503 716029945 429755526 113025442 319480602 101593364 641072707 279223333 4917581 164460530 457356822 674670542 150625981 382933405 270877734 696949999 820239415 21309839 23747518 514966949 235273882 418763991 587243021 111490731 693833279 105859068 920789671 111352324 42796812 843008486 809821917 131077067 69357662 600960870 298731579 603332452 562251321 316283600 474266981 527827795 264975110 255402441 377435136 564174110 425618040 512505158 877394964 242782025 432629982 474409051 859665055 824577789 299094872 187133679 385402950 582162473 503788897 688150391 168873735 985904850 437055428 154750884 90548745 775382145 81360460 509413664 419366858 464093406 734457039 907500619 137305176 453360459 966968129 311098788 854076410 399674283 858774668 63470404 178098708 592022315 921447413 1000275980 647687117 124267817 968948700 895766687 953738865 709471283 458189666 676810913 622095716 924949882 429058077 745802315 714651669 13781983 821887503 22821333 297031321 607217482 394756958 611803082 770886541 883531138 964642980 796588619 908662943 835382317 240875452 730238651 928585503 415211986 263488606 7478143 442666484 443159511 524866578 168672561 519771924 900518357 694651480 896534690 888974921 306036408 473186738 819798325 159736329 6516089 557153513 799475297 814739488 999255929 593042484 508392948 775394085 455320138 977555359 813611912 265060320 1002284074 823958509 384679066 107858017 930973327 540632518 436367412 60537730 125596002 308994317 351543915 964345 910369313 737465330 444661484 532914594 749463975 254092768 401807710 511065584 14635107 191624391 622257033 843394382 468803748 422450549 961043727 927197963 893577037 959658341 855331052 591605401 20628790 780593608 978582333 818957626 797029844 628874550 204642616 922609025 830954626 450110869 584023597 132573790 583167919 659071234 822943286 109801190 81080551 764164262 71945430 505822477 850899683 729599495 28508309 84046116 527286321 32308537 106562895 177760882 276387798 213810341 727068171 334081305 425005600 624356200 331582839 248483514 541800532 462806261 1000505381 752468849 224875156 896544516 367947802 365887093 30248747 592054915 322312264 934282319 824701657 521315248 991695210 596164861 554004957 907033079 958008284 650360725 762643463 713721937 118972102 244322769 993298416 351845421 188850069 201587814 98621704 369453950 542374294 247143997 692532599 834738262 63678952 816700938 490761767 414495438 306455835 182470633 987764860 718355529 783621781 611868202 2892667 713232033 945240914 128833745 890678639 792516244 612062904 619834828 523270411 565293106 406984590 815647475 562599036 696490503 98434513 515972306 845131458 697019904 632869376 439971693 916610840 218047864 759682402 307047457 282296977 697438355 583599840 731680522 557626726 468981055 722496879 163689880 818125410 483392374 388506316 502360939 94531293 18914865 878721525 222944438 476360579 316763840 337200992 499165260 113150919 68794764 542231251 46004263 672158061 977344981 411241724 66277355 857080200 493097998 62668948 135965887 605339414 985380671 233391225 980980039 799903876 536543529 16593083 167598804 99659362 49301202 387780836 223669815 519872359 612024032 755139319 545814394 38526944 857606544 211243738 318079365 159581927 975367750 681416602 21287707 787185177 632311102 281581119 639096159 698924935 623352470 584403812 423283137 364491788 797128222 625624260 517129008 2290144 483408513 925125879 232549940 605137059 638795114 349263300 681993167 430666935 885572451 860920680 569365857 78804936 146401115 145910265 453013405 284821110 677051679 79382679 702469947 353220791 244478473 633598744 571534155 278365386 224823367 665988098 804905330 248734790 959890384 564718089 17977815 677412384 500733912 684070003 767402437 571433247 739897980 198032097 153150473 326785110 130996987 274271635 999746026 504078203 26147594 165097166 651957443 185250076 714006584 198656607 253661122 767912938 281176297 196867385 443138219 923156709 484556939 44524904 833990024 851801555 201325693 86102681 848358635 1166124 249666465 551264550 587429963 552827716 108118633 554548159 758244167 664155616 390263949 259588913 894982681 630290809 685445477 640177456 265197232 973195683 415979656 891527088 902278635 203291717 579584964 488178963 552288266 224404685 733303377 990812011 815425351 849762127 482299894 413381261 384269180 359221726 987870448 162655087 869779341 45529807 524950817 500581505 531299613 809315749 18611474 884208313 995650882 735020664 889996219 995496045 239690113 752416304 379374956 645037183 650310222 645338889 996901711 170260669 625339086 363313711 960590855 819017590 321087076 36336025 150719003 176405756 642961620 661238193 275860418 926536275 101910930 118801536 495062868 209952479 164500748 35450694 708458422 998986468 690226265 322232809 290205372 2292387 998370662 944585138 24003533 198147166 342194345 466383567 648539104 731858432 174804667 966492360 599059025 530718546 767805536 790350654 322636005 751751770 778681887 445873430 931844858 292396647 889644030 789331461 241254610 345462236 801403589 84376132 639914495 786067396 694925749 81625686 585010990 722069795 544994612 495399797 740193759 836583436 131926265 675413376 526814096 331102913 857310366 361809992 26648395 592825506 128469042 708552487 868403577 584419659 262021854 821252957 177263158 480377111 44468006 216929961 477087612 803892393 389718770 933993099 228486780 755504301 726387484 732758534 488932125 748667166 818387970 854109843 455715398 933785056 746583172 676835057 730565787 627989905 701518299 652421377 188294618 660655949 887550420 828351997 411980863 106734429 716484668 858930841 455917387 127615090 858722011 701861372 800640570 196066209 332602914 279224526 51026354 527013023 408401845 551552119 75336068 541377851 642508932 495688165 464568318 832271313 215709304 372396489 892916135 885200320 166195348 195872633 865299017 948610709 126357165 722583055 37006213 690168220 146335592 936900198 350473594 790846575 696698368 189106876 403617767 615156711 331815306 209576932 940579681 169099003 906693504 630271849 27604188 253787018 330183156 357125176 689069735 530243156 394406435 758889080 739288882 205234450 895779774 332857531 129841024 214342362 516730979 782346781 270484008 850419161 317712783 993320075 504918371 637102332 337278258 651272585 105996214 530403596 543818777 956479502 556872984 276340488 564475438 823618486 998260582 487592115 99149919 387057789 837835367 816540225 108103535 195751342 840303339 477800715 222319552 543927696 175594921 327984174 433731298 292633925 115586306 349602222 904691326 756186544 933964488 930322788 240683063 28763756 790518133 427959001 932823949 585869725 567271790 870182213 20450165 526263681 910611096 795723802 701738600 668628704 977617740 757839682 583219076 708780578 806389468 804138250 370095399 706875156 373585528 298745620 715314981 819809681 724017804 210418401 797750779 636062658 253163946 17798105 293814867 638478957 195246481 134624825 800841555 245781476 294189746 924623829 148352272 476940015 665327654 158792520 62828542 737598935 109897128 154627850 883216346 5991292 824829910 931617009 984708462 748547013 731367081 813543366 334394885 336904051 748284563 899829711 924007352 197147264 670453427 998128141 281377140 77626156 406916235 714072003 84178307 396364093 951332903 416025288 196787308 318357082 115955787 197153815 858488869 127558114 595966523 895739360 120130614 18625824 608973899 364004529 608074475 275547562 824614035 185687328 923801309 706432257 850840744 165944250 41240611 957467834 691826662 61053121 339223320 678450909 936915464 937498590 685286299 200812892 161861329 86467707 184021578 969196353 859081376 967090641 940682984 574658054 733763837 560035088 289122586 949970342 661908948 97182171 925056704 370633571 344393531 272133996 803828394 186332981 526048309 226583084 573808944 923497105 232666059 353359071 154730766 557162963 515049035 635490097 561140823 76670322 329180967 531719109 884946251 30357861 888088294 222553048 99652808 20528994 913220118 823821 229100370 395536655 386119139 464781459 70810661 505569678 971482964 814937277 638297211 916347409 915080028 663412190 523442440 727727530 922043674 861640831 672645577 825318301 36451934 256111010 610271462 432016430 386534925 410177539 683345896 689105705 9260064 746314782 519270115 98043160 433589608 153429785 822953535 150366265 350926992 581386319 609306699 982760396 337549693 679666996 698071323 73200094 621442512 268946113 329105648 509138420 373897419 445168104 90334729 974712750 249886293 608373474 772095273 587309085 603698165 550783534 982241729 406708683 681676373 175140143 393055154 548424846 387874299 315265170 701811198 543340554 837019183 126360485 198528951 688565509 639417439 419628778 390254730 6297273 13044412 495603691 266453528 827583744 513212663 879672722 848775988 984721620 332697916 241621918 635585403 463974335 616882012 593030716 479916498 774477796 212199461 592225445 383354943 845877800 875984674 687281228 546406953 183758694 343532116 327085023 957692558 792401771 19577801 804327003 874739112 839258287 784310292 323731000 293265560 182509413 789023208 975991005 362402385 321091141 713231902 127727624 606787710 401723499 196623461 580378143 713835859 997915520 584421697 638191536 985947040 795484000 488390974 504663605 92808101 954093486 390290654 564532231 430135562 433059291 600093945 270844890 151053675 501972579 454972292 318538667 802349427 759288476 224906708 302981849 842870629 316822621 289468831 276300452 819886872 886720465 111715348 388412720 999816821 114282523 672225916 100610669 859273986 761415508 150964034 816148124 745920175 294750845 712367391 872793458 21397747 115917707 578186009 498943716 943473675 900345425 350094856 787153023 794038187 375862982 840740930 516486468 50499071 312988901 205634641 644336208 142597996 464051691 449552737 312004555 504400859 134729341 762952470 258053080 296923382 786917466 839102457 45072968 837082594 877241995 791136059 360340916 494884654 113855000 158331276 814498295 938156885 923808623 665300513 368874177 15436863 612395695 300929329 587126385 247721649 255437581 450322189 556653188 675697558 476791044 51672702 86207871 930955649 455695233 709815566 22069388 430923716 60944791 845599977 662713155 211723193 622843249 760548141 481087771 630135800 632971554 141119619 222240853 670051842 287051062 307281097 496547215 715339138 229003773 790673591 709944947 305134802 48544972 616854913 343748276 742255526 459530257 390976595 515098097 82715173 467143715 185235111 457528054 397962278 395215332 155360324 771604584 333724330 295819112 243721947 452826768 597958227 671109217 566125565 103730143 269226149 253965552 469532985 140040526 719076457 503662376 261211877 147584084 776206996 939431460 470978937 410290819 292551152 890960159 507276672 137594096 226875387 930521742 215869627 603228762 304092063 111787486 529681885 636550507 371038479 251928169 704960439 701580723 457571226 649191644 418008810 959439565 507910442 603193612 896059875 851624464 30625804 803927503 767864825 22281032 285632695 564638070 561408407 640945290 198377222 574598054 680109443 138345719 470492142 777820025 706489909 508970161 550835567 91841033 428889185 313338463 423264602 201835224 238766688 211415346 313278981 515668554 296010992 147916647 468761318 507023907 676010892 990259542 806533455 753182 152893956 682704257 795882417 594507797 282360795 697979328 770958875 247495064 293149941 432960530 363470942 774316604 192273933 582941787 980477866 274176472 117561078 814769223 689081328 645264028 730766171 686594749 913298739 823703960 601345327 152132506 35889285 487459557 690215331 119962306 374710456 782847182 524712884 647911866 516957767 616949779 588542431 311161234 938066954 932001411 396959141 120366430 730104126 380229665 276911821 636171246 859834953 306757513 745811572 345701678 376327737 321168783 504667817 367364434 338379938 104840347 388784335 760414240 814263760 620448161 74531495 837651807 986872895 394938358 303642710 685121545 254272038 452375842 563725255 203103683 904737201 614223075 814689813 689739916 65641754 407403887 48749878 358407382 541959312 418060840 387409280 966251814 275941585 410877062 168356954 296246788 544890073 255787696 941157550 404436284 582464134 678488795 372824657 174672061 48447787 137054036 391555608 43197474 827492629 674429872 477657731 490949246 506638168 146014865 630518085 509419761 401603353 519267515 466054216 295514210 702167077 703722567 612774141 164941087 280594349 48593751 559309257 575470304 617207219 970251485 397809971 335272761 872202993 902241357 48156431 321682905 664082660 717492530 436907479 962297434 930556329 397257999 184484914 518392853 601304807 931926672 156801122 372052430 210728497 189513525 340237150 463039317 551926507 150713625 286122452 618681104 645410392 176531097 943155730 345801257 802620735 484680990 453774583 671532517 21846760 831943804 634319240 410377652 537275739 876847997 20615330 645457198 483692767 87018167 241453996 416640699 647170144 367210953 14467328 601121398 793951706 323833112 643226455 425499280 507901418 945656048 506320466 429388186 618150405 630069706 315040073 247139684 366649386 545797435 405655851 413568066 814916843 330811371 199177600 500890901 746449363 654040714 28610966 203911641 909259131 22772867 513744372 734360288 952525407 703896046 510947089 729062115 65690129 197893176 497031705 447390699 315996539 202327937 433084344 71013011 606799660 257997802 922998392 544093772 793834638 686544090 961959711 980131375 512226277 38051199 401018522 781455592 42846615 483615145 967433546 583168183 435720075 897044613 272646497 240604731 490021896 125995845 594804994 245663927 814517319 488466653 376708846 221374910 376013343 372922213 159064807 648593684 353126108 487024594 756387995 7609388 582832861 489970134 211520883 561824304 42879969 929351580 236953885 660093730 45586490 982335070 431116110 825078604 86796228 23194486 476244650 480604573 514442068 550420473 135820209 654069053 92209601 593759812 432269900 496948736 166128422 967814030 589377371 779836477 628947924 68546198 676759415 770632422 249405572 612928820 960076480 330833907 566205038 666724365 744030707 325991668 533572630 935898554 209818977 117111045 557456498 66257319 254647932 396460374 498726253 871149619 873647278 568500145 249364194 221337874 384892175 491254909 904701973 56532975 442567129 218215480 887798904 397209327 764542802 90587672 348622897 384230987 112985734 811841298 590998831 919941616 89936242 497908920 971526775 791893575 140137527 549668819 92450465 401347933 277921168 36851522 534883559 541145388 247739240 887860228 623856679 465508206 494989901 508910420 153253238 626963678 434167332 7903218 30323995 643269143 238744182 609166679 57738427 298694405 729042553 101012761 462928084 306123464 670140191 544856857 311394448 28747130 300351400 507711167 668792370 852676134 176560048 359395936 200206061 244273800 251148095 546222574 968123015 138225474 303396883 581147251 908202519 515725186 589238261 983455711 500473222 442678297 992528896 793884061 2201782 218510458 83241853 672574421 872002619 431496123 219310868 389885735 873490760 442483643 908706232 450606893 847694671 776860419 435821545 853301790 463677145 818190385 331305161 333864963 918854692 789220667 594852312 785911898 734455207 524333513 523366489 998325208 55803839 506300574 861169310 661249280 311887074 782074484 265397442 186426112 717319342 688631901 54578139 476175774 520593694 938056851 339430398 962956780 590948224 668870106 457474628 295589589 855873815 128820853 113432751 190046508 299429582 210215292 723626521 121866898 552245401 914411224 560550661 421563971 900942726 535206258 551966954 563369992 537662488 738254980 929593631 964033442 406659950 7222434 18488983 980422751 141642605 317996978 995107671 922495658 984358196 330102573 486017370 911797443 138280426 23089445 955868093 741132856 958050661 17975228 812810027 284646015 548221918 28829283 66361631 548430938 32051160 822419528 847772117 418985858 98575973 982297149 836772266 104985658 999805220 274850736 546422113 829986049 138250266 837041339 730556292 612506680 451555333 803764538 663446320 713068366 372321722 266395822 166106386 695111803 126357849 24901251 800222553 438962927 42418557 99052141 613147117 751087368 990793395 156667905 688211323 307756087 175754982 329598396 653410222 912726222 826176809 894566470 283187477 50294032 817329320 431766733 236682212 961205675 186890975 62703987 876144085 708510927 547357878 605269113 402840741 99104692 662679831 451525167 800193239 809146620 868621034 877180464 496093454 218243280 204773525 756589106 915788281 820036585 906723 235246420 931431347 678187183 261511803 916349469 363793718 244604257 948875040 513595723 681283338 593414076 618260869 346022839 953243261 229330109 906805103 44293349 151109283 71412147 440158090 562445788 267992950 265238514 747476967 717298298 171953066 525584302 316550481 542036563 362634264 231755229 901927201 126353397 708043391 110135874 303561218 140399859 548001150 568779745 143076537 413440792 198607682 465681302 321575025 53610304 802876310 281897064 730620936 52706462 668029056 853609385 592675055 332042657 537884386 449330198 888493014 973224382 762956103 944139541 946827109 615868467 9834858 826112500 844536325 179634358 59625669 604723048 56778261 443523730 135981869 948105342 643009826 848514444 322014840 792977935 759973884 181876193 123117620 285426607 466961946 940022391 941512585 197562423 811166768 595006725 216560437 478717393 792851699 631859118 46049222 177711597 946735280 883049956 634467049 605962 965384601 939744223 717824482 382904392 538017172 578373492 335300731 9759742 826363945 738663737 448541084 51713248 663294131 65013376 803881720 575532893 647624156 719105827 563069568 836699109 73469478 548780380 278822625 208413592 504802886 856312451 193081512 719783337 395510842 614118745 486952438 484180257 484715900 233927776 513693701 941630467 554186205 840854681 334507034 533586540 492711645 273282083 123068751 614481806 118958567 768846574 49125510 520621355 558366021 601630030 696758856 292258981 484663920 967317495 16923293 564657741 220367840 886764377 516964363 692773248 219371809 937766455 320044406 331269819 602599391 1000341572 472200661 560851218 109778474 510032268 966922143 609801992 464349865 422788640 348072429 895231997 453919413 702848224 202871275 750264980 535850340 902602558 119275333 848803617 862464612 51471514 330900135 863852115 53763636 388325245 203908462 450254921 615444838 558362928 938550383 117752402 144783573 77459171 497257191 557390065 101535680 519297526 803654764 534594850 300848694 580686498 146534968 327884818 886840101 237789419 303369704 620381156 842413654 90691286 498972643 915196290 566631748 810525890 843977931 51820689 490836742 758963096 72066539 685541760 887549205 78130473 27525278 817329684 455556770 798161615 917199648 708141992 861550828 580254670 709579299 512531833 424618938 816185170 188367081 128679880 190728249 700657221 658735853 650604469 194634698 280162489 692014052 712942988 824105998 878626595 739939859 487472681 548197013 914080016 362265130 166577333 669313456 83766750 825390348 111068378 958923706 510026330 803464823 834798846 966978155 559990182 998125963 870321800 122647704 984193469 569069486 573262886 734331647 474539684 578228070 434586981 748811427 449015400 208367742 775654035 769998915 507306317 672301641 270788696 58194866 657551566 843831525 109539507 190760153 932296019 324296503 601507722 170747521 425392514 560585878 330947496 234481518 311698541 591881040 627089279 187932960 11712263 524985875 427160823 368656811 477582896 318956967 461800439 639989000 573262624 244623883 119631090 930582144 901791755 893804253 336130999 260671649 96245788 668741701 359100476 354203688 152438760 498272142 247615096 344102183 528253745 398881221 189949480 566581916 422331926 544029993 215970413 101641127 856977407 475804967 755914732 559867447 296825421 809841231 605996172 225597577 960010127 177095410 897205725 509863832 320001930 911651936 109416129 369926908 896233128 397109156 93731148 338777476 497622827 170071904 431111353 695166521 718760296 3266068 951258479 693946040 724753983 919687677 531954432 583975148 382656359 568084757 44645878 140104514 466663526 664710699 784865407 415436399 81453378 311264477 498150936 150266137 948142037 636354441 774898026 781237870 650186863 282920352 639710481 586024087 153582316 164703694 850467715 804342691 8499891 870216252 362258114 54320147 346583884 600672992 618340088 849392610 888669032 414182102 214953547 347960852 390396358 216234403 542127120 612814504 745690101 701721913 742548013 795403900 164005311 978484499 389725627 779295279 510029932 385243541 241444528 890933647 197845345 43553803 787951079 997372492 564699596 355478436 16754388 297168276 51830126 29925891 201593176 450641075 885726032 592372369 636570678 675383907 595689373 120081592 932903551 731025777 644712125 189590919 502461085 867582839 808033395 177130697 218342166 995733364 251716805 334358077 259002514 519198921 477824990 324680621 956590330 785428378 560110712 215176423 669099252 914822234 104694350 224987230 751606148 130369761 466738268 359522419 431636486 603044537 51164003 664730182 36213013 201888582 139328939 180685450 496196588 947948640 713831584 276336502 747149467 451913094 432987877 140562758 835561479 274030207 153380889 775345076 50247734 741501192 807865752 93113235 233838826 611341219 747790280 917439946 120679731 13947015 765717162 832501103 358228821 628372219 107774751 761143301 683636466 337027995 775103799 279109365 727623000 289649900 691045088 608238076 144711188 278555604 921344440 767513708 486794065 960295821 493543369 766832704 137555828 230500370 906164998 238940719 105041905 854615067 168994947 66853392 330640351 251208734 936770006 523905924 312487344 852051156 192033586 491679387 656570738 798268480 877641146 853850852 851283637 370280692 11466727 206017032 706023961 958355110 610205880 135008447 203668137 622587176 296307060 75686946 314826602 414317854 284872418 641347135 21983949 177092323 609366996 613599971 217797069 53731301 404810562 373961798 852803772 994776157 913598612 758305532 778823721 659298382 1001679504 459862856 289823380 49355051 804801601 89735117 965055819 905363826 696412624 180269311 795383392 202034032 536457114 860508812 905252820 251873926 297277581 924444932 153754365 26408207 320703684 141252342 280937052 386398270 800975765 633891573 112690458 315064679 178100398 954396372 763319318 5157123 329785409 395667470 3303468 242698916 144071699 942413796 4289492 781844749 25543076 959962232 440708753 219544555 234007675 479380869 118350406 834393151 101654113 338148130 926968942 61465023 757335289 814374051 499828806 850325238 797969396 848339063 115829153 769027527 468951703 775661802 903403981 364370498 249261615 564012686 652055744 867915439 127075353 673271011 495376060 301981330 49896093 370423771 461254862 255329931 230548882 674604623 502909532 821923640 209638734 512883371 492841587 437923382 452016960 356214370 668923321 449869173 631813853 54675017 911924414 987759378 856647660 592577379 988958740 696152019 837169585 408605064 794242535 151113987 534361812 128830550 492980206 298165821 670016457 441167744 76010582 649627237 867916254 334671943 721090484 360180616 803796239 202330831 863836316 549528429 882662256 595571203 156662006 42741626 105044996 625371921 632141792 313314311 334679524 940302035 330094784 921467733 763972780 410014921 522851851 698277007 456252388 625867433 621340359 323616332 686000241 843354369 92892071 937607350 160341896 201338601 4332868 380693687 387871080 600228816 273626367 316460242 166384708 353180502 840475313 625576552 51325539 189297660 415527532 635521120 678614996 42910585 180596186 824130311 140471215 324371736 523049644 899893427 372094140 611641988 666460143 141823804 47269181 149338014 66910876 215422772 149797587 453306740 269597041 71653411 862644352 589852967 687666492 917293168 317083947 17018772 800086071 99283098 96957346 651926373 464691482 678371704 329317806 781154804 294544200 1002276323 770134213 546268901 609426709 47904707 599975963 347544246 747357783 252196830 766870759 336297091 420708979 423449434 653693360 166237342 819410922 243571292 97865151 691740596 385431587 147533107 860051116 340544218 811826833 120756643 441705890 703290579 814441504 422130328 181366336 330507685 192463315 216429874 48781549 456439362 533439012 731640323 30036592 742325726 983598950 650049966 780031023 576138665 343712547 1000095151 483413398 529566612 947992742 152243208 128531805 871176469 785989689 521974169 931090029 785120475 579179966 637299438 441403084 92594085 124847047 501296571 932298752 62712448 549363813 717020026 131038228 334686679 313953501 434323442 851686342 949852467 587139326 368419029 86902729 141181855 488032351 317830154 356191996 83244044 951531704 383013518 991944777 469555993 230756426 155675705 624495461 80436464 831300173 590711240 491961978 698765421 456235583 316239467 704699444 681923980 203624373 667638059 701748161 873434455 572911257 27467521 837470890 166973398 111441575 65750440 238273996 330721234 310194903 467571022 591681546 95545253 734082770 244216598 888878528 555330291 979028607 222282880 485817440 614417915 499015847 93636249 665081595 346822091 669651029 720001376 679218672 964338169 585752407 848923756 995468056 525123609 252728460 663625937 14315394 460835871 567743578 627850657 833922225 171326889 660990186 908462969 250964370 463481809 18100965 954917023 873880426 928531937 804434725 928022159 233855005 875717914 226258289 247390702 533273509 533749536 55126139 931779919 106074189 754485151 986003615 535657734 472609243 702285435 284595237 237689313 170278290 687666367 724882561 64712636 158683776 553738157 670730011 397335169 808753684 378854354 580340796 714616837 819574103 358403734 597932611 59820855 300357443 883499148 214355270 244615213 488211488 221811201 830680086 938267233 139451457 127216984 249080982 862183487 739384297 773328891 337338546 612947923 345321980 999074027 699454551 627778806 380007642 712347690 391661173 402968609 576180039 1000608454 822375016 522469641 354848805 379812791 775982193 835146933 204539798 946328230 656653121 227731919 284655146 26735741 183316545 153936414 810031720 158495429 688875442 322679311 90028712 699835522 251807333 389326697 902772406 146384467 111276673 301569006 768113230 318199080 275539590 502778495 949295325 659811038 729739050 922162451 851378808 266645440 932241659 699304156 519739948 231137398 91787745 879373777 357899565 580111143 701796229 377686636 593294099 701852139 985037471 999181555 193273134 288540558 342681243 462506006 969290013 978191175 130913900 799510234 922921941 991713267 682675142 628384253 388647170 222426234 728573045 270208153 126478277 492367699 133565756 827133645 233825960 862541442 394618220 831062180 588200052 807807028 575007455 352071700 154711520 985178007 210249683 964160048 725890776 501632011 185137756 776328618 512020464 127511117 991855615 260322984 627457017 618308912 237411282 709259170 894085227 723446025 105407512 591887828 374321012 894429083 843969909 306271339 5806420 3227461 212897480 180805117 450962771 379024474 783565220 45004737 89714031 613007381 389498796 332039050 960300964 901935593 951089778 239080649 121153385 96938428 779635147 677386977 198814999 117246860 353106423 321438503 726760142 44210382 756299642 206810788 538401990 422825909 654015064 665840413 420894571 603954970 784977907 874467052 127328383 527081888 181001688 942732456 616664122 741055102 367522823 304152735 43830534 315855280 540913434 473189661 343873855 795128180 951973427 25482507 465726358 147132349 101366354 891941380 411958622 87238383 389669738 711808677 554100713 630238229 354034365 566824324 638636873 676861365 960002799 847246107 350983221 917838880 527788616 617073088 123739102 169992172 486762989 883918696 1001818656 649552521 282572345 67636386 184020650 679179568 108709101 388760834 216750679 628519338 86610943 823727479 261850640 710182085 414604689 658339396 294740225 198843057 354254057 640762106 816134142 213965803 267265926 656227246 947112365 988655410 953732970 216237037 845921051 380049695 797999107 573293268 579796801 113017885 956049457 227102900 232722806 347584126 977662203 682017747 3352509 658941922 578525128 177830302 704116250 527332598 895539960 201580323 728488368 57425769 485640721 863331251 783706292 153582327 835483600 497505623 78835690 364683665 739384240 721984891 833916716 181230649 396303811 554834132 280962014 36487161 367143581 973867375 203671250 659842769 727782875 870796863 248803044 297042011 186295780 553549878 832527528 419353738 959263997 142229198 443472969 477901108 241435779 196723520 811715695 728723406 433778453 852060108 816360174 584401822 45675586 183899167 786654905 438493664 968567280 759505612 152714046 490348512 419934562 339025115 315020467 444642897 707419831 154060479 39251775 924195601 903181296 404897014 975512399 619710239 215127931 876995953 808720332 880452226 883073926 653344197 926104217 47840985 90065517 332814934 449322778 959509480 294628326 459283854 639137509 691994863 231448383 431667377 104298330 773321130 236023493 82738024 387658415 586651813 127477859 643738460 750430768 148667372 711276115 297826333 474059668 616672960 745116584 817868114 765664735 551799365 792365385 143372542 641171911 733486361 122624868 302713150 205390856 601584281 826652532 519440038 692942475 893109644 542783225 776614499 467174007 962841163 644818806 371793755 676904039 832907528 786602622 708665151 36765032 684191230 812030619 123457545 465285809 222349084 544097923 318685207 997187300 282402384 819519714 217590785 458931019 512823336 252411089 266377427 19536427 612009254 661478311 440032946 28620493 511650193 810928678 878312121 296729172 660302901 255498696 455503239 246497159 886124179 757771954 397080401 268322513 665104591 544461153 895638925 74738427 185072516 339635944 848702319 44753871 623249047 613780745 375364146 312768475 573628430 517132797 464895414 619353466 846447462 801026753 103114110 935799020 436408160 151496848 330514902 327807873 497869299 474537808 390531765 550222311 525653520 63794159 413621660 337840326 161457503 948117329 436496896 554390140 45386307 814018023 37491181 398615421 621778712 286050527 982552238 604151697 230269458 653091189 459491434 552183520 522796727 762900980 82747873 255234680 889134098 19267529 802870862 130704362 295956390 310457117 257557200 610202297 31561042 176968078 583554564 410637344 887839018 723851389 244569691 153352896 290538329 995819230 6932471 373151767 360459367 141912928 235350721 332435046 576132335 900576509 668203609 374313807 472625831 402441317 952657079 642575415 617517132 163304313 339720272 413294948 778318258 541539533 963255190 897002850 765663990 643465951 459441860 788070573 349509102 975998862 388909720 711998251 701030162 887362638 436201913 423597321 327485268 152848883 359095619 496079501 764976008 291652425 587920739 150213958 956273809 403535075 585990313 567129454 817931812 801304667 204217883 88879909 752284974 484530352 210063785 696190495 926720178 938503695 419551574 250092804 696872868 535337683 147930080 60837290 145473884 453236017 336822046 147817139 690237894 299425470 505389696 694567119 703577921 735896191 502273592 393886325 794840674 295174264 757478016 181430339 475549731 329035855 668489155 758171676 360095794 239977918 397079253 896819055 124867222 716776245 707828147 693680399 797785050 790698888 948422414 279358089 743739883 586911209 787246995 666898257 134258683 455108681 435551428 879556613 704185257 807140130 477202876 667842466 214177281 668870915 423952021 269294746 228927903 875708892 756747115 68985329 212317538 191198551 646108733 835146828 574426344 139058371 7956025 636661350 669006718 411086865 428053188 842391371 624454871 459340118 77934931 1039901 513296246 783608491 807660354 669915077 112444298 767522866 855280884 808607072 908389850 544456942 934438442 286561289 505872725 91181680 379577092 856636084 569615215 448277017 793437145 36498902 384909676 824116512 296681887 26224937 7722883 125040100 355769014 34437821 454166977 528625022 257202364 4139385 439725989 427998570 645939253 102554686 42949782 367179688 688478736 436129082 417940739 732428983 178290593 110767608 353332935 996349283 731010354 483965014 46006368 443338791 963176795 10485981 15902918 829205559 1778117 185474413 135526669 423294943 292663983 532453001 584757065 600356904 349253130 755705195 631137496 477715322 633514089 624636145 501681109 771070689 348325037 422195120 697398847 245189797 251732878 584237230 643552614 31508949 319863074 320347981 112017642 908224643 113335264 681252690 435450028 267938206 2654023 456579016 94259143 316536367 113331514 283974977 749654339 371889082 461508276 478931849 622970454 500813641 344203233 378775002 437089734 270876302 725539350 104015116 242494391 488603369 322442844 46163586 74536931 78320836 652360456 325067755 87133762 423531219 896004789 361587501 307662109 299187801 594060340 894182938 322210341 754909416 571557738 135101057 455420729 937340862 387782940 767801293 837871583 746954763 598600585 353132069 407214698 318769427 20267032 171058230 670905458 657547740 432359320 802934725 90849663 822665205 757164879 981353158 540599528 818419888 714658291 505520653 276513698 931080928 491335590 505896089 784735011 991440579 148270573 216766518 167044990 485608802 73145160 297069949 769309841 796449561 240089652 307408202 256960072 127575168 871745050 810974719 665055634 764080294 261786925 883051466 340463907 41444197 524794865 128134188 659533054 9956544 115188479 923374587 479634970 783484706 773031882 74387201 691573492 442076764 340388071 360497171 952329838 576779968 437367622 446146619 294877783 64356699 190217686 590090633 622016408 984410399 694230399 760763528 918879039 753038439 675318142 27589697 151391826 456218654 438263293 708525499 475295899 936531069 350416392 22812552 744995668 701288256 563486239 378435415 272960642 668453135 693374094 552934491 449043288 336051909 151398851 552466409 623952962 894419889 82862881 626144456 817447518 71171896 712966340 997928350 646199700 475809749 553769736 499227260 438596545 717577937 534839957 17419415 759778980 85565748 959508191 344932346 472536747 484321295 205316111 670865296 28211384 542322775 167945437 343328733 647701693 279848155 853045184 815826979 948146811 80916157 500904144 634657033 512803517 628952017 80170824 833029303 5719706 240928431 426926230 492536135 736680773 381469704 833907755 878232212 58444267 325825783 400656931 450461847 659683342 731200866 643052233 632126391 542288501 203662509 831204087 122517551 579941563 577725217 583129284 862133790 8128621 677050501 237709018 206242663 867340024 205097277 464014689 155262301 409949351 905782128 604205615 980839636 785617957 747000966 10913961 385540220 998962913 299998848 193640813 614974051 687443739 360030034 482871095 799336961 691423487 721696740 879090919 706007983 976468505 528509855 160654990 37639569 846682712 455835963 136757929 739492512 973794187 847090789 700955872 643610846 496211153 555530637 336847986 460599435 332153745 717291047 336483588 336902176 449966129 846369454 728071898 593622487 138884798 286756728 228892468 857582612 981137452 747215476 779764386 893000594 222424891 410695276 610008523 670408422 820322823 741029265 28724627 695372406 487471950 973366621 838684335 794989192 330171669 574954209 821217088 313070963 510536220 998142885 396231396 530301591 807922372 41490699 660780247 527823245 260270181 908239078 347002684 505630526 210329480 875770478 310467985 388535983 705211694 421575363 27764266 354523439 587335614 800942364 553918776 634909976 158647556 951073126 705583691 629007407 219484402 13206022 215428645 753484177 561966986 601008292 591088133 558724501 131739303 805946196 39636046 649189701 567339776 11999674 157330412 285930432 639298706 500357244 196607689 85237325 302065471 163232265 569626245 245841556 921154383 447863404 597487624 142099482 598306682 957356822 192146827 103500583 915299648 60578154 850138862 173641815 189096345 678824575 43312109 839710213 800924177 404979536 79924737 66055160 706699029 36417443 183329864 530188018 223916007 446369078 661930011 407914827 970435527 148796107 782675746 714384271 853818818 511068359 588166995 303660814 11060347 338973243 842182645 410403772 849547792 969043277 198307509 108652176 895543144 164684630 775955631 939413070 651935881 854584362 933379563 295547944 77407956 19009958 166784111 800123015 368631980 877282432 613258857 124010415 970078937 655838920 562660808 105193755 730395815 591861840 227710503 751115306 703394354 84531706 569066725 841379968 85838636 219007354 907849819 84015670 856346232 770340690 213381683 924824066 925282159 263251375 865094084 234839341 552526272 551980831 112492037 716829956 782635776 434211474 624183072 931128740 515267993 429153519 103127229 391922331 536217665 542712403 680208694 449798748 797815478 563648182 127958014 378013751 8936531 326902576 867445584 974453377 838535294 286556874 101257108 748187560 267975584 281254213 280334800 704694834 52214435 113219797 503739957 258899685 342900232 685495344 721527960 279785673 755838901 555559968 390717233 449666175 866482491 33514648 395763297 520176368 503613133 714521150 430561674 576262365 162826078 930816779 273274307 868167504 348140713 728961052 243525543 203058551 991981647 37841903 823529815 621762428 474264160 706430745 204483363 24753118 7770692 896172664 959666001 133295584 389994457 745089485 499679419 260207498 963133640 130464236 778219285 316100120 438593616 662518996 976433560 904166722 202218343 800797794 243527847 529947831 312454447 868732651 658588654 408253235 882999967 77975079 874192921 362140786 833716328 937883863 146843498 391150651 588686177 926427071 709277174 433756300 928717428 884561976 173512502 399703603 736621561 895573378 205818844 139830020 698589426 667243038 35452184 817817236 38364433 787032096 710428071 91205577 171621561 980171800 36347577 823868297 838010740 427100542 749823172 534785147 76391353 842691544 176021489 279279209 830679062 362142509 344252296 837081646 130923070 766388480 396241602 840608991 523685018 251341472 363889096 594124819 280050271 395750908 896016642 536241612 629422962 217483107 364914328 478408942 220638977 838576069 259536071 624179887 828973652 482474977 732608781 222533680 441991591 398030528 723367892 487387858 686421454 922872795 475764993 131271786 213118271 80018320 484817145 557010037 368480189 220185195 16950061 87236234 852627811 431736140 411740228 254564094 579164014 951854080 521400420 172375825 855558457 37113570 721157537 233068112 941694059 3086273 61132695 515843367 859278632 951799410 268919073 837441705 130612792 538381806 231199263 351694953 112861773 901544653 726278219 989530781 684226109 882562067 703370285 208075510 798943083 28678842 244739669 664299060 261998436 126272481 988056840 667325456 74201995 633946400 177144196 658674400 274504396 682570818 953245441 47433954 670566481 458647644 937138368 663469030 551371952 88856661 361052396 477290348 158891915 713787869 818281691 430518119 208498938 447736070 981027615 762062103 971887573 917909879 836260883 138592575 830696979 446812310 395476995 689487744 736290272 23690377 519107094 388917891 736330351 266692718 146373252 585133909 409933702 353271197 757533522 26294772 280430979 948035140 432217090 532345552 686304829 251555845 146743392 764861603 401617683 921483810 745721213 770257277 279791804 518942996 825834208 623475359 137492536 644595959 548012952 515276722 471184901 546830619 892109299 555544656 877499326 795232600 992324433 433763033 596744116 112407140 566670195 329826377 232041486 358646303 995270658 833426547 890778742 842936107 283993269 532254463 34249831 658103761 924891331 781962575 230302409 463036436 215198280 234209339 550256054 122134710 829828769 998581662 197617293 420884351 99180943 238274482 723812421 476960506 924736935 294072175 757639338 675044341 566841658 379761747 424277617 367786605 639189317 376466985 227108505 190312673 163556069 567351160 564466546 183601312 582875385 521045776 824599504 880509451 215138805 824111907 268729553 104073584 419012635 411127209 514607732 625412019 235322485 299056635 259257805 370147672 109854445 752175594 988180831 299283235 472601972 416980884 790703621 198138300 959747352 579715741 198732076 950977576 320287528 521257198 134998009 145287967 936760523 285645672 488263636 712809997 535214327 898087487 153499416 747038624 819472603 997503319 451941756 56402126 610352516 336891893 513467842 532984569 300902568 156093466 964153150 427108360 676004505 696063517 113105639 128513178 984580376 542262833 841432513 12280811 933484571 262554583 74806309 285507871 722211299 503976192 447807363 297261384 38981546 185538608 619754673 384137027 162255393 888026647 153465148 415053048 587100931 293075028 980488672 973864796 346081393 863755835 482408761 969561978 209551181 581576250 105085735 987906017 736689722 745569171 764775825 387755727 124209614 798825483 635288295 340233327 251687966 492341126 546987975 331219629 319869641 239245559 798560626 738159573 339780095 634354922 438246691 137044388 27388540 874070216 630624471 223930658 637620811 467615542 516106626 815574193 900275928 320590379 686621006 556458757 350414514 80063644 207201010 592887647 474637121 245347315 942920191 38664538 702969050 77047676 460130965 510492294 567486069 493679758 425579905 838984768 153806276 717398952 828591283 72688093 16100986 263956908 286403362 710921475 685333882 50401494 941486536 367895811 806774037 36018303 580052435 553473279 328930414 50377282 741955742 223530877 181237678 306790968 569141766 420111219 450520099 750372280 434033282 800928658 471741197 591729477 4580792 688404376 503409084 248730153 388569188 867426740 966528221 750391994 208367555 658196734 565508893 36159532 1000662249 555544089 245563993 435625600 225960375 23672462 309207313 656068121 45929069 859287973 732036919 935409716 954356944 665253176 940425553 910659805 650574562 427772960 893279231 245005267 540702368 624390158 247617977 170809465 871506261 525796074 275128412 807946979 485028948 823208571 260955836 47925119 451520377 326290996 463915536 189137078 819989404 688044456 976612695 881277560 168316842 26072959 538212147 203293809 80982266 132506463 176710781 690097737 578178752 763862560 974419275 414485614 341970794 135897392 41581142 503545022 806186686 832366260 925005652 772028000 523645382 675443541 860957600 7064602 116792970 112574133 220328959 764938275 155503189 743852707 967337482 72417559 350560531 300554497 498337004 9383391 844452777 610198053 596724689 721701357 578434306 517906011 620279884 63544887 629785 599241439 690852179 320828731 861121487 381923716 905442621 126051550 432134182 228982712 275777190 11606572 775041139 671930565 775543928 886204708 637943861 326090367 675619240 743689160 452927859 5069141 35431032 885521495 680145751 534307939 911443515 382887594 636848780 980904471 173830830 503239609 80141069 764395630 391906495 103552218 128004477 551113314 797389072 244785211 648007848 810128156 918757189 845423658 996931338 603096271 783376820 177699345 117260087 948070435 341381789 29204284 609042130 72127067 849786195 508081979 537358408 532813973 264195997 451292865 621470988 366190216 968296397 326956236 882531488 440210124 405157301 806816507 551997841 220199078 653912963 921936436 366728513 629260371 572053914 140064162 310093213 858509860 626313910 90584412 688678560 273040399 965543478 176499515 523097620 183713870 678499659 205097209 269361092 233673285 833903799 698593847 206552594 155933045 692983784 169588470 587727569 619237938 637242506 557970485 372334225 477817765 771620 982407738 975753717 833187020 314099801 431083656 137310302 413226182 194931929 966969440 198070293 79403715 884907068 645691913 47123257 436751133 887616142 444119605 217316045 363521672 769096534 348899300 852020236 315161549 268477172 506849480 38668191 437891520 407635484 621607668 315029769 973109960 806200784 203184458 187068816 750607629 642232251 683871829 615456182 412728709 98768671 905464379 684762756 149269009 657584420 764097854 216233153 563500041 415317580 602700650 124018504 808506917 759523502 403395282 86809457 548925664 78114765 410715118 895938806 258907665 966921374 169065813 937903671 830560695 941114969 478668888 169554508 270878157 946955619 36677498 490955033 856385102 809025932 856978416 12601499 418985446 374232628 999287162 421496007 698241372 903381241 319706746 255818677 318986110 562486381 771690659 96453250 520293133 794475459 387142231 996418226 109372179 58977021 83459101 716424439 897176580 918676531 975528400 851001116 224664026 863876698 626859663 811246805 62895983 114199978 688669554 725441740 314714701 946310273 19824782 271950715 470953291 162001800 212870022 439549623 164926696 720576344 146472086 378770831 347641137 901914094 172653994 131583091 743177466 921749597 382355065 896492577 1000737840 564136674 449342298 131087862 713023188 704940771 373867257 544373312 904576018 54369488 429793635 185319057 615611043 530869480 552111578 4111855 890718681 337448268 310505475 900212329 266154759 163226005 788823815 786915464 245115113 620434882 249893129 169351318 95177382 513649778 127796295 644413942 339785819 727499535 985944805 867771821 404584516 6931911 520756227 932051281 937243870 755372758 44394371 261316911 748353898 703210208 124592384 953814295 745907435 326195316 296279498 605458662 211916154 868834395 310341690 173520850 676796730 300953082 215547266 243262909 5401384 962181568 514280198 588427127 914179717 206968410 892108058 998577104 529966594 758077198 99130817 37568182 730440492 242186181 597445866 630454308 260663723 982837764 817103141 123028850 391507718 702454876 640986428 467324898 835191566 232879874 689589082 687018879 63385047 519374464 129117560 583657977 187234226 298930941 19411889 792506382 116091516 282844165 692043142 552845589 143989667 172775883 103605422 431648983 773436802 338318088 876597046 593350460 597616879 95594571 399453036 771584142 598316699 778458644 513776610 333208239 523983903 257241170 969332786 315030318 757718329 450662666 172190863 826057545 108352341 320517145 176050365 306533531 540519038 137536861 728840406 420197849 189316975 128706453 287522382 569769172 693320754 910062890 693488513 261289300 700924111 145936052 6316715 642973010 680604513 53608525 308141963 315949002 830364353 784043895 626007526 952756138 634409376 989737829 356288355 150194370 163438970 882420958 728153165 105210524 850584497 419913040 796248257 452345991 540966143 233674784 832195885 288910590 574787280 775681504 841621379 506855198 793400759 589268778 352797590 520638571 833518722 608523972 139040382 325202398 341142959 466169469 870747169 562975819 126881325 914581720 156498781 265166075 1001368253 681579856 740077789 578863379 424558894 214526351 56221923 402205825 199831006 382780297 325191023 41270671 788498551 891851300 540938977 543799240 230150780 818172608 89515490 555377137 587095231 841426977 68520483 767241784 899892604 91529971 319919000 331873108 645330286 369383204 559141092 32442255 279369143 404291827 713180444 177420111 819375228 385044974 495888359 563806351 651616684 360834607 664918778 348921361 499767169 358822408 891428749 734762014 649746741 561971584 407348522 893441364 629703547 835680165 947695569 969226101 638565572 276382602 341506054 273060479 493743179 995029643 649473730 451592738 273104698 410888425 876616161 742025513 679223667 708496285 525735016 361232858 834110761 75159545 50572741 143548570 137411932 422648512 435602066 924555340 253665862 669051785 578796013 198556526 478898728 585759996 140912300 688060210 154475834 613435586 424641528 872053713 905248821 7901111 764021242 207906891 551369690 149065866 749567889 890215586 117315582 413161107 465358097 284217706 519577353 745600317 406752521 398217205 761803164 159953367 854356848 1000897101 486116657 534115366 321847693 819253283 841583289 829637140 274906406 295268137 344915549 744132864 583306984 184628464 523511516 457372686 190055879 202154650 762108946 920508843 18841541 732340124 177864463 614074722 667710137 481185174 337002417 878768402 871101600 15586457 420880877 691376538 671017459 266740741 424286340 129848001 918158216 639894739 989296063 371994437 988990319 351902495 989040489 722743986 807133060 782494726 443067231 285229570 720844237 641253536 98681317 112077804 579345681 87530826 342948082 13689785 673367233 579273124 501195991 145835735 736916408 205761794 246992487 824960881 442248063 401710577 732402057 284172227 153570617 371344681 293064969 909185979 663560200 708603920 588792728 167510007 428639281 782386712 132850606 574174235 404064869 112565714 676480817 355920817 908117980 154883066 957827394 39449178 995530278 303888755 540758215 70789575 402245067 390505545 404291552 314910560 145152096 75609311 671894291 638884057 295650705 326401262 339678626 813553345 212585696 442949595 215538711 464923424 253863960 956094148 344040742 1001484207 89533917 876408535 209972171 496650015 426551611 973081087 565620846 831223934 815182272 888998624 888664188 581734695 904467220 258105694 235322837 198887923 242668711 431742490 153203548 686547143 121155931 592415695 513949385 67603608 194006882 933881516 830498616 893539947 90536386 297857319 318579841 639795961 562317784 586244567 825494062 152354393 42456513 642614186 696114974 757411627 939091357 419888597 595241733 715017461 492464000 642417346 592339034 130088884 321072855 199552335 589383701 384468448 256297100 832649952 85690449 825059242 579811561 909787752 4487499 889672912 498423775 315811167 503733514 397382411 442476663 839917800 87976276 573933519 803612182 671541038 636310598 416376147 260286912 676032830 331148262 337607528 714768189 69007654 839691720 802000784 142681423 602603880 705779388 221175066 970955476 753069423 766522074 144094293 424668959 694474092 944314190 613467666 469059408 3352381 248947529 770809239 487455646 346403227 962561242 350599081 153334179 764257719 639344680 778280267 972516854 518716279 459395375 239134058 585890540 697862460 831590502 512939864 113908973 36009160 70958240 508366138 604858120 608491433 592766571 470810511 194062746 502253064 35331817 284683570 744735357 610209372 981391210 527041817 45142255 136534640 479187174 397539498 617855191 447742731 499178559 535640115 270627515 461313191 117248771 557153764 931685202 128130440 294339377 921673033 732679151 283307565 554450623 374614492 566533670 577426846 370549287 758780368 452455396 847383269 332738097 151061678 963311242 421780512 405248898 784932827 547014227 39610476 761347142 633698853 374317419 699649409 521229139 149830443 910966047 654214215 104688960 614585622 175800656 571952695 666813758 487132273 689955974 556225683 653921432 325126306 824017929 472531524 667925014 898964549 312932772 263318729 565722758 860130673 318931670 246603432 419129634 689605412 28975601 958945042 600788689 876805765 993343172 343965297 227341294 754054191 429481358 554462759 322736273 845903917 908498774 866165311 451663533 381756483 109260416 937993838 830110849 742045357 863454296 522960742 941974791 145165975 617455162 118718507 855203794 929291542 838083031 566902885 353199444 713951120 730875902 356264215 125864377 854671532 242338419 105180848 144925780 915203402 39455964 495276693 987368236 955897368 381036054 794816255 886781481 675547002 900177372 770504576 104673499 297369351 338712171 49581473 961412645 689937605 697059583 493359527 240261325 46620718 206473389 812868494 747046530 87880592 711655923 406665536 708761103 807119762 828363938 475236675 482415687 238219691 15751217 716239145 95097091 294257975 76602729 457646218 260602673 341365376 574290631 868263231 711820290 708601565 727955351 389965960 886719916 294622140 516682372 163327376 661386331 503415614 433058062 391865058 575046739 593430104 711467889 7341535 639143336 525314992 62286229 687706581 311080991 707575304 44773017 886511286 255880417 514334262 716782493 590079275 28210726 766457347 900856380 286983254 407391713 967972060 321938973 756522119 363455480 368596836 456005586 204808443 357063030 143824863 173869620 901786305 78534391 896418235 557924063 871183208 410918618 448990371 554776880 676197646 249748492 709787024 475246237 467561837 135927754 390432576 640230032 179678370 238372336 283591290 630725972 67330392 338430842 575099373 278425293 64165705 567430780 803304366 468439258 929061676 61245289 746531691 92014215 746466421 201006907 311070160 573663232 404093285 719532831 200888974 493813921 494901020 520233635 819637176 455960010 292556946 310364925 663881916 941678545 236594124 848173654 616861429 451854169 11401597 277345815 898384627 317450759 375229700 294126912 528824634 465041559 912882205 80680020 791460807 992294323 441064538 933980283 656441911 158784227 32884048 214396731 849545722 353277783 618932434 607353954 623135021 299676147 604203798 178189109 3115058 350106514 297431636 148029320 736667498 812164055 329807078 680570543 182462932 756873895 893696060 224682571 464446983 518598775 678771443 958161136 797435071 182795932 761230598 76598797 19977276 974884886 191377025 450667039 133414929 729642405 313219666 67915207 80739273 46397372 598617937 584310735 749047851 836276414 446375431 744851181 712632950 354362561 925314480 86313041 641848329 185187907 80555003 787321402 757057860 11075518 379601824 22337719 824647759 154625329 934805512 281951748 225579867 339834811 96958906 581703236 827381054 836804956 515810106 219768140 114848477 604464714 327920658 971933197 753880469 648238661 536839968 336635203 279976084 847520518 658632898 567520881 95492866 444886342 569886267 576027534 254924610 375327873 661987231 849241174 286805690 403980941 934660754 396183311 65534755 337238887 551232727 112611261 504481553 57104841 719086464 936872463 356898326 640097177 334761908 574367935 324107658 100587675 375918661 915546763 808336451 516924752 880232198 250604003 145466483 279358604 145236896 35704759 926928629 555929872 570676357 695870995 620155404 304798506 838477768 1000195756 410559792 652204534 470029302 948993434 166964269 56860607 281957962 415940777 142512751 646937738 904729648 699286199 667281322 121658500 223315171 459693272 914126991 876613149 401228301 286132474 448663170 989794141 714818051 56049198 266001921 203309450 149151972 761803261 782784586 379045843 664363990 114426608 303883768 542643553 533662538 953770759 898235194 151780549 657979299 326507847 935195043 334981919 191732991 362588017 642369933 901154314 821769358 170031339 47045891 447284389 437027638 651098462 651532969 681806480 319280636 407981147 176877915 131272587 994619217 85416147 473493454 37853287 371920473 85548073 915769555 639380245 42829514 401412426 829602157 262115438 879319744 871391922 815956609 354297659 881697501 52592469 159779791 727335140 140657574 671454201 652627237 773498730 267463575 97863720 583216078 545622962 34233030 689962995 600399488 191021971 693170020 663562983 594484690 711583788 996032237 701075201 185315258 514577249 402198842 17467473 57501372 964745988 938508154 582316174 261804647 784247300 214755824 649197481 582203931 608087798 695100714 627349275 936273172 6663211 15672195 376449354 494419893 332772631 209934760 675163886 680515795 789904178 669313496 421696451 333628031 633782353 385944606 78629283 90166759 382194799 805611645 489182571 291608035 376984009 593904371 664331099 725960404 363705132 223538909 466869650 797379253 65873329 870717945 104007857 572393470 100963176 210922687 674573413 800030043 525287530 659718632 665201694 990865086 455260583 402265237 760280006 931734918 940111300 333823398 799430542 137098981 391187109 754365372 607976396 901172770 651219339 737391579 210345168 225010879 848055992 514380625 513843760 824980631 101365965 699247860 648569790 513745708 433767160 796529396 465890904 670295776 538749134 810047830 377724711 932622633 375595938 707819790 602946895 156835989 417781485 583808998 178571620 284458735 144140734 44247420 970366496 989798468 959897298 340733237 110808658 716403247 164022700 156142856 61757366 181987079 11643988 78822043 391146626 821559207 588360877 473671033 177432217 545285184 687695986 665577830 432573117 158764803 628265572 626631579 386221672 685662949 634407646 947889981 3513046 498883880 800754051 503971710 283677726 344898037 161366506 934033756 460053004 326237844 905003934 313930112 305338725 561121224 100570527 444943469 320179181 475381283 76624736 99546247 501121031 604885827 313754031 750374162 882342678 800913039 741619935 929173213 313644435 375556075 39679388 423361121 44268932 628796425 890532183 193333589 516743735 550372450 104143904 674761658 76086834 909222719 660814802 523261122 43080589 691838802 351495930 748766749 982667187 376383884 820865588 972439020 889584976 623758560 439322901 385777907 198571458 394303583 648263357 364426136 188257090 813796484 860576721 147051619 336482597 795744284 180802486 436344981 480717582 374183528 137240375 101293513 13422717 907369332 806089662 978585932 941868912 32690482 822900326 597899665 887781693 601921478 935851645 624792042 172785814 657550326 696957102 357325361 433147743 551136900 539761972 529113283 751615604 499207532 79719144 245308129 382475222 80571109 151881440 391921479 122836119 8657508 185862793 995007220 270651642 152594461 145949734 816616620 888295370 52214447 430744374 481648260 408671963 774787682 342485616 66981884 540958982 765874087 657371618 629955900 351015975 127429365 430006995 85907482 820005688 230546378 163022946 335289162 974459538 162699824 755268339 760666703 828949460 70963899 281722064 766210046 335977800 32250464 83366760 311174021 285844085 398773994 157388822 476876085 129838714 2100847 32273762 329158678 713431192 66086945 797801319 150798558 478368738 826009318 765457829 643412224 317514283 795511295 619782264 318597154 545890986 979119312 281711182 460289178 523869694 945111303 966813588 509007264 5042138 626610735 993389011 830627876 739264457 199790392 711897810 32428736 93493899 383190146 963660672 620155014 739143086 897767572 838744317 832621996 756348346 694033787 365650020 729873075 677226119 411896134 326241576 132244858 114127898 201656841 782195013 714433789 812333335 940247602 400569587 273341553 283049711 722424961 819167506 131427654 527911672 360366637 936477972 83074026 660631857 48166468 872326382 149062545 396573853 337359056 854845582 860656715 410776506 660739331 924090386 394002120 163190645 282201060 32076990 460343213 969800573 367803217 516688237 995039503 7292296 274111505 190014172 942226348 226317702 920724950 196242893 172157908 860852370 951840775 772455578 975661629 35719334 813390934 994759794 218760366 817382438 299076079 793381954 657857868 26677573 152912043 719461425 711948550 274884564 835486609 735041084 646424935 532171023 585146517 870287859 644716136 72714994 368005418 178514544 675796762 988228656 978986350 647994068 305816355 297224745 575804000 784729775 973077088 301006549 149603277 178943445 703303355 359904345 766787747 294027940 90475553 321426172 786124340 929128059 853740989 997025189 260694157 26627436 143742118 210454491 417905007 23831315 163238294 297025026 575786347 503748963 113780923 433516723 271524958 376145466 245319697 606016128 176899867 338291099 66087838 987400330 432361623 427507379 789481459 962303704 575589152 287014463 728212513 371015768 58194613 659472564 580813229 429074631 101706321 123877366 570497575 903675020 682676878 309408721 190345259 97496522 239536934 922361945 855540259 116656424 809472293 411824102 194925138 431107042 977910605 249201603 329336470 495311978 634785708 208733319 691706369 367477648 743730028 373601520 219327111 392090407 401563395 912520668 882538495 256254485 42123072 949646376 212391344 957329217 402977969 157375677 432313338 852205797 484677698 487305470 27618232 855946894 648995582 259295074 4835946 29753513 994755439 212162479 923727648 953812441 751842025 54174438 698257118 183124334 996237342 730324523 450220596 420877061 491379564 678318395 318968629 662142085 694411963 90954549 777489998 755815087 203772705 105532250 720992600 261656886 291211110 9942355 313737193 609994961 305937253 883610570 476941093 461827535 631878929 291175656 940497128 875518642 737062934 61865747 811438283 75176171 446478639 667695974 715209773 385842311 896769107 659266027 65416212 211946503 472764882 752263662 284179451 315313217 676697661 690550686 603057223 785824690 720269226 935022511 703364974 968850797 981473585 600196305 257034768 117795150 673968140 101380850 459009489 774061808 748386533 775901226 546393540 737898109 759894800 193037478 498086387 448220033 88129158 350713119 208657854 608045493 679714900 485285836 816708987 993239410 322734695 467471776 546172554 280113535 617266493 609335420 813938296 408677012 352945239 543988090 815508992 592190850 650429911 512281087 679208005 457459868 999648051 134972885 420395724 947254485 440328740 324379367 465306306 563178281 309558197 522070135 853913170 554511237 738163791 719530295 207150342 703232155 538303171 696276503 745878386 20348101 516971372 911363515 894417320 163407015 618927329 850551910 328759635 935911334 415971542 813500196 454024660 978310977 564472329 348274898 269850047 318548765 324798540 838644214 829754524 118192461 512864140 796046373 309824493 130492022 642322775 20089551 107439033 297437007 388463644 831448749 16049380 486662573 92174427 856599666 17447653 879708209 687100147 9261858 833460432 201072402 292111189 799338575 806109459 26698032 559398832 42137157 244741630 879667948 971085635 355853805 247426764 633940720 425810730 241996950 881481221 129912999 50069529 791494707 101875412 970534908 966498196 159020190 332287252 466575506 100144822 552613637 332167539 775084086 779349466 403911384 123902260 247696127 586665752 76573750 851273748 58178281 395626995 149432673 210516878 631679710 452946268 946520415 481346457 97595198 44228049 590848552 834585573 508590160 661233897 882981109 399234214 797107341 663739447 181803826 158833502 470278236 525176944 324081935 746471374 830540144 452009565 846743853 630818174 665264052 129358799 163834307 149157228 655618011 93155709 779723899 525481127 312214872 117439013 212221643 638889170 441242722 26554517 230705709 916392959 302769095 680338113 711455859 729871836 522172593 29781034 815663272 945381530 587543486 245528307 618712810 546772712 627026790 999148312 838398662 167898855 771109112 360712776 712732561 615550157 456391180 192305088 807697722 82548279 442719481 667951405 908196831 770935371 619332701 807971315 357546156 230237629 708962218 527256435 156496050 896051154 644855833 890817943 603696987 275280530 514857301 289664644 946476113 730124390 323257193 135094448 583788300 831935664 953437776 992382428 606571237 161659037 929025177 911781610 619435380 668252520 256585649 461256288 133916529 544550581 596540451 355496507 695598663 954596126 433510819 972172822 841355731 356853821 12056479 950557627 508892360 386846338 103544011 418608063 501818462 746171192 389876529 623664315 933099357 761067424 19234472 159113482 476792000 773617013 367850910 727302164 633433545 965625643 32742999 376428244 653186721 173850271 324644491 775662043 818265052 186635098 454922781 569211216 103010099 891370468 222718465 68892267 724190629 492673209 982664131 551548646 684622150 719807933 575022069 481224405 401168966 995088968 647276460 918653364 307297892 924607057 833742812 673290254 857728899 607029308 122242843 346250530 829811279 420255003 945849366 326658773 663605756 194710130 919732963 829318077 102830616 510339463 693559082 825271680 64773287 768937497 432904879 531345822 201528384 409970168 647874550 885057437 226444336 771431219 398897467 656342642 716984636 837604556 548091473 409466714 574115889 845466629 497016137 28019621 347105210 193337992 231949486 414210978 109245840 348254496 340901039 901476132 776497556 897680449 672849495 69634586 273456984 859851800 230911386 348420188 451758975 693308526 40163549 119837900 974113289 336097229 609025244 791895406 150122403 473131597 475067645 189480968 550390402 251703283 53141848 388353193 801668443 836554382 150206738 6727647 356428697 76934928 363510797 721754618 168791196 394673127 774586457 281522668 699222117 374147065 487015817 765460450 348519049 174140212 227823165 244625016 214537237 452658260 822109762 650366445 659901417 630305827 490216299 348164611 274444616 650972428 747970728 993006923 978588896 591343199 381358309 154902712 102110061 399652563 906380917 778445295 189703806 565627389 579166436 961598567 202100837 150695245 865355738 519314575 748104545 135010823 750110974 592440715 876066492 55427201 356293166 338472290 911460259 517696295 280681424 847321599 882775970 663880028 982657381 843888212 306908538 954474848 947290622 943986035 739486849 680632669 745235783 43889931 599467772 837323113 404355520 419428676 902512702 70400345 949442473 147526302 54046637 905928748 483496024 767858274 356885841 478912142 455070475 429866250 876542704 123630384 724835790 248691432 434225016 26804369 12702022 96311472 806989912 14530355 203746787 591354449 791423801 165252026 126008865 300943997 463074636 461634022 972950647 762474388 19339194 880127354 472957222 243446094 743110781 791294200 946087079 471408452 482613540 281477403 950608148 821158969 198288651 218302490 946770537 326869927 543851760 755675371 419887274 686825564 667471142 255789124 832060644 202195436 774576802 175682046 991902716 859456323 28878458 558260849 826346783 801948208 504425553 194122095 255077388 138058498 263891973 922594243 500269738 436097304 346867074 440826208 1001290543 69232184 519883644 186958608 883501691 966050078 806208156 148218621 40602558 780339231 780014603 368302953 107336623 199073 791671470 835764497 538916514 310553066 450855903 186342207 670499699 868955773 560719201 28701219 499995484 705519709 824301259 154286741 517826787 964251649 305476514 304587772 653862068 482914132 827787278 986547613 929334174 233077410 432899568 522669321 557917483 119130528 479854360 207799892 902747159 628076814 655560393 746877351 756521275 790426152 369568598 643193679 23036576 693800930 406310785 970490087 800974021 914488833 921283154 990374677 565590087 29806861 775883514 178092965 372370375 901164714 103358949 282287162 452052253 760713224 945515482 920423152 43387096 992334952 701489287 207972357 776331584 766885868 94678179 846477872 557339666 983331989 478968025 145322419 698907430 988155731 268937993 287730929 41429104 71158002 976570845 918542067 999632843 341409781 534181612 564201610 761800230 542294745 323771579 569403615 870856712 284175900 461528795 932498454 793946346 689342872 9484849 670245719 787836436 696015523 794596651 25590048 529903424 905960068 248160597 412246768 602771888 95697131 748228074 958973970 432015211 192086153 893710782 27019025 513221432 57387484 536960140 828985525 20047372 331980103 961896015 459244815 834783568 535922761 438422789 403772284 400362925 673172755 952585190 546218581 95473903 641925930 892516218 661606862 21776566 560964498 870785119 34198804 523647924 870820002 666728607 701140903 883425169 132110907 916095593 293446513 373479297 322774855 384904860 328633986 711296422 938185891 149144544 907015220 211791691 969120067 275985629 884155599 625898568 966320697 316031165 391115106 719682459 888522140 541721943 449351521 172613183 634515036 814489987 67510285 102136933 583515589 433376100 355814832 824607782 259355789 429156086 760737911 289651274 467194965 530275180 864857 127156268 228931632 743912679 394470211 851715835 678029226 687441606 595775351 207428179 393289861 16571168 50018874 920841941 173316059 164577131 584561799 154531829 766046894 997482386 573111042 145459994 851883371 380258549 100702733 973780109 896853479 711269224 817176151 431791106 478056528 730987662 380650428 91575945 369233243 11532528 326026628 678585093 901101505 313963733 707537634 113535217 345502680 602026161 642233050 361611915 363479313 417197259 618938112 458443208 525520573 438778358 624171786 551832768 828191430 302845558 662623800 130723604 202223367 458410039 658022269 505459939 460253164 720430366 189715131 515641364 813140160 476984670 604075892 469684815 273496980 558629984 163421163 865580419 595124568 281597242 222189576 479169978 879511192 600698445 576887398 99268933 48340812 837699387 337657677 775460191 722722113 484473347 657357077 419428462 898224161 710163559 672532884 68785786 886454715 623878547 534588725 368222510 216608832 676025923 908212472 964029870 528447261 788178181 985951967 378099092 450194717 949271691 746960416 324582176 358429135 190331970 650074103 874770870 126539882 706860158 603042618 475614254 262290958 815671474 787906540 166272642 339290169 306145144 232715112 227130368 979204739 553105937 344443353 703109974 876007441 447015985 949777552 961784087 433566220 904919587 468131515 389736371 518640523 208311239 736503830 647486140 379331942 366419157 912526664 711234963 591269781 870663708 99452704 983598239 20865453 383210718 740258466 655282659 531238359 886974608 673344183 596258756 905575096 149424835 621776846 859153530 91194947 852966516 155471666 426074816 145038986 909600275 45912001 425915252 790666959 775918719 380540137 443284909 855708432 453794327 572417931 358446411 428716594 724962749 588564209 241379965 357017567 819604176 833457590 668089891 130073585 805288880 112984146 303951607 699503206 704111017 453064568 811976094 306151756 3533762 165922729 951998133 877429152 44441905 206457032 854883571 150495553 873779364 31192604 160033173 474685653 286606394 304308956 667805213 508044602 952802920 936893931 372196371 448124200 306824007 890752710 304783803 632995192 470514785 304779708 139278618 514733193 948071701 996751636 537235635 66353958 516098299 52822795 924430895 800120585 290033301 151490694 754660135 675570200 437520001 626684335 122176243 988808806 404826304 873983746 967132604 827246745 352018315 190763501 817108604 563513050 435954377 822701221 863991903 16893469 1436807 960879717 812353647 799977111 789082519 460550623 370951021 150273200 380477565 891719353 689833338 345578462 346996769 380135895 920503245 348432853 15333022 865136296 812034958 680809769 450069084 942600089 530280340 643465871 323863850 196656241 935895156 669824485 322804348 404429299 548093491 603707620 895115181 519325407 414007162 789951486 789421022 448926550 330075918 748943590 511165529 42140287 823151142 188457083 913005433 634693060 162740811 941265029 450813261 681767138 766375342 599778910 386082640 667540563 872575748 506207474 10364690 897370401 256557496 528780731 765808395 351317971 657630739 65326637 916085404 126378081 385711315 148209760 402206133 442190636 327229303 215556237 530227668 679141432 951653836 770272686 611214954 684042076 78898775 665916379 498519285 498809491 522841207 489460103 34786759 63231005 891367874 156556983 341571253 352049327 112040731 154628408 333571806 353068387 24310412 382999753 287250608 752317927 611740413 976751484 313715452 467055492 648655950 1001759982 863868125 218258551 17574018 877120205 758517722 834446492 519821037 844530753 317640287 339265828 7181457 140373353 535066875 635784989 78255620 175725056 776485537 881649263 840159240 861715171 552303244 839092580 914993957 697677126 591898565 123186241 989539655 855690433 794459688 494588269 875151924 712650788 809735721 535126400 637714374 174778218 739016819 398584784 454504562 972295478 796252816 122693923 982268324 176126147 65017814 388497612 623422084 355959923 969338506 323036879 704739189 780430358 525315309 444470320 348192237 700015703 375009194 580220876 103722791 291353171 298447712 226933358 422334794 255687345 212677942 595158498 659243159 434005744 467586487 551928637 720441620 443609373 211647884 540961795 961884476 339506909 597909408 600314120 699328347 382931510 463670387 174597490 467049363 606461560 122888775 357822042 431967609 781020127 296247490 186579358 861471162 514794391 697863994 928333160 324767907 666531887 885953916 684672431 194237582 613906124 524507700 911850574 196665450 368456078 339974306 157237516 127721879 81194581 563716275 844254162 862294072 83762959 294642148 818295818 870275347 612028727 488535244 547416536 550983339 451255667 296038599 144780084 70005517 188856961 829385083 698627029 744250729 66916301 966503782 557944626 892628663 77565648 844780668 349075306 231595748 755528538 674415793 590294587 591071170 45622778 163776855 202520094 921891346 293709652 554280878 822128750 508325322 920328063 363928948 834111745 468662848 122440826 901022121 582922303 537741388 864254286 406735079 513598694 372425624 152269571 593779038 283973983 415507998 843572148 866613845 278093958 116842079 317598041 821834095 199144377 809773291 733776683 548400029 281314759 357092095 791543102 919890895 721813354 147929983 669797053 963985045 496939764 150621018 1001576146 928600346 311775329 18267028 403601468 487902137 81167179 238404309 858847386 858812720 856461576 8267512 466586052 183454563 69238029 185138256 407531183 966382083 736922835 455219274 1396287 768645972 627554985 229433633 128082072 461422776 131249186 923690279 34537790 617991127 110634337 842097243 905807996 908391769 259782562 817172903 621362685 801913945 364091896 225950145 599560124 788437148 159625046 20255533 476774617 166294093 765273414 157264064 348370610 899090965 140203474 624198605 300538595 536447370 228028716 531958704 301250806 34229252 474373085 539080336 20945392 36617471 580892231 965019189 187901672 657665544 826224705 381100059 450819690 1000791374 128544707 880245302 606898499 904084014 892962232 904841889 898144499 118777626 260744382 802543592 963034825 220564554 409950182 783211643 125861494 583511915 5409177 994872745 403698167 621937773 177837941 133531511 383338778 753459205 942879597 559438154 537787507 874434844 828942922 482024605 123596323 534931330 332100272 135231672 106436216 559798233 151618443 435380814 279291954 599581327 331758505 735114960 926837346 49741304 584482504 9379969 694672951 175315703 788656043 344820586 640554526 66056082 161770979 556488221 746316411 273106900 205303304 651369301 553165682 416091427 497760955 166451732 29208403 581595729 164574640 168959734 593414207 32489435 944931799 853648831 429732417 716413579 325783406 333485658 358974144 827727906 50962608 997993928 610368359 394475533 917095419 420507960 99022435 340321858 429838861 805260770 83749123 593816279 592854413 110652934 252331741 442452544 796060873 562139127 137609522 789392564 747201166 883109832 495551161 446104912 961516970 662119411 404723119 1002097287 443928338 215585930 797389817 747760487 307200821 744265379 619735875 594560339 805668284 121933930 129946369 644676990 899701574 174347669 107249441 463087175 428034675 917648866 641414300 84466508 545664636 252765653 58915103 316613934 7204924 784296691 666341995 915617059 813541838 194300872 550138931 566963681 863223661 115746407 19403106 29642715 322481771 211260613 948662552 898626793 283057593 781511769 712841246 603476209 79589214 954091785 989333803 30275858 219874287 694145641 988736102 183583832 964017424 702922585 261821449 532589217 975427649 426539185 387132669 815698870 648008033 585825936 5139397 251582766 586311768 822341385 409163296 609255599 294540003 943665503 750432509 484169617 904247394 280423513 559148043 245762880 481454182 8215286 444274326 229346433 359304104 758818572 802510329 900207811 134730357 704176593 700513833 227337365 713352120 745439895 104632395 925830799 432778358 664976496 420354792 519116802 452768691 859038045 606156022 685581346 579845764 186128064 206217549 820761883 640421231 690024558 406328337 526794428 413931830 1000561060 674446741 435595428 76904157 163553303 471129215 334371321 161484017 293027207 671741030 745856198 457410842 771013588 337152271 178264749 826407117 915144479 490336599 364718676 829721075 734422777 191379916 197052193 394512029 361466491 492751540 533389256 74408148 107675963 657963595 271054970 458548207 733016235 817908450 133178827 963335745 663399204 252847828 891183578 794214486 540740780 219257080 528210705 113883901 666225259 129944992 505370709 708454399 32929365 261722629 435643090 520315702 510545509 274445532 637613739 205533001 839556706 302364479 113357408 492510559 632007013 222872484 875987306 643181676 337857165 153529206 193944272 698108620 655350213 658365700 55820660 93215549 684193959 12871519 468523161 303337783 326197784 477945457 619769248 491057077 346089643 722643933 137483756 716261255 460251957 341241786 414549718 296484755 679583120 265895894 603815183 700912053 635000673 16245779 315635127 382537622 418565632 677906261 307480591 250427459 216951879 814344924 858410963 330760287 538863338 971367429 554805388 629503439 232770358 621526944 711632860 156606266 196387276 488570207 250308423 546533151 171958160 575928666 314373660 423614831 94805577 439607653 331781013 899088244 205246312 430296065 284548151 163219376 381149951 643528576 401343488 763276480 89924608 678487215 615695117 825559299 469221969 736967917 155186669 629402756 24408017 100734703 28661976 652814598 642854586 69074101 114482264 520206140 787262817 978368111 470080577 265943811 434037961 703384676 919187069 796623684 422016147 969697070 855900170 190033454 907464549 324444821 835301350 370794653 851714519 734037891 864073650 200648034 643015178 708069720 487956822 922071625 688229828 18850244 252797113 689337807 795747328 969021723 138093112 503246467 355509696 25648483 137202964 966774139 864885620 610412306 1001633070 331659284 827259030 936402349 415126346 827862189 536215221 438860681 279291497 144312846 577678828 22336046 999673833 660399287 561484102 187460081 327247023 966147246 745365199 319505346 506300429 627558845 143609608 119325589 158014085 979092792 136057291 556870745 55901527 384563844 711117195 721307580 914979284 751816034 145747070 931317917 344247733 184863698 714881915 897552621 470901670 165754344 572701360 189001533 576397225 686413528 969366904 535045743 581901000 292450515 789607489 672411058 580023409 21092933 268924858 205952755 1002059203 433922681 221437532 97382708 413520261 460636076 221214849 1734002 182209979 894013610 762731066 271475307 327668280 361847484 276927394 260038552 505299535 446612795 191782196 702862729 963402553 125518819 509595867 705969160 471553111 57150817 729701903 997040621 932258624 559433094 318233752 600914706 774654253 860504200 148903523 505012052 275625935 352405984 174705660 267116862 333400198 533957925 163701696 625027700 550893755 706962988 710121458 50967783 149017074 359576094 57271672 119426412 333910812 843974573 917734006 760770139 525875413 475201211 712226411 406117343 491140218 548842134 17592644 247783578 83399954 136254509 103563201 798061077 946438756 261947853 339230563 700644124 1002209628 856569463 99135988 646357690 28630478 505106671 485715639 439939278 278455184 82129985 367108450 665843552 943909674 428287467 615103400 553234525 183963133 60622464 26957589 887673770 259891562 315242145 689085656 163811825 933081657 855684825 221224102 312112225 483107332 143990157 882350250 822425780 953740928 929552591 136581703 553949941 188986054 400203243 351345726 379365759 538870649 308161538 253201854 332210835 929358437 547647503 486893833 141862244 864111366 249605273 44199445 71968574 410718421 939641228 964385981 957341250 375502665 885536308 996178081 100727814 172574005 285451181 789493403 141718095 137398769 193899313 390918354 522728419 408174979 839009755 500818244 781649992 929535036 888275012 248672444 209382221 66306227 555861221 357950162 398044774 449084841 200873091 817212060 58246953 299484394 915159129 50111400 327308981 868171197 681171100 977130139 744541266 543847256 844797736 893183246 1335077 818241957 289271912 328260274 653135640 77511534 976101916 74274717 212826305 952529529 526684677 334059572 294398004 336593230 879153055 343288018 943197579 186142270 200649400 980020977 144398871 686037214 238407463 508939815 38366967 268351507 578750222 413275756 169503853 62335949 495129419 359618730 190622169 182822358 56689989 54447151 572499516 872319350 851339260 204055081 990753141 538403289 325008727 160717190 738223687 469171637 435133794 753779995 689871551 762194212 467035543 227796129 81637902 715618495 280276309 410538127 389025200 560509289 13456224 186755096 101449215 885876225 684405969 809974771 889304222 407228924 764820446 44159450 165913284 68887076 734761436 420338814 816574084 495601162 955581846 631842137 986791327 993389619 382210277 351817305 211483348 773935721 611911535 200315660 319217018 880169636 612529301 208336476 865922703 651150402 686667003 796101151 439189812 710865881 699824518 99830559 122314021 582011134 748241597 896417388 164408965 965029597 212120818 405072807 219190018 277174073 576587621 830632512 882599521 339291362 182997739 274973988 6568455 3209806 333626697 243486809 425673927 775650013 722676747 967051874 343130 375036475 653481765 40338643 554362107 220133699 568874733 837216739 118377790 33349854 113395146 861743037 751226556 960056630 931540603 81817253 300038492 375982122 767487017 744039283 278426728 244059514 30777990 192222487 251314003 29115929 864863106 335788132 601560490 538711085 379394402 47453364 682356713 592534456 766609280 499682311 37447248 457779072 368442961 949188954 979239312 690174724 693974062 980953940 708731083 73827701 460347375 404264408 777135083 861941358 536615412 454376971 417646482 96058594 79176122 859087585 934432191 357883885 74655796 230354148 500952448 570185524 545660081 991156561 494146658 777579426 460001270 681455999 668899545 570370125 795724473 411964626 606897315 582658596 344064183 354588967 611764891 586055893 517456021 738229542 724889845 767650888 925983819 864707352 906493181 570819626 12696671 794083623 951437359 776601679 556473882 780260478 475603683 518745696 635933247 79787475 917002759 736434312 199072237 723813437 664853990 100202976 522710067 808502953 596623381 402203662 829815191 132644301 325934839 212552026 583218849 705068615 107353159 479125020 899981711 248353130 827457295 452552767 821887651 668707288 47125415 326146932 102840720 8336588 116281082 44717481 118827011 813756815 807199112 242175659 742684534 21524532 923451847 46187100 465442924 562813680 313358261 916321769 346141706 973079206 153311121 392651503 333506701 657710153 1000951922 54838065 340971331 492680918 543156918 16873291 485678582 516581255 358542407 36333857 373612540 864133825 77617158 445706558 5097211 236007712 735069754 389255261 48970241 954466111 725721887 384292176 186932219 997999704 260898443 52592737 822882312 588691101 619427008 557783739 880906701 392119301 668429306 584880251 582875762 726137571 370987965 965032141 284482750 594219698 518292697 451141432 341557331 569517655 236820631 602854699 819261574 575530712 628647829 208372368 953590667 886946846 611988636 268508259 727172221 102632175 748710910 311506624 424225987 51109672 419659145 527240403 751479441 700329512 156969862 440621522 741605774 838413385 947700789 725173463 804317688 710476256 855992929 347678803 598547730 4944280 10077646 113536829 830225385 537643316 472429403 62877024 290926015 847769375 800492610 952027524 92173134 415971338 954496322 955242098 225111559 720222934 91086930 798754326 236615975 802351405 739680441 199625878 359873639 159637285 209599846 521007648 387133086 754953212 405549624 200034525 810448361 242047646 392144333 146042947 235777905 311498686 897395589 820349376 837595022 486553522 654854572 636801745 372134371 395714229 358300529 20759848 229881308 186803900 102906734 328482598 477626536 36548182 275256049 975395507 509877608 640486322 64325221 30049018 172131855 745301047 4764711 572168827 677663187 820930710 405268662 977144781 648300608 461022116 30496752 742833080 646796188 48832886 402424511 989801332 324615628 717218029 299294625 558819625 476055212 518086519 428526435 227812227 603889417 163378775 100526871 586949566 191640346 81991399 631973341 160596542 626710147 745459040 428673949 491714609 677454375 727569525 937186532 191912271 518772640 506180121 364102756 135606053 668494694 921861036 889273219 1001439734 645669565 509478185 966313244 242543739 845631837 149082835 343959870 107903940 956665229 816373368 745562933 68525066 753633311 169720751 84037410 643036666 358587832 16083331 164164563 256006096 663515181 632467099 580046141 110045469 332765782 136919732 615307691 814026849 741188090 939267971 980848959 519571652 799201014 462777115 507161406 178532989 934004036 695693777 777348989 294688180 880949418 210291546 831378171 562435656 502525255 494584654 760315847 779817647 561631770 335577058 803286 353837852 810514430 72100328 442773835 214609494 94558287 8717927 702165706 527996286 53269447 64391961 535870755 848186183 554304411 94362654 693937969 918983048 469866103 761742738 763474761 501367983 450512608 370858323 144926168 169634394 348679181 565625336 875369222 869815013 760023948 430550500 324796570 24461461 825442734 900656903 449956045 752256015 512428832 514715130 328363989 687297676 932794748 408104820 807569557 792547225 471548025 354143231 183003507 444693837 743572528 830752565 38899007 320909884 790534718 807852363 42162450 193535144 80917475 231249197 917503966 645466400 882007579 586782816 650159268 11690598 55212395 625818509 747146547 422092947 831159663 252521044 759860183 132639582 271120486 970922466 30524468 311841599 374090370 301158069 499161446 263986793 934209507 900940367 556062973 991735041 867695772 355086228 192358896 988275162 882383860 72334605 391435705 909532062 213500435 181219878 361618866 333720251 490835594 580459252 391609018 416676298 839262656 49619027 828295530 396807480 341671158 830973658 375371239 455717512 417453494 56851358 896296744 908781005 644067636 93563777 836360075 170875332 198987686 32647522 41886361 759001369 837607451 827740731 608004092 617636471 39887701 350308145 537809959 68170656 378695370 200669036 979224551 129126730 1002065516 584542649 227725334 158924186 158715720 527941148 389123295 207917004 393794016 221440304 841927934 197681985 861756328 156013303 123447634 878082563 151125502 723921786 847714458 178034940 169216381 885997061 224876869 262380332 174451312 195465223 817572901 201090555 402921009 842547565 5421444 32405388 287444360 808168981 825399346 611536151 424863075 777149484 200730859 6488556 529098054 648752178 146095057 357397555 141566923 201062999 742623938 891636802 902212367 701013881 234088238 6626031 406991679 266276656 952547361 796996203 538568220 108162897 175815037 644311767 330931522 942395252 138837701 693964383 44010718 936182163 239855026 125923480 394384951 756441424 922540950 929708313 79186129 533924050 523996610 598154774 370723096 89702893 469065438 974831270 820884975 158083152 222685912 598606089 342081606 454646315 647141440 742954047 428279347 990344124 364465287 702635495 367873476 596033589 367840234 869009356 459294295 816997707 181140088 114688074 116032218 755052319 428429759 330584814 447095455 329725233 245604699 169083984 48597666 141172340 405783992 669936145 38922539 641857803 870775956 343950276 507861311 816692412 179430874 215244124 417462500 356216783 798726375 870155109 154666188 677156681 555279313 178986349 274674089 870137990 251871614 739166661 743379688 800511385 729710828 259911794 460047665 817063279 29151922 147458925 951431627 737320439 547835967 71645820 460828320 214301743 902196991 328349101 303265149 871600755 305755314 767075386 102261751 110190408 269357715 412798499 764861715 372443232 69642571 692254447 617996703 498562869 451976231 990093871 628570532 153349355 760403538 842155826 172842501 787956391 372893540 602152563 236072775 749438919 575597222 405938736 326583229 160834009 197747313 949206886 67033502 729595739 203737501 73361433 842065406 320281651 362592629 319196026 67087371 129598155 80835576 647761498 629715467 479664995 293390877 559480351 325349466 307101273 615230196 357391758 446770099 778681064 35009563 645234053 262030495 511483879 7164299 166390630 98728063 51174142 221818310 893557583 704427856 637755911 184345774 824250239 542093737 654142283 228865996 92695295 120534479 624011024 595712390 767763127 892666521 745111472 708364622 359716299 471946065 212327480 990825411 419010249 597017050 840566680 844806396 853811050 16343944 793994815 152090172 475008891 573080845 457468784 576661684 937742336 935860824 934689456 506567906 996895875 912537770 733665135 885600164 378194364 893390342 496979916 735532011 60988166 380702793 148120613 547831877 397567042 702394043 984080375 721801867 488284864 695599321 870226201 498072342 680362556 768967992 909693838 498003709 869050493 247319449 530234314 215384624 308040192 386175676 184635053 723825728 205935809 12886193 537588911 218893464 276363521 870474632 882608028 435611002 605976172 217707480 226509514 719875651 806216038 751240 348308881 711822717 543090375 467153445 162123396 218027979 519760438 457135647 141286193 963802515 207384993 808456415 790467748 587777053 497435276 430447272 366064532 462849447 875233086 384161727 532177830 907467971 199844839 497292096 120649646 363042400 587597031 257936591 18010046 513491362 828676416 783121454 102249263 684671993 871863763 672337175 603839115 904514704 80695381 754582874 971524146 208278732 627483880 89339660 655533884 625019975 87979910 927642145 479939707 716753939 728527089 505956962 896554950 548700043 206173082 739137221 610824441 889095776 603119699 947120279 825382501 13867350 26825022 537785923 746531999 181008041 134271329 319445899 966332030 623582031 824021060 977743764 503079892 617397145 796829652 303092682 418485921 248147240 799333076 855230080 930129289 727547476 24675257 473027386 33379121 100743440 303719444 445884263 171919632 338348449 446881060 214603745 67126154 38673056 713541539 534915751 889137160 736798191 287906994 846412359 953132367 316857120 739379559 341353065 742047335 613361467 119262835 1001994466 587508207 932699198 871966413 780730298 39036813 665087275 244112630 495971831 118701564 439657908 194400665 947731754 810038293 944579090 600954020 126611897 384122643 593544663 4347477 813919349 600744108 786826937 516999044 738376326 225652634 551265323 58612053 309812041 933684139 635186116 280872007 941988215 426198836 889349409 439306302 669665373 978297096 935831680 577806092 716131570 490760605 730352680 136414213 207791729 856961713 365168867 806208534 449494293 579180918 393671749 188454051 485663067 671147846 105875753 783611356 90956894 98244225 210334934 420910314 448331113 497281850 374369211 103556146 250776392 702526813 766172609 791079109 119056816 32661615 907636856 931724773 95529100 420478203 509076296 608840085 229189547 271355785 932257810 983353192 747150160 885801397 903409586 44798851 720837833 77584236 428278298 167307671 933615611 704631762 54897319 760912367 586543091 364594120 86418368 168942377 367496028 40505480 458617182 951707775 880487216 817661547 475911602 150028991 684107455 255971692 369495793 867179785 104476085 97070299 997338773 54012048 843994909 271369461 157621121 563736034 614851844 527401120 951915815 575045336 393593754 62622566 569636134 244260395 667907748 669720016 168159184 190155092 42080592 654793481 89575105 301705007 195749469 821393324 34803240 332523628 301917226 110533186 992784664 892968025 759304023 327135660 902087676 125374169 431225406 549216463 186403693 839046548 537217646 727146360 801681354 438710745 512343185 340058450 46025004 1001773941 179283755 582093806 48208057 707882692 905636824 459364871 380018389 743290518 856706270 816137351 887501734 654500790 563012036 272118469 325411698 626669813 137841163 274915829 175967180 849953924 258068731 423649745 324468132 233956682 13594344 522483130 11483246 963313066 971724552 1706035 226737924 541866158 147008934 583251917 457521 49775183 702799997 855066198 830579383 544731397 657271334 784088852 877896082 547089884 415441314 120934834 76548204 421759905 979049219 199503766 308666758 672992987 841698477 979479341 631861292 497126313 111046430 760124196 616563598 118809514 903800305 600193834 516584333 901372054 416857325 770862988 766055750 258443028 351313843 338002100 53554765 567923592 94502005 46822569 820242759 811249561 857177606 204680147 468523837 29036020 92151645 973765206 802635410 546661549 410859284 430241038 309794462 908270430 794231558 104715539 256848501 283908521 308154012 701769222 638091386 719380573 108837945 660298817 351550715 900557660 475828818 633034026 228144578 844399817 910405275 79775145 859763125 957282223 678827573 29015279 552119029 852314206 45202641 588195381 229276726 430351898 171012311 816861359 439586790 776884640 486250895 940060028 600770495 353987893 171172039 765069426 366614837 74726736 269923106 176050327 982366485 544655479 798134038 474631084 359009234 536162521 549867461 274856668 963735429 265691320 689717143 125658204 263236436 238804747 87827744 360673794 738288040 378817936 400402281 425308500 83523989 312449972 952379858 689604275 912087019 774235967 209158426 290716439 300004527 258029729 188061739 626983168 959672134 953236861 300799153 700348715 461369897 823305601 50843173 153801227 780470366 185623320 193985450 213032668 105638106 950611342 416244466 195021958 480157848 105567046 550447879 903361621 198987063 55721152 137976424 920096807 936924551 514769858 415594352 175411034 15926593 206080148 496781147 354683417 946894909 114805366 706234558 803990928 760806275 789217734 807592314 426485783 841071070 603898765 307194986 502729849 101780251 542923918 520655701 89381417 439350007 995537636 430452884 487435132 470508415 452069983 349759102 609936487 755157451 20303858 700589011 436043062 213038168 307670856 386391867 620645149 362832320 953533704 780768486 503651470 746663389 864178319 92754141 449014098 748327997 619541354 821508560 782640741 321687065 374077896 85156212 489729287 772747075 967640788 578836689 584041480 457309831 664769823 672467917 648092395 945777195 717820158 389378441 328103144 57911380 154047879 911970734 793562050 12245995 711979803 10558042 754100587 906043580 101723630 302802170 874565318 713441 132692165 163440473 113060242 864167863 552602187 45702964 568987105 334363556 852375670 170887738 543499717 449452638 298234438 831683771 383741802 989530054 804876570 160323204 902560695 638268818 958773598 615650627 139349309 63676820 798829065 150024297 128514664 142155633 153258334 604931610 770257648 934938006 939201250 751100022 837226176 156452215 684983310 212602108 392344148 471654514 194269873 595386621 818696432 904511301 140740666 303680668 327778585 424009738 909591866 177854930 300173887 904836809 228428482 754182271 512597679 212928800 240592639 899452757 960363458 593911129 59614102 756673210 742332707 161495052 451292033 980559873 312818132 419610424 233825093 993320232 735513935 279166582 911300781 839714468 425818271 139619853 200929934 309718629 577113076 870247299 230119909 9386789 47564849 141317723 275137752 513451291 482731758 532993717 175243120 938404436 696669056 618328670 878022793 816408499 394372507 535767695 61369002 627193181 74656605 485422339 574102089 544018360 577330790 41492308 512851860 320694714 638406023 886624412 722616207 540378345 452361973 315388733 714184988 464556370 678512122 11957591 446546943 199600730 695479088 281562134 588381280 837529024 495208178 550883180 529884149 234069141 905221248 741180904 926305084 810119065 444695155 396401724 100739030 676443114 846869325 775207300 549199281 436178823 260318643 595363581 713642630 491141478 496887218 810751229 426103592 398226273 431940581 132026655 972118350 777114040 885795617 121531940 208867865 66611897 10030312 920198647 675661606 59138003 996631604 854658695 85021546 500910501 152237218 513155150 573655692 119978409 669508972 437933421 379065572 765948976 1001192010 295626284 424775027 46321908 544867940 411106814 677237964 630049620 893224320 100595319 592406086 43152522 356822587 342162642 781891627 981358995 704997460 8374676 418485996 615417134 745351085 657778936 697938592 559319335 308917830 155344959 708323997 289524688 161020032 961946727 205826848 161411078 403891932 645732055 476426315 897785628 674223674 30275199 857676558 147058324 180844986 572401737 327535223 325028483 965133258 340534511 459600113 459581505 179412310 187380993 806355431 316735809 356908485 871132819 555571217 36850793 820226893 689679319 92736961 706184397 269717746 811382524 248400146 618734621 965606856 262537259 228459939 517351076 855749237 373292628 138309251 42245873 601555996 893574417 456699620 713233185 307413720 117453716 402791271 222352075 906267132 675147599 137774984 767193632 778354921 511594943 100845433 572399396 640986295 56775715 274583213 223216957 330311901 41112859 27275393 444049100 12340671 599294141 963132877 641711476 153950025 554401964 639075438 750420780 561444405 262248139 826695409 621802128 248669997 459730539 221498710 974154662 618468330 940478580 158803531 864981348 139256451 236024625 727683470 227822703 794036314 856201871 793361298 935710844 780975906 70095922 283509367 453288539 842998133 343393126 397700593 954480173 796363185 293230025 855897530 648597115 453365018 903853795 612002147 170481413 471882301 335644705 233575967 194170571 367711452 691117152 129873058 57262312 204586868 868315418 81018471 870989562 582310043 578986083 97293181 68119422 468477748 181942543 349336517 973093210 398902590 679083055 283056472 534172772 911112129 839951192 405195046 705943501 627698405 854867914 113705893 73484837 870308095 477857340 729054362 884859686 598840436 212965518 730628033 810456050 792614670 755090747 616828846 575291809 983583341 912843614 959963038 127222519 809617327 27612585 88048987 941645498 54993046 481595113 143143119 383556718 57300782 132388197 889018411 637395705 162673079 224410213 427446413 639337847 739037053 827847904 476833682 908317068 303573357 527033337 131002434 1000640225 961768149 505146581 772494419 534025809 364949697 397272924 570974394 240241154 255563179 492686489 592083877 999624083 682198620 341232979 232714595 206073560 954557633 624427507 216009380 49295909 472669958 137412756 917435299 255557457 108005168 546597862 458256632 75336888 720190959 52122776 660584041 580289563 295222516 588059607 150357951 770232331 21419928 651565267 926388401 424489036 965991917 188388406 128978991 310323483 660831423 320731976 725024165 116417463 196245117 593263353 43547344 858947576 331479270 321023690 371785473 346340211 611384001 636683644 762123102 978065250 831161286 122414654 822895186 91909682 915629685 888298313 985556750 347178395 264276104 986666777 977526436 374701562 380792061 24873531 37248495 962208071 790822350 482313770 411209065 208012321 362142866 290955251 324622636 210987466 108750594 371388255 729020868 210329179 674862685 201971469 808485816 753142722 364183666 544569546 698909776 26525187 695947936 754055189 530615362 409295636 398478955 789172220 1000106611 719499539 223130789 961352650 936027316 366239633 912176352 913199203 425763679 580269119 399845071 447628664 251507088 860930407 395376242 728442781 38800159 962392316 452818131 429044929 996360324 163186097 884684505 595046429 305491498 199477111 91041204 739803602 400709890 341876371 78812709 551579379 874932979 257393871 234902521 682790646 981159222 98976140 306797474 104968145 486927206 105580912 649122184 989480936 913988172 713142903 330730327 924026712 818484403 234822339 802012981 715196378 965072085 466504039 269121272 255805116 834315183 606386732 111732760 210647531 472731976 587143640 354371545 382100990 16440388 227928898 497015451 342144338 112890221 918906069 636962830 931151067 893395264 469550684 519962203 417373903 962948707 442649291 243442483 543937345 62959244 543314028 157026355 646350423 729989912 254580183 466344617 332504866 875505321 252780251 115517313 266376269 422089736 645342505 803572868 998897128 32713139 329916470 258592256 49229342 621569069 72250373 216053401 421012285 991831333 28436883 324096559 183954921 364934215 681241286 122727245 842952622 992106577 241145692 846928301 325460869 846338757 648686974 38782142 79761793 208370037 555867810 739564277 432990621 712319335 26414683 940552879 544837837 195228503 505217653 449795090 529203360 752823028 450323625 261823343 812908557 47629658 909853953 418096934 86370028 863706842 456105284 925341864 39204184 716237450 280498798 547733394 506936489 842436384 263825072 711766180 69795934 689427047 165616478 309754494 561229960
